rjw | 1f88458 | 2022-01-06 17:20:42 +0800 | [diff] [blame^] | 1 | .. include:: <isonum.txt> |
| 2 | |
| 3 | ------------------------ |
| 4 | BCM5974 Driver (bcm5974) |
| 5 | ------------------------ |
| 6 | |
| 7 | :Copyright: |copy| 2008-2009 Henrik Rydberg <rydberg@euromail.se> |
| 8 | |
| 9 | The USB initialization and package decoding was made by Scott Shawcroft as |
| 10 | part of the touchd user-space driver project: |
| 11 | |
| 12 | :Copyright: |copy| 2008 Scott Shawcroft (scott.shawcroft@gmail.com) |
| 13 | |
| 14 | The BCM5974 driver is based on the appletouch driver: |
| 15 | |
| 16 | :Copyright: |copy| 2001-2004 Greg Kroah-Hartman (greg@kroah.com) |
| 17 | :Copyright: |copy| 2005 Johannes Berg (johannes@sipsolutions.net) |
| 18 | :Copyright: |copy| 2005 Stelian Pop (stelian@popies.net) |
| 19 | :Copyright: |copy| 2005 Frank Arnold (frank@scirocco-5v-turbo.de) |
| 20 | :Copyright: |copy| 2005 Peter Osterlund (petero2@telia.com) |
| 21 | :Copyright: |copy| 2005 Michael Hanselmann (linux-kernel@hansmi.ch) |
| 22 | :Copyright: |copy| 2006 Nicolas Boichat (nicolas@boichat.ch) |
| 23 | |
| 24 | This driver adds support for the multi-touch trackpad on the new Apple |
| 25 | Macbook Air and Macbook Pro laptops. It replaces the appletouch driver on |
| 26 | those computers, and integrates well with the synaptics driver of the Xorg |
| 27 | system. |
| 28 | |
| 29 | Known to work on Macbook Air, Macbook Pro Penryn and the new unibody |
| 30 | Macbook 5 and Macbook Pro 5. |
| 31 | |
| 32 | Usage |
| 33 | ----- |
| 34 | |
| 35 | The driver loads automatically for the supported usb device ids, and |
| 36 | becomes available both as an event device (/dev/input/event*) and as a |
| 37 | mouse via the mousedev driver (/dev/input/mice). |
| 38 | |
| 39 | USB Race |
| 40 | -------- |
| 41 | |
| 42 | The Apple multi-touch trackpads report both mouse and keyboard events via |
| 43 | different interfaces of the same usb device. This creates a race condition |
| 44 | with the HID driver, which, if not told otherwise, will find the standard |
| 45 | HID mouse and keyboard, and claim the whole device. To remedy, the usb |
| 46 | product id must be listed in the mouse_ignore list of the hid driver. |
| 47 | |
| 48 | Debug output |
| 49 | ------------ |
| 50 | |
| 51 | To ease the development for new hardware version, verbose packet output can |
| 52 | be switched on with the debug kernel module parameter. The range [1-9] |
| 53 | yields different levels of verbosity. Example (as root):: |
| 54 | |
| 55 | echo -n 9 > /sys/module/bcm5974/parameters/debug |
| 56 | |
| 57 | tail -f /var/log/debug |
| 58 | |
| 59 | echo -n 0 > /sys/module/bcm5974/parameters/debug |
| 60 | |
| 61 | Trivia |
| 62 | ------ |
| 63 | |
| 64 | The driver was developed at the ubuntu forums in June 2008 [#f1]_, and now has |
| 65 | a more permanent home at bitmath.org [#f2]_. |
| 66 | |
| 67 | .. Links |
| 68 | |
| 69 | .. [#f1] http://ubuntuforums.org/showthread.php?t=840040 |
| 70 | .. [#f2] http://bitmath.org/code/ |