+++ /dev/null
-/*++\r
-\r
-Copyright (c) 2004, Intel Corporation. All rights reserved.<BR>\r
-This program and the accompanying materials \r
-are licensed and made available under the terms and conditions of the BSD License \r
-which accompanies this distribution. The full text of the license may be found at \r
-http://opensource.org/licenses/bsd-license.php \r
- \r
-THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, \r
-WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. \r
-\r
-Module Name:\r
- \r
- EfiHobLib.h\r
-\r
-Abstract:\r
-\r
- \r
---*/\r
-\r
-#ifndef _EFI_HOB_LIB_H_\r
-#define _EFI_HOB_LIB_H_\r
-\r
-#include "PeiHob.h"\r
-\r
-VOID *\r
-GetHob (\r
- IN UINT16 Type,\r
- IN VOID *HobStart\r
- )\r
-/*++\r
-\r
-Routine Description:\r
-\r
- This function returns the first instance of a HOB type in a HOB list.\r
- \r
-Arguments:\r
-\r
- Type The HOB type to return.\r
- HobStart The first HOB in the HOB list.\r
- \r
-Returns:\r
-\r
- HobStart There were no HOBs found with the requested type.\r
- else Returns the first HOB with the matching type.\r
-\r
---*/\r
-;\r
-\r
-UINTN\r
-GetHobListSize (\r
- IN VOID *HobStart\r
- )\r
-/*++\r
-\r
-Routine Description:\r
-\r
- Get size of hob list.\r
-\r
-Arguments:\r
-\r
- HobStart - Start pointer of hob list\r
-\r
-Returns:\r
-\r
- Size of hob list.\r
-\r
---*/\r
-;\r
-\r
-UINT32\r
-GetHobVersion (\r
- IN VOID *HobStart\r
- )\r
-/*++\r
-\r
-Routine Description:\r
-\r
- Get hob version.\r
-\r
-Arguments:\r
-\r
- HobStart - Start pointer of hob list\r
-\r
-Returns:\r
-\r
- Hob version.\r
-\r
---*/\r
-;\r
-\r
-EFI_STATUS\r
-GetHobBootMode (\r
- IN VOID *HobStart,\r
- OUT EFI_BOOT_MODE *BootMode\r
- )\r
-/*++\r
-\r
-Routine Description:\r
-\r
- Get current boot mode.\r
-\r
-Arguments:\r
-\r
- HobStart - Start pointer of hob list\r
- \r
- BootMode - Current boot mode recorded in PHIT hob\r
-\r
-Returns:\r
-\r
- EFI_NOT_FOUND - Invalid hob header\r
- \r
- EFI_SUCCESS - Boot mode found\r
-\r
---*/\r
-;\r
-\r
-EFI_STATUS\r
-GetCpuHobInfo (\r
- IN VOID *HobStart,\r
- OUT UINT8 *SizeOfMemorySpace,\r
- OUT UINT8 *SizeOfIoSpace\r
- )\r
-/*++\r
-\r
-Routine Description:\r
-\r
- Get information recorded in CPU hob (Memory space size, Io space size)\r
-\r
-Arguments:\r
-\r
- HobStart - Start pointer of hob list\r
- \r
- SizeOfMemorySpace - Size of memory size\r
- \r
- SizeOfIoSpace - Size of IO size\r
-\r
-Returns:\r
-\r
- EFI_NOT_FOUND - CPU hob not found\r
- \r
- EFI_SUCCESS - CPU hob found and information got.\r
-\r
---*/\r
-;\r
-\r
-EFI_STATUS\r
-GetDxeCoreHobInfo (\r
- IN VOID *HobStart,\r
- OUT EFI_PHYSICAL_ADDRESS *BaseAddress,\r
- OUT UINT64 *Length,\r
- OUT VOID **EntryPoint,\r
- OUT EFI_GUID **FileName\r
- )\r
-/*++\r
-\r
-Routine Description:\r
-\r
- Get memory allocation hob created for DXE core and extract its information\r
-\r
-Arguments:\r
-\r
- HobStart - Start pointer of the hob list\r
- \r
- BaseAddress - Start address of memory allocated for DXE core\r
- \r
- Length - Length of memory allocated for DXE core\r
- \r
- EntryPoint - DXE core file name\r
-\r
- FileName - FileName \r
-\r
-Returns:\r
-\r
- EFI_NOT_FOUND - DxeCoreHob not found\r
- \r
- EFI_SUCCESS - DxeCoreHob found and information got\r
-\r
---*/\r
-;\r
-\r
-EFI_STATUS\r
-GetNextFirmwareVolumeHob (\r
- IN OUT VOID **HobStart,\r
- OUT EFI_PHYSICAL_ADDRESS *BaseAddress,\r
- OUT UINT64 *Length\r
- )\r
-/*++\r
-\r
-Routine Description:\r
-\r
- Get next firmware volume hob from HobStart\r
-\r
-Arguments:\r
-\r
- HobStart - Start pointer of hob list\r
- \r
- BaseAddress - Start address of next firmware volume\r
- \r
- Length - Length of next firmware volume\r
-\r
-Returns:\r
-\r
- EFI_NOT_FOUND - Next firmware volume not found\r
- \r
- EFI_SUCCESS - Next firmware volume found with address information\r
-\r
---*/\r
-;\r
-\r
-#if (PI_SPECIFICATION_VERSION >= 0x00010000)\r
-EFI_STATUS\r
-GetNextFirmwareVolume2Hob (\r
- IN OUT VOID **HobStart,\r
- OUT EFI_PHYSICAL_ADDRESS *BaseAddress,\r
- OUT UINT64 *Length,\r
- OUT EFI_GUID *FileName\r
- );\r
-#endif\r
-\r
-EFI_STATUS\r
-GetNextGuidHob (\r
- IN OUT VOID **HobStart,\r
- IN EFI_GUID * Guid,\r
- OUT VOID **Buffer,\r
- OUT UINTN *BufferSize OPTIONAL\r
- )\r
-/*++\r
-\r
-Routine Description:\r
- Get the next guid hob.\r
- \r
-Arguments:\r
- HobStart A pointer to the start hob.\r
- Guid A pointer to a guid.\r
- Buffer A pointer to the buffer.\r
- BufferSize Buffer size.\r
- \r
-Returns:\r
- Status code.\r
- \r
- EFI_NOT_FOUND - Next Guid hob not found\r
- \r
- EFI_SUCCESS - Next Guid hob found and data for this Guid got\r
-\r
---*/\r
-;\r
-\r
-EFI_STATUS\r
-GetPalEntryHobInfo (\r
- IN VOID *HobStart,\r
- OUT EFI_PHYSICAL_ADDRESS *PalEntry\r
- )\r
-/*++\r
-\r
-Routine Description:\r
-\r
- Get PAL entry from PalEntryHob\r
-\r
-Arguments:\r
-\r
- HobStart - Start pointer of hob list\r
- \r
- PalEntry - Pointer to PAL entry\r
-\r
-Returns:\r
-\r
- Status code.\r
-\r
---*/\r
-;\r
-\r
-EFI_STATUS\r
-GetIoPortSpaceAddressHobInfo (\r
- IN VOID *HobStart,\r
- OUT EFI_PHYSICAL_ADDRESS *IoPortSpaceAddress\r
- )\r
-/*++\r
-\r
-Routine Description:\r
-\r
- Get IO port space address from IoBaseHob.\r
-\r
-Arguments:\r
-\r
- HobStart - Start pointer of hob list\r
- \r
- IoPortSpaceAddress - IO port space address\r
-\r
-Returns:\r
-\r
- Status code\r
-\r
---*/\r
-;\r
-\r
-#endif\r