aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/firmware
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2010-04-07 14:02:23 -0400
committerLinus Torvalds <torvalds@linux-foundation.org>2010-04-07 14:02:23 -0400
commitfb1ae635772d679eb312fa447290fc02cd0e4cf1 (patch)
tree45733f9820da1190cd58bfff080edbb02af961a8 /drivers/firmware
parentaddb2d6c13993060ae75f5005815b19dd2abdd64 (diff)
parent472a474c6630efd195d3738339fd1bdc8aa3b1aa (diff)
Merge branch 'x86-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/x86/linux-2.6-tip
* 'x86-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/x86/linux-2.6-tip: x86: Fix double enable_IR_x2apic() call on SMP kernel on !SMP boards x86: Increase CONFIG_NODES_SHIFT max to 10 ibft, x86: Change reserve_ibft_region() to find_ibft_region() x86, hpet: Fix bug in RTC emulation x86, hpet: Erratum workaround for read after write of HPET comparator bootmem, x86: Fix 32bit numa system without RAM on node 0 nobootmem, x86: Fix 32bit numa system without RAM on node 0 x86: Handle overlapping mptables x86: Make e820_remove_range to handle all covered case x86-32, resume: do a global tlb flush in S4 resume
Diffstat (limited to 'drivers/firmware')
-rw-r--r--drivers/firmware/iscsi_ibft_find.c11
1 files changed, 8 insertions, 3 deletions
diff --git a/drivers/firmware/iscsi_ibft_find.c b/drivers/firmware/iscsi_ibft_find.c
index 134dd7328397..d6470ef36e4a 100644
--- a/drivers/firmware/iscsi_ibft_find.c
+++ b/drivers/firmware/iscsi_ibft_find.c
@@ -51,7 +51,7 @@ EXPORT_SYMBOL_GPL(ibft_addr);
51 * Routine used to find the iSCSI Boot Format Table. The logical 51 * Routine used to find the iSCSI Boot Format Table. The logical
52 * kernel address is set in the ibft_addr global variable. 52 * kernel address is set in the ibft_addr global variable.
53 */ 53 */
54void __init reserve_ibft_region(void) 54unsigned long __init find_ibft_region(unsigned long *sizep)
55{ 55{
56 unsigned long pos; 56 unsigned long pos;
57 unsigned int len = 0; 57 unsigned int len = 0;
@@ -77,6 +77,11 @@ void __init reserve_ibft_region(void)
77 } 77 }
78 } 78 }
79 } 79 }
80 if (ibft_addr) 80 if (ibft_addr) {
81 reserve_bootmem(pos, PAGE_ALIGN(len), BOOTMEM_DEFAULT); 81 *sizep = PAGE_ALIGN(len);
82 return pos;
83 }
84
85 *sizep = 0;
86 return 0;
82} 87}