1 /** @file
2   Some extra definitions for iBFT.
3 
4 Copyright (c) 2004 - 2011, Intel Corporation. All rights reserved.<BR>
5 This program and the accompanying materials
6 are licensed and made available under the terms and conditions of the BSD License
7 which accompanies this distribution.  The full text of the license may be found at
8 http://opensource.org/licenses/bsd-license.php
9 
10 THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
11 WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
12 
13 **/
14 
15 #ifndef _ISCSI_IBFT_H_
16 #define _ISCSI_IBFT_H_
17 
18 #include <IndustryStandard/Acpi.h>
19 #include <IndustryStandard/IScsiBootFirmwareTable.h>
20 #include <Protocol/AcpiTable.h>
21 #include <Protocol/PciIo.h>
22 
23 #define IBFT_TABLE_VAR_NAME L"iBFT"
24 #define IBFT_MAX_SIZE       4096
25 #define IBFT_HEAP_OFFSET    2048
26 
27 #define IBFT_ROUNDUP(size)  NET_ROUNDUP ((size), EFI_ACPI_ISCSI_BOOT_FIRMWARE_TABLE_STRUCTURE_ALIGNMENT)
28 
29 /**
30   Publish and remove the iSCSI Boot Firmware Table according to the iSCSI
31   session status.
32 
33 **/
34 VOID
35 IScsiPublishIbft (
36   IN VOID
37   );
38 
39 #endif
40