[patch 10/10] x86: use get_bios_ebda()
From: Akinobu Mita
Date: Sat Apr 19 2008 - 11:09:53 EST
Use get_bios_ebda().
Signed-off-by: Akinobu Mita <akinobu.mita@xxxxxxxxx>
---
arch/x86/kernel/head64.c | 5 ++---
arch/x86/kernel/setup_32.c | 4 +---
arch/x86/kernel/summit_32.c | 5 +++--
3 files changed, 6 insertions(+), 8 deletions(-)
Index: 2.6-git/arch/x86/kernel/summit_32.c
===================================================================
--- 2.6-git.orig/arch/x86/kernel/summit_32.c
+++ 2.6-git/arch/x86/kernel/summit_32.c
@@ -29,6 +29,7 @@
#include <linux/mm.h>
#include <linux/init.h>
#include <asm/io.h>
+#include <asm/bios_ebda.h>
#include <asm/mach-summit/mach_mpparse.h>
static struct rio_table_hdr *rio_table_hdr __initdata;
@@ -140,8 +141,8 @@ void __init setup_summit(void)
int i, next_wpeg, next_bus = 0;
/* The pointer to the EBDA is stored in the word @ phys 0x40E(40:0E) */
- ptr = *(unsigned short *)phys_to_virt(0x40Eul);
- ptr = (unsigned long)phys_to_virt(ptr << 4);
+ ptr = get_bios_ebda();
+ ptr = (unsigned long)phys_to_virt(ptr);
rio_table_hdr = NULL;
offset = 0x180;
Index: 2.6-git/arch/x86/kernel/head64.c
===================================================================
--- 2.6-git.orig/arch/x86/kernel/head64.c
+++ 2.6-git/arch/x86/kernel/head64.c
@@ -22,6 +22,7 @@
#include <asm/sections.h>
#include <asm/kdebug.h>
#include <asm/e820.h>
+#include <asm/bios_ebda.h>
static void __init zap_identity_mappings(void)
{
@@ -49,7 +50,6 @@ static void __init copy_bootdata(char *r
}
}
-#define BIOS_EBDA_SEGMENT 0x40E
#define BIOS_LOWMEM_KILOBYTES 0x413
/*
@@ -80,8 +80,7 @@ static void __init reserve_ebda_region(v
lowmem <<= 10;
/* start of EBDA area */
- ebda_addr = *(unsigned short *)__va(BIOS_EBDA_SEGMENT);
- ebda_addr <<= 4;
+ ebda_addr = get_bios_ebda();
/* Fixup: bios puts an EBDA in the top 64K segment */
/* of conventional memory, but does not adjust lowmem. */
Index: 2.6-git/arch/x86/kernel/setup_32.c
===================================================================
--- 2.6-git.orig/arch/x86/kernel/setup_32.c
+++ 2.6-git/arch/x86/kernel/setup_32.c
@@ -388,7 +388,6 @@ unsigned long __init find_max_low_pfn(vo
return max_low_pfn;
}
-#define BIOS_EBDA_SEGMENT 0x40E
#define BIOS_LOWMEM_KILOBYTES 0x413
/*
@@ -419,8 +418,7 @@ static void __init reserve_ebda_region(v
lowmem <<= 10;
/* start of EBDA area */
- ebda_addr = *(unsigned short *)__va(BIOS_EBDA_SEGMENT);
- ebda_addr <<= 4;
+ ebda_addr = get_bios_ebda();
/* Fixup: bios puts an EBDA in the top 64K segment */
/* of conventional memory, but does not adjust lowmem. */
--
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/