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