@@ -845,22 +845,83 @@ typedef struct PROTECTED_RANGE_VENDOR_HASH_FILE_HEADER_AMI_V3_
845845//
846846// AMI ROM Hole files
847847//
848- extern const UByteArray AMI_ROM_HOLE_FILE_GUID_0; // 05CA01FC-0FC1-11DC-9011-00173153EBA8
849- extern const UByteArray AMI_ROM_HOLE_FILE_GUID_1; // 05CA01FD-0FC1-11DC-9011-00173153EBA8
850- extern const UByteArray AMI_ROM_HOLE_FILE_GUID_2; // 05CA01FE-0FC1-11DC-9011-00173153EBA8
851- extern const UByteArray AMI_ROM_HOLE_FILE_GUID_3; // 05CA01FF-0FC1-11DC-9011-00173153EBA8
852- extern const UByteArray AMI_ROM_HOLE_FILE_GUID_4; // 05CA0200-0FC1-11DC-9011-00173153EBA8
853- extern const UByteArray AMI_ROM_HOLE_FILE_GUID_5; // 05CA0201-0FC1-11DC-9011-00173153EBA8
854- extern const UByteArray AMI_ROM_HOLE_FILE_GUID_6; // 05CA0202-0FC1-11DC-9011-00173153EBA8
855- extern const UByteArray AMI_ROM_HOLE_FILE_GUID_7; // 05CA0203-0FC1-11DC-9011-00173153EBA8
856- extern const UByteArray AMI_ROM_HOLE_FILE_GUID_8; // 05CA0204-0FC1-11DC-9011-00173153EBA8
857- extern const UByteArray AMI_ROM_HOLE_FILE_GUID_9; // 05CA0205-0FC1-11DC-9011-00173153EBA8
858- extern const UByteArray AMI_ROM_HOLE_FILE_GUID_10; // 05CA0206-0FC1-11DC-9011-00173153EBA8
859- extern const UByteArray AMI_ROM_HOLE_FILE_GUID_11; // 05CA0207-0FC1-11DC-9011-00173153EBA8
860- extern const UByteArray AMI_ROM_HOLE_FILE_GUID_12; // 05CA0208-0FC1-11DC-9011-00173153EBA8
861- extern const UByteArray AMI_ROM_HOLE_FILE_GUID_13; // 05CA0209-0FC1-11DC-9011-00173153EBA8
862- extern const UByteArray AMI_ROM_HOLE_FILE_GUID_14; // 05CA020A-0FC1-11DC-9011-00173153EBA8
863- extern const UByteArray AMI_ROM_HOLE_FILE_GUID_15; // 05CA020B-0FC1-11DC-9011-00173153EBA8
848+ extern const UByteArray AMI_ROM_HOLE_FILE_GUID_0; // 05CA01FC-0FC1-11DC-9011-00173153EBA8
849+ extern const UByteArray AMI_ROM_HOLE_FILE_GUID_1; // 05CA01FD-0FC1-11DC-9011-00173153EBA8
850+ extern const UByteArray AMI_ROM_HOLE_FILE_GUID_2; // 05CA01FE-0FC1-11DC-9011-00173153EBA8
851+ extern const UByteArray AMI_ROM_HOLE_FILE_GUID_3; // 05CA01FF-0FC1-11DC-9011-00173153EBA8
852+ extern const UByteArray AMI_ROM_HOLE_FILE_GUID_4; // 05CA0200-0FC1-11DC-9011-00173153EBA8
853+ extern const UByteArray AMI_ROM_HOLE_FILE_GUID_5; // 05CA0201-0FC1-11DC-9011-00173153EBA8
854+ extern const UByteArray AMI_ROM_HOLE_FILE_GUID_6; // 05CA0202-0FC1-11DC-9011-00173153EBA8
855+ extern const UByteArray AMI_ROM_HOLE_FILE_GUID_7; // 05CA0203-0FC1-11DC-9011-00173153EBA8
856+ extern const UByteArray AMI_ROM_HOLE_FILE_GUID_8; // 05CA0204-0FC1-11DC-9011-00173153EBA8
857+ extern const UByteArray AMI_ROM_HOLE_FILE_GUID_9; // 05CA0205-0FC1-11DC-9011-00173153EBA8
858+ extern const UByteArray AMI_ROM_HOLE_FILE_GUID_10; // 05CA0206-0FC1-11DC-9011-00173153EBA8
859+ extern const UByteArray AMI_ROM_HOLE_FILE_GUID_11; // 05CA0207-0FC1-11DC-9011-00173153EBA8
860+ extern const UByteArray AMI_ROM_HOLE_FILE_GUID_12; // 05CA0208-0FC1-11DC-9011-00173153EBA8
861+ extern const UByteArray AMI_ROM_HOLE_FILE_GUID_13; // 05CA0209-0FC1-11DC-9011-00173153EBA8
862+ extern const UByteArray AMI_ROM_HOLE_FILE_GUID_14; // 05CA020A-0FC1-11DC-9011-00173153EBA8
863+ extern const UByteArray AMI_ROM_HOLE_FILE_GUID_15; // 05CA020B-0FC1-11DC-9011-00173153EBA8
864+
865+ //
866+ // Insyde Flash Device Map
867+ //
868+ #define INSYDE_FLASH_DEVICE_MAP_SIGNATURE 0x4D444648 // HFDM
869+
870+ typedef struct _INSYDE_FLASH_DEVICE_MAP_HEADER {
871+ UINT32 Signature;
872+ UINT32 Size;
873+ UINT32 DataOffset;
874+ UINT32 EntrySize;
875+ UINT8 EntryFormat;
876+ UINT8 Revision;
877+ UINT8 ExtensionCount;
878+ UINT8 Checksum;
879+ UINT64 FdBaseAddress;
880+ // INSYDE_FLASH_DEVICE_MAP_EXTENSION Extensions[ExtensionCount];
881+ } INSYDE_FLASH_DEVICE_MAP_HEADER;
882+
883+ typedef struct _INSYDE_FLASH_DEVICE_MAP_EXTENSION {
884+ UINT16 EntryOffset;
885+ UINT16 EntryCount;
886+ } INSYDE_FLASH_DEVICE_MAP_EXTENSION;
887+
888+ typedef struct _INSYDE_FLASH_DEVICE_MAP_ENTRY {
889+ EFI_GUID RegionTypeGuid;
890+ UINT8 RegionId[16 ];
891+ UINT64 RegionOffset;
892+ UINT64 RegionSize;
893+ UINT32 Attributes;
894+ // UINT8 Hash[]; // Size depends on EntryFormat and EntrySize of the header
895+ } INSYDE_FLASH_DEVICE_MAP_ENTRY;
896+
897+ typedef struct _INSYDE_FLASH_DEVICE_MAP_BOARD_ID_MAP {
898+ UINT32 BoardIdIndex;
899+ UINT32 BoardIdCount;
900+ // UINT64 BoardIds[Count];
901+ } INSYDE_FLASH_DEVICE_MAP_BOARD_ID_MAP;
902+
903+ #define INSYDE_FLASH_DEVICE_MAP_ENTRY_ATTRIBUTE_MODIFIABLE 0x00000001
904+
905+ extern const UByteArray INSYDE_FLASH_MAP_REGION_BOOT_FV_GUID;
906+ extern const UByteArray INSYDE_FLASH_MAP_REGION_BVDT_GUID;
907+ extern const UByteArray INSYDE_FLASH_MAP_REGION_EC_GUID;
908+ extern const UByteArray INSYDE_FLASH_MAP_REGION_FTW_BACKUP_GUID;
909+ extern const UByteArray INSYDE_FLASH_MAP_REGION_FTW_STATE_GUID;
910+ extern const UByteArray INSYDE_FLASH_MAP_REGION_FV_GUID;
911+ extern const UByteArray INSYDE_FLASH_MAP_REGION_FLASH_DEVICE_MAP_GUID;
912+ extern const UByteArray INSYDE_FLASH_MAP_REGION_LOGO_GUID;
913+ extern const UByteArray INSYDE_FLASH_MAP_REGION_MICROCODE_GUID;
914+ extern const UByteArray INSYDE_FLASH_MAP_REGION_MSDM_TABLE_GUID;
915+ extern const UByteArray INSYDE_FLASH_MAP_REGION_MULTI_CONFIG_GUID;
916+ extern const UByteArray INSYDE_FLASH_MAP_REGION_VAR_DEFAULT_GUID;
917+ extern const UByteArray INSYDE_FLASH_MAP_REGION_SMBIOS_UPDATE_GUID;
918+ extern const UByteArray INSYDE_FLASH_MAP_REGION_VAR_GUID;
919+ extern const UByteArray INSYDE_FLASH_MAP_REGION_UNKNOWN_GUID;
920+ extern const UByteArray INSYDE_FLASH_MAP_REGION_UNUSED_GUID;
921+ extern const UByteArray INSYDE_FLASH_MAP_REGION_USB_OPTION_ROM_GUID;
922+ extern const UByteArray INSYDE_FLASH_MAP_REGION_DXE_FV_GUID;
923+ extern const UByteArray INSYDE_FLASH_MAP_REGION_PEI_FV_GUID;
924+ extern const UByteArray INSYDE_FLASH_MAP_REGION_UNSIGNED_FV_GUID;
864925
865926// Restore previous packing rules
866927#pragma pack(pop)
0 commit comments