Re: [PATCH] Input: ili210x - Set the device name according to the device model

From: Rogerio Pimentel
Date: Wed Sep 01 2021 - 16:28:06 EST


On Wed, Sep 1, 2021 at 4:46 PM Marek Vasut <marex@xxxxxxx> wrote:
>
> On 9/1/21 9:22 PM, Rogerio Pimentel wrote:
>
> [...]
>
> > 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",
>
> Which ilitek devices do you have available exactly ?
>
> There is a firmware interface which does report the device type, but I
> don't know whether it works on all the ilitek touchscreen devices. If it
> does, then it could be used here to pull the type from the firmware and
> then use this instead
>
> snprintf(model_name, ILI_NAME_LEN, "Ilitek ILI%04x Touchscreen", type);
>
> Try this command against the touch controller, it sends it command 0x61
> and reads two bytes of the reply:
> i2ctransfer -f -y 1 w1@0x41 0x61 r2
> 0x10 0x25 # <---- on ILI2510 it reports 0x25 0x10 in reverse

Thanks for the comments and suggestions. I'll make the changes and send V2.