[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAN+gG=HBv6iLJGMg8cAAV4RJ+=4eHV-q0zrny71fCXDO6cBE4A@mail.gmail.com>
Date: Mon, 28 Jan 2013 17:01:47 +0100
From: Benjamin Tissoires <benjamin.tissoires@...il.com>
To: Henrik Rydberg <rydberg@...omail.se>
Cc: Dmitry Torokhov <dmitry.torokhov@...il.com>,
Jiri Kosina <jkosina@...e.cz>,
Stephane Chatty <chatty@...c.fr>, linux-input@...r.kernel.org,
linux-kernel@...r.kernel.org
Subject: Re: [PATCH 06/25] HID: multitouch: optimize FlatFrog panels
On Mon, Jan 28, 2013 at 4:10 PM, Henrik Rydberg <rydberg@...omail.se> wrote:
> Hi Benjamin,
>
>> Relying on ALWAYS_VALID enhance a little the processing time of
>> the events.
>>
>> Signed-off-by: Benjamin Tissoires <benjamin.tissoires@...il.com>
>> ---
>> drivers/hid/hid-multitouch.c | 5 +++--
>> 1 file changed, 3 insertions(+), 2 deletions(-)
>
> Is there a measurement backing up this claim? I suspect
> micro-optimizations of this kind drowns completely along the rather
> long way from device, via malloc and loops, to the input core.
No, the measure I made for this are roughly the same. It's purely
micro-optimization, and yes, mallocs must kill the processing time.
However, the purpose of this patch and the others entitled 'optimize
XXX' is to show that I did not invented the new default class. My true
objective is to remove all the quirks related to the 'valid'
information in order to have a driver as universal as possible and to
be able to clean it up.
> Considering the must-be-tested-for-regression risk on top of that,
> this patch falls far below what is worth doing, IMHO.
It _has_ been tested. I got the HID traces from FlatFrog and either
they use different firmwares with different processing in their
devices, the kernel processing is good.
Cheers,
Benjamin
>
>> diff --git a/drivers/hid/hid-multitouch.c b/drivers/hid/hid-multitouch.c
>> index 5a886bd..7dfe891 100644
>> --- a/drivers/hid/hid-multitouch.c
>> +++ b/drivers/hid/hid-multitouch.c
>> @@ -229,8 +229,9 @@ static struct mt_class mt_classes[] = {
>> },
>>
>> { .name = MT_CLS_FLATFROG,
>> - .quirks = MT_QUIRK_NOT_SEEN_MEANS_UP |
>> - MT_QUIRK_NO_AREA,
>> + .quirks = MT_QUIRK_ALWAYS_VALID |
>> + MT_QUIRK_NO_AREA |
>> + MT_QUIRK_CONTACT_CNT_ACCURATE,
>> .sn_move = 2048,
>> .maxcontacts = 40,
>> },
>> --
>> 1.8.1
>>
>
> Thanks.
> Henrik
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists