- 31 1月, 2018 1 次提交
-
-
由 Andi Shyti 提交于
200 milliseconds is a very long time to keep the CPU busy looping. Use msleep instead. Signed-off-by: NAndi Shyti <andi.shyti@samsung.com> Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
- 27 1月, 2018 4 次提交
-
-
由 Simon Shields 提交于
MMS152 has no configuration registers, but the packet format used in interrupts is identical to mms114. Signed-off-by: NSimon Shields <simon@lineageos.org> Reviewed-by: NAndi Shyti <andi.shyti@samsung.com> Tested-by: NAndi Shyti <andi.shyti@samsung.com> Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
由 Simon Shields 提交于
The MMS114 platform data has no in-tree users, so drop it. Switch to using the standard touchscreen properties via touchscreen_parse_properties(), and move the old DT parsing code to use device_property_*() APIs. Finally, use touchscreen_report_pos to report x/y coordinates and drop the custom x/y inversion code. Signed-off-by: NSimon Shields <simon@lineageos.org> Reviewed-by: NRob Herring <robh@kernel.org> Reviewed-by: NAndi Shyti <andi.shyti@samsung.com> Tested-by: NAndi Shyti <andi.shyti@samsung.com> Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
由 Dmitry Torokhov 提交于
mms14 is a touchscreen and thus a direct input device; let's mark it as such. This also allows us to drop some initialization code as input_init_mt_slots() will do that for us. Also add error handling for input_mt_init_slots(). Reviewed-by: NSimon Shields <simon@lineageos.org> Tested-by: NSimon Shields <simon@lineageos.org> Reviewed-by: NAndi Shyti <andi.shyti@samsung.com> Tested-by: NAndi Shyti <andi.shyti@samsung.com> Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
由 Dmitry Torokhov 提交于
Rely on the platform (device tree, ACPI, etc) to properly configure interrupt trigger/polarity instead of hardcoding the falling edge. Reviewed-by: NSimon Shields <simon@lineageos.org> Tested-by: NSimon Shields <simon@lineageos.org> Reviewed-by: NAndi Shyti <andi.shyti@samsung.com> Tested-by: NAndi Shyti <andi.shyti@samsung.com> Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
- 25 1月, 2018 1 次提交
-
-
由 Dmitry Torokhov 提交于
When attempting enter factory mode on firmware that does not support it, we'd error out, but leave the device with interrupts disabled, and thus touch not working. Fix it by moving the check before we disable interrupts/allocate memory for debug buffers. Fixes: fd335ab0 ("Input: edt-ft5x06 - add support for M09 firmware version") Reviewed-by: NAndi Shyti <andi@etezian.org> Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
- 23 1月, 2018 10 次提交
-
-
由 Andi Shyti 提交于
The interrupt is requested before the device is powered on and it's value in some cases cannot be reliable. It happens on some devices that an interrupt is generated as soon as requested before having the chance to disable the irq. Set the irq flag as IRQ_NOAUTOEN before requesting it. This patch mutes the error: stmfts 2-0049: failed to read events: -11 received sometimes during boot time. Signed-off-by: NAndi Shyti <andi.shyti@samsung.com> Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
由 Markus Elfring 提交于
The script "checkpatch.pl" pointed information out like the following: WARNING: void function return statements are not generally useful Thus remove such a statement in the affected function. Signed-off-by: NMarkus Elfring <elfring@users.sourceforge.net> Reviewed-by: NHeiko Stuebner <heiko@sntech.de> Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
由 Markus Elfring 提交于
Omit an extra message for a memory allocation failure in this function. This issue was detected by using the Coccinelle software. Signed-off-by: NMarkus Elfring <elfring@users.sourceforge.net> Reviewed-by: NHeiko Stuebner <heiko@sntech.de> Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
由 Marcus Folkesson 提交于
Signed-off-by: NMarcus Folkesson <marcus.folkesson@gmail.com> Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
由 Andy Shevchenko 提交于
Instead of using PROPERTY_ENTRY_INTEGER() with explicitly supplied type, use PROPERTY_ENTRY_U32() dedicated macro. It will help modify internals of built-in device properties API. No functional change intended. Signed-off-by: NAndy Shevchenko <andriy.shevchenko@linux.intel.com> Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
由 Dmitry Torokhov 提交于
To ease analyzing boot behavior from logs, let's log when we are about to register the pass-through serio port. Also, let's drop "Synaptics" prefix from the port name, as RMI4 is good enough indicator already, and having the prefix means that the name does not fit into serio->name field. While at it move from hard-coded seio->phys to one mentioning the sensor ID (such as "rmi4-00.fn03/serio0"). Reviewed-by: NLyude Paul <lyude@redhat.com> Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
由 Dmitry Torokhov 提交于
Currently we register the pass-through serio port when we probe the F03 RMI function, and then, in sensor configure phase, we unmask interrupts. Unfortunately this is too late, as other drivers are free probe devices attached to the serio port as soon as it is probed. Because interrupts are masked, the IO times out, which may result in not being able to detect trackpoints on the pass-through port. To fix the issue we implement open() and close() methods for the pass-through serio port and unmask interrupts from there. We also move creation of the pass-through port form probe to configure stage, as RMI driver does not enable transport interrupt until all functions are probed (we should change this, but this is a separate topic). We also try to clear the pending data before unmasking interrupts, because some devices like to spam the system with multiple 0xaa 0x00 announcements, which may interfere with us trying to query ID of the device. Fixes: c5e8848f ("Input: synaptics-rmi4 - add support for F03") Cc: stable@vger.kernel.org Reviewed-by: NLyude Paul <lyude@redhat.com> Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
由 Dmitry Torokhov 提交于
We want to free memory reserved for interrupt mask handling only after we free functions, as function drivers might want to mask interrupts. This is needed for the followup patch to the F03 that would implement unmasking and masking interrupts from the serio pass-through port open() and close() methods. Cc: stable@vger.kernel.org Reviewed-by: NLyude Paul <lyude@redhat.com> Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
由 Andi Shyti 提交于
Use managed resource allocations to simplify error handling during probing failure and module exiting. With this all the goto labels in the probe function together with the cleanups in the remove function are unnecessary, therefore removed. Signed-off-by: NAndi Shyti <andi@etezian.org> Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
由 Andi Shyti 提交于
Replace the original license statement with the SPDX identifier. Update also the copyright owner adding myself as co-owner of the copyright. Signed-off-by: NAndi Shyti <andi.shyti@samsung.com> Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
- 20 1月, 2018 2 次提交
-
-
由 Corentin Labbe 提交于
Since AVR32 arch is gone, atmel-wm97xx driver is useless. In theory it could have been rewritten to work with AT91 devices, but the driver is from the platform data era, and a bit hard coded to work on AVR32 hardware variant of the AC97C peripheral, so let's remove it. Signed-off-by: NCorentin Labbe <clabbe.montjoie@gmail.com> Acked-by: NHans-Christian Noren Egtvedt <egtvedt@samfundet.no> Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
由 Jean-François Têtu 提交于
Fix small typos in the Instructions and Uploading sections. Fix a typo in the start/stop effect example usage code. Signed-off-by: NJean-François Têtu <jean-francois.tetu@savoirfairelinux.com> Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
- 19 1月, 2018 2 次提交
-
-
由 Colin Ian King 提交于
The variable pwr_cmd is being assigned to cyapa->suspend_power_mode twice, once during the declaration and once after taking an interruptible mutex lock. Remove the redundant first assignment since the value is never read and it is outside the mutex lock. Cleans up clang warning: drivers/input/mouse/cyapa.c:743:5: warning: Value stored to 'pwr_cmd' during its initialization is never read Signed-off-by: NColin Ian King <colin.king@canonical.com> Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
由 Corentin Labbe 提交于
Since AVR32 arch is gone, at32psif driver is useless. Signed-off-by: NCorentin Labbe <clabbe.montjoie@gmail.com> Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
- 18 1月, 2018 1 次提交
-
-
由 Julia Lawall 提交于
Inline macro for MODULE_LICENSE to make the license information easy to find, eg with grep. Inline the other module-related macros at the same time. A simplified version of the semantic patch for the MODULE_LICENSE case is as follows: (http://coccinelle.lip6.fr/) // <smpl> @s@ identifier i; expression e; @@ @@ declarer name MODULE_LICENSE; identifier s.i; expression s.e; @@ MODULE_LICENSE( - i + e ); // </smpl> Signed-off-by: NJulia Lawall <Julia.Lawall@lip6.fr> [dtor: added a couple of drivers missed by the script, removed a few unused DRIVER_VERSION macros] Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
- 17 1月, 2018 9 次提交
-
-
由 Greg Kroah-Hartman 提交于
MODULE_VERSION is useless for in-kernel drivers, so just remove all usage of it in the remaining few input drivers that still used it (input-polldev and sparse-keymap). Signed-off-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org> Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
由 Greg Kroah-Hartman 提交于
MODULE_VERSION is useless for in-kernel drivers, so just remove all usage of it in the misc input drivers. Along with this, some DRIVER_VERSION macros were removed as they are also pointless. Signed-off-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org> Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
由 Greg Kroah-Hartman 提交于
MODULE_VERSION is useless for in-kernel drivers, so just remove all usage of it in the touchscreen drivers. Along with this, some DRV_VERSION macros were removed as they are also pointless. Signed-off-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org> Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
由 Greg Kroah-Hartman 提交于
MODULE_VERSION is useless for in-kernel drivers, so just remove all usage of it in the elan_i2c mouse driver. Now that this is gone, the ELAN_DRIVER_VERSION define was also removed as it was pointless. Signed-off-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org> Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
由 Greg Kroah-Hartman 提交于
MODULE_VERSION is useless for in-kernel drivers, so remove the use of it in the pmic8xxx-keyboard driver. Signed-off-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org> Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
由 Greg Kroah-Hartman 提交于
MODULE_VERSION is useless for in-kernel drivers, so just remove all usage of it in the rmi4 drivers. Now that this is gone, the RMI_DRIVER_VERSION macro was also removed as it was pointless. Signed-off-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org> Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
由 Greg Kroah-Hartman 提交于
There is no need to #define the license of the driver, just put it in the MODULE_LICENSE() line directly as a text string. This allows tools that check that the module license matches the source code license to work properly, as there is no need to unwind the unneeded dereference. For some of these drivers, the #define is just a few lines above the MODULE_LICENSE() line, which is extra pointless. Reported-by: NPhilippe Ombredanne <pombredanne@nexb.com> Signed-off-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org> Reviewed-by: NPhilippe Ombredanne <pombredanne@nexb.com> Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
由 Peter Hutterer 提交于
input_mt_init_slots() resets the ABS_X/Y fuzz to 0 and expects the driver to call input_mt_report_pointer_emulation(). That is based on the MT position bits which are already defuzzed - hence a fuzz of 0. In the case of synaptics semi-mt devices, we report the ABS_X/Y axes manually. This results in the MT position being defuzzed but the single-touch emulation missing that defuzzing. Work around this by re-initializing the ABS_X/Y axes after the MT axis to get the same fuzz value back. https://bugs.freedesktop.org/show_bug.cgi?id=104533Signed-off-by: NPeter Hutterer <peter.hutterer@who-t.net> Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
由 Dmitry Torokhov 提交于
When Synaptics protocol is disabled, we still need to try and detect the hardware, so we can switch to SMBus device if SMbus is detected, or we know that it is Synaptics device and reset it properly for the bare PS/2 protocol. Fixes: c378b511 ("Input: psmouse - factor out common protocol probing code") Reported-by: NMatteo Croce <mcroce@redhat.com> Tested-by: NMatteo Croce <mcroce@redhat.com> Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
- 12 1月, 2018 1 次提交
-
-
由 Hans de Goede 提交于
We should not try to do any i2c transfers before the controller is resumed (which happens before our resume method gets called). So we need to disable our IRQ while suspended to enforce this. The code paths for devices with GPIOs for the int and reset pins already disable the IRQ the through goodix_free_irq(). This commit also disables the IRQ while suspended for devices without GPIOs for the int and reset pins. This fixes the i2c bus sometimes getting stuck after a suspend/resume causing the touchscreen to sometimes not work after a suspend/resume. This has been tested on a GPD pocked device. BugLink: https://github.com/nexus511/gpd-ubuntu-packages/issues/10 BugLink: https://www.reddit.com/r/GPDPocket/comments/7niut2/fix_for_broken_touch_after_resume_all_linux/Tested-by: NHans de Goede <hdegoede@redhat.com> Signed-off-by: NHans de Goede <hdegoede@redhat.com> Reviewed-by: NBastien Nocera <hadess@hadess.net> Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
- 10 1月, 2018 2 次提交
-
-
由 Deepa Dinamani 提交于
The input events use struct timeval to store event time, unfortunately this structure is not y2038 safe and is being replaced in kernel with y2038 safe structures. Because of ABI concerns we can not change the size or the layout of structure input_event, so we opt to re-interpreting the 'seconds' part of timestamp as an unsigned value, effectively doubling the range of values, to year 2106. Newer glibc that has support for 32 bit applications to use 64 bit time_t supplies __USE_TIME_BITS64 define [1], that we can use to present the userspace with updated input_event layout. The updated layout will cause the compile time breakage, alerting applications and distributions maintainers to the issue. Existing 32 binaries will continue working without any changes until 2038. Ultimately userspace applications should switch to using monotonic or boot time clocks, as realtime clock is not very well suited for input event timestamps as it can go backwards (see a80b83b7 "Input: evdev - add CLOCK_BOOTTIME support" by by John Stultz). With monotonic clock the practical range of reported times will always fit into the pair of 32 bit values, as we do not expect any system to stay up for a hundred years without a single reboot. [1] https://sourceware.org/glibc/wiki/Y2038ProofnessDesignSuggested-by: NArnd Bergmann <arnd@arndb.de> Signed-off-by: NDeepa Dinamani <deepa.kernel@gmail.com> Acked-by: NPeter Hutterer <peter.hutterer@who-t.net> Patchwork-Id: 10148083 Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
由 Hans de Goede 提交于
On some x86 tablets with a silead touchscreen the windows logo on the front is a capacitive home button. Touching this button results in a touch with bits 12-15 of the Y coordinates set, while normally only the lower 12 are used. Detect this and report a KEY_LEFTMETA press when this happens. Note for now we only respond to the Y coordinate bits 12-15 containing 0x01, on some tablets *without* a capacative button I've noticed these bits containing 0x04 when crossing the edges of the screen. Acked-by: NRob Herring <robh@kernel.org> Signed-off-by: NHans de Goede <hdegoede@redhat.com> Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
- 09 1月, 2018 1 次提交
-
-
由 Rasmus Villemoes 提交于
Apart from whitespace differences, this block of macros is repeated twice: $ x=./drivers/input/mouse/cyapa_gen3.c; diff -w -u <(sed -n '139,181p' $x) <(sed -n '182,224p' $x) $ Signed-off-by: NRasmus Villemoes <linux@rasmusvillemoes.dk> Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
- 06 1月, 2018 2 次提交
-
-
由 Pravin Shedge 提交于
This duplicate include has been found with scripts/checkincludes.pl but it has been removed manually to avoid removing false positives. Signed-off-by: NPravin Shedge <pravin.shedge4linux@gmail.com> Patchwork-Id: 10092051 Acked-by: NBenjamin Tissoires <benjamin.tissoires@redhat.com> Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
由 Jeffrey Lin 提交于
Add hardware version to the firmware file name to handle scenarios where single system image supports variety of devices. Signed-off-by: NJeffrey Lin <jeffrey.lin@rad-ic.com> Patchwork-Id: 10127677 Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
- 02 1月, 2018 4 次提交
-
-
由 Zhuohua Li 提交于
Fix a spelling mistake: buttong -> button Signed-off-by: NZhuohua Li <lizhuohua1994@gmail.com> Patchwork-Id: 10134469 Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
由 Linus Walleij 提交于
This driver was merged in 2011 as a tool for detecting the orientation of a screen. The device driver assumes board file setup using the platform data from <linux/input/gpio_tilt.h>. But no boards in the kernel tree defines this platform data. As I am faced with refactoring drivers to use GPIO descriptors and pass decriptor tables from boards, or use the device tree device drivers like these creates a serious problem: I cannot fix them and cannot test them, not even compile-test them with a system actually using it (no in-tree boardfile). I suggest to delete this driver and rewrite it using device tree if it is still in use on actively maintained systems. I can also offer to rewrite it out of the blue using device tree if someone promise to test it and help me iterate it. Signed-off-by: NLinus Walleij <linus.walleij@linaro.org> Acked-by: NHeiko Stuebner <heiko@sntech.de> Patchwork-Id: 10133609 Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
由 Deepa Dinamani 提交于
struct timeval which is part of struct input_event to maintain the event times is not y2038 safe. Real time timestamps are also not ideal for input_event as this time can go backwards as noted in the patch a80b83b7 by John Stultz. The patch switches the timestamps to use monotonic time from realtime time. This is assuming no one is using absolute times from these timestamps. The structure to maintain input events will be changed in a different patch. Signed-off-by: NDeepa Dinamani <deepa.kernel@gmail.com> Acked-by: NPeter Hutterer <peter.hutterer@who-t.net> Patchwork-Id: 10118255 Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
由 Arnd Bergmann 提交于
This gets rid of the deprecated do_gettimeofday() call in favor of ktime_get(), which is also more reliable as it uses monotonic times. The code now gets a bit simpler. Signed-off-by: NArnd Bergmann <arnd@arndb.de> Patchwork-Id: 10076621 Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-