# \[ SOLVED \] DisplayLinux evdi with USB monitors on Rocky Linux 9.1

**URL:** https://forums.rockylinux.org/t/solved-displaylinux-evdi-with-usb-monitors-on-rocky-linux-9-1/8483
**Category:** Rocky Linux Help & Support
**Created:** [January 8, 2023, 11:31pm UTC](https://forums.rockylinux.org/t/solved-displaylinux-evdi-with-usb-monitors-on-rocky-linux-9-1/8483 "2023-01-08T23:31:53Z")
**Posts on this page:** 5
**Page:** 1

<div class="post-metadata">

### Author: ![commandline](https://avatars.discourse-cdn.com/v4/letter/c/8baadc/32.png) [@commandline](https://forums.rockylinux.org/u/commandline)
#### Post date: [January 8, 2023, 11:31pm UTC](https://forums.rockylinux.org/t/solved-displaylinux-evdi-with-usb-monitors-on-rocky-linux-9-1/8483/1 "2023-01-08T23:31:53Z")

</div>

To document how to get displaylink working on RHEL9.1

> **[Create new page · displaylink-rpm/displaylink-rpm Wiki](https://github.com/displaylink-rpm/displaylink-rpm/wiki/Rocky-Linux-specifics)**
>
> RPM sources for the DisplayLink USB display adapters - Create new page · displaylink-rpm/displaylink-rpm Wiki

# Rocky Linux 9.1

STATE = working

### Known fail with release 5.6.1

Root cause = important change: dma-buf-map.h is changed to iosys-map.h  
source: [https://rpa.st/CPLA#1L53](https://rpa.st/CPLA#1L53)

Solution is [https://rpa.st/BUCQ](https://rpa.st/BUCQ) a modified version of evdi\_gem.c

### Multiple USB screens

When using multiple usb screens it may be required to modify /usr/lib/systemd/system/displaylink-driver.service to read as per below, appending `initial_device_count:1` to `modprobe evdi`

```
[Unit]  
Description=DisplayLink Driver Service  
After=display-manager.service  
Conflicts=getty@tty7.service  

[Service]  
ExecStartPre=/sbin/modprobe evdi initial_device_count:1  
ExecStart=/usr/libexec/displaylink/DisplayLinkManager  
Restart=always  
WorkingDirectory=/usr/libexec/displaylink  
RestartSec=5  

```

### when using SELINUX with secure\_mode\_insmod

```
[Unit]  
Description=DisplayLink Driver Service  
After=display-manager.service  
Conflicts=getty@tty7.service  

[Service]  
ExecStartPre=/usr/sbin/setsebool secure_mode_insmod 0  
ExecStartPre=/sbin/modprobe evdi initial_device_count:1  
ExecStartPre=/usr/sbin/setsebool secure_mode_insmod 1  
ExecStart=/usr/libexec/displaylink/DisplayLinkManager  
Restart=always  
WorkingDirectory=/usr/libexec/displaylink  
RestartSec=5  

```

### with SECUREBOOT

from /var/lib/dkms/evdi//source/  
enter any password when it is requested during the process, repeat it once, enter it again at reboot to enroll the key

#### MUST BE RUN AFTER EVERY KERNEL UPGRADE

```
openssl req -new -x509 -newkey rsa:2048 -keyout MOK.priv -outform DER -out MOK.der -nodes -days 36500 -subj "/CN=Displaylink/"  
mokutil --import MOK.der  
modinfo -n evdi /lib/modules/$(uname -r)/extra/evdi.ko.xz  
unxz $(modinfo -n evdi)  
/usr/src/kernels/$(uname -r)/scripts/sign-file sha256 ./MOK.priv ./MOK.der /lib/modules/$(uname -r)/extra/evdi.ko  
xz -f /lib/modules/$(uname -r)/extra/evdi.ko  

reboot

```

---

<div class="post-metadata">

### Author: ![gerry666uk](https://avatars.discourse-cdn.com/v4/letter/g/dbc845/32.png) [@gerry666uk](https://forums.rockylinux.org/u/gerry666uk)
#### Post date: [January 9, 2023, 7:26pm UTC](https://forums.rockylinux.org/t/solved-displaylinux-evdi-with-usb-monitors-on-rocky-linux-9-1/8483/2 "2023-01-09T19:26:47Z")

</div>

I don’t think you need to re-generate the MOK key on every kernel upgrade. Just re-sign the module and use the key that’s already in the BIOS.

---

<div class="post-metadata">

### Author: ![elguero](https://sea2.discourse-cdn.com/flex020/user_avatar/forums.rockylinux.org/elguero/32/5760_2.png) [@elguero](https://forums.rockylinux.org/u/elguero)
#### Post date: [January 10, 2023, 1:59am UTC](https://forums.rockylinux.org/t/solved-displaylinux-evdi-with-usb-monitors-on-rocky-linux-9-1/8483/3 "2023-01-10T01:59:54Z")

</div>

That is correct. You don’t need to re-generate the MOK key. When installing from the RPM, DKMS will sign the module.

I had already created patches for the Displaylink RPMs a couple of weeks ago. Just needed some time to test.

I just tested upgrading from Rocky Linux 9.0 to 9.1 today and it worked well. We will work on updating the release in the project.

---

<div class="post-metadata">

### Author: ![commandline](https://avatars.discourse-cdn.com/v4/letter/c/8baadc/32.png) [@commandline](https://forums.rockylinux.org/u/commandline)
#### Post date: [March 6, 2023, 9:03pm UTC](https://forums.rockylinux.org/t/solved-displaylinux-evdi-with-usb-monitors-on-rocky-linux-9-1/8483/4 "2023-03-06T21:03:25Z")

</div>

Thanks for the comment. Thus far dkms is not re-signing the module, I believe there’s something i miss here or i used a different MOK key when installing these modules;

---

<div class="post-metadata">

### Author: ![brian](https://sea2.discourse-cdn.com/flex020/user_avatar/forums.rockylinux.org/brian/32/5777_2.png) [@brian](https://forums.rockylinux.org/u/brian)
#### Post date: [August 25, 2023, 3:22am UTC](https://forums.rockylinux.org/t/solved-displaylinux-evdi-with-usb-monitors-on-rocky-linux-9-1/8483/5 "2023-08-25T03:22:49Z")

</div>


