ATP(4) | Device Drivers Manual | ATP(4) |
NAME¶
atp
— Apple
touchpad driver
SYNOPSIS¶
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"
DESCRIPTION¶
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
.
HARDWARE¶
The atp
driver provides support for the
following Product IDs:
- PowerBooks, iBooks (IDs: 0x020e, 0x020f, 0x0210, 0x0214, 0x0215, 0x0216)
- Core Duo MacBook & MacBook Pro (IDs: 0x0217, 0x0218, 0x0219)
- Core2 Duo MacBook & MacBook Pro (IDs: 0x021a, 0x021b, 0x021c)
- Core2 Duo MacBook3,1 (IDs: 0x0229, 0x022a, 0x022b)
- 12 inch PowerBook and iBook (IDs: 0x030a, 0x030b)
- 15 inch PowerBook (IDs: 0x020e, 0x020f, 0x0215)
- 17 inch PowerBook (ID: 0x020d)
- Almost all recent Macbook-Pros and Airs (IDs: 0x0223, 0x0223, 0x0224, 0x0224, 0x0225, 0x0225, 0x0230, 0x0230, 0x0231, 0x0231, 0x0232, 0x0232, 0x0236, 0x0236, 0x0237, 0x0237, 0x0238, 0x0238, 0x023f, 0x023f, 0x0240, 0x0241, 0x0242, 0x0243, 0x0244, 0x0245, 0x0246, 0x0247, 0x0249, 0x024a, 0x024b, 0x024c, 0x024d, 0x024e, 0x0252, 0x0252, 0x0253, 0x0253, 0x0254, 0x0254, 0x0259, 0x025a, 0x025b, 0x0262, 0x0262, 0x0263, 0x0264, 0x0290, 0x0291, 0x0292)
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
.
FILES¶
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.
SEE ALSO¶
sysmouse(4), usb(4), loader.conf(5), xorg.conf(5) (ports/x11/xorg), moused(8), sysctl(8)
AUTHORS¶
The atp
driver was written by
Rohit Grover
<rgrover1@gmail.com>.
February 24, 2014 | Debian |