Hello

I'm trying to get the touchscreen to work with tinyX.

I followed the instructions to build the TSLIB 
http://sourceforge.net/mailarchive/message.php?msg_id=15574788

The problem that I'm having is that the modules
created by TSLIB do not load cleanly.

I'm using ts_test to test the gumstix-touchscreen interface
Before running ts_test, I type these settings:

   export TSLIB_CONFFILE=/etc/ts.conf
   export TSLIB_PLUGINDIR=/usr/lib
   export TSLIB_TSDEVICE=/dev/input/event0
   export TSLIB_FBDEVICE=/dev/fb0
   export TSLIB_CONSOLEDEVICE=/dev/tty

   modprobe snd-pxa2xx-ac97
   modprobe ucb1x00-ts
   modprobe evdev
   export DISPLAY=":0.0"

NOTE: I can only get here if ucb1x00-ts does not fail with IRQ probe failure.
      ts_test is created after building tslib.     

Since it was not executing ts_test at all, I added some debugs
to ts_load_module.c (/tslib/src directory) to 'walk' through the code.

So I ran ts_test and I got this
        #./ts_test &
        # dlopen...[/usr/lib/input.so]
          dlopen handle [0x15130x]
          dlsym

It fails loading 'input.so' on dlsym
but I can get a prompt # so I try again:

        #./ts_test &
        # dlopen...[/usr/lib/input.so]
          dlopen handle [0x15130x]
          dlsym
          dlsym init
          init
          handle
          raw: Success
          ts_load_module: Success
          dlopen...[/usr/lib/pthres.so]
          dlopen handle [0x152b0x]
          dlsym
 
This time dlsym loads ok on 'input.so'
but it fails loading 'pthres.so' so I try again

        #./ts_test &
        # dlopen...[/usr/lib/input.so]
        dlopen handle [0x15130x]
        dlsym
        dlsym init
        init
        handle
        raw: Success
        ts_load_module: Success
        dlopen...[/usr/lib/pthres.so]
        dlopen handle [0x152b0x]
        dlsym
        dlsym init
        init
        handle
        non-raw: Success
        ts_load_module: Success
        dlopen...[/usr/lib/variance.so]
        dlopen handle [0x15420x]
        dlsym
Now,it fails on 'variance.so'

        #./ts_test &
        # dlopen...[/usr/lib/input.so]
        dlopen handle [0x15130x]
        dlsym
        dlsym init
        init
        handle
        raw: Success
        ts_load_module: Success
        dlopen...[/usr/lib/pthres.so]
        dlopen handle [0x152b0x]
        dlsym
        dlsym init
        init
        handle
        non-raw: Success
        ts_load_module: Success
        dlopen...[/usr/lib/variance.so]
        dlopen handle [0x15420x]
        dlsym
        dlsym init
        init
        handle
        non-raw: Success
        ts_load_module: Success
        dlopen...[/usr/lib/dejitter.so]
        dlopen handle [0x155b8x]
        dlsym
Now, it fails on 'dejitter.so'

        #./ts_test &
        dlopen...[/usr/lib/input.so]
        dlopen handle [0x15130x]
        dlsym
        dlsym init
        init
        handle
        raw: Success
        ts_load_module: Success
        dlopen...[/usr/lib/pthres.so]
        dlopen handle [0x152b0x]
        dlsym
        dlsym init
        init
        handle
        non-raw: Success
        ts_load_module: Success
        dlopen...[/usr/lib/variance.so]
        dlopen handle [0x15420x]
        dlsym
        dlsym init
        init
        handle
        non-raw: Success
        ts_load_module: Success
        dlopen...[/usr/lib/dejitter.so]
        dlopen handle [0x155b8x]
        dlsym
        dlsym init
        init
        handle
        non-raw: Success
        ts_load_module: Success
        dlopen...[/usr/lib/linear.so]
        dlopen handle [0x15768x]
        dlsym
Now, it fails on 'linear.so'

        #./ts_test &
        dlopen...[/usr/lib/input.so]
        dlopen handle [0x15130x]
        dlsym
        dlsym init
        init
        handle
        raw: Success
        ts_load_module: Success
        dlopen...[/usr/lib/pthres.so]
        dlopen handle [0x152b0x]
        dlsym
        dlsym init
        init
        handle
        non-raw: Success
        ts_load_module: Success
        dlopen...[/usr/lib/variance.so]
        dlopen handle [0x15420x]
        dlsym
        dlsym init
        init
        handle
        non-raw: Success
        ts_load_module: Success
        dlopen...[/usr/lib/dejitter.so]
        dlopen handle [0x155b8x]
        dlsym
        dlsym init
        init
        handle
        non-raw: Success
        ts_load_module: Success
        dlopen...[/usr/lib/linear.so]
        dlopen handle [0x15768x]
        dlsym
        dlsym init
        init
        handle
        non-raw: Success
        ts_load_module: Success

So finally I get it to load all five modules and ts_test 'works'
 input.so
 pthres.so
 variance
 dejitter.so
 linear.so

When I press the touchscreen I get some data to be dumped on the console

130.052375:    125    161    671
130.092538:    124    161    661
130.151774:    125    161    665
130.211904:    124    161    682
130.272090:    124    161    677
130.331757:    125    160    689
130.391749:    126    159    700
130.511914:    133    156    696
130.571766:    142    151    691
130.631767:    153    142    701

Since I was able to get the gumstix talking to the touchscreen, I
assume TSLIB was somewhat compiled correctly.

I do not know why it hangs on dlsym every time it tries to load these modules.
but I'm hoping that I can get all the modules to load at once.

I was able to do the same 'procedure' with ts_calibrate and it calibrated ok.

If I try loading tinyX then it fails on dlsym on 'input.so' . Rerunning tinyX does not
work and eventually I need to power down the gumstix.

If I ever expect tinyX to work with the touchscreen, I'll need to load
all of these modules correctly at once.

Has anybody seen this behavior?


Best Regards