mirror of
https://github.com/LongSoft/UEFITool.git
synced 2025-06-04 08:59:44 -04:00
Add Insyde Flash Device Map parser
This commit is contained in:
parent
b98edf6944
commit
58366f48fe
28 changed files with 1361 additions and 230 deletions
93
common/ffs.h
93
common/ffs.h
|
@ -845,22 +845,83 @@ typedef struct PROTECTED_RANGE_VENDOR_HASH_FILE_HEADER_AMI_V3_
|
|||
//
|
||||
// AMI ROM Hole files
|
||||
//
|
||||
extern const UByteArray AMI_ROM_HOLE_FILE_GUID_0; //05CA01FC-0FC1-11DC-9011-00173153EBA8
|
||||
extern const UByteArray AMI_ROM_HOLE_FILE_GUID_1; //05CA01FD-0FC1-11DC-9011-00173153EBA8
|
||||
extern const UByteArray AMI_ROM_HOLE_FILE_GUID_2; //05CA01FE-0FC1-11DC-9011-00173153EBA8
|
||||
extern const UByteArray AMI_ROM_HOLE_FILE_GUID_3; //05CA01FF-0FC1-11DC-9011-00173153EBA8
|
||||
extern const UByteArray AMI_ROM_HOLE_FILE_GUID_4; //05CA0200-0FC1-11DC-9011-00173153EBA8
|
||||
extern const UByteArray AMI_ROM_HOLE_FILE_GUID_5; //05CA0201-0FC1-11DC-9011-00173153EBA8
|
||||
extern const UByteArray AMI_ROM_HOLE_FILE_GUID_6; //05CA0202-0FC1-11DC-9011-00173153EBA8
|
||||
extern const UByteArray AMI_ROM_HOLE_FILE_GUID_7; //05CA0203-0FC1-11DC-9011-00173153EBA8
|
||||
extern const UByteArray AMI_ROM_HOLE_FILE_GUID_8; //05CA0204-0FC1-11DC-9011-00173153EBA8
|
||||
extern const UByteArray AMI_ROM_HOLE_FILE_GUID_9; //05CA0205-0FC1-11DC-9011-00173153EBA8
|
||||
extern const UByteArray AMI_ROM_HOLE_FILE_GUID_10; //05CA0206-0FC1-11DC-9011-00173153EBA8
|
||||
extern const UByteArray AMI_ROM_HOLE_FILE_GUID_11; //05CA0207-0FC1-11DC-9011-00173153EBA8
|
||||
extern const UByteArray AMI_ROM_HOLE_FILE_GUID_12; //05CA0208-0FC1-11DC-9011-00173153EBA8
|
||||
extern const UByteArray AMI_ROM_HOLE_FILE_GUID_13; //05CA0209-0FC1-11DC-9011-00173153EBA8
|
||||
extern const UByteArray AMI_ROM_HOLE_FILE_GUID_14; //05CA020A-0FC1-11DC-9011-00173153EBA8
|
||||
extern const UByteArray AMI_ROM_HOLE_FILE_GUID_15; //05CA020B-0FC1-11DC-9011-00173153EBA8
|
||||
extern const UByteArray AMI_ROM_HOLE_FILE_GUID_0; // 05CA01FC-0FC1-11DC-9011-00173153EBA8
|
||||
extern const UByteArray AMI_ROM_HOLE_FILE_GUID_1; // 05CA01FD-0FC1-11DC-9011-00173153EBA8
|
||||
extern const UByteArray AMI_ROM_HOLE_FILE_GUID_2; // 05CA01FE-0FC1-11DC-9011-00173153EBA8
|
||||
extern const UByteArray AMI_ROM_HOLE_FILE_GUID_3; // 05CA01FF-0FC1-11DC-9011-00173153EBA8
|
||||
extern const UByteArray AMI_ROM_HOLE_FILE_GUID_4; // 05CA0200-0FC1-11DC-9011-00173153EBA8
|
||||
extern const UByteArray AMI_ROM_HOLE_FILE_GUID_5; // 05CA0201-0FC1-11DC-9011-00173153EBA8
|
||||
extern const UByteArray AMI_ROM_HOLE_FILE_GUID_6; // 05CA0202-0FC1-11DC-9011-00173153EBA8
|
||||
extern const UByteArray AMI_ROM_HOLE_FILE_GUID_7; // 05CA0203-0FC1-11DC-9011-00173153EBA8
|
||||
extern const UByteArray AMI_ROM_HOLE_FILE_GUID_8; // 05CA0204-0FC1-11DC-9011-00173153EBA8
|
||||
extern const UByteArray AMI_ROM_HOLE_FILE_GUID_9; // 05CA0205-0FC1-11DC-9011-00173153EBA8
|
||||
extern const UByteArray AMI_ROM_HOLE_FILE_GUID_10; // 05CA0206-0FC1-11DC-9011-00173153EBA8
|
||||
extern const UByteArray AMI_ROM_HOLE_FILE_GUID_11; // 05CA0207-0FC1-11DC-9011-00173153EBA8
|
||||
extern const UByteArray AMI_ROM_HOLE_FILE_GUID_12; // 05CA0208-0FC1-11DC-9011-00173153EBA8
|
||||
extern const UByteArray AMI_ROM_HOLE_FILE_GUID_13; // 05CA0209-0FC1-11DC-9011-00173153EBA8
|
||||
extern const UByteArray AMI_ROM_HOLE_FILE_GUID_14; // 05CA020A-0FC1-11DC-9011-00173153EBA8
|
||||
extern const UByteArray AMI_ROM_HOLE_FILE_GUID_15; // 05CA020B-0FC1-11DC-9011-00173153EBA8
|
||||
|
||||
//
|
||||
// Insyde Flash Device Map
|
||||
//
|
||||
#define INSYDE_FLASH_DEVICE_MAP_SIGNATURE 0x4D444648 // HFDM
|
||||
|
||||
typedef struct _INSYDE_FLASH_DEVICE_MAP_HEADER {
|
||||
UINT32 Signature;
|
||||
UINT32 Size;
|
||||
UINT32 DataOffset;
|
||||
UINT32 EntrySize;
|
||||
UINT8 EntryFormat;
|
||||
UINT8 Revision;
|
||||
UINT8 ExtensionCount;
|
||||
UINT8 Checksum;
|
||||
UINT64 FdBaseAddress;
|
||||
//INSYDE_FLASH_DEVICE_MAP_EXTENSION Extensions[ExtensionCount];
|
||||
} INSYDE_FLASH_DEVICE_MAP_HEADER;
|
||||
|
||||
typedef struct _INSYDE_FLASH_DEVICE_MAP_EXTENSION {
|
||||
UINT16 EntryOffset;
|
||||
UINT16 EntryCount;
|
||||
} INSYDE_FLASH_DEVICE_MAP_EXTENSION;
|
||||
|
||||
typedef struct _INSYDE_FLASH_DEVICE_MAP_ENTRY {
|
||||
EFI_GUID RegionTypeGuid;
|
||||
UINT8 RegionId[16];
|
||||
UINT64 RegionOffset;
|
||||
UINT64 RegionSize;
|
||||
UINT32 Attributes;
|
||||
//UINT8 Hash[]; // Size depends on EntryFormat and EntrySize of the header
|
||||
} INSYDE_FLASH_DEVICE_MAP_ENTRY;
|
||||
|
||||
typedef struct _INSYDE_FLASH_DEVICE_MAP_BOARD_ID_MAP {
|
||||
UINT32 BoardIdIndex;
|
||||
UINT32 BoardIdCount;
|
||||
//UINT64 BoardIds[Count];
|
||||
} INSYDE_FLASH_DEVICE_MAP_BOARD_ID_MAP;
|
||||
|
||||
#define INSYDE_FLASH_DEVICE_MAP_ENTRY_ATTRIBUTE_MODIFIABLE 0x00000001
|
||||
|
||||
extern const UByteArray INSYDE_FLASH_MAP_REGION_BOOT_FV_GUID;
|
||||
extern const UByteArray INSYDE_FLASH_MAP_REGION_BVDT_GUID;
|
||||
extern const UByteArray INSYDE_FLASH_MAP_REGION_EC_GUID;
|
||||
extern const UByteArray INSYDE_FLASH_MAP_REGION_FTW_BACKUP_GUID;
|
||||
extern const UByteArray INSYDE_FLASH_MAP_REGION_FTW_STATE_GUID;
|
||||
extern const UByteArray INSYDE_FLASH_MAP_REGION_FV_GUID;
|
||||
extern const UByteArray INSYDE_FLASH_MAP_REGION_FLASH_DEVICE_MAP_GUID;
|
||||
extern const UByteArray INSYDE_FLASH_MAP_REGION_LOGO_GUID;
|
||||
extern const UByteArray INSYDE_FLASH_MAP_REGION_MICROCODE_GUID;
|
||||
extern const UByteArray INSYDE_FLASH_MAP_REGION_MSDM_TABLE_GUID;
|
||||
extern const UByteArray INSYDE_FLASH_MAP_REGION_MULTI_CONFIG_GUID;
|
||||
extern const UByteArray INSYDE_FLASH_MAP_REGION_VAR_DEFAULT_GUID;
|
||||
extern const UByteArray INSYDE_FLASH_MAP_REGION_SMBIOS_UPDATE_GUID;
|
||||
extern const UByteArray INSYDE_FLASH_MAP_REGION_VAR_GUID;
|
||||
extern const UByteArray INSYDE_FLASH_MAP_REGION_UNKNOWN_GUID;
|
||||
extern const UByteArray INSYDE_FLASH_MAP_REGION_UNUSED_GUID;
|
||||
extern const UByteArray INSYDE_FLASH_MAP_REGION_USB_OPTION_ROM_GUID;
|
||||
extern const UByteArray INSYDE_FLASH_MAP_REGION_DXE_FV_GUID;
|
||||
extern const UByteArray INSYDE_FLASH_MAP_REGION_PEI_FV_GUID;
|
||||
extern const UByteArray INSYDE_FLASH_MAP_REGION_UNSIGNED_FV_GUID;
|
||||
|
||||
// Restore previous packing rules
|
||||
#pragma pack(pop)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue