Merge branch 'for-linville' of git://github.com/kvalo/ath
[firefly-linux-kernel-4.4.55.git] / Documentation / laptops / toshiba_haps.txt
1 Kernel driver toshiba_haps
2 Toshiba HDD Active Protection Sensor
3 ====================================
4
5 Author: Azael Avalos <coproscefalo@gmail.com>
6
7
8 0. Contents
9 -----------
10
11 1. Description
12 2. Interface
13 3. Accelerometer axes
14 4. Supported devices
15 5. Usage
16
17
18 1. Description
19 --------------
20
21 This driver provides support for the accelerometer found in various Toshiba
22 laptops, being called "Toshiba HDD Protection - Shock Sensor" officialy,
23 and detects laptops automatically with this device.
24 On Windows, Toshiba provided software monitors this device and provides
25 automatic HDD protection (head unload) on sudden moves or harsh vibrations,
26 however, this driver only provides a notification via a sysfs file to let
27 userspace tools or daemons act accordingly, as well as providing a sysfs
28 file to set the desired protection level or sensor sensibility.
29
30
31 2. Interface
32 ------------
33
34 This device comes with 3 methods:
35 _STA -  Checks existence of the device, returning Zero if the device does not
36         exists or is not supported.
37 PTLV -  Sets the desired protection level.
38 RSSS -  Shuts down the HDD protection interface for a few seconds,
39         then restores normal operation.
40
41 Note:
42 The presence of Solid State Drives (SSD) can make this driver to fail loading,
43 given the fact that such drives have no movable parts, and thus, not requiring
44 any "protection" as well as failing during the evaluation of the _STA method
45 found under this device.
46
47
48 3. Accelerometer axes
49 ---------------------
50
51 This device does not report any axes, however, to query the sensor position
52 a couple HCI (Hardware Configuration Interface) calls (0x6D and 0xA6) are
53 provided to query such information, handled by the kernel module toshiba_acpi
54 since kernel version 3.15.
55
56
57 4. Supported devices
58 --------------------
59
60 This driver binds itself to the ACPI device TOS620A, and any Toshiba laptop
61 with this device is supported, given the fact that they have the presence of
62 conventional HDD and not only SSD, or a combination of both HDD and SSD.
63
64
65 5. Usage
66 --------
67
68 The sysfs files under /sys/devices/LNXSYSTM:00/LNXSYBUS:00/TOS620A:00/ are:
69 protection_level - The protection_level is readable and writeable, and
70                    provides a way to let userspace query the current protection
71                    level, as well as set the desired protection level, the
72                    available protection levels are:
73                    0 - Disabled | 1 - Low | 2 - Medium | 3 - High
74 reset_protection - The reset_protection entry is writeable only, being "1"
75                    the only parameter it accepts, it is used to trigger
76                    a reset of the protection interface.