DisplayLink on openSUSE Tumbleweed

My journey with DisplayLink started in 2012 with a USB 2 interface on a Dell Latitude D630. It was rough and quite fiddly to get working. When you did, it was slow but usable. I really wanted that third monitor and worked quite hard to make it happen. Thanks to the openSUSE community I was able to make it work in a few different ways and that was when I learned of Wayland which would be available real soon… Well, it’s available now and working very well. The new DisplayLink options are also much more capable thanks to faster USB ports and new data compression capabilities.

Bottom Line Up Front: This is absolutely worth the time and effort it takes to get going. The functionality of DisplayLink with the high speed USB 3.x interface makes additional displays highly functional and quite practical to use, especially when your workload demands it.

Why DisplayLink

Laptops often don’t have enough display outputs, or if you are just a bit of a nutter and you find that the limitation of your Framework 13th Gen i7 laptop to only push four display inhibiting. Also, there are just some cool bits of hardware that use this like the Logitech TAP console and all these docking stations that give you two or three more displays compelling.

The reason I started playing with DisplayLink was because in a back room in the office I work, I found a portable display with a USB 3 Type A port and I wanted to see that it still worked. I then decided it was time to try DisplayLink once again and see where it is today on my favorite Linux distribution.

Installation

Newer versions of the Linux Kernel are seemingly more strict about the modules and what must be done to successfully install the DisplayLink drivers is to disable secure boot. You will have to consult your manufacturer for the documentation on your BIOS to make this modification. It should be a trivial process.

Next, install DisplayLink and the easy way to do this is to use the OPI Package Installer on your openSUSE system. Once that is installed, very simply, in the terminal, enter this:

opi displaylink

Select 1, then 1 again to get the latest package but keep in mind that this can change at any time.

You will be warned about installing from a personal repository. I trust the HEBH repository, the comments are very current with assistance coming from the repository maintainer HEBH resolving issues.

After the installation is complete, remove or backup 20-displaylink.conf

Example:

mv /etc/X11/xorg.conf.d/20-displaylink.conf /root/.

But if you would like to put it in a different location, that is entirely up to you.

As the root user, create a config file using a text editor of your choice at:

/etc/X11/xorg.conf.d/20-evdi.conf

It should contain this:

Section "OutputClass"
    Identifier "DisplayLink"
    MatchDriver "evdi"
    Driver "modesetting"
    Option "AccelMethod" "none"
EndSection

And you are done.

There is a possibility that you may have to restart the service which can be done with this:

sudo systemctl restart displaylink.service

Experience

When you connect the display, the time between the physical connection is made and the display becomes available to position is a bit longer than just plugging in an HDMI cable or USB-C monitor. Truly, not a big deal but it is something that should be noted.

DisplayLink is not known for its great performance. Largely it is used for productivity type applications. It isn’t meant for gaming, however, I was able to use it comfortably playing Minecraft. Running any applications were also just fine. I didn’t notice any major performance issues at all. It was really pretty great and now I want to see how many DisplayLink devices I can push at once.

What I Like

DisplayLink really opens up low-cost options for adding displays to your system. My understanding is only Wayland is supported at this point and since that is what I am using on my openSUSE Tumbleweed with the Plasma Desktop environment, no problems there.

The performance is quite good. I was surprised that it was seemingly indistinguishable from my main display but I didn’t really “give ‘er the onions” as it were but Minecraft Java edition 1.20.2 worked smashingly well.

Packages for openSUSE are readily available. This is great news and I am very appreciative. It’s not a trivial process to maintain such a stack of software and understand how to work through any issues.

What I Don’t Like

Setting this up does take a bit of fiddling, which is why I wrote this step-by-step. It would be nice if you could run it with secure boot enabled and not have to create a config file (which actually might be unnecessary in the near future with the move to Wayland).

Really, nothing else I can put here, I’m pretty happy!

Troubleshooting

Upon a recent kernel update I was getting an error with the DisplayLink service:

> systemctl status displaylink.service
● displaylink.service - DisplayLink Manager Service
     Loaded: loaded (/usr/lib/systemd/system/displaylink.service; disabled; preset: disabled)
     Active: activating (auto-restart) (Result: exit-code) since Thu 2023-10-12 11:51:01 EDT; 1s ago
    Process: 18916 ExecStartPre=/sbin/modprobe evdi (code=exited, status=1/FAILURE)
        CPU: 4ms

And if I tried to restart the service, I would get this error:

> sudo systemctl restart displaylink.service
Job for displaylink.service failed because the control process exited with error code.
See "systemctl status displaylink.service" and "journalctl -xeu displaylink.service" for details.

The quick and easy fix I found to resolve this is to reinstall the DisplayLink drivers to build for the current Kernel version. I think it would be good if this was done automatically, but until that time, this solution is confirmed working.

sudo zypper install --force displaylink

Once this process is complete, the DisplayLink drivers will come online immediately.

Final Thoughts

My intent of DisplayLink is not to use this for gaming but rather for the flexibility of adding displays beyond the four displays my Framework 13 laptop can push with the integrated Intel GPU. I have no reason to push beyond the four screen setup I currently have going but it does seem like whatever the number of displays I have I always need just one more. DisplayLink gives me the hope of getting just that for those moments I go screen crazy.

I appreciate all the work done by the openSUSE community in making these packages available for me to use. Specifically, I thank Houssem Eddine Ben Hmida (HEBH) for building, testing and helping those that ask. For more information on the package and the various distributions supported, navigate here.

openSUSE Linux is a fantastic community of people working on all sorts of amazing projects, this is yet another example of it.

References

https://software.opensuse.org/package/displaylink
DisplayLink Drivers Overview on Open Build Service
https://wiki.archlinux.org/title/DisplayLink

2 thoughts on “DisplayLink on openSUSE Tumbleweed

Leave a Reply