search for: ebda_addr_pointer

Displaying 4 results from an estimated 4 matches for "ebda_addr_pointer".

2007 Apr 18
0
[RFC/PATCH PV_OPS X86_64 09/17] paravirt_ops - bios changes
...dex: clean-start/include/asm-x86_64/e820.h =================================================================== --- clean-start.orig/include/asm-x86_64/e820.h +++ clean-start/include/asm-x86_64/e820.h @@ -55,7 +55,22 @@ extern void finish_e820_parsing(void); extern struct e820map e820; +#define EBDA_ADDR_POINTER 0x40E +static inline void native_ebda_info(unsigned *addr,unsigned *size) +{ + *addr = *(unsigned short *)EBDA_ADDR_POINTER; + *addr <<= 4; + *size = *(unsigned short *)(unsigned long)*addr; +} + extern unsigned ebda_addr, ebda_size; +#ifdef CONFIG_PARAVIRT +#include <asm/paravirt....
2007 Apr 18
0
[RFC/PATCH PV_OPS X86_64 09/17] paravirt_ops - bios changes
...dex: clean-start/include/asm-x86_64/e820.h =================================================================== --- clean-start.orig/include/asm-x86_64/e820.h +++ clean-start/include/asm-x86_64/e820.h @@ -55,7 +55,22 @@ extern void finish_e820_parsing(void); extern struct e820map e820; +#define EBDA_ADDR_POINTER 0x40E +static inline void native_ebda_info(unsigned *addr,unsigned *size) +{ + *addr = *(unsigned short *)EBDA_ADDR_POINTER; + *addr <<= 4; + *size = *(unsigned short *)(unsigned long)*addr; +} + extern unsigned ebda_addr, ebda_size; +#ifdef CONFIG_PARAVIRT +#include <asm/paravirt....
2007 Apr 18
0
[RFC/PATCH PV_OPS X86_64 10/17] paravirt_ops - boot changes
...============================ --- clean-start.orig/arch/x86_64/kernel/setup.c +++ clean-start/arch/x86_64/kernel/setup.c @@ -327,10 +327,7 @@ static void discover_ebda(void) * there is a real-mode segmented pointer pointing to the * 4K EBDA area at 0x40E */ - ebda_addr = *(unsigned short *)EBDA_ADDR_POINTER; - ebda_addr <<= 4; - - ebda_size = *(unsigned short *)(unsigned long)ebda_addr; + ebda_info(&ebda_addr,&ebda_size); /* Round EBDA up to pages */ if (ebda_size == 0) @@ -341,6 +338,12 @@ static void discover_ebda(void) ebda_size = 64*1024; } +/* Overridden in paravirt.c if...
2007 Apr 18
0
[RFC/PATCH PV_OPS X86_64 10/17] paravirt_ops - boot changes
...============================ --- clean-start.orig/arch/x86_64/kernel/setup.c +++ clean-start/arch/x86_64/kernel/setup.c @@ -327,10 +327,7 @@ static void discover_ebda(void) * there is a real-mode segmented pointer pointing to the * 4K EBDA area at 0x40E */ - ebda_addr = *(unsigned short *)EBDA_ADDR_POINTER; - ebda_addr <<= 4; - - ebda_size = *(unsigned short *)(unsigned long)ebda_addr; + ebda_info(&ebda_addr,&ebda_size); /* Round EBDA up to pages */ if (ebda_size == 0) @@ -341,6 +338,12 @@ static void discover_ebda(void) ebda_size = 64*1024; } +/* Overridden in paravirt.c if...