DisplayLink?

From: Peter Cornelius <pcc_at_gmx.net>
Date: Sat, 13 Nov 2021 15:22:33 UTC
G'day, folks,

I'm wondering whether the 2015 reports of FreeBSD [1] supporting DisplayLink are still true, or overcome by events, or by technology advances, or other.

In short, I just have tried a Lenovo ThinkPad USB 3.0 Ultra Dock (ASM PN SD20K40266, FRU PN 03X7131, type 40A8). It hooks up to a USB SS port and several of its (and connected) devices are detected [3], [5] but the DisplayLink apparently does not get an extra driver attached [1].

udl(4) is loaded (which autoloads videomode.ko).
Xorg [2] sees the devices (which act as I expected [4]) but apparently has no concept of the DisplayLink device sneaking in via USB.

I had hoped for more mileage. What am I doing wrong?

Thanks for any indications, and

All the best,

Peter.

PS. If you think that freebsd-usb was a more appropriate place to ask, I'm happy to forward/follow up there.

---
Peter Cornelius <pcc@gmx.net> - consulting and fixing funny things in the world.

---

[1] FreeBSD version information
FreeBSD walkabout 13.0-STABLE FreeBSD 13.0-STABLE #14 stable/13-n247987-3530ba8cc1e: Fri Nov  5 19:33:53 CET 2021     root@walkabout:/usr/obj/usr/Src-stable-13/amd64.amd64/sys/GENERIC  amd64

[2] X server information
X.Org X Server 1.20.13
X Protocol Version 11, Revision 0
Build Operating System: FreeBSD 13.0-STABLE amd64
Current Operating System: FreeBSD walkabout 13.0-STABLE FreeBSD 13.0-STABLE #14 stable/13-n247987-3530ba8cc1e: Fri Nov  5 19:33:53 CET 2021     root@walkabout:/usr/obj/usr/Src-stable-13/amd64.amd64/sys/GENERIC amd64
Build Date: 24 October 2021  02:31:55PM

Current version of pixman: 0.40.0
        Before reporting problems, check http://wiki.x.org
        to make sure that you have the latest version.

[3] The following ugen devices show up
ugen0.2: <LENOVO TP USB 3.0 Ultra Dock> at usbus0, cfg=0 md=HOST spd=HIGH (480Mbps) pwr=SAVE (0mA)
ugen0.3: <LENOVO TP USB 3.0 Ultra Dock> at usbus0, cfg=0 md=HOST spd=HIGH (480Mbps) pwr=SAVE (0mA)
ugen0.10: <DisplayLink ThinkPad USB 3.0 Ultra Dock> at usbus0, cfg=0 md=HOST spd=HIGH (480Mbps) pwr=ON (500mA)
ugen0.5: <PixArt USB Optical Mouse> at usbus0, cfg=0 md=HOST spd=LOW (1.5Mbps) pwr=ON (100mA)
ugen0.6: <NOVATEK USB Keyboard> at usbus0, cfg=0 md=HOST spd=LOW (1.5Mbps) pwr=ON (100mA)

[4] Xorg.0.log trace when connecting the 'docking' station
[670317.550] (II) config/udev: Adding input device PixArt USB Optical Mouse (/dev/input/event8)
[670317.646] (**) PixArt USB Optical Mouse: Applying InputClass "evdev pointer catchall"
[670317.646] (**) PixArt USB Optical Mouse: Applying InputClass "libinput pointer catchall"
[670317.646] (II) Using input driver 'libinput' for 'PixArt USB Optical Mouse'
[670317.646] (**) PixArt USB Optical Mouse: always reports core events
[670317.646] (**) Option "Device" "/dev/input/event8"
[670317.646] (**) Option "_source" "server/udev"
[670317.647] (II) event8  - PixArt USB Optical Mouse, class 0/0, rev 2.00/1.00, addr 34: is tagged by udev as: Mouse
[670317.649] (II) event8  - PixArt USB Optical Mouse, class 0/0, rev 2.00/1.00, addr 34: device is a pointer
[670317.651] (II) event8  - PixArt USB Optical Mouse, class 0/0, rev 2.00/1.00, addr 34: device removed
[670317.651] (**) Option "config_info" "udev:/dev/input/event8"
[670317.651] (II) XINPUT: Adding extended input device "PixArt USB Optical Mouse" (type: MOUSE, id 13)
[670317.653] (**) Option "AccelerationScheme" "none"
[670317.655] (**) PixArt USB Optical Mouse: (accel) selected scheme none/0
[670317.655] (**) PixArt USB Optical Mouse: (accel) acceleration factor: 2.000
[670317.655] (**) PixArt USB Optical Mouse: (accel) acceleration threshold: 4
[670317.657] (II) event8  - PixArt USB Optical Mouse, class 0/0, rev 2.00/1.00, addr 34: is tagged by udev as: Mouse
[670317.657] (II) event8  - PixArt USB Optical Mouse, class 0/0, rev 2.00/1.00, addr 34: device is a pointer
[670317.966] (II) config/udev: Adding input device NOVATEK USB Keyboard (/dev/input/event9)
[670317.966] (**) NOVATEK USB Keyboard: Applying InputClass "evdev keyboard catchall"
[670317.966] (**) NOVATEK USB Keyboard: Applying InputClass "Evdev keyboard"
[670317.966] (**) NOVATEK USB Keyboard: Applying InputClass "libinput keyboard catchall"
[670317.966] (II) Using input driver 'libinput' for 'NOVATEK USB Keyboard'
[670317.966] (**) NOVATEK USB Keyboard: always reports core events
[670317.967] (**) Option "Device" "/dev/input/event9"
[670317.967] (**) Option "_source" "server/udev"
[670317.968] (II) event9  - NOVATEK USB Keyboard, class 0/0, rev 1.10/1.04, addr 35: is tagged by udev as: Keyboard
[670317.969] (II) event9  - NOVATEK USB Keyboard, class 0/0, rev 1.10/1.04, addr 35: device is a keyboard
[670317.971] (II) event9  - NOVATEK USB Keyboard, class 0/0, rev 1.10/1.04, addr 35: device removed
[670317.971] (**) Option "config_info" "udev:/dev/input/event9"
[670317.971] (II) XINPUT: Adding extended input device "NOVATEK USB Keyboard" (type: KEYBOARD, id 14)
[670317.971] (**) Option "xkb_rules" "evdev"
[670317.974] (II) event9  - NOVATEK USB Keyboard, class 0/0, rev 1.10/1.04, addr 35: is tagged by udev as: Keyboard
[670317.974] (II) event9  - NOVATEK USB Keyboard, class 0/0, rev 1.10/1.04, addr 35: device is a keyboard
[670319.095] (II) config/udev: removing device PixArt USB Optical Mouse
[670319.095] (II) event8  - PixArt USB Optical Mouse, class 0/0, rev 2.00/1.00, addr 34: device removed
[670319.130] (II) UnloadModule: "libinput"
[670319.130] (II) config/udev: removing device NOVATEK USB Keyboard
[670319.130] (II) event9  - NOVATEK USB Keyboard, class 0/0, rev 1.10/1.04, addr 35: device removed
[670319.140] (II) UnloadModule: "libinput"
[670320.982] (II) config/udev: Adding input device NOVATEK USB Keyboard (/dev/input/event8)
[670320.982] (**) NOVATEK USB Keyboard: Applying InputClass "evdev keyboard catchall"
[670320.982] (**) NOVATEK USB Keyboard: Applying InputClass "Evdev keyboard"
[670320.982] (**) NOVATEK USB Keyboard: Applying InputClass "libinput keyboard catchall"
[670320.982] (II) Using input driver 'libinput' for 'NOVATEK USB Keyboard'
[670320.982] (**) NOVATEK USB Keyboard: always reports core events
[670320.982] (**) Option "Device" "/dev/input/event8"
[670320.982] (**) Option "_source" "server/udev"
[670320.984] (II) event8  - NOVATEK USB Keyboard, class 0/0, rev 1.10/1.04, addr 37: is tagged by udev as: Keyboard
[670320.984] (II) event8  - NOVATEK USB Keyboard, class 0/0, rev 1.10/1.04, addr 37: device is a keyboard
[670320.987] (II) event8  - NOVATEK USB Keyboard, class 0/0, rev 1.10/1.04, addr 37: device removed
[670320.987] (**) Option "config_info" "udev:/dev/input/event8"
[670320.987] (II) XINPUT: Adding extended input device "NOVATEK USB Keyboard" (type: KEYBOARD, id 13)
[670320.987] (**) Option "xkb_rules" "evdev"
[670320.990] (II) event8  - NOVATEK USB Keyboard, class 0/0, rev 1.10/1.04, addr 37: is tagged by udev as: Keyboard
[670320.990] (II) event8  - NOVATEK USB Keyboard, class 0/0, rev 1.10/1.04, addr 37: device is a keyboard
[670321.462] (II) config/udev: Adding input device PixArt USB Optical Mouse (/dev/input/event9)
[670321.462] (**) PixArt USB Optical Mouse: Applying InputClass "evdev pointer catchall"
[670321.462] (**) PixArt USB Optical Mouse: Applying InputClass "libinput pointer catchall"
[670321.462] (II) Using input driver 'libinput' for 'PixArt USB Optical Mouse'
[670321.462] (**) PixArt USB Optical Mouse: always reports core events
[670321.462] (**) Option "Device" "/dev/input/event9"
[670321.462] (**) Option "_source" "server/udev"
[670321.463] (II) event9  - PixArt USB Optical Mouse, class 0/0, rev 2.00/1.00, addr 38: is tagged by udev as: Mouse
[670321.464] (II) event9  - PixArt USB Optical Mouse, class 0/0, rev 2.00/1.00, addr 38: device is a pointer
[670321.465] (II) event9  - PixArt USB Optical Mouse, class 0/0, rev 2.00/1.00, addr 38: device removed
[670321.465] (**) Option "config_info" "udev:/dev/input/event9"
[670321.465] (II) XINPUT: Adding extended input device "PixArt USB Optical Mouse" (type: MOUSE, id 14)
[670321.467] (**) Option "AccelerationScheme" "none"
[670321.468] (**) PixArt USB Optical Mouse: (accel) selected scheme none/0
[670321.469] (**) PixArt USB Optical Mouse: (accel) acceleration factor: 2.000
[670321.469] (**) PixArt USB Optical Mouse: (accel) acceleration threshold: 4
[670321.470] (II) event9  - PixArt USB Optical Mouse, class 0/0, rev 2.00/1.00, addr 38: is tagged by udev as: Mouse
[670321.471] (II) event9  - PixArt USB Optical Mouse, class 0/0, rev 2.00/1.00, addr 38: device is a pointer

[5] dmesg when hooking up the 'docking' station
ugen0.2: <LENOVO TP USB 3.0 Ultra Dock> at usbus0
uhub1 on uhub0
uhub1: <LENOVO TP USB 3.0 Ultra Dock, class 9/0, rev 2.10/50.41, addr 24> on usbus0
uhub1: 4 ports with 2 removable, self powered
ugen0.3: <LENOVO TP USB 3.0 Ultra Dock> at usbus0
uhub2 on uhub1
uhub2: <LENOVO TP USB 3.0 Ultra Dock, class 9/0, rev 2.10/50.41, addr 22> on usbus0
uhub2: 4 ports with 4 removable, self powered
ugen0.5: <PixArt USB Optical Mouse> at usbus0
ums0 on uhub2
ums0: <PixArt USB Optical Mouse, class 0/0, rev 2.00/1.00, addr 27> on usbus0
ums0: 3 buttons and [XYZ] coordinates ID=0
ugen0.6: <NOVATEK USB Keyboard> at usbus0
ukbd0 on uhub2
ukbd0: <NOVATEK USB Keyboard, class 0/0, rev 1.10/1.04, addr 28> on usbus0
kbd2 at ukbd0
kbd2: ukbd0, generic (0), config:0x0, flags:0x3d0000
uhid0 on uhub2
uhid0: <NOVATEK USB Keyboard, class 0/0, rev 1.10/1.04, addr 28> on usbus0
ugen0.10: <DisplayLink ThinkPad USB 3.0 Ultra Dock> at usbus0
uaudio0 on uhub1
uaudio0: <Lenovo Audio> on usbus0
uaudio0: Play[0]: 48000 Hz, 6 ch, 16-bit S-LE PCM format, 2x8ms buffer.
uaudio0: Record[0]: 48000 Hz, 2 ch, 16-bit S-LE PCM format, 2x8ms buffer.
uaudio0: No MIDI sequencer.
pcm3: <USB audio> on uaudio0
pcm3: Mixer "vol" -> "none": child=0x00000010
pcm3: Mixer "pcm": parent="vol"
pcm3: Soft PCM mixer ENABLED
uaudio0: No HID volume keys found.
cdce0 on uhub1
cdce0: <Lenovo Giga Ethernet> on usbus0
ue0: <USB Ethernet> on cdce0
ue0: bpf attached
ue0: Ethernet address: 6c:0b:84:b1:19:48
ugen0.5: <PixArt USB Optical Mouse> at usbus0 (disconnected)
ums0: at uhub2, port 2, addr 27 (disconnected)
ums0: detached
ugen0.6: <NOVATEK USB Keyboard> at usbus0 (disconnected)
ukbd0: at uhub2, port 3, addr 28 (disconnected)
ukbd0: detached
uhid0: at uhub2, port 3, addr 28 (disconnected)
uhid0: detached
ugen0.5: <PixArt USB Optical Mouse> at usbus0
ums0 on uhub2
ums0: <PixArt USB Optical Mouse, class 0/0, rev 2.00/1.00, addr 30> on usbus0
ums0: 3 buttons and [XYZ] coordinates ID=0
ugen0.6: <NOVATEK USB Keyboard> at usbus0
ukbd0 on uhub2
ukbd0: <NOVATEK USB Keyboard, class 0/0, rev 1.10/1.04, addr 31> on usbus0
kbd2 at ukbd0
kbd2: ukbd0, generic (0), config:0x0, flags:0x3d0000
uhid0 on uhub2
uhid0: <NOVATEK USB Keyboard, class 0/0, rev 1.10/1.04, addr 31> on usbus0