ATP(4) | Device Drivers Manual | ATP(4) |
atp
— Apple
touchpad driver
To compile this driver into the kernel, place the following lines into your kernel configuration file:
device atp
device usb
Alternatively, to load the driver as a module at boot time, place the following line in loader.conf(5):
atp_load="YES"
The atp
driver provides support for the
Apple Internal Trackpad device found in many Apple laptops. Older
(Fountain/Geyser) and the newer (Wellspring) trackpad families are all
supported through a unified driver.
The driver simulates a three-button mouse using multi-finger tap detection. Single finger tap generates a left-button click; two-finger tap maps to the middle button; whereas a three-finger tap gets treated as a right button click.
There is support for 2-finger horizontal scrolling, which translates to page-back/forward events; vertical multi-finger scrolling emulates the mouse wheel.
A double-tap followed by a drag is treated as a selection gesture; a virtual left-button click is assumed for the lifespan of the drag.
atp
supports dynamic reconfiguration using
sysctl(8); through nodes under
hw.usb.atp
. Pointer sensitivity can be controlled
using the sysctl tunable hw.usb.atp.scale_factor
.
Smaller values of scale_factor result in faster
movement. A simple high-pass filter is used to reduce contributions from
small movements; the threshold for this filter may be controlled by
hw.usb.atp.small_movement
. The maximum tolerable
duration of a touch gesture is controlled by
hw.usb.atp.touch_timeout
(in microseconds); beyond
this period, touches are considered to be slides. (This conversion also
happens when a finger stroke accumulates at least
hw.usb.atp.slide_min_movement
movement (in mickeys).
The maximum time (in microseconds) to allow an association between a double-
tap and drag gesture may be controlled by
hw.usb.atp.double_tap_threshold
. Should one want to
disable tap detection and rely only upon physical button presses, set the
following sysctl to a value of 2
hw.usb.atp.tap_minimum
.
The atp
driver provides support for the
following Product IDs:
To discover the product-id of a touchpad, search for 'Trackpad' in
the output of lshal(1) and look up the property
usb_device.product_id
.
atp
creates a blocking pseudo-device file,
/dev/atp0, which presents the mouse as a
sysmouse or mousesystems type
device--see moused(8) for an explanation of these mouse
types.
sysmouse(4), usb(4), loader.conf(5), xorg.conf(5) (ports/x11/xorg), moused(8), sysctl(8)
The atp
driver was written by
Rohit Grover
<rgrover1@gmail.com>.
February 24, 2014 | Debian |