VirtualBox

source: vbox/trunk/src/VBox/Devices/EFI/Firmware/RedfishPkg/RedfishPkg.dec@ 107041

Last change on this file since 107041 was 105670, checked in by vboxsync, 6 months ago

Devices/EFI/FirmwareNew: Merge edk2-stable-202405 and make it build on aarch64, bugref:4643

  • Property svn:eol-style set to native
File size: 9.2 KB
Line 
1## @file
2# Redfish Package
3#
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-2024, NVIDIA CORPORATION & AFFILIATES. All rights reserved.
8# Copyright (C) 2024 Advanced Micro Devices, Inc. All rights reserved.<BR>
9#
10# SPDX-License-Identifier: BSD-2-Clause-Patent
11##
12
13[Defines]
14 DEC_SPECIFICATION = 0x0001001b
15 PACKAGE_NAME = RedfishPkg
16 PACKAGE_GUID = c432b76e-5232-11e7-9010-005056c00008
17 PACKAGE_VERSION = 1.0
18
19[Includes]
20 Include
21
22[Includes.Common.Private]
23 PrivateInclude/Crt # Private header files for C RTL.
24 Library/JsonLib # Private header files for jansson
25 # configuration files.
26 # - jansson_config.h
27 # - jansson_private_config.h
28 # jansson.h refers to above two configuration
29 # files for building platform jansson library.
30 Library/JsonLib/jansson/src # For referring to jannson.h
31
32[LibraryClasses]
33 ## @libraryclass Platform Redfish Host Interface Library
34 # Platform implementation-specific Redfish Host Interface.
35 RedfishPlatformHostInterfaceLib|Include/Library/RedfishHostInterfaceLib.h
36
37 ## @libraryclass This library provides UCS2 to UTF8 manipulation
38 # functions.
39 #
40 Ucs2Utf8Lib|Include/Library/BaseUcs2Utf8Lib.h
41
42 ## @libraryclass Platform Redfish Credential Library
43 # Platform implementation-specific Redfish Credential Interface.
44 RedfishPlatformCredentialLib|Include/Library/RedfishCredentialLib.h
45
46 ## @libraryclass The helper routines to access REST EX service.
47 # This library is only intended to be used by UEFI network stack modules.
48 RestExLib|Include/Library/RestExLib.h
49
50 ## @libraryclass Provides the library functions based on third party
51 # jansson library to manipulate JSON data structure.
52 #
53 JsonLib|Include/Library/JsonLib.h
54
55 ## @libraryclass Provides the library functions to encode/decode
56 # Redfish packet.
57 #
58 RedfishContentCodingLib|Include/Library/RedfishContentCodingLib.h
59
60 ## @libraryclass Redfish Debug Library
61 # Library provides Redfish debug functions.
62 RedfishDebugLib|Include/Library/RedfishDebugLib.h
63
64 ## @libraryclass Provides the library functions to parse IFR binary data.
65 #
66 HiiUtilityLib|Include/Library/HiiUtilityLib.h
67
68 ## @libraryclass Provides the library functions to access Redfish Platform
69 # Config protocol.
70 #
71 RedfishPlatformConfigLib|Include/Library/RedfishPlatformConfigLib.h
72
73 ## @libraryclass Provides the library functions to access Redfish HTTP
74 # protocol.
75 #
76 RedfishHttpLib|Include/Library/RedfishHttpLib.h
77
78[LibraryClasses.Common.Private]
79 ## @libraryclass Provides the private C runtime library functions.
80 # CRT library is currently used by edk2 JsonLib (open source
81 # jansson project) and edk2 RedfishLib (libredfish open source
82 # project).
83 RedfishCrtLib|Include/Library/RedfishCrtLib.h
84
85 ## @libraryclass Redfish Helper Library
86 # Library provides Redfish helper functions.
87 RedfishLib|Include/Library/RedfishLib.h
88
89[Protocols]
90 ## Include/Protocol/EdkIIRedfishCredential.h
91 gEdkIIRedfishCredentialProtocolGuid = { 0x8804377, 0xaf7a, 0x4496, { 0x8a, 0x7b, 0x17, 0x59, 0x0, 0xe9, 0xab, 0x46 } }
92
93 ## Include/Protocol/Edk2RedfishConfigHandler.h
94 gEdkIIRedfishConfigHandlerProtocolGuid = { 0xbc0fe6bb, 0x2cc9, 0x463e, { 0x90, 0x82, 0xfa, 0x11, 0x76, 0xfc, 0x67, 0xde } }
95
96 ## Include/Protocol/EdkIIRedfishPlatformConfig.h
97 gEdkIIRedfishPlatformConfigProtocolGuid = { 0X4D94A7C7, 0X4CE4, 0X4A84, { 0X88, 0XC1, 0X33, 0X0C, 0XD4, 0XA3, 0X47, 0X67 } }
98
99 # Redfish Host Interface ready notification protocol
100 gEdkIIRedfishHostInterfaceReadyProtocolGuid = { 0xC3F6D062, 0x3D38, 0x4EA4, { 0x92, 0xB1, 0xE8, 0xF8, 0x02, 0x27, 0x63, 0xDF } }
101
102 ## Include/Protocol/EdkIIRedfishHttpProtocol.h
103 gEdkIIRedfishHttpProtocolGuid = { 0x58a0f47e, 0xf45f, 0x4d44, { 0x89, 0x5b, 0x2a, 0xfe, 0xb0, 0x80, 0x15, 0xe2 } }
104
105[Guids]
106 gEfiRedfishPkgTokenSpaceGuid = { 0x4fdbccb7, 0xe829, 0x4b4c, { 0x88, 0x87, 0xb2, 0x3f, 0xd7, 0x25, 0x4b, 0x85 }}
107
108 # Redfish variable guid
109 gEfiRedfishVariableGuid = { 0x85ef8dd3, 0xe606, 0x4b89, { 0x8b, 0xbd, 0x93, 0xbf, 0x5c, 0xbe, 0x1c, 0x18 } }
110
111[PcdsFixedAtBuild, PcdsPatchableInModule]
112 #
113 # This PCD is the UEFI device path which is used as the Redfish host interface.
114 #
115 gEfiRedfishPkgTokenSpaceGuid.PcdRedfishRestExServiceDevicePath|{0x0}|REST_EX_SERVICE_DEVICE_PATH_DATA|0x00001000 {
116 <HeaderFiles>
117 Pcd/RestExServiceDevicePath.h
118 <Packages>
119 MdePkg/MdePkg.dec
120 MdeModulePkg/MdeModulePkg.dec
121 RedfishPkg/RedfishPkg.dec
122 }
123 #
124 # This PCD indicates the EFI REST EX access mode to Redfish service.
125 # Default is set to out of band access.
126 #
127 gEfiRedfishPkgTokenSpaceGuid.PcdRedfishRestExServiceAccessModeInBand|FALSE|BOOLEAN|0x00001001
128 #
129 # This PCD indicates the access mode EFI Discover protocol uses to look for the proper EFI REST EX
130 # protocol instance.
131 #
132 gEfiRedfishPkgTokenSpaceGuid.PcdRedfishDiscoverAccessModeInBand|FALSE|BOOLEAN|0x00001002
133 #
134 # This PCD indicates if the EFI REST EX sends chunk request to Redfish service.
135 # Default is set to non chunk mode.
136 #
137 gEfiRedfishPkgTokenSpaceGuid.PcdRedfishRestExChunkRequestMode|FALSE|BOOLEAN|0x00001003
138 #
139 # This PCD indicates if the EFI REST EX adds Expect header to the POST, PATCH, PUT requests to Redfish service.
140 # Default is set to not add.
141 #
142 gEfiRedfishPkgTokenSpaceGuid.PcdRedfishRestExAddingExpect|FALSE|BOOLEAN|0x00001004
143 #
144 # Use PCD to declare the Redfish host nmae becasue there is no
145 # specification for that.
146 #
147 gEfiRedfishPkgTokenSpaceGuid.PcdRedfishHostName|"Redfish service"|VOID*|0x00001005
148 #
149 # Use PCD to declare the Redfish service UUID becasue there is no
150 # specification for that.
151 #
152 gEfiRedfishPkgTokenSpaceGuid.PcdRedfishServiceUuid|L"00000000-0000-0000-0000-000000000000"|VOID*|0x00001006
153 # Use PCD to declare the Redfish service port, default set to port 443.
154 # Platform can overide this value in platform DSC file.
155 #
156 gEfiRedfishPkgTokenSpaceGuid.PcdRedfishServicePort|443|UINT16|0x00001007
157 #
158 # This PCD indicates that if BMC bootstrap credential service will be disabled by BIOS or not.
159 #
160 gEfiRedfishPkgTokenSpaceGuid.PcdRedfishDisableBootstrapCredentialService|FALSE|BOOLEAN|0x00001008
161 #
162 # The EFI_REST_EX_HTTP_CONFIG_DATA.SendReceiveTimeout value that RedfishDiscoverDxe driver
163 # set to EFI_REST_EX_PROTOCOL.
164 #
165 gEfiRedfishPkgTokenSpaceGuid.PcdRedfishSendReceiveTimeout|5000|UINT32|0x00001009
166 #
167 # This PCD string is introduced for platform developer to set the encoding method supported by BMC Redfish.
168 # Currently only "None" and "gzip" are supported.
169 #
170 gEfiRedfishPkgTokenSpaceGuid.PcdRedfishServiceContentEncoding|"None"|VOID*|0x0000100A
171 #
172 # Use below PCDs to control Redfhs HTTP protocol.
173 #
174 ## The number of retry when HTTP GET request failed. If the value is 0, there is no retry enabled.
175 gEfiRedfishPkgTokenSpaceGuid.PcdHttpGetRetry|0|UINT16|0x0000100B
176 ## The number of retry when HTTP PUT request failed. If the value is 0, there is no retry enabled.
177 gEfiRedfishPkgTokenSpaceGuid.PcdHttpPutRetry|0|UINT16|0x0000100C
178 ## The number of retry when HTTP PATCH request failed. If the value is 0, there is no retry enabled.
179 gEfiRedfishPkgTokenSpaceGuid.PcdHttpPatchRetry|0|UINT16|0x0000100D
180 ## The number of retry when HTTP POST request failed. If the value is 0, there is no retry enabled.
181 gEfiRedfishPkgTokenSpaceGuid.PcdHttpPostRetry|0|UINT16|0x0000100E
182 ## The number of retry when HTTP DELETE request failed. If the value is 0, there is no retry enabled.
183 gEfiRedfishPkgTokenSpaceGuid.PcdHttpDeleteRetry|0|UINT16|0x0000100F
184 ## The number of second to wait before driver retry HTTP request. If the value is 0, there is no wait before next retry.
185 gEfiRedfishPkgTokenSpaceGuid.PcdHttpRetryWaitInSecond|1|UINT16|0x00001010
186 ## This is used to disable Redfish HTTP cache function and every request will be sent to Redfish service.
187 gEfiRedfishPkgTokenSpaceGuid.PcdHttpCacheDisabled|FALSE|BOOLEAN|0x00001011
188 #
189 # Redfish debug catagories
190 # To enable the debug message for the entire edk2 Redfish implementation, below PCDs must be set.
191 # DEBUG_MANAGEABILITY must be set PcdDebugPrintErrorLevel.
192 #
193 # 0x0000000000000001 RedfishPlatformConfigDxe driver debug enabled.
194 #
195 gEfiRedfishPkgTokenSpaceGuid.PcdRedfishDebugCategory|0|UINT64|0x00001012
196 #
197 # Redfish RedfishPlatformConfigDxe Debug Properties
198 # 0x00000001 x-UEFI-redfish string database message enabled
199 # 0x00000002 Debug Message for dumping formset
200 # 0x00000004 Debug Message for x-UEFI-redfish searching result
201 # 0x00000008 Debug Message for x-UEFI-redfish Regular Expression searching result
202 #
203 gEfiRedfishPkgTokenSpaceGuid.PcdRedfishPlatformConfigDebugProperty|0|UINT32|0x00001013
204 #
205 # RedfishPlatformConfigDxe feature enablement
206 # 0x00000001 Enable building Redfish Attribute Registry menu path.
207 # 0x00000002 Allow supressed HII option to be exposed on Redfish.
208 #
209 # Redfish RedfishPlatformConfigDxe feature Properties
210 gEfiRedfishPkgTokenSpaceGuid.PcdRedfishPlatformConfigFeatureProperty|0|UINT32|0x00001014
Note: See TracBrowser for help on using the repository browser.

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette