1 /** @file
2 
3 Copyright (c) 2007, Intel Corporation. All rights reserved.<BR>
4 This program and the accompanying materials
5 are licensed and made available under the terms and conditions of the BSD License
6 which accompanies this distribution.  The full text of the license may be found at
7 http://opensource.org/licenses/bsd-license.php
8 
9 THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
10 WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
11 
12 Module Name:
13 
14   FlashLayout.h
15 
16 Abstract:
17 
18   Platform specific flash layout
19 
20 **/
21 
22 #ifndef _EFI_FLASH_LAYOUT
23 #define _EFI_FLASH_LAYOUT
24 
25 #include "EfiFlashMap.h"
26 
27 //
28 // Firmware Volume Information for DUET
29 //
30 #define FV_BLOCK_SIZE               0x10000
31 #define FV_BLOCK_MASK               0x0FFFF
32 #define EFI_RUNTIME_UPDATABLE_FV_HEADER_LENGTH  (sizeof (EFI_FIRMWARE_VOLUME_HEADER) + sizeof (EFI_FV_BLOCK_MAP_ENTRY))
33 
34 #define NV_STORAGE_SIZE             0x4000
35 #define NV_STORAGE_FVB_SIZE         ((NV_STORAGE_SIZE + EFI_RUNTIME_UPDATABLE_FV_HEADER_LENGTH + FV_BLOCK_MASK) & ~FV_BLOCK_MASK)
36 #define NV_STORAGE_FVB_BLOCK_NUM    (NV_STORAGE_FVB_SIZE / FV_BLOCK_SIZE)
37 
38 #define NV_FTW_WORKING_SIZE         0x2000
39 #define NV_FTW_SPARE_SIZE           0x10000
40 #define NV_FTW_FVB_SIZE             ((NV_FTW_WORKING_SIZE + NV_FTW_SPARE_SIZE + EFI_RUNTIME_UPDATABLE_FV_HEADER_LENGTH + FV_BLOCK_MASK) & ~FV_BLOCK_MASK)
41 #define NV_FTW_FVB_BLOCK_NUM        (NV_FTW_FVB_SIZE / FV_BLOCK_SIZE)
42 
43 #define NV_STORAGE_FILE_PATH        L".\\Efivar.bin"
44 #endif // _EFI_FLASH_LAYOUT
45