ACPI / x86: boot: Don't setup SCI on HW-reduced platforms
authorAndy Shevchenko <andriy.shevchenko@linux.intel.com>
Fri, 15 Dec 2017 21:25:11 +0000 (23:25 +0200)
committerRafael J. Wysocki <rafael.j.wysocki@intel.com>
Thu, 28 Dec 2017 11:36:46 +0000 (12:36 +0100)
As per note in 5.2.9 Fixed ACPI Description Table (FADT) chapter of ACPI
specification, on HW-reduced platforma OSPM should ignore fields related
to the ACPI HW register interface, one of which is SCI_INT.

Follow the spec and ignore any configuration done for interrupt line
defined by SCI_INT if FADT specifies a HW-reduced platform.

HW-reduced platforms will still be able to use SCI in case it provides
an override record in MADT table.

Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
arch/x86/kernel/acpi/boot.c

index 5a12cadbf019a2891cb5eb9bbde992fe671a1ef8..4bf004bab4b25af9c756bfc4f9d86397aaee5e28 100644 (file)
@@ -1209,8 +1209,9 @@ static int __init acpi_parse_madt_ioapic_entries(void)
        /*
         * If BIOS did not supply an INT_SRC_OVR for the SCI
         * pretend we got one so we can set the SCI flags.
+        * But ignore setting up SCI on hardware reduced platforms.
         */
-       if (acpi_sci_override_gsi == INVALID_ACPI_IRQ)
+       if (acpi_sci_override_gsi == INVALID_ACPI_IRQ && !acpi_gbl_reduced_hardware)
                acpi_sci_ioapic_setup(acpi_gbl_FADT.sci_interrupt, 0, 0,
                                      acpi_gbl_FADT.sci_interrupt);