From b7c51c9cf4864df6aabb99a1ae843becd577237c Mon Sep 17 00:00:00 2001 From: raywu Date: Fri, 15 Jun 2018 00:00:50 +0800 Subject: init. 1AQQW051 --- .../Guid/PeiTransferControl/PeiTransferControl.c | 28 ++++++++++++ .../Guid/PeiTransferControl/PeiTransferControl.h | 53 ++++++++++++++++++++++ 2 files changed, 81 insertions(+) create mode 100644 EDK/Foundation/Guid/PeiTransferControl/PeiTransferControl.c create mode 100644 EDK/Foundation/Guid/PeiTransferControl/PeiTransferControl.h (limited to 'EDK/Foundation/Guid/PeiTransferControl') diff --git a/EDK/Foundation/Guid/PeiTransferControl/PeiTransferControl.c b/EDK/Foundation/Guid/PeiTransferControl/PeiTransferControl.c new file mode 100644 index 0000000..06662bf --- /dev/null +++ b/EDK/Foundation/Guid/PeiTransferControl/PeiTransferControl.c @@ -0,0 +1,28 @@ +/*++ + +Copyright (c) 2004, Intel Corporation +All rights reserved. This program and the accompanying materials +are licensed and made available under the terms and conditions of the BSD License +which accompanies this distribution. The full text of the license may be found at +http://opensource.org/licenses/bsd-license.php + +THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, +WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. + +Module Name: + + PeiTransferControl.c + +Abstract: + + GUID for the SetJump()/LongJump() APIs shared between PEI and DXE + +--*/ + +#include "Tiano.h" +#include EFI_GUID_DEFINITION(PeiTransferControl) + +EFI_GUID gEfiPeiTransferControlGuid = EFI_PEI_TRANSFER_CONTROL_GUID; + +EFI_GUID_STRING(&gEfiPeiTransferControlGuid, "Transfer Control", "Transfer Control APIs from PEI"); + diff --git a/EDK/Foundation/Guid/PeiTransferControl/PeiTransferControl.h b/EDK/Foundation/Guid/PeiTransferControl/PeiTransferControl.h new file mode 100644 index 0000000..fbf5c35 --- /dev/null +++ b/EDK/Foundation/Guid/PeiTransferControl/PeiTransferControl.h @@ -0,0 +1,53 @@ +/*++ + +Copyright (c) 2004, Intel Corporation +All rights reserved. This program and the accompanying materials +are licensed and made available under the terms and conditions of the BSD License +which accompanies this distribution. The full text of the license may be found at +http://opensource.org/licenses/bsd-license.php + +THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, +WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. + +Module Name: + + PeiTransferControl.h + +Abstract: + + GUID for the SetJump()/LongJump() APIs shared between PEI and DXE + +--*/ + +#ifndef _PEI_TRANSFER_CONTROL_H_ +#define _PEI_TRANSFER_CONTROL_H_ + +#define EFI_PEI_TRANSFER_CONTROL_GUID \ + { 0xd8117d02, 0x94a6, 0x11d4, 0x9a, 0x3a, 0x0, 0x90, 0x27, 0x3f, 0xc1, 0x4d } + + +EFI_FORWARD_DECLARATION (EFI_PEI_TRANSFER_CONTROL_PROTOCOL); + +typedef +EFI_STATUS +(EFIAPI *EFI_PEI_TRANSFER_CONTROL_SET_JUMP) ( + IN EFI_PEI_TRANSFER_CONTROL_PROTOCOL *This, + OUT VOID *Context + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_PEI_TRANSFER_CONTROL_LONG_JUMP) ( + IN EFI_PEI_TRANSFER_CONTROL_PROTOCOL *This, + IN VOID *Context + ); + +typedef struct _EFI_PEI_TRANSFER_CONTROL_PROTOCOL { + EFI_PEI_TRANSFER_CONTROL_LONG_JUMP SetJump; + EFI_PEI_TRANSFER_CONTROL_LONG_JUMP LongJump; + UINT32 JumpContextSize; +} EFI_PEI_TRANSFER_CONTROL_PROTOCOL; + +extern EFI_GUID gEfiPeiTransferControlGuid; + +#endif -- cgit v1.2.3