summaryrefslogtreecommitdiff
path: root/drivers/input/tablet
AgeCommit message (Collapse)AuthorFilesLines
2014-03-31Input: wacom - make sure touch_max is set for touch devicesPing Cheng1-2/+5
commit 1d0d6df02750b4a6f466768cbfbf860e24f4c8d4 upstream. Old single touch Tablet PCs do not have touch_max set at wacom_features. Since touch device at lease supports one finger, assign touch_max to 1 when touch usage is defined in its HID Descriptor and touch_max is not pre-defined. Tested-by: Jason Gerecke <killertofu@gmail.com> Signed-off-by: Ping Cheng <pingc@wacom.com> Reviewed-by: Chris Bagwell <chris@cnpbagwell.com> Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com> Cc: Josh Boyer <jwboyer@fedoraproject.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2013-06-18Input: wacom - add a new stylus (0x100802) for Intuos5 and CintiqsPing Cheng1-0/+2
Signed-off-by: Ping Cheng <pingc@wacom.com> Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
2013-06-04Input: wacom - fix a typo for Cintiq 22HDTPing Cheng1-3/+5
And make the lines easier to read. Signed-off-by: Ping Cheng <pingc@wacom.com> Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
2013-05-23Input: wacom - add an eraser to DTH2242/DTK2241Ping Cheng1-4/+15
plus send begin and end of express keys events for Cintiq 13HD and DTH2242/DTK2241 Signed-off-by: Ping Cheng <pingc@wacom.com> Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
2013-05-05Input: wacom - add a few new styli for Cintiq seriesPing Cheng1-19/+17
Add new styli for Cintiq 13HD and 22HD. Update comments for for tools. Check whole 10 nibbles of tool ID for tool types. Remove unuecessary tool type for Intuos series PAD. Signed-off-by: Ping Cheng <pingc@wacom.com> Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
2013-05-05Input: wacom - add three new display tabletsPing Cheng2-0/+37
Cintiq 13HD, DTK 2241, and Cintiq 22HDT are supported. Signed-off-by: Ping Cheng <pingc@wacom.com> Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
2013-04-19Input: wacom - fix "can not retrieve extra class descriptor" for DTH2242Ping Cheng1-1/+1
Same as Cintiq 24HDT, DTH2242 has two interfaces sharing one configuration. This patch ignores the second interface. Signed-off-by: Ping Cheng <pingc@wacom.com> Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
2013-04-19Input: wacom - DTH2242 Grip Pen id was off by one bitPing Cheng1-1/+1
Signed-off-by: Ping Cheng <pingc@wacom.com> Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
2013-04-15Input: wacom - correct reported resolution for Intuos4 WirelessJason Gerecke1-1/+1
Reported-by: Przemo Firszt <przemo@firszt.eu> Signed-off-by: Jason Gerecke <killertofu@gmail.com> Tested-by: Przemo Firszt <przemo@firszt.eu> Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
2013-04-07Input: wacom - fix "can not retrieve extra class descriptor" for 24HDTJason Gerecke1-1/+1
The MFT device in the Cintiq 24HDT has two interfaces sharing the same configuration. Without this patch, the driver attempts to make use of both interfaces, even though the second interface is not compatible with this driver. Signed-off-by: Jason Gerecke <killertofu@gmail.com> Tested-by: Ping Cheng <pingc@wacom.com> Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
2013-03-09Input: wacom - add support for 0x10dStephan Frank1-0/+4
It is a Wacom device found in Fujitsu Lifebook T902. Signed-off-by: Stephan Frank <sfrank@cs.tu-berlin.de> Acked-by: Ping Cheng <pingc@wacom.com> Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
2013-02-19Merge branch 'next' into for-linusDmitry Torokhov2-102/+92
Prepare first set of updates for 3.9 merge window.
2013-02-13Input: wacom - add support for DTH-2242Ping Cheng2-1/+25
It is a pen with 10 finger touch device. Signed-off-by: Ping Cheng <pingc@wacom.com> Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
2013-01-23Input: wacom - fix wacom_set_report retry logicChris Bagwell1-3/+3
Logic sets a value and then reads it back to make sure it worked and retries write on failures. Since read and write share a buffer, it needs to be set back up before writing though. Issue is not seen a lot because 1) it doesn't need to retry for a lot of tablets and 2) a lot of failures that need a retry are from an -ETIMEDOUT and hopefully buffer is not touched in this case. At least one user has shown logs with buffer being modified during -ETIMEDOUT case with linux 3.7 kernel. Signed-off-by: Chris Bagwell <chris@cnpbagwell.com> Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
2013-01-06Input: wacom - use new input-mt routinesPing Cheng2-61/+22
This patch brings wacom driver in-sync with input-mt changes made in release 3.7. Signed-off-by: Ping Cheng <pingc@wacom.com> Reviewed-by: Henrik Rydberg <rydberg@euromail.se> Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
2013-01-06Input: wacom - prepare for syncing with input-mt changesPing Cheng1-40/+45
Henrik added new MT routines in release 3.7. This patch is to prepare for the use of new MT routines. In the newly added wacom_abs_set_axis() function, the first if-statement assigns ABS_X/Y for number of contacts less or equal to 2. So, it is single and 2 finger touch devices. Two finger touch devices are processed here since they will not use the updated input_mt_init_slots(), which does not offer benefit to those devices. input_mt_init_slots() will take care of ABS_X/Y assignment when flags are not zero. All touch devices with more than two contacts will use input_mt_init_slots() with non-zero flags. The second if-statement is for all MT devices, which include two finger touch devices. Signed-off-by: Ping Cheng <pingc@wacom.com> Reviewed-by: Henrik Rydberg <rydberg@euromail.se> Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
2012-12-16Merge branch 'next' into for-linusDmitry Torokhov3-21/+68
Prepare first set of updates for 3.8 merge window.
2012-12-03Input: wacom - fix touch support for Bamboo Fun CTH-461Diego Calleja1-1/+2
Commit f393ee2b814e3291c12565000210b3cf10aa5c1d forgot to add the touch_max property for Wacom Bamboo Fun CTH-461/S, ID 056a:00d2. This broke the touch functionality for that device. This patch, (done with help of Ping Cheng), adds the correct value and makes touch work again. Signed-off-by: Diego Calleja <diegocg@gmail.com> Reviewed-by: Ping Cheng <pinglinux@gmail.com> Cc: stable@kernel.org Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
2012-11-21Input: wacom - add support for a new MT device (0x4001)Ping Cheng1-0/+4
It supports 10 fingers. Signed-off-by: Ping Cheng <pingc@wacom.com> Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
2012-11-21Input: wacom - simplify type check for newer V5 devicesPing Cheng1-3/+1
The updated type enum enables this implementation. Signed-off-by: Ping Cheng <pingc@wacom.com> Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
2012-11-08Input: wacom - add support for 2 new multi-touch tablets (0x100 and 0x101)Ping Cheng3-3/+25
This adds support for the two new multi-touch tablets. Signed-off-by: Ping Cheng <pinglinux@gmail.com> Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
2012-11-08Input: wacom - clean up device type codePing Cheng1-15/+38
Use switch instead of if statement to verify device types Signed-off-by: Ping Cheng <pinglinux@gmail.com> Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
2012-10-30Input: wacom - correct bad Cintiq 24HD checkJason Gerecke1-1/+1
Signed-off-by: Fengguang Wu <fengguang.wu@intel.com> Signed-off-by: Jason Gerecke <killertofu@gmail.com> Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
2012-10-30Merge tag 'v3.7-rc3' into for-linus to sync up with recent USB changesDmitry Torokhov3-5/+139
2012-10-25Input: wacom - add touch sensor support for Cintiq 24HD touchJason Gerecke3-3/+104
Decode multitouch reports from the touch sensor of the Cintiq 24HD touch. Signed-off-by: Jason Gerecke <killertofu@gmail.com> Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2012-10-25Input: wacom - handle split-sensor devices with internal hubsJason Gerecke3-2/+35
Like our other pen-and-touch products, the Cintiq 24HD touch needs data to be shared between its two sensors to facilitate proximity-based palm rejection. Unlike other tablets that report sensor data through separate interfaces of the same USB device, the Cintiq 24HD touch has separate USB devices that are connected to an internal USB hub. This patch makes it possible to designate the USB VID/PID of the other device so that the two may share data. To ensure we don't accidentally link to a sensor from a physically separate device (if several have been plugged in), we limit the search to siblings (i.e., devices directly connected to the same hub). Signed-off-by: Jason Gerecke <killertofu@gmail.com> Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2012-10-25Input: wacom - add INPUT_PROP_DIRECT flag to Cintiq 24HDJason Gerecke1-0/+3
Signed-off-by: Jason Gerecke <killertofu@gmail.com> Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
2012-10-11Merge branch 'next' into for-linusDmitry Torokhov2-48/+133
Prepare second set of updates for 3.7 merge window (Wacom driver update and patches extending number of input minors).
2012-10-04Input: wacom - clean up wacom_query_tablet_dataJason Gerecke1-39/+35
Rewrites this function to be easier to read and understand. The new function 'wacom_set_device_mode' now handles the grunt work of assembling the proper feature report, sending it to the device, and ensuring the setting "sticks". Signed-off-by: Jason Gerecke <killertofu@gmail.com> Tested-by: Ping Cheng <pingc@wacom.com> Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
2012-10-04Input: wacom - introduce wacom_fix_phy_from_hidJason Gerecke1-0/+71
The Cintiq 24HD touch cannot use wacom_set_phy_from_res to determine the physical size of the touch sensor since the pen and touch are on separate USB devices. The physical size is, however, provided in the HID descriptor, just scaled to a unit we don't use. This patch introduces the function wacom_fix_phy_from_hid to let us make use of the unit and exponent data provided by HID to set the [xy]_phy variables to an appropriate value. This function relies on a trimmed-down version of hidinput_calc_abs_res from the hid-input.c. Signed-off-by: Jason Gerecke <killertofu@gmail.com> Tested-by: Ping Cheng <pingc@wacom.com> Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
2012-10-03Input: wacom - allow any multi-input Intuos device to set proxJason Gerecke1-2/+2
The ability to set the proximity flag should apply to any device that has both pen and touch input. Rather than listing classes of devices known to meet this criteria, simply filter on the quirk defining all such devices. Signed-off-by: Jason Gerecke <killertofu@gmail.com> Tested-by: Ping Cheng <pingc@wacom.com> Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
2012-10-03Input: wacom - report correct touch contact size for I5/BambooJason Gerecke1-4/+22
This changes how the touch packets for Intuos5 and 3rd-gen Bamboo are interpreted, so that proper values for the MAJOR and MINOR axes are reported. Instead of using the amplitude field (data[6]), we use the size field (data[5]) and do some calculation to transform it from a scaled-down area into axis lengths. Note that even though we assume a circular contact, both MAJOR and MINOR are reported since the resolution of the X and Y axes differ. Signed-off-by: Jason Gerecke <killertofu@gmail.com> Reviewed-by: Chris Bagwell <chris@cnpbagwell.com> Acked-by: Ping Cheng <pingc@wacom.com> Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
2012-10-01Merge branch 'for-next' of git://github.com/rydberg/linux into nextDmitry Torokhov1-3/+3
Merge Henrik's updates to multitouch code. Even though Jiri already pulled them in I need to do it too since my changes to evdev using dynamic major would clash with them.
2012-09-28Input: wacom - mark Intuos5 pad as in-prox when touching buttonsJason Gerecke1-1/+1
If the ExpressKeys on the Intuos5 are touched, they currently result an out-of-prox packet being sent even if the pad is already out of prox. This can cause some confusion in the X driver. To restore the expected semantics, we make being touched a sufficient condition to signal proximity. https://bugs.freedesktop.org/show_bug.cgi?id=54250 Reported-by: Timo Aaltonen <tjaalton@ubuntu.com> Signed-off-by: Jason Gerecke <killertofu@gmail.com> Reviewed-by: Chris Bagwell <chris@cnpbagwell.com> Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
2012-09-19Input: MT - Add flags to input_mt_init_slots()Henrik Rydberg1-3/+3
Preparing to move more repeated code into the mt core, add a flags argument to the input_mt_slots_init() function. Reviewed-and-tested-by: Benjamin Tissoires <benjamin.tissoires@enac.fr> Tested-by: Ping Cheng <pingc@wacom.com> Acked-by: Dmitry Torokhov <dmitry.torokhov@gmail.com> Signed-off-by: Henrik Rydberg <rydberg@euromail.se>
2012-09-04Input: wacom - add support for EMR on Cintiq 24HD touchJason Gerecke1-1/+5
Adds support for the EMR digitizer on the Cintiq 24HD touch. The EMR digitizer should work identically to that found on the Cintiq 24HD. The touch digitizer is a separate USB device similar to how we split apart some other devices. Signed-off-by: Jason Gerecke <killertofu@gmail.com> Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
2012-08-21Input: wacom - add support for EMR on Cintiq 24HD touchJason Gerecke1-1/+5
Adds support for the EMR digitizer on the Cintiq 24HD touch. The EMR digitizer should work identically to that found on the Cintiq 24HD. The touch digitizer is a separate USB device similar to how we split apart some other devices. Signed-off-by: Jason Gerecke <killertofu@gmail.com> Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
2012-07-24Input: wacom - add support to Cintiq 22HDPing Cheng2-3/+21
Signed-off-by: Ping Cheng <pingc@wacom.com> Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
2012-07-13Input: hanwang - add support for Art Master II tabletweixing1-15/+42
This change adds support for old Hanwang Art master II tablet Signed-off-by: weixing <weixing@hanwang.com.cn> Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
2012-07-07Merge branch 'for-linus' to bring in change ensuring that drivers thatDmitry Torokhov1-2/+4
use threaded IRQs use IRQF_ONESHOT.
2012-07-04Merge commit 'v3.5-rc5' into nextDmitry Torokhov5-75/+104
2012-06-28Input: wacom - don't retrieve touch_max when it is predefinedPing Cheng1-1/+3
Some models, such as 0xE6, report more fingers than we process. Reported-by: Jonathan Nieder <jrnieder@gmail.com> Signed-off-by: Ping Cheng <pingc@wacom.com> Tested-by: Nils Kanning <nils@kanning.de> Tested-by: Rafi Rubin <rafi@seas.upenn.edu> Reviewed-by: Jason Gerecke <killertofu@gmail.com> Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
2012-06-28Input: wacom - fix retrieving touch_max bugPing Cheng1-1/+1
rep_data is not an array anymore, so taking it's address when passing to wacom_get_report() is wrong. Signed-off-by: Ping Cheng <pingc@wacom.com> Tested-by: Rafi Rubin <rafi@seas.upenn.edu> Reviewed-by: Jason Gerecke <killertofu@gmail.com> Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
2012-06-28Input: wacom - TPC2FG doesn't store touch id for slotsPing Cheng1-2/+4
Signed-off-by: Ping Cheng <pingc@wacom.com> Tested-by: Rafi Rubin <rafi@seas.upenn.edu> Reviewed-by: Jason Gerecke <killertofu@gmail.com> Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
2012-06-28Input: wacom - BTN_TOOL_DOUBLETAP is not a valid device_typePing Cheng1-1/+1
It is replaced by BTN_TOOL_FINGER. Signed-off-by: Ping Cheng <pingc@wacom.com> Tested-by: Rafi Rubin <rafi@seas.upenn.edu> Reviewed-by: Jason Gerecke <killertofu@gmail.com> Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
2012-06-12Input: wacom - remove code duplicationJason Gerecke1-4/+1
Replaces code to calculate Intuos5 physical dimensions with a call to an existing function that performs the same task. Signed-off-by: Jason Gerecke <killertofu@gmail.com> Reviewed-by: Chris Bagwell <chris@cnpbagwell.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2012-06-12Input: wacom - initialize and destroy LEDs for Intuos4 S tabletsJason Gerecke1-0/+2
This case appears to have been missed in the original commit. Signed-off-by: Jason Gerecke <killertofu@gmail.com> Reviewed-by: Chris Bagwell <chris@cnpbagwell.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2012-06-12Input: wacom - Bamboo One 1024 pressure fixChris Bagwell1-1/+1
Bamboo One's with ID of 0x6a and 0x6b were added with correct indication of 1024 pressure levels but the Graphire packet routine was only looking at 9 bits. Increased to 10 bits. This bug caused these devices to roll over to zero pressure at half way mark. The other devices using this routine only support 256 or 512 range and look to fix unused bits at zero. Signed-off-by: Chris Bagwell <chris@cnpbagwell.com> Reported-by: Tushant Mirchandani <tushantin@gmail.com> Reviewed-by: Ping Cheng <pingc@wacom.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2012-06-12Input: wacom - battery reporting improvementsChris Bagwell1-29/+53
Do not register battery device until connected to a tablet. This prevents an empty battery icon from being shown when tablet is connected using USB cable. Also, call power_supply_powers() for apps that can make use of that info. And stop ignoring input registration failures. Signed-off-by: Chris Bagwell <chris@cnpbagwell.com> Reviewed-by: Ping Cheng <pingc@wacom.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2012-06-12Input: wacom - add two new devices (0xed and 0xef)Ping Cheng2-1/+14
0xed supports pen and one finger touch; 0xef is pen only. Signed-off-by: Ping Cheng <pingc@wacom.com> Acked-by: Chris Bagwell <chris@cnpbagwell.com> Reviewed-by: Jason Gerecke <killertofu@gmail.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>