diff options
| author | Thomas Gleixner <tglx@linutronix.de> | 2009-03-23 09:50:03 -0400 |
|---|---|---|
| committer | Thomas Gleixner <tglx@linutronix.de> | 2009-03-23 16:20:20 -0400 |
| commit | 80c5520811d3805adcb15c570ea5e2d489fa5d0b (patch) | |
| tree | ae797a7f4af39f80e77526533d06ac23b439f0ab /arch/x86/include/asm/setup.h | |
| parent | b3e3b302cf6dc8d60b67f0e84d1fa5648889c038 (diff) | |
| parent | 8c083f081d0014057901c68a0a3e0f8ca7ac8d23 (diff) | |
Merge branch 'cpus4096' into irq/threaded
Conflicts:
arch/parisc/kernel/irq.c
kernel/irq/handle.c
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Diffstat (limited to 'arch/x86/include/asm/setup.h')
| -rw-r--r-- | arch/x86/include/asm/setup.h | 62 |
1 files changed, 35 insertions, 27 deletions
diff --git a/arch/x86/include/asm/setup.h b/arch/x86/include/asm/setup.h index ebe858cdc8a3..05c6f6b11fd5 100644 --- a/arch/x86/include/asm/setup.h +++ b/arch/x86/include/asm/setup.h | |||
| @@ -1,33 +1,19 @@ | |||
| 1 | #ifndef _ASM_X86_SETUP_H | 1 | #ifndef _ASM_X86_SETUP_H |
| 2 | #define _ASM_X86_SETUP_H | 2 | #define _ASM_X86_SETUP_H |
| 3 | 3 | ||
| 4 | #ifdef __KERNEL__ | ||
| 5 | |||
| 4 | #define COMMAND_LINE_SIZE 2048 | 6 | #define COMMAND_LINE_SIZE 2048 |
| 5 | 7 | ||
| 6 | #ifndef __ASSEMBLY__ | 8 | #ifndef __ASSEMBLY__ |
| 7 | 9 | ||
| 8 | /* Interrupt control for vSMPowered x86_64 systems */ | ||
| 9 | void vsmp_init(void); | ||
| 10 | |||
| 11 | |||
| 12 | void setup_bios_corruption_check(void); | ||
| 13 | |||
| 14 | |||
| 15 | #ifdef CONFIG_X86_VISWS | ||
| 16 | extern void visws_early_detect(void); | ||
| 17 | extern int is_visws_box(void); | ||
| 18 | #else | ||
| 19 | static inline void visws_early_detect(void) { } | ||
| 20 | static inline int is_visws_box(void) { return 0; } | ||
| 21 | #endif | ||
| 22 | |||
| 23 | extern int wakeup_secondary_cpu_via_nmi(int apicid, unsigned long start_eip); | ||
| 24 | extern int wakeup_secondary_cpu_via_init(int apicid, unsigned long start_eip); | ||
| 25 | /* | 10 | /* |
| 26 | * Any setup quirks to be performed? | 11 | * Any setup quirks to be performed? |
| 27 | */ | 12 | */ |
| 28 | struct mpc_cpu; | 13 | struct mpc_cpu; |
| 29 | struct mpc_bus; | 14 | struct mpc_bus; |
| 30 | struct mpc_oemtable; | 15 | struct mpc_oemtable; |
| 16 | |||
| 31 | struct x86_quirks { | 17 | struct x86_quirks { |
| 32 | int (*arch_pre_time_init)(void); | 18 | int (*arch_pre_time_init)(void); |
| 33 | int (*arch_time_init)(void); | 19 | int (*arch_time_init)(void); |
| @@ -43,20 +29,19 @@ struct x86_quirks { | |||
| 43 | void (*mpc_oem_bus_info)(struct mpc_bus *m, char *name); | 29 | void (*mpc_oem_bus_info)(struct mpc_bus *m, char *name); |
| 44 | void (*mpc_oem_pci_bus)(struct mpc_bus *m); | 30 | void (*mpc_oem_pci_bus)(struct mpc_bus *m); |
| 45 | void (*smp_read_mpc_oem)(struct mpc_oemtable *oemtable, | 31 | void (*smp_read_mpc_oem)(struct mpc_oemtable *oemtable, |
| 46 | unsigned short oemsize); | 32 | unsigned short oemsize); |
| 47 | int (*setup_ioapic_ids)(void); | 33 | int (*setup_ioapic_ids)(void); |
| 48 | int (*update_genapic)(void); | ||
| 49 | }; | 34 | }; |
| 50 | 35 | ||
| 51 | extern struct x86_quirks *x86_quirks; | 36 | extern void x86_quirk_pre_intr_init(void); |
| 52 | extern unsigned long saved_video_mode; | 37 | extern void x86_quirk_intr_init(void); |
| 53 | 38 | ||
| 54 | #ifndef CONFIG_PARAVIRT | 39 | extern void x86_quirk_trap_init(void); |
| 55 | #define paravirt_post_allocator_init() do {} while (0) | ||
| 56 | #endif | ||
| 57 | #endif /* __ASSEMBLY__ */ | ||
| 58 | 40 | ||
| 59 | #ifdef __KERNEL__ | 41 | extern void x86_quirk_pre_time_init(void); |
| 42 | extern void x86_quirk_time_init(void); | ||
| 43 | |||
| 44 | #endif /* __ASSEMBLY__ */ | ||
| 60 | 45 | ||
| 61 | #ifdef __i386__ | 46 | #ifdef __i386__ |
| 62 | 47 | ||
| @@ -78,6 +63,30 @@ extern unsigned long saved_video_mode; | |||
| 78 | #ifndef __ASSEMBLY__ | 63 | #ifndef __ASSEMBLY__ |
| 79 | #include <asm/bootparam.h> | 64 | #include <asm/bootparam.h> |
| 80 | 65 | ||
| 66 | /* Interrupt control for vSMPowered x86_64 systems */ | ||
| 67 | #ifdef CONFIG_X86_VSMP | ||
| 68 | void vsmp_init(void); | ||
| 69 | #else | ||
| 70 | static inline void vsmp_init(void) { } | ||
| 71 | #endif | ||
| 72 | |||
| 73 | void setup_bios_corruption_check(void); | ||
| 74 | |||
| 75 | #ifdef CONFIG_X86_VISWS | ||
| 76 | extern void visws_early_detect(void); | ||
| 77 | extern int is_visws_box(void); | ||
| 78 | #else | ||
| 79 | static inline void visws_early_detect(void) { } | ||
| 80 | static inline int is_visws_box(void) { return 0; } | ||
| 81 | #endif | ||
| 82 | |||
| 83 | extern struct x86_quirks *x86_quirks; | ||
| 84 | extern unsigned long saved_video_mode; | ||
| 85 | |||
| 86 | #ifndef CONFIG_PARAVIRT | ||
| 87 | #define paravirt_post_allocator_init() do {} while (0) | ||
| 88 | #endif | ||
| 89 | |||
| 81 | #ifndef _SETUP | 90 | #ifndef _SETUP |
| 82 | 91 | ||
| 83 | /* | 92 | /* |
| @@ -100,7 +109,6 @@ extern unsigned long init_pg_tables_start; | |||
| 100 | extern unsigned long init_pg_tables_end; | 109 | extern unsigned long init_pg_tables_end; |
| 101 | 110 | ||
| 102 | #else | 111 | #else |
| 103 | void __init x86_64_init_pda(void); | ||
| 104 | void __init x86_64_start_kernel(char *real_mode); | 112 | void __init x86_64_start_kernel(char *real_mode); |
| 105 | void __init x86_64_start_reservations(char *real_mode_data); | 113 | void __init x86_64_start_reservations(char *real_mode_data); |
| 106 | 114 | ||
