Re: [PATCH RESEND v8 2/4] input: elants: support old touch report format

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



11.12.2020 21:48, Dmitry Torokhov пишет:
> On Fri, Dec 11, 2020 at 06:04:01PM +0100, Michał Mirosław wrote:
>> On Fri, Dec 11, 2020 at 07:39:33PM +0300, Dmitry Osipenko wrote:
>>> 11.12.2020 19:09, Michał Mirosław пишет:
>>>> On Thu, Dec 10, 2020 at 11:29:40PM -0800, Dmitry Torokhov wrote:
>>>>> Hi Michał,
>>>>> On Fri, Dec 11, 2020 at 07:53:56AM +0100, Michał Mirosław wrote:
>>>>>> @@ -998,17 +1011,18 @@ static irqreturn_t elants_i2c_irq(int irq, void *_dev)
>>>>>>  			}
>>>>>>  
>>>>>>  			report_len = ts->buf[FW_HDR_LENGTH] / report_count;
>>>>>> -			if (report_len != PACKET_SIZE) {
>>>>>> +			if (report_len != PACKET_SIZE &&
>>>>>> +			    report_len != PACKET_SIZE_OLD) {
>>>>>>  				dev_err(&client->dev,
>>>>>> -					"mismatching report length: %*ph\n",
>>>>>> +					"unsupported report length: %*ph\n",
>>>>>>  					HEADER_SIZE, ts->buf);
>>>>> Do I understand this correctly that the old packets are only observed on
>>>>> EKTF3624? If so can we expand the check so that we only accept packets
>>>>> with "old" size when we know we are dealing with this device?
>>>>
>>>> We only have EKTF3624 and can't be sure there are no other chips needing this.
>>>
>>> In practice this older packet format should be seen only on 3624, but
>>> nevertheless we could make it more explicit by adding the extra chip_id
>>> checks.
>>>
>>> It won't be difficult to change it in the future if will be needed.
>>>
>>> I think the main point that Dmitry Torokhov conveys here is that we
>>> should minimize the possible impact on the current EKT3500 code since we
>>> don't have definitive answers regarding the firmware differences among
>>> the hardware variants.
>>
>> The only possible impact here is that older firmware instead of breaking
>> would suddenly work. Maybe we can accept such a risk?
> 
> These are not controllers we'll randomly find in devices: Windows boxes
> use I2C HID, Chrome devices use "new" firmware, so that leaves random
> ARM where someone needs to consciously add proper compatible before the
> driver will engage with the controller.
> 
> I would prefer we were conservative and not accept potentially invalid
> data.
> 
> Thanks.
> 

Michał, will you be able to make v9 with all the review comments addressed?



[Index of Archives]     [Linux Media Devel]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Linux Wireless Networking]     [Linux Omap]

  Powered by Linux