Commit 2043727b authored by Len Brown's avatar Len Brown

[ACPI] merge 2.4.22 cleanup into 2.6

Restores CONFIG_ACPI_HT_ONLY as an alternative to CONFIG_ACPI
rather than a prerequisite
parents 7140df08 d9c54c1d
...@@ -183,8 +183,7 @@ acpi_parse_lapic_nmi ( ...@@ -183,8 +183,7 @@ acpi_parse_lapic_nmi (
#endif /*CONFIG_X86_LOCAL_APIC*/ #endif /*CONFIG_X86_LOCAL_APIC*/
#ifdef CONFIG_X86_IO_APIC #if defined(CONFIG_X86_IO_APIC) && defined(CONFIG_ACPI_INTERPRETER)
static int __init static int __init
acpi_parse_ioapic ( acpi_parse_ioapic (
...@@ -368,7 +367,6 @@ acpi_boot_init (void) ...@@ -368,7 +367,6 @@ acpi_boot_init (void)
result = acpi_table_parse(ACPI_APIC, acpi_parse_madt); result = acpi_table_parse(ACPI_APIC, acpi_parse_madt);
if (!result) { if (!result) {
printk(KERN_WARNING PREFIX "MADT not present\n");
return 0; return 0;
} }
else if (result < 0) { else if (result < 0) {
...@@ -416,7 +414,7 @@ acpi_boot_init (void) ...@@ -416,7 +414,7 @@ acpi_boot_init (void)
#endif /*CONFIG_X86_LOCAL_APIC*/ #endif /*CONFIG_X86_LOCAL_APIC*/
#ifdef CONFIG_X86_IO_APIC #if defined(CONFIG_X86_IO_APIC) && defined(CONFIG_ACPI_INTERPRETER)
/* /*
* I/O APIC * I/O APIC
...@@ -472,7 +470,8 @@ acpi_boot_init (void) ...@@ -472,7 +470,8 @@ acpi_boot_init (void)
acpi_irq_model = ACPI_IRQ_MODEL_IOAPIC; acpi_irq_model = ACPI_IRQ_MODEL_IOAPIC;
acpi_ioapic = 1; acpi_ioapic = 1;
#endif /*CONFIG_X86_IO_APIC*/
#endif /* CONFIG_X86_IO_APIC && CONFIG_ACPI_INTERPRETER */
#ifdef CONFIG_X86_LOCAL_APIC #ifdef CONFIG_X86_LOCAL_APIC
if (acpi_lapic && acpi_ioapic) { if (acpi_lapic && acpi_ioapic) {
...@@ -480,6 +479,7 @@ acpi_boot_init (void) ...@@ -480,6 +479,7 @@ acpi_boot_init (void)
clustered_apic_check(); clustered_apic_check();
} }
#endif #endif
#ifdef CONFIG_HPET_TIMER #ifdef CONFIG_HPET_TIMER
acpi_table_parse(ACPI_HPET, acpi_parse_hpet); acpi_table_parse(ACPI_HPET, acpi_parse_hpet);
#endif #endif
......
...@@ -830,7 +830,7 @@ void __init mp_register_lapic ( ...@@ -830,7 +830,7 @@ void __init mp_register_lapic (
MP_processor_info(&processor); MP_processor_info(&processor);
} }
#ifdef CONFIG_X86_IO_APIC #if defined(CONFIG_X86_IO_APIC) && defined(CONFIG_ACPI_INTERPRETER)
#define MP_ISA_BUS 0 #define MP_ISA_BUS 0
#define MP_MAX_IOAPIC_PIN 127 #define MP_MAX_IOAPIC_PIN 127
...@@ -1019,8 +1019,6 @@ void __init mp_config_acpi_legacy_irqs (void) ...@@ -1019,8 +1019,6 @@ void __init mp_config_acpi_legacy_irqs (void)
} }
} }
#ifdef CONFIG_ACPI
/* Ensure the ACPI SCI interrupt level is active low, edge-triggered */ /* Ensure the ACPI SCI interrupt level is active low, edge-triggered */
extern FADT_DESCRIPTOR acpi_fadt; extern FADT_DESCRIPTOR acpi_fadt;
...@@ -1074,7 +1072,6 @@ void __init mp_config_ioapic_for_sci(int irq) ...@@ -1074,7 +1072,6 @@ void __init mp_config_ioapic_for_sci(int irq)
io_apic_set_pci_routing(ioapic, ioapic_pin, irq, 1, 1); // Active low, level triggered io_apic_set_pci_routing(ioapic, ioapic_pin, irq, 1, 1); // Active low, level triggered
} }
#endif /* CONFIG_ACPI */
#ifdef CONFIG_ACPI_PCI #ifdef CONFIG_ACPI_PCI
...@@ -1154,5 +1151,5 @@ void __init mp_parse_prt (void) ...@@ -1154,5 +1151,5 @@ void __init mp_parse_prt (void)
} }
#endif /*CONFIG_ACPI_PCI*/ #endif /*CONFIG_ACPI_PCI*/
#endif /* CONFIG_X86_IO_APIC */ #endif /*CONFIG_X86_IO_APIC && CONFIG_ACPI_INTERPRETER*/
#endif /*CONFIG_ACPI_BOOT*/ #endif /*CONFIG_ACPI_BOOT*/
...@@ -64,7 +64,7 @@ struct cpuinfo_x86 boot_cpu_data = { 0, 0, 0, 0, -1, 1, 0, 0, -1 }; ...@@ -64,7 +64,7 @@ struct cpuinfo_x86 boot_cpu_data = { 0, 0, 0, 0, -1, 1, 0, 0, -1 };
unsigned long mmu_cr4_features; unsigned long mmu_cr4_features;
EXPORT_SYMBOL_GPL(mmu_cr4_features); EXPORT_SYMBOL_GPL(mmu_cr4_features);
#ifdef CONFIG_ACPI #ifdef CONFIG_ACPI_INTERPRETER
int acpi_disabled __initdata = 0; int acpi_disabled __initdata = 0;
#else #else
int acpi_disabled __initdata = 1; int acpi_disabled __initdata = 1;
......
...@@ -3,34 +3,14 @@ ...@@ -3,34 +3,14 @@
# #
menu "ACPI (Advanced Configuration and Power Interface) Support" menu "ACPI (Advanced Configuration and Power Interface) Support"
config ACPI_HT
bool "ACPI Processor Enumeration for HT"
depends on X86
default y
---help---
ACPI enumerates both logical (a.k.a. Hyper-Threaded -- HT)
and physical processors. It is designed to obsolete several older
specifications, including the MultiProcessor Specification (MPS),
which supported only physical processors.
CONFIG_ACPI_HT includes the minimal ACPI boot-time code
necessary to enumerate logical processors and enable HT.
CONFIG_ACPI includes CONFIG_ACPI_HT, plus IO APIC enumeration,
and the hooks to run the ACPI AML interpreter for run-time events.
When CONFIG_ACPI is selected, the command-line option "acpi=ht"
is available to run just the ACPI boot-time code -- just as if
only CONFIG_ACPI_HT were selected.
Note that "acpi=off" can be used to disable all ACPI code in the kernel.
config ACPI
bool "Full ACPI Support"
depends on !X86_VISWS depends on !X86_VISWS
depends on !IA64_HP_SIM depends on !IA64_HP_SIM
depends on IA64 || (X86 || ACPI_HT) depends on IA64 || X86
config ACPI
bool "ACPI Support"
depends on IA64 || X86
default y default y
---help--- ---help---
Advanced Configuration and Power Interface (ACPI) support for Advanced Configuration and Power Interface (ACPI) support for
...@@ -60,14 +40,47 @@ config ACPI ...@@ -60,14 +40,47 @@ config ACPI
available at: available at:
<http://www.acpi.info> <http://www.acpi.info>
config ACPI_HT_ONLY
bool "Restrict ACPI to minimum boot code to enable HT"
depends on X86
depends on ACPI
depends on SMP
default n
---help---
ACPI enumerates both logical (a.k.a. Hyper-Threaded -- HT)
and physical processors. It is designed to obsolete several older
specifications, including the MultiProcessor Specification (MPS),
which supported only physical processors.
CONFIG_ACPI_HT_ONLY includes just the minimal ACPI boot-time code
necessary to enumerate logical processors and enable HT.
CONFIG_ACPI includes this, plus IO APIC enumeration,
and the hooks to run the ACPI AML interpreter for run-time events.
When CONFIG_ACPI is selected, the command-line option "acpi=ht"
is available to run just the ACPI boot-time code -- just as if
only CONFIG_ACPI_HT_ONLY were selected.
Note that "acpi=off" can be used to disable all ACPI code in the kernel.
config ACPI_BOOT config ACPI_BOOT
bool bool
depends on ACPI || ACPI_HT depends on ACPI
default y
config ACPI_INTERPRETER
bool
depends on ACPI
depends on !IA64_SGI_SN
depends on !ACPI_HT_ONLY
default y default y
config ACPI_SLEEP config ACPI_SLEEP
bool "Sleep States (EXPERIMENTAL)" bool "Sleep States (EXPERIMENTAL)"
depends on X86 && ACPI depends on X86 && ACPI
depends on ACPI_INTERPRETER
depends on EXPERIMENTAL && PM depends on EXPERIMENTAL && PM
select SOFTWARE_SUSPEND select SOFTWARE_SUSPEND
default y default y
...@@ -94,7 +107,8 @@ config ACPI_SLEEP_PROC_FS ...@@ -94,7 +107,8 @@ config ACPI_SLEEP_PROC_FS
config ACPI_AC config ACPI_AC
tristate "AC Adapter" tristate "AC Adapter"
depends on X86 && ACPI depends on X86
depends on ACPI_INTERPRETER
default m default m
help help
This driver adds support for the AC Adapter object, which indicates This driver adds support for the AC Adapter object, which indicates
...@@ -103,7 +117,8 @@ config ACPI_AC ...@@ -103,7 +117,8 @@ config ACPI_AC
config ACPI_BATTERY config ACPI_BATTERY
tristate "Battery" tristate "Battery"
depends on X86 && ACPI depends on X86
depends on ACPI_INTERPRETER
default m default m
help help
This driver adds support for battery information through This driver adds support for battery information through
...@@ -112,7 +127,7 @@ config ACPI_BATTERY ...@@ -112,7 +127,7 @@ config ACPI_BATTERY
config ACPI_BUTTON config ACPI_BUTTON
tristate "Button" tristate "Button"
depends on ACPI depends on ACPI_INTERPRETER
depends on !IA64_SGI_SN depends on !IA64_SGI_SN
default m default m
help help
...@@ -124,7 +139,7 @@ config ACPI_BUTTON ...@@ -124,7 +139,7 @@ config ACPI_BUTTON
config ACPI_FAN config ACPI_FAN
tristate "Fan" tristate "Fan"
depends on ACPI depends on ACPI_INTERPRETER
depends on !IA64_SGI_SN depends on !IA64_SGI_SN
default m default m
help help
...@@ -133,7 +148,7 @@ config ACPI_FAN ...@@ -133,7 +148,7 @@ config ACPI_FAN
config ACPI_PROCESSOR config ACPI_PROCESSOR
tristate "Processor" tristate "Processor"
depends on ACPI depends on ACPI_INTERPRETER
depends on !IA64_SGI_SN depends on !IA64_SGI_SN
default m default m
help help
...@@ -153,14 +168,15 @@ config ACPI_THERMAL ...@@ -153,14 +168,15 @@ config ACPI_THERMAL
config ACPI_NUMA config ACPI_NUMA
bool "NUMA support" bool "NUMA support"
depends on ACPI depends on ACPI_INTERPRETER
depends on NUMA depends on NUMA
depends on !X86_64 depends on !X86_64
default y if IA64_GENERIC || IA64_SGI_SN2 default y if IA64_GENERIC || IA64_SGI_SN2
config ACPI_ASUS config ACPI_ASUS
tristate "ASUS/Medion Laptop Extras" tristate "ASUS/Medion Laptop Extras"
depends on X86 && ACPI depends on X86
depends on ACPI_INTERPRETER
default m default m
---help--- ---help---
This driver provides support for extra features of ACPI-compatible This driver provides support for extra features of ACPI-compatible
...@@ -186,7 +202,8 @@ config ACPI_ASUS ...@@ -186,7 +202,8 @@ config ACPI_ASUS
config ACPI_TOSHIBA config ACPI_TOSHIBA
tristate "Toshiba Laptop Extras" tristate "Toshiba Laptop Extras"
depends on X86 && ACPI depends on X86
depends on ACPI_INTERPRETER
default m default m
---help--- ---help---
This driver adds support for access to certain system settings This driver adds support for access to certain system settings
...@@ -213,7 +230,7 @@ config ACPI_TOSHIBA ...@@ -213,7 +230,7 @@ config ACPI_TOSHIBA
config ACPI_DEBUG config ACPI_DEBUG
bool "Debug Statements" bool "Debug Statements"
depends on ACPI depends on ACPI_INTERPRETER
depends on !IA64_SGI_SN depends on !IA64_SGI_SN
default n default n
help help
...@@ -223,19 +240,14 @@ config ACPI_DEBUG ...@@ -223,19 +240,14 @@ config ACPI_DEBUG
config ACPI_BUS config ACPI_BUS
bool bool
depends on ACPI depends on ACPI_INTERPRETER
depends on !IA64_SGI_SN
default y
config ACPI_INTERPRETER
bool
depends on ACPI
depends on !IA64_SGI_SN depends on !IA64_SGI_SN
default y default y
config ACPI_EC config ACPI_EC
bool bool
depends on X86 && ACPI depends on X86
depends on ACPI_INTERPRETER
default y default y
help help
This driver is required on some systems for the proper operation of This driver is required on some systems for the proper operation of
...@@ -244,19 +256,19 @@ config ACPI_EC ...@@ -244,19 +256,19 @@ config ACPI_EC
config ACPI_POWER config ACPI_POWER
bool bool
depends on ACPI depends on ACPI_INTERPRETER
depends on !IA64_SGI_SN depends on !IA64_SGI_SN
default y default y
config ACPI_PCI config ACPI_PCI
bool bool
depends on ACPI depends on ACPI_INTERPRETER
depends on !IA64_SGI_SN depends on !IA64_SGI_SN
default PCI default PCI
config ACPI_SYSTEM config ACPI_SYSTEM
bool bool
depends on ACPI depends on ACPI_INTERPRETER
depends on !IA64_SGI_SN depends on !IA64_SGI_SN
default y default y
help help
...@@ -265,7 +277,7 @@ config ACPI_SYSTEM ...@@ -265,7 +277,7 @@ config ACPI_SYSTEM
config ACPI_EFI config ACPI_EFI
bool bool
depends on ACPI depends on ACPI_INTERPRETER
depends on IA64 depends on IA64
default y default y
......
...@@ -18,7 +18,7 @@ obj-$(CONFIG_ACPI) := acpi_ksyms.o ...@@ -18,7 +18,7 @@ obj-$(CONFIG_ACPI) := acpi_ksyms.o
# ACPI Boot-Time Table Parsing # ACPI Boot-Time Table Parsing
# #
obj-$(CONFIG_ACPI_BOOT) += tables.o obj-$(CONFIG_ACPI_BOOT) += tables.o
obj-$(CONFIG_ACPI) += blacklist.o obj-$(CONFIG_ACPI_INTERPRETER) += blacklist.o
# #
# ACPI Core Subsystem (Interpreter) # ACPI Core Subsystem (Interpreter)
......
...@@ -424,17 +424,17 @@ int ec_write(u8 addr, u8 val); ...@@ -424,17 +424,17 @@ int ec_write(u8 addr, u8 val);
#endif /*CONFIG_ACPI_EC*/ #endif /*CONFIG_ACPI_EC*/
#ifdef CONFIG_ACPI #ifdef CONFIG_ACPI_INTERPRETER
int acpi_blacklisted(void); int acpi_blacklisted(void);
#else #else /*!CONFIG_ACPI_INTERPRETER*/
static inline int acpi_blacklisted(void) static inline int acpi_blacklisted(void)
{ {
return 0; return 0;
} }
#endif /*CONFIG_ACPI*/ #endif /*!CONFIG_ACPI_INTERPRETER*/
#endif /*_LINUX_ACPI_H*/ #endif /*_LINUX_ACPI_H*/
...@@ -79,4 +79,3 @@ void md_run_setup(void); ...@@ -79,4 +79,3 @@ void md_run_setup(void);
static inline void md_run_setup(void) {} static inline void md_run_setup(void) {}
#endif #endif
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment