]> git.proxmox.com Git - mirror_edk2.git/blame - MdePkg/Include/IndustryStandard/FirmwareInterfaceTable.h
MdeModulePkg/Usb: Fix various typos
[mirror_edk2.git] / MdePkg / Include / IndustryStandard / FirmwareInterfaceTable.h
CommitLineData
c7c964b1
SF
1/** @file\r
2 Industry Standard Definitions of Firmware Interface Table BIOS Specification 1.0.\r
3\r
4 Copyright (c) 2016 - 2020, Intel Corporation. All rights reserved.<BR>\r
5 SPDX-License-Identifier: BSD-2-Clause-Patent\r
6\r
7**/\r
8\r
9#ifndef __FIRMWARE_INTERFACE_TABLE_H__\r
10#define __FIRMWARE_INTERFACE_TABLE_H__\r
11\r
12//\r
13// FIT Entry type definitions\r
14//\r
15#define FIT_TYPE_00_HEADER 0x00\r
16#define FIT_TYPE_01_MICROCODE 0x01\r
17#define FIT_TYPE_02_STARTUP_ACM 0x02\r
18#define FIT_TYPE_07_BIOS_STARTUP_MODULE 0x07\r
19#define FIT_TYPE_08_TPM_POLICY 0x08\r
20#define FIT_TYPE_09_BIOS_POLICY 0x09\r
21#define FIT_TYPE_0A_TXT_POLICY 0x0A\r
22#define FIT_TYPE_0B_KEY_MANIFEST 0x0B\r
23#define FIT_TYPE_0C_BOOT_POLICY_MANIFEST 0x0C\r
24#define FIT_TYPE_10_CSE_SECURE_BOOT 0x10\r
25#define FIT_TYPE_2D_TXTSX_POLICY 0x2D\r
26#define FIT_TYPE_2F_JMP_DEBUG_POLICY 0x2F\r
27#define FIT_TYPE_7F_SKIP 0x7F\r
28\r
29#define FIT_POINTER_ADDRESS 0xFFFFFFC0 ///< Fixed address at 4G - 40h\r
30\r
31#define FIT_TYPE_VERSION 0x0100\r
32\r
33#define FIT_TYPE_00_SIGNATURE SIGNATURE_64 ('_', 'F', 'I', 'T', '_', ' ', ' ', ' ')\r
34\r
35#pragma pack(1)\r
36\r
37typedef struct {\r
38 //\r
39 // Address is the base address of the firmware component\r
40 // must be aligned on 16 byte boundary\r
41 //\r
42 UINT64 Address;\r
43 //\r
44 // Size is the span of the component in multiple of 16 bytes\r
45 //\r
46 UINT8 Size[3];\r
47 //\r
48 // Reserved must be set to 0\r
49 //\r
50 UINT8 Reserved;\r
51 //\r
52 // Component's version number in binary coded decimal (BCD) format.\r
53 // For the FIT header entry, the value in this field will indicate the revision\r
54 // number of the FIT data structure. The upper byte of the revision field\r
55 // indicates the major revision and the lower byte indicates the minor revision.\r
56 //\r
57 UINT16 Version;\r
58 //\r
59 // FIT types 0x00 to 0x7F\r
60 //\r
61 UINT8 Type : 7;\r
62 //\r
63 // Checksum Valid indicates whether component has valid checksum.\r
64 //\r
65 UINT8 C_V : 1;\r
66 //\r
67 // Component's checksum. The modulo sum of all the bytes in the component and\r
68 // the value in this field (Chksum) must add up to zero. This field is only\r
69 // valid if the C_V flag is non-zero.\r
70 //\r
71 UINT8 Chksum;\r
72} FIRMWARE_INTERFACE_TABLE_ENTRY;\r
73\r
74#pragma pack()\r
75\r
76#endif\r