Display connected to Kensington TB4/USB4 dock results in no EDID/just 640x480 mode
Brief summary of the problem:
Monitor works correctly (all modes including native 3840x2160@60Hz) connected directly to the laptop over a Framework USB-C/HDMI adapter. Also works through the dock with Intel-based Framework and Macbook Pro M1 laptops.
On the Framework AMD 7840U laptop however, when connected through the dock the monitor is only seen at a generic(?) 640x480 resolution, with no EDID info.
Hardware description:
- CPU: 7840U
- GPU: 1:00.0 VGA compatible controller [0300]: Advanced Micro Devices, Inc. [AMD/ATI] Phoenix1 [1002:15bf] (rev c4)
- System Memory: 64GB
- Display(s): Built-in laptop panel 2256x1504@60, HP Z27 3840x2160
- Type of Display Connection: HDMI
System information:
- Distro name and Version: Fedora 39
- Kernel version: 6.6.6-200.fc39.x86_64 #1 SMP PREEMPT_DYNAMIC Mon Dec 11 17:29:08 UTC 2023 x86_64 GNU/Linux
- Custom kernel: N/A
- AMD official driver version: N/A
How to reproduce the issue:
I can reproduce this issue 100% reliably. Tried hot- and cold-plugging in the monitor, same with the dock itself, as well as power cycling the dock.
Conversely, when connected directly through the Framework HDMI adapter, the monitor works correctly 100% of the time.
With the Intel (11 gen) laptop, the monitor works through the dock correctly virtually always. When it rarely doesn't, it either stays dark or connects at the same (I believe, been a while) 640x480 resolution. In those cases, power-cycling the dock has been able to correct the issue every time.
When connected directly on HDMI, the monitor's EDID is:
$ cat /sys/class/drm/card1/card1-DP-4/edid |edid-decode
edid-decode (hex):
00 ff ff ff ff ff ff 00 22 0e 38 35 01 01 01 01
14 1e 01 03 80 3c 22 78 2e ee 95 a3 54 4c 99 26
0f 50 54 a1 08 00 d1 c0 a9 c0 81 c0 d1 00 b3 00
95 00 81 00 81 80 4d d0 00 a0 f0 70 3e 80 30 20
35 00 55 50 21 00 00 1a 00 00 00 fd 00 1d 3c 1c
87 3c 00 0a 20 20 20 20 20 20 00 00 00 fc 00 48
50 20 5a 32 37 0a 20 20 20 20 20 20 00 00 00 ff
00 43 4e 34 30 32 30 30 50 4d 4a 0a 20 20 01 bc
02 03 38 f1 51 61 10 04 03 02 1f 13 12 11 5f 05
14 07 06 16 15 01 23 09 07 07 83 01 00 00 6b 03
0c 00 10 00 38 3c 20 00 20 01 67 d8 5d c4 01 78
80 03 e2 0f 01 e2 00 2b a3 66 00 a0 f0 70 1f 80
30 20 35 00 55 50 21 00 00 1a 02 3a 80 18 71 38
2d 40 58 2c 45 00 55 50 21 00 00 1e 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 05
----------------
Block 0, Base EDID:
EDID Structure Version & Revision: 1.3
Vendor & Product Identification:
Manufacturer: HPN
Model: 13624
Serial Number: 16843009
Made in: week 20 of 2020
Basic Display Parameters & Features:
Digital display
Maximum image size: 60 cm x 34 cm
Gamma: 2.20
DPMS levels: Off
RGB color display
Default (sRGB) color space is primary color space
First detailed timing is the preferred timing
Color Characteristics:
Red : 0.6396, 0.3300
Green: 0.2998, 0.5996
Blue : 0.1503, 0.0595
White: 0.3134, 0.3291
Established Timings I & II:
IBM : 720x400 70.081663 Hz 9:5 31.467 kHz 28.320000 MHz
DMT 0x04: 640x480 59.940476 Hz 4:3 31.469 kHz 25.175000 MHz
DMT 0x09: 800x600 60.316541 Hz 4:3 37.879 kHz 40.000000 MHz
DMT 0x10: 1024x768 60.003840 Hz 4:3 48.363 kHz 65.000000 MHz
Standard Timings:
DMT 0x52: 1920x1080 60.000000 Hz 16:9 67.500 kHz 148.500000 MHz
DMT 0x53: 1600x900 60.000000 Hz 16:9 60.000 kHz 108.000000 MHz (RB)
DMT 0x55: 1280x720 60.000000 Hz 16:9 45.000 kHz 74.250000 MHz
DMT 0x45: 1920x1200 59.884600 Hz 16:10 74.556 kHz 193.250000 MHz
DMT 0x3a: 1680x1050 59.954250 Hz 16:10 65.290 kHz 146.250000 MHz
DMT 0x2f: 1440x900 59.887445 Hz 16:10 55.935 kHz 106.500000 MHz
DMT 0x1c: 1280x800 59.810326 Hz 16:10 49.702 kHz 83.500000 MHz
DMT 0x23: 1280x1024 60.019740 Hz 5:4 63.981 kHz 108.000000 MHz
Detailed Timing Descriptors:
DTD 1: 3840x2160 59.996625 Hz 16:9 133.312 kHz 533.250000 MHz (597 mm x 336 mm)
Hfront 48 Hsync 32 Hback 80 Hpol P
Vfront 3 Vsync 5 Vback 54 Vpol N
Display Range Limits:
Monitor ranges (GTF): 29-60 Hz V, 28-135 kHz H, max dotclock 600 MHz
Display Product Name: 'HP Z27'
Display Product Serial Number: 'CN40200PMJ'
Extension blocks: 1
Checksum: 0xbc
----------------
Block 1, CTA-861 Extension Block:
Revision: 3
Underscans IT Video Formats by default
Basic audio support
Supports YCbCr 4:4:4
Supports YCbCr 4:2:2
Native detailed modes: 1
Video Data Block:
VIC 97: 3840x2160 60.000000 Hz 16:9 135.000 kHz 594.000000 MHz
VIC 16: 1920x1080 60.000000 Hz 16:9 67.500 kHz 148.500000 MHz
VIC 4: 1280x720 60.000000 Hz 16:9 45.000 kHz 74.250000 MHz
VIC 3: 720x480 59.940060 Hz 16:9 31.469 kHz 27.000000 MHz
VIC 2: 720x480 59.940060 Hz 4:3 31.469 kHz 27.000000 MHz
VIC 31: 1920x1080 50.000000 Hz 16:9 56.250 kHz 148.500000 MHz
VIC 19: 1280x720 50.000000 Hz 16:9 37.500 kHz 74.250000 MHz
VIC 18: 720x576 50.000000 Hz 16:9 31.250 kHz 27.000000 MHz
VIC 17: 720x576 50.000000 Hz 4:3 31.250 kHz 27.000000 MHz
VIC 95: 3840x2160 30.000000 Hz 16:9 67.500 kHz 297.000000 MHz
VIC 5: 1920x1080i 60.000000 Hz 16:9 33.750 kHz 74.250000 MHz
VIC 20: 1920x1080i 50.000000 Hz 16:9 28.125 kHz 74.250000 MHz
VIC 7: 1440x480i 59.940060 Hz 16:9 15.734 kHz 27.000000 MHz
VIC 6: 1440x480i 59.940060 Hz 4:3 15.734 kHz 27.000000 MHz
VIC 22: 1440x576i 50.000000 Hz 16:9 15.625 kHz 27.000000 MHz
VIC 21: 1440x576i 50.000000 Hz 4:3 15.625 kHz 27.000000 MHz
VIC 1: 640x480 59.940476 Hz 4:3 31.469 kHz 25.175000 MHz
Audio Data Block:
Linear PCM:
Max channels: 2
Supported sample rates (kHz): 48 44.1 32
Supported sample sizes (bits): 24 20 16
Speaker Allocation Data Block:
FL/FR - Front Left/Right
Vendor-Specific Data Block (HDMI), OUI 00-0C-03:
Source physical address: 1.0.0.0
DC_36bit
DC_30bit
DC_Y444
Maximum TMDS clock: 300 MHz
Extended HDMI video details:
HDMI VICs:
HDMI VIC 1: 3840x2160 30.000000 Hz 16:9 67.500 kHz 297.000000 MHz
Vendor-Specific Data Block (HDMI Forum), OUI C4-5D-D8:
Version: 1
Maximum TMDS Character Rate: 600 MHz
SCDC Present
Supports 12-bits/component Deep Color 4:2:0 Pixel Encoding
Supports 10-bits/component Deep Color 4:2:0 Pixel Encoding
YCbCr 4:2:0 Capability Map Data Block:
VIC 97: 3840x2160 60.000000 Hz 16:9 135.000 kHz 594.000000 MHz
Video Capability Data Block:
YCbCr quantization: No Data
RGB quantization: No Data
PT scan behavior: Always Underscanned
IT scan behavior: Always Underscanned
CE scan behavior: Supports both over- and underscan
Detailed Timing Descriptors:
DTD 2: 3840x2160 29.980602 Hz 16:9 65.688 kHz 262.750000 MHz (597 mm x 336 mm)
Hfront 48 Hsync 32 Hback 80 Hpol P
Vfront 3 Vsync 5 Vback 23 Vpol N
DTD 3: 1920x1080 60.000000 Hz 16:9 67.500 kHz 148.500000 MHz (597 mm x 336 mm)
Hfront 88 Hsync 44 Hback 148 Hpol P
Vfront 4 Vsync 5 Vback 36 Vpol P
Checksum: 0x05 Unused space in Extension Block: 35 bytes
When connected through the dock the EDID is empty, and the only available mode is:
$ cat /sys/class/drm/card1/card1-DP-7/modes
640x480
This Fedora kernel seems to have simpledrm
built in:
$ modinfo simpledrm
name: simpledrm
filename: (builtin)
license: GPL v2
file: drivers/gpu/drm/tiny/simpledrm
description: DRM driver for simple-framebuffer platform devices
The specific dock is this one
$ boltctl info acd38780-0078-0160-ffff-ffffffffffff
● Kensington Thunderbolt 4 Docking Station
├─ type: peripheral
├─ name: Thunderbolt 4 Docking Station
├─ vendor: Kensington
├─ uuid: acd38780-0078-0160-ffff-ffffffffffff
├─ dbus path: /org/freedesktop/bolt/devices/acd38780_0078_0160_ffff_ffffffffffff
├─ generation: USB4
├─ status: authorized
│ ├─ domain: a3f73804-d1db-6f64-ffff-ffffffffffff
│ ├─ parent: a3f73804-d1db-6f64-ffff-ffffffffffff
│ ├─ syspath: /sys/devices/pci0000:00/0000:00:08.3/0000:c3:00.6/domain1/1-0/1-2
│ ├─ rx speed: 40 Gb/s = 2 lanes * 20 Gb/s
│ ├─ tx speed: 40 Gb/s = 2 lanes * 20 Gb/s
│ └─ authflags: boot
├─ authorized: Wed 13 Dec 2023 04:52:02 PM UTC
├─ connected: Wed 13 Dec 2023 04:52:02 PM UTC
└─ stored: Wed 15 Nov 2023 02:47:22 AM UTC
├─ policy: iommu
└─ key: no