2021-09-01 23:49:40

by Rogerio Pimentel

[permalink] [raw]
Subject: [PATCH] Input: ili210x - Set the device name according to the device model

Adding the device model into the device name is useful when
applications need to set different parameters according to the
touchscreen being used, e.g. X11 calibration points.

Signed-off-by: Rogerio Pimentel <[email protected]>
---
drivers/input/touchscreen/ili210x.c | 17 ++++++++++++-----
1 file changed, 12 insertions(+), 5 deletions(-)

diff --git a/drivers/input/touchscreen/ili210x.c b/drivers/input/touchscreen/ili210x.c
index 30576a5f2f04..ca7af4a6f588 100644
--- a/drivers/input/touchscreen/ili210x.c
+++ b/drivers/input/touchscreen/ili210x.c
@@ -19,6 +19,8 @@
#define ILI251X_DATA_SIZE1 31
#define ILI251X_DATA_SIZE2 20

+#define ILI_NAME_LEN 27
+
/* Touchscreen commands */
#define REG_TOUCHDATA 0x10
#define REG_PANEL_INFO 0x20
@@ -394,6 +396,7 @@ static int ili210x_i2c_probe(struct i2c_client *client,
struct input_dev *input;
int error;
unsigned int max_xy;
+ char *model_name;

dev_dbg(dev, "Probing for ILI210X I2C Touschreen driver");

@@ -440,7 +443,11 @@ static int ili210x_i2c_probe(struct i2c_client *client,
i2c_set_clientdata(client, priv);

/* Setup input device */
- input->name = "ILI210x Touchscreen";
+ input->name = "Ilitek Touchscreen";
+ model_name = (char *)input->name;
+ snprintf(model_name, ILI_NAME_LEN, "Ilitek %s Touchscreen",
+ id->name);
+ input->name = model_name;
input->id.bustype = BUS_I2C;

/* Multi touch */
@@ -487,10 +494,10 @@ static int ili210x_i2c_probe(struct i2c_client *client,
}

static const struct i2c_device_id ili210x_i2c_id[] = {
- { "ili210x", (long)&ili210x_chip },
- { "ili2117", (long)&ili211x_chip },
- { "ili2120", (long)&ili212x_chip },
- { "ili251x", (long)&ili251x_chip },
+ { .name = "ili210x", (long)&ili210x_chip },
+ { .name = "ili2117", (long)&ili211x_chip },
+ { .name = "ili2120", (long)&ili212x_chip },
+ { .name = "ili251x", (long)&ili251x_chip },
{ }
};
MODULE_DEVICE_TABLE(i2c, ili210x_i2c_id);
--
2.17.1