diff options
author | Linus Torvalds <torvalds@woody.linux-foundation.org> | 2008-02-09 14:12:31 -0500 |
---|---|---|
committer | Linus Torvalds <torvalds@woody.linux-foundation.org> | 2008-02-09 14:12:31 -0500 |
commit | acac103e2d00c9bc7507838319c71a0f5dc50678 (patch) | |
tree | 562d193ec8dba3e3a174751951b4ea7e6d732c50 /drivers | |
parent | 5b39dba5029108800b94a5f4f96e3a05417103ac (diff) | |
parent | a52500c917ead55dd78d9f37b8ca993f4f79f72a (diff) |
Merge branch 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux-acpi-2.6
* 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux-acpi-2.6:
Merge branches 'release' and 'buildfix' into release
acer-wmi - Add documentation
sonypi - Move sonypi.txt to Documentation/laptops
sony-laptop - Move sony-laptop.txt to Documentation/laptops
thinkpad-acpi - Move thinkpad-acpi.txt to Documentation/laptops
Documentation - Create laptops sub-directory
ACPI: thermal: buildfix for CONFIG_THERMAL=n
cpuidle: build fix for non-x86
acer-wmi: Fix backlight on AMW0 (V1) laptops
tc1100-wmi: Mark as experimental
ACPI: SBS: Host controller must initialize before SBS.
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/acpi/Makefile | 2 | ||||
-rw-r--r-- | drivers/acpi/sbs.c | 2 | ||||
-rw-r--r-- | drivers/acpi/sbshc.c | 6 | ||||
-rw-r--r-- | drivers/char/Kconfig | 2 | ||||
-rw-r--r-- | drivers/cpuidle/cpuidle.c | 13 | ||||
-rw-r--r-- | drivers/misc/Kconfig | 13 | ||||
-rw-r--r-- | drivers/misc/acer-wmi.c | 6 |
7 files changed, 32 insertions, 12 deletions
diff --git a/drivers/acpi/Makefile b/drivers/acpi/Makefile index f29812a86533..40b0fcae4c78 100644 --- a/drivers/acpi/Makefile +++ b/drivers/acpi/Makefile | |||
@@ -60,5 +60,5 @@ obj-$(CONFIG_ACPI_ASUS) += asus_acpi.o | |||
60 | obj-$(CONFIG_ACPI_TOSHIBA) += toshiba_acpi.o | 60 | obj-$(CONFIG_ACPI_TOSHIBA) += toshiba_acpi.o |
61 | obj-$(CONFIG_ACPI_HOTPLUG_MEMORY) += acpi_memhotplug.o | 61 | obj-$(CONFIG_ACPI_HOTPLUG_MEMORY) += acpi_memhotplug.o |
62 | obj-$(CONFIG_ACPI_PROCFS_POWER) += cm_sbs.o | 62 | obj-$(CONFIG_ACPI_PROCFS_POWER) += cm_sbs.o |
63 | obj-$(CONFIG_ACPI_SBS) += sbs.o | ||
64 | obj-$(CONFIG_ACPI_SBS) += sbshc.o | 63 | obj-$(CONFIG_ACPI_SBS) += sbshc.o |
64 | obj-$(CONFIG_ACPI_SBS) += sbs.o | ||
diff --git a/drivers/acpi/sbs.c b/drivers/acpi/sbs.c index 1194105cc3ca..585ae3c9c8ea 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) | |||
827 | #endif | 827 | #endif |
828 | printk(KERN_INFO PREFIX "%s [%s]: Battery Slot [%s] (battery %s)\n", | 828 | printk(KERN_INFO PREFIX "%s [%s]: Battery Slot [%s] (battery %s)\n", |
829 | ACPI_SBS_DEVICE_NAME, acpi_device_bid(sbs->device), | 829 | ACPI_SBS_DEVICE_NAME, acpi_device_bid(sbs->device), |
830 | battery->name, sbs->battery->present ? "present" : "absent"); | 830 | battery->name, battery->present ? "present" : "absent"); |
831 | return result; | 831 | return result; |
832 | } | 832 | } |
833 | 833 | ||
diff --git a/drivers/acpi/sbshc.c b/drivers/acpi/sbshc.c index ae9a90438e2f..a2cf3008ce6c 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, | |||
117 | int ret = -EFAULT, i; | 117 | int ret = -EFAULT, i; |
118 | u8 temp, sz = 0; | 118 | u8 temp, sz = 0; |
119 | 119 | ||
120 | if (!hc) { | ||
121 | printk(KERN_ERR PREFIX "host controller is not configured\n"); | ||
122 | return ret; | ||
123 | } | ||
124 | |||
120 | mutex_lock(&hc->lock); | 125 | mutex_lock(&hc->lock); |
121 | if (smb_hc_read(hc, ACPI_SMB_PROTOCOL, &temp)) | 126 | if (smb_hc_read(hc, ACPI_SMB_PROTOCOL, &temp)) |
122 | goto end; | 127 | goto end; |
@@ -292,6 +297,7 @@ static int acpi_smbus_hc_remove(struct acpi_device *device, int type) | |||
292 | hc = acpi_driver_data(device); | 297 | hc = acpi_driver_data(device); |
293 | acpi_ec_remove_query_handler(hc->ec, hc->query_bit); | 298 | acpi_ec_remove_query_handler(hc->ec, hc->query_bit); |
294 | kfree(hc); | 299 | kfree(hc); |
300 | acpi_driver_data(device) = NULL; | ||
295 | return 0; | 301 | return 0; |
296 | } | 302 | } |
297 | 303 | ||
diff --git a/drivers/char/Kconfig b/drivers/char/Kconfig index f01ac9a07bf5..47c6be84fc84 100644 --- a/drivers/char/Kconfig +++ b/drivers/char/Kconfig | |||
@@ -875,7 +875,7 @@ config SONYPI | |||
875 | Device which can be found in many (all ?) Sony Vaio laptops. | 875 | Device which can be found in many (all ?) Sony Vaio laptops. |
876 | 876 | ||
877 | If you have one of those laptops, read | 877 | If you have one of those laptops, read |
878 | <file:Documentation/sonypi.txt>, and say Y or M here. | 878 | <file:Documentation/laptops/sonypi.txt>, and say Y or M here. |
879 | 879 | ||
880 | To compile this driver as a module, choose M here: the | 880 | To compile this driver as a module, choose M here: the |
881 | module will be called sonypi. | 881 | module will be called sonypi. |
diff --git a/drivers/cpuidle/cpuidle.c b/drivers/cpuidle/cpuidle.c index 2c4b2d47973e..60f71e6345e3 100644 --- a/drivers/cpuidle/cpuidle.c +++ b/drivers/cpuidle/cpuidle.c | |||
@@ -27,6 +27,17 @@ static void (*pm_idle_old)(void); | |||
27 | 27 | ||
28 | static int enabled_devices; | 28 | static int enabled_devices; |
29 | 29 | ||
30 | #if defined(CONFIG_ARCH_HAS_CPU_IDLE_WAIT) | ||
31 | static void cpuidle_kick_cpus(void) | ||
32 | { | ||
33 | cpu_idle_wait(); | ||
34 | } | ||
35 | #elif defined(CONFIG_SMP) | ||
36 | # error "Arch needs cpu_idle_wait() equivalent here" | ||
37 | #else /* !CONFIG_ARCH_HAS_CPU_IDLE_WAIT && !CONFIG_SMP */ | ||
38 | static void cpuidle_kick_cpus(void) {} | ||
39 | #endif | ||
40 | |||
30 | /** | 41 | /** |
31 | * cpuidle_idle_call - the main idle loop | 42 | * cpuidle_idle_call - the main idle loop |
32 | * | 43 | * |
@@ -83,7 +94,7 @@ void cpuidle_uninstall_idle_handler(void) | |||
83 | { | 94 | { |
84 | if (enabled_devices && (pm_idle != pm_idle_old)) { | 95 | if (enabled_devices && (pm_idle != pm_idle_old)) { |
85 | pm_idle = pm_idle_old; | 96 | pm_idle = pm_idle_old; |
86 | cpu_idle_wait(); | 97 | cpuidle_kick_cpus(); |
87 | } | 98 | } |
88 | } | 99 | } |
89 | 100 | ||
diff --git a/drivers/misc/Kconfig b/drivers/misc/Kconfig index c143a86c2ea6..1abc95ca9dfa 100644 --- a/drivers/misc/Kconfig +++ b/drivers/misc/Kconfig | |||
@@ -114,6 +114,9 @@ config ACER_WMI | |||
114 | wireless radio and bluetooth control, and on some laptops, | 114 | wireless radio and bluetooth control, and on some laptops, |
115 | exposes the mail LED and LCD backlight. | 115 | exposes the mail LED and LCD backlight. |
116 | 116 | ||
117 | For more information about this driver see | ||
118 | <file:Documentation/laptops/acer-wmi.txt> | ||
119 | |||
117 | If you have an ACPI-WMI compatible Acer/ Wistron laptop, say Y or M | 120 | If you have an ACPI-WMI compatible Acer/ Wistron laptop, say Y or M |
118 | here. | 121 | here. |
119 | 122 | ||
@@ -152,8 +155,9 @@ config FUJITSU_LAPTOP | |||
152 | If you have a Fujitsu laptop, say Y or M here. | 155 | If you have a Fujitsu laptop, say Y or M here. |
153 | 156 | ||
154 | config TC1100_WMI | 157 | config TC1100_WMI |
155 | tristate "HP Compaq TC1100 Tablet WMI Extras" | 158 | tristate "HP Compaq TC1100 Tablet WMI Extras (EXPERIMENTAL)" |
156 | depends on X86 && !X86_64 | 159 | depends on X86 && !X86_64 |
160 | depends on EXPERIMENTAL | ||
157 | depends on ACPI | 161 | depends on ACPI |
158 | select ACPI_WMI | 162 | select ACPI_WMI |
159 | ---help--- | 163 | ---help--- |
@@ -192,7 +196,7 @@ config SONY_LAPTOP | |||
192 | screen brightness control, Fn keys and allows powering on/off some | 196 | screen brightness control, Fn keys and allows powering on/off some |
193 | devices. | 197 | devices. |
194 | 198 | ||
195 | Read <file:Documentation/sony-laptop.txt> for more information. | 199 | Read <file:Documentation/laptops/sony-laptop.txt> for more information. |
196 | 200 | ||
197 | config SONYPI_COMPAT | 201 | config SONYPI_COMPAT |
198 | bool "Sonypi compatibility" | 202 | bool "Sonypi compatibility" |
@@ -211,8 +215,9 @@ config THINKPAD_ACPI | |||
211 | This is a driver for the IBM and Lenovo ThinkPad laptops. It adds | 215 | This is a driver for the IBM and Lenovo ThinkPad laptops. It adds |
212 | support for Fn-Fx key combinations, Bluetooth control, video | 216 | support for Fn-Fx key combinations, Bluetooth control, video |
213 | output switching, ThinkLight control, UltraBay eject and more. | 217 | output switching, ThinkLight control, UltraBay eject and more. |
214 | For more information about this driver see | 218 | For more information about this driver see |
215 | <file:Documentation/thinkpad-acpi.txt> and <http://ibm-acpi.sf.net/> . | 219 | <file:Documentation/laptops/thinkpad-acpi.txt> and |
220 | <http://ibm-acpi.sf.net/> . | ||
216 | 221 | ||
217 | This driver was formerly known as ibm-acpi. | 222 | This driver was formerly known as ibm-acpi. |
218 | 223 | ||
diff --git a/drivers/misc/acer-wmi.c b/drivers/misc/acer-wmi.c index a4d677504250..d7aea93081f2 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) | |||
428 | if (value > max_brightness) | 428 | if (value > max_brightness) |
429 | return AE_BAD_PARAMETER; | 429 | return AE_BAD_PARAMETER; |
430 | switch (quirks->brightness) { | 430 | switch (quirks->brightness) { |
431 | case 1: | ||
432 | return ec_write(0x83, value); | ||
433 | default: | 431 | default: |
434 | return AE_BAD_ADDRESS; | 432 | return ec_write(0x83, value); |
435 | break; | 433 | break; |
436 | } | 434 | } |
437 | default: | 435 | default: |
438 | return AE_BAD_ADDRESS; | 436 | return AE_BAD_ADDRESS; |