• Home
  • Help
  • Search
  • Login
  • Register
Pages: 1 ... 3 4 [5]
Author Topic: DisplayLink integration?  (Read 40785 times)
tmk
Newbie
*

Karma: 1
Posts: 40


View Profile
« Reply #60 on: February 21, 2010, 05:38:37 PM »

Hi folks,

I got an 'imo pivot touch' monitor working (eventually) on my sheevaplug.

Here's my steps:

1) kernel module: This piece needed compiling. the EDID on mine was also 0x0, which messed with xwindows. There may be an X or hald setting to ignore that, but I was already using a custom kernel, so the driver wasn't a big deal. If someone finds a workaround for this (HALD config?) then you can just use the stock kernel module.

I used the 'udlfb' module, and pretty much did exactly what an earlier post suggested:
http://lists.freedesktop.org/archives/libdlo/2009-June/000125.html

dmesg output:
Code:
DisplayLink device attached
ret control msg 0: 4 1500f0
EDID XRES 800 YRES 480
INIT VIDEO 0 800 480
ret control msg 1 (STD_CHANNEL): 16
ret bulk 2: 156 156
ret bulk 3: 0
found valid mode...0
screen base allocated !!!
colormap allocated

2) X config. Several things going on here:
Video: I had the same problem as a previous poster, that the fonts were way too big. the DPI was off. To correct it, i looked up the size of the monitor's viewable area: 155mm x 93mm. I put those values in and it worked.

I don't remember if i had to install the displaylink driver, now that i think of it. I may have compiled it. At any rate that's what i used

if i did, this was the one i used:
Code:
wget http://projects.unbit.it/downloads/udlfb-0.2.3_and_xf86-video-displaylink-0.3.tar.gz
tar xvf udlfb-0.2.3_and_xf86-video-displaylink-0.3.tar.gz
cd xf86-video-displaylink/
./configure
make
make install
If it complains about missing X packages, install xorg-dev (you can uninstall it after)


full xorg config at the end of the post

Touchscreen:
I installed the 'evtouch' driver for the touchscreen ( apt-get install xserver-xorg-input-evtouch )
But it didn't work, and kept saying 'couldn't grab device'. Turns out the synaptics driver had it and didn't let go. Rather than fight it, i just removed that driver ( apt-get remove xserver-xorg-input-synaptics )

The calibration wouldn't work at all, no matter what i tried. Kept complaining about a missing font. ( '*freemono*' i think it was ). However, the touchscreen seemed to be working ok, except that the X axis was mirrored, eg touching the left-side middle would move the pointer to the right-side middle.

I tried all sorts of X configurations, but nothing worked, eventually i found that the HALD cfg file was overriding everything. The driver claims to support a  a 'SwapX' command, but i never did get that to work. I ended up just swapping x-min and x-max. Here is my final configuration:

Code:
/usr/share/hal/fdi/policy/20thirdparty/50-eGalax.fdi
swapped xmin and xmax
file contents:
<?xml version="1.0" encoding="UTF-8"?> <!-- -*- SGML -*- -->
<deviceinfo version="0.2">
  <device>
    <match key="info.product" contains="eGalax">
      <match key="info.capabilities" contains="input">
        <merge key="input.x11_driver" type="string">evtouch</merge>
        <merge key="input.x11_options.minx" type="string">3945</merge>
        <merge key="input.x11_options.miny" type="string">197</merge>
        <merge key="input.x11_options.maxx" type="string">130</merge>
        <merge key="input.x11_options.maxy" type="string">3894</merge>
        <merge key="input.x11_options.taptimer" type="string">30</merge>
        <merge key="input.x11_options.longtouchtimer" type="string">750</merge>
        <merge key="input.x11_options.longtouched_action" type="string">click</merge>
        <merge key="input.x11_options.longtouched_button" type="string">3</merge>
        <merge key="input.x11_options.oneandhalftap_button" type="string">2</merge>
        <merge key="input.x11_options.movelimit" type="string">10</merge>
        <merge key="input.x11_options.touched_drag" type="string">1</merge>
        <merge key="input.x11_options.maybetapped_action" type="string">click</merge>
        <merge key="input.x11_options.maybetapped_button" type="string">1</merge>
      </match>
    </match>
  </device>
</deviceinfo>
be sure to restart hald after making the change

My full X config:
Code:
Section "Files"
        ModulePath      "/usr/lib/xorg/modules"
        ModulePath      "/usr/local/lib/xorg/modules"
EndSection

Section "ServerLayout"
        Identifier      "Server Layout"
        Screen  0       "DisplayLinkScreen"
EndSection

Section "Device"
        Identifier      "DisplayLinkDevice"
        driver          "displaylink"
        Option  "fbdev" "/dev/fb0"
EndSection

Section "InputDevice"
        Identifier      "touchscreen"
        Driver  "evtouch"
        ## not sure these even do anything
        Option  "ReportingMode" "Raw"
        Option  "Emulate3Buttons"
        Option  "Emulate3Timeout"       "50"
        Option  "SendCoreEvents"  "On"
EndSection

Section "Monitor"
        Identifier      "DisplayLinkMonitor"
        DisplaySize  155 93
EndSection

Section "Screen"
        Identifier      "DisplayLinkScreen"
Device          "DisplayLinkDevice"
        Monitor         "DisplayLinkMonitor"
        SubSection "Display"
                Depth   24
Modes   "800x480"
        EndSubSection
EndSection

cheers, hope this helps someone
-tmk
Logged

minioak
Newbie
*

Karma: 0
Posts: 7


View Profile
« Reply #61 on: March 31, 2010, 01:06:52 PM »

Looking at /var/log/Xorg.0.log, I could see the following information:

(II) Module dri2: vendor="X.Org Foundation"                                     
        compiled for 1.7.4, module version = 1.1.0                             
        ABI class: X.Org Server Extension, version 2.0                         
(II) Loading extension DRI2                                                     
(II) LoadModule: "displaylink"                                                 
(II) Loading /usr/lib/xorg/modules/drivers/displaylink_drv.so                   
(II) Module displaylink: vendor="X.Org Foundation"                             
        compiled for 1.6.0, module version = 0.0.1                             
        ABI class: X.Org Video Driver, version 5.0                             
(EE) module ABI major version (5) doesn't match the server's version (6)   


I think your bigger problem is that the displaylink driver you're trying to load is compiled for Xorg 1.6, whereas it looks like you're running 1.7.4.

I would install xorg-dev packages, and build the xf86 displaylink driver as described on the blog you linked to. However, against Xorg 1.7, you'll need to apply the attached patch to the source code to make it compile against Xorg 1.7

Hope this helps.

John

* xf86-displaylink-xorg17.patch (0.72 KB - downloaded 227 times.)
Logged

jakblak
Newbie
*

Karma: 0
Posts: 16


View Profile
« Reply #62 on: April 15, 2010, 11:43:18 AM »

Hi all,

I urgraded my kernel to 2.6.33.2 and now I'm having problems to get udlfb to work with my samsung u70.

here is dmesg output

Code:
DisplayLink device attached
usbcore: registered new interface driver usblp
ret control msg 0: 4 0500f0
uvcvideo: Found UVC 1.00 device Philips SPC 1030NC Webcam (0471:2036)
EDID XRES 0 YRES 0
INIT VIDEO 0 800 480
INIT VIDEO 1 1024 768
INIT VIDEO 2 1280 1024
ret control msg 1 (STD_CHANNEL): 16


here is fbset output
Code:
fbset

mode "1280x1024"
    geometry 1280 1024 0 0 16
    timings 0 0 0 0 0 0 0
    rgba 5/11,6/5,5/0,0/0
endmode


how do I say to udlfb to use 800x480 rather then stay on 1280x1024-

I tried "  fbset 800x480-62 " or fbset -g 800 480 800 480 16 but still having 1280x1024.

can someone please help me to get this working again?


Also, how do I determine which parameters can be set to udlfb?
example: modprobe udlfb info gives me udlfb: Unknown parameter `info' .
there should be a trick to view all possible parameters in a module or am I wrong?

edit: " modinfo -p udlfb " do not give any output, so I am wondering how to set the videomode
Thanks
« Last Edit: April 15, 2010, 11:54:19 AM by jakblak » Logged

jakblak
Newbie
*

Karma: 0
Posts: 16


View Profile
« Reply #63 on: April 16, 2010, 03:25:32 AM »

gentlemen, I got it working again. I used the latest snapshot from here, compiled the kernel module and installed :
http://git.plugable.com/gitphp/index.php?p=udlfb&a=summary

now my U70 is working again.

thanks to the developers.

also DPMS is now available Wink
« Last Edit: April 16, 2010, 06:13:52 AM by jakblak » Logged

Pages: 1 ... 3 4 [5]
Print
Jump to: