12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667 |
- /** @file
- @copyright
- Copyright 2011 - 2021 Intel Corporation.
- SPDX-License-Identifier: BSD-2-Clause-Patent
- **/
- #ifndef _BIOS_INFO_H_
- #define _BIOS_INFO_H_
- #undef BIOS_INFO_STRUCT_SIZE
- #define BIOS_INFO_STRUCT_SIZE 4
- //
- // BIOS INFO data structure
- // This is self contained data structure for BIOS info for TXT
- //
- #pragma pack (1)
- #define BIOS_INFO_SIGNATURE SIGNATURE_64 ('$', 'B', 'I', 'O', 'S', 'I', 'F', '$')
- typedef struct {
- UINT64 Signature;
- UINT32 EntryCount;
- UINT32 Reserved;
- } BIOS_INFO_HEADER;
- //
- // BIOS_INFO_STRUCT attributes
- // bits[0:3] means general attributes
- // bits[4:7] means type specific attributes
- //
- #define BIOS_INFO_STRUCT_ATTRIBUTE_GENERAL_EXCLUDE_FROM_FIT 0x01
- #define BIOS_INFO_STRUCT_ATTRIBUTE_MICROCODE_WHOLE_REGION 0x10
- #define BIOS_INFO_STRUCT_ATTRIBUTE_BIOS_POST_IBB 0x10
- #define BIOS_INFO_STRUCT_ATTRIBUTE_BIOS_NON_IBB 0x20
- typedef struct {
- //
- // FitTable entry type
- //
- UINT8 Type;
- //
- // BIOS_INFO_STRUCT attributes
- //
- UINT8 Attributes;
- //
- // FitTable entry version
- //
- UINT16 Version;
- //
- // FitTable entry real size
- //
- UINT32 Size;
- //
- // FitTable entry address
- //
- UINT64 Address;
- } BIOS_INFO_STRUCT;
- typedef struct {
- BIOS_INFO_HEADER Header;
- BIOS_INFO_STRUCT Entry[BIOS_INFO_STRUCT_SIZE];
- } BIOS_INFO;
- #pragma pack ()
- #endif
|