aboutsummaryrefslogtreecommitdiff
path: root/drivers/input
AgeCommit message (Collapse)AuthorFilesLines
2018-03-30Input: ALPS - fix TrackStick detection on Thinkpad L570 and Latitude 7370Masaki Ota1-3/+21
The primary interface for the touchpad device in Thinkpad L570 is SMBus, so ALPS overlooked PS2 interface Firmware setting of TrackStick, and shipped with TrackStick otp bit is disabled. The address 0xD7 contains device number information, so we can identify the device by checking this value, but to access it we need to enable Command mode, and then re-enable the device. Devices shipped in Thinkpad L570 report either 0x0C or 0x1D as device numbers, if we see them we assume that the devices are DualPoints. The same issue exists on Dell Latitude 7370. Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=196929 Fixes: 646580f793 ("Input: ALPS - fix multi-touch decoding on SS4 plus touchpads") Signed-off-by: Masaki Ota <[email protected]> Tested-by: Aaron Ma <[email protected]> Tested-by: Jonathan Liu <[email protected]> Tested-by: Jaak Ristioja <[email protected]> Cc: [email protected] Signed-off-by: Dmitry Torokhov <[email protected]>
2018-03-27parisc/gscps2: Fix sparse warningsHelge Deller1-6/+5
Signed-off-by: Helge Deller <[email protected]>
2018-03-26Input: xpad - add PDP device id 0x02a4Francis Therien1-2/+7
Adds support for a PDP Xbox One controller with device ID (0x06ef:0x02a4). The Product string for this device is "PDP Wired Controller for Xbox One - Stealth Series | Phantom Black". Signed-off-by: Francis Therien <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2018-03-26Input: alps - report pressure of v3 and v7 trackstickPali Rohár1-4/+6
ALPS v3 and v7 packet formats reports trackstick pressure. This information is already parsed in unused "z" variable. ALPS SS4 S2 devices already reports trackstick pressure as ABS_PRESSURE attribute, therefore reports pressure in the same way also for v3 and v7. This patch also updates parsing v3 pressure information, it is also stored in 7 bits. Signed-off-by: Pali Rohár <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2018-03-26Input: pxrc - new driver for PhoenixRC Flight Controller AdapterMarcus Folkesson3-0/+314
This driver let you plug in your RC controller to the adapter and use it as input device in various RC simulators. Signed-off-by: Marcus Folkesson <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2018-03-26Input: usbtouchscreen - do not rely on input_dev->usersMarcus Folkesson1-4/+5
If the device is unused and suspended, a call to open will cause the device to autoresume through the call to usb_autopm_get_interface(). input_dev->users is already incremented by the input subsystem, therefore this expression will always be evaluated to true: if (input->users || usbtouch->type->irq_always) result = usb_submit_urb(usbtouch->irq, GFP_NOIO); The same URB will then be fail when resubmitted in usbtouch_open(). Introduce usbtouch->is_open to keep track of the state instead. Signed-off-by: Marcus Folkesson <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2018-03-26Input: usbtouchscreen - fix deadlock in autosuspendMarcus Folkesson1-4/+11
usb_autopm_get_interface() that is called in usbtouch_open() does an autoresume if the device is suspended. input_dev->mutex used in usbtouch_resume() is in this case already taken by the input subsystem and will cause a deadlock. Signed-off-by: Marcus Folkesson <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2018-03-26input: misc: remove blackfin rotary driverArnd Bergmann3-304/+0
The blackfin architecture is getting removed, so this one is obsolete as well. Acked-by: Dmitry Torokhov <[email protected]> Acked-by: Aaron Wu <[email protected]> Signed-off-by: Arnd Bergmann <[email protected]>
2018-03-26input: keyboard: remove bf54x driverArnd Bergmann3-406/+0
The blackfin architecture is getting removed, so this driver is now obsolete. Acked-by: Dmitry Torokhov <[email protected]> Signed-off-by: Arnd Bergmann <[email protected]>
2018-03-26treewide: simplify Kconfig dependencies for removed archsArnd Bergmann1-1/+1
A lot of Kconfig symbols have architecture specific dependencies. In those cases that depend on architectures we have already removed, they can be omitted. Acked-by: Kalle Valo <[email protected]> Acked-by: Alexandre Belloni <[email protected]> Signed-off-by: Arnd Bergmann <[email protected]>
2018-03-17Input: pegasus_notetaker - do not rely on input_dev->usersMarcus Folkesson1-2/+5
If the device is unused and suspended, a call to open will cause the device to autoresume through the call to usb_autopm_get_interface(). input_dev->users is already incremented by the input subsystem, therefore this expression will always be evaluated to true: if (pegasus->dev->users && usb_submit_urb(pegasus->irq, GFP_NOIO) < 0) retval = -EIO; The same URB will then be fail when resubmitted in pegasus_open(). Introduce pegasus->is_open to keep track of the state instead. Signed-off-by: Marcus Folkesson <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2018-03-17Input: pagasus_notetaker - fix deadlock in autosuspendMarcus Folkesson1-6/+19
usb_autopm_get_interface() that is called in pegasus_open() does an autoresume if the device is suspended. input_dev->mutex used in pegasus_resume() is in this case already taken by the input subsystem and will cause a deadlock. Signed-off-by: Marcus Folkesson <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2018-03-17Input: synaptics_usb - do not rely on input_dev->usersMarcus Folkesson1-4/+5
If the device is unused and suspended, a call to open will cause the device to autoresume through the call to usb_autopm_get_interface(). input_dev->users is already incremented by the input subsystem, therefore this expression will always be evaluated to true: if ((input_dev->users || (synusb->flags & SYNUSB_IO_ALWAYS)) && usb_submit_urb(synusb->urb, GFP_NOIO) < 0) { retval = -EIO; } The same URB will then be fail when resubmitted in synusb_open(). Introduce synusb->is_open to keep track of the state instead. Signed-off-by: Marcus Folkesson <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2018-03-17Input: synaptics_usb - fix deadlock in autosuspendMarcus Folkesson1-8/+14
usb_autopm_get_interface() that is called in synusb_open() does an autoresume if the device is suspended. input_dev->mutex used in synusb_resume() is in this case already taken by the input subsystem and will cause a deadlock. Signed-off-by: Marcus Folkesson <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2018-03-17Merge branch 'psmouse' into nextDmitry Torokhov10-381/+498
Merge various PS/2 handling improvements.
2018-03-14Input: gpio-keys - add support for wakeup event actionJeffy Chen1-14/+131
Add support for specifying event actions to trigger wakeup when using the gpio-keys input device as a wakeup source. This would allow the device to configure when to wakeup the system. For example a gpio-keys input device for pen insert, may only want to wakeup the system when ejecting the pen. Suggested-by: Brian Norris <[email protected]> Signed-off-by: Jeffy Chen <[email protected]> Reviewed-by: Rob Herring <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2018-03-14Input: appletouch - use true and false for boolean valuesGustavo A. R. Silva1-3/+3
Assign true or false to boolean variables instead of an integer value. This issue was detected with the help of Coccinelle. Signed-off-by: Gustavo A. R. Silva <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2018-03-14Input: silead - add Chuwi Hi8 supportMaruyama Shohei1-0/+1
This commit add ACPI support for Chuwi Hi8 tablet. On the ACPI table of the tablet, GSL1680 is registered as MSSL0001, so the driver does not recognize the device. This commit resolve it. Signed-off-by: Shohei Maruyama <[email protected]> Reviewed-by: Hans de Goede <[email protected]> Signed-off-by: Hans de Goede <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2018-03-14Input: analog - use get_cycles() on PPCMichael Ellerman1-1/+1
The analog joystick driver spits a warning at us: drivers/input/joystick/analog.c:176:2: warning: #warning Precise timer not defined for this architecture. PPC has get_cycles() so use that. Signed-off-by: Michael Ellerman <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2018-03-13Input: Evdev - unify MONOTONIC and BOOTTIME clock behaviorThomas Gleixner1-6/+1
Now that the MONOTONIC and BOOTTIME clocks are indentical, remove all the special casing. The user space visible interfaces still support both clocks, but their behavior is identical. Signed-off-by: Thomas Gleixner <[email protected]> Cc: Dmitry Torokhov <[email protected]> Cc: John Stultz <[email protected]> Cc: Jonathan Corbet <[email protected]> Cc: Kevin Easton <[email protected]> Cc: Linus Torvalds <[email protected]> Cc: Mark Salyzyn <[email protected]> Cc: Michael Kerrisk <[email protected]> Cc: Peter Zijlstra <[email protected]> Cc: Petr Mladek <[email protected]> Cc: Prarit Bhargava <[email protected]> Cc: Sergey Senozhatsky <[email protected]> Cc: Steven Rostedt <[email protected]> Cc: [email protected] Link: http://lkml.kernel.org/r/[email protected] Signed-off-by: Ingo Molnar <[email protected]>
2018-03-10Input: stmpe-keypad - remove VLA usageGustavo A. R. Silva1-4/+12
In preparation to enabling -Wvla, remove VLA and replace it with a fixed-length array instead. Fixed as part of the directive to remove all VLAs from the kernel: https://lkml.org/lkml/2018/3/7/621 Signed-off-by: Gustavo A. R. Silva <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2018-03-09mn10300: Remove the architectureDavid Howells1-1/+1
Remove the MN10300 arch as the hardware is defunct. Suggested-by: Arnd Bergmann <[email protected]> Signed-off-by: David Howells <[email protected]> cc: Masahiro Yamada <[email protected]> cc: [email protected] Signed-off-by: Arnd Bergmann <[email protected]>
2018-03-08Input: i8042 - add Lenovo ThinkPad L460 to i8042 reset listDennis Wassenberg1-0/+7
Reset i8042 before probing because of insufficient BIOS initialisation of the i8042 serial controller. This makes Synaptics touchpad detection possible. Without resetting the Synaptics touchpad is not detected because there are always NACK messages from AUX port. Signed-off-by: Dennis Wassenberg <[email protected]> Cc: [email protected] Signed-off-by: Dmitry Torokhov <[email protected]>
2018-03-08Input: add RAVE SP Powerbutton driverAndrey Smirnov3-0/+104
Add driver that properly handles input event emitted by RAVE SP devices. Reviewed-by: Lucas Stach <[email protected]> Signed-off-by: Andrey Smirnov <[email protected]> Reviewed-by: Rob Herring <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2018-03-08Merge tag 'v4.16-rc4' into nextDmitry Torokhov9-25/+25
Sync up with mainline to bring in RAVE MFD device core.
2018-03-07Merge branch 'for-linus' of ↵Linus Torvalds3-11/+9
git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input Pull input fixes from Dmitry Torokhov: - we are reverting patch that was switched touchpad on Lenovo T460P over to native RMI because on these boxes BIOS messes up with SMBus controller state. We might re-enable it later once SMBus issue is resolved - disabling interrupts in matrix_keypad driver was racy - mms114 now has SPDX header and matching MODULE_LICENSE * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input: Revert "Input: synaptics - Lenovo Thinkpad T460p devices should use RMI" Input: matrix_keypad - fix race when disabling interrupts Input: mms114 - add SPDX identifier Input: mms114 - fix license module information
2018-03-07Revert "Input: synaptics - Lenovo Thinkpad T460p devices should use RMI"Arkadiusz Hiler1-1/+0
This reverts commit 48282969826b3d3c76e908182f69724d86d995fe which caused the following issues: 1. On T460p with BIOS version 2.22 touchpad and trackpoint stop working after suspend-resume cycle. Due to strange state of the device another suspend is impossible. The following dmesg errors can be observed: thinkpad_acpi: EC reports that Thermal Table has changed rmi4_smbus 7-002c: failed to get SMBus version number! rmi4_physical rmi4-00: rmi_driver_reset_handler: Failed to read current IRQ mask. rmi4_f01 rmi4-00.fn01: Failed to restore normal operation: -16. rmi4_f01 rmi4-00.fn01: Resume failed with code -16. rmi4_physical rmi4-00: Failed to suspend functions: -16 rmi4_smbus 7-002c: Failed to resume device: -16 PM: resume devices took 0.640 seconds rmi4_f03 rmi4-00.fn03: rmi_f03_pt_write: Failed to write to F03 TX register (-16). rmi4_physical rmi4-00: rmi_driver_clear_irq_bits: Failed to change enabled interrupts! rmi4_physical rmi4-00: rmi_driver_set_irq_bits: Failed to change enabled interrupts! psmouse: probe of serio3 failed with error -1 2. On another T460p with BIOS version 2.15 two finger scrolling gesture on the touchpad stops working after suspend-resume cycle (about 75% reproducibility, when it still works, the scrolling gesture becomes laggy). Nothing suspicious appears in the dmesg. Analysis form Richard Schütz: "RMI is unreliable on the ThinkPad T460p because the device is affected by the firmware behavior addressed in a7ae81952cda ("i2c: i801: Allow ACPI SystemIO OpRegion to conflict with PCI BAR")." The affected devices often show: i801_smbus 0000:00:1f.4: BIOS is accessing SMBus registers i801_smbus 0000:00:1f.4: Driver SMBus register access inhibited Reported-by: Richard Schütz <[email protected]> Signed-off-by: Arkadiusz Hiler <[email protected]> Tested-by: Martin Peres <[email protected]> Tested-by: Arkadiusz Hiler <[email protected]> Cc: [email protected] Signed-off-by: Dmitry Torokhov <[email protected]>
2018-02-14media: add video control handlers using V4L2 control frameworkFlorian Echtler1-0/+64
This patch registers four standard control handlers using the corresponding V4L2 framework. Signed-off-by: Florian Echtler <[email protected]> [[email protected]: lower-cased 0x0F and 0xF0] Signed-off-by: Hans Verkuil <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2018-02-14media: add panel register access functionsFlorian Echtler1-0/+75
These functions provide write access to the internal LCD panel registers which also control the sensor. They can be used to disable the preprocessor, set the illumination brightness, and adjust gain/contrast (which are stored together in one register internally called "vsvideo"). Signed-off-by: Florian Echtler <[email protected]> Signed-off-by: Hans Verkuil <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2018-02-14media: add default settings and module parameters for video controlsFlorian Echtler1-0/+34
This patch adds parameter definitions and module parameters for the four userspace controls that the SUR40 can currently provide. Signed-off-by: Florian Echtler <[email protected]> Signed-off-by: Hans Verkuil <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2018-02-14media: add missing blob structure field for tag idFlorian Echtler1-1/+4
The SUR40 can recognize specific printed patterns directly in hardware; this information (i.e. the pattern id) is present but currently unused in the blob structure. Signed-off-by: Florian Echtler <[email protected]> Signed-off-by: Hans Verkuil <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2018-02-11vfs: do bulk POLL* -> EPOLL* replacementLinus Torvalds8-13/+13
This is the mindless scripted replacement of kernel use of POLL* variables as described by Al, done by this script: for V in IN OUT PRI ERR RDNORM RDBAND WRNORM WRBAND HUP RDHUP NVAL MSG; do L=`git grep -l -w POLL$V | grep -v '^t' | grep -v /um/ | grep -v '^sa' | grep -v '/poll.h$'|grep -v '^D'` for f in $L; do sed -i "-es/^\([^\"]*\)\(\<POLL$V\>\)/\\1E\\2/" $f; done done with de-mangling cleanups yet to come. NOTE! On almost all architectures, the EPOLL* constants have the same values as the POLL* constants do. But they keyword here is "almost". For various bad reasons they aren't the same, and epoll() doesn't actually work quite correctly in some cases due to this on Sparc et al. The next patch from Al will sort out the final differences, and we should be all done. Scripted-by: Al Viro <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
2018-02-09Input: matrix_keypad - fix race when disabling interruptsZhang Bo1-1/+3
If matrix_keypad_stop() is executing and the keypad interrupt is triggered, disable_row_irqs() may be called by both matrix_keypad_interrupt() and matrix_keypad_stop() at the same time, causing interrupts to be disabled twice and the keypad being "stuck" after resuming. Take lock when setting keypad->stopped to ensure that ISR will not race with matrix_keypad_stop() disabling interrupts. Signed-off-by: Zhang Bo <[email protected]> Cc: [email protected] Signed-off-by: Dmitry Torokhov <[email protected]>
2018-02-02Input: synaptics - handle errors from input_mt_init_slots()Dmitry Torokhov1-9/+24
input_mt_init_slots() may fail, we need to handle this condition. Signed-off-by: Dmitry Torokhov <[email protected]>
2018-02-02Input: synaptics - switch to using input_set_capabilityDmitry Torokhov1-25/+24
Instead of manipulating capability bits directly, use input_set_capability(). Signed-off-by: Dmitry Torokhov <[email protected]>
2018-02-02Input: trackpoint - combine calls to ps2_command()Dmitry Torokhov1-36/+24
We do not need to call ps2_command() several times in a row, transmitting every byte as it were a command byte, we can often pack it all in a single command. Also, now that ps2_command() handles retransmission, we do not need to do it ourselves in trackpoint_power_on_reset(). Signed-off-by: Dmitry Torokhov <[email protected]>
2018-02-02Input: libps2 - relax command byte ACK handlingDmitry Torokhov1-3/+22
When we probe PS/2 devices we first issue "Get ID" command and only if we receive what we consider a valid keyboard or mouse ID we disable the device and continue with protocol detection. That means that the device may be transmitting motion or keystroke data, while we expect ACK response. Instead of signaling failure if we see anything but ACK/NAK let's ignore "garbage" response until we see ACK for the command byte (first byte). The checks for subsequent ACKs of command parameters will continue be strict. Signed-off-by: Dmitry Torokhov <[email protected]>
2018-02-02Input: libps2 - support retransmission of command dataDmitry Torokhov1-32/+71
The devices are allowed to respond to either command byte or command parameter with a NAK (0xfe), and the host is supposed to resend the "correct" byte. The device then will either respond with ACK or ERR (0xfc). Let's teach libps2 to handle the NAK responses properly, so that individual drivers do not need to handle them. Signed-off-by: Dmitry Torokhov <[email protected]>
2018-02-02Input: libps2 - add debugging statementsDmitry Torokhov1-13/+39
Debugging via i8042.debug and analyzing raw PS/2 data stream may be cumbersome as you need to locate the boundaries of commands, decipher the sliced commands, etc, etc. Let's add a bit more high level debug statements for ps2_sendbyte(), ps2_command(), and ps2_sliced_command(). We do not introduce a new module parameter, but rater rely on the kernel having dynamic debug facility enabled (which most everyone has nowadays). Enable with: echo "file libps2.c +pf" > /sys/kernel/debug/dynamic_debug/control or add "libps2.dyndbg=+pf" to the kernel command line. Signed-off-by: Dmitry Torokhov <[email protected]>
2018-02-02Input: psmouse - move sliced command implementation to libps2Dmitry Torokhov6-38/+43
In preparation to adding some debugging statements to PS/2 control sequences let's move psmouse_sliced_command() into libps2 and rename it to ps2_sliced_command(). Signed-off-by: Dmitry Torokhov <[email protected]>
2018-02-02Input: libps2 - use u8 for byte dataDmitry Torokhov1-15/+16
Instead of using unsigned char for the byte data switch to using u8. Also use unsigned int for the command codes and timeouts, and have ps2_handle_ack() and ps2_handle_response() return bool instead of int, as they do not return error codes but rather signal whether a byte was handled or not handled. ps2_is_keyboard_id() now returns bool as well. Signed-off-by: Dmitry Torokhov <[email protected]>
2018-02-02Input: libps2 - fix switch statement formattingDmitry Torokhov1-66/+65
Individual labels of switch statements should have the same indentation level as the switch statement itself. Signed-off-by: Dmitry Torokhov <[email protected]>
2018-02-02Input: psmouse - add support for 2nd wheel on A4Tech Dual-Scroll wheel miceStephen Lyons1-2/+17
This Far-Eastern company's PS/2 mice use a deviant format for the data relating to movement of the scroll wheels for, at least, their dual wheel mice, such as their "Optical GreatEye Wheelmouse" model "WOP-35". This product has five "buttons" (one of which is the click action on the first wheel) and TWO scroll wheels. However for a byte comprising d0-d7 instead of setting one of d6-7 in the forth byte of the mouse data packet and a twos complement number of scroll steps in the remaining d5-d0 (or d3-d0 should there be a fourth (BTN_SIDE - d4) or fifth (BTN_EXTRA - d5) button to report; they only report a single +/- event for each wheel and use a bit pattern that corresponds to +/-1 for the first wheel and +/- 2 for the second in the lower nibble of the fourth byte. The effect with existing code is that the second mouse wheel merely repeats the effect of the first but providing two steps per click rather than the one of the first wheel - so there is no HORIZONTAL scroll wheel movement detected from the device as far as the rest of the kernel sees it. This patch, if enabled by the "a4tech_workaround" module parameter modifies the handling just for mice of type PSMOUSE_IMEX so that the second scroll wheel movement gets correctly reported as REL_HWHEEL events. Should this module parameter be activated for other mice of the same PSMOUSE_IMEX type then it is possible that at the point where the mouse reports more than a single movement step the user may start seeing horizontal rather than vertical wheel events, but should the movement steps get to be more than two at a time the hack will get immediately deactivated and the behaviour will revert to the past code. This was discussed around *fifteen* *years* *ago* on the LKML and the best summary is in post https://lkml.org/lkml/2002/7/18/111 "Re: PS2 Input Core Support" by Vojtech Pavlik. I was not able to locate any discussion later than this on this topic. Given that most users of the "psmouse" module will NOT want this additional feature enabled I have taken the apparently erroneous step of defaulting the module parameter that enables it to be "disabled" - this functionality may interfere with the operation of "normal" mice of this type (until a large enough scroll wheel movement is detected) so I cannot see how it would want to be enabled for "normal" users - i.e. everyone without this brand of mouse. I am using this patch at the moment and I can confirm that it is working for me as both a module and compiled into the kernel for my mouse that is of the type (WOP-35) described - I note that it is still available from certain on-line retailers and that the manufacturers site does not list GNU/Linux as being supported on the product page - this patch however does enable full use of this product: http://www.a4tech.com/product.asp?cid=3D1&scid=3D8&id=3D22 Signed-off-by: Stephen Lyons <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2018-02-02Input: lifebook - clean up codeDmitry Torokhov1-21/+29
- use u8 instead of unsigned char for byte data - use input_set_capability() instead of manipulating capabilities bits directly - do not abuse -1 as error code, propagate errors from various calls. Signed-off-by: Dmitry Torokhov <[email protected]>
2018-02-02Input: logips2pp - clean up codeDmitry Torokhov1-59/+83
- switch to using BIT() macros - use u8 instead of unsigned char for byte data - use input_set_capability() instead of manipulating capabilities bits directly - use sign_extend32() when extracting wheel data. - do not abuse -1 as error code, propagate errors from various calls. Signed-off-by: Dmitry Torokhov <[email protected]>
2018-02-02Input: psmouse - clean up codeDmitry Torokhov1-63/+77
- switch to using BIT() macros - use u8 instead of unsigned char for byte data - use input_set_capability() instead of manipulating capabilities bits directly - use sign_extend32() when extracting wheel data. - do not abuse -1 as error code, propagate errors from various calls. Signed-off-by: Dmitry Torokhov <[email protected]>
2018-02-02Input: psmouse - create helper for reporting standard buttons/motionDmitry Torokhov7-71/+50
Many protocol driver re-implement code to parse buttons or motion data from the standard PS/2 protocol. Let's split the parsing into separate functions and reuse them in protocol drivers. Signed-off-by: Dmitry Torokhov <[email protected]>
2018-02-02Input: mms114 - add SPDX identifierAndi Shyti1-8/+5
Replace the original license statement with the SPDX identifier. Add also one line of description as recommended by the COPYING file. Signed-off-by: Andi Shyti <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2018-02-02Input: mms114 - fix license module informationAndi Shyti1-1/+1
The driver has been released with GNU Public License v2 as stated in the header, but the module license information has been tagged as "GPL" (GNU Public License v2 or later). Fix the module license information so that it matches the one in the header as "GPL v2". Fixes: 07b8481d4aff ("Input: add MELFAS mms114 touchscreen driver") Reported-by: Marcus Folkesson <[email protected]> Signed-off-by: Andi Shyti <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2018-02-01Merge branch 'for-linus' of ↵Linus Torvalds54-1516/+447
git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input Pull input layer updates from Dmitry Torokhov: - evdev interface has been adjusted to extend the life of timestamps on 32 bit systems to the year of 2108 - Synaptics RMI4 driver's PS/2 guest handling ha beed updated to improve chances of detecting trackpoints on the pass-through port - mms114 touchcsreen controller driver has been updated to support generic device properties and work with mms152 cntrollers - Goodix driver now supports generic touchscreen properties - couple of drivers for AVR32 architecture are gone as the architecture support has been removed from the kernel - gpio-tilt driver has been removed as there are no mainline users and the driver itself is using legacy APIs and relies on platform data - MODULE_LINECSE/MODULE_VERSION cleanups * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input: (45 commits) Input: goodix - use generic touchscreen_properties Input: mms114 - fix typo in definition Input: mms114 - use BIT() macro instead of explicit shifting Input: mms114 - replace mdelay with msleep Input: mms114 - add support for mms152 Input: mms114 - drop platform data and use generic APIs Input: mms114 - mark as direct input device Input: mms114 - do not clobber interrupt trigger Input: edt-ft5x06 - fix error handling for factory mode on non-M06 Input: stmfts - set IRQ_NOAUTOEN to the irq flag Input: auo-pixcir-ts - delete an unnecessary return statement Input: auo-pixcir-ts - remove custom log for a failed memory allocation Input: da9052_tsi - remove unused mutex Input: docs - use PROPERTY_ENTRY_U32() directly Input: synaptics-rmi4 - log when we create a guest serio port Input: synaptics-rmi4 - unmask F03 interrupts when port is opened Input: synaptics-rmi4 - do not delete interrupt memory too early Input: ad7877 - use managed resource allocations Input: stmfts,s6sy671 - add SPDX identifier Input: remove atmel-wm97xx touchscreen driver ...