Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
L
linux
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
nexedi
linux
Commits
bf0a40b7
Commit
bf0a40b7
authored
Oct 10, 2007
by
Len Brown
Browse files
Options
Browse Files
Download
Plain Diff
Pull thinkpad into release branch
parents
2cde4afa
32afbf07
Changes
3
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
210 additions
and
59 deletions
+210
-59
Documentation/thinkpad-acpi.txt
Documentation/thinkpad-acpi.txt
+19
-6
drivers/misc/thinkpad_acpi.c
drivers/misc/thinkpad_acpi.c
+170
-37
drivers/misc/thinkpad_acpi.h
drivers/misc/thinkpad_acpi.h
+21
-16
No files found.
Documentation/thinkpad-acpi.txt
View file @
bf0a40b7
...
@@ -105,10 +105,15 @@ The version of thinkpad-acpi's sysfs interface is exported by the driver
...
@@ -105,10 +105,15 @@ The version of thinkpad-acpi's sysfs interface is exported by the driver
as a driver attribute (see below).
as a driver attribute (see below).
Sysfs driver attributes are on the driver's sysfs attribute space,
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,
Sysfs device attributes are on the thinkpad_acpi device sysfs attribute
for 2.6.20 this is /sys/devices/platform/thinkpad_acpi/.
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
Driver version
--------------
--------------
...
@@ -766,7 +771,7 @@ Temperature sensors
...
@@ -766,7 +771,7 @@ Temperature sensors
-------------------
-------------------
procfs: /proc/acpi/ibm/thermal
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
Most ThinkPads include six or more separate temperature sensors but only
expose the CPU temperature through the standard ACPI methods. This
expose the CPU temperature through the standard ACPI methods. This
...
@@ -989,7 +994,9 @@ Fan control and monitoring: fan speed, fan enable/disable
...
@@ -989,7 +994,9 @@ Fan control and monitoring: fan speed, fan enable/disable
---------------------------------------------------------
---------------------------------------------------------
procfs: /proc/acpi/ibm/fan
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
NOTE NOTE NOTE: fan control operations are disabled by default for
safety reasons. To enable them, the module parameter "fan_control=1"
safety reasons. To enable them, the module parameter "fan_control=1"
...
@@ -1131,7 +1138,7 @@ hwmon device attribute fan1_input:
...
@@ -1131,7 +1138,7 @@ hwmon device attribute fan1_input:
which can take up to two minutes. May return rubbish on older
which can take up to two minutes. May return rubbish on older
ThinkPads.
ThinkPads.
driver attribute fan_watchdog:
hwmon
driver attribute fan_watchdog:
Fan safety watchdog timer interval, in seconds. Minimum is
Fan safety watchdog timer interval, in seconds. Minimum is
1 second, maximum is 120 seconds. 0 disables the watchdog.
1 second, maximum is 120 seconds. 0 disables the watchdog.
...
@@ -1233,3 +1240,9 @@ Sysfs interface changelog:
...
@@ -1233,3 +1240,9 @@ Sysfs interface changelog:
layer, the radio switch generates input event EV_RADIO,
layer, the radio switch generates input event EV_RADIO,
and the driver enables hot key handling by default in
and the driver enables hot key handling by default in
the firmware.
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
View file @
bf0a40b7
This diff is collapsed.
Click to expand it.
drivers/misc/thinkpad_acpi.h
View file @
bf0a40b7
...
@@ -58,13 +58,14 @@
...
@@ -58,13 +58,14 @@
#define IBM_NAME "thinkpad"
#define IBM_NAME "thinkpad"
#define IBM_DESC "ThinkPad ACPI Extras"
#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_URL "http://ibm-acpi.sf.net/"
#define IBM_MAIL "ibm-acpi-devel@lists.sourceforge.net"
#define IBM_MAIL "ibm-acpi-devel@lists.sourceforge.net"
#define IBM_PROC_DIR "ibm"
#define IBM_PROC_DIR "ibm"
#define IBM_ACPI_EVENT_PREFIX "ibm"
#define IBM_ACPI_EVENT_PREFIX "ibm"
#define IBM_DRVR_NAME IBM_FILE
#define IBM_DRVR_NAME IBM_FILE
#define IBM_HWMON_DRVR_NAME IBM_NAME "_hwmon"
#define IBM_LOG IBM_FILE ": "
#define IBM_LOG IBM_FILE ": "
#define IBM_ERR KERN_ERR IBM_LOG
#define IBM_ERR KERN_ERR IBM_LOG
...
@@ -171,6 +172,7 @@ static int parse_strtoul(const char *buf, unsigned long max,
...
@@ -171,6 +172,7 @@ static int parse_strtoul(const char *buf, unsigned long max,
/* Device model */
/* Device model */
static
struct
platform_device
*
tpacpi_pdev
;
static
struct
platform_device
*
tpacpi_pdev
;
static
struct
platform_device
*
tpacpi_sensors_pdev
;
static
struct
class_device
*
tpacpi_hwmon
;
static
struct
class_device
*
tpacpi_hwmon
;
static
struct
platform_driver
tpacpi_pdriver
;
static
struct
platform_driver
tpacpi_pdriver
;
static
struct
input_dev
*
tpacpi_inputdev
;
static
struct
input_dev
*
tpacpi_inputdev
;
...
@@ -233,22 +235,25 @@ struct ibm_init_struct {
...
@@ -233,22 +235,25 @@ struct ibm_init_struct {
static
struct
{
static
struct
{
#ifdef CONFIG_THINKPAD_ACPI_BAY
#ifdef CONFIG_THINKPAD_ACPI_BAY
u
16
bay_status
:
1
;
u
32
bay_status
:
1
;
u
16
bay_eject
:
1
;
u
32
bay_eject
:
1
;
u
16
bay_status2
:
1
;
u
32
bay_status2
:
1
;
u
16
bay_eject2
:
1
;
u
32
bay_eject2
:
1
;
#endif
#endif
u16
bluetooth
:
1
;
u32
bluetooth
:
1
;
u16
hotkey
:
1
;
u32
hotkey
:
1
;
u16
hotkey_mask
:
1
;
u32
hotkey_mask
:
1
;
u16
hotkey_wlsw
:
1
;
u32
hotkey_wlsw
:
1
;
u16
light
:
1
;
u32
light
:
1
;
u16
light_status
:
1
;
u32
light_status
:
1
;
u16
wan
:
1
;
u32
wan
:
1
;
u16
fan_ctrl_status_undef
:
1
;
u32
fan_ctrl_status_undef
:
1
;
u16
input_device_registered
:
1
;
u32
input_device_registered
:
1
;
u16
platform_drv_registered
:
1
;
u32
platform_drv_registered
:
1
;
u16
platform_drv_attrs_registered
:
1
;
u32
platform_drv_attrs_registered
:
1
;
u32
sensors_pdrv_registered
:
1
;
u32
sensors_pdrv_attrs_registered
:
1
;
u32
sensors_pdev_attrs_registered
:
1
;
}
tp_features
;
}
tp_features
;
struct
thinkpad_id_data
{
struct
thinkpad_id_data
{
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment