Comment 72 for bug 791833

Revision history for this message
In , Chris (chris-redhat-bugs) wrote :

Hi chew,

It works!

For everyone else, here's what I did. I followed along with this wiki article

http://fedoraproject.org/wiki/Building_a_custom_kernel

I skipped "Copy the Source Tree and Generate a Patch" and copied the standard config for x86_64. I ran xconfig, but I didn't change anything. (usbtouchscreen is defined as a loadable module)

I downloaded the patch file from this bug report and put it in the SOURCES directory.

I modified the SPECS/kernel.spec file and defined "buildid" as ".Dell_ST2220T" so that the new kernel would have a unique name. I added the patch to the kernel.specs file as well.

I followed the instructions on building the kernel and firmware, but I could never get the firmware to install. I ended up installing the kernel using:

"su -c "rpm -ivh --force $HOME/rpmbuild/RPMS/<arch>/kernel-<version>.<arch>.rpm"

I got warnings, but it loaded.

Unfortunately, the patch as written does not emit touch events, just position, so I had to make the "chew" change in comment 8. Fortunately, I had gone through the pain of building and installing a custom kernel, so I just had to figure out how to modify just the usbtouchscreen.ko module and load it up.

I changed directories into the linux source "$HOME/rpmbuild//BUILD/kernel-2.6.39.fc15/linux-2.6.39.x86_64" in my case and issued a make command for the module:

"make drivers/input/touchscreen/usbtouchscreen.ko"

Then to install is, I used:
"su insmod ./drivers/input/touchscreen/usbtouchscreen.ko"

plugged in the Dell USB and it worked!

When I run evtest and just touch the screen and take my finger off I get:
---------------------
...
/dev/input/event4: LG Display LGD-MultiTouch
Select the device event number [0-4]: 4
Input driver version is 1.0.1
Input device ID: bus 0x3 vendor 0x1fd2 product 0x64 version 0x200
Input device name: "LG Display LGD-MultiTouch"
Supported events:
  Event type 0 (Sync)
  Event type 1 (Key)
    Event code 330 (Touch)
  Event type 3 (Absolute)
    Event code 0 (X)
      Value 9667
      Min 0
      Max 16384
    Event code 1 (Y)
      Value 8535
      Min 0
      Max 16384
Testing ... (interrupt to exit)
Event: time 1315245129.689025, type 1 (Key), code 330 (Touch), value 1
Event: time 1315245129.689029, type 3 (Absolute), code 0 (X), value 7687
Event: time 1315245129.689031, type 3 (Absolute), code 1 (Y), value 7455
Event: time 1315245129.689034, -------------- Report Sync ------------
Event: time 1315245129.733038, type 1 (Key), code 330 (Touch), value 0
Event: time 1315245129.733052, -------------- Report Sync ------------
^C
---------------------

Using this driver I've been successful at dragging objects around in Nautilus, touching and dragging interface objects in Firefox etc.

Of course be careful.

Thanks to all for the help!

gopal, I'm not sure what you mean by disturb everything. I have not extensively tested this patched patch, but so far I able to get simple mouse-type actions with it. It's not multi-touch as far as I know, but then that's beyond my current specifications. So far this works for me. I'm hoping the module will load the next time I reboot!

Thanks again. I'll keep folks posted if I have further issues.

Chris