Commit b02f1651 authored by Mauro Carvalho Chehab's avatar Mauro Carvalho Chehab

docs: laptops: convert to ReST

Rename the laptops documentation files to ReST, add an
index for them and adjust in order to produce a nice html
output via the Sphinx build system.

At its new index.rst, let's add a :orphan: while this is not linked to
the main index.rst file, in order to avoid build warnings.
Signed-off-by: default avatarMauro Carvalho Chehab <mchehab+samsung@kernel.org>
Acked-by: default avatarAndy Shevchenko <andy.shevchenko@gmail.com>
parent db9a0975
...@@ -45,7 +45,7 @@ Description: ...@@ -45,7 +45,7 @@ Description:
- Values below -2 are rejected with -EINVAL - Values below -2 are rejected with -EINVAL
For more information, see For more information, see
Documentation/laptops/disk-shock-protection.txt Documentation/laptops/disk-shock-protection.rst
What: /sys/block/*/device/ncq_prio_enable What: /sys/block/*/device/ncq_prio_enable
......
...@@ -31,7 +31,7 @@ Description: ...@@ -31,7 +31,7 @@ Description:
To control the LED display, use the following : To control the LED display, use the following :
echo 0x0T000DDD > /sys/devices/platform/asus_laptop/ echo 0x0T000DDD > /sys/devices/platform/asus_laptop/
where T control the 3 letters display, and DDD the 3 digits display. where T control the 3 letters display, and DDD the 3 digits display.
The DDD table can be found in Documentation/laptops/asus-laptop.txt The DDD table can be found in Documentation/laptops/asus-laptop.rst
What: /sys/devices/platform/asus_laptop/bluetooth What: /sys/devices/platform/asus_laptop/bluetooth
Date: January 2007 Date: January 2007
......
...@@ -4347,7 +4347,7 @@ ...@@ -4347,7 +4347,7 @@
Format: <integer> Format: <integer>
sonypi.*= [HW] Sony Programmable I/O Control Device driver sonypi.*= [HW] Sony Programmable I/O Control Device driver
See Documentation/laptops/sonypi.txt See Documentation/laptops/sonypi.rst
spectre_v2= [X86] Control mitigation of Spectre variant 2 spectre_v2= [X86] Control mitigation of Spectre variant 2
(indirect branch speculation) vulnerability. (indirect branch speculation) vulnerability.
......
==================
Asus Laptop Extras Asus Laptop Extras
==================
Version 0.1 Version 0.1
August 6, 2009 August 6, 2009
Corentin Chary <corentincj@iksaif.net> Corentin Chary <corentincj@iksaif.net>
...@@ -10,11 +13,12 @@ http://acpi4asus.sf.net/ ...@@ -10,11 +13,12 @@ http://acpi4asus.sf.net/
It may also support some MEDION, JVC or VICTOR laptops (such as MEDION 9675 or It may also support some MEDION, JVC or VICTOR laptops (such as MEDION 9675 or
VICTOR XP7210 for example). It makes all the extra buttons generate input VICTOR XP7210 for example). It makes all the extra buttons generate input
events (like keyboards). events (like keyboards).
On some models adds support for changing the display brightness and output, On some models adds support for changing the display brightness and output,
switching the LCD backlight on and off, and most importantly, allows you to switching the LCD backlight on and off, and most importantly, allows you to
blink those fancy LEDs intended for reporting mail and wireless status. blink those fancy LEDs intended for reporting mail and wireless status.
This driver supercedes the old asus_acpi driver. This driver supersedes the old asus_acpi driver.
Requirements Requirements
------------ ------------
...@@ -49,7 +53,7 @@ Usage ...@@ -49,7 +53,7 @@ Usage
see some lines like this : see some lines like this :
Asus Laptop Extras version 0.42 Asus Laptop Extras version 0.42
L2D model detected. - L2D model detected.
If it is not the output you have on your laptop, send it (and the laptop's If it is not the output you have on your laptop, send it (and the laptop's
DSDT) to me. DSDT) to me.
...@@ -68,9 +72,12 @@ Usage ...@@ -68,9 +72,12 @@ Usage
LEDs LEDs
---- ----
You can modify LEDs be echoing values to /sys/class/leds/asus::*/brightness : You can modify LEDs be echoing values to `/sys/class/leds/asus/*/brightness`::
echo 1 > /sys/class/leds/asus::mail/brightness echo 1 > /sys/class/leds/asus::mail/brightness
will switch the mail LED on. will switch the mail LED on.
You can also know if they are on/off by reading their content and use You can also know if they are on/off by reading their content and use
kernel triggers like disk-activity or heartbeat. kernel triggers like disk-activity or heartbeat.
...@@ -81,7 +88,7 @@ Backlight ...@@ -81,7 +88,7 @@ Backlight
/sys/class/backlight/asus-laptop/. Brightness Values are between 0 and 15. /sys/class/backlight/asus-laptop/. Brightness Values are between 0 and 15.
Wireless devices Wireless devices
--------------- ----------------
You can turn the internal Bluetooth adapter on/off with the bluetooth entry You can turn the internal Bluetooth adapter on/off with the bluetooth entry
(only on models with Bluetooth). This usually controls the associated LED. (only on models with Bluetooth). This usually controls the associated LED.
...@@ -93,18 +100,20 @@ Display switching ...@@ -93,18 +100,20 @@ Display switching
Note: the display switching code is currently considered EXPERIMENTAL. Note: the display switching code is currently considered EXPERIMENTAL.
Switching works for the following models: Switching works for the following models:
L3800C
A2500H - L3800C
L5800C - A2500H
M5200N - L5800C
W1000N (albeit with some glitches) - M5200N
M6700R - W1000N (albeit with some glitches)
A6JC - M6700R
F3J - A6JC
- F3J
Switching doesn't work for the following: Switching doesn't work for the following:
M3700N
L2X00D (locks the laptop under certain conditions) - M3700N
- L2X00D (locks the laptop under certain conditions)
To switch the displays, echo values from 0 to 15 to To switch the displays, echo values from 0 to 15 to
/sys/devices/platform/asus-laptop/display. The significance of those values /sys/devices/platform/asus-laptop/display. The significance of those values
...@@ -113,48 +122,51 @@ Display switching ...@@ -113,48 +122,51 @@ Display switching
+-------+-----+-----+-----+-----+-----+ +-------+-----+-----+-----+-----+-----+
| Bin | Val | DVI | TV | CRT | LCD | | Bin | Val | DVI | TV | CRT | LCD |
+-------+-----+-----+-----+-----+-----+ +-------+-----+-----+-----+-----+-----+
+ 0000 + 0 + + + + + | 0000 | 0 | | | | |
+-------+-----+-----+-----+-----+-----+ +-------+-----+-----+-----+-----+-----+
+ 0001 + 1 + + + + X + | 0001 | 1 | | | | X |
+-------+-----+-----+-----+-----+-----+ +-------+-----+-----+-----+-----+-----+
+ 0010 + 2 + + + X + + | 0010 | 2 | | | X | |
+-------+-----+-----+-----+-----+-----+ +-------+-----+-----+-----+-----+-----+
+ 0011 + 3 + + + X + X + | 0011 | 3 | | | X | X |
+-------+-----+-----+-----+-----+-----+ +-------+-----+-----+-----+-----+-----+
+ 0100 + 4 + + X + + + | 0100 | 4 | | X | | |
+-------+-----+-----+-----+-----+-----+ +-------+-----+-----+-----+-----+-----+
+ 0101 + 5 + + X + + X + | 0101 | 5 | | X | | X |
+-------+-----+-----+-----+-----+-----+ +-------+-----+-----+-----+-----+-----+
+ 0110 + 6 + + X + X + + | 0110 | 6 | | X | X | |
+-------+-----+-----+-----+-----+-----+ +-------+-----+-----+-----+-----+-----+
+ 0111 + 7 + + X + X + X + | 0111 | 7 | | X | X | X |
+-------+-----+-----+-----+-----+-----+ +-------+-----+-----+-----+-----+-----+
+ 1000 + 8 + X + + + + | 1000 | 8 | X | | | |
+-------+-----+-----+-----+-----+-----+ +-------+-----+-----+-----+-----+-----+
+ 1001 + 9 + X + + + X + | 1001 | 9 | X | | | X |
+-------+-----+-----+-----+-----+-----+ +-------+-----+-----+-----+-----+-----+
+ 1010 + 10 + X + + X + + | 1010 | 10 | X | | X | |
+-------+-----+-----+-----+-----+-----+ +-------+-----+-----+-----+-----+-----+
+ 1011 + 11 + X + + X + X + | 1011 | 11 | X | | X | X |
+-------+-----+-----+-----+-----+-----+ +-------+-----+-----+-----+-----+-----+
+ 1100 + 12 + X + X + + + | 1100 | 12 | X | X | | |
+-------+-----+-----+-----+-----+-----+ +-------+-----+-----+-----+-----+-----+
+ 1101 + 13 + X + X + + X + | 1101 | 13 | X | X | | X |
+-------+-----+-----+-----+-----+-----+ +-------+-----+-----+-----+-----+-----+
+ 1110 + 14 + X + X + X + + | 1110 | 14 | X | X | X | |
+-------+-----+-----+-----+-----+-----+ +-------+-----+-----+-----+-----+-----+
+ 1111 + 15 + X + X + X + X + | 1111 | 15 | X | X | X | X |
+-------+-----+-----+-----+-----+-----+ +-------+-----+-----+-----+-----+-----+
In most cases, the appropriate displays must be plugged in for the above In most cases, the appropriate displays must be plugged in for the above
combinations to work. TV-Out may need to be initialized at boot time. combinations to work. TV-Out may need to be initialized at boot time.
Debugging: Debugging:
1) Check whether the Fn+F8 key: 1) Check whether the Fn+F8 key:
a) does not lock the laptop (try a boot with noapic / nolapic if it does) a) does not lock the laptop (try a boot with noapic / nolapic if it does)
b) generates events (0x6n, where n is the value corresponding to the b) generates events (0x6n, where n is the value corresponding to the
configuration above) configuration above)
c) actually works c) actually works
Record the disp value at every configuration. Record the disp value at every configuration.
2) Echo values from 0 to 15 to /sys/devices/platform/asus-laptop/display. 2) Echo values from 0 to 15 to /sys/devices/platform/asus-laptop/display.
Record its value, note any change. If nothing changes, try a broader range, Record its value, note any change. If nothing changes, try a broader range,
...@@ -164,7 +176,7 @@ Display switching ...@@ -164,7 +176,7 @@ Display switching
Note: on some machines (e.g. L3C), after the module has been loaded, only 0x6n Note: on some machines (e.g. L3C), after the module has been loaded, only 0x6n
events are generated and no actual switching occurs. In such a case, a line events are generated and no actual switching occurs. In such a case, a line
like: like::
echo $((10#$arg-60)) > /sys/devices/platform/asus-laptop/display echo $((10#$arg-60)) > /sys/devices/platform/asus-laptop/display
...@@ -180,15 +192,16 @@ LED display ...@@ -180,15 +192,16 @@ LED display
several items of information. several items of information.
LED display works for the following models: LED display works for the following models:
W1000N
W1J
To control the LED display, use the following : - W1000N
- W1J
To control the LED display, use the following::
echo 0x0T000DDD > /sys/devices/platform/asus-laptop/ echo 0x0T000DDD > /sys/devices/platform/asus-laptop/
where T control the 3 letters display, and DDD the 3 digits display, where T control the 3 letters display, and DDD the 3 digits display,
according to the tables below. according to the tables below::
DDD (digits) DDD (digits)
000 to 999 = display digits 000 to 999 = display digits
...@@ -208,8 +221,8 @@ LED display ...@@ -208,8 +221,8 @@ LED display
For example "echo 0x01000001 >/sys/devices/platform/asus-laptop/ledd" For example "echo 0x01000001 >/sys/devices/platform/asus-laptop/ledd"
would display "DVD001". would display "DVD001".
Driver options: Driver options
--------------- --------------
Options can be passed to the asus-laptop driver using the standard Options can be passed to the asus-laptop driver using the standard
module argument syntax (<param>=<value> when passing the option to the module argument syntax (<param>=<value> when passing the option to the
...@@ -219,6 +232,7 @@ Driver options: ...@@ -219,6 +232,7 @@ Driver options:
wapf: WAPF defines the behavior of the Fn+Fx wlan key wapf: WAPF defines the behavior of the Fn+Fx wlan key
The significance of values is yet to be found, but The significance of values is yet to be found, but
most of the time: most of the time:
- 0x0 should do nothing - 0x0 should do nothing
- 0x1 should allow to control the device with Fn+Fx key. - 0x1 should allow to control the device with Fn+Fx key.
- 0x4 should send an ACPI event (0x88) while pressing the Fn+Fx key - 0x4 should send an ACPI event (0x88) while pressing the Fn+Fx key
...@@ -237,7 +251,7 @@ Unsupported models ...@@ -237,7 +251,7 @@ Unsupported models
- ASUS L7300G - ASUS L7300G
- ASUS L8400 - ASUS L8400
Patches, Errors, Questions: Patches, Errors, Questions
-------------------------- --------------------------
I appreciate any success or failure I appreciate any success or failure
...@@ -253,5 +267,5 @@ Patches, Errors, Questions: ...@@ -253,5 +267,5 @@ Patches, Errors, Questions:
Any other comments or patches are also more than welcome. Any other comments or patches are also more than welcome.
acpi4asus-user@lists.sourceforge.net acpi4asus-user@lists.sourceforge.net
http://sourceforge.net/projects/acpi4asus
http://sourceforge.net/projects/acpi4asus
==========================
Hard disk shock protection Hard disk shock protection
========================== ==========================
Author: Elias Oltmanns <eo@nebensachen.de> Author: Elias Oltmanns <eo@nebensachen.de>
Last modified: 2008-10-03 Last modified: 2008-10-03
0. Contents .. 0. Contents
-----------
1. Intro 1. Intro
2. The interface 2. The interface
3. References 3. References
4. CREDITS 4. CREDITS
1. Intro 1. Intro
...@@ -36,8 +37,8 @@ that). ...@@ -36,8 +37,8 @@ that).
---------------- ----------------
For each ATA device, the kernel exports the file For each ATA device, the kernel exports the file
block/*/device/unload_heads in sysfs (here assumed to be mounted under `block/*/device/unload_heads` in sysfs (here assumed to be mounted under
/sys). Access to /sys/block/*/device/unload_heads is denied with /sys). Access to `/sys/block/*/device/unload_heads` is denied with
-EOPNOTSUPP if the device does not support the unload feature. -EOPNOTSUPP if the device does not support the unload feature.
Otherwise, writing an integer value to this file will take the heads Otherwise, writing an integer value to this file will take the heads
of the respective drive off the platter and block all I/O operations of the respective drive off the platter and block all I/O operations
...@@ -54,18 +55,18 @@ cancel a previously set timeout and resume normal operation ...@@ -54,18 +55,18 @@ cancel a previously set timeout and resume normal operation
immediately by specifying a timeout of 0. Values below -2 are rejected immediately by specifying a timeout of 0. Values below -2 are rejected
with -EINVAL (see below for the special meaning of -1 and -2). If the with -EINVAL (see below for the special meaning of -1 and -2). If the
timeout specified for a recent head park request has not yet expired, timeout specified for a recent head park request has not yet expired,
reading from /sys/block/*/device/unload_heads will report the number reading from `/sys/block/*/device/unload_heads` will report the number
of milliseconds remaining until normal operation will be resumed; of milliseconds remaining until normal operation will be resumed;
otherwise, reading the unload_heads attribute will return 0. otherwise, reading the unload_heads attribute will return 0.
For example, do the following in order to park the heads of drive For example, do the following in order to park the heads of drive
/dev/sda and stop all I/O operations for five seconds: /dev/sda and stop all I/O operations for five seconds::
# echo 5000 > /sys/block/sda/device/unload_heads # echo 5000 > /sys/block/sda/device/unload_heads
A simple A simple::
# cat /sys/block/sda/device/unload_heads # cat /sys/block/sda/device/unload_heads
will show you how many milliseconds are left before normal operation will show you how many milliseconds are left before normal operation
will be resumed. will be resumed.
...@@ -112,9 +113,9 @@ unload_heads attribute. If you know that your device really does ...@@ -112,9 +113,9 @@ unload_heads attribute. If you know that your device really does
support the unload feature (for instance, because the vendor of your support the unload feature (for instance, because the vendor of your
laptop or the hard drive itself told you so), then you can tell the laptop or the hard drive itself told you so), then you can tell the
kernel to enable the usage of this feature for that drive by writing kernel to enable the usage of this feature for that drive by writing
the special value -1 to the unload_heads attribute: the special value -1 to the unload_heads attribute::
# echo -1 > /sys/block/sda/device/unload_heads # echo -1 > /sys/block/sda/device/unload_heads
will enable the feature for /dev/sda, and giving -2 instead of -1 will will enable the feature for /dev/sda, and giving -2 instead of -1 will
disable it again. disable it again.
...@@ -135,6 +136,7 @@ for use. Please feel free to add projects that have been the victims ...@@ -135,6 +136,7 @@ for use. Please feel free to add projects that have been the victims
of my ignorance. of my ignorance.
- http://www.thinkwiki.org/wiki/HDAPS - http://www.thinkwiki.org/wiki/HDAPS
See this page for information about Linux support of the hard disk See this page for information about Linux support of the hard disk
active protection system as implemented in IBM/Lenovo Thinkpads. active protection system as implemented in IBM/Lenovo Thinkpads.
......
:orphan:
==============
Laptop Drivers
==============
.. toctree::
:maxdepth: 1
asus-laptop
disk-shock-protection
laptop-mode
lg-laptop
sony-laptop
sonypi
thinkpad-acpi
toshiba_haps
=========================================
Sony Notebook Control Driver (SNC) Readme Sony Notebook Control Driver (SNC) Readme
----------------------------------------- =========================================
Copyright (C) 2004- 2005 Stelian Pop <stelian@popies.net>
Copyright (C) 2007 Mattia Dongili <malattia@linux.it> - Copyright (C) 2004- 2005 Stelian Pop <stelian@popies.net>
- Copyright (C) 2007 Mattia Dongili <malattia@linux.it>
This mini-driver drives the SNC and SPIC device present in the ACPI BIOS of the This mini-driver drives the SNC and SPIC device present in the ACPI BIOS of the
Sony Vaio laptops. This driver mixes both devices functions under the same Sony Vaio laptops. This driver mixes both devices functions under the same
...@@ -10,6 +12,7 @@ obsoleted by sony-laptop now. ...@@ -10,6 +12,7 @@ obsoleted by sony-laptop now.
Fn keys (hotkeys): Fn keys (hotkeys):
------------------ ------------------
Some models report hotkeys through the SNC or SPIC devices, such events are Some models report hotkeys through the SNC or SPIC devices, such events are
reported both through the ACPI subsystem as acpi events and through the INPUT reported both through the ACPI subsystem as acpi events and through the INPUT
subsystem. See the logs of /proc/bus/input/devices to find out what those subsystem. See the logs of /proc/bus/input/devices to find out what those
...@@ -28,11 +31,14 @@ If your laptop model supports it, you will find sysfs files in the ...@@ -28,11 +31,14 @@ If your laptop model supports it, you will find sysfs files in the
/sys/class/backlight/sony/ /sys/class/backlight/sony/
directory. You will be able to query and set the current screen directory. You will be able to query and set the current screen
brightness: brightness:
====================== =========================================
brightness get/set screen brightness (an integer brightness get/set screen brightness (an integer
between 0 and 7) between 0 and 7)
actual_brightness reading from this file will query the HW actual_brightness reading from this file will query the HW
to get real brightness value to get real brightness value
max_brightness the maximum brightness value max_brightness the maximum brightness value
====================== =========================================
Platform specific: Platform specific:
...@@ -45,6 +51,8 @@ You then read/write integer values from/to those files by using ...@@ -45,6 +51,8 @@ You then read/write integer values from/to those files by using
standard UNIX tools. standard UNIX tools.
The files are: The files are:
====================== ==========================================
brightness_default screen brightness which will be set brightness_default screen brightness which will be set
when the laptop will be rebooted when the laptop will be rebooted
cdpower power on/off the internal CD drive cdpower power on/off the internal CD drive
...@@ -53,21 +61,39 @@ The files are: ...@@ -53,21 +61,39 @@ The files are:
(only in debug mode) (only in debug mode)
bluetoothpower power on/off the internal bluetooth device bluetoothpower power on/off the internal bluetooth device
fanspeed get/set the fan speed fanspeed get/set the fan speed
====================== ==========================================
Note that some files may be missing if they are not supported Note that some files may be missing if they are not supported
by your particular laptop model. by your particular laptop model.
Example usage: Example usage::
# echo "1" > /sys/devices/platform/sony-laptop/brightness_default # echo "1" > /sys/devices/platform/sony-laptop/brightness_default
sets the lowest screen brightness for the next and later reboots,
sets the lowest screen brightness for the next and later reboots
::
# echo "8" > /sys/devices/platform/sony-laptop/brightness_default # echo "8" > /sys/devices/platform/sony-laptop/brightness_default
sets the highest screen brightness for the next and later reboots,
sets the highest screen brightness for the next and later reboots
::
# cat /sys/devices/platform/sony-laptop/brightness_default # cat /sys/devices/platform/sony-laptop/brightness_default
retrieves the value.
retrieves the value
::
# echo "0" > /sys/devices/platform/sony-laptop/audiopower # echo "0" > /sys/devices/platform/sony-laptop/audiopower
powers off the sound card,
powers off the sound card
::
# echo "1" > /sys/devices/platform/sony-laptop/audiopower # echo "1" > /sys/devices/platform/sony-laptop/audiopower
powers on the sound card. powers on the sound card.
...@@ -76,7 +102,8 @@ RFkill control: ...@@ -76,7 +102,8 @@ RFkill control:
More recent Vaio models expose a consistent set of ACPI methods to More recent Vaio models expose a consistent set of ACPI methods to
control radio frequency emitting devices. If you are a lucky owner of control radio frequency emitting devices. If you are a lucky owner of
such a laptop you will find the necessary rfkill devices under such a laptop you will find the necessary rfkill devices under
/sys/class/rfkill. Check those starting with sony-* in /sys/class/rfkill. Check those starting with sony-* in::
# grep . /sys/class/rfkill/*/{state,name} # grep . /sys/class/rfkill/*/{state,name}
...@@ -88,26 +115,29 @@ you are not afraid of any side effects doing strange things with ...@@ -88,26 +115,29 @@ you are not afraid of any side effects doing strange things with
your ACPI BIOS could have on your laptop), load the driver and your ACPI BIOS could have on your laptop), load the driver and
pass the option 'debug=1'. pass the option 'debug=1'.
REPEAT: DON'T DO THIS IF YOU DON'T LIKE RISKY BUSINESS. REPEAT:
**DON'T DO THIS IF YOU DON'T LIKE RISKY BUSINESS.**
In your kernel logs you will find the list of all ACPI methods In your kernel logs you will find the list of all ACPI methods
the SNC device has on your laptop. the SNC device has on your laptop.
* For new models you will see a long list of meaningless method names, * For new models you will see a long list of meaningless method names,
reading the DSDT table source should reveal that: reading the DSDT table source should reveal that:
(1) the SNC device uses an internal capability lookup table (1) the SNC device uses an internal capability lookup table
(2) SN00 is used to find values in the lookup table (2) SN00 is used to find values in the lookup table
(3) SN06 and SN07 are used to call into the real methods based on (3) SN06 and SN07 are used to call into the real methods based on
offsets you can obtain iterating the table using SN00 offsets you can obtain iterating the table using SN00
(4) SN02 used to enable events. (4) SN02 used to enable events.
Some values in the capability lookup table are more or less known, see Some values in the capability lookup table are more or less known, see
the code for all sony_call_snc_handle calls, others are more obscure. the code for all sony_call_snc_handle calls, others are more obscure.
* For old models you can see the GCDP/GCDP methods used to pwer on/off * For old models you can see the GCDP/GCDP methods used to pwer on/off
the CD drive, but there are others and they are usually different from the CD drive, but there are others and they are usually different from
model to model. model to model.
I HAVE NO IDEA WHAT THOSE METHODS DO. **I HAVE NO IDEA WHAT THOSE METHODS DO.**
The sony-laptop driver creates, for some of those methods (the most The sony-laptop driver creates, for some of those methods (the most
current ones found on several Vaio models), an entry under current ones found on several Vaio models), an entry under
......
==================================================
Sony Programmable I/O Control Device Driver Readme Sony Programmable I/O Control Device Driver Readme
-------------------------------------------------- ==================================================
Copyright (C) 2001-2004 Stelian Pop <stelian@popies.net>
Copyright (C) 2001-2002 Alcôve <www.alcove.com> - Copyright (C) 2001-2004 Stelian Pop <stelian@popies.net>
Copyright (C) 2001 Michael Ashley <m.ashley@unsw.edu.au> - Copyright (C) 2001-2002 Alcôve <www.alcove.com>
Copyright (C) 2001 Junichi Morita <jun1m@mars.dti.ne.jp> - Copyright (C) 2001 Michael Ashley <m.ashley@unsw.edu.au>
Copyright (C) 2000 Takaya Kinjo <t-kinjo@tc4.so-net.ne.jp> - Copyright (C) 2001 Junichi Morita <jun1m@mars.dti.ne.jp>
Copyright (C) 2000 Andrew Tridgell <tridge@samba.org> - Copyright (C) 2000 Takaya Kinjo <t-kinjo@tc4.so-net.ne.jp>
- Copyright (C) 2000 Andrew Tridgell <tridge@samba.org>
This driver enables access to the Sony Programmable I/O Control Device which This driver enables access to the Sony Programmable I/O Control Device which
can be found in many Sony Vaio laptops. Some newer Sony laptops (seems to be can be found in many Sony Vaio laptops. Some newer Sony laptops (seems to be
...@@ -14,6 +16,7 @@ sonypi device and are not supported at all by this driver. ...@@ -14,6 +16,7 @@ sonypi device and are not supported at all by this driver.
It will give access (through a user space utility) to some events those laptops It will give access (through a user space utility) to some events those laptops
generate, like: generate, like:
- jogdial events (the small wheel on the side of Vaios) - jogdial events (the small wheel on the side of Vaios)
- capture button events (only on Vaio Picturebook series) - capture button events (only on Vaio Picturebook series)
- Fn keys - Fn keys
...@@ -49,6 +52,7 @@ module argument syntax (<param>=<value> when passing the option to the ...@@ -49,6 +52,7 @@ module argument syntax (<param>=<value> when passing the option to the
module or sonypi.<param>=<value> on the kernel boot line when sonypi is module or sonypi.<param>=<value> on the kernel boot line when sonypi is
statically linked into the kernel). Those options are: statically linked into the kernel). Those options are:
=============== =======================================================
minor: minor number of the misc device /dev/sonypi, minor: minor number of the misc device /dev/sonypi,
default is -1 (automatic allocation, see /proc/misc default is -1 (automatic allocation, see /proc/misc
or kernel logs) or kernel logs)
...@@ -86,6 +90,8 @@ statically linked into the kernel). Those options are: ...@@ -86,6 +90,8 @@ statically linked into the kernel). Those options are:
will be tried. You can use the following bits to will be tried. You can use the following bits to
construct your own event mask (from construct your own event mask (from
drivers/char/sonypi.h): drivers/char/sonypi.h):
======================== ======
SONYPI_JOGGER_MASK 0x0001 SONYPI_JOGGER_MASK 0x0001
SONYPI_CAPTURE_MASK 0x0002 SONYPI_CAPTURE_MASK 0x0002
SONYPI_FNKEY_MASK 0x0004 SONYPI_FNKEY_MASK 0x0004
...@@ -100,22 +106,24 @@ statically linked into the kernel). Those options are: ...@@ -100,22 +106,24 @@ statically linked into the kernel). Those options are:
SONYPI_MEMORYSTICK_MASK 0x0800 SONYPI_MEMORYSTICK_MASK 0x0800
SONYPI_BATTERY_MASK 0x1000 SONYPI_BATTERY_MASK 0x1000
SONYPI_WIRELESS_MASK 0x2000 SONYPI_WIRELESS_MASK 0x2000
======================== ======
useinput: if set (which is the default) two input devices are useinput: if set (which is the default) two input devices are
created, one which interprets the jogdial events as created, one which interprets the jogdial events as
mouse events, the other one which acts like a mouse events, the other one which acts like a
keyboard reporting the pressing of the special keys. keyboard reporting the pressing of the special keys.
=============== =======================================================
Module use: Module use:
----------- -----------
In order to automatically load the sonypi module on use, you can put those In order to automatically load the sonypi module on use, you can put those
lines a configuration file in /etc/modprobe.d/: lines a configuration file in /etc/modprobe.d/::
alias char-major-10-250 sonypi alias char-major-10-250 sonypi
options sonypi minor=250 options sonypi minor=250
This supposes the use of minor 250 for the sonypi device: This supposes the use of minor 250 for the sonypi device::
# mknod /dev/sonypi c 10 250 # mknod /dev/sonypi c 10 250
...@@ -148,5 +156,5 @@ Bugs: ...@@ -148,5 +156,5 @@ Bugs:
http://www.acc.umu.se/~erikw/program/smartdimmer-0.1.tar.bz2 http://www.acc.umu.se/~erikw/program/smartdimmer-0.1.tar.bz2
- since all development was done by reverse engineering, there is - since all development was done by reverse engineering, there is
_absolutely no guarantee_ that this driver will not crash your *absolutely no guarantee* that this driver will not crash your
laptop. Permanently. laptop. Permanently.
Kernel driver toshiba_haps ====================================
Toshiba HDD Active Protection Sensor Toshiba HDD Active Protection Sensor
==================================== ====================================
Kernel driver: toshiba_haps
Author: Azael Avalos <coproscefalo@gmail.com> Author: Azael Avalos <coproscefalo@gmail.com>
0. Contents .. 0. Contents
-----------
1. Description 1. Description
2. Interface 2. Interface
3. Accelerometer axes 3. Accelerometer axes
4. Supported devices 4. Supported devices
5. Usage 5. Usage
1. Description 1. Description
...@@ -32,17 +33,20 @@ file to set the desired protection level or sensor sensibility. ...@@ -32,17 +33,20 @@ file to set the desired protection level or sensor sensibility.
------------ ------------
This device comes with 3 methods: This device comes with 3 methods:
_STA - Checks existence of the device, returning Zero if the device does not
==== =====================================================================
_STA Checks existence of the device, returning Zero if the device does not
exists or is not supported. exists or is not supported.
PTLV - Sets the desired protection level. PTLV Sets the desired protection level.
RSSS - Shuts down the HDD protection interface for a few seconds, RSSS Shuts down the HDD protection interface for a few seconds,
then restores normal operation. then restores normal operation.
==== =====================================================================
Note: Note:
The presence of Solid State Drives (SSD) can make this driver to fail loading, The presence of Solid State Drives (SSD) can make this driver to fail loading,
given the fact that such drives have no movable parts, and thus, not requiring given the fact that such drives have no movable parts, and thus, not requiring
any "protection" as well as failing during the evaluation of the _STA method any "protection" as well as failing during the evaluation of the _STA method
found under this device. found under this device.
3. Accelerometer axes 3. Accelerometer axes
...@@ -66,11 +70,18 @@ conventional HDD and not only SSD, or a combination of both HDD and SSD. ...@@ -66,11 +70,18 @@ conventional HDD and not only SSD, or a combination of both HDD and SSD.
-------- --------
The sysfs files under /sys/devices/LNXSYSTM:00/LNXSYBUS:00/TOS620A:00/ are: The sysfs files under /sys/devices/LNXSYSTM:00/LNXSYBUS:00/TOS620A:00/ are:
protection_level - The protection_level is readable and writeable, and
================ ============================================================
protection_level The protection_level is readable and writeable, and
provides a way to let userspace query the current protection provides a way to let userspace query the current protection
level, as well as set the desired protection level, the level, as well as set the desired protection level, the
available protection levels are: available protection levels are:
0 - Disabled | 1 - Low | 2 - Medium | 3 - High
reset_protection - The reset_protection entry is writeable only, being "1" ============ ======= ========== ========
0 - Disabled 1 - Low 2 - Medium 3 - High
============ ======= ========== ========
reset_protection The reset_protection entry is writeable only, being "1"
the only parameter it accepts, it is used to trigger the only parameter it accepts, it is used to trigger
a reset of the protection interface. a reset of the protection interface.
================ ============================================================
...@@ -102,7 +102,7 @@ Changing this takes effect whenever an application requests memory. ...@@ -102,7 +102,7 @@ Changing this takes effect whenever an application requests memory.
block_dump block_dump
block_dump enables block I/O debugging when set to a nonzero value. More block_dump enables block I/O debugging when set to a nonzero value. More
information on block I/O debugging is in Documentation/laptops/laptop-mode.txt. information on block I/O debugging is in Documentation/laptops/laptop-mode.rst.
============================================================== ==============================================================
...@@ -286,7 +286,7 @@ shared memory segment using hugetlb page. ...@@ -286,7 +286,7 @@ shared memory segment using hugetlb page.
laptop_mode laptop_mode
laptop_mode is a knob that controls "laptop mode". All the things that are laptop_mode is a knob that controls "laptop mode". All the things that are
controlled by this knob are discussed in Documentation/laptops/laptop-mode.txt. controlled by this knob are discussed in Documentation/laptops/laptop-mode.rst.
============================================================== ==============================================================
......
...@@ -14888,7 +14888,7 @@ M: Mattia Dongili <malattia@linux.it> ...@@ -14888,7 +14888,7 @@ M: Mattia Dongili <malattia@linux.it>
L: platform-driver-x86@vger.kernel.org L: platform-driver-x86@vger.kernel.org
W: http://www.linux.it/~malattia/wiki/index.php/Sony_drivers W: http://www.linux.it/~malattia/wiki/index.php/Sony_drivers
S: Maintained S: Maintained
F: Documentation/laptops/sony-laptop.txt F: Documentation/laptops/sony-laptop.rst
F: drivers/char/sonypi.c F: drivers/char/sonypi.c
F: drivers/platform/x86/sony-laptop.c F: drivers/platform/x86/sony-laptop.c
F: include/linux/sony-laptop.h F: include/linux/sony-laptop.h
......
...@@ -382,7 +382,7 @@ config SONYPI ...@@ -382,7 +382,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/laptops/sonypi.txt>, and say Y or M here. <file:Documentation/laptops/sonypi.rst>, 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.
......
...@@ -448,7 +448,7 @@ config SONY_LAPTOP ...@@ -448,7 +448,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/laptops/sony-laptop.txt> for more information. Read <file:Documentation/laptops/sony-laptop.rst> for more information.
config SONYPI_COMPAT config SONYPI_COMPAT
bool "Sonypi compatibility" bool "Sonypi compatibility"
...@@ -500,7 +500,7 @@ config THINKPAD_ACPI ...@@ -500,7 +500,7 @@ config THINKPAD_ACPI
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/laptops/thinkpad-acpi.txt> and <file:Documentation/laptops/thinkpad-acpi.rst> and
<http://ibm-acpi.sf.net/> . <http://ibm-acpi.sf.net/> .
This driver was formerly known as ibm-acpi. This driver was formerly known as ibm-acpi.
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment