summaryrefslogtreecommitdiff
path: root/drivers/input (follow)
Commit message (Collapse)AuthorAge
...
* | | | | | input: touchscreen: remove global variable from ITE tech touch driverShantanu Jain2016-08-05
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Remove the use of global variable from ITE tech touch driver, and use the internal driver structure passed as function argument. This change makes the driver complied to kernel coding standards and similar to other touch driver. This is a propagated patch from 3.18 patch 'commit 041f90ddeb5e ("input: touchscreen: remove global variable from ITE tech touch driver")' CRs-Fixed: 982219 Change-Id: Ib609d6e76ea70cd3b49c4ea6f09c75bf52521aa8 Signed-off-by: Shantanu Jain <shjain@codeaurora.org>
* | | | | | input: touchscreen: identify ITE tech controller until readyShantanu Jain2016-08-05
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Identify the ITE tech controller until it is ready to do any i2c transaction. This is needed for dynamic detection and to check if ITE tech controller is connected or not. This is a propagated patch from 3.18 kernel 'commit eb37d1174948 ("input: touchscreen: identify ITE tech controller until ready")' CRs-Fixed: 980427 Change-Id: I9f69eb541e31de6a04db7468ca12a04a837d2b40 Signed-off-by: Shantanu Jain <shjain@codeaurora.org>
* | | | | | input: touchscreen: correct condition checks in ITE tech touch driverShantanu Jain2016-08-05
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Correct the return value check of kstrtoint function. Also correct the platform_data parsing check in ITE tech touch driver. This is a propagated patch from 3.18 kernel 'commit 9a1496537aeb ("input: touchscreen: correct condition checks in ITE tech touch driver")' Change-Id: I792c043ca4d85e236c209605e80392a05d26b983 Signed-off-by: Shantanu Jain <shjain@codeaurora.org>
* | | | | | input: touchscreen: don't allow ITE tech driver to do infinite i2c checksShantanu Jain2016-08-05
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Don't allow ITE tech driver to check the status of the controller forever before any i2c read/write, instead make it to 10 times only. In case of firmware flashing and external calibration features, this is made to 500 times. This is a propagated patch from 3.18 kernel 'commit 5e8c98c6705b ("input: touchscreen: don't allow ITE tech driver to do infinite i2c checks")' Change-Id: I88e024700de43cc9f712fd7fa509fcb387f9cd21 Signed-off-by: Shantanu Jain <shjain@codeaurora.org>
* | | | | | input: touchscreen: increase number of checks for touch controller statusShantanu Jain2016-08-05
|/ / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Before doing any i2c read/write, driver needs to check the value of QUERY buffer to know if the controller is in ready or busy state. Sometime, it takes more number of checks to know the status. So this change increases the number of checks to know the ITE tech touch controller status. This is a propagated patch from 3.18 kernel 'commit 60589278b8e7 ("input: touchscreen: increase number of checks for touch controller status") Change-Id: I30dd0cf0b15538e67f50725754d5059e2fe721d0 Signed-off-by: Shantanu Jain <shjain@codeaurora.org> Signed-off-by: Abinaya P <abinayap@codeaurora.org>
* | | | | Merge "input: touchpanel: Goodix GT915 driver cleanup"Linux Build Service Account2016-08-04
|\| | | |
| * | | | input: touchpanel: Goodix GT915 driver cleanupBingzhe Cai2016-08-03
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Code clean up that makes the driver more like a linux driver. Add some error recovery to make sure driver will not crash when error is occurs. Also have cleared the checkpatch errors on 4.4. This patch is propagated from 3.4 kernel 'commit c2fcdcda743f ("input: touchpanel: Goodix GT915 driver cleanup")' Change-Id: I3af425f5f0251ec576168f72a2059f85c3be4358 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 - check for sizeof(p_cfg_grp)/sizeof(p_cfg_grp[0]) that could be ARRAY_SIZE(p_cfg_grp) - check for sizeof(touch_key_array)/sizeof(touch_key_array[0]) that could be ARRAY_SIZE(touch_key_array) - Comparisons should place the constant on the right side of the test] Signed-off-by: Abinaya P <abinayap@codeaurora.org>
* | | | | input: touchscreen: reduce lpm current of avdd reg for ITE techShantanu Jain2016-08-03
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Reduce lpm current of avdd regulator for ITE tech touch controller to save power dissipation in lpm state. Change-Id: I4b0c532096f1555561ad33e937cb947e85f987cd Signed-off-by: Shantanu Jain <shjain@codeaurora.org>
* | | | | input: touchscreen: add delay after enabling regulatorsShantanu Jain2016-08-03
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ITE tech touch controller needs a delay to come to an active state after regulators are enabled and do any i2c transactions. So this change adds a delay for the same. Change-Id: Ifd7c936d8f5d364b78c64aeebd1517d49a5b8936 Signed-off-by: Shantanu Jain <shjain@codeaurora.org>
* | | | | input: touchscreen: Change touch driver suspend code flow for XO shutdownShantanu Jain2016-08-03
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ITE tech touch driver puts the controller to IDLE state in suspend function through an i2c write into controller register space. But due to multiple triggers of fb blank events, the suspend function is called repeatatively without resume, and the driver causes i2c nacks in suspend function while again putting the controller is IDLE state. This keeps the QUP5 clock ON and XO shutdown doesn't happen. This change prevents the touch driver to execute the i2c write, to put the controller in IDLE state, by repeatative fb blank events, and causes XO shutdown to happen within time limits. Change-Id: Ie3ee6b861c10ae901dea54f252f6a799d688f02a Signed-off-by: Shantanu Jain <shjain@codeaurora.org>
* | | | | input: touchscreen: correct probe error path for ITE tech driverShantanu Jain2016-08-03
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ITE tech touch driver dynamically detects the controller attached to the device in its probe. And if the driver fails to identify the controller, it exits the probe with the error code. But in the probe error path, it doesn't retain the error code, replace it with zero and registers the device instead of failing. This change corrects the probe error path of ITE tech touch driver and makes sure it returns the error code if it fails. Change-Id: I8f193ee10076b6cf058b0a6940db54f71f70b758 Signed-off-by: Shantanu Jain <shjain@codeaurora.org>
* | | | | input: it7258_ts_i2c: add gpio configuration supportShantanu Jain2016-08-02
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add gpio configuration support for ITE tech touchscreen driver. Change-Id: I261db5723a19a7084072487527b350d155a54e78 Signed-off-by: Shantanu Jain <shjain@codeaurora.org>
* | | | | input: it7258_ts_i2c: add regulator framework supportShantanu Jain2016-08-03
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add regulator framework support for ITE tech driver. Change-Id: Ib666f406442ad5f323a08e4624832fba5e2546e2 Signed-off-by: Shantanu Jain <shjain@codeaurora.org>
* | | | | input: it7258_ts_i2c: add low reset and reset delay supportShantanu Jain2016-08-03
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add low reset gpio and delay reset support for ITE tech driver. ITE tech controller support low reset gpio configuration. This property is parsed from the DT, and reset gpio is set to low. Reset delay value is also parsed from DT which is required by the ITE tech controller. Change-Id: I314677747e8bbbcb273cd898376bbe03197c8c25 Signed-off-by: Shantanu Jain <shjain@codeaurora.org>
* | | | | input: it7258_ts_i2c: add pinctrl supportShantanu Jain2016-08-03
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add pinctrl support for ITE tech touchscreen driver. Change-Id: I3bbea110af189f236bb175670210e086e15d5d2d Signed-off-by: Shantanu Jain <shjain@codeaurora.org>
* | | | | input: it7258_ts_i2c: Do not put driver in infinite loopShantanu Jain2016-08-02
|/ / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Do not put the ITE tech touchscreen driver in infinite loop while probing. Sometimes, when there is multiple touchscreen support on the same snapdragon device, then the dynamic detection is used to confirm which touchscreen is connected to the device. So, this change will not make the CPUs to get hogged with infinite loop of ITE tech driver. Now it can easily get out of probe with error path releasing the resources properly. Change-Id: Ib9905017fc18999e7ab7c9cb8bc1af398f5f9791 Signed-off-by: Shantanu Jain <shjain@codeaurora.org>
* | | | Merge "input: touchpanel: Move Goodix GT915 driver to drivers folder"Linux Build Service Account2016-08-02
|\ \ \ \
| * | | | input: touchpanel: Move Goodix GT915 driver to drivers folderBingzhe Cai2016-08-01
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Goodix GT915 driver was provided by vendor and cherry-picked into our project, it need to be placed to right location. Change-Id: Idf191144354426233eca41727a41e26ddbf92f95 Signed-off-by: Bingzhe Cai <bingzhec@codeaurora.org> Signed-off-by: Pan Fang <fangpan@codeaurora.org>
* | | | | Merge "input: it7258_ts_i2c: replace unused variable in driver"Linux Build Service Account2016-08-02
|\ \ \ \ \
| * | | | | input: it7258_ts_i2c: replace unused variable in driverShantanu Jain2016-08-01
| |/ / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Replace an unused variable in the ITE tech touch screen driver. Change-Id: I49230fb6532ee02f122d5f16dfad8dbd978b368e Signed-off-by: Shantanu Jain <shjain@codeaurora.org>
* | | | | Merge "input: msg21xx_ts: Move the driver to proper path"Linux Build Service Account2016-08-02
|\ \ \ \ \
| * | | | | input: msg21xx_ts: Move the driver to proper pathMao Li2016-08-01
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This Mstar CTP reference driver code is added into a wrong place, a follow-on patch is created to move the driver to proper path. Change-Id: I34365ce21659348ad1d1289e3b06b81e778c2648 Signed-off-by: Mao Li <maol@codeaurora.org> Signed-off-by: Sudhakar Manapati <smanap@codeaurora.org>
* | | | | | Merge "input: it7258_ts_i2c: add low power mode support in suspend state"Linux Build Service Account2016-08-02
|\ \ \ \ \ \
| * | | | | | input: it7258_ts_i2c: add low power mode support in suspend stateShantanu Jain2016-08-01
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add low power idle mode support in suspend state for ITE tech touchscreen driver. Also, execute the touch to wake feature code only when device moves from idle state to active state. Change-Id: Ia989d8130bbded4ae5acab0b9c3122998acb2056 Signed-off-by: Shantanu Jain <shjain@codeaurora.org>
| * | | | | | input: it7258_ts_i2c: add dt parsing supportShantanu Jain2016-08-01
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add DT parsing support to ITE tech touchscreen driver. Change-Id: I4b6b9867dc0d74c02d165aae670213544fcda1bc Signed-off-by: Shantanu Jain <shjain@codeaurora.org>
| * | | | | | input: it7258_ts_i2c: add force fw and cfg update functionalityShantanu Jain2016-08-01
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add force firmware and config update functionality to ITE Tech touchscreen driver. Change-Id: I63720092f445700b7ae66e10950d87a4654060aa Signed-off-by: Shantanu Jain <shjain@codeaurora.org>
| * | | | | | input: touchscreen: add auto fw upgrade for ITE tech driverShantanu Jain2016-08-01
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add auto firmware and config upgrade functionality for ITE tech touchscreen driver. Add sysfs support for manual fw and cfg upgrade functionality. Also clean the sysfs function names. Change-Id: I8912545589cb763c1deb70bebb081e920af69ad2 Signed-off-by: Shantanu Jain <shjain@codeaurora.org>
| * | | | | | input: touchscreen: add protocol B support for ITE tech driverShantanu Jain2016-08-01
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add multi-touch protocol B support for ITE tech touch screen driver. Change-Id: I9ed40ccedab71a3800b97fc7825741855bceaa29 Signed-off-by: Shantanu Jain <shjain@codeaurora.org>
* | | | | | | Merge "input: touchscreen: clean ITE tech driver probe function"Linux Build Service Account2016-08-02
|\| | | | | |
| * | | | | | input: touchscreen: clean ITE tech driver probe functionShantanu Jain2016-08-01
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Clean ITE tech driver probe function with proper error paths, call sequence, and return values to release the resources properly. Also, release the resource in driver's remove function. Change-Id: Ia81bb3da7e0b880de6f2ed95d346b533104ed3fc Signed-off-by: Shantanu Jain <shjain@codeaurora.org>
| * | | | | | input: touchscreen: clean ITE tech TS driverShantanu Jain2016-08-01
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Clean ITE tech touchscreen driver. Structurize driver data members, replace standard logging function calls & messages, change to proper function names, change to proper variable names, remove unnecessary sysfs entry. Change-Id: I02bcea18e93146b68aaeb8d81fa7bec67b5bcc73 Signed-off-by: Shantanu Jain <shjain@codeaurora.org>
* | | | | | | Merge "Merge remote-tracking branch 'msm-4.4/tmp-2bf7955' into msm-4.4"Linux Build Service Account2016-08-02
|\ \ \ \ \ \ \
| * \ \ \ \ \ \ Merge remote-tracking branch 'msm-4.4/tmp-2bf7955' into msm-4.4Trilok Soni2016-07-22
| |\ \ \ \ \ \ \ | | | |_|_|/ / / | | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * msm-4.4/tmp-2bf7955: Linux 4.4.8 Revert "usb: hub: do not clear BOS field during reset device" usbvision: fix crash on detecting device with invalid configuration staging: android: ion: Set the length of the DMA sg entries in buffer Revert "PCI, x86: Implement pcibios_alloc_irq() and pcibios_free_irq()" Revert "PCI: Add helpers to manage pci_dev->irq and pci_dev->irq_managed" Revert "x86/PCI: Don't alloc pcibios-irq when MSI is enabled" HID: usbhid: fix inconsistent reset/resume/reset-resume behavior HID: wacom: fix Bamboo ONE oops ALSA: usb-audio: Skip volume controls triggers hangup on Dell USB Dock ALSA: usb-audio: Add a quirk for Plantronics BT300 ALSA: usb-audio: Add a sample rate quirk for Phoenix Audio TMX320 ALSA: hda/realtek - Enable the ALC292 dock fixup on the Thinkpad T460s ALSA: hda - fix front mic problem for a HP desktop ALSA: hda - Fix headset support and noise on HP EliteBook 755 G2 ALSA: hda - Fixup speaker pass-through control for nid 0x14 on ALC225 mmc: sdhci-pci: Add support and PCI IDs for more Broxton host controllers perf: Cure event->pending_disable race perf: Do not double free arm64: replace read_lock to rcu lock in call_step_hook Btrfs: fix file/data loss caused by fsync after rename and new inode iommu: Don't overwrite domain pointer when there is no default_domain ext4: ignore quota mount options if the quota feature is enabled ext4: add lockdep annotations for i_data_sem btrfs: fix crash/invalid memory access on fsync when using overlayfs nfs: use file_dentry() fs: add file_dentry() sd: Fix excessive capacity printing on devices with blocks bigger than 512 bytes iio: gyro: bmg160: fix endianness when reading axes iio: gyro: bmg160: fix buffer read values iio: accel: bmc150: fix endianness when reading axes iio: st_magn: always define ST_MAGN_TRIGGER_SET_STATE usb: renesas_usbhs: fix to avoid using a disabled ep in usbhsg_queue_done() usb: renesas_usbhs: disable TX IRQ before starting TX DMAC transfer usb: renesas_usbhs: avoid NULL pointer derefernce in usbhsf_pkt_handler() mac80211: fix txq queue related crashes mac80211: fix unnecessary frame drops in mesh fwding mac80211: fix ibss scan parameters mac80211: avoid excessive stack usage in sta_info mac80211: properly deal with station hashtable insert errors virtio: virtio 1.0 cs04 spec compliance for reset rbd: use GFP_NOIO consistently for request allocations pcmcia: db1xxx_ss: fix last irq_to_gpio user v4l: vsp1: Set the SRU CTRL0 register when starting the stream coda: fix error path in case of missing pdata on non-DT platform au0828: Fix dev_state handling au0828: fix au0828_v4l2_close() dev_state race condition pinctrl: freescale: imx: fix bogus check of of_iomap() return value pinctrl: nomadik: fix pull debug print inversion pinctrl: sunxi: Fix A33 external interrupts not working pinctrl: sh-pfc: only use dummy states for non-DT platforms pinctrl: pistachio: fix mfio84-89 function description and pinmux. MIPS: Fix MSA ld unaligned failure cases KVM: x86: reduce default value of halt_poll_ns parameter KVM: x86: Inject pending interrupt even if pending nmi exist cdc-acm: fix NULL pointer reference USB: uas: Add a new NO_REPORT_LUNS quirk USB: uas: Limit qdepth at the scsi-host level mpls: find_outdev: check for err ptr in addition to NULL check ipv6: Count in extension headers in skb->network_header ip6_tunnel: set rtnl_link_ops before calling register_netdevice ipv6: l2tp: fix a potential issue in l2tp_ip6_recv ipv4: l2tp: fix a potential issue in l2tp_ip_recv tuntap: restore default qdisc tun, bpf: fix suspicious RCU usage in tun_{attach, detach}_filter rtnl: fix msg size calculation in if_nlmsg_size() bridge: Allow set bridge ageing time when switchdev disabled ipv6: udp: fix UDP_MIB_IGNOREDMULTI updates qmi_wwan: add "D-Link DWM-221 B1" device id xfrm: Fix crash observed during device unregistration and decryption ppp: take reference on channels netns ipv4: initialize flowi4_flags before calling fib_lookup() ipv4: fix broadcast packets reception bonding: fix bond_get_stats() net: bcmgenet: fix dma api length mismatch qlge: Fix receive packets drop. tcp/dccp: remove obsolete WARN_ON() in icmp handlers ppp: ensure file->private_data can't be overridden ath9k: fix buffer overrun for ar9287 farsync: fix off-by-one bug in fst_add_one mlx4: add missing braces in verify_qp_parameters net: Fix use after free in the recvmmsg exit path ipv4: Don't do expensive useless work during inetdev destroy. bridge: allow zero ageing time rocker: set FDB cleanup timer according to lowest ageing time mlxsw: spectrum: Check requested ageing time is valid macvtap: always pass ethernet header in linear qlcnic: Fix mailbox completion handling during spurious interrupt qlcnic: Remove unnecessary usage of atomic_t sh_eth: advance 'rxdesc' later in sh_eth_ring_format() sh_eth: fix NULL pointer dereference in sh_eth_ring_format() bpf: avoid copying junk bytes in bpf_get_current_comm() packet: validate variable length ll headers ax25: add link layer header validation function net: validate variable length ll headers ppp: release rtnl mutex when interface creation fails tcp: fix tcpi_segs_in after connection establishment udp6: fix UDP/IPv6 encap resubmit path usbnet: cleanup after bind() in probe() cdc_ncm: toggle altsetting to force reset before setup vxlan: fix missing options_len update on RX with collect metadata ipv6: re-enable fragment header matching in ipv6_find_hdr qmi_wwan: add Sierra Wireless EM74xx device ID tipc: Revert "tipc: use existing sk_write_queue for outgoing packet chain" mld, igmp: Fix reserved tailroom calculation sctp: lack the check for ports in sctp_v6_cmp_addr net: fix bridge multicast packet checksum validation net: qca_spi: clear IFF_TX_SKB_SHARING net: qca_spi: Don't clear IFF_BROADCAST net: vrf: Remove direct access to skb->data net: jme: fix suspend/resume on JMC260 ipv4: only create late gso-skb if skb is already set up with CHECKSUM_PARTIAL tunnel: Clear IPCB(skb)->opt before dst_link_failure called tcp: convert cached rtt from usec to jiffies when feeding initial rto xen/events: Mask a moving irq drm/amdgpu/gmc: use proper register for vram type on Fiji drm/amdgpu/gmc: move vram type fetching into sw_init drm/radeon: add a dpm quirk for all R7 370 parts drm/radeon: add another R7 370 quirk drm/radeon: add a dpm quirk for sapphire Dual-X R7 370 2G D5 drm/udl: Use unlocked gem unreferencing drm/dp: move hw_mutex up the call stack arm64: opcodes.h: Add arm big-endian config options before including arm header compiler-gcc: disable -ftracer for __noclone functions libnvdimm, pfn: fix uuid validation libnvdimm: fix smart data retrieval powerpc/mm: Fixup preempt underflow with huge pages mm: fix invalid node in alloc_migrate_target() ALSA: hda - Apply fix for white noise on Asus N550JV, too ALSA: hda - Fix white noise on Asus N750JV headphone ALSA: hda - Asus N750JV external subwoofer fixup ALSA: timer: Use mod_timer() for rearming the system timer parisc: Unbreak handling exceptions from kernel modules parisc: Fix kernel crash with reversed copy_from_user() parisc: Avoid function pointers for kernel exception routines PKCS#7: pkcs7_validate_trust(): initialize the _trusted output argument hwmon: (max1111) Return -ENODEV from max1111_read_channel if not instantiated Linux 4.4.7 perf/x86/intel: Fix PEBS data source interpretation on Nehalem/Westmere perf/x86/intel: Use PAGE_SIZE for PEBS buffer size on Core2 perf/x86/intel: Fix PEBS warning by only restoring active PMU in pmi perf/x86/pebs: Add workaround for broken OVFL status on HSW+ sched/cputime: Fix steal time accounting vs. CPU hotplug scsi_common: do not clobber fixed sense information PM / sleep: Clear pm_suspend_global_flags upon hibernate intel_idle: prevent SKL-H boot failure when C8+C9+C10 enabled mtd: onenand: fix deadlock in onenand_block_markbad mm/page_alloc: prevent merging between isolated and other pageblocks ocfs2/dlm: fix BUG in dlm_move_lockres_to_recovery_list ocfs2/dlm: fix race between convert and recovery Input: ati_remote2 - fix crashes on detecting device with invalid descriptor Input: ims-pcu - sanity check against missing interfaces Input: synaptics - handle spurious release of trackstick buttons, again writeback, cgroup: fix use of the wrong bdi_writeback which mismatches the inode writeback, cgroup: fix premature wb_put() in locked_inode_to_wb_and_lock_list() ACPI / PM: Runtime resume devices when waking from hibernate ARM: dts: at91: sama5d4 Xplained: don't disable hsmci regulator ARM: dts: at91: sama5d3 Xplained: don't disable hsmci regulator nfsd: fix deadlock secinfo+readdir compound nfsd4: fix bad bounds checking iser-target: Rework connection termination iser-target: Separate flows for np listeners and connections cma events iser-target: Add new state ISER_CONN_BOUND to isert_conn iser-target: Fix identification of login rx descriptor type target: Fix target_release_cmd_kref shutdown comp leak clk: bcm2835: Fix setting of PLL divider clock rates clk: rockchip: add hclk_cpubus to the list of rk3188 critical clocks clk: rockchip: rk3368: fix hdmi_cec gate-register clk: rockchip: rk3368: fix parents of video encoder/decoder clk: rockchip: rk3368: fix cpuclk core dividers clk: rockchip: rk3368: fix cpuclk mux bit of big cpu-cluster mmc: sdhci: Fix override of timeout clk wrt max_busy_timeout mmc: sdhci: fix data timeout (part 2) mmc: sdhci: fix data timeout (part 1) mmc: mmc_spi: Add Card Detect comments and fix CD GPIO case mmc: block: fix ABI regression of mmc_blk_ioctl ideapad-laptop: Add ideapad Y700 (15) to the no_hw_rfkill DMI list MAINTAINERS: Update mailing list and web page for hwmon subsystem kbuild/mkspec: fix grub2 installkernel issue scripts/kconfig: allow building with make 3.80 again scripts/coccinelle: modernize & bitops: Do not default to __clear_bit() for __clear_bit_unlock() tracing: Fix trace_printk() to print when not using bprintk() tracing: Fix crash from reading trace_pipe with sendfile tracing: Have preempt(irqs)off trace preempt disabled functions IB/ipoib: fix for rare multicast join race condition drm/amdgpu: include the right version of gmc header files for iceland drm/amdgpu: disable runtime pm on PX laptops without dGPU power control drm/radeon: Don't drop DP 2.7 Ghz link setup on some cards. drm/radeon: disable runtime pm on PX laptops without dGPU power control iwlwifi: mvm: Fix paging memory leak ipr: Fix regression when loading firmware ipr: Fix out-of-bounds null overwrite rapidio/rionet: fix deadlock on SMP fs/coredump: prevent fsuid=0 dumps into user-controlled directories fuse: Add reference counting for fuse_io_priv fuse: do not use iocb after it may have been freed md: multipath: don't hardcopy bio in .make_request path md/raid5: preserve STRIPE_PREREAD_ACTIVE in break_stripe_batch_list raid10: include bio_end_io_list in nr_queued to prevent freeze_array hang RAID5: revert e9e4c377e2f563 to fix a livelock RAID5: check_reshape() shouldn't call mddev_suspend md/raid5: Compare apples to apples (or sectors to sectors) raid1: include bio_end_io_list in nr_queued to prevent freeze_array hang xfs: fix two memory leaks in xfs_attr_list.c error paths quota: Fix possible GPF due to uninitialised pointers ARC: bitops: Remove non relevant comments ARC: [BE] readl()/writel() to work in Big Endian CPU configuration xtensa: clear all DBREAKC registers on start xtensa: fix preemption in {clear,copy}_user_highpage xtensa: ISS: don't hang if stdin EOF is reached splice: handle zero nr_pages in splice_to_pipe() vfs: show_vfsstat: do not ignore errors from show_devname method of: alloc anywhere from memblock if range not specified net: mvneta: enable change MAC address when interface is up cgroup: ignore css_sets associated with dead cgroups during migration Bluetooth: Fix potential buffer overflow with Add Advertising Bluetooth: Add new AR3012 ID 0489:e095 watchdog: rc32434_wdt: fix ioctl error handling watchdog: don't run proc_watchdog_update if new value is same as old ia64: define ioremap_uc() mm: memcontrol: reclaim and OOM kill when shrinking memory.max below usage mm: memcontrol: reclaim when shrinking memory.high below usage bcache: fix cache_set_flush() NULL pointer dereference on OOM bcache: fix race of writeback thread starting before complete initialization bcache: cleaned up error handling around register_cache() IB/srpt: Simplify srpt_handle_tsk_mgmt() brd: Fix discard request processing jbd2: fix FS corruption possibility in jbd2_journal_destroy() on umount path tools/hv: Use include/uapi with __EXPORTED_HEADERS__ ALSA: hda - Fix unconditional GPIO toggle via automute ALSA: hda - fix the mic mute button and led problem for a Lenovo AIO ALSA: hda - Don't handle ELD notify from invalid port ALSA: intel8x0: Add clock quirk entry for AD1981B on IBM ThinkPad X41. ALSA: pcm: Avoid "BUG:" string for warnings again ALSA: hda - Apply reboot D3 fix for CX20724 codec, too mtip32xx: Cleanup queued requests after surprise removal mtip32xx: Implement timeout handler mtip32xx: Handle FTL rebuild failure state during device initialization mtip32xx: Handle safe removal during IO mtip32xx: Fix for rmmod crash when drive is in FTL rebuild mtip32xx: Print exact time when an internal command is interrupted mtip32xx: Remove unwanted code from taskfile error handler mtip32xx: Fix broken service thread handling mtip32xx: Avoid issuing standby immediate cmd during FTL rebuild media: v4l2-compat-ioctl32: fix missing length copy in put_v4l2_buffer32 coda: fix first encoded frame payload bttv: Width must be a multiple of 16 when capturing planar formats adv7511: TX_EDID_PRESENT is still 1 after a disconnect saa7134: Fix bytesperline not being set correctly for planar formats 8250: use callbacks to access UART_DLL/UART_DLM net: irda: Fix use-after-free in irtty_open() tty: Fix GPF in flush_to_ldisc(), part 2 staging: comedi: ni_mio_common: fix the ni_write[blw]() functions staging: android: ion_test: fix check of platform_device_register_simple() error code staging: comedi: ni_tiocmd: change mistaken use of start_src for start_arg HID: fix hid_ignore_special_drivers module parameter HID: multitouch: force retrieving of Win8 signature blob HID: i2c-hid: fix OOB write in i2c_hid_set_or_send_report() HID: logitech: fix Dual Action gamepad support tpm: fix the cleanup of struct tpm_chip tpm_eventlog.c: fix binary_bios_measurements tpm_crb: tpm2_shutdown() must be called before tpm_chip_unregister() tpm: fix the rollback in tpm_chip_register() mei: bus: check if the device is enabled before data transfer X.509: Fix leap year handling again crypto: marvell/cesa - forward devm_ioremap_resource() error code crypto: ux500 - fix checks of error code returned by devm_ioremap_resource() crypto: atmel - fix checks of error code returned by devm_ioremap_resource() crypto: keywrap - memzero the correct memory crypto: ccp - memset request context to zero during import crypto: ccp - Don't assume export/import areas are aligned crypto: ccp - Limit the amount of information exported crypto: ccp - Add hash state import and export support Bluetooth: btusb: Add a new AR3012 ID 13d3:3472 Bluetooth: btusb: Add a new AR3012 ID 04ca:3014 Bluetooth: btusb: Add new AR3012 ID 13d3:3395 ALSA: usb-audio: Fix double-free in error paths after snd_usb_add_audio_stream() call ALSA: usb-audio: Minor code cleanup in create_fixed_stream_quirk() ALSA: usb-audio: add Microsoft HD-5001 to quirks ALSA: usb-audio: Add sanity checks for endpoint accesses ALSA: usb-audio: Fix NULL dereference in create_fixed_stream_quirk() Input: powermate - fix oops with malicious USB descriptors pwc: Add USB id for Philips Spc880nc webcam USB: option: add "D-Link DWM-221 B1" device id USB: serial: ftdi_sio: Add support for ICP DAS I-756xU devices USB: serial: cp210x: Adding GE Healthcare Device ID USB: cypress_m8: add endpoint sanity check USB: digi_acceleport: do sanity checking for the number of ports USB: mct_u232: add sanity checking in probe USB: usb_driver_claim_interface: add sanity checking USB: iowarrior: fix oops with malicious USB descriptors USB: cdc-acm: more sanity checking USB: uas: Reduce can_queue to MAX_CMNDS usb: hub: fix a typo in hub_port_init() leading to wrong logic usb: retry reset if a device times out dm: fix rq_end_stats() NULL pointer in dm_requeue_original_request() dm cache: make sure every metadata function checks fail_io dm thin metadata: don't issue prefetches if a transaction abort has failed dm: fix excessive dm-mq context switching dm snapshot: disallow the COW and origin devices from being identical libnvdimm: Fix security issue with DSM IOCTL. aic7xxx: Fix queue depth handling be2iscsi: set the boot_kset pointer to NULL in case of failure scsi: storvsc: fix SRB_STATUS_ABORTED handling sd: Fix discard granularity when LBPRZ=1 aacraid: Set correct msix count for EEH recovery aacraid: Fix memory leak in aac_fib_map_free aacraid: Fix RRQ overload sg: fix dxferp in from_to case x86/mm: TLB_REMOTE_SEND_IPI should count pages x86/iopl: Fix iopl capability check on Xen PV x86/iopl/64: Properly context-switch IOPL on Xen PV x86/apic: Fix suspicious RCU usage in smp_trace_call_function_interrupt() x86/irq: Cure live lock in fixup_irqs() PCI: ACPI: IA64: fix IO port generic range check PCI: Disable IO/MEM decoding for devices with non-compliant BARs pinctrl-bcm2835: Fix cut-and-paste error in "pull" parsing s390/pci: enforce fmb page boundary rule s390/cpumf: add missing lpp magic initialization s390: fix floating pointer register corruption (again) EDAC, amd64_edac: Shift wrapping issue in f1x_get_norm_dct_addr() EDAC/sb_edac: Fix computation of channel address sched/preempt, sh: kmap_coherent relies on disabled preemption sched/cputime: Fix steal_account_process_tick() to always return jiffies Thermal: Ignore invalid trip points perf tools: Fix python extension build perf tools: Fix checking asprintf return value perf tools: Dont stop PMU parsing on alias parse error perf/core: Fix perf_sched_count derailment KVM: VMX: fix nested vpid for old KVM guests KVM: VMX: avoid guest hang on invalid invvpid instruction KVM: VMX: avoid guest hang on invalid invept instruction KVM: fix spin_lock_init order on x86 KVM: i8254: change PIT discard tick policy KVM: x86: fix missed hardware breakpoints x86/PCI: Mark Broadwell-EP Home Agent & PCU as having non-compliant BARs perf/x86/intel: Add definition for PT PMI bit x86/entry/compat: Keep TS_COMPAT set during signal delivery x86/microcode: Untangle from BLK_DEV_INITRD x86/microcode/intel: Make early loader look for builtin microcode too mmc: sh_mmcif: Correct TX DMA channel allocation mmc: sh_mmcif: rework dma channel handling ASoC: samsung: pass DMA channels as pointers regulator: core: Fix nested locking of supplies regulator: core: avoid unused variable warning s390/cpumf: Fix lpp detection cpufreq: dt: No need to allocate resources anymore cpufreq: dt: No need to fetch voltage-tolerance cpufreq: dt: Use dev_pm_opp_set_rate() to switch frequency cpufreq: dt: Reuse dev_pm_opp_get_max_transition_latency() cpufreq: dt: Unsupported OPPs are already disabled cpufreq: dt: Pass regulator name to the OPP core cpufreq: dt: OPP layers handles clock-latency for V1 bindings as well cpufreq: dt: Rename 'need_update' to 'opp_v1' cpufreq: dt: Convert few pr_debug/err() calls to dev_dbg/err() cpufreq-dt: fix handling regulator_get_voltage() result cpufreq-dt: Supply power coefficient when registering cooling devices PM / OPP: Rename structures for clarity PM / OPP: Fix incorrect comments PM / OPP: Initialize regulator pointer to an error value PM / OPP: Initialize u_volt_min/max to a valid value PM / OPP: Fix NULL pointer dereference crash when disabling OPPs PM / OPP: Add dev_pm_opp_set_rate() PM / OPP: Manage device clk PM / OPP: Parse clock-latency and voltage-tolerance for v1 bindings PM / OPP: Introduce dev_pm_opp_get_max_transition_latency() PM / OPP: Introduce dev_pm_opp_get_max_volt_latency() PM / OPP: Disable OPPs that aren't supported by the regulator PM / OPP: get/put regulators from OPP core cpufreq: cpufreq-dt: avoid uninitialized variable warnings: PM / OPP: Use snprintf() instead of sprintf() PM / OPP: Set cpu_dev->id in cpumask first PM / OPP: Fix parsing of opp-microvolt and opp-microamp properties PM / OPP: Parse 'opp-<prop>-<name>' bindings PM / OPP: Parse 'opp-supported-hw' binding PM / OPP: Add missing doc comments PM / OPP: Rename OPP nodes as opp@<opp-hz> PM / OPP: Remove 'operating-points-names' binding PM / OPP: Add {opp-microvolt|opp-microamp}-<name> binding PM / OPP: Add "opp-supported-hw" binding PM / OPP: Add debugfs support arm64: vdso: Mark vDSO code as read-only Conflicts: drivers/staging/android/ion/ion.c mm/page_alloc.c CRs-Fixed: 1010239 Change-Id: Id59539cad642885e1e41340cebae4159ba1f7eaf Signed-off-by: Trilok Soni <tsoni@codeaurora.org>
| | * | | | | | Input: ati_remote2 - fix crashes on detecting device with invalid descriptorVladis Dronov2016-04-12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | commit 950336ba3e4a1ffd2ca60d29f6ef386dd2c7351d upstream. The ati_remote2 driver expects at least two interfaces with one endpoint each. If given malicious descriptor that specify one interface or no endpoints, it will crash in the probe function. Ensure there is at least two interfaces and one endpoint for each interface before using it. The full disclosure: http://seclists.org/bugtraq/2016/Mar/90 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>
| | * | | | | | Input: ims-pcu - sanity check against missing interfacesOliver Neukum2016-04-12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | commit a0ad220c96692eda76b2e3fd7279f3dcd1d8a8ff upstream. A malicious device missing interface can make the driver oops. Add sanity checking. Signed-off-by: Oliver Neukum <ONeukum@suse.com> Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
| | * | | | | | Input: synaptics - handle spurious release of trackstick buttons, againBenjamin Tissoires2016-04-12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | commit 82be788c96ed5978d3cb4a00079e26b981a3df3f upstream. Looks like the fimware 8.2 still has the extra buttons spurious release bug. Link: https://bugzilla.kernel.org/show_bug.cgi?id=114321 Signed-off-by: Benjamin Tissoires <benjamin.tissoires@redhat.com> Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
| | * | | | | | Input: powermate - fix oops with malicious USB descriptorsJosh Boyer2016-04-12
| | | |_|_|_|/ | | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | commit 9c6ba456711687b794dcf285856fc14e2c76074f upstream. The powermate driver expects at least one valid USB endpoint in its probe function. If given malicious descriptors that specify 0 for the number of endpoints, it will crash. Validate the number of endpoints on the interface before using them. The full report for this issue can be found here: http://seclists.org/bugtraq/2016/Mar/85 Reported-by: Ralf Spenneberg <ralf@spenneberg.net> Signed-off-by: Josh Boyer <jwboyer@fedoraproject.org> Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
* | | | | | | Merge "input: touchscreen: add palm-gesture sleep feature"Linux Build Service Account2016-08-01
|\ \ \ \ \ \ \ | | |_|/ / / / | |/| | | / / | |_|_|_|/ / |/| | | | |
| * | | | | input: touchscreen: add palm-gesture sleep featureShantanu Jain2016-07-31
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add palm-gesture sleep feature for ITE tech touchscreen driver. When enabled the driver sends a key code to the user space. Two optional device-tree properties are added for this: ite,palm-detect and ite,palm-detect-keycode. Change-Id: I0989cb66ab5edb10769ced9d525bd4f6d7adb02b Signed-off-by: Shantanu Jain <shjain@codeaurora.org>
* | | | | | Merge "input: touchscreen: add touch to wake feature in ITEtech driver"Linux Build Service Account2016-08-01
|\| | | | | | |_|_|/ / |/| | | |
| * | | | input: touchscreen: add touch to wake feature in ITEtech driverShantanu Jain2016-07-31
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add touch to wake feature in ITE tech touchscreen driver. The touchscreen interrupt is configured as wakeable interrupt, so TS can be used to wake the device from suspend state. Change-Id: I8da53ab4f03237b8652cd5891eadbffa752d72d3 Signed-off-by: Shantanu Jain <shjain@codeaurora.org>
| * | | | input: it7258_ts_i2c: add debugfs support for suspend/resumeShantanu Jain2016-07-31
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add debugfs support for suspend and resume test for ITE tech touchscreen driver. Change-Id: I5a3d55c7c8e4b8f594fd7924c61ac1e5b5ad1965 Signed-off-by: Shantanu Jain <shjain@codeaurora.org>
| * | | | input: touchscreen: add protocol A support to ITE tech driverHimanshu Aggarwal2016-07-30
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add multi-touch protocol A support to ITE tech touchscreen driver. Change-Id: I49bc7e3eaa3b266fe92bb209f56ae5a1b40675e0 Signed-off-by: Himanshu Aggarwal <haggarwa@codeaurora.org> Signed-off-by: Shantanu Jain <shjain@codeaurora.org>
| * | | | input: touchscreen: add suspend-resume and fb supportShantanu Jain2016-07-30
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add suspend-resume and fb notification support for ITE tech touchscreen driver. Change-Id: I9a601412fb9a3935c0eadad5157bb1fd819b29dd Signed-off-by: Shantanu Jain <shjain@codeaurora.org>
| * | | | input: it7258_ts_i2c: add DT parsing support for touch driverAbinaya P2016-07-28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add device tree support for ITE Tech touch controller driver. Change-Id: I2671b7c30b0f2ed1d7ad788f29b7f900a2a1cdcc Signed-off-by: Shantanu Jain <shjain@codeaurora.org> Signed-off-by: Abinaya P <abinayap@codeaurora.org>
* | | | | ft5x06: Set input property bit to indicate a direct input deviceAmy Maloche2016-07-29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Property bit is checked in userspace and must be set in driver in order to be recognized correctly since it defaults to mouse pointer. Change-Id: Ibdc78547e6376e6db54db75b1423718d13afaaa7 Signed-off-by: Amy Maloche <amaloche@codeaurora.org>
* | | | | input: ft5x06_ts: clean up the focaltech touchscreen driverShantanu Jain2016-07-29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Clean up the focaltech driver by fixing the following checkpatch errors. 1. else is not generally useful after a break or return 2. Possible unnecessary 'out of memory' message 3. Using __devexit is unnecessary 4. Unnecessary space before function pointer arguments This patch is a propagated patch from 3.18 kernel 'commit 2b6ea311a968 ("input: ft5x06_ts: fix checkpatch errors")' Change-Id: I36ed0497c12b0f14e9d7b60c2d8e78729871b8d0 Signed-off-by: Shantanu Jain <shjain@codeaurora.org> Signed-off-by: Abinaya P <abinayap@codeaurora.org>
* | | | | Merge "input: ft5x06_ts: Add driver for ft5x06 series"Linux Build Service Account2016-07-27
|\ \ \ \ \ | |/ / / / |/| | | |
| * | | | input: ft5x06_ts: Add driver for ft5x06 seriesMohan Pallaka2016-07-22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Ft5x06 controllers are single chip capacitive touch panel controller ICs with a built-in 8 bit Micro Controller Unit. It supports multi-touch capability and can detect up to five touches. Change-Id: I39eb1175d473d1f2c463e1c4a0a1606307da9dc0 Signed-off-by: Mohan Pallaka <mpallaka@codeaurora.org> (cherry picked from commit a2595074a6528a1a2d28470c11ed14c21081068c)
* | | | | input: it7258_ts_i2c: clean up the it7258_ts_i2c driverSudhakar Manapati2016-07-26
| |/ / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Clean it7258_ts_i2c touchscreen driver from checkpatch errors. This patch is a propagated patch from 3.18 kernel 'commit 6b0cae0c59dc ("input: it7258_ts_i2c: clean checkpatch errors")' Change-Id: I7eac4a04a19beebe8c89b5328a2cf921fa78bb69 Signed-off-by: Sudhakar Manapati <smanap@codeaurora.org> Signed-off-by: Abinaya P <abinayap@codeaurora.org>