REF: https://bugzilla.tianocore.org/show_bug.cgi?id=3737 Apply uncrustify changes to .c/.h files in the MdePkg package Cc: Andrew Fish <afish@apple.com> Cc: Leif Lindholm <leif@nuviainc.com> Cc: Michael D Kinney <michael.d.kinney@intel.com> Signed-off-by: Michael Kubacki <michael.kubacki@microsoft.com> Reviewed-by: Liming Gao <gaoliming@byosoft.com.cn>
		
			
				
	
	
		
			97 lines
		
	
	
		
			3.0 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			97 lines
		
	
	
		
			3.0 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
| /** @file
 | |
| Guid & data structure for tables defined for reporting firmware configuration data to EFI
 | |
| Configuration Tables and also for processing JSON payload capsule.
 | |
| 
 | |
| 
 | |
| Copyright (c) 2020, American Megatrends International LLC. All rights reserved.<BR>
 | |
| SPDX-License-Identifier: BSD-2-Clause-Patent
 | |
| 
 | |
| **/
 | |
| 
 | |
| #ifndef __JSON_CAPSULE_GUID_H__
 | |
| #define __JSON_CAPSULE_GUID_H__
 | |
| 
 | |
| //
 | |
| // The address reported in the table entry identified by EFI_JSON_CAPSULE_DATA_TABLE_GUID will be
 | |
| // referenced as physical and will not be fixed up when transition from preboot to runtime phase. The
 | |
| // addresses reported in these table entries identified by EFI_JSON_CONFIG_DATA_TABLE_GUID and
 | |
| // EFI_JSON_CAPSULE_RESULT_TABLE_GUID will be referenced as virtual and will be fixed up when
 | |
| // transition from preboot to runtime phase.
 | |
| //
 | |
| #define EFI_JSON_CONFIG_DATA_TABLE_GUID \
 | |
|     {0x87367f87, 0x1119, 0x41ce, \
 | |
|     {0xaa, 0xec, 0x8b, 0xe0, 0x11, 0x1f, 0x55, 0x8a }}
 | |
| #define EFI_JSON_CAPSULE_DATA_TABLE_GUID \
 | |
|     {0x35e7a725, 0x8dd2, 0x4cac, \
 | |
|     {0x80, 0x11, 0x33, 0xcd, 0xa8, 0x10, 0x90, 0x56 }}
 | |
| #define EFI_JSON_CAPSULE_RESULT_TABLE_GUID \
 | |
|     {0xdbc461c3, 0xb3de, 0x422a,\
 | |
|     {0xb9, 0xb4, 0x98, 0x86, 0xfd, 0x49, 0xa1, 0xe5 }}
 | |
| #define EFI_JSON_CAPSULE_ID_GUID \
 | |
|     {0x67d6f4cd, 0xd6b8,  0x4573, \
 | |
|     {0xbf, 0x4a, 0xde, 0x5e, 0x25, 0x2d, 0x61, 0xae }}
 | |
| 
 | |
| #pragma pack(1)
 | |
| 
 | |
| typedef struct {
 | |
|   ///
 | |
|   /// Version of the structure, initially 0x00000001.
 | |
|   ///
 | |
|   UINT32    Version;
 | |
| 
 | |
|   ///
 | |
|   /// The unique identifier of this capsule.
 | |
|   ///
 | |
|   UINT32    CapsuleId;
 | |
| 
 | |
|   ///
 | |
|   /// The length of the JSON payload immediately following this header, in bytes.
 | |
|   ///
 | |
|   UINT32    PayloadLength;
 | |
| 
 | |
|   ///
 | |
|   /// Variable length buffer containing the JSON payload that should be parsed and applied to the system. The
 | |
|   /// definition of the JSON schema used in the payload is beyond the scope of this specification.
 | |
|   ///
 | |
|   UINT8     Payload[];
 | |
| } EFI_JSON_CAPSULE_HEADER;
 | |
| 
 | |
| typedef struct {
 | |
|   ///
 | |
|   /// The length of the following ConfigData, in bytes.
 | |
|   ///
 | |
|   UINT32    ConfigDataLength;
 | |
| 
 | |
|   ///
 | |
|   /// Variable length buffer containing the JSON payload that describes one group of configuration data within
 | |
|   /// current system. The definition of the JSON schema used in this payload is beyond the scope of this specification.
 | |
|   ///
 | |
|   UINT8     ConfigData[];
 | |
| } EFI_JSON_CONFIG_DATA_ITEM;
 | |
| 
 | |
| typedef struct {
 | |
|   ///
 | |
|   /// Version of the structure, initially 0x00000001.
 | |
|   ///
 | |
|   UINT32                       Version;
 | |
| 
 | |
|   ///
 | |
|   ////The total length of EFI_JSON_CAPSULE_CONFIG_DATA, in bytes.
 | |
|   ///
 | |
|   UINT32                       TotalLength;
 | |
| 
 | |
|   ///
 | |
|   /// Array of configuration data groups.
 | |
|   ///
 | |
|   EFI_JSON_CONFIG_DATA_ITEM    ConfigDataList[];
 | |
| } EFI_JSON_CAPSULE_CONFIG_DATA;
 | |
| 
 | |
| #pragma pack()
 | |
| 
 | |
| extern EFI_GUID  gEfiJsonConfigDataTableGuid;
 | |
| extern EFI_GUID  gEfiJsonCapsuleDataTableGuid;
 | |
| extern EFI_GUID  gEfiJsonCapsuleResultTableGuid;
 | |
| extern EFI_GUID  gEfiJsonCapsuleIdGuid;
 | |
| 
 | |
| #endif
 |