]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
Input: novatek-nvt-ts - drop wake_type check
authorGianluca Boiano <morf3089@gmail.com>
Sun, 25 Jan 2026 05:34:30 +0000 (21:34 -0800)
committerDmitry Torokhov <dmitry.torokhov@gmail.com>
Sun, 25 Jan 2026 05:42:31 +0000 (21:42 -0800)
The wake_type parameter from touchscreen registers is not used for
anything functional - the driver only validates that it matches a
hard-coded expected value per chip variant. This causes probe to fail
on touchscreens that report a different wake_type despite being
otherwise compatible.

Drop the wake_type check and the associated chip data member to allow
the existing compatibles to work with more touchscreen variants.

Signed-off-by: Gianluca Boiano <morf3089@gmail.com>
Suggested-by: Hans de Goede <hansg@kernel.org>
Link: https://patch.msgid.link/20260122001040.76869-1-morf3089@gmail.com
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
drivers/input/touchscreen/novatek-nvt-ts.c

index 44b58e0dc1ada181a1b8f82413d38240b2003afa..3e6e2ee0ba8f303b1aaac56cb927b12c21a945a0 100644 (file)
@@ -27,7 +27,6 @@
 #define NVT_TS_PARAMS_MAX_TOUCH                0x09
 #define NVT_TS_PARAMS_MAX_BUTTONS      0x0a
 #define NVT_TS_PARAMS_IRQ_TYPE         0x0b
-#define NVT_TS_PARAMS_WAKE_TYPE                0x0c
 #define NVT_TS_PARAMS_CHIP_ID          0x0e
 #define NVT_TS_PARAMS_SIZE             0x0f
 
@@ -49,7 +48,6 @@ static const int nvt_ts_irq_type[4] = {
 };
 
 struct nvt_ts_i2c_chip_data {
-       u8 wake_type;
        u8 chip_id;
 };
 
@@ -261,7 +259,6 @@ static int nvt_ts_probe(struct i2c_client *client)
        if (width > NVT_TS_MAX_SIZE || height >= NVT_TS_MAX_SIZE ||
            data->max_touches > NVT_TS_MAX_TOUCHES ||
            irq_type >= ARRAY_SIZE(nvt_ts_irq_type) ||
-           data->buf[NVT_TS_PARAMS_WAKE_TYPE] != chip->wake_type ||
            data->buf[NVT_TS_PARAMS_CHIP_ID] != chip->chip_id) {
                dev_err(dev, "Unsupported touchscreen parameters: %*ph\n",
                        NVT_TS_PARAMS_SIZE, data->buf);
@@ -314,12 +311,10 @@ static int nvt_ts_probe(struct i2c_client *client)
 }
 
 static const struct nvt_ts_i2c_chip_data nvt_nt11205_ts_data = {
-       .wake_type = 0x05,
        .chip_id = 0x05,
 };
 
 static const struct nvt_ts_i2c_chip_data nvt_nt36672a_ts_data = {
-       .wake_type = 0x01,
        .chip_id = 0x08,
 };