Commit 7ff57459 authored by Gianluca Boiano's avatar Gianluca Boiano Committed by Dmitry Torokhov
Browse files

Input: novatek-nvt-ts - drop wake_type check



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: default avatarGianluca Boiano <morf3089@gmail.com>
Suggested-by: default avatarHans de Goede <hansg@kernel.org>
Link: https://patch.msgid.link/20260122001040.76869-1-morf3089@gmail.com


Signed-off-by: default avatarDmitry Torokhov <dmitry.torokhov@gmail.com>
parent a53a6dd6
Loading
Loading
Loading
Loading
+0 −5
Original line number Diff line number Diff line
@@ -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,
};