diff options
author | Thomas Gleixner <tglx@linutronix.de> | 2009-08-20 04:19:54 -0400 |
---|---|---|
committer | Thomas Gleixner <tglx@linutronix.de> | 2009-08-27 11:12:52 -0400 |
commit | 6b18ae3e2ff62daa9f181401759161dd8de0aadf (patch) | |
tree | 3e1c61c26c29a1a81d5f54917a92c37334d3c607 /arch/x86/include/asm | |
parent | 816c25e7d4fb6fd40022a376e8b7f45b1edf5a89 (diff) |
x86: Move memory_setup to x86_init_ops
memory_setup is overridden by x86_quirks and by paravirts with weak
functions and quirks. Unify the whole mess and make it an
unconditional x86_init_ops function which defaults to the standard
function and can be overridden by the early platform code.
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Diffstat (limited to 'arch/x86/include/asm')
-rw-r--r-- | arch/x86/include/asm/e820.h | 2 | ||||
-rw-r--r-- | arch/x86/include/asm/paravirt_types.h | 1 | ||||
-rw-r--r-- | arch/x86/include/asm/setup.h | 1 | ||||
-rw-r--r-- | arch/x86/include/asm/x86_init.h | 2 |
4 files changed, 2 insertions, 4 deletions
diff --git a/arch/x86/include/asm/e820.h b/arch/x86/include/asm/e820.h index 7ecba4d85089..40b4e614fe71 100644 --- a/arch/x86/include/asm/e820.h +++ b/arch/x86/include/asm/e820.h | |||
@@ -126,8 +126,6 @@ extern void e820_reserve_resources(void); | |||
126 | extern void e820_reserve_resources_late(void); | 126 | extern void e820_reserve_resources_late(void); |
127 | extern void setup_memory_map(void); | 127 | extern void setup_memory_map(void); |
128 | extern char *default_machine_specific_memory_setup(void); | 128 | extern char *default_machine_specific_memory_setup(void); |
129 | extern char *machine_specific_memory_setup(void); | ||
130 | extern char *memory_setup(void); | ||
131 | #endif /* __KERNEL__ */ | 129 | #endif /* __KERNEL__ */ |
132 | #endif /* __ASSEMBLY__ */ | 130 | #endif /* __ASSEMBLY__ */ |
133 | 131 | ||
diff --git a/arch/x86/include/asm/paravirt_types.h b/arch/x86/include/asm/paravirt_types.h index 2b3371bae295..6d668968b6b8 100644 --- a/arch/x86/include/asm/paravirt_types.h +++ b/arch/x86/include/asm/paravirt_types.h | |||
@@ -81,7 +81,6 @@ struct pv_init_ops { | |||
81 | 81 | ||
82 | /* Basic arch-specific setup */ | 82 | /* Basic arch-specific setup */ |
83 | void (*arch_setup)(void); | 83 | void (*arch_setup)(void); |
84 | char *(*memory_setup)(void); | ||
85 | void (*post_allocator_init)(void); | 84 | void (*post_allocator_init)(void); |
86 | 85 | ||
87 | /* Print a banner to identify the environment */ | 86 | /* Print a banner to identify the environment */ |
diff --git a/arch/x86/include/asm/setup.h b/arch/x86/include/asm/setup.h index 19769ac60616..9cba9d6ca885 100644 --- a/arch/x86/include/asm/setup.h +++ b/arch/x86/include/asm/setup.h | |||
@@ -22,7 +22,6 @@ struct x86_quirks { | |||
22 | int (*arch_pre_intr_init)(void); | 22 | int (*arch_pre_intr_init)(void); |
23 | int (*arch_intr_init)(void); | 23 | int (*arch_intr_init)(void); |
24 | int (*arch_trap_init)(void); | 24 | int (*arch_trap_init)(void); |
25 | char * (*arch_memory_setup)(void); | ||
26 | int (*mach_get_smp_config)(unsigned int early); | 25 | int (*mach_get_smp_config)(unsigned int early); |
27 | int (*mach_find_smp_config)(unsigned int reserve); | 26 | int (*mach_find_smp_config)(unsigned int reserve); |
28 | 27 | ||
diff --git a/arch/x86/include/asm/x86_init.h b/arch/x86/include/asm/x86_init.h index 8a971cb3dd3f..6c084f2a6c3f 100644 --- a/arch/x86/include/asm/x86_init.h +++ b/arch/x86/include/asm/x86_init.h | |||
@@ -7,12 +7,14 @@ | |||
7 | * @reserve_resources: reserve the standard resources for the | 7 | * @reserve_resources: reserve the standard resources for the |
8 | * platform | 8 | * platform |
9 | * @reserve_ebda_region: reserve the extended bios data area | 9 | * @reserve_ebda_region: reserve the extended bios data area |
10 | * @memory_setup: platform specific memory setup | ||
10 | * | 11 | * |
11 | */ | 12 | */ |
12 | struct x86_init_resources { | 13 | struct x86_init_resources { |
13 | void (*probe_roms)(void); | 14 | void (*probe_roms)(void); |
14 | void (*reserve_resources)(void); | 15 | void (*reserve_resources)(void); |
15 | void (*reserve_ebda_region)(void); | 16 | void (*reserve_ebda_region)(void); |
17 | char *(*memory_setup)(void); | ||
16 | }; | 18 | }; |
17 | 19 | ||
18 | /** | 20 | /** |