A fully open source (GPL) driver which supports all ?DisplayLink devices to date (all DL1xx devices) is in the mainline of the Linux 2.6.38 kernel, and can be compiled as a module for certain older kernels. It is called udlfb.
It's still very much under development, but it's possible to write custom applications to it today (or to libdlo user mode library itself, bypassing udlfb). And it's also possible to configure X and standard X applications to run on udlfb -- but that part is still very distro dependent today. Most people in the ?DisplayLink community running X are on an older version of Ubuntu (9.04), and some on certain versions of ?RedHat. Savvy people would be able to get other distros running, but it can be a slog.
Usage Scenarios for USB Displays
- TextConsole
- ?DirectFramebuffer
- ExtendedDesktop
- MultiSeatTerminal
HowTos for specific distributions
- ?Fedora - See post at http://nameq.wordpress.com/2011/09/21/displaylink-dl-165-running-on-linux-fedora/.
- ?Ubuntu9.10 - See post at http://mulchman.org/blog/?p=90. See post from Patrick Gilmore at http://blogg.noonday.se/2010/01/28/linux-usb-video-adapter/
- Ubuntu9.04
- Ubuntu8.10 - See post at http://mulchman.org/blog/?tag=displaylink.
- ARMEDSlack Current
Specific Drivers
- Linux
- Current Driver Locations, culled from this thread.
- X FrameBuffer Driver. Standard X driver updated to use ?DisplayLink devices.
- X DisplayLink Driver. X driver just for ?DisplayLink devices.
- Kernel DisplayLink Driver from Google Code.
- Or use the driver shipped with kernel 2.6.38 or more recent.
- Older drivers and locations:
- udlfb is the original displaylink kernel framebuffer driver, without dynamic mode support and a few minor features, but fully functional and present in kernel versions 2.6.31 and later, and enabled by default in some recent distros (Ubuntu 9.10).
- displaylink-mod is a updated branch of the udlfb driver by the same author (Roberto)
- displaylinkfb is a new branch written by Jaya Kumar, targeted at embedded via defio and no in-kernel shadow framebuffer, which uses the standard fbdev X servers
- xf86-driver-displaylink X Server written by Roberto which works with both udlfb and displaylink-mod
- Current Driver Locations, culled from this thread.
- OpenBSD
- udl OpenBSD kernel text and graphics console driver
- xf86-driver-wsudl X driver for OpenBSD's udl(4) driver using the wscons(4) framework.
- Android
- There is a port of the open source for Android 1.6 here
Specific Devices
- DeviceQuirks for specific ?DisplayLink devices
Working Devices & Screens from Users
Linux Driver Project
To help release libdlo and encourage collaboration on fully functional Linux drivers, DisplayLink has enlisted the help of the Linux Driver Project (LDP). The LDP are a group of Linux kernel developers (over 200 strong) and project managers (over 10) that develop and maintain Linux kernel drivers. They work with device manufacturers like DisplayLink to specify, develop, submit to the main kernel, and maintain the kernel drivers. For more information, see the Linux Driver Project Frequently Asked Questions.
Open Source Support
Mailing List
Discussion regarding DisplayLink open source code should use the libdlo mailing list on freedesktop.org or the DisplayLink open source forum.
Commercial Support
Commercial paid support and consulting for the DisplayLink libdlo Library is available from the following companies:
- Endurance Technology (UK, India, Thailand) - libdlo{at}endurancetech.co.uk
- InoScope (Poland) - libdlo{at}inoscope.com
Libdlo Reference code
This is the official DisplayLink Library project, libdlo. This library is an open-source implementation of DisplayLink USB graphics software, and is licensed under the GNU Lesser General Public License (LGPL) v2.1. This should be considered reference code, rather than a starting point for any project. udlfb is a better starting point for open source code.
Libdlo library background
This library will discover and connect to DisplayLink USB graphics chips and allow for developers to support DisplayLink devices on Linux and other platforms. libdlo itself doesn't include any drivers or applications intended for end-users.
libdlo currently supports the DisplayLink DL-120 and DL-160 (DL-1x0 Family, "Alex") and the DL-125, DL-165, and DL-195 (DL-1x5 Family, "Ollie") chips.
For a list of products that use DisplayLink technology, please visit http://displaylink.com/shop.
Download libdlo
- Most recent released version: libdlo-0.1.2.tar.gz
- Working version (git): http://cgit.freedesktop.org/libdlo/
To get a high level view of what libdlo provides, please see the PDF guide
Using libdlo
- Install a compatible libusb version (0.13)
- on ubuntu,
sudo apt-get install libusb-dev
- on ubuntu,
- Plug in a ?DisplayLink USB device
To start the build process, open a shell prompt and run
$ ./configure && sudo make install && make check
"Make check" will do some basic drawing on one of the attached ?DisplayLink devices. If you hit errors during configure, try installing the autotools and libtool packages.
Please see the README in the distribution for more details.
Libdlo bug reporting
Discussion regarding libdlo or DisplayLink support for Linux should use the libdlo mailing list on freedesktop.org or the DisplayLink open source forum
Please report bugs and submit patches to libdlo through FreeDesktop.org Bugzilla. Submit new bugs through the following page: http://bugs.freedesktop.org/enter_bug.cgi?product=libdlo.
To follow libdlo specific changes and news on twitter, please visit http://twitter.com/libdlo.
About DisplayLink and DisplayLink USB Graphics Technology
DisplayLink is a chip and software company that develops a technology to connect monitors to PCs through a USB 2.0 cable. DisplayLink USB graphics works by creating a “virtual graphics card” in software on the PC, compressing the data using a proprietary protocol, and sending the compressed data to a DisplayLink chip on the far end of a USB 2.0 connection. DisplayLink technology is available in USB to DVI adapters, USB monitors, USB “Universal” docking stations, and USB projectors.
Additional information about DisplayLink can be found on the DisplayLink Wikipedia page or the official DisplayLink website.
This wiki is undergoing conversion. If you have a fd.o shell account, you can help!