From bbafbecb24190959d77a8fee7bd23798b81e25c2 Mon Sep 17 00:00:00 2001 From: Alexey Starikovskiy Date: Sat, 9 Feb 2008 03:22:13 -0500 Subject: ACPI: SBS: Host controller must initialize before SBS. In static case sbshc must be compiled ahead of sbs, so that hc is configured first. http://bugzilla.kernel.org/show_bug.cgi?id=9910 Signed-off-by: Alexey Starikovskiy Signed-off-by: Len Brown --- drivers/acpi/Makefile | 2 +- drivers/acpi/sbs.c | 2 +- drivers/acpi/sbshc.c | 6 ++++++ 3 files changed, 8 insertions(+), 2 deletions(-) (limited to 'drivers') diff --git a/drivers/acpi/Makefile b/drivers/acpi/Makefile index f29812a8653..40b0fcae4c7 100644 --- a/drivers/acpi/Makefile +++ b/drivers/acpi/Makefile @@ -60,5 +60,5 @@ obj-$(CONFIG_ACPI_ASUS) += asus_acpi.o obj-$(CONFIG_ACPI_TOSHIBA) += toshiba_acpi.o obj-$(CONFIG_ACPI_HOTPLUG_MEMORY) += acpi_memhotplug.o obj-$(CONFIG_ACPI_PROCFS_POWER) += cm_sbs.o -obj-$(CONFIG_ACPI_SBS) += sbs.o obj-$(CONFIG_ACPI_SBS) += sbshc.o +obj-$(CONFIG_ACPI_SBS) += sbs.o diff --git a/drivers/acpi/sbs.c b/drivers/acpi/sbs.c index 1194105cc3c..585ae3c9c8e 100644 --- a/drivers/acpi/sbs.c +++ b/drivers/acpi/sbs.c @@ -827,7 +827,7 @@ static int acpi_battery_add(struct acpi_sbs *sbs, int id) #endif printk(KERN_INFO PREFIX "%s [%s]: Battery Slot [%s] (battery %s)\n", ACPI_SBS_DEVICE_NAME, acpi_device_bid(sbs->device), - battery->name, sbs->battery->present ? "present" : "absent"); + battery->name, battery->present ? "present" : "absent"); return result; } diff --git a/drivers/acpi/sbshc.c b/drivers/acpi/sbshc.c index ae9a90438e2..a2cf3008ce6 100644 --- a/drivers/acpi/sbshc.c +++ b/drivers/acpi/sbshc.c @@ -117,6 +117,11 @@ static int acpi_smbus_transaction(struct acpi_smb_hc *hc, u8 protocol, int ret = -EFAULT, i; u8 temp, sz = 0; + if (!hc) { + printk(KERN_ERR PREFIX "host controller is not configured\n"); + return ret; + } + mutex_lock(&hc->lock); if (smb_hc_read(hc, ACPI_SMB_PROTOCOL, &temp)) goto end; @@ -292,6 +297,7 @@ static int acpi_smbus_hc_remove(struct acpi_device *device, int type) hc = acpi_driver_data(device); acpi_ec_remove_query_handler(hc->ec, hc->query_bit); kfree(hc); + acpi_driver_data(device) = NULL; return 0; } -- cgit v1.2.3 From b01368291926b30abc702dee35c688408b54d422 Mon Sep 17 00:00:00 2001 From: Carlos Corbacho Date: Fri, 8 Feb 2008 23:51:43 +0000 Subject: tc1100-wmi: Mark as experimental tc1100-wmi has not undergone as much testing as acer-wmi, so it certainly should be marked as experimental as well until we get more user feedback. Signed-off-by: Carlos Corbacho Signed-off-by: Len Brown --- drivers/misc/Kconfig | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'drivers') diff --git a/drivers/misc/Kconfig b/drivers/misc/Kconfig index c143a86c2ea..061b00d9b62 100644 --- a/drivers/misc/Kconfig +++ b/drivers/misc/Kconfig @@ -152,8 +152,9 @@ config FUJITSU_LAPTOP If you have a Fujitsu laptop, say Y or M here. config TC1100_WMI - tristate "HP Compaq TC1100 Tablet WMI Extras" + tristate "HP Compaq TC1100 Tablet WMI Extras (EXPERIMENTAL)" depends on X86 && !X86_64 + depends on EXPERIMENTAL depends on ACPI select ACPI_WMI ---help--- -- cgit v1.2.3 From 4609d029aa8a2c7e0ad71e329c6e3493e1e95040 Mon Sep 17 00:00:00 2001 From: Carlos Corbacho Date: Fri, 8 Feb 2008 23:51:49 +0000 Subject: acer-wmi: Fix backlight on AMW0 (V1) laptops There is some leftover cruft from the old quirk infrastructure that causes us to be unable to set the backlight on older laptops. Signed-off-by: Carlos Corbacho Signed-off-by: Len Brown --- drivers/misc/acer-wmi.c | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) (limited to 'drivers') diff --git a/drivers/misc/acer-wmi.c b/drivers/misc/acer-wmi.c index a4d67750425..d7aea93081f 100644 --- a/drivers/misc/acer-wmi.c +++ b/drivers/misc/acer-wmi.c @@ -428,11 +428,9 @@ static acpi_status AMW0_set_u32(u32 value, u32 cap, struct wmi_interface *iface) if (value > max_brightness) return AE_BAD_PARAMETER; switch (quirks->brightness) { - case 1: - return ec_write(0x83, value); default: - return AE_BAD_ADDRESS; - break; + return ec_write(0x83, value); + break; } default: return AE_BAD_ADDRESS; -- cgit v1.2.3 From a6869cc4cfd633d909918f1489a6a8ac668cd6aa Mon Sep 17 00:00:00 2001 From: Venki Pallipadi Date: Fri, 8 Feb 2008 17:05:44 -0800 Subject: cpuidle: build fix for non-x86 The last posted version of this patch gave compile error on IA64. So, here goes yet another rewrite of the patch. Convert cpu_idle_wait() to cpuidle_kick_cpus() which is SMP-only, and gives error on non supported CPU. Changes from last patch sent by Kevin: Moved the definition of kick_cpus back to cpuidle.c from cpuidle.h: * Having it in .h gives #error on archs which includes the header file without actually having CPU_IDLE configured. To make it work in .h, we need one more #ifdef around that code which makes it messy. * Also, the function is only called from one file. So, it can be in declared statically in .c rather than making it available to everyone who includes the .h file. Signed-off-by: Venkatesh Pallipadi Signed-off-by: Kevin Hilman Signed-off-by: Len Brown --- drivers/cpuidle/cpuidle.c | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) (limited to 'drivers') diff --git a/drivers/cpuidle/cpuidle.c b/drivers/cpuidle/cpuidle.c index 2c4b2d47973..60f71e6345e 100644 --- a/drivers/cpuidle/cpuidle.c +++ b/drivers/cpuidle/cpuidle.c @@ -27,6 +27,17 @@ static void (*pm_idle_old)(void); static int enabled_devices; +#if defined(CONFIG_ARCH_HAS_CPU_IDLE_WAIT) +static void cpuidle_kick_cpus(void) +{ + cpu_idle_wait(); +} +#elif defined(CONFIG_SMP) +# error "Arch needs cpu_idle_wait() equivalent here" +#else /* !CONFIG_ARCH_HAS_CPU_IDLE_WAIT && !CONFIG_SMP */ +static void cpuidle_kick_cpus(void) {} +#endif + /** * cpuidle_idle_call - the main idle loop * @@ -83,7 +94,7 @@ void cpuidle_uninstall_idle_handler(void) { if (enabled_devices && (pm_idle != pm_idle_old)) { pm_idle = pm_idle_old; - cpu_idle_wait(); + cpuidle_kick_cpus(); } } -- cgit v1.2.3 From f191dc6b55cf92eb8e1f48b41533ecf4d6161569 Mon Sep 17 00:00:00 2001 From: Carlos Corbacho Date: Sat, 9 Feb 2008 01:32:09 +0000 Subject: thinkpad-acpi - Move thinkpad-acpi.txt to Documentation/laptops Also update references to thinkpad-acpi.txt in Kconfig. Signed-off-by: Carlos Corbacho Signed-off-by: Randy Dunlap CC: Henrique de Moraes Holschuh Signed-off-by: Len Brown --- drivers/misc/Kconfig | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'drivers') diff --git a/drivers/misc/Kconfig b/drivers/misc/Kconfig index c143a86c2ea..85ee4362f2d 100644 --- a/drivers/misc/Kconfig +++ b/drivers/misc/Kconfig @@ -211,8 +211,9 @@ config THINKPAD_ACPI This is a driver for the IBM and Lenovo ThinkPad laptops. It adds support for Fn-Fx key combinations, Bluetooth control, video output switching, ThinkLight control, UltraBay eject and more. - For more information about this driver see - and . + For more information about this driver see + and + . This driver was formerly known as ibm-acpi. -- cgit v1.2.3 From f04b7c402ba587a299e62907a457013914dec477 Mon Sep 17 00:00:00 2001 From: Carlos Corbacho Date: Sat, 9 Feb 2008 01:32:14 +0000 Subject: sony-laptop - Move sony-laptop.txt to Documentation/laptops Also update references to sony-laptop.txt in Kconfig. Signed-off-by: Carlos Corbacho Signed-off-by: Randy Dunlap CC: Mattia Dongili Signed-off-by: Len Brown --- drivers/misc/Kconfig | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'drivers') diff --git a/drivers/misc/Kconfig b/drivers/misc/Kconfig index 85ee4362f2d..830f51c0ff7 100644 --- a/drivers/misc/Kconfig +++ b/drivers/misc/Kconfig @@ -192,7 +192,7 @@ config SONY_LAPTOP screen brightness control, Fn keys and allows powering on/off some devices. - Read for more information. + Read for more information. config SONYPI_COMPAT bool "Sonypi compatibility" -- cgit v1.2.3 From 018a651a9c4e3fba623b735593fb39869a69c2f7 Mon Sep 17 00:00:00 2001 From: Carlos Corbacho Date: Sat, 9 Feb 2008 01:32:19 +0000 Subject: sonypi - Move sonypi.txt to Documentation/laptops Also update references to sonypi.txt in Kconfig. Signed-off-by: Carlos Corbacho Signed-off-by: Randy Dunlap CC: Mattia Dongili Signed-off-by: Len Brown --- drivers/char/Kconfig | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'drivers') diff --git a/drivers/char/Kconfig b/drivers/char/Kconfig index f01ac9a07bf..47c6be84fc8 100644 --- a/drivers/char/Kconfig +++ b/drivers/char/Kconfig @@ -875,7 +875,7 @@ config SONYPI Device which can be found in many (all ?) Sony Vaio laptops. If you have one of those laptops, read - , and say Y or M here. + , and say Y or M here. To compile this driver as a module, choose M here: the module will be called sonypi. -- cgit v1.2.3 From 16111c797990f4fab571f6e982390cb842d16bf0 Mon Sep 17 00:00:00 2001 From: Carlos Corbacho Date: Sat, 9 Feb 2008 01:32:25 +0000 Subject: acer-wmi - Add documentation Add some initial documentation detailing what acer-wmi is, and how to use it. Update the Kconfig entry with a reference to the documentation. Signed-off-by: Carlos Corbacho Signed-off-by: Randy Dunlap Signed-off-by: Len Brown --- drivers/misc/Kconfig | 3 +++ 1 file changed, 3 insertions(+) (limited to 'drivers') diff --git a/drivers/misc/Kconfig b/drivers/misc/Kconfig index 830f51c0ff7..92a85eecab0 100644 --- a/drivers/misc/Kconfig +++ b/drivers/misc/Kconfig @@ -114,6 +114,9 @@ config ACER_WMI wireless radio and bluetooth control, and on some laptops, exposes the mail LED and LCD backlight. + For more information about this driver see + + If you have an ACPI-WMI compatible Acer/ Wistron laptop, say Y or M here. -- cgit v1.2.3