## @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 } } | |
[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 | |
# | |
# This PCD indicates that if BMC bootstrap credential service will be disabled by BIOS or not. | |
# | |
gEfiRedfishPkgTokenSpaceGuid.PcdRedfishDisableBootstrapCredentialService|FALSE|BOOLEAN|0x00001007 |