summaryrefslogtreecommitdiff
path: root/drivers/input (follow)
Commit message (Collapse)AuthorAge
...
| * | | | | | | input: ft5x06_ts: add support for pinctrl frameworkMao Li2016-08-21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Migrate the Focaltech driver to use pinctrl framework for GPIO configuration so that driver is compatible with targets that use and targets that don't use pinctrl framework. This patch is propagated from 3.18 kernel 'commit 266d1fe0f630 ("input: ft5x06_ts: add support for pinctrl framework")' Change-Id: I84fc2a6d30f831b4b054780b107ce105614855ea Signed-off-by: Mao Li <maol@codeaurora.org>
| * | | | | | | input: ft5x06_ts: check vendor id before upgrade FT firmwareMao Li2016-08-21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Upgrade the firmware only if same vendor id is found both in existing fw and new fw to be upgraded. This patch is propagated from 3.18 kernel 'commit dba19fc86781 ("input: ft5x06_ts: check vendor id before upgrade FT firmware")' Change-Id: Idfc50da45891a1475ac6b35d80c7d725607cbf81 Signed-off-by: Mao Li <maol@codeaurora.org>
| * | | | | | | input: touchscreen: change the focaltech firmware upgrade methodSudhakar Manapati2016-08-21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | upgarde firmware on the touch controller when the new firmware version is geater than the current firmware version. Update the firmware version id after successful firmware update. skip firmware update when device is in suspend state. This patch is propagated from msm-3.18 kernel 'commit 8399308e570e ("input: touchscreen: change the focaltech firmware upgrade method")' CRs-Fixed: 1046961 Change-Id: Ic462f6483887a3654665852e58ae9891de9f5eff Signed-off-by: Sarada Prasanna Garnayak <c_sgarna@codeaurora.org> Signed-off-by: Sudhakar Manapati <smanap@codeaurora.org>
| * | | | | | | input: ft5x06_ts: add support for firmware update for CTP FT6X36Mao Li2016-08-21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The firmware image format is changed in CTP FT6436. Also vendor id and version id are read from fw image from a different offset as compared to previous controllers. The driver is updated to support the new image format. This patch is propagated from msm-3.18 kernel 'commit 6146c68f81b4 ("input: ft5x06_ts: add support for firmware update for CTP FT6X36")' Change-Id: I465fdfa73e56e8fc4bbfdde980c558e4715d6d08 Signed-off-by: Mao Li <maol@codeaurora.org> Signed-off-by: Sudhakar Manapati <smanap@codeaurora.org>
| * | | | | | | input: ft5x06_ts: remove deprecated apis in 3.18 kernelSudhakar Manapati2016-08-21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch removes the usage of deprecated apis like usleep(), __devexit_p, etc. This is a propagated patch from 3.18 kernel 'commit 20482b216b8a ("input: ft5x06_ts: remove deprecated apis in 3.18 kernel")' Change-Id: I77cedabdb234a643f96427f051038faad31bfdcf Signed-off-by: Sudhakar Manapati <smanap@codeaurora.org>
| * | | | | | | input: ft5x06: add support when CONFIG_PM is not definedChun Zhang2016-08-21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When CONFIG_PM is not defined, there are some compilation errors, because it introduces undeclared touch suspend and resume function. This patch is propagated from 3.18 kernel 'commit a144428c6e02 ("input: ft5x06: add support when CONFIG_PM is not defined")' Change-Id: I869bd41270ea240c671e5478126a61d4ff2088dc Signed-off-by: Chun Zhang <chunz@codeaurora.org>
| * | | | | | | input: touchscreen: request threaded-only IRQs with IRQF_ONESHOTShantanu Jain2016-08-21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Threaded IRQs without primary handler need to be requested with IRQF_ONESHOT, otherwise the request will fail. This patch adds the IRQF_ONESHOT to the focaltech touchscreen driver where it is missing. This patch is propagated from 3.18 kernel 'commit 4e8b58e99bf7 ("input: touchscreen: request threaded-only IRQs with IRQF_ONESHOT")' Change-Id: I429f48126bd5d28c6dbf6ba846175d5e643dd436 Signed-off-by: Shantanu Jain <shjain@codeaurora.org>
| * | | | | | | input: touchscreen: ft5x06: fix firmware force update issueBingzhe Cai2016-08-21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Force firmware update cannot work when touchscreen controller cannot report correct family ID. If touchscreen is does not work in correct state and it reports wrong family ID, it cannot be recovered by force update, this change use family ID from device tree instead of read from controller register to fix this issue. This patch is propagated from 3.18 kernel 'commit a85789530620 ("input: touchscreen: ft5x06: fix firmware force update issue")' Change-Id: I85d24bfc68a7777053c15f28a84027260c68cebd Signed-off-by: Bingzhe Cai <bingzhec@codeaurora.org>
| * | | | | | | input: touchscreen: ft5x06: add FT5336 firmware update supportBingzhe Cai2016-08-22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | FT5336 use new firmware bootloader, current driver cannot update its firmware. Driver needs update to support this new firmware bootloader. This patch is propagated from 3.18 kernel 'commit 740d7b108461 ("input: touchscreen: ft5x06: add FT5336 firmware update support")' CRs-Fixed: 1046961 Change-Id: I5c210097a6b3daedce52c4dda806c698cda63968 Signed-off-by: Bingzhe Cai <bingzhec@codeaurora.org>
| * | | | | | | input: touchscreen: ft5x06: remove unbalanced touch eventBingzhe Cai2016-08-19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Touchscreen driver may generate unbalanced input events when enter suspend state, these unbalanced event will make input system always wait for symmetrical input event and can not handle input event properly. PRESSURE event is removed to keep input events symmetrical. This patch is propagated from msm-3.18 kernel 'commit 15725c248511 ("input: touchscreen: ft5x06: remove unbalanced touch event")' CRs-Fixed: 566134 Change-Id: I3f6fda3fb5d0a717ae943a9113be89623c96ce61 Signed-off-by: Bingzhe Cai <bingzhec@codeaurora.org>
* | | | | | | | Merge "input: touchscreen: add option to ignore Focaltech family-id check"Linux Build Service Account2016-08-18
|\| | | | | | |
| * | | | | | | input: touchscreen: add option to ignore Focaltech family-id checkBingzhe Cai2016-08-17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Focaltech touchscreen ICs may use different chip IDs for same module. Add support to ignore ID check for such cases. This patch is propagated from msm-3.10 kernel 'commit d6e831bdf2af ("input: touchscreen: add option to ignore Focaltech family-id check")' Also fix the checkpatch errors. Change-Id: I0fe8da6a5e687317b4878b59ac5d1a4a4b620e1d Signed-off-by: Bingzhe Cai <bingzhec@codeaurora.org> Signed-off-by: Sudhakar Manapati <smanap@codeaurora.org>
* | | | | | | | Merge "Merge remote-tracking branch 'msm-4.4/tmp-510d0a3f' into msm-4.4"Linux Build Service Account2016-08-18
|\ \ \ \ \ \ \ \
| * \ \ \ \ \ \ \ Merge remote-tracking branch 'msm-4.4/tmp-510d0a3f' into msm-4.4Trilok Soni2016-08-18
| |\ \ \ \ \ \ \ \ | | | |/ / / / / / | | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * msm-4.4/tmp-510d0a3f: Linux 4.4.11 nf_conntrack: avoid kernel pointer value leak in slab name drm/radeon: fix DP link training issue with second 4K monitor drm/i915/bdw: Add missing delay during L3 SQC credit programming drm/i915: Bail out of pipe config compute loop on LPT drm/radeon: fix PLL sharing on DCE6.1 (v2) Revert "[media] videobuf2-v4l2: Verify planes array in buffer dequeueing" Input: max8997-haptic - fix NULL pointer dereference get_rock_ridge_filename(): handle malformed NM entries tools lib traceevent: Do not reassign parg after collapse_tree() qla1280: Don't allocate 512kb of host tags atomic_open(): fix the handling of create_error regulator: axp20x: Fix axp22x ldo_io voltage ranges regulator: s2mps11: Fix invalid selector mask and voltages for buck9 workqueue: fix rebind bound workers warning ARM: dts: at91: sam9x5: Fix the memory range assigned to the PMC vfs: rename: check backing inode being equal vfs: add vfs_select_inode() helper perf/core: Disable the event on a truncated AUX record regmap: spmi: Fix regmap_spmi_ext_read in multi-byte case pinctrl: at91-pio4: fix pull-up/down logic spi: spi-ti-qspi: Handle truncated frames properly spi: spi-ti-qspi: Fix FLEN and WLEN settings if bits_per_word is overridden spi: pxa2xx: Do not detect number of enabled chip selects on Intel SPT ALSA: hda - Fix broken reconfig ALSA: hda - Fix white noise on Asus UX501VW headset ALSA: hda - Fix subwoofer pin on ASUS N751 and N551 ALSA: usb-audio: Yet another Phoneix Audio device quirk ALSA: usb-audio: Quirk for yet another Phoenix Audio devices (v2) crypto: testmgr - Use kmalloc memory for RSA input crypto: hash - Fix page length clamping in hash walk crypto: qat - fix invalid pf2vf_resp_wq logic s390/mm: fix asce_bits handling with dynamic pagetable levels zsmalloc: fix zs_can_compact() integer overflow ocfs2: fix posix_acl_create deadlock ocfs2: revert using ocfs2_acl_chmod to avoid inode cluster lock hang net/route: enforce hoplimit max value tcp: refresh skb timestamp at retransmit time net: thunderx: avoid exposing kernel stack net: fix a kernel infoleak in x25 module uapi glibc compat: fix compile errors when glibc net/if.h included before linux/if.h MIME-Version: 1.0 bridge: fix igmp / mld query parsing net: bridge: fix old ioctl unlocked net device walk VSOCK: do not disconnect socket when peer has shutdown SEND only net/mlx4_en: Fix endianness bug in IPV6 csum calculation net: fix infoleak in rtnetlink net: fix infoleak in llc net: fec: only clear a queue's work bit if the queue was emptied netem: Segment GSO packets on enqueue sch_dsmark: update backlog as well sch_htb: update backlog as well net_sched: update hierarchical backlog too net_sched: introduce qdisc_replace() helper gre: do not pull header in ICMP error processing net: Implement net_dbg_ratelimited() for CONFIG_DYNAMIC_DEBUG case samples/bpf: fix trace_output example bpf: fix check_map_func_compatibility logic bpf: fix refcnt overflow bpf: fix double-fdput in replace_map_fd_with_map_ptr() net/mlx4_en: fix spurious timestamping callbacks ipv4/fib: don't warn when primary address is missing if in_dev is dead net/mlx5e: Fix minimum MTU net/mlx5e: Device's mtu field is u16 and not int openvswitch: use flow protocol when recalculating ipv6 checksums atl2: Disable unimplemented scatter/gather feature vlan: pull on __vlan_insert_tag error path and fix csum correction net: use skb_postpush_rcsum instead of own implementations cdc_mbim: apply "NDP to end" quirk to all Huawei devices bpf/verifier: reject invalid LD_ABS | BPF_DW instruction net: sched: do not requeue a NULL skb packet: fix heap info leak in PACKET_DIAG_MCLIST sock_diag interface route: do not cache fib route info on local routes with oif decnet: Do not build routes to devices without decnet private data. parisc: Use generic extable search and sort routines arm64: kasan: Use actual memory node when populating the kernel image shadow arm64: mm: treat memstart_addr as a signed quantity arm64: lse: deal with clobbered IP registers after branch via PLT arm64: mm: check at build time that PAGE_OFFSET divides the VA space evenly arm64: kasan: Fix zero shadow mapping overriding kernel image shadow arm64: consistently use p?d_set_huge arm64: fix KASLR boot-time I-cache maintenance arm64: hugetlb: partial revert of 66b3923a1a0f arm64: make irq_stack_ptr more robust arm64: efi: invoke EFI_RNG_PROTOCOL to supply KASLR randomness efi: stub: use high allocation for converted command line efi: stub: add implementation of efi_random_alloc() efi: stub: implement efi_get_random_bytes() based on EFI_RNG_PROTOCOL arm64: kaslr: randomize the linear region arm64: add support for kernel ASLR arm64: add support for building vmlinux as a relocatable PIE binary arm64: switch to relative exception tables extable: add support for relative extables to search and sort routines scripts/sortextable: add support for ET_DYN binaries arm64: futex.h: Add missing PAN toggling arm64: make asm/elf.h available to asm files arm64: avoid dynamic relocations in early boot code arm64: avoid R_AARCH64_ABS64 relocations for Image header fields arm64: add support for module PLTs arm64: move brk immediate argument definitions to separate header arm64: mm: use bit ops rather than arithmetic in pa/va translations arm64: mm: only perform memstart_addr sanity check if DEBUG_VM arm64: User die() instead of panic() in do_page_fault() arm64: allow kernel Image to be loaded anywhere in physical memory arm64: defer __va translation of initrd_start and initrd_end arm64: move kernel image to base of vmalloc area arm64: kvm: deal with kernel symbols outside of linear mapping arm64: decouple early fixmap init from linear mapping arm64: pgtable: implement static [pte|pmd|pud]_offset variants arm64: introduce KIMAGE_VADDR as the virtual base of the kernel region arm64: add support for ioremap() block mappings arm64: prevent potential circular header dependencies in asm/bug.h of/fdt: factor out assignment of initrd_start/initrd_end of/fdt: make memblock minimum physical address arch configurable arm64: Remove the get_thread_info() function arm64: kernel: Don't toggle PAN on systems with UAO arm64: cpufeature: Test 'matches' pointer to find the end of the list arm64: kernel: Add support for User Access Override arm64: add ARMv8.2 id_aa64mmfr2 boiler plate arm64: cpufeature: Change read_cpuid() to use sysreg's mrs_s macro arm64: use local label prefixes for __reg_num symbols arm64: vdso: Mark vDSO code as read-only arm64: ubsan: select ARCH_HAS_UBSAN_SANITIZE_ALL arm64: ptdump: Indicate whether memory should be faulting arm64: Add support for ARCH_SUPPORTS_DEBUG_PAGEALLOC arm64: Drop alloc function from create_mapping arm64: prefetch: add missing #include for spin_lock_prefetch arm64: lib: patch in prfm for copy_page if requested arm64: lib: improve copy_page to deal with 128 bytes at a time arm64: prefetch: add alternative pattern for CPUs without a prefetcher arm64: prefetch: don't provide spin_lock_prefetch with LSE arm64: allow vmalloc regions to be set with set_memory_* arm64: kernel: implement ACPI parking protocol arm64: mm: create new fine-grained mappings at boot arm64: ensure _stext and _etext are page-aligned arm64: mm: allow passing a pgdir to alloc_init_* arm64: mm: allocate pagetables anywhere arm64: mm: use fixmap when creating page tables arm64: mm: add functions to walk tables in fixmap arm64: mm: add __{pud,pgd}_populate arm64: mm: avoid redundant __pa(__va(x)) arm64: mm: add functions to walk page tables by PA arm64: mm: move pte_* macros arm64: kasan: avoid TLB conflicts arm64: mm: add code to safely replace TTBR1_EL1 arm64: add function to install the idmap arm64: unmap idmap earlier arm64: unify idmap removal arm64: mm: place empty_zero_page in bss arm64: mm: specialise pagetable allocators asm-generic: Fix local variable shadow in __set_fixmap_offset Eliminate the .eh_frame sections from the aarch64 vmlinux and kernel modules arm64: Fix an enum typo in mm/dump.c arm64: kasan: ensure that the KASAN zero page is mapped read-only arch/arm64/include/asm/pgtable.h: add pmd_mkclean for THP arm64: hide __efistub_ aliases from kallsyms Linux 4.4.10 drm/i915/skl: Fix DMC load on Skylake J0 and K0 lib/test-string_helpers.c: fix and improve string_get_size() tests ACPI / processor: Request native thermal interrupt handling via _OSC drm/i915: Fake HDMI live status drm/i915: Make RPS EI/thresholds multiple of 25 on SNB-BDW drm/i915: Fix eDP low vswing for Broadwell drm/i915/ddi: Fix eDP VDD handling during booting and suspend/resume drm/radeon: make sure vertical front porch is at least 1 iio: ak8975: fix maybe-uninitialized warning iio: ak8975: Fix NULL pointer exception on early interrupt drm/amdgpu: set metadata pointer to NULL after freeing. drm/amdgpu: make sure vertical front porch is at least 1 gpu: ipu-v3: Fix imx-ipuv3-crtc module autoloading nvmem: mxs-ocotp: fix buffer overflow in read USB: serial: cp210x: add Straizona Focusers device ids USB: serial: cp210x: add ID for Link ECU ata: ahci-platform: Add ports-implemented DT bindings. libahci: save port map for forced port map powerpc: Fix bad inline asm constraint in create_zero_mask() ACPICA: Dispatcher: Update thread ID for recursive method calls x86/sysfb_efi: Fix valid BAR address range check ARC: Add missing io barriers to io{read,write}{16,32}be() ARM: cpuidle: Pass on arm_cpuidle_suspend()'s return value propogate_mnt: Handle the first propogated copy being a slave fs/pnode.c: treat zero mnt_group_id-s as unequal x86/tsc: Read all ratio bits from MSR_PLATFORM_INFO MAINTAINERS: Remove asterisk from EFI directory names writeback: Fix performance regression in wb_over_bg_thresh() batman-adv: Reduce refcnt of removed router when updating route batman-adv: Fix broadcast/ogm queue limit on a removed interface batman-adv: Check skb size before using encapsulated ETH+VLAN header batman-adv: fix DAT candidate selection (must use vid) mm: update min_free_kbytes from khugepaged after core initialization proc: prevent accessing /proc/<PID>/environ until it's ready Input: zforce_ts - fix dual touch recognition HID: Fix boot delay for Creative SB Omni Surround 5.1 with quirk HID: wacom: Add support for DTK-1651 xen/evtchn: fix ring resize when binding new events xen/balloon: Fix crash when ballooning on x86 32 bit PAE xen: Fix page <-> pfn conversion on 32 bit systems ARM: SoCFPGA: Fix secondary CPU startup in thumb2 kernel ARM: EXYNOS: Properly skip unitialized parent clock in power domain on mm/zswap: provide unique zpool name mm, cma: prevent nr_isolated_* counters from going negative Minimal fix-up of bad hashing behavior of hash_64() MD: make bio mergeable tracing: Don't display trigger file for events that can't be enabled mac80211: fix statistics leak if dev_alloc_name() fails ath9k: ar5008_hw_cmn_spur_mitigate: add missing mask_m & mask_p initialisation lpfc: fix misleading indentation clk: qcom: msm8960: Fix ce3_src register offset clk: versatile: sp810: support reentrance clk: qcom: msm8960: fix ce3_core clk enable register clk: meson: Fix meson_clk_register_clks() signature type mismatch clk: rockchip: free memory in error cases when registering clock branches soc: rockchip: power-domain: fix err handle while probing clk-divider: make sure read-only dividers do not write to their register CNS3xxx: Fix PCI cns3xxx_write_config() mwifiex: fix corner case association failure ata: ahci_xgene: dereferencing uninitialized pointer in probe nbd: ratelimit error msgs after socket close mfd: intel-lpss: Remove clock tree on error path ipvs: drop first packet to redirect conntrack ipvs: correct initial offset of Call-ID header search in SIP persistence engine ipvs: handle ip_vs_fill_iph_skb_off failure RDMA/iw_cxgb4: Fix bar2 virt addr calculation for T4 chips Revert: "powerpc/tm: Check for already reclaimed tasks" arm64: head.S: use memset to clear BSS efi: stub: define DISABLE_BRANCH_PROFILING for all architectures arm64: entry: remove pointless SPSR mode check arm64: mm: move pgd_cache initialisation to pgtable_cache_init arm64: module: avoid undefined shift behavior in reloc_data() arm64: module: fix relocation of movz instruction with negative immediate arm64: traps: address fallout from printk -> pr_* conversion arm64: ftrace: fix a stack tracer's output under function graph tracer arm64: pass a task parameter to unwind_frame() arm64: ftrace: modify a stack frame in a safe way arm64: remove irq_count and do_softirq_own_stack() arm64: hugetlb: add support for PTE contiguous bit arm64: Use PoU cache instr for I/D coherency arm64: Defer dcache flush in __cpu_copy_user_page arm64: reduce stack use in irq_handler arm64: Documentation: add list of software workarounds for errata arm64: mm: place __cpu_setup in .text arm64: cmpxchg: Don't incldue linux/mmdebug.h arm64: mm: fold alternatives into .init arm64: Remove redundant padding from linker script arm64: mm: remove pointless PAGE_MASKing arm64: don't call C code with el0's fp register arm64: when walking onto the task stack, check sp & fp are in current->stack arm64: Add this_cpu_ptr() assembler macro for use in entry.S arm64: irq: fix walking from irq stack to task stack arm64: Add do_softirq_own_stack() and enable irq_stacks arm64: Modify stack trace and dump for use with irq_stack arm64: Store struct thread_info in sp_el0 arm64: Add trace_hardirqs_off annotation in ret_to_user arm64: ftrace: fix the comments for ftrace_modify_code arm64: ftrace: stop using kstop_machine to enable/disable tracing arm64: spinlock: serialise spin_unlock_wait against concurrent lockers arm64: enable HAVE_IRQ_TIME_ACCOUNTING arm64: fix COMPAT_SHMLBA definition for large pages arm64: add __init/__initdata section marker to some functions/variables arm64: pgtable: implement pte_accessible() arm64: mm: allow sections for unaligned bases arm64: mm: detect bad __create_mapping uses Linux 4.4.9 extcon: max77843: Use correct size for reading the interrupt register stm class: Select CONFIG_SRCU megaraid_sas: add missing curly braces in ioctl handler sunrpc/cache: drop reference when sunrpc_cache_pipe_upcall() detects a race thermal: rockchip: fix a impossible condition caused by the warning unbreak allmodconfig KCONFIG_ALLCONFIG=... jme: Fix device PM wakeup API usage jme: Do not enable NIC WoL functions on S0 bus: imx-weim: Take the 'status' property value into account ARM: dts: pxa: fix dma engine node to pxa3xx-nand ARM: dts: armada-375: use armada-370-sata for SATA ARM: EXYNOS: select THERMAL_OF ARM: prima2: always enable reset controller ARM: OMAP3: Add cpuidle parameters table for omap3430 ext4: fix races of writeback with punch hole and zero range ext4: fix races between buffered IO and collapse / insert range ext4: move unlocked dio protection from ext4_alloc_file_blocks() ext4: fix races between page faults and hole punching perf stat: Document --detailed option perf tools: handle spaces in file names obtained from /proc/pid/maps perf hists browser: Only offer symbol scripting when a symbol is under the cursor mtd: nand: Drop mtd.owner requirement in nand_scan mtd: brcmnand: Fix v7.1 register offsets mtd: spi-nor: remove micron_quad_enable() serial: sh-sci: Remove cpufreq notifier to fix crash/deadlock ext4: fix NULL pointer dereference in ext4_mark_inode_dirty() x86/mm/kmmio: Fix mmiotrace for hugepages perf evlist: Reference count the cpu and thread maps at set_maps() drivers/misc/ad525x_dpot: AD5274 fix RDAC read back errors rtc: max77686: Properly handle regmap_irq_get_virq() error code rtc: rx8025: remove rv8803 id rtc: ds1685: passing bogus values to irq_restore rtc: vr41xx: Wire up alarm_irq_enable rtc: hym8563: fix invalid year calculation PM / Domains: Fix removal of a subdomain PM / OPP: Initialize u_volt_min/max to a valid value misc: mic/scif: fix wrap around tests misc/bmp085: Enable building as a module lib/mpi: Endianness fix fbdev: da8xx-fb: fix videomodes of lcd panels scsi_dh: force modular build if SCSI is a module paride: make 'verbose' parameter an 'int' again regulator: s5m8767: fix get_register() error handling irqchip/mxs: Fix error check of of_io_request_and_map() irqchip/sunxi-nmi: Fix error check of of_io_request_and_map() spi/rockchip: Make sure spi clk is on in rockchip_spi_set_cs locking/mcs: Fix mcs_spin_lock() ordering regulator: core: Fix nested locking of supplies regulator: core: Ensure we lock all regulators regulator: core: fix regulator_lock_supply regression Revert "regulator: core: Fix nested locking of supplies" videobuf2-v4l2: Verify planes array in buffer dequeueing videobuf2-core: Check user space planes array in dqbuf USB: usbip: fix potential out-of-bounds write cgroup: make sure a parent css isn't freed before its children mm/hwpoison: fix wrong num_poisoned_pages accounting mm: vmscan: reclaim highmem zone if buffer_heads is over limit numa: fix /proc/<pid>/numa_maps for THP mm/huge_memory: replace VM_NO_THP VM_BUG_ON with actual VMA check memcg: relocate charge moving from ->attach to ->post_attach cgroup, cpuset: replace cpuset_post_attach_flush() with cgroup_subsys->post_attach callback slub: clean up code for kmem cgroup support to kmem_cache_free_bulk workqueue: fix ghost PENDING flag while doing MQ IO x86/apic: Handle zero vector gracefully in clear_vector_irq() efi: Expose non-blocking set_variable() wrapper to efivars efi: Fix out-of-bounds read in variable_matches() IB/security: Restrict use of the write() interface IB/mlx5: Expose correct max_sge_rd limit cxl: Keep IRQ mappings on context teardown v4l2-dv-timings.h: fix polarity for 4k formats vb2-memops: Fix over allocation of frame vectors ASoC: rt5640: Correct the digital interface data select ASoC: dapm: Make sure we have a card when displaying component widgets ASoC: ssm4567: Reset device before regcache_sync() ASoC: s3c24xx: use const snd_soc_component_driver pointer EDAC: i7core, sb_edac: Don't return NOTIFY_BAD from mce_decoder callback toshiba_acpi: Fix regression caused by hotkey enabling value i2c: exynos5: Fix possible ABBA deadlock by keeping I2C clock prepared i2c: cpm: Fix build break due to incompatible pointer types perf intel-pt: Fix segfault tracing transactions drm/i915: Use fw_domains_put_with_fifo() on HSW drm/i915: Fixup the free space logic in ring_prepare drm/amdkfd: uninitialized variable in dbgdev_wave_control_set_registers() drm/i915: skl_update_scaler() wants a rotation bitmask instead of bit number drm/i915: Cleanup phys status page too pwm: brcmstb: Fix check of devm_ioremap_resource() return code drm/dp/mst: Get validated port ref in drm_dp_update_payload_part1() drm/dp/mst: Restore primary hub guid on resume drm/dp/mst: Validate port in drm_dp_payload_send_msg() drm/nouveau/gr/gf100: select a stream master to fixup tfb offset queries drm: Loongson-3 doesn't fully support wc memory drm/radeon: fix vertical bars appear on monitor (v2) drm/radeon: forbid mapping of userptr bo through radeon device file drm/radeon: fix initial connector audio value drm/radeon: add a quirk for a XFX R9 270X drm/amdgpu: fix regression on CIK (v2) amdgpu/uvd: add uvd fw version for amdgpu drm/amdgpu: bump the afmt limit for CZ, ST, Polaris drm/amdgpu: use defines for CRTCs and AMFT blocks drm/amdgpu: when suspending, if uvd/vce was running. need to cancel delay work. iommu/dma: Restore scatterlist offsets correctly iommu/amd: Fix checking of pci dma aliases pinctrl: single: Fix pcs_parse_bits_in_pinctrl_entry to use __ffs than ffs pinctrl: mediatek: correct debounce time unit in mtk_gpio_set_debounce xen kconfig: don't "select INPUT_XEN_KBDDEV_FRONTEND" Input: pmic8xxx-pwrkey - fix algorithm for converting trigger delay Input: gtco - fix crash on detecting device without endpoints netlink: don't send NETLINK_URELEASE for unbound sockets nl80211: check netlink protocol in socket release notification powerpc: Update TM user feature bits in scan_features() powerpc: Update cpu_user_features2 in scan_features() powerpc: scan_features() updates incorrect bits for REAL_LE crypto: talitos - fix AEAD tcrypt tests crypto: talitos - fix crash in talitos_cra_init() crypto: sha1-mb - use corrcet pointer while completing jobs crypto: ccp - Prevent information leakage on export iwlwifi: mvm: fix memory leak in paging iwlwifi: pcie: lower the debug level for RSA semaphore access s390/pci: add extra padding to function measurement block cpufreq: intel_pstate: Fix processing for turbo activation ratio Revert "drm/amdgpu: disable runtime pm on PX laptops without dGPU power control" Revert "drm/radeon: disable runtime pm on PX laptops without dGPU power control" drm/i915: Fix race condition in intel_dp_destroy_mst_connector() drm/qxl: fix cursor position with non-zero hotspot drm/nouveau/core: use vzalloc for allocating ramht futex: Acknowledge a new waiter in counter before plist futex: Handle unlock_pi race gracefully asm-generic/futex: Re-enable preemption in futex_atomic_cmpxchg_inatomic() ALSA: hda - Add dock support for ThinkPad X260 ALSA: pcxhr: Fix missing mutex unlock ALSA: hda - add PCI ID for Intel Broxton-T ALSA: hda - Keep powering up ADCs on Cirrus codecs ALSA: hda/realtek - Add ALC3234 headset mode for Optiplex 9020m ALSA: hda - Don't trust the reported actual power state x86 EDAC, sb_edac.c: Repair damage introduced when "fixing" channel address x86/mm/xen: Suppress hugetlbfs in PV guests arm64: Update PTE_RDONLY in set_pte_at() for PROT_NONE permission arm64: Honour !PTE_WRITE in set_pte_at() for kernel mappings sched/cgroup: Fix/cleanup cgroup teardown/init dmaengine: pxa_dma: fix the maximum requestor line dmaengine: hsu: correct use of channel status register dmaengine: dw: fix master selection debugfs: Make automount point inodes permanently empty lib: lz4: fixed zram with lz4 on big endian machines dm cache metadata: fix cmd_read_lock() acquiring write lock dm cache metadata: fix READ_LOCK macros and cleanup WRITE_LOCK macros usb: gadget: f_fs: Fix use-after-free usb: hcd: out of bounds access in for_each_companion xhci: fix 10 second timeout on removal of PCI hotpluggable xhci controllers usb: xhci: fix wild pointers in xhci_mem_cleanup xhci: resume USB 3 roothub first usb: xhci: applying XHCI_PME_STUCK_QUIRK to Intel BXT B0 host assoc_array: don't call compare_object() on a node ARM: OMAP2+: hwmod: Fix updating of sysconfig register ARM: OMAP2: Fix up interconnect barrier initialization for DRA7 ARM: mvebu: Correct unit address for linksys ARM: dts: AM43x-epos: Fix clk parent for synctimer KVM: arm/arm64: Handle forward time correction gracefully kvm: x86: do not leak guest xcr0 into host interrupt handlers x86/mce: Avoid using object after free in genpool block: loop: fix filesystem corruption in case of aio/dio block: partition: initialize percpuref before sending out KOBJ_ADD Conflicts: arch/arm64/Kconfig arch/arm64/include/asm/cputype.h arch/arm64/include/asm/hardirq.h arch/arm64/include/asm/irq.h arch/arm64/kernel/cpu_errata.c arch/arm64/kernel/cpuinfo.c arch/arm64/kernel/setup.c arch/arm64/kernel/smp.c arch/arm64/kernel/stacktrace.c arch/arm64/mm/init.c arch/arm64/mm/mmu.c arch/arm64/mm/pageattr.c mm/memcontrol.c CRs-Fixed: 1054234 Signed-off-by: Trilok Soni <tsoni@codeaurora.org> Change-Id: I2a7a34631ffee36ce18b9171f16d023be777392f
| | * | | | | | | Input: max8997-haptic - fix NULL pointer dereferenceMarek Szyprowski2016-05-18
| | | |_|_|_|_|/ | | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | commit 6ae645d5fa385f3787bf1723639cd907fe5865e7 upstream. NULL pointer derefence happens when booting with DTB because the platform data for haptic device is not set in supplied data from parent MFD device. The MFD device creates only platform data (from Device Tree) for itself, not for haptic child. Unable to handle kernel NULL pointer dereference at virtual address 0000009c pgd = c0004000 [0000009c] *pgd=00000000 Internal error: Oops: 5 [#1] PREEMPT SMP ARM (max8997_haptic_probe) from [<c03f9cec>] (platform_drv_probe+0x4c/0xb0) (platform_drv_probe) from [<c03f8440>] (driver_probe_device+0x214/0x2c0) (driver_probe_device) from [<c03f8598>] (__driver_attach+0xac/0xb0) (__driver_attach) from [<c03f67ac>] (bus_for_each_dev+0x68/0x9c) (bus_for_each_dev) from [<c03f7a38>] (bus_add_driver+0x1a0/0x218) (bus_add_driver) from [<c03f8db0>] (driver_register+0x78/0xf8) (driver_register) from [<c0101774>] (do_one_initcall+0x90/0x1d8) (do_one_initcall) from [<c0a00dbc>] (kernel_init_freeable+0x15c/0x1fc) (kernel_init_freeable) from [<c06bb5b4>] (kernel_init+0x8/0x114) (kernel_init) from [<c0107938>] (ret_from_fork+0x14/0x3c) Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com> Fixes: 104594b01ce7 ("Input: add driver support for MAX8997-haptic") [k.kozlowski: Write commit message, add CC-stable] Signed-off-by: Krzysztof Kozlowski <k.kozlowski@samsung.com> Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
| | * | | | | | Input: zforce_ts - fix dual touch recognitionKnut Wohlrab2016-05-11
| | | |_|_|_|/ | | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | commit 6984ab1ab35f422292b7781c65284038bcc0f6a6 upstream. A wrong decoding of the touch coordinate message causes a wrong touch ID. Touch ID for dual touch must be 0 or 1. According to the actual Neonode nine byte touch coordinate coding, the state is transported in the lower nibble and the touch ID in the higher nibble of payload byte five. Signed-off-by: Knut Wohlrab <Knut.Wohlrab@de.bosch.com> Signed-off-by: Oleksij Rempel <linux@rempel-privat.de> Signed-off-by: Dirk Behme <dirk.behme@de.bosch.com> Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
| | * | | | | Input: pmic8xxx-pwrkey - fix algorithm for converting trigger delayStephen Boyd2016-05-04
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | commit eda5ecc0a6b865561997e177c393f0b0136fe3b7 upstream. The trigger delay algorithm that converts from microseconds to the register value looks incorrect. According to most of the PMIC documentation, the equation is delay (Seconds) = (1 / 1024) * 2 ^ (x + 4) except for one case where the documentation looks to have a formatting issue and the equation looks like delay (Seconds) = (1 / 1024) * 2 x + 4 Most likely this driver was written with the improper documentation to begin with. According to the downstream sources the valid delays are from 2 seconds to 1/64 second, and the latter equation just doesn't make sense for that. Let's fix the algorithm and the range check to match the documentation and the downstream sources. Reported-by: Bjorn Andersson <bjorn.andersson@linaro.org> Fixes: 92d57a73e410 ("input: Add support for Qualcomm PMIC8XXX power key") Signed-off-by: Stephen Boyd <sboyd@codeaurora.org> Tested-by: John Stultz <john.stultz@linaro.org> Acked-by: Bjorn Andersson <bjorn.andersson@linaro.org> Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
| | * | | | | Input: gtco - fix crash on detecting device without endpointsVladis Dronov2016-05-04
| | | |_|_|/ | | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | commit 162f98dea487206d9ab79fc12ed64700667a894d upstream. The gtco driver expects at least one valid endpoint. If given malicious descriptors that specify 0 for the number of endpoints, it will crash in the probe function. Ensure there is at least one endpoint on the interface before using it. Also let's fix a minor coding style issue. The full correct report of this issue can be found in the public Red Hat Bugzilla: https://bugzilla.redhat.com/show_bug.cgi?id=1283385 Reported-by: Ralf Spenneberg <ralf@spenneberg.net> Signed-off-by: Vladis Dronov <vdronov@redhat.com> Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
* | | | | | Merge "input: touchscreen: correct the return value in ITE tech touch driver"Linux Build Service Account2016-08-18
|\ \ \ \ \ \
| * | | | | | input: touchscreen: correct the return value in ITE tech touch driverShantanu Jain2016-08-17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Correct the return value of it7260_ts_chip_low_power_mode function in ITE tech touch driver. This is a propagation patch from 3.18 kernel 'commit b1e998b971d9 ("input: touchscreen: correct the return value in ITE tech touch driver")' CRs-Fixed: 1020680 Change-Id: Iaaeb4ae22fadefd976906fdf8a995cd7cfe12d33 Signed-off-by: Shantanu Jain <shjain@codeaurora.org>
| * | | | | | input: touchscreen: send WAKEUP event properly in ITE Tech driverShantanu Jain2016-08-17
| |/ / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Send WAKEUP event properly in ITE Tech touch driver when device is in suspend mode. The driver maintins a boolean state for sending the WAKEUP event. When user taps the screen for touch-to-wake feature, the irq handler for ITE Tech touch driver is scheduled after the ITE tech resume function. Due to this the boolean state gets reset. So this change handles this use case properly. This is a propagation patch from 3.18 kernel 'commit 25af9ff9bc39 ("input: touchscreen: send WAKEUP event properly in ITE Tech driver")' CRs-Fixed: 1020680 Change-Id: Ifc1d00a42ecffe7aad65d99dadcdf170c56129a7 Signed-off-by: Shantanu Jain <shjain@codeaurora.org>
* | | | | | Merge "input: touchscreen: remove PRESSURE event from ft5x06 driver"Linux Build Service Account2016-08-18
|\ \ \ \ \ \ | | |_|/ / / | |/| | | |
| * | | | | input: touchscreen: remove PRESSURE event from ft5x06 driverBingzhe Cai2016-08-17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | There is no need to send ABS_MT_PRESSURE event when contact is removed from touchscreen, this redundant event will confuse some APP and cause malfunction. This patch is propagated from msm-3.18 kernel 'commit 75184ddcf2d1 ("input: touchscreen: remove PRESSURE event from ft5x06 driver")' CRs-Fixed: 537993 Change-Id: Ie2aef79f99cb80c10706f832cfab583ba742fdf1 Signed-off-by: Bingzhe Cai <bingzhec@codeaurora.org>
* | | | | | Merge "input: ft5x06_ts: Upgrade firmware based on version"Linux Build Service Account2016-08-18
|\| | | | |
| * | | | | input: ft5x06_ts: Upgrade firmware based on versionMohan Pallaka2016-08-17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Upgrade firmware on the controller only when a new version of firmware is available. This patch is propagated from msm-3.18 kernel 'commit 88d102ef081f ("input: ft5x06_ts: Upgrade firmware based on version")' Change-Id: I4cf75b3c5efb90f151da09ed73b1ba62b9b5bb1c Signed-off-by: Mohan Pallaka <mpallaka@codeaurora.org>
* | | | | | Merge "input: ft5x06_ts: Parse board specific parameters from pdata"Linux Build Service Account2016-08-18
|\| | | | |
| * | | | | input: ft5x06_ts: Parse board specific parameters from pdataMohan Pallaka2016-08-17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | To support all models supported by focaltech push necessary parameters to platform data. This patch is propagated from msm-3.18 kernel 'commit 473f8cd84f93 ("input: ft5x06_ts: Parse board specific parameters from pdata")' Also fix the below checkpatch warnings on 3.18 Kernel. WARNING: Possible unnecessary 'out of memory' message + if (!data) { + dev_err(&client->dev, "Not enough memory\n"); WARNING: Possible unnecessary 'out of memory' message + if (!data->ts_info) { + dev_err(&client->dev, "Not enough memory\n"); Change-Id: I00b0e8ba7cfc8d8fbd48aa910bd3d0010283ed00 Signed-off-by: Mohan Pallaka <mpallaka@codeaurora.org> Signed-off-by: Sudhakar Manapati <smanap@codeaurora.org>
| * | | | | input: ft5x06_ts: Add firmware upgrade support for ft6x06Mohan Pallaka2016-08-17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Focaltech 6x06 controller series uses a different reset register compared to earlier supported controllers. Use appropriate reset registers based on controller's id. This patch is propagated from 3.18 kernel 'commit 88dd4c27a3f6 ("input: ft5x06_ts: Add firmware upgrade support for ft6x06")' Change-Id: Ia72fa9c256f9e6e2db79388b0152f4d6724ec457 Signed-off-by: Mohan Pallaka <mpallaka@codeaurora.org>
| * | | | | input: touchpanel: fix the number of touch events detectionFigo Wang2016-08-17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Focaltech controllers can reports the number of touch points by read "TD_STATUS" register. Read this register to avoid always looping through maximum number of touches supported. This patch is propagated from 3.18 kernel 'commit 4c142d16fced ("input: touchpanel: fix the number of touch events detection")' Change-Id: I8ab111b56b2074cb52cb021d37e9e6505c8b7c72 Signed-off-by: Figo Wang <figow@codeaurora.org> Signed-off-by: Bingzhe Cai <bingzhec@codeaurora.org>
| * | | | | input: ft5x06_ts: Disable regulators in suspendMohan Pallaka2016-08-17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Disable/enable the regulators in suspend/resume to have better power savings. This patch is propagated from 3.18 kernel 'commit 550c106ea1a3 ("input: ft5x06_ts: Disable regulators in suspend")' Change-Id: I8aa7e941f20040955d6cc177e70ed38dbd28af8c Signed-off-by: Mohan Pallaka <mpallaka@codeaurora.org>
| * | | | | input: ft5x06_ts: Handle error if i2c read failsShantanu Jain2016-08-17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Handle error if i2c read fails and undo other probe initializations. This patch is propagated from 3.18 kernel 'commit 0123456789ab ("input: ft5x06_ts: Handle error if i2c read fails")' Change-Id: I26180b057b45f4dad123dd3581e5c5f2b33a32aa Signed-off-by: Shantanu Jain <shjain@codeaurora.org>
| * | | | | input: touchpanel: Release all touches during suspendFigo Wang2016-08-17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Release all the touches before going to suspend to avoid sticky touches and correct multitouch ID error. This patch is propagated from 3.18 kernel 'commit 8a123ff1f64b ("input: touchpanel: Release all touches during suspend")' Change-Id: I5dd84d44478291e16fd577aad5cf06503e44fbde Signed-off-by: Figo Wang <figow@codeaurora.org>
| * | | | | input: ft5x06_ts: Add debugfs entry for dump infoMohan Pallaka2016-08-17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add a debugfs entry to display information about controller to the user. Also have cleared the checkpatch errors on 3.18 This patch is propagated from 3.18 kernel 'commit 71e8bfde1da8 ("input: ft5x06_ts: Add debugfs entry for dump info")' Change-Id: I075501fefe1984533139ecca65af92f3c0ab8b97 Signed-off-by: Mohan Pallaka <mpallaka@codeaurora.org> Signed-off-by: Sudhakar Manapati <smanap@codeaurora.org>
| * | | | | input: ft5x06_ts: Add support for protocol BMohan Pallaka2016-08-16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Focaltech touchscreen chips can use MT protocol B because they can assign unique id to ABS_MT_TRACKING_ID from finger id provided by hardware. This patch is propagated from 3.18 kernel 'commit 836a4745d978 ("input: ft5x06_ts: Add support for protocol B")' Change-Id: I7f236d819eb805934e12faedaf84407b9de95c0e Signed-off-by: Mohan Pallaka <mpallaka@codeaurora.org> Signed-off-by: Shantanu Jain <shjain@codeaurora.org>
| * | | | | input: ft5x06_ts: Add debugfs supportMohan Pallaka2016-08-16
| |/ / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add debugfs support to provide addr and data entries to read registers from controller. Writing into the registers is not supported as it might corrupt controller. Also add suspend entry to dynamically test suspend and resume. This patch is propagated from 3.18 kernel 'commit 0804395c18d8 ("input: ft5x06_ts: Add debugfs support")' Change-Id: If61bbbefdbf624f62b07c2a96d28c8338bd948c1 Signed-off-by: Mohan Pallaka <mpallaka@codeaurora.org> Signed-off-by: Shantanu Jain <shjain@codeaurora.org>
* | | | | Merge "input: touchscreen: Goodix gt915 driver cleanup"Linux Build Service Account2016-08-18
|\ \ \ \ \
| * | | | | input: touchscreen: Goodix gt915 driver cleanupShantanu Jain2016-08-10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Cleanup the gt915 goodix driver from checkpatch failures. Also have cleared the checkpatch errors on 4.4 This patch is propagated from 3.18 kernel 'commit 9ccc3ab159ba ("input: touchscreen: Goodix gt915 driver cleanup")' Change-Id: Id841423f229b6abc674cc1e3c6441d55062b6ab4 Signed-off-by: Shantanu Jain <shjain@codeaurora.org> Signed-off-by: Bingzhe Cai <bingzhec@codeaurora.org> Signed-off-by: Sudhakar Manapati <smanap@codeaurora.org> [abinayap@codeaurora.org: fix checkpatch errors for 4.4 kernel Use of the '__DATE__' macro makes the build non-deterministic Also including it in the output does not provide any value. So remove its usage.] Signed-off-by: Abinaya P <abinayap@codeaurora.org>
* | | | | | Merge "input: msg21xx_ts: Mstar touch driver optimization"Linux Build Service Account2016-08-18
|\ \ \ \ \ \ | |_|/ / / / |/| | | | |
| * | | | | input: msg21xx_ts: Mstar touch driver optimizationMao Li2016-08-09
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Mstar driver uses the ic-type DT property for dynamic detection support. Driver reads a register from the controller and compares both the values to check if connected touch controller is of Mstar or not. Remove all DBG messages and convert them to dev_dbg/info. Add a debugfs entry for suspend/resume. Remove ts_data/pdata global declaration and use dev_get_drvdata() and input_set_drvdata()/dev_set_drvdata() instead. This patch is propagated from 3.18 kernel 'commit adbc104e3cb8 ("input: msg21xx_ts: Mstar touch driver optimization")' Change-Id: Ia053745d48faf68b946fbb0cf16d392cbfdd2a3c Signed-off-by: Mao Li <maol@codeaurora.org> Signed-off-by: Sudhakar Manapati <smanap@codeaurora.org> Signed-off-by: Abinaya P <abinayap@codeaurora.org>
* | | | | | Merge "input: msg21xx_ts: add support for firmware upgrade"Linux Build Service Account2016-08-11
|\| | | | |
| * | | | | input: msg21xx_ts: add support for firmware upgradeMao Li2016-08-09
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add sysfs entries to upgrade the firmware from userspace. Update_fw sysfs entry upgrades the firmware inside the touch controller only when the controller's firmware version is lesser than that in userspace's firmware file. Force firmware upgrade sysfs entry forcefully upgrades the firmware inside the touch controller even when the controller's firmware version matches that of the firmware file in userspace. This patch is propagated from 3.18 kernel 'commit 580ca1a4437e ("input: msg21xx_ts: add support for firmware upgrade")' Change-Id: Ib6046de5230c395b48818d01f26eb9394046808b Signed-off-by: Mao Li <maol@codeaurora.org> Signed-off-by: Sudhakar Manapati <smanap@codeaurora.org>
| * | | | | input: msg21xx_ts: release touch when finger leaves the panelMao Li2016-08-09
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When fingers on the panel decrease, release corresponding touches. This patch is propagated from 3.18 kernel 'commit 24e3a5036d3c ("input: msg21xx_ts: release touch when finger leaves the panel")' Change-Id: Iafc3a9dda252417fcd06e3d9d24fb73b4d6f8e58 Signed-off-by: Mao Li <maol@codeaurora.org> Signed-off-by: Sudhakar Manapati <smanap@codeaurora.org>
| * | | | | input: msg21xx_ts: update mstar driver to enable msg2138AMao Li2016-08-05
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Mstar reference driver is being cleaned up to be checkpatch compliant. Add Kconfig and Makefile changes to enable Mstar driver's compilation. And following new features are added to the driver: 1. Pinctrl support 2. Threaded irq support 3. Release all touches in suspend 4. Protocol B compliance 5. Explicit suspend/resume function 6. Configure gpios in suspend/resume function 7. Add device tree parser function 8. Add dtsi support for gpio, regulator, I2C address, display coords This patch is propagated from 3.18 kernel 'commit 091a01709e12 ("input: msg21xx_ts: update mstar driver to enable msg2138A")' Change-Id: Ic49a18de64ec210a0636405394ba7a8f52f336a9 Signed-off-by: Mao Li <maol@codeaurora.org> Signed-off-by: Shantanu Jain <shjain@codeaurora.org> Signed-off-by: Sudhakar Manapati <smanap@codeaurora.org> [abinayap@codeaurora.org: Fix checkpatch errors for 4.4 kernel - Block comments use a trailing */ on a separate line - Comparisons should place the constant on the right side of the test - struct of_device_id should normally be const - DT compatible string vendor "mstar" appears un-documented] Signed-off-by: Abinaya P <abinayap@codeaurora.org>
* | | | | | Merge "input: ft5x06: Add support for firmware upgrade"Linux Build Service Account2016-08-11
|\ \ \ \ \ \
| * | | | | | input: ft5x06: Add support for firmware upgradeMohan Pallaka2016-08-11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add sysfs entries to upgrade firmware from userspace. Firmware upgrade is triggered when the device's firmware version mismatches with userspace's firmware file. Force firmware upgrade sysfs entry is added to force the firmware upgrade even when the firmware versions match. Change-Id: I48189abe60b4bd9d54a1bbc4657707213d8eb166 Signed-off-by: Mohan Pallaka <mpallaka@codeaurora.org> Signed-off-by: Shantanu Jain <shjain@codeaurora.org>
| * | | | | | input: ft5x06_ts: Add support for FB notificationsMohan Pallaka2016-08-05
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add support for FB notifications to trigger suspend/resume based on FB blank/unblank events. Change-Id: I79abc586ad8c14a25afd56559c579a1415df9f0e Signed-off-by: Mohan Pallaka <mpallaka@codeaurora.org> Signed-off-by: Shantanu Jain <shjain@codeaurora.org>
* | | | | | | Merge "input: ft5x06_ts: Add DT support"Linux Build Service Account2016-08-11
|\| | | | | |
| * | | | | | input: ft5x06_ts: Add DT supportMohan Pallaka2016-08-05
| |/ / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add device tree support for focaltech controller driver. The data is represented in device tree format and parsed by the driver using of framework apis. This patch is a propagated patch from 3.18 kernel 'commit 83310a9a151e ("input: ft5x06_ts: Add DT support")' Change-Id: Ibcdd8c3579f401ac0632d670e1b7c674aa67ba8d Signed-off-by: Mohan Pallaka <mpallaka@codeaurora.org> Signed-off-by: Shantanu Jain <shjain@codeaurora.org> [abinayap@codeaurora.org: Fix checkpatch errors for 4.4 kernel struct of_device_id should normally be const] Signed-off-by: Abinaya P <abinayap@codeaurora.org>
* | | | | | input: touchscreen: correct function and variable names in ITE tech driverShantanu Jain2016-08-05
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Correct function and variable names in ITE tech driver from upper case to lower case, and use underscore instead of camel-case in their names. This change makes the driver as per kernel coding standards and similar to other touch drivers. This is a propagation patch from 3.18 kernel 'commit c1fe9ac38d93 ("input: touchscreen: correct function and variable names in ITE tech driver")' CRs-Fixed: 982219 Change-Id: Ic8b66317f414fe3bfcd0f9c5b03369cc304edb55 Signed-off-by: Shantanu Jain <shjain@codeaurora.org>
* | | | | | input: touchscreen: correct return values in ITE tech driverShantanu Jain2016-08-05
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Correct return values of the functions in ITE tech driver. Use valid integer error and success values instead of boolean values. This is a propagated patch from 3.18 kernel 'commit a68ff7e23d20 ("input: touchscreen: correct return values in ITE tech driver")' CRs-Fixed: 982219 Change-Id: Iba07517fd32dbeb3079df9c0346ea0c044b88f63 Signed-off-by: Shantanu Jain <shjain@codeaurora.org>