| ## @file | |
| # Redfish Package | |
| # | |
| # Copyright (c) 2019, Intel Corporation. All rights reserved.<BR> | |
| # (C) Copyright 2021 Hewlett Packard Enterprise Development LP<BR> | |
| # Copyright (c) 2023, American Megatrends International LLC. | |
| # Copyright (c) 2023, NVIDIA CORPORATION & AFFILIATES. All rights reserved. | |
| # | |
| # SPDX-License-Identifier: BSD-2-Clause-Patent | |
| ## | |
| [Defines] | |
| DEC_SPECIFICATION = 0x0001001b | |
| PACKAGE_NAME = RedfishPkg | |
| PACKAGE_GUID = c432b76e-5232-11e7-9010-005056c00008 | |
| PACKAGE_VERSION = 1.0 | |
| [Includes] | |
| Include | |
| [Includes.Common.Private] | |
| PrivateInclude/Crt # Private header files for C RTL. | |
| Library/JsonLib # Private header files for jansson | |
| # configuration files. | |
| # - jansson_config.h | |
| # - jansson_private_config.h | |
| # jansson.h refers to above two configuration | |
| # files for building platform jansson library. | |
| Library/JsonLib/jansson/src # For referring to jannson.h | |
| [LibraryClasses] | |
| ## @libraryclass Platform Redfish Host Interface Library | |
| # Platform implementation-specific Redfish Host Interface. | |
| RedfishPlatformHostInterfaceLib|Include/Library/RedfishHostInterfaceLib.h | |
| ## @libraryclass This library provides UCS2 to UTF8 manipulation | |
| # functions. | |
| # | |
| Ucs2Utf8Lib|Include/Library/BaseUcs2Utf8Lib.h | |
| ## @libraryclass Platform Redfish Credential Library | |
| # Platform implementation-specific Redfish Credential Interface. | |
| RedfishPlatformCredentialLib|Include/Library/RedfishCredentialLib.h | |
| ## @libraryclass The helper routines to access REST EX service. | |
| # This library is only intended to be used by UEFI network stack modules. | |
| RestExLib|Include/Library/RestExLib.h | |
| ## @libraryclass Provides the library functions based on third party | |
| # jansson library to manipulate JSON data structure. | |
| # | |
| JsonLib|Include/Library/JsonLib.h | |
| ## @libraryclass Provides the library functions to encode/decode | |
| # Redfish packet. | |
| # | |
| RedfishContentCodingLib|Include/Library/RedfishContentCodingLib.h | |
| ## @libraryclass Redfish Debug Library | |
| # Library provides Redfish debug functions. | |
| RedfishDebugLib|Include/Library/RedfishDebugLib.h | |
| ## @libraryclass Provides the library functions to parse IFR binary data. | |
| # | |
| HiiUtilityLib|Include/Library/HiiUtilityLib.h | |
| ## @libraryclass Provides the library functions to access Redfish Platform | |
| # Config protocol. | |
| # | |
| RedfishPlatformConfigLib|Include/Library/RedfishPlatformConfigLib.h | |
| [LibraryClasses.Common.Private] | |
| ## @libraryclass Provides the private C runtime library functions. | |
| # CRT library is currently used by edk2 JsonLib (open source | |
| # jansson project) and edk2 RedfishLib (libredfish open source | |
| # project). | |
| RedfishCrtLib|Include/Library/RedfishCrtLib.h | |
| ## @libraryclass Redfish Helper Library | |
| # Library provides Redfish helper functions. | |
| RedfishLib|Include/Library/RedfishLib.h | |
| [Protocols] | |
| ## Include/Protocol/EdkIIRedfishCredential.h | |
| gEdkIIRedfishCredentialProtocolGuid = { 0x8804377, 0xaf7a, 0x4496, { 0x8a, 0x7b, 0x17, 0x59, 0x0, 0xe9, 0xab, 0x46 } } | |
| ## Include/Protocol/Edk2RedfishConfigHandler.h | |
| gEdkIIRedfishConfigHandlerProtocolGuid = { 0xbc0fe6bb, 0x2cc9, 0x463e, { 0x90, 0x82, 0xfa, 0x11, 0x76, 0xfc, 0x67, 0xde } } | |
| ## Include/Protocol/EdkIIRedfishPlatformConfig.h | |
| gEdkIIRedfishPlatformConfigProtocolGuid = { 0X4D94A7C7, 0X4CE4, 0X4A84, { 0X88, 0XC1, 0X33, 0X0C, 0XD4, 0XA3, 0X47, 0X67 } } | |
| # Redfish Host Interface ready notification protocol | |
| gEdkIIRedfishHostInterfaceReadyProtocolGuid = { 0xC3F6D062, 0x3D38, 0x4EA4, { 0x92, 0xB1, 0xE8, 0xF8, 0x02, 0x27, 0x63, 0xDF } } | |
| [Guids] | |
| gEfiRedfishPkgTokenSpaceGuid = { 0x4fdbccb7, 0xe829, 0x4b4c, { 0x88, 0x87, 0xb2, 0x3f, 0xd7, 0x25, 0x4b, 0x85 }} | |
| # Redfish variable guid | |
| gEfiRedfishVariableGuid = { 0x85ef8dd3, 0xe606, 0x4b89, { 0x8b, 0xbd, 0x93, 0xbf, 0x5c, 0xbe, 0x1c, 0x18 } } | |
| [PcdsFixedAtBuild, PcdsPatchableInModule] | |
| # | |
| # This PCD is the UEFI device path which is used as the Redfish host interface. | |
| # | |
| gEfiRedfishPkgTokenSpaceGuid.PcdRedfishRestExServiceDevicePath|{0x0}|REST_EX_SERVICE_DEVICE_PATH_DATA|0x00001000 { | |
| <HeaderFiles> | |
| Pcd/RestExServiceDevicePath.h | |
| <Packages> | |
| MdePkg/MdePkg.dec | |
| MdeModulePkg/MdeModulePkg.dec | |
| RedfishPkg/RedfishPkg.dec | |
| } | |
| # | |
| # This PCD indicates the EFI REST EX access mode to Redfish service. | |
| # Default is set to out of band access. | |
| # | |
| gEfiRedfishPkgTokenSpaceGuid.PcdRedfishRestExServiceAccessModeInBand|FALSE|BOOLEAN|0x00001001 | |
| # | |
| # This PCD indicates the access mode EFI Discover protocol uses to look for the proper EFI REST EX | |
| # protocol instance. | |
| # | |
| gEfiRedfishPkgTokenSpaceGuid.PcdRedfishDiscoverAccessModeInBand|FALSE|BOOLEAN|0x00001002 | |
| # | |
| # This PCD indicates if the EFI REST EX sends chunk request to Redfish service. | |
| # Default is set to non chunk mode. | |
| # | |
| gEfiRedfishPkgTokenSpaceGuid.PcdRedfishRestExChunkRequestMode|FALSE|BOOLEAN|0x00001003 | |
| # | |
| # This PCD indicates if the EFI REST EX adds Expect header to the POST, PATCH, PUT requests to Redfish service. | |
| # Default is set to not add. | |
| # | |
| gEfiRedfishPkgTokenSpaceGuid.PcdRedfishRestExAddingExpect|FALSE|BOOLEAN|0x00001004 | |
| # | |
| # Use PCD to declare the Redfish host nmae becasue there is no | |
| # specification for that. | |
| # | |
| gEfiRedfishPkgTokenSpaceGuid.PcdRedfishHostName|"Redfish service"|VOID*|0x00001005 | |
| # | |
| # Use PCD to declare the Redfish service UUID becasue there is no | |
| # specification for that. | |
| # | |
| gEfiRedfishPkgTokenSpaceGuid.PcdRedfishServiceUuid|L"00000000-0000-0000-0000-000000000000"|VOID*|0x00001006 | |
| # Use PCD to declare the Redfish service port, default set to port 443. | |
| # Platform can overide this value in platform DSC file. | |
| # | |
| gEfiRedfishPkgTokenSpaceGuid.PcdRedfishServicePort|443|UINT16|0x00001007 | |
| # | |
| # This PCD indicates that if BMC bootstrap credential service will be disabled by BIOS or not. | |
| # | |
| gEfiRedfishPkgTokenSpaceGuid.PcdRedfishDisableBootstrapCredentialService|FALSE|BOOLEAN|0x00001008 | |
| # | |
| # The EFI_REST_EX_HTTP_CONFIG_DATA.SendReceiveTimeout value that RedfishDiscoverDxe driver | |
| # set to EFI_REST_EX_PROTOCOL. | |
| # | |
| gEfiRedfishPkgTokenSpaceGuid.PcdRedfishSendReceiveTimeout|5000|UINT32|0x00001009 |