mirror of
https://github.com/LongSoft/UEFITool.git
synced 2025-05-09 13:52:01 -04:00
48 lines
1.3 KiB
Text
48 lines
1.3 KiB
Text
meta:
|
|
id: edk2_ftw
|
|
title: EDK2 Fault Tolerant Write NVRAM store
|
|
application: EDK2-based UEFI firmware
|
|
file-extension: ftw
|
|
tags:
|
|
- firmware
|
|
license: CC0-1.0
|
|
ks-version: 0.9
|
|
endian: le
|
|
|
|
seq:
|
|
- id: signature
|
|
type: u4
|
|
valid:
|
|
expr: _ == 0xFFF12B8D or _ == 0x9E58292B
|
|
- id: signature_main
|
|
contents: [0x96, 0x76, 0x8B, 0x4C, 0xA9, 0x85, 0x27, 0x47, 0x07, 0x5B, 0x4F, 0x50] # FF12B8D-7696-4C8B-A985-2747075B4F50
|
|
if: signature == 0xFFF12B8D
|
|
- id: signature_edk2_working_block
|
|
contents: [0x68, 0x7C, 0x7D, 0x49, 0x0A, 0xCE, 0x65, 0x00, 0xFD, 0x9F, 0x1B, 0x95] # 9E58292B-7C68-497D-0ACE-6500FD9F1B95
|
|
if: signature == 0x9E58292B
|
|
- id: signature_vss2_working_block
|
|
contents: [0x68, 0x7C, 0x7D, 0x49, 0xA0, 0xCE, 0x65, 0x00, 0xFD, 0x9F, 0x1B, 0x95] # 9E58292B-7C68-497D-A0CE-6500FD9F1B95
|
|
if: signature == 0x9E58292B
|
|
- id: crc
|
|
type: u4
|
|
- id: state
|
|
type: u1
|
|
- id: reserved
|
|
size: 3
|
|
- id: len_write_queue_32
|
|
type: u4
|
|
- id: len_write_queue_64
|
|
type: u4
|
|
if: len_write_queue_32 % 0x10 == 0
|
|
- id: write_queue_32
|
|
size: len_write_queue_32
|
|
if: len_write_queue_32 % 0x10 == 0x04
|
|
- id: write_queue_64
|
|
size: ((len_write_queue_64.as<u8>) << 32) + len_write_queue_32
|
|
if: len_write_queue_32 % 0x10 == 0
|
|
|
|
instances:
|
|
len_ftw_store_header_32:
|
|
value: 28
|
|
len_ftw_store_header_64:
|
|
value: 32
|