1 /* SPDX-License-Identifier: GPL-2.0-only */
2 /*
3 * Copyright 2007 Red Hat, Inc.
4 * by Peter Jones <pjones@redhat.com>
5 * Copyright 2007 IBM, Inc.
6 * by Konrad Rzeszutek <konradr@linux.vnet.ibm.com>
7 * Copyright 2008
8 * by Konrad Rzeszutek <ketuzsezr@darnok.org>
9 *
10 * This code exposes the iSCSI Boot Format Table to userland via sysfs.
11 */
12
13 #ifndef ISCSI_IBFT_H
14 #define ISCSI_IBFT_H
15
16 #include <linux/types.h>
17
18 /*
19 * Physical location of iSCSI Boot Format Table.
20 * If the value is 0 there is no iBFT on the machine.
21 */
22 extern phys_addr_t ibft_phys_addr;
23
24 #ifdef CONFIG_ISCSI_IBFT_FIND
25
26 /*
27 * Routine used to find and reserve the iSCSI Boot Format Table. The
28 * physical address is set in the ibft_phys_addr variable.
29 */
30 void reserve_ibft_region(void);
31
32 /*
33 * Physical bounds to search for the iSCSI Boot Format Table.
34 */
35 #define IBFT_START 0x80000 /* 512kB */
36 #define IBFT_END 0x100000 /* 1MB */
37
38 #else
reserve_ibft_region(void)39 static inline void reserve_ibft_region(void) {}
40 #endif
41
42 #endif /* ISCSI_IBFT_H */
43