Re: [PATCH 3/3] x86: when acpi_noirq is set, use mptable instead of MADT

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Please check the updated patch.
[PATCH 3/3] x86: when acpi_noirq is set, use mptable instead of MADT

If no DSDT found, call acpi_disable_pci

When using pci=noacpi, or apci=noirq, acpi_noirq is set. We should skip
acpi_process_madt. So to avoid enumerate lapic two times.

Signed-off-by: Yinghai Lu <[email protected]>

diff --git a/drivers/acpi/tables.c b/drivers/acpi/tables.c
index bfb3bfc..f497d78 100644
--- a/drivers/acpi/tables.c
+++ b/drivers/acpi/tables.c
@@ -297,6 +297,7 @@ acpi_get_table_header_early(enum acpi_ta
 
 		if (!*header) {
 			printk(KERN_WARNING PREFIX "Unable to map DSDT\n");
+			acpi_disable_pci();
 			return -ENODEV;
 		}
 	}
diff --git a/arch/i386/kernel/acpi/boot.c b/arch/i386/kernel/acpi/boot.c
index d12fb97..0d350d0 100644
--- a/arch/i386/kernel/acpi/boot.c
+++ b/arch/i386/kernel/acpi/boot.c
@@ -1242,7 +1242,11 @@ int __init acpi_boot_init(void)
 	/*
 	 * Process the Multiple APIC Description Table (MADT), if present
 	 */
-	acpi_process_madt();
+	/* with acpi_noirq we don't need to process madt, So don't need 
+	 *	ennumerate lapic two times 
+	 */
+	if(!acpi_noirq && !acpi_pci_disabled)
+		acpi_process_madt();
 
 	acpi_table_parse(ACPI_HPET, acpi_parse_hpet);
 

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Stuff]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]     [Linux Resources]
  Powered by Linux