]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
Input: ads7846 - don't report pressure for ads7845
authorLuca Ellero <l.ellero@asem.it>
Thu, 26 Jan 2023 10:52:25 +0000 (11:52 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 1 Mar 2024 12:21:50 +0000 (13:21 +0100)
[ Upstream commit d50584d783313c8b05b84d0b07a2142f1bde46dd ]

ADS7845 doesn't support pressure.
Avoid the following error reported by libinput-list-devices:
"ADS7845 Touchscreen: kernel bug: device has min == max on ABS_PRESSURE".

Fixes: ffa458c1bd9b ("spi: ads7846 driver")
Signed-off-by: Luca Ellero <l.ellero@asem.it>
Reviewed-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Link: https://lore.kernel.org/r/20230126105227.47648-2-l.ellero@asem.it
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/input/touchscreen/ads7846.c

index f113a27aeb1ef16e80cbc28dac47b6ebb770560f..ef04988edf0c248b18a1e725bf9db59f265fd691 100644 (file)
@@ -1323,8 +1323,9 @@ static int ads7846_probe(struct spi_device *spi)
                        pdata->y_min ? : 0,
                        pdata->y_max ? : MAX_12BIT,
                        0, 0);
-       input_set_abs_params(input_dev, ABS_PRESSURE,
-                       pdata->pressure_min, pdata->pressure_max, 0, 0);
+       if (ts->model != 7845)
+               input_set_abs_params(input_dev, ABS_PRESSURE,
+                               pdata->pressure_min, pdata->pressure_max, 0, 0);
 
        /*
         * Parse common framework properties. Must be done here to ensure the