9#ifndef _PCD_DATABASE_SIGNATURE_GUID_H_
10#define _PCD_DATABASE_SIGNATURE_GUID_H_
12#define PCD_DATA_BASE_SIGNATURE_GUID \
13{ 0x3c7d193c, 0x682c, 0x4c14, { 0xa6, 0x8f, 0x55, 0x2d, 0xea, 0x4f, 0x43, 0x7e } }
15extern EFI_GUID gPcdDataBaseSignatureGuid;
22#define PCD_TYPE_SHIFT 28
24#define PCD_TYPE_DATA (0x0U << PCD_TYPE_SHIFT)
25#define PCD_TYPE_HII (0x8U << PCD_TYPE_SHIFT)
26#define PCD_TYPE_VPD (0x4U << PCD_TYPE_SHIFT)
27#define PCD_TYPE_STRING (0x1U << PCD_TYPE_SHIFT)
29#define PCD_TYPE_ALL_SET (PCD_TYPE_DATA | PCD_TYPE_HII | PCD_TYPE_VPD | PCD_TYPE_STRING)
31#define PCD_DATUM_TYPE_SHIFT 24
33#define PCD_DATUM_TYPE_POINTER (0x0U << PCD_DATUM_TYPE_SHIFT)
34#define PCD_DATUM_TYPE_UINT8 (0x1U << PCD_DATUM_TYPE_SHIFT)
35#define PCD_DATUM_TYPE_UINT16 (0x2U << PCD_DATUM_TYPE_SHIFT)
36#define PCD_DATUM_TYPE_UINT32 (0x4U << PCD_DATUM_TYPE_SHIFT)
37#define PCD_DATUM_TYPE_UINT64 (0x8U << PCD_DATUM_TYPE_SHIFT)
39#define PCD_DATUM_TYPE_ALL_SET (PCD_DATUM_TYPE_POINTER | \
40 PCD_DATUM_TYPE_UINT8 | \
41 PCD_DATUM_TYPE_UINT16 | \
42 PCD_DATUM_TYPE_UINT32 | \
43 PCD_DATUM_TYPE_UINT64)
45#define PCD_DATUM_TYPE_SHIFT2 20
47#define PCD_DATUM_TYPE_UINT8_BOOLEAN (0x1U << PCD_DATUM_TYPE_SHIFT2)
49#define PCD_DATABASE_OFFSET_MASK (~(PCD_TYPE_ALL_SET | PCD_DATUM_TYPE_ALL_SET | PCD_DATUM_TYPE_UINT8_BOOLEAN))
59 UINT32 DefaultValueOffset;
60 UINT16 GuidTableIndex;
71typedef UINT32 STRING_HEAD;
73typedef UINT16 SIZE_INFO;
76 UINT32 TokenSpaceCNameIndex;
80typedef UINT32 TABLE_OFFSET;
87 UINT32 LengthForAllSkus;
88 UINT32 UninitDataBaseSize;
89 TABLE_OFFSET LocalTokenNumberTableOffset;
90 TABLE_OFFSET ExMapTableOffset;
91 TABLE_OFFSET GuidTableOffset;
92 TABLE_OFFSET StringTableOffset;
93 TABLE_OFFSET SizeTableOffset;
94 TABLE_OFFSET SkuIdTableOffset;
95 TABLE_OFFSET PcdNameTableOffset;
96 UINT16 LocalTokenCount;
98 UINT16 GuidTableCount;
163#define PCD_NV_STORE_DEFAULT_BUFFER_SIGNATURE SIGNATURE_32('N', 'S', 'D', 'B')
207 SKU_ID SkuIdCompared;