Enabeling a second monitor using Linux Mint and dual boot

I installed a dual boot on Lenovo Thinkpad P16s with Linux Mint as an additional operating system. The notebook uses an NVIDIA T550 Laptop GPU. I installed Nvidia drivers (525.60.11).
I do not manage to use two monitors. The help menu provides as follows: “Screens
This is the number of X Screens on the display. (When Xinerama is enabled this is always 1).”

Nvidia bug report is attached.

Online research pointed to etc/xorg.conf which does not exist on this machine.

Any help on how to enable a second monitor is highly appreciated.

Best,
Till

nvidia-bug-report.log.gz (282.7 KB)

first off, is the external monitor plugged directly into the nVidia GPU, or does it go through an integrated GPU (intel, AMD?)? You will have to research this (specific to your laptop model). Second, at least on my Lenovo Legion 5 Pro…I have a BIOS option to run hybrid or discrete-only graphics (mine has a MUX switch also, and the external ports are routed to the discrete GPU).

You shouldn’t need an xorg.conf in general. You do, however, needed to enable kernel modesetting (requires a kernel parameter during boot) for the nVidia drivers to work correctly.

Thanks for your quick reply.

It seems to me that modeprobe is enabled. nvidia-graphics-driver-kms.conf reads as follows:

This file was generated by nvidia-driver-525

Set value to 0 to disable modesetting

options nvidia-drm modeset=1

I have attached the data sheet. That is all I can find about the nVidis GPU.
21BT000RGE_Lenovo_de.pdf (1.8 MB)

I checked the BIOS: you may change between an external display and the Thinkpad display during boot time. I tried but this didn’t help after boot (external screen worked during boot, both displays black after boot).

I checked with dmesg and found the following information:
[ 0.865276] pci 0000:00:07.0: DPC: RP PIO log size 0 is invalid
[ 0.865279] fbcon: Taking over console
[ 0.869329] pci 0000:00:07.2: [8086:462f] type 01 class 0x060400
[ 0.869392] pci 0000:00:07.2: PME# supported from D0 D3hot D3cold
[ 0.869414] pci 0000:00:07.2: PTM enabled (root), 4ns granularity
[ 0.869417] pci 0000:00:07.2: DPC: RP PIO log size 0 is invalid

Not sure if this has a meaning.

aeger@Laptop-5IVMC400:~$ dmesg | grep -i nvidia
[ 2.444436] nvidia: loading out-of-tree module taints kernel.
[ 2.444443] nvidia: module license ‘NVIDIA’ taints kernel.
[ 2.470305] nvidia-nvlink: Nvlink Core is being initialized, major device number 509
[ 2.470973] nvidia 0000:03:00.0: enabling device (0000 → 0003)
[ 2.519898] NVRM: loading NVIDIA UNIX x86_64 Kernel Module 525.60.11 Wed Nov 23 23:04:03 UTC 2022
[ 2.557399] nvidia-modeset: Loading NVIDIA Kernel Mode Setting Driver for UNIX platforms 525.60.11 Wed Nov 23 22:49:17 UTC 2022
[ 2.559138] [drm] [nvidia-drm] [GPU ID 0x00000300] Loading driver
[ 3.205481] [drm] Initialized nvidia-drm 0.0.0 20160202 for 0000:03:00.0 on minor 1
[ 3.479106] Modules linked in: nvidia_drm(PO) nvidia_modeset(PO) nvidia(PO) hid_generic i915(+) i2c_algo_bit ttm drm_kms_helper syscopyarea sysfillrect crct10dif_pclmul sysimgblt crc32_pclmul fb_sys_fops ghash_clmulni_intel aesni_intel crypto_simd cryptd psmouse cec i2c_hid_acpi nvme i2c_hid rc_core xhci_pci intel_lpss_pci i2c_i801 intel_lpss drm thunderbolt e1000e i2c_smbus xhci_pci_renesas idma64 nvme_core intel_pmt wmi hid video pinctrl_tigerlake
[ 3.479794] ? _nv015943rm+0x6080/0xd590 [nvidia]
[ 6.288878] nvidia_uvm: module uses symbols from proprietary module nvidia, inheriting taint.
[ 6.293456] nvidia-uvm: Loaded the UVM driver, major device number 507.
[ 8.568118] audit: type=1400 audit(1672996478.559:6): apparmor=“STATUS” operation=“profile_load” profile=“unconfined” name=“nvidia_modprobe” pid=834 comm=“apparmor_parser”
[ 8.568122] audit: type=1400 audit(1672996478.559:7): apparmor=“STATUS” operation=“profile_load” profile=“unconfined” name=“nvidia_modprobe//kmod” pid=834 comm=“apparmor_parser”

Would it be helpful to disable Xinerama? If so, how to do?

All your external connectors are on the intel igpu, the nvidia gpu has none. Since you have a ver new 12th gen cpu, please upgrade the kernel using the liquorix ppa and check if the hdmi port starts to work.

I installed Liquorx (Kernel: 6.1.0-3.1-liquorix-amd64)

xrandr output:
jaeger@Laptop-5IVMC400:~$ xrandr
Screen 0: minimum 320 x 200, current 1920 x 1200, maximum 16384 x 16384
eDP-1 connected primary 1920x1200+0+0 (normal left inverted right x axis y axis) 345mm x 215mm
1920x1200 60.00*+ 60.00
1920x1080 60.00
1600x1200 60.00
1680x1050 60.00
1400x1050 60.00
1600x900 60.00
1280x1024 60.00
1400x900 60.00
1280x960 60.00
1440x810 60.00
1368x768 60.00
1280x800 60.00
1280x720 60.00
1024x768 60.00
960x720 60.00
928x696 60.00
896x672 60.00
1024x576 60.00
960x600 60.00
960x540 60.00
800x600 60.00
840x525 60.00
864x486 60.00
700x525 60.00
800x450 60.00
640x512 60.00
700x450 60.00
640x480 60.00
720x405 60.00
684x384 60.00
640x360 60.00
512x384 60.00
512x288 60.00
480x270 60.00
400x300 60.00
432x243 60.00
320x240 60.00
360x202 60.00
320x180 60.00
DP-1 disconnected (normal left inverted right x axis y axis)
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)

aeger@Laptop-5IVMC400:~$ sudo lshw -C display
*-display
Beschreibung: VGA compatible controller
Produkt: Alder Lake-P Integrated Graphics Controller
Hersteller: Intel Corporation
Physische ID: 2
Bus-Informationen: pci@0000:00:02.0
Logischer Name: /dev/fb0
Version: 0c
Breite: 64 bits
Takt: 33MHz
Fähigkeiten: pciexpress msi pm vga_controller bus_master cap_list rom fb
Konfiguration: depth=32 driver=i915 latency=0 mode=1920x1200 resolution=1920,1200 visual=truecolor xres=1920 yres=1200
Ressourcen: iomemory:600-5ff iomemory:400-3ff irq:178 memory:6052000000-6052ffffff memory:4000000000-400fffffff ioport:3000(Größe=64) memory:c0000-dffff memory:4010000000-4016ffffff memory:4020000000-40ffffffff
*-display
Beschreibung: 3D controller
Produkt: NVIDIA Corporation
Hersteller: NVIDIA Corporation
Physische ID: 0
Bus-Informationen: pci@0000:03:00.0
Version: a1
Breite: 64 bits
Takt: 33MHz
Fähigkeiten: pm msi pciexpress bus_master cap_list rom
Konfiguration: driver=nvidia latency=0
Ressourcen: iomemory:600-5ff iomemory:600-5ff irq:197 memory:bd000000-bdffffff memory:6040000000-604fffffff memory:6050000000-6051ffffff ioport:2000(Größe=128)


How to enable HDMI? Do you think setting Nvidia GPU as primary card would make sense (How to Connect Your Linux Laptop to an External Monitor (Fix for HDMI "No Signal" Issue) - 9to5Linux)?

As I already said, all outputs are connected to the intel gpu, the nvidia gpu has none so fiddling with the nvidia driver won’t have any effect.
The i915 driver is oopsing on boot, kernel 5.15:

[    3.670886] i915 0000:00:02.0: drm_WARN_ON(intel_dp->pps.vdd_wakeref)
[    3.670915] WARNING: CPU: 2 PID: 249 at drivers/gpu/drm/i915/display/intel_pps.c:591 intel_pps_vdd_on_unlocked+0x28a/0x2a0 [i915]
[    3.671243] Modules linked in: nvidia_drm(PO) nvidia_modeset(PO) hid_generic nvidia(PO) i915(+) i2c_algo_bit ttm drm_kms_helper syscopyarea sysfillrect sysimgblt fb_sys_fops crct10dif_pclmul cec crc32_pclmul ghash_clmulni_intel aesni_intel crypto_simd cryptd i2c_hid_acpi rc_core i2c_hid nvme psmouse intel_lpss_pci i2c_i801 xhci_pci intel_lpss drm e1000e thunderbolt i2c_smbus idma64 intel_pmt xhci_pci_renesas nvme_core wmi hid video pinctrl_tigerlake
[    3.671291] CPU: 2 PID: 249 Comm: systemd-udevd Tainted: P           O      5.15.0-56-generic #62-Ubuntu
[    3.671298] Hardware name: LENOVO 21BT000RGE/21BT000RGE, BIOS N3BET46W (1.24 ) 06/07/2022
[    3.671300] RIP: 0010:intel_pps_vdd_on_unlocked+0x28a/0x2a0 [i915]
[    3.671575] Code: 4c 8b 77 50 4d 85 f6 75 03 4c 8b 37 e8 3f a6 b0 f9 48 c7 c1 60 ad c2 c0 4c 89 f2 48 c7 c7 b6 f4 c3 c0 48 89 c6 e8 dd 4c f9 f9 <0f> 0b e9 1e fe ff ff e8 aa ba 03 fa 66 2e 0f 1f 84 00 00 00 00 00
[    3.671580] RSP: 0018:ffffb3c400b7b450 EFLAGS: 00010282
[    3.671585] RAX: 0000000000000000 RBX: ffff9f974698c170 RCX: ffffffffbbd7a6a8
[    3.671588] RDX: 0000000000000000 RSI: 0000000000000003 RDI: 0000000000000003
[    3.671590] RBP: ffffb3c400b7b4a8 R08: 0000000000000003 R09: 00000000bc4257a2
[    3.671593] R10: ffffffffffffffff R11: 0000000000000001 R12: 0000000000000001
[    3.671596] R13: ffff9f9767d20000 R14: ffff9f9742acfb10 R15: ffff9f9767d207d0
[    3.671599] FS:  00007f715233b8c0(0000) GS:ffff9f9e7f480000(0000) knlGS:0000000000000000
[    3.671603] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
[    3.671605] CR2: 000055d8effc5be0 CR3: 000000010456a003 CR4: 0000000000770ee0
[    3.671609] PKRU: 55555554
[    3.671611] Call Trace:
[    3.671614]  <TASK>
[    3.671619]  ? __cond_resched+0x1a/0x50
[    3.671631]  intel_dp_aux_xfer+0x10d/0x870 [i915]
[    3.671908]  ? psi_task_switch+0xc6/0x220
[    3.671915]  ? finish_task_switch.isra.0+0x7e/0x280
[    3.671922]  ? __schedule+0x256/0x590
[    3.671928]  intel_dp_aux_transfer+0x17b/0x2b0 [i915]
[    3.672186]  drm_dp_dpcd_access+0x6f/0x130 [drm_kms_helper]
[    3.672224]  drm_dp_dpcd_write+0xb2/0x100 [drm_kms_helper]
[    3.672256]  intel_dp_set_power+0x61/0x170 [i915]
[    3.672507]  intel_ddi_post_disable_dp.constprop.0+0x1a6/0x240 [i915]
[    3.672753]  intel_ddi_post_disable+0x1ec/0x2a0 [i915]
[    3.672989]  ? intel_disable_ddi+0xd8/0x170 [i915]
[    3.673209]  ? synchronize_irq+0x3e/0xb0
[    3.673216]  intel_encoders_post_disable+0x83/0xa0 [i915]
[    3.673470]  hsw_crtc_disable+0x23/0x30 [i915]
[    3.673670]  intel_old_crtc_state_disables+0xfb/0x1c0 [i915]
[    3.673847]  intel_commit_modeset_disables+0x1f5/0x210 [i915]
[    3.674036]  intel_atomic_commit_tail+0x198/0xb80 [i915]
[    3.674217]  intel_atomic_commit+0x394/0x410 [i915]
[    3.674391]  drm_atomic_commit+0x47/0x60 [drm]
[    3.674454]  intel_initial_commit+0x17b/0x200 [i915]
[    3.674656]  intel_modeset_init+0x27/0x90 [i915]
[    3.674846]  i915_driver_probe+0x1e1/0x470 [i915]
[    3.675006]  ? mutex_lock+0x13/0x50
[    3.675011]  i915_pci_probe+0x58/0x140 [i915]
[    3.675156]  local_pci_probe+0x48/0x90
[    3.675161]  pci_device_probe+0x119/0x1f0
[    3.675165]  really_probe+0x21f/0x420
[    3.675171]  __driver_probe_device+0x119/0x190
[    3.675176]  driver_probe_device+0x23/0xc0
[    3.675180]  __driver_attach+0xbd/0x1f0
[    3.675184]  ? __device_attach_driver+0x120/0x120
[    3.675189]  bus_for_each_dev+0x7c/0xd0
[    3.675193]  driver_attach+0x1e/0x30
[    3.675196]  bus_add_driver+0x148/0x220
[    3.675201]  driver_register+0x95/0x100
[    3.675205]  __pci_register_driver+0x68/0x70
[    3.675208]  i915_register_pci_driver+0x23/0x30 [i915]
[    3.675332]  i915_init+0x3b/0x101 [i915]
[    3.675492]  ? 0xffffffffc0cfe000
[    3.675496]  do_one_initcall+0x46/0x1e0
[    3.675503]  ? kmem_cache_alloc_trace+0x19e/0x2e0
[    3.675510]  do_init_module+0x52/0x260
[    3.675513]  load_module+0xb2b/0xbc0
[    3.675517]  __do_sys_finit_module+0xbf/0x120
[    3.675521]  __x64_sys_finit_module+0x18/0x20
[    3.675524]  do_syscall_64+0x59/0xc0
[    3.675527]  ? do_syscall_64+0x69/0xc0
[    3.675530]  ? do_syscall_64+0x69/0xc0
[    3.675533]  entry_SYSCALL_64_after_hwframe+0x61/0xcb
[    3.675539] RIP: 0033:0x7f7152a33a3d
[    3.675542] Code: 5b 41 5c c3 66 0f 1f 84 00 00 00 00 00 f3 0f 1e fa 48 89 f8 48 89 f7 48 89 d6 48 89 ca 4d 89 c2 4d 89 c8 4c 8b 4c 24 08 0f 05 <48> 3d 01 f0 ff ff 73 01 c3 48 8b 0d c3 a3 0f 00 f7 d8 64 89 01 48
[    3.675545] RSP: 002b:00007fffdd0dfde8 EFLAGS: 00000246 ORIG_RAX: 0000000000000139
[    3.675549] RAX: ffffffffffffffda RBX: 000055d8effcd820 RCX: 00007f7152a33a3d
[    3.675551] RDX: 0000000000000000 RSI: 00007f7152bca441 RDI: 0000000000000014
[    3.675553] RBP: 0000000000020000 R08: 0000000000000000 R09: 0000000000000002
[    3.675554] R10: 0000000000000014 R11: 0000000000000246 R12: 00007f7152bca441
[    3.675556] R13: 000055d8effce360 R14: 000055d8effcc8a0 R15: 000055d8effd0240
[    3.675559]  </TASK>

Since kernel 6.1 doesn’t fix this, it might be due to a known Insyde bios bug. Please check for a bios update. Please create a new nvidia-bug-report.log running the liquorix kernel.

Thanks for your quick reply, well appreciated.

I checked for a BIOS update and installed the most recent version (1.25). Interesting: the notebook is intended to work with Ubuntu Linux (according to their BIOS update information). I guess I should contact their support.

Please find attached the newest bug report using the Liquorix kernel.
nvidia-bug-report.log.gz (314.3 KB)

Yes, Thinkpads are in Lenovo’s “Linux program” so they’re guaranteed to work but from experience I know they don’t really test this thoroughly so you might have to order a fix or two…
First, you should rule out a general hardware defect, e.g. installing Windows. If that’s working, you should contact Lenovo support and also report a bug with the intel i915 driver https://gitlab.freedesktop.org/drm/intel/-/wikis/How-to-file-i915-bugs

My goodness! BIOS update to 1.30 did the job (BIOS Update (Utility & Bootable CD) for Windows 11, 10 (64-bit), Linux - ThinkPad T14 Gen 3, P14s Gen 3, T16 Gen 1, P16s Gen 1 - Lenovo Support DE). Thank you for your help!