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.
This commit is contained in:
commit
acac103e2d
|
@ -227,6 +227,8 @@ kref.txt
|
||||||
- docs on adding reference counters (krefs) to kernel objects.
|
- docs on adding reference counters (krefs) to kernel objects.
|
||||||
laptop-mode.txt
|
laptop-mode.txt
|
||||||
- how to conserve battery power using laptop-mode.
|
- how to conserve battery power using laptop-mode.
|
||||||
|
laptops/
|
||||||
|
- directory with laptop related info and laptop driver documentation.
|
||||||
ldm.txt
|
ldm.txt
|
||||||
- a brief description of LDM (Windows Dynamic Disks).
|
- a brief description of LDM (Windows Dynamic Disks).
|
||||||
leds-class.txt
|
leds-class.txt
|
||||||
|
@ -351,10 +353,6 @@ sh/
|
||||||
- directory with info on porting Linux to a new architecture.
|
- directory with info on porting Linux to a new architecture.
|
||||||
smart-config.txt
|
smart-config.txt
|
||||||
- description of the Smart Config makefile feature.
|
- description of the Smart Config makefile feature.
|
||||||
sony-laptop.txt
|
|
||||||
- Sony Notebook Control Driver (SNC) Readme.
|
|
||||||
sonypi.txt
|
|
||||||
- info on Linux Sony Programmable I/O Device support.
|
|
||||||
sound/
|
sound/
|
||||||
- directory with info on sound card support.
|
- directory with info on sound card support.
|
||||||
sparc/
|
sparc/
|
||||||
|
@ -385,8 +383,6 @@ sysrq.txt
|
||||||
- info on the magic SysRq key.
|
- info on the magic SysRq key.
|
||||||
telephony/
|
telephony/
|
||||||
- directory with info on telephony (e.g. voice over IP) support.
|
- directory with info on telephony (e.g. voice over IP) support.
|
||||||
thinkpad-acpi.txt
|
|
||||||
- information on the (IBM and Lenovo) ThinkPad ACPI Extras driver.
|
|
||||||
time_interpolators.txt
|
time_interpolators.txt
|
||||||
- info on time interpolators.
|
- info on time interpolators.
|
||||||
tipar.txt
|
tipar.txt
|
||||||
|
|
|
@ -0,0 +1,10 @@
|
||||||
|
00-INDEX
|
||||||
|
- This file
|
||||||
|
acer-wmi.txt
|
||||||
|
- information on the Acer Laptop WMI Extras driver.
|
||||||
|
sony-laptop.txt
|
||||||
|
- Sony Notebook Control Driver (SNC) Readme.
|
||||||
|
sonypi.txt
|
||||||
|
- info on Linux Sony Programmable I/O Device support.
|
||||||
|
thinkpad-acpi.txt
|
||||||
|
- information on the (IBM and Lenovo) ThinkPad ACPI Extras driver.
|
|
@ -0,0 +1,202 @@
|
||||||
|
Acer Laptop WMI Extras Driver
|
||||||
|
http://code.google.com/p/aceracpi
|
||||||
|
Version 0.1
|
||||||
|
9th February 2008
|
||||||
|
|
||||||
|
Copyright 2007-2008 Carlos Corbacho <carlos@strangeworlds.co.uk>
|
||||||
|
|
||||||
|
acer-wmi is a driver to allow you to control various parts of your Acer laptop
|
||||||
|
hardware under Linux which are exposed via ACPI-WMI.
|
||||||
|
|
||||||
|
This driver completely replaces the old out-of-tree acer_acpi, which I am
|
||||||
|
currently maintaining for bug fixes only on pre-2.6.25 kernels. All development
|
||||||
|
work is now focused solely on acer-wmi.
|
||||||
|
|
||||||
|
Disclaimer
|
||||||
|
**********
|
||||||
|
|
||||||
|
Acer and Wistron have provided nothing towards the development acer_acpi or
|
||||||
|
acer-wmi. All information we have has been through the efforts of the developers
|
||||||
|
and the users to discover as much as possible about the hardware.
|
||||||
|
|
||||||
|
As such, I do warn that this could break your hardware - this is extremely
|
||||||
|
unlikely of course, but please bear this in mind.
|
||||||
|
|
||||||
|
Background
|
||||||
|
**********
|
||||||
|
|
||||||
|
acer-wmi is derived from acer_acpi, originally developed by Mark
|
||||||
|
Smith in 2005, then taken over by Carlos Corbacho in 2007, in order to activate
|
||||||
|
the wireless LAN card under a 64-bit version of Linux, as acerhk[1] (the
|
||||||
|
previous solution to the problem) relied on making 32 bit BIOS calls which are
|
||||||
|
not possible in kernel space from a 64 bit OS.
|
||||||
|
|
||||||
|
[1] acerhk: http://www.cakey.de/acerhk/
|
||||||
|
|
||||||
|
Supported Hardware
|
||||||
|
******************
|
||||||
|
|
||||||
|
Please see the website for the current list of known working hardare:
|
||||||
|
|
||||||
|
http://code.google.com/p/aceracpi/wiki/SupportedHardware
|
||||||
|
|
||||||
|
If your laptop is not listed, or listed as unknown, and works with acer-wmi,
|
||||||
|
please contact me with a copy of the DSDT.
|
||||||
|
|
||||||
|
If your Acer laptop doesn't work with acer-wmi, I would also like to see the
|
||||||
|
DSDT.
|
||||||
|
|
||||||
|
To send me the DSDT, as root/sudo:
|
||||||
|
|
||||||
|
cat /sys/firmware/acpi/DSDT > dsdt
|
||||||
|
|
||||||
|
And send me the resulting 'dsdt' file.
|
||||||
|
|
||||||
|
Usage
|
||||||
|
*****
|
||||||
|
|
||||||
|
On Acer laptops, acer-wmi should already be autoloaded based on DMI matching.
|
||||||
|
For non-Acer laptops, until WMI based autoloading support is added, you will
|
||||||
|
need to manually load acer-wmi.
|
||||||
|
|
||||||
|
acer-wmi creates /sys/devices/platform/acer-wmi, and fills it with various
|
||||||
|
files whose usage is detailed below, which enables you to control some of the
|
||||||
|
following (varies between models):
|
||||||
|
|
||||||
|
* the wireless LAN card radio
|
||||||
|
* inbuilt Bluetooth adapter
|
||||||
|
* inbuilt 3G card
|
||||||
|
* mail LED of your laptop
|
||||||
|
* brightness of the LCD panel
|
||||||
|
|
||||||
|
Wireless
|
||||||
|
********
|
||||||
|
|
||||||
|
With regards to wireless, all acer-wmi does is enable the radio on the card. It
|
||||||
|
is not responsible for the wireless LED - once the radio is enabled, this is
|
||||||
|
down to the wireless driver for your card. So the behaviour of the wireless LED,
|
||||||
|
once you enable the radio, will depend on your hardware and driver combination.
|
||||||
|
|
||||||
|
e.g. With the BCM4318 on the Acer Aspire 5020 series:
|
||||||
|
|
||||||
|
ndiswrapper: Light blinks on when transmitting
|
||||||
|
bcm43xx/b43: Solid light, blinks off when transmitting
|
||||||
|
|
||||||
|
Wireless radio control is unconditionally enabled - all Acer laptops that support
|
||||||
|
acer-wmi come with built-in wireless. However, should you feel so inclined to
|
||||||
|
ever wish to remove the card, or swap it out at some point, please get in touch
|
||||||
|
with me, as we may well be able to gain some data on wireless card detection.
|
||||||
|
|
||||||
|
To read the status of the wireless radio (0=off, 1=on):
|
||||||
|
cat /sys/devices/platform/acer-wmi/wireless
|
||||||
|
|
||||||
|
To enable the wireless radio:
|
||||||
|
echo 1 > /sys/devices/platform/acer-wmi/wireless
|
||||||
|
|
||||||
|
To disable the wireless radio:
|
||||||
|
echo 0 > /sys/devices/platform/acer-wmi/wireless
|
||||||
|
|
||||||
|
To set the state of the wireless radio when loading acer-wmi, pass:
|
||||||
|
wireless=X (where X is 0 or 1)
|
||||||
|
|
||||||
|
Bluetooth
|
||||||
|
*********
|
||||||
|
|
||||||
|
For bluetooth, this is an internal USB dongle, so once enabled, you will get
|
||||||
|
a USB device connection event, and a new USB device appears. When you disable
|
||||||
|
bluetooth, you get the reverse - a USB device disconnect event, followed by the
|
||||||
|
device disappearing again.
|
||||||
|
|
||||||
|
Bluetooth is autodetected by acer-wmi, so if you do not have a bluetooth module
|
||||||
|
installed in your laptop, this file won't exist (please be aware that it is
|
||||||
|
quite common for Acer not to fit bluetooth to their laptops - so just because
|
||||||
|
you have a bluetooth button on the laptop, doesn't mean that bluetooth is
|
||||||
|
installed).
|
||||||
|
|
||||||
|
For the adventurously minded - if you want to buy an internal bluetooth
|
||||||
|
module off the internet that is compatible with your laptop and fit it, then
|
||||||
|
it will work just fine with acer-wmi.
|
||||||
|
|
||||||
|
To read the status of the bluetooth module (0=off, 1=on):
|
||||||
|
cat /sys/devices/platform/acer-wmi/wireless
|
||||||
|
|
||||||
|
To enable the bluetooth module:
|
||||||
|
echo 1 > /sys/devices/platform/acer-wmi/bluetooth
|
||||||
|
|
||||||
|
To disable the bluetooth module:
|
||||||
|
echo 0 > /sys/devices/platform/acer-wmi/bluetooth
|
||||||
|
|
||||||
|
To set the state of the bluetooth module when loading acer-wmi, pass:
|
||||||
|
bluetooth=X (where X is 0 or 1)
|
||||||
|
|
||||||
|
3G
|
||||||
|
**
|
||||||
|
|
||||||
|
3G is currently not autodetected, so the 'threeg' file is always created under
|
||||||
|
sysfs. So far, no-one in possession of an Acer laptop with 3G built-in appears to
|
||||||
|
have tried Linux, or reported back, so we don't have any information on this.
|
||||||
|
|
||||||
|
If you have an Acer laptop that does have a 3G card in, please contact me so we
|
||||||
|
can properly detect these, and find out a bit more about them.
|
||||||
|
|
||||||
|
To read the status of the 3G card (0=off, 1=on):
|
||||||
|
cat /sys/devices/platform/acer-wmi/threeg
|
||||||
|
|
||||||
|
To enable the 3G card:
|
||||||
|
echo 1 > /sys/devices/platform/acer-wmi/threeg
|
||||||
|
|
||||||
|
To disable the 3G card:
|
||||||
|
echo 0 > /sys/devices/platform/acer-wmi/threeg
|
||||||
|
|
||||||
|
To set the state of the 3G card when loading acer-wmi, pass:
|
||||||
|
threeg=X (where X is 0 or 1)
|
||||||
|
|
||||||
|
Mail LED
|
||||||
|
********
|
||||||
|
|
||||||
|
This can be found in most older Acer laptops supported by acer-wmi, and many
|
||||||
|
newer ones - it is built into the 'mail' button, and blinks when active.
|
||||||
|
|
||||||
|
On newer (WMID) laptops though, we have no way of detecting the mail LED. If
|
||||||
|
your laptop identifies itself in dmesg as a WMID model, then please try loading
|
||||||
|
acer_acpi with:
|
||||||
|
|
||||||
|
force_series=2490
|
||||||
|
|
||||||
|
This will use a known alternative method of reading/ writing the mail LED. If
|
||||||
|
it works, please report back to me with the DMI data from your laptop so this
|
||||||
|
can be added to acer-wmi.
|
||||||
|
|
||||||
|
The LED is exposed through the LED subsystem, and can be found in:
|
||||||
|
|
||||||
|
/sys/devices/platform/acer-wmi/leds/acer-mail:green/
|
||||||
|
|
||||||
|
The mail LED is autodetected, so if you don't have one, the LED device won't
|
||||||
|
be registered.
|
||||||
|
|
||||||
|
If you have a mail LED that is not green, please report this to me.
|
||||||
|
|
||||||
|
Backlight
|
||||||
|
*********
|
||||||
|
|
||||||
|
The backlight brightness control is available on all acer-wmi supported
|
||||||
|
hardware. The maximum brightness level is usually 15, but on some newer laptops
|
||||||
|
it's 10 (this is again autodetected).
|
||||||
|
|
||||||
|
The backlight is exposed through the backlight subsystem, and can be found in:
|
||||||
|
|
||||||
|
/sys/devices/platform/acer-wmi/backlight/acer-wmi/
|
||||||
|
|
||||||
|
Credits
|
||||||
|
*******
|
||||||
|
|
||||||
|
Olaf Tauber, who did the real hard work when he developed acerhk
|
||||||
|
http://www.informatik.hu-berlin.de/~tauber/acerhk
|
||||||
|
All the authors of laptop ACPI modules in the kernel, whose work
|
||||||
|
was an inspiration in the early days of acer_acpi
|
||||||
|
Mathieu Segaud, who solved the problem with having to modprobe the driver
|
||||||
|
twice in acer_acpi 0.2.
|
||||||
|
Jim Ramsay, who added support for the WMID interface
|
||||||
|
Mark Smith, who started the original acer_acpi
|
||||||
|
|
||||||
|
And the many people who have used both acer_acpi and acer-wmi.
|
|
@ -114,4 +114,3 @@ Bugs/Limitations:
|
||||||
sonypi driver (through /dev/sonypi) does not try to use the
|
sonypi driver (through /dev/sonypi) does not try to use the
|
||||||
sony-laptop driver. In the future, spicctrl could try sonypi first,
|
sony-laptop driver. In the future, spicctrl could try sonypi first,
|
||||||
and if it isn't present, try sony-laptop instead.
|
and if it isn't present, try sony-laptop instead.
|
||||||
|
|
|
@ -102,6 +102,9 @@ config ARCH_HAS_ILOG2_U32
|
||||||
config ARCH_HAS_ILOG2_U64
|
config ARCH_HAS_ILOG2_U64
|
||||||
def_bool n
|
def_bool n
|
||||||
|
|
||||||
|
config ARCH_HAS_CPU_IDLE_WAIT
|
||||||
|
def_bool y
|
||||||
|
|
||||||
config GENERIC_CALIBRATE_DELAY
|
config GENERIC_CALIBRATE_DELAY
|
||||||
def_bool y
|
def_bool y
|
||||||
|
|
||||||
|
|
|
@ -60,5 +60,5 @@ obj-$(CONFIG_ACPI_ASUS) += asus_acpi.o
|
||||||
obj-$(CONFIG_ACPI_TOSHIBA) += toshiba_acpi.o
|
obj-$(CONFIG_ACPI_TOSHIBA) += toshiba_acpi.o
|
||||||
obj-$(CONFIG_ACPI_HOTPLUG_MEMORY) += acpi_memhotplug.o
|
obj-$(CONFIG_ACPI_HOTPLUG_MEMORY) += acpi_memhotplug.o
|
||||||
obj-$(CONFIG_ACPI_PROCFS_POWER) += cm_sbs.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) += sbshc.o
|
||||||
|
obj-$(CONFIG_ACPI_SBS) += sbs.o
|
||||||
|
|
|
@ -827,7 +827,7 @@ static int acpi_battery_add(struct acpi_sbs *sbs, int id)
|
||||||
#endif
|
#endif
|
||||||
printk(KERN_INFO PREFIX "%s [%s]: Battery Slot [%s] (battery %s)\n",
|
printk(KERN_INFO PREFIX "%s [%s]: Battery Slot [%s] (battery %s)\n",
|
||||||
ACPI_SBS_DEVICE_NAME, acpi_device_bid(sbs->device),
|
ACPI_SBS_DEVICE_NAME, acpi_device_bid(sbs->device),
|
||||||
battery->name, sbs->battery->present ? "present" : "absent");
|
battery->name, battery->present ? "present" : "absent");
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -117,6 +117,11 @@ static int acpi_smbus_transaction(struct acpi_smb_hc *hc, u8 protocol,
|
||||||
int ret = -EFAULT, i;
|
int ret = -EFAULT, i;
|
||||||
u8 temp, sz = 0;
|
u8 temp, sz = 0;
|
||||||
|
|
||||||
|
if (!hc) {
|
||||||
|
printk(KERN_ERR PREFIX "host controller is not configured\n");
|
||||||
|
return ret;
|
||||||
|
}
|
||||||
|
|
||||||
mutex_lock(&hc->lock);
|
mutex_lock(&hc->lock);
|
||||||
if (smb_hc_read(hc, ACPI_SMB_PROTOCOL, &temp))
|
if (smb_hc_read(hc, ACPI_SMB_PROTOCOL, &temp))
|
||||||
goto end;
|
goto end;
|
||||||
|
@ -292,6 +297,7 @@ static int acpi_smbus_hc_remove(struct acpi_device *device, int type)
|
||||||
hc = acpi_driver_data(device);
|
hc = acpi_driver_data(device);
|
||||||
acpi_ec_remove_query_handler(hc->ec, hc->query_bit);
|
acpi_ec_remove_query_handler(hc->ec, hc->query_bit);
|
||||||
kfree(hc);
|
kfree(hc);
|
||||||
|
acpi_driver_data(device) = NULL;
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -875,7 +875,7 @@ config SONYPI
|
||||||
Device which can be found in many (all ?) Sony Vaio laptops.
|
Device which can be found in many (all ?) Sony Vaio laptops.
|
||||||
|
|
||||||
If you have one of those laptops, read
|
If you have one of those laptops, read
|
||||||
<file:Documentation/sonypi.txt>, and say Y or M here.
|
<file:Documentation/laptops/sonypi.txt>, and say Y or M here.
|
||||||
|
|
||||||
To compile this driver as a module, choose M here: the
|
To compile this driver as a module, choose M here: the
|
||||||
module will be called sonypi.
|
module will be called sonypi.
|
||||||
|
|
|
@ -27,6 +27,17 @@ static void (*pm_idle_old)(void);
|
||||||
|
|
||||||
static int enabled_devices;
|
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
|
* 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)) {
|
if (enabled_devices && (pm_idle != pm_idle_old)) {
|
||||||
pm_idle = pm_idle_old;
|
pm_idle = pm_idle_old;
|
||||||
cpu_idle_wait();
|
cpuidle_kick_cpus();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -114,6 +114,9 @@ config ACER_WMI
|
||||||
wireless radio and bluetooth control, and on some laptops,
|
wireless radio and bluetooth control, and on some laptops,
|
||||||
exposes the mail LED and LCD backlight.
|
exposes the mail LED and LCD backlight.
|
||||||
|
|
||||||
|
For more information about this driver see
|
||||||
|
<file:Documentation/laptops/acer-wmi.txt>
|
||||||
|
|
||||||
If you have an ACPI-WMI compatible Acer/ Wistron laptop, say Y or M
|
If you have an ACPI-WMI compatible Acer/ Wistron laptop, say Y or M
|
||||||
here.
|
here.
|
||||||
|
|
||||||
|
@ -152,8 +155,9 @@ config FUJITSU_LAPTOP
|
||||||
If you have a Fujitsu laptop, say Y or M here.
|
If you have a Fujitsu laptop, say Y or M here.
|
||||||
|
|
||||||
config TC1100_WMI
|
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 X86 && !X86_64
|
||||||
|
depends on EXPERIMENTAL
|
||||||
depends on ACPI
|
depends on ACPI
|
||||||
select ACPI_WMI
|
select ACPI_WMI
|
||||||
---help---
|
---help---
|
||||||
|
@ -192,7 +196,7 @@ config SONY_LAPTOP
|
||||||
screen brightness control, Fn keys and allows powering on/off some
|
screen brightness control, Fn keys and allows powering on/off some
|
||||||
devices.
|
devices.
|
||||||
|
|
||||||
Read <file:Documentation/sony-laptop.txt> for more information.
|
Read <file:Documentation/laptops/sony-laptop.txt> for more information.
|
||||||
|
|
||||||
config SONYPI_COMPAT
|
config SONYPI_COMPAT
|
||||||
bool "Sonypi compatibility"
|
bool "Sonypi compatibility"
|
||||||
|
@ -211,8 +215,9 @@ config THINKPAD_ACPI
|
||||||
This is a driver for the IBM and Lenovo ThinkPad laptops. It adds
|
This is a driver for the IBM and Lenovo ThinkPad laptops. It adds
|
||||||
support for Fn-Fx key combinations, Bluetooth control, video
|
support for Fn-Fx key combinations, Bluetooth control, video
|
||||||
output switching, ThinkLight control, UltraBay eject and more.
|
output switching, ThinkLight control, UltraBay eject and more.
|
||||||
For more information about this driver see
|
For more information about this driver see
|
||||||
<file:Documentation/thinkpad-acpi.txt> and <http://ibm-acpi.sf.net/> .
|
<file:Documentation/laptops/thinkpad-acpi.txt> and
|
||||||
|
<http://ibm-acpi.sf.net/> .
|
||||||
|
|
||||||
This driver was formerly known as ibm-acpi.
|
This driver was formerly known as ibm-acpi.
|
||||||
|
|
||||||
|
|
|
@ -428,11 +428,9 @@ static acpi_status AMW0_set_u32(u32 value, u32 cap, struct wmi_interface *iface)
|
||||||
if (value > max_brightness)
|
if (value > max_brightness)
|
||||||
return AE_BAD_PARAMETER;
|
return AE_BAD_PARAMETER;
|
||||||
switch (quirks->brightness) {
|
switch (quirks->brightness) {
|
||||||
case 1:
|
|
||||||
return ec_write(0x83, value);
|
|
||||||
default:
|
default:
|
||||||
return AE_BAD_ADDRESS;
|
return ec_write(0x83, value);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
default:
|
default:
|
||||||
return AE_BAD_ADDRESS;
|
return AE_BAD_ADDRESS;
|
||||||
|
|
|
@ -79,7 +79,9 @@ struct thermal_zone_device {
|
||||||
};
|
};
|
||||||
|
|
||||||
struct thermal_zone_device *thermal_zone_device_register(char *, int, void *,
|
struct thermal_zone_device *thermal_zone_device_register(char *, int, void *,
|
||||||
struct thermal_zone_device_ops *);
|
struct
|
||||||
|
thermal_zone_device_ops
|
||||||
|
*);
|
||||||
void thermal_zone_device_unregister(struct thermal_zone_device *);
|
void thermal_zone_device_unregister(struct thermal_zone_device *);
|
||||||
|
|
||||||
int thermal_zone_bind_cooling_device(struct thermal_zone_device *, int,
|
int thermal_zone_bind_cooling_device(struct thermal_zone_device *, int,
|
||||||
|
@ -87,8 +89,23 @@ int thermal_zone_bind_cooling_device(struct thermal_zone_device *, int,
|
||||||
int thermal_zone_unbind_cooling_device(struct thermal_zone_device *, int,
|
int thermal_zone_unbind_cooling_device(struct thermal_zone_device *, int,
|
||||||
struct thermal_cooling_device *);
|
struct thermal_cooling_device *);
|
||||||
|
|
||||||
|
#ifdef CONFIG_THERMAL
|
||||||
struct thermal_cooling_device *thermal_cooling_device_register(char *, void *,
|
struct thermal_cooling_device *thermal_cooling_device_register(char *, void *,
|
||||||
struct thermal_cooling_device_ops *);
|
struct
|
||||||
|
thermal_cooling_device_ops
|
||||||
|
*);
|
||||||
void thermal_cooling_device_unregister(struct thermal_cooling_device *);
|
void thermal_cooling_device_unregister(struct thermal_cooling_device *);
|
||||||
|
#else
|
||||||
|
static inline struct thermal_cooling_device
|
||||||
|
*thermal_cooling_device_register(char *c, void *v,
|
||||||
|
struct thermal_cooling_device_ops *t)
|
||||||
|
{
|
||||||
|
return NULL;
|
||||||
|
}
|
||||||
|
static inline
|
||||||
|
void thermal_cooling_device_unregister(struct thermal_cooling_device *t)
|
||||||
|
{
|
||||||
|
};
|
||||||
|
#endif
|
||||||
|
|
||||||
#endif /* __THERMAL_H__ */
|
#endif /* __THERMAL_H__ */
|
||||||
|
|
Loading…
Reference in New Issue