4 # Copyright (c) 2019, Intel Corporation. All rights reserved.<BR>
5 # (C) Copyright 2021 Hewlett Packard Enterprise Development LP<BR>
6 # Copyright (c) 2023, American Megatrends International LLC.
7 # Copyright (c) 2023, NVIDIA CORPORATION & AFFILIATES. All rights reserved.
9 # SPDX-License-Identifier: BSD-2-Clause-Patent
13 DEC_SPECIFICATION = 0x0001001b
14 PACKAGE_NAME = RedfishPkg
15 PACKAGE_GUID = c432b76e-5232-11e7-9010-005056c00008
21 [Includes.Common.Private]
22 PrivateInclude/Crt # Private header files for C RTL.
23 Library/JsonLib # Private header files for jansson
24 # configuration files.
26 # - jansson_private_config.h
27 # jansson.h refers to above two configuration
28 # files for building platform jansson library.
29 Library/JsonLib/jansson/src # For referring to jannson.h
32 ## @libraryclass Platform Redfish Host Interface Library
33 # Platform implementation-specific Redfish Host Interface.
34 RedfishPlatformHostInterfaceLib|Include/Library/RedfishHostInterfaceLib.h
36 ## @libraryclass This library provides UCS2 to UTF8 manipulation
39 Ucs2Utf8Lib|Include/Library/BaseUcs2Utf8Lib.h
41 ## @libraryclass Platform Redfish Credential Library
42 # Platform implementation-specific Redfish Credential Interface.
43 RedfishPlatformCredentialLib|Include/Library/RedfishCredentialLib.h
45 ## @libraryclass The helper routines to access REST EX service.
46 # This library is only intended to be used by UEFI network stack modules.
47 RestExLib|Include/Library/RestExLib.h
49 ## @libraryclass Provides the library functions based on third party
50 # jansson library to manipulate JSON data structure.
52 JsonLib|Include/Library/JsonLib.h
54 ## @libraryclass Provides the library functions to encode/decode
57 RedfishContentCodingLib|Include/Library/RedfishContentCodingLib.h
59 ## @libraryclass Redfish Debug Library
60 # Library provides Redfish debug functions.
61 RedfishDebugLib|Include/Library/RedfishDebugLib.h
63 [LibraryClasses.Common.Private]
64 ## @libraryclass Provides the private C runtime library functions.
65 # CRT library is currently used by edk2 JsonLib (open source
66 # jansson project) and edk2 RedfishLib (libredfish open source
68 RedfishCrtLib|Include/Library/RedfishCrtLib.h
70 ## @libraryclass Redfish Helper Library
71 # Library provides Redfish helper functions.
72 RedfishLib|Include/Library/RedfishLib.h
75 ## Include/Protocol/EdkIIRedfishCredential.h
76 gEdkIIRedfishCredentialProtocolGuid = { 0x8804377, 0xaf7a, 0x4496, { 0x8a, 0x7b, 0x17, 0x59, 0x0, 0xe9, 0xab, 0x46 } }
78 ## Include/Protocol/Edk2RedfishConfigHandler.h
79 gEdkIIRedfishConfigHandlerProtocolGuid = { 0xbc0fe6bb, 0x2cc9, 0x463e, { 0x90, 0x82, 0xfa, 0x11, 0x76, 0xfc, 0x67, 0xde } }
82 gEfiRedfishPkgTokenSpaceGuid = { 0x4fdbccb7, 0xe829, 0x4b4c, { 0x88, 0x87, 0xb2, 0x3f, 0xd7, 0x25, 0x4b, 0x85 }}
84 [PcdsFixedAtBuild, PcdsPatchableInModule]
86 # This PCD is the UEFI device path which is used as the Redfish host interface.
88 gEfiRedfishPkgTokenSpaceGuid.PcdRedfishRestExServiceDevicePath|{0x0}|REST_EX_SERVICE_DEVICE_PATH_DATA|0x00001000 {
90 Pcd/RestExServiceDevicePath.h
93 MdeModulePkg/MdeModulePkg.dec
94 RedfishPkg/RedfishPkg.dec
97 # This PCD indicates the EFI REST EX access mode to Redfish service.
98 # Default is set to out of band access.
100 gEfiRedfishPkgTokenSpaceGuid.PcdRedfishRestExServiceAccessModeInBand|FALSE|BOOLEAN|0x00001001
102 # This PCD indicates the access mode EFI Discover protocol uses to look for the proper EFI REST EX
105 gEfiRedfishPkgTokenSpaceGuid.PcdRedfishDiscoverAccessModeInBand|FALSE|BOOLEAN|0x00001002
107 # This PCD indicates if the EFI REST EX sends chunk request to Redfish service.
108 # Default is set to non chunk mode.
110 gEfiRedfishPkgTokenSpaceGuid.PcdRedfishRestExChunkRequestMode|FALSE|BOOLEAN|0x00001003
112 # This PCD indicates if the EFI REST EX adds Expect header to the POST, PATCH, PUT requests to Redfish service.
113 # Default is set to not add.
115 gEfiRedfishPkgTokenSpaceGuid.PcdRedfishRestExAddingExpect|FALSE|BOOLEAN|0x00001004