History log of /drivers/input/mouse/bcm5974.c
Revision Date Author Comments
7491f3dffd99fadf1239011c0ab5346925618dae 14-Feb-2012 Chase Douglas <chase.douglas@canonical.com> bcm5974: Add pointer and buttonpad properties

To simplify detection as a touchpad, inform userspace of the physical
properties of the device.

Signed-off-by: Chase Douglas <chase.douglas@canonical.com>
[rydberg@euromail.se: conflict resolution]
Signed-off-by: Henrik Rydberg <rydberg@euromail.se>
52965cc012f7a3cf35f06485ec275ebf3b3fddae 11-Jan-2012 Jussi Pakkanen <jussi.pakkanen@canonical.com> Input: bcm5974 - set BUTTONPAD property

Some bcm5974 trackpads have a physical button beneath the physical surface.
This patch sets the property bit so user space applications can detect the
trackpad type and act accordingly.

Signed-off-by: Jussi Pakkanen <jussi.pakkanen@canonical.com>
Reviewed-by: Henrik Rydberg <rydberg@euromail.se>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
08642e7c52cf43616821520828e504bc717e54a6 18-Nov-2011 Greg Kroah-Hartman <gregkh@suse.de> USB: convert drivers/input/* to use module_usb_driver()

This converts the drivers in drivers/input/* to use the
module_usb_driver() macro which makes the code smaller and a bit
simpler.

Added bonus is that it removes some unneeded kernel log messages about
drivers loading and/or unloading.

Cc: Dmitry Torokhov <dmitry.torokhov@gmail.com>
Cc: Ville Syrjala <syrjala@sci.fi>
Cc: Henk Vergonet <Henk.Vergonet@gmail.com>
Cc: Alessandro Rubini <rubini@ipvvis.unipv.it>
Cc: Henrik Rydberg <rydberg@euromail.se>
Cc: "Magnus Hörlin" <magnus@alefors.se>
Cc: Chris Moeller <kode54@gmail.c>
Cc: Christoph Fritz <chf.fritz@googlemail.com>
Cc: Lucas De Marchi <lucas.demarchi@profusion.mobi>
Cc: Jesper Juhl <jj@chaosbits.net>
Cc: Edwin van Vliet <edwin@cheatah.nl>
Cc: Ping Cheng <pingc@wacom.com>
Cc: Eduard Hasenleithner <eduard@hasenleithner.at>
Cc: Alexander Strakh <strakh@ispras.ru>
Cc: Glenn Sommer <gsommer@datanordisk.dk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
1c601beaf21671b5033169d04efeda462bf58f01 09-Sep-2011 Pieter-Augustijn Van Malleghem <p-a@scarlet.be> Input: bcm5974 - add MacBookAir4,1 trackpad support

This patch adds trackpad support for the MacBookAir4,1, released in July 2011.
It is very similar to the MacBookAir4,2 patch submitted by Joshua Dillon and
Chase Douglas.

Signed-off-by: Pieter-Augustijn Van Malleghem <p-a@scarlet.be>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
c331eb580a0a7906c0cdb8dbae3cfe99e3c0e555 16-Aug-2011 Andrew Drake <adrake@adrake.org> Input: bcm5974 - Add support for newer MacBookPro8,2

New MacBook Pro devices reporting product name MacBookPro8,2 come with
newer/higher resolution touchpads than others with the same product
name with USB ID 05ac:0252. This patch adds support for these devices.

Signed-off-by: Andrew Drake <adrake@adrake.org>
Reviewed-by: Wanlong Gao <gaowanlong@cn.fujitsu.com>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
db0b34b07438d92c4c190998c42a502fbf90064e 09-Aug-2011 Joshua V. Dillon <jvdillon@gmail.com> Input: bcm5974 - add support for touchpads found in MacBookAir4,2

Added USB device IDs for MacBookAir4,2 trackpad. Device constants were
copied from the MacBookAir3,2 constants. The 4,2 device specification is
reportedly unchanged from the 3,2 predecessor and seems to work well.

Signed-off-by: Joshua V Dillon <jvdillon@gmail.com>
Signed-off-by: Chase Douglas <chase.douglas@canonical.com>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
25985edcedea6396277003854657b5f3cb31a628 31-Mar-2011 Lucas De Marchi <lucas.demarchi@profusion.mobi> Fix common misspellings

Fixes generated by 'codespell' and manually reviewed.

Signed-off-by: Lucas De Marchi <lucas.demarchi@profusion.mobi>
47340bd9fefb571888836da942b5aee0e85e959c 13-Mar-2011 Andy Botting <andy@andybotting.com> Input: bcm5974 - add support for MacBookPro8

This patch add multitouch support for the MacBookPro8,1 and
MacBookPro8,2 models.

Cc: stable@kernel.org
Signed-off-by: Andy Botting <andy@andybotting.com>
Signed-off-by: Henrik Rydberg <rydberg@euromail.se>
Acked-by: Jiri Kosina <jkosina@suse.cz>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
5063511539bbb436ae8e4f75409561ef547f8516 25-Feb-2011 Henrik Rydberg <rydberg@euromail.se> Input: bcm5974 - Report button also for zero fingers

With the current code, pressing the integrated button with an
isolating tool does not result in any button report. Fixed
with this this patch.

Signed-off-by: Henrik Rydberg <rydberg@euromail.se>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
6021afcf19d8c6f5db6d11cadcfb6a22d0c28a48 09-Nov-2010 Edgar (gimli) Hucek <gimli@dark-green.com> input: bcm5974: Add support for MacBookAir3

This patch adds support for the MacBookAir3,1 and MacBookAir3,2
models.

[rydberg@euromail.se: touchpad range calibration]
Cc: stable@kernel.org
Signed-off-by: Edgar (gimli) Hucek <gimli@dark-green.com>
Signed-off-by: Henrik Rydberg <rydberg@euromail.se>
Signed-off-by: Jiri Kosina <jkosina@suse.cz>
57157becdd1d23e6c2b8661ffe6c78d7d605d121 01-Sep-2010 Henrik Rydberg <rydberg@euromail.se> Input: bcm5974 - adjust major/minor to scale

By visual inspection, the reported touch_major and touch_minor axes
are a factor of two too small. Presumably the device actually reports
the semi-major and semi-minor axes. Corrected with this patch.

Signed-off-by: Henrik Rydberg <rydberg@euromail.se>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
c13aea033cbeb181e7e135f280ecdfca49f90180 23-Jun-2010 Henrik Rydberg <rydberg@euromail.se> Input: bcm5974 - set the average number of events per MT event packet

The MT devices produce a lot of data. Tell the underlying input device
approximately how many events will be sent per synchronization, to allow
for better buffering. The number is a template based on continuously
reporting details for each finger on a single hand.

Signed-off-by: Henrik Rydberg <rydberg@euromail.se>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
1719ec4136035472d3e83a373908dd1b186dbc0b 08-Jun-2010 Luo Jinghua <sunmoon1997@gmail.com> Input: bcm5974 - turn wellspring mode off if failed to start traffic

If we fail to submit URBs we should take touchpad out of wellsping
mode.

Signed-off-by: Luo Jinghua <sunmoon1997@gmail.com>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
997ea58eb92f9970b8af7aae48800d0ef43b9423 12-Apr-2010 Daniel Mack <daniel@caiaq.de> USB: rename usb_buffer_alloc() and usb_buffer_free() users

For more clearance what the functions actually do,

usb_buffer_alloc() is renamed to usb_alloc_coherent()
usb_buffer_free() is renamed to usb_free_coherent()

They should only be used in code which really needs DMA coherency.

All call sites have been changed accordingly, except for staging
drivers.

Signed-off-by: Daniel Mack <daniel@caiaq.de>
Cc: Alan Stern <stern@rowland.harvard.edu>
Cc: Pedro Ribeiro <pedrib@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
d90e6f6aad0ffdc674bc3a05c85c40dcc18e604c 20-Mar-2010 Henrik Rydberg <rydberg@euromail.se> Input: bcm5974 - retract efi-broken suspend_resume

With the recent system-wide improvements on suspend/resume and EFI
booting the suspend_resume method of the bcm5974 has broken. When
waking up from the S3 state on the MacBookAir, the trackpad is found
in a yet unknown state, unable to switch to the proper multitouch
mode. The result is a frozen touchpad, and a flood of errors of the
kind

bcm5974: bad trackpad package, length: 8.

This patch retracts the reset_resume method altogether, falling back
on the generic unbind/rebind functionality of the usb layer until
further investigations can be made as how to reset the device when
booting from efi.

Signed-off-by: Henrik Rydberg <rydberg@euromail.se>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
6f2701b79f2ee0c5eb946e8a87993acbe8041da3 06-Jan-2010 Henrik Rydberg <rydberg@euromail.se> Input: bcm5974 - report ABS_MT events

Make bcm5974 report raw multi-touch (MT) data in the form of ABS_MT events.

[dtor@mail.ru: get rid of module option, always report all events]
Signed-off-by: Henrik Rydberg <rydberg@euromail.se>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
9de48cc300fb10f7d9faa978670becf5e352462a 13-Sep-2009 Henrik Rydberg <rydberg@bitmath.org> Input: bcm5974 - silence uninitialized variables warnings

Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
5340219317a3370a4b76a2b6f31b1e5a3dbc648b 28-Apr-2009 Henrik Rydberg <rydberg@euromail.se> Input: bcm5974 - augment debug information

Add more button and finger data to the debug output.

Signed-off-by: Henrik Rydberg <rydberg@euromail.se>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
158e928741e58eb4aa379da422290c10fef23f00 28-Apr-2009 Henrik Rydberg <rydberg@euromail.se> Input: bcm5974 - Add support for the Macbook 5 (Unibody)

This patch adds support for the new unibody Macbook, with physically
integrated button and trackpad. Since the integrated button changes
the logic for touch-and-click, a device capability bit mask is now
reported in input_id.version, which can be picked up by user space
via a EVIOCGID call.

Signed-off-by: Henrik Rydberg <rydberg@euromail.se>
Tested-by: David M. Lary <dmlary@gmail.com>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
6916d97f6e25cc66a32d6e9a16419067d843b14f 27-Apr-2009 Henrik Rydberg <rydberg@euromail.se> Input: bcm5974 - add quad-finger tapping

The integrated button on the new unibody Macbooks presents a need to
report explicit four-finger actions. Evidently, the finger pressing
the button is also touching the trackpad, so in order to fully support
three-finger actions, the driver must be able to report four-finger
actions. This patch adds a new button, BTN_TOOL_QUADTAP, which
achieves this.

Signed-off-by: Henrik Rydberg <rydberg@euromail.se>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
9894cf0ff5e9ccda60d8d0e2d37bd61539b08826 27-Apr-2009 Henrik Rydberg <rydberg@euromail.se> Input: bcm5974 - prepare for a new trackpad header type

The new unibody Macbooks are equipped with an integrated button and
trackpad. The package header of the trackpad interface has changed to
also contain information about the integrated button. This patch
performs the necessary preparations to allow for the new package
header.

Signed-off-by: Henrik Rydberg <rydberg@euromail.se>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
cd72ad3f57c400baa2ddb78b4fc2781cf68ffb6f 14-Sep-2008 Henrik Rydberg <rydberg@euromail.se> Input: bcm5974 - switch back to normal mode when closing

Staying in multi-touch mode after closing the device sometimes makes
the keyboard drop keys or repeat keys irratically. The conjecture is
that some internal buffer starts to overflow, resulting in undefined
behavior. Switching back to normal mode when closing the device makes
the problem go away.

Signed-off-by: Henrik Rydberg <rydberg@euromail.se>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
a6821f345fd508b17f5ce310b677b37aefb028dc 05-Sep-2008 Henrik Rydberg <rydberg@euromail.se> Input: bcm5974 - add BTN_TOUCH event for mousedev benefit

The mousedev driver requires the use of BTN_TOUCH events to process
ABS_X and ABS_Y events properly, which is what is needed for the
bcm5974-based apple computers to have a functional pointer out-of-the-box.

Signed-off-by: Henrik Rydberg <rydberg@euromail.se>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
75e21e3f3bb2b4a41bb0646a4d54eef27eb36ca5 05-Sep-2008 Henrik Rydberg <rydberg@euromail.se> Input: bcm5974 - improve finger tracking and counting

The problem of finger tracking, i.e., when to switch focus from one
finger to another on the trackpad, has been improved by utilizing more
information from the bcm5974 chip output. This results in less pointer
hopping when many fingers are on the trackpad. In addition, a finger
counting method based on pressure information from all fingers is
introduced. Together with a pressure hysteresis window, this yields a
more stable counting of the number of fingers on the trackpad.

Signed-off-by: Henrik Rydberg <rydberg@euromail.se>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
158e0fb6028a2329425d8287b1b2402a12ed4f28 05-Sep-2008 Henrik Rydberg <rydberg@euromail.se> Input: bcm5974 - small formatting cleanup

Signed-off-by: Henrik Rydberg <rydberg@euromail.se>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
88da765f4d5f59f67a7a51c8f5d608a836b32133 08-Aug-2008 Dmitry Torokhov <dmitry.torokhov@gmail.com> Input: bcm5974 - implement autosuspend support

Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
f89bd95c5c946776f116ffeb997653d4193d6a35 08-Aug-2008 Henrik Rydberg <rydberg@euromail.se> Input: bcm5974 - add driver for Macbook Air and Pro Penryn touchpads

This driver adds support for the multitouch trackpad on the new
Apple Macbook Air and Macbook Pro Penryn laptops. It replaces the
appletouch driver on those computers, and integrates well with the
synaptics driver of the Xorg system.

[dtor@mail.ru: various cleanups]
Signed-off-by: Henrik Rydberg <rydberg@euromail.se>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>