aboutsummaryrefslogtreecommitdiffstats
path: root/arch/i386
diff options
context:
space:
mode:
Diffstat (limited to 'arch/i386')
-rw-r--r--arch/i386/kernel/acpi/boot.c7
-rw-r--r--arch/i386/kernel/io_apic.c4
-rw-r--r--arch/i386/kernel/reboot.c8
3 files changed, 17 insertions, 2 deletions
diff --git a/arch/i386/kernel/acpi/boot.c b/arch/i386/kernel/acpi/boot.c
index 76b1135d401a..447fa9e33ffb 100644
--- a/arch/i386/kernel/acpi/boot.c
+++ b/arch/i386/kernel/acpi/boot.c
@@ -638,6 +638,13 @@ static int __init acpi_parse_fadt(unsigned long phys, unsigned long size)
638 return 0; 638 return 0;
639 639
640 pmtmr_ioport = fadt->xpm_tmr_blk.address; 640 pmtmr_ioport = fadt->xpm_tmr_blk.address;
641 /*
642 * "X" fields are optional extensions to the original V1.0
643 * fields, so we must selectively expand V1.0 fields if the
644 * corresponding X field is zero.
645 */
646 if (!pmtmr_ioport)
647 pmtmr_ioport = fadt->V1_pm_tmr_blk;
641 } else { 648 } else {
642 /* FADT rev. 1 */ 649 /* FADT rev. 1 */
643 pmtmr_ioport = fadt->V1_pm_tmr_blk; 650 pmtmr_ioport = fadt->V1_pm_tmr_blk;
diff --git a/arch/i386/kernel/io_apic.c b/arch/i386/kernel/io_apic.c
index cc5d7ac5b2e7..22c8675c79f4 100644
--- a/arch/i386/kernel/io_apic.c
+++ b/arch/i386/kernel/io_apic.c
@@ -2009,7 +2009,7 @@ static void ack_edge_ioapic_vector(unsigned int vector)
2009{ 2009{
2010 int irq = vector_to_irq(vector); 2010 int irq = vector_to_irq(vector);
2011 2011
2012 move_irq(vector); 2012 move_native_irq(vector);
2013 ack_edge_ioapic_irq(irq); 2013 ack_edge_ioapic_irq(irq);
2014} 2014}
2015 2015
@@ -2024,7 +2024,7 @@ static void end_level_ioapic_vector (unsigned int vector)
2024{ 2024{
2025 int irq = vector_to_irq(vector); 2025 int irq = vector_to_irq(vector);
2026 2026
2027 move_irq(vector); 2027 move_native_irq(vector);
2028 end_level_ioapic_irq(irq); 2028 end_level_ioapic_irq(irq);
2029} 2029}
2030 2030
diff --git a/arch/i386/kernel/reboot.c b/arch/i386/kernel/reboot.c
index 350ea6680f63..2afe0f8d555a 100644
--- a/arch/i386/kernel/reboot.c
+++ b/arch/i386/kernel/reboot.c
@@ -111,6 +111,14 @@ static struct dmi_system_id __initdata reboot_dmi_table[] = {
111 DMI_MATCH(DMI_PRODUCT_NAME, "PowerEdge 2400"), 111 DMI_MATCH(DMI_PRODUCT_NAME, "PowerEdge 2400"),
112 }, 112 },
113 }, 113 },
114 { /* Handle problems with rebooting on HP nc6120 */
115 .callback = set_bios_reboot,
116 .ident = "HP Compaq nc6120",
117 .matches = {
118 DMI_MATCH(DMI_SYS_VENDOR, "Hewlett-Packard"),
119 DMI_MATCH(DMI_PRODUCT_NAME, "HP Compaq nc6120"),
120 },
121 },
114 { } 122 { }
115}; 123};
116 124