\r
#include <WorkingBlockHeader.h>\r
\r
-#define EFI_D_FTW_LITE EFI_D_ERROR\r
-#define EFI_D_FTW_INFO EFI_D_INFO\r
-\r
//\r
// Flash erase polarity is 1\r
//\r
\r
#define FTW_LITE_DEVICE_SIGNATURE SIGNATURE_32 ('F', 'T', 'W', 'L')\r
\r
-//\r
-// MACRO for FTW WORK SPACE Base & Size\r
-//\r
-#ifdef EFI_FTW_WORKING_OFFSET\r
-#define FTW_WORK_SPACE_BASE EFI_FTW_WORKING_OFFSET\r
-#else\r
-#define FTW_WORK_SPACE_BASE 0x00E000\r
-#endif\r
-\r
-#ifdef EFI_FTW_WORKING_LENGTH\r
-#define FTW_WORK_SPACE_SIZE EFI_FTW_WORKING_LENGTH\r
-#else\r
-#define FTW_WORK_SPACE_SIZE 0x002000\r
-#endif\r
//\r
// MACRO for FTW header and record\r
//\r
UINTN Signature;\r
EFI_HANDLE Handle;\r
EFI_FTW_LITE_PROTOCOL FtwLiteInstance;\r
- EFI_PHYSICAL_ADDRESS WorkSpaceAddress;\r
- UINTN WorkSpaceLength;\r
- EFI_PHYSICAL_ADDRESS SpareAreaAddress;\r
- UINTN SpareAreaLength;\r
- UINTN NumberOfSpareBlock; // Number of the blocks in spare block\r
- UINTN SizeOfSpareBlock; // Block size in bytes of the blocks in spare block\r
- EFI_FAULT_TOLERANT_WORKING_BLOCK_HEADER *FtwWorkSpaceHeader;\r
- EFI_FTW_LITE_RECORD *FtwLastRecord;\r
+ EFI_PHYSICAL_ADDRESS WorkSpaceAddress; // Base address of working space range in flash.\r
+ UINTN WorkSpaceLength; // Size of working space range in flash.\r
+ EFI_PHYSICAL_ADDRESS SpareAreaAddress; // Base address of spare range in flash.\r
+ UINTN SpareAreaLength; // Size of spare range in flash.\r
+ UINTN NumberOfSpareBlock; // Number of the blocks in spare block.\r
+ UINTN BlockSize; // Block size in bytes of the blocks in flash\r
+ EFI_FAULT_TOLERANT_WORKING_BLOCK_HEADER *FtwWorkSpaceHeader;// Pointer to Working Space Header in memory buffer\r
+ EFI_FTW_LITE_RECORD *FtwLastRecord; // Pointer to last record in memory buffer\r
EFI_FIRMWARE_VOLUME_BLOCK_PROTOCOL *FtwFvBlock; // FVB of working block\r
EFI_FIRMWARE_VOLUME_BLOCK_PROTOCOL *FtwBackupFvb; // FVB of spare block\r
- EFI_LBA FtwSpareLba;\r
- EFI_LBA FtwWorkBlockLba; // Start LBA of working block\r
+ EFI_LBA FtwSpareLba; // Start LBA of spare block\r
+ EFI_LBA FtwWorkBlockLba; // Start LBA of working block that contains working space in its last block.\r
EFI_LBA FtwWorkSpaceLba; // Start LBA of working space\r
- UINTN FtwWorkSpaceBase; // Offset from LBA start addr\r
- UINTN FtwWorkSpaceSize;\r
- UINT8 *FtwWorkSpace;\r
+ UINTN FtwWorkSpaceBase; // Offset into the FtwWorkSpaceLba block.\r
+ UINTN FtwWorkSpaceSize; // Size of working space range that stores write record.\r
+ UINT8 *FtwWorkSpace; // Point to Work Space in memory buffer \r
//\r
// Following a buffer of FtwWorkSpace[FTW_WORK_SPACE_SIZE],\r
// Allocated with EFI_FTW_LITE_DEVICE.\r