thinkpad-acpi changes for the merge window (part 1)
Subsystems (3)
PATCH v4 1/1 thinkpad-acpi changes for the merge window (part 1)
Len,
Here's the update to the $subject patchset, as per Jean Devalre's comments.
Just a single patch needed to be modified. It replaces patch "[PATCH 8/9]
ACPI: thinkpad-acpi: use a separate platform device for hwmon and name it" from the previous patch series.
I have also updated the git tree accordingly, for what is it worth.
Please merge for 2.6.24's merge window. Thanks!
Signature · 4 lines
"One disk to rule them all, One disk to find them. One disk to bring them all and in the darkness grind them. In the Land of Redmond where the shadows lie." -- The Silicon Valley Tarot Henrique Holschuh
PATCH 1/1 ACPI: thinkpad-acpi: use a separate platform device for hwmon and name it (v2)
Use a separate platform device and driver ("thinkpad_hwmon") to attach hwmon attributes and class, and add a name attribute of "thinkpad" to it, which defines the hwmon device name for libsensors4.
This makes thinkpad-acpi compatible with libsensors4 from lm-sensors, and the platform driver and device split will make it much easier to separate hwmon functionality into its own module later on.
--- Documentation/thinkpad-acpi.txt | 25 +++++++++--- drivers/misc/thinkpad_acpi.c | 79 +++++++++++++++++++++++++++++++++------ drivers/misc/thinkpad_acpi.h | 6 ++- 3 files changed, 91 insertions(+), 19 deletions(-)
Documentation/thinkpad-acpi.txt +19 -6
@@ -105,10 +105,15 @@ The version of thinkpad-acpi's sysfs interface is exported by the driver as a driver attribute (see below). Sysfs driver attributes are on the driver's sysfs attribute space, -for 2.6.20 this is /sys/bus/platform/drivers/thinkpad_acpi/. +for 2.6.23 this is /sys/bus/platform/drivers/thinkpad_acpi/ and +/sys/bus/platform/drivers/thinkpad_hwmon/ -Sysfs device attributes are on the driver's sysfs attribute space, -for 2.6.20 this is /sys/devices/platform/thinkpad_acpi/. +Sysfs device attributes are on the thinkpad_acpi device sysfs attribute +space, for 2.6.23 this is /sys/devices/platform/thinkpad_acpi/. + +Sysfs device attributes for the sensors and fan are on the +thinkpad_hwmon device's sysfs attribute space, but you should locate it +looking for a hwmon device with the name attribute of "thinkpad". Driver version --------------
@@ -766,7 +771,7 @@ Temperature sensors ------------------- procfs: /proc/acpi/ibm/thermal -sysfs device attributes: (hwmon) temp*_input +sysfs device attributes: (hwmon "thinkpad") temp*_input Most ThinkPads include six or more separate temperature sensors but only expose the CPU temperature through the standard ACPI methods. This
@@ -989,7 +994,9 @@ Fan control and monitoring: fan speed, fan enable/disable --------------------------------------------------------- procfs: /proc/acpi/ibm/fan -sysfs device attributes: (hwmon) fan_input, pwm1, pwm1_enable +sysfs device attributes: (hwmon "thinkpad") fan1_input, pwm1, + pwm1_enable +sysfs hwmon driver attributes: fan_watchdog NOTE NOTE NOTE: fan control operations are disabled by default for safety reasons. To enable them, the module parameter "fan_control=1"
@@ -1131,7 +1138,7 @@ hwmon device attribute fan1_input: which can take up to two minutes. May return rubbish on older ThinkPads. -driver attribute fan_watchdog: +hwmon driver attribute fan_watchdog: Fan safety watchdog timer interval, in seconds. Minimum is 1 second, maximum is 120 seconds. 0 disables the watchdog.
@@ -1233,3 +1240,9 @@ Sysfs interface changelog: layer, the radio switch generates input event EV_RADIO, and the driver enables hot key handling by default in the firmware. + +0x020000: ABI fix: added a separate hwmon platform device and + driver, which must be located by name (thinkpad) + and the hwmon class for libsensors4 (lm-sensors 3) + compatibility. Moved all hwmon attributes to this + new platform device.
drivers/misc/thinkpad_acpi.c +67 -12
175 lines not on this page · raw message
drivers/misc/thinkpad_acpi.h +5 -1
@@ -58,13 +58,14 @@#define IBM_NAME "thinkpad"#define IBM_DESC "ThinkPad ACPI Extras" -#define IBM_FILE "thinkpad_acpi" +#define IBM_FILE IBM_NAME "_acpi"#define IBM_URL "http://ibm-acpi.sf.net/"#define IBM_MAIL "[email protected]"#define IBM_PROC_DIR "ibm"#define IBM_ACPI_EVENT_PREFIX "ibm"#define IBM_DRVR_NAME IBM_FILE +#define IBM_HWMON_DRVR_NAME IBM_NAME "_hwmon"#define IBM_LOG IBM_FILE ": "#define IBM_ERR KERN_ERR IBM_LOG
@@ -171,6 +172,7 @@ static int parse_strtoul(const char *buf, unsigned long max,/* Device model */ static struct platform_device *tpacpi_pdev; +static struct platform_device *tpacpi_sensors_pdev;static struct class_device *tpacpi_hwmon;static struct platform_driver tpacpi_pdriver;static struct input_dev *tpacpi_inputdev;
@@ -249,6 +251,8 @@ static struct { u32 input_device_registered:1; u32 platform_drv_registered:1; u32 platform_drv_attrs_registered:1; + u32 sensors_pdrv_registered:1; + u32 sensors_pdev_attrs_registered:1; } tp_features;struct thinkpad_id_data {
Signature · 1 line
1.5.3.1
Len Brown
reviewerRe: [PATCH] ACPI: thinkpad-acpi: use a separate platform device for hwmon and name it (v2)
Quoted 8 lines · Henrique de Moraes Holschuh
Use a separate platform device and driver ("
thinkpad_hwmon") to attach hwmon attributes and class, and add a name attribute of "thinkpad" to it, which defines the hwmon device name for libsensors4.This makes thinkpad-acpi compatible with libsensors4 from lm-sensors, and the platform driver and device split will make it much easier to separate hwmon functionality into its own module later on.
Quoted 7 lines
Signed-off-by Henrique de Moraes Holschuh <[email protected]>Cc Jean Delvare <[email protected]>--- Documentation/thinkpad-acpi.txt | 25 +++++++++--- drivers/misc/thinkpad_acpi.c | 79 +++++++++++++++++++++++++++++++++------ drivers/misc/thinkpad_acpi.h | 6 ++- 3 files changed, 91 insertions(+), 19 deletions(-)
previous 8/9 in the test tree is replaced by this one.
thanks,
-Len