From: Benjamin Bara <benjamin.bara@xxxxxxxxxxx> When the optional fields "pressure_min" and "pressure_max" are not set, both fall back to 0, which results to the following libinput error: ADS7846 Touchscreen: kernel bug: device has min == max on ABS_PRESSURE Avoid it by only setting ABS_PRESSURE if the values differ. Signed-off-by: Benjamin Bara <benjamin.bara@xxxxxxxxxxx> --- drivers/input/touchscreen/ads7846.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/input/touchscreen/ads7846.c b/drivers/input/touchscreen/ads7846.c index faea40dd66d0..2535424a5630 100644 --- a/drivers/input/touchscreen/ads7846.c +++ b/drivers/input/touchscreen/ads7846.c @@ -1281,7 +1281,7 @@ static int ads7846_probe(struct spi_device *spi) pdata->y_min ? : 0, pdata->y_max ? : MAX_12BIT, 0, 0); - if (ts->model != 7845) + if (ts->model != 7845 && pdata->pressure_min != pdata->pressure_max) input_set_abs_params(input_dev, ABS_PRESSURE, pdata->pressure_min, pdata->pressure_max, 0, 0); --- base-commit: 451cc82bd11eb6a374f4dbcfc1cf007eafea91ab change-id: 20230727-ads7846-pressure-05edfb01887f Best regards, -- Benjamin Bara <benjamin.bara@xxxxxxxxxxx>