7

I have a brand new Lenovo T14, and I've installed Ubuntu 22.04 on it. The computer has an HDMI output, which does not show up in xrandr at all. xrandr does show my eDP-x outputs, and using a USB-C->HDMI cable does work.

In the Lenovo BIOS, I am able to choose to use an External Display instead of the laptop screen, and when I do that, the HDMI port works until Ubuntu starts loading, at which point the output dies.

My Ubuntu is as up-to-date as I know how to get it. Here are some diagnostic outputs:

xxxxxxxxx@xxx-xxx:~$ cat /proc/version_signature 
Ubuntu 5.15.0-43.46-generic 5.15.39
xxxxxxxxx@xxx-xxx:~$ lspci -k | grep -A 2 -i "VGA"
00:02.0 VGA compatible controller: Intel Corporation Alder Lake-P Integrated Graphics Controller (rev 0c)
    Subsystem: Lenovo Device 22e8
    Kernel driver in use: i915

This is the output of xrandr with a working external display connected with USB-C:

xxxxxxxxx@xxx-xxx:~$ xrandr
Screen 0: minimum 320 x 200, current 1920 x 2280, maximum 16384 x 16384
eDP-1 connected primary 1920x1200+0+1080 (normal left inverted right x axis y axis) 302mm x 188mm
   1920x1200     60.00*+  59.95  
   1920x1080     59.93  
   1600x1200     60.00  
   1680x1050     59.95    59.88  
   1600x1024     60.17  
   1400x1050     59.98  
   1600x900      59.95    59.82  
   1280x1024     60.02  
   1440x900      59.89  
   1400x900      59.96    59.88  
   1280x960      60.00  
   1440x810      59.97  
   1368x768      59.88    59.85  
   1360x768      59.80    59.96  
   1280x800      59.97    59.81    59.91  
   1152x864      60.00  
   1280x720      60.00    59.99    59.86    59.74  
   1024x768      60.04    60.00  
   960x720       60.00  
   928x696       60.05  
   896x672       60.01  
   1024x576      59.95    59.96    59.90    59.82  
   960x600       59.93    60.00  
   960x540       59.96    59.99    59.63    59.82  
   800x600       60.00    60.32    56.25  
   840x525       60.01    59.88  
   864x486       59.92    59.57  
   800x512       60.17  
   700x525       59.98  
   800x450       59.95    59.82  
   640x512       60.02  
   720x450       59.89  
   700x450       59.96    59.88  
   640x480       60.00    59.94  
   720x405       59.51    58.99  
   684x384       59.88    59.85  
   680x384       59.80    59.96  
   640x400       59.88    59.98  
   576x432       60.06  
   640x360       59.86    59.83    59.84    59.32  
   512x384       60.00  
   512x288       60.00    59.92  
   480x270       59.63    59.82  
   400x300       60.32    56.34  
   432x243       59.92    59.57  
   320x240       60.05  
   360x202       59.51    59.13  
   320x180       59.84    59.32  
DP-1 connected 1920x1080+0+0 (normal left inverted right x axis y axis) 527mm x 296mm
   1920x1080     74.97*+  60.00    50.00    59.94  
   1920x1080i    60.00    50.00    59.94  
   1680x1050     59.88  
   1280x1024     75.02    60.02  
   1440x900      59.90  
   1280x960      60.00  
   1280x800      59.91  
   1152x864      75.00  
   1280x720      60.00    50.00    59.94  
   1440x576      50.00  
   1024x768      75.03    70.07    60.00  
   1440x480      60.00    59.94  
   832x624       74.55  
   800x600       72.19    75.00    60.32    56.25  
   720x576       50.00  
   720x480       60.00    59.94  
   640x480       75.00    72.81    66.67    60.00    59.94  
   720x400       70.08  
DP-2 disconnected (normal left inverted right x axis y axis)
DP-3 disconnected (normal left inverted right x axis y axis)
DP-4 disconnected (normal left inverted right x axis y axis)

Does anyone have any ideas? It seems like it's probably some kind of driver/kernel issue, but I'm stumped...I'd really like to use the HDMI output, and I know it physically "works" because setting it as the primary display in the BIOS works until Ubuntu starts up.

I'm happy to provide any additional information upon request. Thank you for your help!

-----EDIT 1----- This is the output of lspci (there appears to be no mention of Nvidia):

xxxxxxxxx@xxxxxxx:~$ lspci
00:00.0 Host bridge: Intel Corporation Device 4621 (rev 02)
00:02.0 VGA compatible controller: Intel Corporation Alder Lake-P Integrated Graphics Controller (rev 0c)
00:04.0 Signal processing controller: Intel Corporation Alder Lake Innovation Platform Framework Processor Participant (rev 02)
00:06.0 PCI bridge: Intel Corporation 12th Gen Core Processor PCI Express x4 Controller #0 (rev 02)
00:07.0 PCI bridge: Intel Corporation Alder Lake-P Thunderbolt 4 PCI Express Root Port #0 (rev 02)
00:07.2 PCI bridge: Intel Corporation Alder Lake-P Thunderbolt 4 PCI Express Root Port #2 (rev 02)
00:0a.0 Signal processing controller: Intel Corporation Platform Monitoring Technology (rev 01)
00:0d.0 USB controller: Intel Corporation Alder Lake-P Thunderbolt 4 USB Controller (rev 02)
00:0d.2 USB controller: Intel Corporation Alder Lake-P Thunderbolt 4 NHI #0 (rev 02)
00:0d.3 USB controller: Intel Corporation Alder Lake-P Thunderbolt 4 NHI #1 (rev 02)
00:14.0 USB controller: Intel Corporation Alder Lake PCH USB 3.2 xHCI Host Controller (rev 01)
00:14.2 RAM memory: Intel Corporation Alder Lake PCH Shared SRAM (rev 01)
00:14.3 Network controller: Intel Corporation Alder Lake-P PCH CNVi WiFi (rev 01)
00:15.0 Serial bus controller: Intel Corporation Alder Lake PCH Serial IO I2C Controller #0 (rev 01)
00:15.1 Serial bus controller: Intel Corporation Alder Lake PCH Serial IO I2C Controller #1 (rev 01)
00:16.0 Communication controller: Intel Corporation Alder Lake PCH HECI Controller (rev 01)
00:1f.0 ISA bridge: Intel Corporation Alder Lake PCH eSPI Controller (rev 01)
00:1f.3 Audio device: Intel Corporation Alder Lake PCH-P High Definition Audio Controller (rev 01)
00:1f.4 SMBus: Intel Corporation Alder Lake PCH-P SMBus Host Controller (rev 01)
00:1f.5 Serial bus controller: Intel Corporation Alder Lake-P PCH SPI Controller (rev 01)
00:1f.6 Ethernet controller: Intel Corporation Ethernet Connection (16) I219-V (rev 01)
02:00.0 Non-Volatile memory controller: Samsung Electronics Co Ltd NVMe SSD Controller PM9A1/PM9A3/980PRO

3 Answers3

11

I am here answering my own question for anyone who finds this thread. The issue is caused by a bug in the current version of the T14 Gen3 BIOS. I have been in contact with Lenovo's people here.

Toward the end of the thread, you will see that Lenovo are aware of the problem and they are fixing it. They expect a new BIOS update to be pushed out very soon (probably this week or next week) which will fix it.

There is an advanced solution to the problem available from that thread as well, but it involves rebuilding a custom-modified kernel and it's rather advanced. My advice is to just wait for the BIOS update. It'll show up here when it's released.

UPDATE!

The BIOS fix dropped today on LVFS. You should be able to find it with fwupdmgr get-devices and install it with fwupdmgr get-updates. Works great for me, HDMI is fully restored.

0

I have a similar problem than @filthywabbit.

My solution was to change the configuration BIOS from legacy to UEFI

Rubens
  • 1
0

I had/have this problem and the solution was to get a hdmi dongle to connect via usb-c. The monitor was recognised immediately. Having said that, I managed to get it working by following the instructions here

/lib/systemd/system/gdm3.service

Replace

[Service]
ExecStartPre=/usr/share/gdm/generate-config

with

[Service]
ExecStartPre=/usr/bin/xinit /usr/share/gdm/generate-config

Maybe it works or you. For me, the solution was really to get the dongle on a USB-C port.

zx485
  • 2,865
royco
  • 1