diff options
-rw-r--r-- | arch/x86/kernel/setup.c | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/arch/x86/kernel/setup.c b/arch/x86/kernel/setup.c index 3109ca37a67c..33719544a224 100644 --- a/arch/x86/kernel/setup.c +++ b/arch/x86/kernel/setup.c | |||
@@ -732,10 +732,10 @@ void start_periodic_check_for_corruption(void) | |||
732 | static int __init dmi_low_memory_corruption(const struct dmi_system_id *d) | 732 | static int __init dmi_low_memory_corruption(const struct dmi_system_id *d) |
733 | { | 733 | { |
734 | printk(KERN_NOTICE | 734 | printk(KERN_NOTICE |
735 | "%s detected: BIOS corrupts 0xc000, working it around.\n", | 735 | "%s detected: BIOS may corrupt low RAM, working it around.\n", |
736 | d->ident); | 736 | d->ident); |
737 | 737 | ||
738 | reserve_early(0xc000, 0xc400, "BIOS quirk"); | 738 | reserve_early(0x0, 0x10000, "BIOS quirk"); |
739 | 739 | ||
740 | return 0; | 740 | return 0; |
741 | } | 741 | } |
@@ -749,6 +749,13 @@ static struct dmi_system_id __initdata bad_bios_dmi_table[] = { | |||
749 | DMI_MATCH(DMI_BIOS_VENDOR, "American Megatrends Inc."), | 749 | DMI_MATCH(DMI_BIOS_VENDOR, "American Megatrends Inc."), |
750 | }, | 750 | }, |
751 | }, | 751 | }, |
752 | { | ||
753 | .callback = dmi_low_memory_corruption, | ||
754 | .ident = "Phoenix BIOS", | ||
755 | .matches = { | ||
756 | DMI_MATCH(DMI_BIOS_VENDOR, "Phoenix Technologies, LTD"), | ||
757 | }, | ||
758 | }, | ||
752 | {} | 759 | {} |
753 | }; | 760 | }; |
754 | 761 | ||