| /** @file | |
| Copyright (c) 2006, Intel Corporation. All rights reserved.<BR> | |
| 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: | |
| EfiLdrHandoff.h | |
| Abstract: | |
| Revision History: | |
| **/ | |
| #ifndef _EFILDR_HANDOFF_H_ | |
| #define _EFILDR_HANDOFF_H_ | |
| #include <Base.h> | |
| #include <Uefi.h> | |
| #define EFILDR_BASE_SEGMENT 0x2000 | |
| #define EFILDR_LOAD_ADDRESS (EFILDR_BASE_SEGMENT << 4) | |
| #define EFILDR_HEADER_ADDRESS (EFILDR_LOAD_ADDRESS+0x2000) | |
| #define EFILDR_CB_VA 0x00 | |
| typedef struct _EFILDRHANDOFF { | |
| UINTN MemDescCount; | |
| EFI_MEMORY_DESCRIPTOR *MemDesc; | |
| VOID *BfvBase; | |
| UINTN BfvSize; | |
| VOID *DxeIplImageBase; | |
| UINTN DxeIplImageSize; | |
| VOID *DxeCoreImageBase; | |
| UINTN DxeCoreImageSize; | |
| VOID *DxeCoreEntryPoint; | |
| } EFILDRHANDOFF; | |
| typedef struct { | |
| UINT32 CheckSum; | |
| UINT32 Offset; | |
| UINT32 Length; | |
| UINT8 FileName[52]; | |
| } EFILDR_IMAGE; | |
| typedef struct { | |
| UINT32 Signature; | |
| UINT32 HeaderCheckSum; | |
| UINT32 FileLength; | |
| UINT32 NumberOfImages; | |
| } EFILDR_HEADER; | |
| #endif |