]> git.dujemihanovic.xyz Git - linux.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)
committerDmitry Torokhov <dmitry.torokhov@gmail.com>
Mon, 30 Jan 2023 02:33:45 +0000 (18:33 -0800)
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>
drivers/input/touchscreen/ads7846.c

index 4c3dd01902d08e880cb90bde2b532691c45b3562..f11b444f21384e1905b25bf2992ae242536c11a7 100644 (file)
@@ -1316,8 +1316,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