canonical / ubuntu-frame

The foundation for many embedded graphical display implementations
GNU General Public License v3.0
159 stars 21 forks source link

ubuntu-frame doesn't work with a DisplayLink #128

Closed edaquinta closed 1 year ago

edaquinta commented 1 year ago

I cannot get it to work with a DisplayLink display, It worked fine with an HDMI monitor on the same computer, I tried with ubuntu core, server and desktop and same results.

You can find below the logs if that helps or if I'm missing something.

Thanks in advance.


sudo snap logs -n 100 ubuntu-frame [sudo] password for edaquinta: 2023-02-22T23:21:03-05:00 ubuntu-frame.daemon[4162]: [2023-02-22 23:21:03.911573] mircommon: Loading modules from: /snap/ubuntu-frame/4719/usr/lib/x86_64-linux-gnu/mir/server-platform 2023-02-22T23:21:03-05:00 ubuntu-frame.daemon[4162]: [2023-02-22 23:21:03.911630] mircommon: Loading module: /snap/ubuntu-frame/4719/usr/lib/x86_64-linux-gnu/mir/server-platform/graphics-gbm-kms.so.20 2023-02-22T23:21:03-05:00 ubuntu-frame.daemon[4162]: [2023-02-22 23:21:03.911656] mircommon: Loading module: /snap/ubuntu-frame/4719/usr/lib/x86_64-linux-gnu/mir/server-platform/server-x11.so.20 2023-02-22T23:21:03-05:00 ubuntu-frame.daemon[4162]: [2023-02-22 23:21:03.911671] mircommon: Loading module: /snap/ubuntu-frame/4719/usr/lib/x86_64-linux-gnu/mir/server-platform/input-evdev.so.8 2023-02-22T23:21:03-05:00 ubuntu-frame.daemon[4162]: [2023-02-22 23:21:03.912440] mirserver: Found rendering driver: mir:gbm-kms (version 2.12.0) 2023-02-22T23:21:03-05:00 ubuntu-frame.daemon[4162]: [2023-02-22 23:21:03.914279] < - debug - > gbm-kms: Quirks: checking device with devnode: /dev/dri/card0, driver i915 2023-02-22T23:21:03-05:00 ubuntu-frame.daemon[4162]: [2023-02-22 23:21:03.914453] < - debug - > gbm-kms: Quirks: checking device with devnode: (null), driver 2023-02-22T23:21:03-05:00 ubuntu-frame.daemon[4162]: [2023-02-22 23:21:03.914559] < - debug - > gbm-kms: Quirks: checking device with devnode: (null), driver 2023-02-22T23:21:03-05:00 ubuntu-frame.daemon[4162]: [2023-02-22 23:21:03.914663] < - debug - > gbm-kms: Quirks: checking device with devnode: (null), driver 2023-02-22T23:21:03-05:00 ubuntu-frame.daemon[4162]: [2023-02-22 23:21:03.914766] < - debug - > gbm-kms: Quirks: checking device with devnode: (null), driver 2023-02-22T23:21:03-05:00 ubuntu-frame.daemon[4162]: [2023-02-22 23:21:03.914869] < - debug - > gbm-kms: Quirks: checking device with devnode: (null), driver 2023-02-22T23:21:03-05:00 ubuntu-frame.daemon[4162]: [2023-02-22 23:21:03.914961] < - debug - > gbm-kms: Quirks: checking device with devnode: (null), driver 2023-02-22T23:21:03-05:00 ubuntu-frame.daemon[4162]: [2023-02-22 23:21:03.915080] < - debug - > gbm-kms: Quirks: checking device with devnode: /dev/dri/renderD128, driver i915 2023-02-22T23:21:03-05:00 ubuntu-frame.daemon[4162]: Failed to create /root/.cache/mesa_shader_cache for shader cache (Permission denied)---disabling. 2023-02-22T23:21:03-05:00 ubuntu-frame.daemon[4162]: [2023-02-22 23:21:03.920713] < - debug - > gbm-kms: Quirks: checking device with devnode: /dev/dri/card1, driver udl 2023-02-22T23:21:03-05:00 ubuntu-frame.daemon[4162]: MESA-LOADER: failed to open udl: /snap/ubuntu-frame/4719/graphics/dri/udl_dri.so: cannot open shared object file: No such file or directory (search paths /snap/ubuntu-frame/4719/graphics/dri, suffix _dri) 2023-02-22T23:21:03-05:00 ubuntu-frame.daemon[4162]: failed to load driver: udl 2023-02-22T23:21:03-05:00 ubuntu-frame.daemon[4162]: Failed to create /root/.cache/mesa_shader_cache for shader cache (Permission denied)---disabling. 2023-02-22T23:21:03-05:00 ubuntu-frame.daemon[4162]: [2023-02-22 23:21:03.925583] gbm-kms: Detected software renderer: llvmpipe (LLVM 12.0.0, 256 bits) 2023-02-22T23:21:03-05:00 ubuntu-frame.daemon[4162]: [2023-02-22 23:21:03.926089] < - debug - > gbm-kms: Quirks: checking device with devnode: (null), driver 2023-02-22T23:21:03-05:00 ubuntu-frame.daemon[4162]: [2023-02-22 23:21:03.926198] < - debug - > gbm-kms: Quirks: checking device with devnode: /dev/dri/card2, driver evdi 2023-02-22T23:21:03-05:00 ubuntu-frame.daemon[4162]: [2023-02-22 23:21:03.926208] gbm-kms: Quirks: skipping device /dev/dri/card2 (matches driver quirk evdi) 2023-02-22T23:21:03-05:00 ubuntu-frame.daemon[4162]: [2023-02-22 23:21:03.926214] gbm-kms: Not probing device /dev/dri/card2 due to specified quirk 2023-02-22T23:21:03-05:00 ubuntu-frame.daemon[4162]: [2023-02-22 23:21:03.926295] < - debug - > gbm-kms: Quirks: checking device with devnode: (null), driver 2023-02-22T23:21:03-05:00 ubuntu-frame.daemon[4162]: [2023-02-22 23:21:03.926379] < - debug - > gbm-kms: Quirks: checking device with devnode: /dev/dri/card3, driver evdi 2023-02-22T23:21:03-05:00 ubuntu-frame.daemon[4162]: [2023-02-22 23:21:03.926387] gbm-kms: Quirks: skipping device /dev/dri/card3 (matches driver quirk evdi) 2023-02-22T23:21:03-05:00 ubuntu-frame.daemon[4162]: [2023-02-22 23:21:03.926392] gbm-kms: Not probing device /dev/dri/card3 due to specified quirk 2023-02-22T23:21:03-05:00 ubuntu-frame.daemon[4162]: [2023-02-22 23:21:03.926467] < - debug - > gbm-kms: Quirks: checking device with devnode: (null), driver 2023-02-22T23:21:03-05:00 ubuntu-frame.daemon[4162]: [2023-02-22 23:21:03.926551] < - debug - > gbm-kms: Quirks: checking device with devnode: /dev/dri/card4, driver evdi 2023-02-22T23:21:03-05:00 ubuntu-frame.daemon[4162]: [2023-02-22 23:21:03.926558] gbm-kms: Quirks: skipping device /dev/dri/card4 (matches driver quirk evdi) 2023-02-22T23:21:03-05:00 ubuntu-frame.daemon[4162]: [2023-02-22 23:21:03.926563] gbm-kms: Not probing device /dev/dri/card4 due to specified quirk 2023-02-22T23:21:03-05:00 ubuntu-frame.daemon[4162]: [2023-02-22 23:21:03.926639] < - debug - > gbm-kms: Quirks: checking device with devnode: (null), driver 2023-02-22T23:21:03-05:00 ubuntu-frame.daemon[4162]: [2023-02-22 23:21:03.926722] < - debug - > gbm-kms: Quirks: checking device with devnode: /dev/dri/card5, driver evdi 2023-02-22T23:21:03-05:00 ubuntu-frame.daemon[4162]: [2023-02-22 23:21:03.926730] gbm-kms: Quirks: skipping device /dev/dri/card5 (matches driver quirk evdi) 2023-02-22T23:21:03-05:00 ubuntu-frame.daemon[4162]: [2023-02-22 23:21:03.926735] gbm-kms: Not probing device /dev/dri/card5 due to specified quirk 2023-02-22T23:21:03-05:00 ubuntu-frame.daemon[4162]: [2023-02-22 23:21:03.926806] < - debug - > gbm-kms: Quirks: checking device with devnode: (null), driver 2023-02-22T23:21:03-05:00 ubuntu-frame.daemon[4162]: [2023-02-22 23:21:03.926871] mirserver: Driver supports: 2023-02-22T23:21:03-05:00 ubuntu-frame.daemon[4162]: [2023-02-22 23:21:03.926880] mirserver: /devices/pci0000:00/0000:00:02.0/drm/renderD128 (priority 256) 2023-02-22T23:21:03-05:00 ubuntu-frame.daemon[4162]: [2023-02-22 23:21:03.926885] mirserver: /devices/pci0000:00/0000:00:14.0/usb1/1-4/1-4.2/1-4.2:1.0/drm/card1 (priority 128) 2023-02-22T23:21:03-05:00 ubuntu-frame.daemon[4162]: [2023-02-22 23:21:03.926894] mirserver: Found rendering driver: mir:x11 (version 2.12.0) 2023-02-22T23:21:03-05:00 ubuntu-frame.daemon[4162]: [2023-02-22 23:21:03.926904] mirserver: (Unsupported by system environment) 2023-02-22T23:21:03-05:00 ubuntu-frame.daemon[4162]: [2023-02-22 23:21:03.926950] mirserver: Selected rendering driver: mir:gbm-kms (version 2.12.0) 2023-02-22T23:21:03-05:00 ubuntu-frame.daemon[4162]: [2023-02-22 23:21:03.926977] mirserver: Selected rendering driver: mir:gbm-kms (version 2.12.0) 2023-02-22T23:21:04-05:00 ubuntu-frame.daemon[4162]: [2023-02-22 23:21:04.147862] < -warning- > gbm-kms: Unable to determine the current display mode. 2023-02-22T23:21:04-05:00 ubuntu-frame.daemon[4162]: [2023-02-22 23:21:04.149940] gbm-kms: DRM device details: 2023-02-22T23:21:04-05:00 ubuntu-frame.daemon[4162]: [2023-02-22 23:21:04.149971] gbm-kms: /dev/dri/card0: using driver i915 [Intel Graphics] (version: 1.6.0 driver date: 20201103) 2023-02-22T23:21:04-05:00 ubuntu-frame.daemon[4162]: [2023-02-22 23:21:04.150017] gbm-kms: Output: DisplayPort-1 (disconnected) 2023-02-22T23:21:04-05:00 ubuntu-frame.daemon[4162]: [2023-02-22 23:21:04.161929] gbm-kms: Output: HDMI-A-1 (disconnected) 2023-02-22T23:21:04-05:00 ubuntu-frame.daemon[4162]: [2023-02-22 23:21:04.161966] gbm-kms: Output: DisplayPort-2 (disconnected) 2023-02-22T23:21:04-05:00 ubuntu-frame.daemon[4162]: [2023-02-22 23:21:04.173924] gbm-kms: Output: HDMI-A-2 (disconnected) 2023-02-22T23:21:04-05:00 ubuntu-frame.daemon[4162]: [2023-02-22 23:21:04.173979] gbm-kms: Output: DisplayPort-3 (disconnected) 2023-02-22T23:21:04-05:00 ubuntu-frame.daemon[4162]: [2023-02-22 23:21:04.188385] gbm-kms: Output: HDMI-A-3 (disconnected) 2023-02-22T23:21:04-05:00 ubuntu-frame.daemon[4162]: [2023-02-22 23:21:04.188409] gbm-kms: /dev/dri/card1: using driver udl [DisplayLink] (version: 0.0.1 driver date: 20120220) 2023-02-22T23:21:04-05:00 systemd[1]: Stopping Service for snap application ubuntu-frame.daemon... 2023-02-22T23:21:04-05:00 ubuntu-frame.daemon[4162]: [2023-02-22 23:21:04.259353] gbm-kms: Output: DVI-I-1 (connected) 2023-02-22T23:21:04-05:00 ubuntu-frame.daemon[4162]: [2023-02-22 23:21:04.259382] gbm-kms: Mode: 800×480@59.93 2023-02-22T23:21:04-05:00 ubuntu-frame.daemon[4162]: [2023-02-22 23:21:04.259393] < - debug - > miral: Display config using layout: 'default' 2023-02-22T23:21:04-05:00 ubuntu-frame.daemon[4162]: [2023-02-22 23:21:04.259508] miral: Display config: 2023-02-22T23:21:04-05:00 ubuntu-frame.daemon[4162]: 8>< --------------------------------------------------- 2023-02-22T23:21:04-05:00 ubuntu-frame.daemon[4162]: layouts: 2023-02-22T23:21:04-05:00 ubuntu-frame.daemon[4162]: # keys here are layout labels (used for atomically switching between them) 2023-02-22T23:21:04-05:00 ubuntu-frame.daemon[4162]: # when enabling displays, surfaces should be matched in reverse recency order 2023-02-22T23:21:04-05:00 ubuntu-frame.daemon[4162]: default: # the default layout 2023-02-22T23:21:04-05:00 ubuntu-frame.daemon[4162]: cards: 2023-02-22T23:21:04-05:00 ubuntu-frame.daemon[4162]: # a list of cards (currently matched by card-id) 2023-02-22T23:21:04-05:00 ubuntu-frame.daemon[4162]: - card-id: 0 2023-02-22T23:21:04-05:00 ubuntu-frame.daemon[4162]: DisplayPort-1: 2023-02-22T23:21:04-05:00 ubuntu-frame.daemon[4162]: # (disconnected) 2023-02-22T23:21:04-05:00 ubuntu-frame.daemon[4162]: HDMI-A-1: 2023-02-22T23:21:04-05:00 ubuntu-frame.daemon[4162]: # (disconnected) 2023-02-22T23:21:04-05:00 ubuntu-frame.daemon[4162]: DisplayPort-2: 2023-02-22T23:21:04-05:00 ubuntu-frame.daemon[4162]: # (disconnected) 2023-02-22T23:21:04-05:00 ubuntu-frame.daemon[4162]: HDMI-A-2: 2023-02-22T23:21:04-05:00 ubuntu-frame.daemon[4162]: # (disconnected) 2023-02-22T23:21:04-05:00 ubuntu-frame.daemon[4162]: DisplayPort-3: 2023-02-22T23:21:04-05:00 ubuntu-frame.daemon[4162]: # (disconnected) 2023-02-22T23:21:04-05:00 ubuntu-frame.daemon[4162]: HDMI-A-3: 2023-02-22T23:21:04-05:00 ubuntu-frame.daemon[4162]: # (disconnected) 2023-02-22T23:21:04-05:00 ubuntu-frame.daemon[4162]: DVI-I-1: 2023-02-22T23:21:04-05:00 ubuntu-frame.daemon[4162]: # This output supports the following modes: 800x480@59.9 2023-02-22T23:21:04-05:00 ubuntu-frame.daemon[4162]: # 2023-02-22T23:21:04-05:00 ubuntu-frame.daemon[4162]: # Uncomment the following to enforce the selected configuration. 2023-02-22T23:21:04-05:00 ubuntu-frame.daemon[4162]: # Or amend as desired. 2023-02-22T23:21:04-05:00 ubuntu-frame.daemon[4162]: # 2023-02-22T23:21:04-05:00 ubuntu-frame.daemon[4162]: # state: enabled # {enabled, disabled}, defaults to enabled 2023-02-22T23:21:04-05:00 ubuntu-frame.daemon[4162]: # mode: 800x480@59.9 # Defaults to preferred mode 2023-02-22T23:21:04-05:00 ubuntu-frame.daemon[4162]: # position: [0, 0] # Defaults to [0, 0] 2023-02-22T23:21:04-05:00 ubuntu-frame.daemon[4162]: # orientation: normal # {normal, left, right, inverted}, defaults to normal 2023-02-22T23:21:04-05:00 ubuntu-frame.daemon[4162]: # scale: 1 2023-02-22T23:21:04-05:00 ubuntu-frame.daemon[4162]: # group: 0 # Outputs with the same non-zero value are treated as a single display 2023-02-22T23:21:04-05:00 ubuntu-frame.daemon[4162]: 8>< --------------------------------------------------- 2023-02-22T23:21:04-05:00 ubuntu-frame.daemon[4162]: [2023-02-22 23:21:04.442887] < -warning- > gbm-kms: drmModeCrtcSetGamma failed: Function not implemented 2023-02-22T23:21:04-05:00 ubuntu-frame.daemon[4162]: WARNING: Kernel has no file descriptor comparison support: Operation not permitted 2023-02-22T23:21:04-05:00 ubuntu-frame.daemon[4162]: [2023-02-22 23:21:04.452952] gbm-kms: Hybrid GPU setup detected; DisplayBuffer using EGL buffer copies for migration 2023-02-22T23:21:04-05:00 ubuntu-frame.daemon[4162]: MESA-LOADER: failed to open udl: /snap/ubuntu-frame/4719/graphics/dri/udl_dri.so: cannot open shared object file: No such file or directory (search paths /snap/ubuntu-frame/4719/graphics/dri, suffix _dri) 2023-02-22T23:21:04-05:00 ubuntu-frame.daemon[4162]: failed to load driver: udl 2023-02-22T23:21:04-05:00 ubuntu-frame.daemon[4162]: Failed to create /root/.cache/mesa_shader_cache for shader cache (Permission denied)---disabling. 2023-02-22T23:21:04-05:00 systemd[1]: snap.ubuntu-frame.daemon.service: Main process exited, code=dumped, status=11/SEGV 2023-02-22T23:21:04-05:00 systemd[1]: snap.ubuntu-frame.daemon.service: Failed with result 'core-dump'. 2023-02-22T23:21:04-05:00 systemd[1]: Stopped Service for snap application ubuntu-frame.daemon.

RAOF commented 1 year ago

This is https://github.com/MirServer/mir/issues/2678 - due to a quirk of the current Mir implementation we (unnecessarily) require that each output be associated with a GL interface that can render to it.

This limitation is in the current batch of work, but we do not yet have an ETA for when the fix will land.

edaquinta commented 1 year ago

Thanks for the quick response. I will follow the issue

Saviq commented 1 year ago

Duplicate of https://github.com/MirServer/mir/issues/2678