On Sat, Sep 4, 2021 at 3:17 AM Dmitry Torokhov <dmitry.torokhov@xxxxxxxxx> wrote: > > Hi Rogerio, > > On Fri, Sep 03, 2021 at 01:54:48PM -0300, Rogerio Pimentel wrote: > > 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. > > Typically model would go into input->id.product and optionally > input->id.version. > > > > > Signed-off-by: Rogerio Pimentel <rpimentel.silva@xxxxxxxxx> > > --- > > > > Changes since v1: Get the device ID from touchscreen controller > > instead of driver's device list. > > > > drivers/input/touchscreen/ili210x.c | 11 ++++++++++- > > 1 file changed, 10 insertions(+), 1 deletion(-) > > > > diff --git a/drivers/input/touchscreen/ili210x.c b/drivers/input/touchscreen/ili210x.c > > index 199cf3daec10..7a897a03ed70 100644 > > --- a/drivers/input/touchscreen/ili210x.c > > +++ b/drivers/input/touchscreen/ili210x.c > > @@ -19,10 +19,14 @@ > > #define ILI251X_DATA_SIZE1 31 > > #define ILI251X_DATA_SIZE2 20 > > > > +#define ILI_NAME_LEN 27 > > +#define ILITEK_TS_NAME "Ilitek ILI%x%x Touchscreen" > > + > > /* Touchscreen commands */ > > #define REG_TOUCHDATA 0x10 > > #define REG_PANEL_INFO 0x20 > > #define REG_CALIBRATE 0xcc > > +#define REG_TS_MODEL 0x61 > > > > struct ili2xxx_chip { > > int (*read_reg)(struct i2c_client *client, u8 reg, > > @@ -384,6 +388,8 @@ static int ili210x_i2c_probe(struct i2c_client *client, > > struct input_dev *input; > > int error; > > unsigned int max_xy; > > + unsigned char buf[2]; > > + char *model_name; > > > > dev_dbg(dev, "Probing for ILI210X I2C Touschreen driver"); > > > > @@ -430,7 +436,10 @@ static int ili210x_i2c_probe(struct i2c_client *client, > > i2c_set_clientdata(client, priv); > > > > /* Setup input device */ > > - input->name = "ILI210x Touchscreen"; > > + input->name = ILITEK_TS_NAME; > > + model_name = (char *)input->name; > > Umm, no. Smashing RO data is not nice. > > > + priv->chip->read_reg(priv->client, REG_TS_MODEL, buf, 2); > > + snprintf(model_name, ILI_NAME_LEN, input->name, buf[1], buf[0]); > > input->id.bustype = BUS_I2C; > > > > /* Multi touch */ > > -- > > 2.17.1 > > > > Thanks. > I agree with the comments. Please, discard this patch. Rogerio > -- > Dmitry