lkml.org 
[lkml]   [2021]   [Sep]   [2]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
SubjectRe: [PATCH] Input: ili210x - Set the device name according to the device model
From
Date
On 9/2/21 2:39 PM, Rogerio Pimentel wrote:
> On Wed, Sep 1, 2021 at 5:48 PM Marek Vasut <marex@denx.de> wrote:
>>
>> On 9/1/21 10:27 PM, Rogerio Pimentel wrote:
>>> On Wed, Sep 1, 2021 at 4:46 PM Marek Vasut <marex@denx.de> 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.
>>
>> Can you tell which ILI2xxx touch controller you have exactly ?
>
> Now I have only the ILI2511. Will also have to support ILI2510 and ILI2118.
>
>> Can you share the output of the 'i2ctransfer' (from i2c-tools) command
>> above ?
>
> # i2ctransfer -f -y 3 w1@0x41 0x61 r2
> 0x11 0x25

Nice, so this works at least with the 251x series. Let's see how the
2118 behaves, I bet you will get 0x18 0x21 there too.

\
 
 \ /
  Last update: 2021-09-02 14:44    [W:0.044 / U:1.008 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site