aboutsummaryrefslogtreecommitdiffstats
path: root/arch/x86/kernel/e820.c
diff options
context:
space:
mode:
authorIngo Molnar <mingo@elte.hu>2008-07-10 11:30:40 -0400
committerIngo Molnar <mingo@elte.hu>2008-07-10 12:55:31 -0400
commit3b33553badcde952adcf3b3ba5faae38d7d85071 (patch)
treee6f20de95b23a54689776e772ad25561ae109b69 /arch/x86/kernel/e820.c
parent520b9617ab4aea764ddfc5d58cae21c16b3318e1 (diff)
x86: add early quirk support
Add early quirks support. In preparation of enabling the generic architecture to boot on a VISWS. This will allow us to remove the VISWS subarch and all its complications. Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'arch/x86/kernel/e820.c')
-rw-r--r--arch/x86/kernel/e820.c11
1 files changed, 11 insertions, 0 deletions
diff --git a/arch/x86/kernel/e820.c b/arch/x86/kernel/e820.c
index 9836a079cfd9..269d367d2ace 100644
--- a/arch/x86/kernel/e820.c
+++ b/arch/x86/kernel/e820.c
@@ -1297,6 +1297,11 @@ void __init e820_reserve_resources(void)
1297 } 1297 }
1298} 1298}
1299 1299
1300/*
1301 * Non-standard memory setup can be specified via this quirk:
1302 */
1303char * (*arch_memory_setup_quirk)(void);
1304
1300char *__init default_machine_specific_memory_setup(void) 1305char *__init default_machine_specific_memory_setup(void)
1301{ 1306{
1302 char *who = "BIOS-e820"; 1307 char *who = "BIOS-e820";
@@ -1337,6 +1342,12 @@ char *__init default_machine_specific_memory_setup(void)
1337 1342
1338char *__init __attribute__((weak)) machine_specific_memory_setup(void) 1343char *__init __attribute__((weak)) machine_specific_memory_setup(void)
1339{ 1344{
1345 if (arch_memory_setup_quirk) {
1346 char *who = arch_memory_setup_quirk();
1347
1348 if (who)
1349 return who;
1350 }
1340 return default_machine_specific_memory_setup(); 1351 return default_machine_specific_memory_setup();
1341} 1352}
1342 1353