| Thomas Gleixner | ef68529 | 2007-10-23 22:37:24 +0200 | [diff] [blame] | 1 | #ifndef _ASM_X86_SETUP_H | 
|  | 2 | #define _ASM_X86_SETUP_H | 
|  | 3 |  | 
|  | 4 | #define COMMAND_LINE_SIZE 2048 | 
|  | 5 |  | 
| Thomas Gleixner | 96a388d | 2007-10-11 11:20:03 +0200 | [diff] [blame] | 6 | #ifdef __KERNEL__ | 
| Thomas Gleixner | ef68529 | 2007-10-23 22:37:24 +0200 | [diff] [blame] | 7 |  | 
|  | 8 | #ifdef __i386__ | 
|  | 9 |  | 
|  | 10 | #include <linux/pfn.h> | 
|  | 11 | /* | 
|  | 12 | * Reserved space for vmalloc and iomap - defined in asm/page.h | 
|  | 13 | */ | 
|  | 14 | #define MAXMEM_PFN	PFN_DOWN(MAXMEM) | 
|  | 15 | #define MAX_NONPAE_PFN	(1 << 20) | 
|  | 16 |  | 
| Thomas Gleixner | ef68529 | 2007-10-23 22:37:24 +0200 | [diff] [blame] | 17 | #endif /* __i386__ */ | 
|  | 18 |  | 
| H. Peter Anvin | fa76dab | 2007-10-23 22:37:25 +0200 | [diff] [blame] | 19 | #define PARAM_SIZE 4096		/* sizeof(struct boot_params) */ | 
|  | 20 |  | 
|  | 21 | #define OLD_CL_MAGIC		0xA33F | 
|  | 22 | #define OLD_CL_ADDRESS		0x020	/* Relative to real mode data */ | 
|  | 23 | #define NEW_CL_POINTER		0x228	/* Relative to real mode data */ | 
|  | 24 |  | 
| Thomas Gleixner | ef68529 | 2007-10-23 22:37:24 +0200 | [diff] [blame] | 25 | #ifndef __ASSEMBLY__ | 
|  | 26 | #include <asm/bootparam.h> | 
|  | 27 |  | 
| H. Peter Anvin | fa76dab | 2007-10-23 22:37:25 +0200 | [diff] [blame] | 28 | #ifndef _SETUP | 
|  | 29 |  | 
| Thomas Gleixner | ef68529 | 2007-10-23 22:37:24 +0200 | [diff] [blame] | 30 | /* | 
|  | 31 | * This is set up by the setup-routine at boot-time | 
|  | 32 | */ | 
|  | 33 | extern struct boot_params boot_params; | 
|  | 34 |  | 
|  | 35 | #ifdef __i386__ | 
|  | 36 | /* | 
|  | 37 | * Do NOT EVER look at the BIOS memory size location. | 
|  | 38 | * It does not work on many machines. | 
|  | 39 | */ | 
|  | 40 | #define LOWMEMSIZE()	(0x9f000) | 
|  | 41 |  | 
|  | 42 | struct e820entry; | 
|  | 43 |  | 
|  | 44 | char * __init machine_specific_memory_setup(void); | 
|  | 45 | char *memory_setup(void); | 
|  | 46 |  | 
|  | 47 | int __init copy_e820_map(struct e820entry * biosmap, int nr_map); | 
|  | 48 | int __init sanitize_e820_map(struct e820entry * biosmap, char * pnr_map); | 
|  | 49 | void __init add_memory_region(unsigned long long start, | 
|  | 50 | unsigned long long size, int type); | 
|  | 51 |  | 
|  | 52 | extern unsigned long init_pg_tables_end; | 
|  | 53 |  | 
|  | 54 | #ifndef CONFIG_PARAVIRT | 
|  | 55 | #define paravirt_post_allocator_init()	do {} while (0) | 
| Thomas Gleixner | 96a388d | 2007-10-11 11:20:03 +0200 | [diff] [blame] | 56 | #endif | 
| Thomas Gleixner | ef68529 | 2007-10-23 22:37:24 +0200 | [diff] [blame] | 57 |  | 
|  | 58 | #endif /* __i386__ */ | 
| H. Peter Anvin | fa76dab | 2007-10-23 22:37:25 +0200 | [diff] [blame] | 59 | #endif /* _SETUP */ | 
| Thomas Gleixner | ef68529 | 2007-10-23 22:37:24 +0200 | [diff] [blame] | 60 | #endif /* __ASSEMBLY__ */ | 
|  | 61 | #endif  /*  __KERNEL__  */ | 
|  | 62 |  | 
|  | 63 | #endif /* _ASM_X86_SETUP_H */ |