Displaylink

From Le Wiki de debian-fr.xyz
Jump to: navigation, search

Ce tuto est destiné à vous aider à faire fonctionner un écran touchscreen USB. Ce tuto n'a été validé que sur un seul équipement (un dreamplug type DS2-113), il a besoin d'être validé sur plusieurs équipements afin d'être considéré comme généralisable.



1- comment ça marche Le driver noyau se nomme udflb. Il a évolué au fil des évolutions du noyau linux. Si votre écran est bien reconnu, il affiche un écran vert, sinon, il peut afficher des couleurs changeantes, ou des damiers (ça dépend des modèles d'écran). avec dmesg, vous devez voir des lignes du type:

Apr 20 22:13:56 debian kernel: udlfb: DL chip limited to 1500000 pixel modes

udlfb: allocated 4 65024 byte urbs

 udlfb: 800x480 valid mode
 udlfb: Reallocating framebuffer. Addresses will change!
 udlfb: 800x480 valid mode
 udlfb: set_par mode 800x480
 udlfb: DisplayLink USB device /dev/fb0 attached. 800x480 resolution. Using 1504K framebuffer memory
 udlfb: open /dev/fb0 user=1 fb_info=df1ee800 count=1
 udlfb: released /dev/fb0 user=1 count=0
 udlfb: open /dev/fb0 user=1 fb_info=df1ee800 count=1
 udlfb: open /dev/fb0 user=1 fb_info=df1ee800 count=2
 udlfb: mmap() framebuffer addr:3769905152 size:770048

Ensuite, au lancement de xorg, un module de celui ci doit dialoguer avec le driver udlfb, et c'est là que les ennuis commencent, car ils doivent partager la même façon de parler. et ça change suivant les versions :

kernel 2.6.38, les versions de udlfb et du driver xorg sont compatible, il suffit d'activer une option de udflb

 echo options udlfb fb_defio=1 >> /etc/modprobe.d/local

kernel 3.04, là, c'est un peu plus compliqué. Le driver xorg n'est plus compatible avec udlfb (au moment où cet article est rédigé). Il va falloir compiler un nouveau driver, et dire à xorg de l'utiliser. Je suppose que vous avez installé tout ce qu'il faut pour compiler, ainsi que le gestionnaire de version git

git clone http://git.plugable.com/webdav/xf-video-udlfb
cd xf-video-udlfb
./configure
make && make install

on crée un lien symbolique avec le nouveau driver (l'emplacement peut être différent en 64b)

ln -s /usr/local/lib/xorg/modules/drivers/displaylink_drv.so /usr/lib/xorg/modules/drivers/


On va maintenant dire à xorg d'utiliser ce nouveau driver, sans écrire de fichier xorg.conf, mais en utilisant un fichier partiel de configuration. dans /usr/share/X11/xorg.conf.d créer le fichier 10-displaylink.conf (je sais ce n'est pas le répertoire recommandé dans la documentation pour un fichier de configuration utilisateur, ce répertoire est réservé à la distribution)

Section "Screen"
        Identifier "Screen1"
        Device     "Card1"
        Monitor    "Monitor1"
EndSection
Section "Device"
        Identifier  "Card1"
        Driver      "displaylink"
        Option "fbdev" "/dev/fb0"
EndSection
section "Monitor"
        Identifier "Monitor1"
EndSection

Au prochain, boot, votre touchscreen devrait afficher le serverX.

source: http://nameq.wordpress.com/2011/09/21/displaylink-dl-165-running-on-linux-fedora/