| Kernel driver toshiba_haps | |
| Toshiba HDD Active Protection Sensor | |
| ==================================== | |
| Author: Azael Avalos <[email protected]> | |
| 0. Contents | |
| ----------- | |
| 1. Description | |
| 2. Interface | |
| 3. Accelerometer axes | |
| 4. Supported devices | |
| 5. Usage | |
| 1. Description | |
| -------------- | |
| This driver provides support for the accelerometer found in various Toshiba | |
| laptops, being called "Toshiba HDD Protection - Shock Sensor" officialy, | |
| and detects laptops automatically with this device. | |
| On Windows, Toshiba provided software monitors this device and provides | |
| automatic HDD protection (head unload) on sudden moves or harsh vibrations, | |
| however, this driver only provides a notification via a sysfs file to let | |
| userspace tools or daemons act accordingly, as well as providing a sysfs | |
| file to set the desired protection level or sensor sensibility. | |
| 2. Interface | |
| ------------ | |
| This device comes with 3 methods: | |
| _STA - Checks existence of the device, returning Zero if the device does not | |
| exists or is not supported. | |
| PTLV - Sets the desired protection level. | |
| RSSS - Shuts down the HDD protection interface for a few seconds, | |
| then restores normal operation. | |
| Note: | |
| 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 | |
| any "protection" as well as failing during the evaluation of the _STA method | |
| found under this device. | |
| 3. Accelerometer axes | |
| --------------------- | |
| This device does not report any axes, however, to query the sensor position | |
| a couple HCI (Hardware Configuration Interface) calls (0x6D and 0xA6) are | |
| provided to query such information, handled by the kernel module toshiba_acpi | |
| since kernel version 3.15. | |
| 4. Supported devices | |
| -------------------- | |
| This driver binds itself to the ACPI device TOS620A, and any Toshiba laptop | |
| with this device is supported, given the fact that they have the presence of | |
| conventional HDD and not only SSD, or a combination of both HDD and SSD. | |
| 5. Usage | |
| -------- | |
| The sysfs files under /sys/devices/LNXSYSTM:00/LNXSYBUS:00/TOS620A:00/ are: | |
| protection_level - The protection_level is readable and writeable, and | |
| provides a way to let userspace query the current protection | |
| level, as well as set the desired protection level, the | |
| available protection levels are: | |
| 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 | |
| a reset of the protection interface. |