Upcoming Kernel - MultiTouchScreen Support

Stéphane Chatty chatty at enac.fr
Thu Mar 4 09:56:32 UTC 2010


Hi,

in order to have the driver up and running, two modifications are  
necessary in the hid subsystem:

  1. the one described below, in hid.h. This is required for a whole  
bunch of multitouch devices but obviously it has to be done only once.

  2. the addition of the device's (VendorID, ProductID) couple to a  
black list in the hid subsystem's core, so that the new driver can  
manage it. This involves changes in hid-ids.h and hid-core.c, for  
every new driver.

If hid is compiled as a module, this is fairly straightfowrad. If, as  
in Ubuntu, it is statically compiled in the kernel, it means that one  
needs to recompile the kernel each time they add a new multitouch  
driver.

I was hoping that at least the first patch would be taken into  
account for 2.6.33 so as to save work for a lot of people, but it  
looks like the patch came too late in the process.

Cheers,

St.

Le 4 mars 10 à 10:23, Luis R. Rodriguez a écrit :

> Adding Chatty @ ENAC, in hopes some more light can be shed on this.
>
> On Thu, Mar 4, 2010 at 1:20 AM, Luis R. Rodriguez  
> <mcgrof at gmail.com> wrote:
>> On Thu, Mar 4, 2010 at 12:18 AM, Amit Kucheria
>> <amit.kucheria at canonical.com> wrote:
>>> Hi Thomas,
>>>
>>> I'm forwarding this to the kernel-team mailing list so other  
>>> developers can
>>> also comment.
>>>
>>> Regards,
>>> Amit
>>>
>>> ----- Forwarded message from Thomas Winteler <info at win-soft.ch>  
>>> -----
>>>
>>> Date: Wed, 03 Mar 2010 09:26:56 +0100
>>> From: Thomas Winteler <info at win-soft.ch>
>>> To: amit.kucheria at ubuntu.com
>>> Subject: Upcoming Kernel - MultiTouchScreen Support
>>> User-Agent: Mozilla/5.0 (X11; U; Linux i686 (x86_64); en-US; rv: 
>>> 1.9.1.8) Gecko/20100216 Thunderbird/3.0.2
>>> Organization: Win-Soft, Business IT eXpert
>>>
>>> -----BEGIN PGP SIGNED MESSAGE-----
>>> Hash: SHA1
>>>
>>> Good Morning Mr. Amit Kucheria
>>>
>>> Thank you for your time, reading my eMail.
>>>
>>> The new Hardware on the market offer MultiTouchScreens, like the  
>>> Netbook
>>> from ASUS:
>>> ASUS EEE PC T91MT
>>> http://www.asus.com/product.aspx?P_ID=KIqtSJ1aVsmVpeqS
>>>
>>> I found some information in ASUS's Support Forum and found also a  
>>> Linux
>>> Driver Builder.
>>> http://vip.asus.com/forum/view.aspx? 
>>> id=20091214162901203&SLanguage=en-us&page=2&board_id=20&model=Eee% 
>>> 20PC%20T91MT
>>>
>>> ENAC Interactive computing laboratory HowTo
>>> http://lii-enac.fr/en/projects/shareit/linux-howto.html
>>>
>>> Drivers from ENAC
>>> http://lii-enac.fr/en/projects/shareit/linux.html
>>>
>>> MosArt MT Driver for ASUS's T91MT
>>> http://lii-enac.fr/en/projects/shareit/multitouch-devices.html
>>> - --> MosArt
>>>
>>> The Problem on this thing is, that the Kernel needs to be patched  
>>> and
>>> recompiled to get it running.
>>
>> The kernel changes don't seem that bad, I only see mention to one
>> header file which needs to be changed as follows:
>>
>> diff --git a/include/linux/hid.h b/include/linux/hid.h
>> index b1344ec..5ad8e6e 100644
>> --- a/include/linux/hid.h
>> +++ b/include/linux/hid.h
>> @@ -663,7 +663,7 @@ struct hid_ll_driver {
>>
>>  /* Applications from HID Usage Tables 4/8/99 Version 1.1 */
>>  /* We ignore a few input applications that are not widely used */
>> -#define IS_INPUT_APPLICATION(a) (((a >= 0x00010000) && (a <=
>> 0x00010008)) || (a == 0x00010080) || (a == 0x000c0001) || ((a >=
>> 0x000d0002) && (a <= 0x000d000
>> +#define IS_INPUT_APPLICATION(a) (a >= 0xd0002 && a <= 0xd0006)
>>
>>  /* HID core API */
>>
>> But this the change required is not documented, why is this required?
>> Anyway apart from it seems you need to modify the hid module and
>> provide it as a replacement. The rest is just adding drivers, and  
>> that
>> should be relatively trivial.
>>
>> What would be better is to track what is not upstream, see if the
>> authors are working on that, and if not see if the driver project can
>> get it upstream at least through staging.
>>
>>  Luis
>>





More information about the kernel-team mailing list