linux_dsm_epyc7002/drivers/input/touchscreen
H. Nikolaus Schaller db4572ff0e Input: tsc2007 - correctly report pressure and not resistance to user space
Previously, tsc2007 would report as ABS_PRESSURE:
0              for no pressure (resistance infinite)
high value     for soft pressure (high resistance)
low value      for firm pressure (lower resistance)

This does not matter for most applications (e.g. GUI, Menu, Scrolling etc.)
where the ABS_PRESSURE is ignored and only BTN_TOUCH is processed to detect
screen taps.

Only some special graphics applications read the pressure channel and they
will be mixed up by this non-monotonic relation.

So we fix it to become:
0              for no pressure (resistance infinite)
low value      for soft pressure (high resistance)
high value     for firm pressure (lower resistance)

While this patch changes the values reported to userspace, ABS_PRESSURE is
used rarely by userspace. Most software only relies on BTN_TOUCH (boolean),
which is not affected by this patch. Some graphics software makes use of
the interface and does not work correctly with the currently used inverted
behaviour.

Signed-off-by: H. Nikolaus Schaller <hns@goldelico.com>
Reviewed-By: Sebastian Reichel <sre@kernel.org>
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
2017-02-22 23:55:09 -08:00
..
88pm860x-ts.c input: touchscreen: drop owner assignment from platform_drivers 2014-10-20 16:20:41 +02:00
ad7877.c spi: Drop owner assignment from spi_drivers 2015-10-28 10:30:17 +09:00
ad7879-i2c.c Input: ad7879 - add device tree support 2016-03-08 10:51:18 -08:00
ad7879-spi.c Input: ad7879 - add device tree support 2016-03-08 10:51:18 -08:00
ad7879.c Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input 2016-07-27 14:30:41 -07:00
ad7879.h
ads7846.c Input: ads7846 - remove redundant regulator_disable call 2016-08-22 14:15:11 -07:00
ar1021_i2c.c Input: drop owner assignment from i2c_driver 2015-07-17 16:57:00 -07:00
atmel_mxt_ts.c [media] Input: v4l-touch - add copyright lines 2016-09-19 16:26:21 -03:00
atmel-wm97xx.c input: touchscreen: drop owner assignment from platform_drivers 2014-10-20 16:20:41 +02:00
auo-pixcir-ts.c Input: auo-pixcir-ts - simplify function return logic 2015-10-02 11:44:18 -07:00
bcm_iproc_tsc.c Input: bcm_iproc_tsc - use syscon to access shared registers 2016-04-06 16:11:56 -07:00
bu21013_ts.c Input: drop owner assignment from i2c_driver 2015-07-17 16:57:00 -07:00
chipone_icn8318.c Input: icn8318 - use of_touchscreen helpers for inverting / swapping axes 2016-07-15 14:50:56 -07:00
colibri-vf50-ts.c Input: colibri-vf50-ts - add missing #include <linux/of.h> 2016-02-09 15:36:22 -08:00
cy8ctmg110_ts.c Input: drop owner assignment from i2c_driver 2015-07-17 16:57:00 -07:00
cyttsp4_core.c treewide: Fix typos in printk 2016-04-28 10:52:28 +02:00
cyttsp4_core.h
cyttsp4_i2c.c Input: cyttsp - use PTR_ERR_OR_ZERO() 2015-10-02 11:44:19 -07:00
cyttsp4_spi.c spi: Drop owner assignment from spi_drivers 2015-10-28 10:30:17 +09:00
cyttsp_core.c Input: of_touchscreen - add support for inverted / swapped axes 2016-07-15 14:50:53 -07:00
cyttsp_core.h Input: cyttsp - switch to using device properties 2016-01-27 14:32:48 -08:00
cyttsp_i2c_common.c
cyttsp_i2c.c Input: cyttsp - use devres managed resource allocations 2016-01-27 14:32:46 -08:00
cyttsp_spi.c Input: cyttsp - use devres managed resource allocations 2016-01-27 14:32:46 -08:00
da9034-ts.c input: touchscreen: drop owner assignment from platform_drivers 2014-10-20 16:20:41 +02:00
da9052_tsi.c input: touchscreen: drop owner assignment from platform_drivers 2014-10-20 16:20:41 +02:00
dynapro.c Input: delete non-required instances of include <linux/init.h> 2014-01-06 23:23:57 -08:00
edt-ft5x06.c Input: remove duplicate ft6236 driver 2016-08-22 14:16:07 -07:00
eeti_ts.c Input: touchscreen - use __maybe_unused instead of ifdef around suspend/resume 2014-11-02 00:10:07 -07:00
egalax_ts_serial.c Input: egalax_ts_serial - fix potential NULL dereference on error 2015-12-19 23:44:40 -08:00
egalax_ts.c Input: touchscreen - export OF module alias information 2015-07-30 11:05:37 -07:00
ektf2127.c Input: ektf2127 - mark PM functions as __maybe_unused 2016-10-03 16:36:52 -07:00
elants_i2c.c Input: elants_i2c - get product id on recovery mode for FW update 2016-08-25 10:11:31 -07:00
elo.c Input: delete non-required instances of include <linux/init.h> 2014-01-06 23:23:57 -08:00
fsl-imx25-tcq.c Input: touchscreen: Add imx25 TCQ driver 2016-02-11 15:40:42 +00:00
fujitsu_ts.c Input: delete non-required instances of include <linux/init.h> 2014-01-06 23:23:57 -08:00
goodix.c Input: goodix - use "inverted_[xy]" flags instead of "rotated_screen" 2015-12-17 17:11:56 -08:00
gunze.c Input: delete non-required instances of include <linux/init.h> 2014-01-06 23:23:57 -08:00
hampshire.c Input: delete non-required instances of include <linux/init.h> 2014-01-06 23:23:57 -08:00
hp680_ts_input.c
htcpen.c
ili210x.c Input: ili210x - fix permissions on "calibrate" attribute 2016-08-02 23:40:41 -07:00
imx6ul_tsc.c Input: imx6ul_tsc - fix controller name 2015-09-19 11:41:54 -07:00
inexio.c Input: delete non-required instances of include <linux/init.h> 2014-01-06 23:23:57 -08:00
intel-mid-touch.c input: touchscreen: drop owner assignment from platform_drivers 2014-10-20 16:20:41 +02:00
ipaq-micro-ts.c Input: touchscreen - use __maybe_unused instead of ifdef around suspend/resume 2014-11-02 00:10:07 -07:00
jornada720_ts.c Input: jornada720_ts - get rid of mach/irqs.h and mach/hardware.h includes 2016-09-10 10:47:48 -07:00
Kconfig Input: tsc2007 - add iio interface to read external ADC input and temperature 2017-02-17 13:21:55 -08:00
lpc32xx_ts.c Input: lpc32xx_ts - fix warnings caused by enabling unprepared clock 2015-10-17 11:33:05 -07:00
mainstone-wm97xx.c Input: delete non-required instances of include <linux/init.h> 2014-01-06 23:23:57 -08:00
Makefile Input: tsc2007 - add iio interface to read external ADC input and temperature 2017-02-17 13:21:55 -08:00
max11801_ts.c Input: drop owner assignment from i2c_driver 2015-07-17 16:57:00 -07:00
mc13783_ts.c Input: mc13783_ts - remove deprecated create_singletheread_workqueue 2016-08-25 10:11:00 -07:00
mcs5000_ts.c Input: mcs5000_ts - remove ifdef around power management methods 2014-07-30 22:52:56 -07:00
melfas_mip4.c Input: melfas_mip4 - add ic_name sysfs attribute 2016-10-11 16:58:24 -07:00
migor_ts.c Input: migor-ts - mark PM functions as __maybe_unused 2016-05-19 09:35:15 -07:00
mk712.c
mms114.c Input: mms114 - remove unneded semicolons 2015-09-19 11:39:03 -07:00
mtouch.c Input: delete non-required instances of include <linux/init.h> 2014-01-06 23:23:57 -08:00
of_touchscreen.c Input: of_touchscreen - add support for inverted / swapped axes 2016-07-15 14:50:53 -07:00
pcap_ts.c Input: pcap_ts - use to_delayed_work 2016-01-02 21:08:53 -08:00
penmount.c Input: delete non-required instances of include <linux/init.h> 2014-01-06 23:23:57 -08:00
pixcir_i2c_ts.c Input: pixcir_i2c_ts - remove a useless blank line 2016-08-22 14:16:50 -07:00
raydium_i2c_ts.c Input: raydium_i2c_ts - check CRC of incoming packets 2016-07-13 17:27:24 -07:00
rohm_bu21023.c Input: rohm_bu21023 - fix handling of retrying firmware update 2016-01-07 09:57:21 -08:00
s3c2410_ts.c Input: s3c2410_ts - constify platform_device_id 2015-05-06 16:56:55 -07:00
silead.c Input: silead_gsl1680 - use "silead/" prefix for firmware loading 2016-09-10 10:49:15 -07:00
sis_i2c.c Input: add driver for SiS 9200 family I2C touchscreen controllers 2016-08-03 00:49:00 -07:00
st1232.c Input: drop owner assignment from i2c_driver 2015-07-17 16:57:00 -07:00
stmpe-ts.c Input: stmpe-ts - restore kerneldoc 2016-03-02 09:40:20 -08:00
sun4i-ts.c input: convert sun4i-ts to use devm_thermal_zone_of_sensor_register 2016-05-17 07:28:26 -07:00
sur40.c [media] sur40: properly report a single frame rate of 60 FPS 2016-08-24 10:07:06 -03:00
surface3_spi.c Input: surface3_spi - add surface pen support for Surface 3 2016-05-27 16:33:34 -07:00
sx8654.c Input: sx8654 - fix memory allocation check 2015-05-13 10:29:33 -07:00
ti_am335x_tsc.c Input: ti_am335x_tsc - use variable name for sizeof() operator 2016-06-01 14:21:11 -07:00
touchit213.c Input: delete non-required instances of include <linux/init.h> 2014-01-06 23:23:57 -08:00
touchright.c Input: delete non-required instances of include <linux/init.h> 2014-01-06 23:23:57 -08:00
touchwin.c Input: delete non-required instances of include <linux/init.h> 2014-01-06 23:23:57 -08:00
tps6507x-ts.c Input: tps6507x-ts - simplify function return logic 2015-10-02 11:44:18 -07:00
ts4800-ts.c Input: ts4800-ts - add missing of_node_put after calling of_parse_phandle 2016-07-15 10:50:12 -07:00
tsc40.c Input: delete non-required instances of include <linux/init.h> 2014-01-06 23:23:57 -08:00
tsc200x-core.c Merge branch 'next' into for-linus 2016-07-26 12:07:15 -07:00
tsc200x-core.h Input: tsc200x - report proper input_dev name 2016-07-20 17:50:24 -07:00
tsc2004.c Input: tsc200x - report proper input_dev name 2016-07-20 17:50:24 -07:00
tsc2005.c Input: tsc200x - report proper input_dev name 2016-07-20 17:50:24 -07:00
tsc2007_core.c Input: tsc2007 - correctly report pressure and not resistance to user space 2017-02-22 23:55:09 -08:00
tsc2007_iio.c Input: tsc2007 - rename function tsc2007_calculate_pressure 2017-02-22 23:55:07 -08:00
tsc2007.h Input: tsc2007 - rename function tsc2007_calculate_pressure 2017-02-22 23:55:07 -08:00
ucb1400_ts.c Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input 2014-12-17 10:06:02 -08:00
usbtouchscreen.c Input: usbtouchscreen - avoid unresponsive TSC-30 touch screen 2015-07-23 14:43:17 -07:00
w90p910_ts.c input: touchscreen: drop owner assignment from platform_drivers 2014-10-20 16:20:41 +02:00
wacom_i2c.c Input: drop owner assignment from i2c_driver 2015-07-17 16:57:00 -07:00
wacom_w8001.c Input: wacom_w8001 - handle errors from input_mt_init_slots() 2016-07-19 11:42:44 -07:00
wdt87xx_i2c.c Input: wdt87xx_i2c - fix the flash erase issue 2016-09-05 10:31:47 -07:00
wm97xx-core.c Input: wm97xx - remove deprecated create_singletheread_workqueue 2016-08-25 10:11:30 -07:00
wm831x-ts.c input: touchscreen: drop owner assignment from platform_drivers 2014-10-20 16:20:41 +02:00
wm9705.c
wm9712.c Input: wm971x - fix typo in module parameter description 2014-09-09 16:52:09 -07:00
wm9713.c Input: wm971x - fix typo in module parameter description 2014-09-09 16:52:09 -07:00
zforce_ts.c Input: zforce_ts - fix dual touch recognition 2016-04-25 14:27:56 -07:00
zylonite-wm97xx.c Input: delete non-required instances of include <linux/init.h> 2014-01-06 23:23:57 -08:00