diff options
Diffstat (limited to 'include/asm-x86/setup.h')
-rw-r--r-- | include/asm-x86/setup.h | 37 |
1 files changed, 26 insertions, 11 deletions
diff --git a/include/asm-x86/setup.h b/include/asm-x86/setup.h index fa6763af8d26..90ab2225e71b 100644 --- a/include/asm-x86/setup.h +++ b/include/asm-x86/setup.h | |||
@@ -8,7 +8,25 @@ | |||
8 | /* Interrupt control for vSMPowered x86_64 systems */ | 8 | /* Interrupt control for vSMPowered x86_64 systems */ |
9 | void vsmp_init(void); | 9 | void vsmp_init(void); |
10 | 10 | ||
11 | char *machine_specific_memory_setup(void); | 11 | #ifdef CONFIG_X86_VISWS |
12 | extern void visws_early_detect(void); | ||
13 | extern int is_visws_box(void); | ||
14 | #else | ||
15 | static inline void visws_early_detect(void) { } | ||
16 | static inline int is_visws_box(void) { return 0; } | ||
17 | #endif | ||
18 | |||
19 | /* | ||
20 | * Any setup quirks to be performed? | ||
21 | */ | ||
22 | extern int (*arch_time_init_quirk)(void); | ||
23 | extern int (*arch_pre_intr_init_quirk)(void); | ||
24 | extern int (*arch_intr_init_quirk)(void); | ||
25 | extern int (*arch_trap_init_quirk)(void); | ||
26 | extern char * (*arch_memory_setup_quirk)(void); | ||
27 | extern int (*mach_get_smp_config_quirk)(unsigned int early); | ||
28 | extern int (*mach_find_smp_config_quirk)(unsigned int reserve); | ||
29 | |||
12 | #ifndef CONFIG_PARAVIRT | 30 | #ifndef CONFIG_PARAVIRT |
13 | #define paravirt_post_allocator_init() do {} while (0) | 31 | #define paravirt_post_allocator_init() do {} while (0) |
14 | #endif | 32 | #endif |
@@ -43,26 +61,23 @@ char *machine_specific_memory_setup(void); | |||
43 | */ | 61 | */ |
44 | extern struct boot_params boot_params; | 62 | extern struct boot_params boot_params; |
45 | 63 | ||
46 | #ifdef __i386__ | ||
47 | /* | 64 | /* |
48 | * Do NOT EVER look at the BIOS memory size location. | 65 | * Do NOT EVER look at the BIOS memory size location. |
49 | * It does not work on many machines. | 66 | * It does not work on many machines. |
50 | */ | 67 | */ |
51 | #define LOWMEMSIZE() (0x9f000) | 68 | #define LOWMEMSIZE() (0x9f000) |
52 | 69 | ||
53 | struct e820entry; | 70 | #ifdef __i386__ |
54 | |||
55 | char * __init machine_specific_memory_setup(void); | ||
56 | char *memory_setup(void); | ||
57 | 71 | ||
58 | int __init copy_e820_map(struct e820entry *biosmap, int nr_map); | 72 | void __init i386_start_kernel(void); |
59 | int __init sanitize_e820_map(struct e820entry *biosmap, char *pnr_map); | 73 | extern void probe_roms(void); |
60 | void __init add_memory_region(unsigned long long start, | ||
61 | unsigned long long size, int type); | ||
62 | 74 | ||
75 | extern unsigned long init_pg_tables_start; | ||
63 | extern unsigned long init_pg_tables_end; | 76 | extern unsigned long init_pg_tables_end; |
64 | 77 | ||
65 | 78 | #else | |
79 | void __init x86_64_start_kernel(char *real_mode); | ||
80 | void __init x86_64_start_reservations(char *real_mode_data); | ||
66 | 81 | ||
67 | #endif /* __i386__ */ | 82 | #endif /* __i386__ */ |
68 | #endif /* _SETUP */ | 83 | #endif /* _SETUP */ |