# Redfish Package\r
#\r
# Copyright (c) 2019, Intel Corporation. All rights reserved.<BR>\r
-# (C) Copyright 2020 Hewlett Packard Enterprise Development LP<BR>\r
+# (C) Copyright 2021 Hewlett Packard Enterprise Development LP<BR>\r
#\r
# SPDX-License-Identifier: BSD-2-Clause-Patent\r
##\r
[Includes]\r
Include\r
\r
+[Includes.Common.Private]\r
+ PrivateInclude # Private header files for C RTL.\r
+ PrivateInclude/Crt # Private header files for C RTL.\r
+ Library/JsonLib # Private header files for jansson\r
+ # configuration files.\r
+ # - jansson_config.h\r
+ # - jansson_private_config.h\r
+ # jansson.h refers to above two configuration\r
+ # files for building platform jansson library.\r
+ Library/JsonLib/jansson/src # For referring to jannson.h\r
+\r
[LibraryClasses]\r
## @libraryclass Platform Redfish Host Interface Library\r
# Platform implementation-specific Redfish Host Interface.\r
RedfishPlatformHostInterfaceLib|Include/Library/RedfishHostInterfaceLib.h\r
\r
+ ## @libraryclass This library provides UCS2 to UTF8 manipulation\r
+ # functions.\r
+ #\r
+ Ucs2Utf8Lib|Include/Library/BaseUcs2Utf8Lib.h\r
+\r
+ ## @libraryclass Platform Redfish Credential Library\r
+ # Platform implementation-specific Redfish Credential Interface.\r
+ RedfishPlatformCredentialLib|Include/Library/RedfishCredentialLib.h\r
+\r
+ ## @libraryclass The helper routines to access REST EX service.\r
+ # This library is only intended to be used by UEFI network stack modules.\r
+ RestExLib|Include/Library/RestExLib.h\r
+\r
+ ## @libraryclass Provides the library functions based on third party\r
+ # jansson library to manipulate JSON data structure.\r
+ #\r
+ JsonLib|Include/Library/JsonLib.h\r
+\r
+ ## @libraryclass Provides the library functions to encode/decode\r
+ # Redfish packet.\r
+ #\r
+ RedfishContentCodingLib|Include/Library/RedfishContentCodingLib.h\r
+\r
+[LibraryClasses.Common.Private]\r
+ ## @libraryclass Provides the private C runtime library functions.\r
+ # CRT library is currently used by edk2 JsonLib (open source\r
+ # jansson project) and edk2 RedfishLib (libredfish open source\r
+ # project).\r
+ RedfishCrtLib|Include/Library/RedfishCrtLib.h\r
+\r
+ ## @libraryclass Redfish Helper Library\r
+ # Library provides Redfish helper functions.\r
+ RedfishLib|PrivateInclude/Library/RedfishLib.h\r
+\r
[Protocols]\r
- ## Include/Protocol/RedfishDiscover.h\r
- gEfiRedfishDiscoverProtocolGuid = { 0x5db12509, 0x4550, 0x4347, { 0x96, 0xb3, 0x73, 0xc0, 0xff, 0x6e, 0x86, 0x9f }}\r
+ ## Include/Protocol/EdkIIRedfishCredential.h\r
+ gEdkIIRedfishCredentialProtocolGuid = { 0x8804377, 0xaf7a, 0x4496, { 0x8a, 0x7b, 0x17, 0x59, 0x0, 0xe9, 0xab, 0x46 } }\r
+\r
+ ## Include/Protocol/Edk2RedfishConfigHandler.h\r
+ gEdkIIRedfishConfigHandlerProtocolGuid = { 0xbc0fe6bb, 0x2cc9, 0x463e, { 0x90, 0x82, 0xfa, 0x11, 0x76, 0xfc, 0x67, 0xde } }\r
\r
[Guids]\r
gEfiRedfishPkgTokenSpaceGuid = { 0x4fdbccb7, 0xe829, 0x4b4c, { 0x88, 0x87, 0xb2, 0x3f, 0xd7, 0x25, 0x4b, 0x85 }}\r
\r
+[PcdsFixedAtBuild, PcdsPatchableInModule]\r
+ #\r
+ # This PCD is the UEFI device path which is used as the Redfish host interface.\r
+ #\r
+ gEfiRedfishPkgTokenSpaceGuid.PcdRedfishRestExServiceDevicePath|{0x0}|REST_EX_SERVICE_DEVICE_PATH_DATA|0x00001000 {\r
+ <HeaderFiles>\r
+ Pcd/RestExServiceDevicePath.h\r
+ <Packages>\r
+ MdePkg/MdePkg.dec\r
+ MdeModulePkg/MdeModulePkg.dec\r
+ RedfishPkg/RedfishPkg.dec\r
+ }\r
+ #\r
+ # This PCD indicates the EFI REST EX access mode to Redfish service.\r
+ # Default is set to out of band access.\r
+ #\r
+ gEfiRedfishPkgTokenSpaceGuid.PcdRedfishRestExServiceAccessModeInBand|FALSE|BOOLEAN|0x00001001\r
+ #\r
+ # This PCD indicates the access mode EFI Discover protocol uses to look for the proper EFI REST EX\r
+ # protocol instance.\r
+ #\r
+ gEfiRedfishPkgTokenSpaceGuid.PcdRedfishDiscoverAccessModeInBand|FALSE|BOOLEAN|0x00001002\r