patches on ACPI release branch
Subsystems (2)
The messages following this one contain the patches in the ACPI git tree on the release branch for 2.6.20-rc4. Please speak up if you see any problems with them.
thanks
-Len
PATCH 1/7 ACPI: Altix: ACPI _PRT support
From: John Keller <[email protected]>
Provide ACPI _PRT support for SN Altix systems.
The SN Altix platform does not conform to the IOSAPIC IRQ routing model, so a new acpi_irq_model (ACPI_IRQ_MODEL_PLATFORM) has been defined. The SN platform specific code sets acpi_irq_model to this new value, and keys off of it in acpi_register_gsi() to avoid the iosapic code path.
--- arch/ia64/kernel/acpi.c | 3 +++ arch/ia64/sn/kernel/io_acpi_init.c | 3 +++ drivers/acpi/bus.c | 3 +++ include/linux/acpi.h | 1 + 4 files changed, 10 insertions(+), 0 deletions(-)
arch/ia64/kernel/acpi.c +3 -0
@@ -590,6 +590,9 @@ void __init acpi_numa_arch_fixup(void)*/ int acpi_register_gsi (u32 gsi,int triggering,int polarity) { +if (acpi_irq_model ==ACPI_IRQ_MODEL_PLATFORM ) +return gsi; +if (has_8259 && gsi <16 )return isa_irq_to_vector (gsi);
arch/ia64/sn/kernel/io_acpi_init.c +3 -0
@@ -223,6 +223,9 @@ sn_io_acpi_init(void)u64 result;s64 status; +/* SN Altix does not follow the IOSAPIC IRQ routing model */ + acpi_irq_model =ACPI_IRQ_MODEL_PLATFORM ; +acpi_bus_register_driver (&acpi_sn_hubdev_driver); status =sal_ioif_init (&result);if (status || result)
drivers/acpi/bus.c +3 -0
@@ -561,6 +561,9 @@ static int __init acpi_bus_init_irq(void)case ACPI_IRQ_MODEL_IOSAPIC : message ="IOSAPIC" ;break ; +case ACPI_IRQ_MODEL_PLATFORM : + message ="platform specific model" ; +break ;default : printk(KERN_WARNING PREFIX "Unknown interrupt routing model\n");return -ENODEV ;
include/linux/acpi.h +1 -0
@@ -47,6 +47,7 @@ enum acpi_irq_model_id {ACPI_IRQ_MODEL_PIC =0 ,ACPI_IRQ_MODEL_IOAPIC ,ACPI_IRQ_MODEL_IOSAPIC , +ACPI_IRQ_MODEL_PLATFORM , ACPI_IRQ_MODEL_COUNT };
Signature · 1 line
1.4.4.4.ge05d
PATCH 2/7 ACPI: ec: enable printk on cmdline use
if somebody uses "ec_intr=", lets be sure to capture that in the dmesg even in the non-debug case.
--- drivers/acpi/ec.c | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-)
drivers/acpi/ec.c +2 -2
@@ -1016,8 +1016,8 @@ static int __init acpi_ec_set_intr_mode(char *str) acpi_ec_mode =EC_POLL ; } acpi_ec_driver.ops.add = acpi_ec_add; -ACPI_DEBUG_PRINT ((ACPI_DB_INFO ,"EC %s mode.\n" , - intr ?"interrupt" :"polling" )); + printk(KERN_NOTICE PREFIX "%s mode.\n", + intr ? "interrupt" : "polling");return 1 ; }
Signature · 1 line
1.4.4.4.ge05d
PATCH 3/7 ACPI: rename cstate_entry_s to cstate_entry
From: Venkatesh Pallipadi <[email protected]>
style change only.
--- arch/i386/kernel/acpi/cstate.c | 10 +++++----- 1 files changed, 5 insertions(+), 5 deletions(-)
arch/i386/kernel/acpi/cstate.c +5 -5
@@ -47,13 +47,13 @@ EXPORT_SYMBOL(acpi_processor_power_init_bm_check);/* The code below handles cstate entry with monitor-mwait pair on Intel*/ -struct cstate_entry_s { +struct cstate_entry {struct {unsigned int eax;unsigned int ecx; } states[ACPI_PROCESSOR_MAX_POWER ]; }; -static struct cstate_entry_s *cpu_cstate_entry;/* per CPU ptr */ +static struct cstate_entry *cpu_cstate_entry;/* per CPU ptr */ static short mwait_supported[ACPI_PROCESSOR_MAX_POWER ];
@@ -71,7 +71,7 @@ static short mwait_supported[ACPI_PROCESSOR_MAX_POWER];int acpi_processor_ffh_cstate_probe (unsigned int cpu,struct acpi_processor_cx *cx,struct acpi_power_register *reg) { -struct cstate_entry_s *percpu_entry; +struct cstate_entry *percpu_entry;struct cpuinfo_x86 *c = cpu_data + cpu;cpumask_t saved_mask;
@@ -136,7 +136,7 @@ EXPORT_SYMBOL_GPL(acpi_processor_ffh_cstate_probe);void acpi_processor_ffh_cstate_enter (struct acpi_processor_cx *cx) {unsigned int cpu =smp_processor_id (); -struct cstate_entry_s *percpu_entry; +struct cstate_entry *percpu_entry; percpu_entry =per_cpu_ptr (cpu_cstate_entry, cpu); mwait_idle_with_hints(percpu_entry->states[cx->index].eax,
@@ -150,7 +150,7 @@ static int __init ffh_cstate_init(void)if (c->x86_vendor !=X86_VENDOR_INTEL )return -1 ; - cpu_cstate_entry = alloc_percpu(struct cstate_entry_s); + cpu_cstate_entry = alloc_percpu(struct cstate_entry);return 0 ; }
Signature · 1 line
1.4.4.4.ge05d
PATCH 4/7 ACPI: delete two spurious ACPI messages
From: Venkatesh Pallipadi <[email protected]>
ACPI: Getting cpuindex for acpiid 0x4
acpi_processor-0742 [00] processor_preregister_: Error while parsing _PSD domain information. Assuming no coordination
http://bugzilla.kernel.org/show_bug.cgi?id=7286
--- drivers/acpi/processor_core.c | 3 --- drivers/acpi/processor_perflib.c | 4 ---- 2 files changed, 0 insertions(+), 7 deletions(-)
drivers/acpi/processor_core.c +0 -3
@@ -476,9 +476,6 @@ static int acpi_processor_get_info(struct acpi_processor *pr)if (cpu_index ==-1 ) {if (ACPI_FAILURE (acpi_processor_hotadd_init (pr->handle, &pr->id))) { - printk(KERN_ERR PREFIX -"Getting cpuindex for acpiid 0x%x\n" , - pr->acpi_id);return -ENODEV ; } }
drivers/acpi/processor_perflib.c +0 -4
@@ -736,10 +736,6 @@ int acpi_processor_preregister_performance( } err_ret: -if (retval) { -ACPI_DEBUG_PRINT ((ACPI_DB_ERROR ,"Error while parsing _PSD domain information. Assuming no coordination\n" )); - } -for_each_possible_cpu (i) { pr = processors[i];if (!pr || !pr->performance)
Signature · 1 line
1.4.4.4.ge05d
PATCH 5/7 ACPI: schedule obsolete features for deletion
--- Documentation/feature-removal-schedule.txt | 45 ++++++++++++++++++++++++++++ 1 files changed, 45 insertions(+), 0 deletions(-)
Documentation/feature-removal-schedule.txt +45 -0
@@ -256,3 +256,48 @@ Why: Speedstep-centrino driver with ACPI hooks and acpi-cpufreq driver are Who: Venkatesh Pallipadi <[email protected]> --------------------------- + +What: ACPI hotkey driver (CONFIG_ACPI_HOTKEY) +When: 2.6.21 +Why: hotkey.c was an attempt to consolidate multiple drivers that use + ACPI to implement hotkeys. However, hotkeys are not documented + in the ACPI specification, so the drivers used undocumented + vendor-specific hooks and turned out to be more different than + the same. + + Further, the keys and the features supplied by each platform + are different, so there will always be a need for + platform-specific drivers. + + So the new plan is to delete hotkey.c and instead, work on the + platform specific drivers to try to make them look the same + to the user when they supply the same features. + + hotkey.c has always depended on CONFIG_EXPERIMENTAL + +Who: Len Brown <[email protected]> + +--------------------------- + +What: /sys/firmware/acpi/namespace +When: 2.6.21 +Why: The ACPI namespace is effectively the symbol list for + the BIOS. The device names are completely arbitrary + and have no place being exposed to user-space. + + For those interested in the BIOS ACPI namespace, + the BIOS can be extracted and disassembled with acpidump + and iasl as documented in the pmtools package here: + http://ftp.kernel.org/pub/linux/kernel/people/lenb/acpi/utils + +Who: Len Brown <[email protected]> + +--------------------------- + +What: /proc/acpi/button +When: August 2007 +Why: /proc/acpi/button has been replaced by events to the input layer + since 2.6.20. +Who: Len Brown <[email protected]> + +---------------------------
Signature · 1 line
1.4.4.4.ge05d
PATCH 6/7 ACPI: update MAINTAINERS
s/Maintained/Supported/
and document some sub-maintainers for ACPI drivers.
--- MAINTAINERS | 39 ++++++++++++++++++++++++++++++++++----- 1 files changed, 34 insertions(+), 5 deletions(-)
MAINTAINERS +34 -5
@@ -207,16 +207,45 @@ S: Supported ACPI P: Len Brown M: [email protected] +M: [email protected] L: [email protected] W: http://acpi.sourceforge.net/ T: git kernel.org:/pub/scm/linux/kernel/git/lenb/linux-acpi-2.6.git -S: Maintained +S: Supported + +ACPI BATTERY DRIVERS +P: Vladimir P. Lebedev +M: [email protected] +L: [email protected] +W: http://acpi.sourceforge.net/ +S: Supported + +ACPI EC DRIVER +P: Alexey Starikovskiy +M: [email protected] +L: [email protected] +W: http://acpi.sourceforge.net/ +S: Supported + +ACPI FAN DRIVER +P: Konstantin A. Karasyov +M: [email protected] +L: [email protected] +W: http://acpi.sourceforge.net/ +S: Supported ACPI PCI HOTPLUG DRIVER P: Kristen Carlson Accardi M: [email protected] L: [email protected] -S: Maintained +S: Supported + +ACPI THERMAL DRIVER +P: Konstantin A. Karasyov +M: [email protected] +L: [email protected] +W: http://acpi.sourceforge.net/ +S: Supported AD1816 SOUND DRIVER P: Thorsten Knabe
@@ -1071,7 +1100,7 @@ DOCKING STATION DRIVER P: Kristen Carlson Accardi M: [email protected] L: [email protected] -S: Maintained +S: Supported DOUBLETALK DRIVER P: James R. Van Zandt
@@ -2521,7 +2550,7 @@ PCIE HOTPLUG DRIVER P: Kristen Carlson Accardi M: [email protected] L: [email protected] -S: Maintained +S: Supported PCMCIA SUBSYSTEM P: Linux PCMCIA Team
@@ -3015,7 +3044,7 @@ SHPC HOTPLUG DRIVER P: Kristen Carlson Accardi M: [email protected] L: [email protected] -S: Maintained +S: Supported SECURE DIGITAL HOST CONTROLLER INTERFACE DRIVER P: Pierre Ossman
Signature · 1 line
1.4.4.4.ge05d
PATCH 7/7 Revert "ACPI: ibm-acpi: make non-generic bay support optional"
From: Henrique de Moraes Holschuh <[email protected]>
This reverts commit 2df910b4c3edcce9a0c12394db6f5f4a6e69c712.
ACPI_BAY has not been merged into mainline yet, so the changes to ibm-acpi related Kconfig entries that depend on ACPI_BAY were permanently disabling ibm-acpi bay support. This is a serious regression for ThinkPad users.
--- drivers/acpi/Kconfig | 11 ----------- drivers/acpi/ibm_acpi.c | 13 +------------ 2 files changed, 1 insertions(+), 23 deletions(-)
drivers/acpi/Kconfig +0 -11
@@ -225,17 +225,6 @@ config ACPI_IBM_DOCK If you are not sure, say N here. -config ACPI_IBM_BAY - bool "Legacy Removable Bay Support" - depends on ACPI_IBM - depends on ACPI_BAY=n - default n - ---help--- - Allows the ibm_acpi driver to handle removable bays. - This support is obsoleted by CONFIG_ACPI_BAY. - - If you are not sure, say N here. - config ACPI_TOSHIBA tristate "Toshiba Laptop Extras" depends on X86
drivers/acpi/ibm_acpi.c +1 -12
@@ -157,7 +157,6 @@ IBM_HANDLE(dock, root, "\\_SB.GDCK", /* X30, X31, X40 */ "\\_SB.PCI.ISA.SLCE", /* 570 */ ); /* A21e,G4x,R30,R31,R32,R40,R40e,R50e */#endif -#ifdef CONFIG_ACPI_IBM_BAY IBM_HANDLE(bay, root, "\\_SB.PCI.IDE.SECN.MAST", /* 570 */ "\\_SB.PCI0.IDE0.IDES.IDSM", /* 600e/x, 770e, 770x */ "\\_SB.PCI0.SATA.SCND.MSTR", /* T60, X60, Z60 */
@@ -175,7 +174,6 @@ IBM_HANDLE(bay2, root, "\\_SB.PCI0.IDE0.PRIM.SLAV", /* A3x, R32 */IBM_HANDLE (bay2_ej, bay2,"_EJ3" ,/* 600e/x, 770e, A3x */ "_EJ0", /* 770x */ );/* all others */ -#endif /* don't list other alternatives as we install a notify handler on the 570 */ IBM_HANDLE (pci, root,"\\_SB.PCI" );/* 570 */
@@ -1042,7 +1040,6 @@ static int light_write(char *buf)return 0 ; } -#if defined(CONFIG_ACPI_IBM_DOCK ) || defined(CONFIG_ACPI_IBM_BAY )static int _sta (acpi_handle handle) {int status;
@@ -1052,7 +1049,7 @@ static int _sta(acpi_handle handle)return status; } -#endif +#ifdef CONFIG_ACPI_IBM_DOCK #define dock_docked () (_sta(dock_handle) & 1)
@@ -1118,7 +1115,6 @@ static void dock_notify(struct ibm_struct *ibm, u32 event) }#endif -#ifdef CONFIG_ACPI_IBM_BAY static int bay_status_supported;static int bay_status2_supported;static int bay_eject_supported;
@@ -1194,7 +1190,6 @@ static void bay_notify(struct ibm_struct *ibm, u32 event) {acpi_bus_generate_event (ibm->device, event,0 ); } -#endif static int cmos_read (char *p) {
@@ -2354,7 +2349,6 @@ static struct ibm_struct ibms[] = { .type = ACPI_SYSTEM_NOTIFY, },#endif -#ifdef CONFIG_ACPI_IBM_BAY { .name = "bay", .init = bay_init,
@@ -2364,7 +2358,6 @@ static struct ibm_struct ibms[] = { .handle = &bay_handle, .type = ACPI_SYSTEM_NOTIFY, }, -#endif { .name = "cmos", .read = cmos_read,
@@ -2650,9 +2643,7 @@ IBM_PARAM(light);#ifdef CONFIG_ACPI_IBM_DOCK IBM_PARAM (dock);#endif -#ifdef CONFIG_ACPI_IBM_BAY IBM_PARAM (bay); -#endif IBM_PARAM (cmos);IBM_PARAM (led);IBM_PARAM (beep);
@@ -2735,14 +2726,12 @@ static int __init acpi_ibm_init(void)IBM_HANDLE_INIT (dock);#endif IBM_HANDLE_INIT (pci); -#ifdef CONFIG_ACPI_IBM_BAY IBM_HANDLE_INIT (bay);if (bay_handle)IBM_HANDLE_INIT (bay_ej);IBM_HANDLE_INIT (bay2);if (bay2_handle)IBM_HANDLE_INIT (bay2_ej); -#endif IBM_HANDLE_INIT (beep);IBM_HANDLE_INIT (ecrd);IBM_HANDLE_INIT (ecwr);
Signature · 1 line
1.4.4.4.ge05d