summaryrefslogtreecommitdiff
path: root/drivers/input
AgeCommit message (Collapse)Author
2016-10-09input: misc: pat9125: fix issues found in static analysisHimanshu Aggarwal
Fix the following issues found in static analysis: - missing blank lines after declarations - unnecessary return in a void function - exporting world writable files is usually an error - block comments use * on subsequent and trailing lines - Add DT binding description and vendor prefixe for the driver. - Add Linux Foundation copyright markings. Change-Id: Id2ed9a6d4e31bd2acd3185bf7ef9c78f8a41cf36 Signed-off-by: Himanshu Aggarwal <haggarwa@codeaurora.org> Signed-off-by: Vevek Venkatesan <vevekv@codeaurora.org> Signed-off-by: Shantanu Jain <shjain@codeaurora.org>
2016-10-10This is the reference driver source code for Pixart OTS PAT9125.Lawrence Liao
Change-Id: Ie366894e9e89707fa2950a7ffbfe4e93059a19a3 Signed-off-by: Lawrence Liao <lawrence_liao@pixart.com> (cherry picked from commit dfc4349a8aa02bb0b7b0639ad5368a5c85f6520f) Git-commit: dfc4349a8aa02bb0b7b0639ad5368a5c85f6520f Git-repo: https://github.com/PixartOpen/pixart-sensor-db810-linux-driver [shjain@codeaurora.org: removed below listed files from original commit as they are not needed and to resolve trivial merge conflicts: 1. arch/arm/boot/dts/qcom/apq8094-dragonboard.dtsi 2. arch/arm/boot/dts/qcom/msm8994-pinctrl.dtsi 3. arch/arm/boot/dts/qcom/msm8994.dtsi 4. drivers/input/misc/Makefile 5. drivers/input/misc/ots_pat9125/Makefile Remove the unused pieces of algorithm from the reference driver of Pixart PAT9125 Rotating side button.] Signed-off-by: Shantanu Jain <shjain@codeaurora.org>
2016-10-05Merge "input: synaptics_dsx: allocate heap memory for temp buf"Linux Build Service Account
2016-10-03Merge "input: synaptics_dsx_core: make clocks as optional for secure touch"Linux Build Service Account
2016-10-03input: synaptics_dsx: allocate heap memory for temp bufRavi Kumar Siddojigari
There is a possible stack overflow vulnerability in the rmidev_write function because the stack array size is from user space. changes to allocate heap memory for the temporary buffer instead of stack memory to prevent the stack overflow vulnerability. As discussed under CVE-2016-3865 and ANDROID-28799389. Change-Id: I20f639e09aaf3c533c98a12a2413570feae3d6d0 Signed-off-by: Ravi Kumar Siddojigari <rsiddoji@codeaurora.org> Signed-off-by: Shantanu Jain <shjain@codeaurora.org>
2016-09-28input: touchscreen: Change dev_pm_ops for Goodix driverShantanu Jain
Convert the driver to dev_pm_ops from SIMPLE_DEV_PM_OPS in Goodix TS driver to reduce suspend/resume latency. Change-Id: I45690b239c73f636538b864f0c4a7e539a02eedb Signed-off-by: Shantanu Jain <shjain@codeaurora.org>
2016-09-27input: touchscreen: Fix issues in suspend pathHimanshu Aggarwal
Fix issues in suspend path in Goodix driver. Change-Id: I280f2201c69838ad4da8eb94e9f10768f54ed457 Signed-off-by: Himanshu Aggarwal <haggarwa@codeaurora.org>4 Signed-off-by: Sudhakar Manapati <smanap@codeaurora.org>
2016-09-27input: touchscreen: Remove redundant code from Goodix driverHimanshu Aggarwal
Remove code that reads firmware from the header file, this feature is not supported. Change-Id: I6c18e153ddf18667ca83d47df20c71bce6dbfa21 Signed-off-by: Himanshu Aggarwal <haggarwa@codeaurora.org>
2016-09-27input: touchscreen: Remove irq polling from Goodix driverShantanu Jain
Remove irq polling from Goodix driver. Use interrupt based mechanism to process interrupts from touch controller. Change-Id: I0a9037eac6e30a6319919043dd2ef1c226663af9 Signed-off-by: Shantanu Jain <shjain@codeaurora.org> Signed-off-by: Sudhakar Manapati <smanap@codeaurora.org>
2016-09-26input: touchscreen: Add threaded irq support to Goodix driverShantanu Jain
Add threaded irq support to Goodix touchscreen driver to reduce the time spent with interrupts diabled to a bare minimum by pushing the processing out into the kernel thread. Change-Id: I3ade13181957d327ad9d0266b1999a4b0f2d8d1a Signed-off-by: Shantanu Jain <shjain@codeaurora.org>
2016-09-26input: synaptics_dsx_core: make clocks as optional for secure touchAbinaya P
Make clocks needed for secure touch as optional. Hence, even if the clocks are not defined, just proceed further and initialise the secure touch session. Change-Id: Id8fb80ca0297bc1d1854fdc710abce6a4d2f9620 Signed-off-by: Abinaya P <abinayap@codeaurora.org>
2016-09-26input: touchscreen: Add debugfs support for suspend/resume.Shantanu Jain
Add debugfs entry for suspend/resume that allow suspending/ resuming of Goodix CTP driver from userspace. Also change the return type of goodix_ts_resume and goodix_ts_suspend functions and set the status of gtp_is_suspended in the last of above functions. Change-Id: Ic2b1b2562b63ccecdf15bdc64ad7e45996d196d3 Signed-off-by: Shantanu Jain <shjain@codeaurora.org>
2016-09-25msm: reap unused kernel filesSudhakar Manapati
This change removes source files from the kernel tree that were not being used during make. Change-Id: I5132854367330a9b47f678409cbe6a45f2b5abb3 Signed-off-by: Sudhakar Manapati <smanap@codeaurora.org>
2016-09-25input: touchscreen: Code clean-up for Goodix driverShantanu Jain
Fix errors and warnings found by checkpatch script in goodix_tool.c and gt9xx_update.c. Correct debug messages in goodix_update.c. Remove magic numbers for read-write flags with macros in goodix_tool.c Change-Id: I3a00fb46106f859128f0fa9b8c99b5d6ba24bc7b Signed-off-by: Shantanu Jain <shjain@codeaurora.org>
2016-09-22input: touchscreen: Convert Goodix driver to dev_pm_opsShantanu Jain
Convert Goodix driver to dev_pm_ops. Add return type and parameters for suspend/resume for Goodix driver. Change-Id: I5243d9ab801f6964e675ad37c2161beda3586dfe Signed-off-by: Shantanu Jain <shjain@codeaurora.org>
2016-09-22input: touchscreen: Change late_init call to module_initShantanu Jain
Change late_initcall usage in goodix driver to module_init. Change-Id: I59681138448584fc7a04c95dc8af3d4c3d395ff0 Signed-off-by: Shantanu Jain <shjain@codeaurora.org>
2016-09-22input: touchscreen: Replace kernel thread with a workqueueShantanu Jain
Replace the firmware update kernel thread with a workqueue. Now the firmware upgrade procedure can be called later in future time without blocking the registration of the touchscreen driver. Using a kernel thread is an overhead in the current driver as it is a one shot thread. Change-Id: I0d4731148351652092fe7feede0b44828939d98b Signed-off-by: Shantanu Jain <shjain@codeaurora.org>
2016-09-21input: touchscreen: power off touch panel during suspendBingzhe Cai
Allow turn off touch panel power and reconfigure related GPIOs to maximize power saving. Change-Id: I25d7dc8abbd6dae4c54ee14f8feaf5701f64fd95 Signed-off-by: Bingzhe Cai <bingzhec@codeaurora.org> Signed-off-by: Sudhakar Manapati <smanap@codeaurora.org>
2016-09-21input: touchscreen: Add virtual key support from dtsiShantanu Jain
Add virtual key support from device tree node and corrected the sequence of virtual keys defined in dtsi for Goodix driver. Change-Id: Iee1db2eb07c00fd4338255b9648fac5e05aa9c6d Signed-off-by: Shantanu Jain <shjain@codeaurora.org> Signed-off-by: Abinaya P <abinayap@codeaurora.org>
2016-09-20input: touchscreen: Add fw_name sysfs entry in Goodix driverShantanu Jain
Add fw_name sysfs entry in Goodix driver. This entry allows user to read and write firmware name from sysfs. Change-Id: I69585d757f1a6dc40834a99ee67c872bf6f3ea13 Signed-off-by: Shantanu Jain <shjain@codeaurora.org>
2016-09-20input: touchscreen: Remove improper debug codeShantanu Jain
Remove unnecessary, redundant and improper debug code and replace them with standard debug calls in Goodix driver files. Change-Id: I763598585cee9705d6def8b7fe61d3206788912b Signed-off-by: Shantanu Jain <shjain@codeaurora.org> Signed-off-by: Sudhakar Manapati <smanap@codeaurora.org>
2016-09-15Merge "input: touchscreen: pull down reset and interrupt pin before GT9xx ↵Linux Build Service Account
powerup"
2016-09-15input: touchscreen: pull down reset and interrupt pin before GT9xx powerupBingzhe Cai
According to vendor's suggestion, reset pin and interrupt pin must be pulled down before touchpanel controller power up. This is required for all Goodix devices. Change-Id: If16fab02967abbd0c2a6e4365fed76f9e8729bc2 Signed-off-by: Bingzhe Cai <bingzhec@codeaurora.org>
2016-09-15input: touchscreen: Add devm_kzalloc calls to goodix driverShantanu Jain
Change the kzalloc calls to devm_kzalloc calls to avoid explicit kfree calls. Remove redundant kfree calls to avoid double free. Fix error check path on devm_kzalloc return values. Also remove redundant goto labels. Change-Id: I62f0ff800318882067bc0f16b021cb344e340ecf Signed-off-by: Shantanu Jain <shjain@codeaurora.org> Signed-off-by: Sudhakar Manapati <smanap@codeaurora.org>
2016-09-15input: touchscreen: Clean initialising linux kernel codeShantanu Jain
Use designated initializer code in gt9xx_update.c and goodix_tool.c Goodix drivers. Change-Id: Idc5b45c09813486c926ce52b2d41e81df526219b Signed-off-by: Shantanu Jain <shjain@codeaurora.org>
2016-09-15input: touchscreen: Use macros for magic numbers in Goodix driversShantanu Jain
Use macros instead of magic numbers for maximum i2c retries in Goodix driver. Change-Id: I9f7da9f43418cd1d423aaf331f41d37d13f248d4 Signed-off-by: Shantanu Jain <shjain@codeaurora.org>
2016-09-15Merge "input: it7258_ts_i2c: rename regulator_set_optimum_mode function"Linux Build Service Account
2016-09-15Merge "input: touchscreen: Correct return value check in Goodix driver"Linux Build Service Account
2016-09-15Merge "input: touchscreen: Clean code for i2c_read and i2c_write"Linux Build Service Account
2016-09-15Merge "input: touchscreen: Use proper conventional functions for debug"Linux Build Service Account
2016-09-15input: touchscreen: add multiple config data support for GT9xxBingzhe Cai
Goodix GT9xx touchscreen driver supports up to six groups of config data and uses hardware GPIO configuration to select which one will be used. This change allows these six config groups to be loaded from devicetree. Change-Id: I9dfd698e7084164688dd964ed914d5eecc75ecd3 Signed-off-by: Bingzhe Cai <bingzhec@codeaurora.org> Signed-off-by: Sudhakar Manapati <smanap@codeaurora.org>
2016-09-13input: it7258_ts_i2c: rename regulator_set_optimum_mode functionAbinaya P
The function regulator_set_optimum_mode() has been renamed to regulator_set_load(). So update the driver accordingly. Change-Id: I7d69a4529368918f159a25769f497e6425838460 Signed-off-by: Abinaya P <abinayap@codeaurora.org>
2016-09-13input: touchscreen: Correct return value check in Goodix driverShantanu Jain
Correct return value check of gtp_read_fw_version, called in probe of the Goodix driver. The return value is actually the number of registers read through gtp_i2c_read() function call. Also change the error message of gtp_check_product_id. Change-Id: I0b643e250a487f08a19555237802b020b0873d1a Signed-off-by: Shantanu Jain <shjain@codeaurora.org>
2016-09-13input: touchscreen: Clean code for i2c_read and i2c_writeShantanu Jain
Use standard initializer code in gtp_i2c_read and gtp_i2c_write functions for Goodix touchscreen driver. Change-Id: Id954be61a0b4596339a659928fb630c5c5538a9a Signed-off-by: Shantanu Jain <shjain@codeaurora.org> Signed-off-by: Sudhakar Manapati <smanap@codeaurora.org>
2016-09-13input: touchscreen: Use proper conventional functions for debugShantanu Jain
Replace non-standard debug function with the conventional functions in Goodix driver. And remove unnecessary debug function used in Goodix driver. Change-Id: Ia89d225333c1309710aab67b9c406784567e3050 Signed-off-by: Shantanu Jain <shjain@codeaurora.org> Signed-off-by: Sudhakar Manapati <smanap@codeaurora.org>
2016-09-12input: touchpanel: fix security issues in GT915 driverBingzhe Cai
There are multiple buffer overflow and input validation issues in Goodix gt915 driver, fix these issues by adding data length check and change file system node mode. Change-Id: I5173fc1ca021fd45c939c7c8a4f460651330de5b Signed-off-by: Bingzhe Cai <bingzhec@codeaurora.org> Signed-off-by: Sudhakar Manapati <smanap@codeaurora.org>
2016-09-12input: touchscreen: Add dynamic detection support to Goodix driverShantanu Jain
Add dynamic detection support to goodix driver, where the driver tries to read the chip id and make sure it is communicating with the right chip. gtp_read_version is modified to gtp_read_fw_version which reads the firmware version from the controller and will be used during fw update process. Change-Id: I2dc51b84f817413da6bf9b266e2fe7e0bb09c4bc Signed-off-by: Shantanu Jain <shjain@codeaurora.org> Signed-off-by: Sudhakar Manapati <smanap@codeaurora.org>
2016-09-12input: touchscreen: modify report event according to MT protocol BBingzhe Cai
Multi-touch(MT) protocol B use input_mt_report_slot_state() instead of send ABS_MT_TRACKING_ID event directly, so modify the driver to follow the protocol and remove redundant protocol A code. Change-Id: I542e61fabaaa04fcf5fb7e454e10599511f18e39 Signed-off-by: Bingzhe Cai <bingzhec@codeaurora.org> Signed-off-by: Sudhakar Manapati <smanap@codeaurora.org>
2016-09-12input: touchscreen: release all touches before suspendShantanu Jain
Release all touches before going to suspend for goodix gt9xx TS driver. Change-Id: Ia3446f3c23be4fe29bfea5f85b22e8b903cffb9e Signed-off-by: Shantanu Jain <shjain@codeaurora.org> Signed-off-by: Sudhakar Manapati <smanap@codeaurora.org>
2016-09-13input: makefile: Add makefile and kconfig for GT9xx CTPFigo Wang
Add Makefile and Kconfig to build Goodix GT9xx Touchscreen Driver. Change-Id: Ibbcdcbb4563bc022d6e4034c37bc633eb9b34315 Signed-off-by: Figo Wang <figow@codeaurora.org> Signed-off-by: Sudhakar Manapati <smanap@codeaurora.org> Signed-off-by: Shantanu Jain <shjain@codeaurora.org>
2016-09-12Merge "input: Makefile: include ITE tech touch driver for compilation"Linux Build Service Account
2016-09-12Merge "input: touchscreen: add support for IT7260 touch controller series"Linux Build Service Account
2016-09-12Merge "input: touchpanel: enable protocol B for skuf CTP driver"Linux Build Service Account
2016-09-12Merge "input: touchpanel: Add FB notifications support to GT9xx"Linux Build Service Account
2016-09-12Merge "input: synaptics_2.6: add pinctrl support for Synaptics 2.6 driver"Linux Build Service Account
2016-09-12input: touchpanel: enable protocol B for skuf CTP driverBingzhe Cai
Skuf use touch panel protocol B for touch event recognition that needs enable this protocol in driver. Change-Id: Ic855ed4fb0277a9bc5996bcb310db67b8ccf5c03 Signed-off-by: Bingzhe Cai <bingzhec@codeaurora.org> Signed-off-by: Sudhakar Manapati <smanap@codeaurora.org>
2016-09-12input: touchpanel: Add FB notifications support to GT9xxBingzhe Cai
Add support for FB notifications to trigger suspend/resume based on FB blank/unblank events. Change-Id: I61803e3a731e047d0641e3b1ccbae58b9bd1bd89 Signed-off-by: Bingzhe Cai <bingzhec@codeaurora.org> Signed-off-by: Sudhakar Manapati <smanap@codeaurora.org>
2016-09-12input: touchpanel: Add power control to GT9xx driverBingzhe Cai
Add power initialization function to request internal and external LDO depends on device tree configuration. Add power control function to enable and disable device power. Change-Id: If063900f8cd61c36c4b200d781c68e742cd6bbaf Signed-off-by: Bingzhe Cai <bingzhec@codeaurora.org> Signed-off-by: Sudhakar Manapati <smanap@codeaurora.org>
2016-09-12input: touchscreen: add support for IT7260 touch controller seriesSudhakar Manapati
IT7260 touch controllers are capacitative touch controller ICs with multi-touch support and can detect upto 3 fingers. Change-Id: I20a4339639a715111a340b7a607448ec7078549e Signed-off-by: Abinaya P <abinayap@codeaurora.org>
2016-09-12input: Makefile: include ITE tech touch driver for compilationAbinaya P
Add ITE tech touch screen driver for the compilation. Change-Id: Iee6abc583917968879a19a5e67b4db08d506c794 Signed-off-by: Abinaya P <abinayap@codeaurora.org>