[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Video display via Thunderbolt docking station (Lenovo/Lenovo)



I recently got a Lenovo Thinkpad P1 gen 2 laptop and an accompanying
Lenovo Thunderbolt 3 docking station.  Windows 10 came preinstalled, and
I promptly carved out space for a Debian partition.

Debian installed flawlessly - it went *much* more smoothly than when I
set up my previous Thinkpad!  The only thing that didn't immediately
Just Work on the laptop itself was the wireless ethernet adapter, which
required me to install a 5.4 kernel, and that got it working with no
further issues.  (Side question:  Is there any virtual package I can
install to automatically get updates to the 5.4.x kernel line?
linux-image-amd64 is no help here, since that's tracking 4.19.x instead
of 5.4.)

So then it was on to the docking station, which also mostly Just Worked
with charging, ethernet port, and a USB mouse running through the dock.
But I am having no luck with getting an external monitor to work.  The
monitor I'm currently using for testing is connected via HDMI (but I
could also use DisplayPort if that would make things easier) and it
worked immediately when connected in Windows, but Linux just does not
want to see it - no matter how many times I've gone round and round with
nvidia-driver and primus, including installing both from backports,
xrandr continues to insist

$ xrandr --listproviders
Providers: number : 1
Provider 0: id: 0x43 cap: 0xf, Source Output, Sink Output, Source Offload, Sink Offload crtcs: 3 outputs: 1 associated providers: 0 name:modesetting

and sees only the laptop's built-in screen:

$ xrandr -q
Screen 0: minimum 320 x 200, current 1920 x 1080, maximum 16384 x 16384
eDP-1 connected primary 1920x1080+0+0 (normal left inverted right x axis y axis) 344mm x 193mm
(list of modes omitted)

I suspect that at least part of the problem may be an overly-new
graphics card, as nvidia-detect says

$ nvidia-detect 
Detected NVIDIA GPUs:
01:00.0 VGA compatible controller [0300]: NVIDIA Corporation Device [10de:1fb9] (rev a1)

Checking card:  NVIDIA Corporation Device 1fb9 (rev a1)
Your card is only supported by the updated drivers from
buster-backports.
See https://backports.debian.org for instructions how to use backports.
It is recommended to install the
    nvidia-driver/buster-backports
package.

...even though...

$ sudo apt-get install nvidia-driver/buster-backports
Reading package lists... Done
Building dependency tree       
Reading state information... Done
nvidia-driver is already the newest version (440.59-1~bpo10+1).

optirun/primusrun are also currently nonfunctional, as primus conflicts
with the nvidia-driver metapackage.  Specifically,

primus : Breaks: libgl1-nvidia-glvnd-glx (>= 0) but 440.59-1~bpo10+1 is to be installed
         Breaks: nvidia-driver-libs (>= 0) but 440.59-1~bpo10+1 is to be installed

When I choose to let those packages be removed so primus can install,
optirun/primusrun still fail, due to not being able to locate
libgl.so.1.


So I'm pretty much out of ideas here.  Does anyone know what I need to
do to get this working, or at least what the next step would be for me
to make some progress?


Finally, just for the sake of completeness:

$ lspci
00:00.0 Host bridge: Intel Corporation 8th Gen Core Processor Host Bridge/DRAM Registers (rev 07)
00:01.0 PCI bridge: Intel Corporation Skylake PCIe Controller (x16) (rev 07)
00:02.0 VGA compatible controller: Intel Corporation UHD Graphics 630 (Mobile)
00:04.0 Signal processing controller: Intel Corporation Skylake Processor Thermal Subsystem (rev 07)
00:08.0 System peripheral: Intel Corporation Skylake Gaussian Mixture Model
00:12.0 Signal processing controller: Intel Corporation Cannon Lake PCH Thermal Controller (rev 10)
00:14.0 USB controller: Intel Corporation Cannon Lake PCH USB 3.1 xHCI Host Controller (rev 10)
00:14.2 RAM memory: Intel Corporation Cannon Lake PCH Shared SRAM (rev 10)
00:15.0 Serial bus controller [0c80]: Intel Corporation Cannon Lake PCH Serial IO I2C Controller (rev 10)
00:16.0 Communication controller: Intel Corporation Cannon Lake PCH HECI Controller (rev 10)
00:1b.0 PCI bridge: Intel Corporation Cannon Lake PCH PCI Express Root Port (rev f0)
00:1b.4 PCI bridge: Intel Corporation Cannon Lake PCH PCI Express Root Port (rev f0)
00:1c.0 PCI bridge: Intel Corporation Cannon Lake PCH PCI Express Root Port (rev f0)
00:1d.0 PCI bridge: Intel Corporation Cannon Lake PCH PCI Express Root Port (rev f0)
00:1d.6 PCI bridge: Intel Corporation Cannon Lake PCH PCI Express Root Port (rev f0)
00:1e.0 Communication controller: Intel Corporation Device a328 (rev 10)
00:1f.0 ISA bridge: Intel Corporation Device a30e (rev 10)
00:1f.3 Audio device: Intel Corporation Cannon Lake PCH cAVS (rev 10)
00:1f.4 SMBus: Intel Corporation Cannon Lake PCH SMBus Controller (rev 10)
00:1f.5 Serial bus controller [0c80]: Intel Corporation Cannon Lake PCH SPI Controller (rev 10)
00:1f.6 Ethernet controller: Intel Corporation Ethernet Connection (7) I219-V (rev 10)
01:00.0 VGA compatible controller: NVIDIA Corporation Device 1fb9 (rev a1)
01:00.1 Audio device: NVIDIA Corporation Device 10fa (rev a1)
02:00.0 Non-Volatile memory controller: Samsung Electronics Co Ltd NVMe SSD Controller SM981/PM981
04:00.0 PCI bridge: Intel Corporation JHL7540 Thunderbolt 3 Bridge [Titan Ridge 4C 2018] (rev 06)
05:00.0 PCI bridge: Intel Corporation JHL7540 Thunderbolt 3 Bridge [Titan Ridge 4C 2018] (rev 06)
05:01.0 PCI bridge: Intel Corporation JHL7540 Thunderbolt 3 Bridge [Titan Ridge 4C 2018] (rev 06)
05:02.0 PCI bridge: Intel Corporation JHL7540 Thunderbolt 3 Bridge [Titan Ridge 4C 2018] (rev 06)
05:04.0 PCI bridge: Intel Corporation JHL7540 Thunderbolt 3 Bridge [Titan Ridge 4C 2018] (rev 06)
06:00.0 System peripheral: Intel Corporation JHL7540 Thunderbolt 3 NHI [Titan Ridge 4C 2018] (rev 06)
07:00.0 PCI bridge: Intel Corporation JHL7540 Thunderbolt 3 Bridge [Titan Ridge DD 2018] (rev 06)
08:02.0 PCI bridge: Intel Corporation JHL7540 Thunderbolt 3 Bridge [Titan Ridge DD 2018] (rev 06)
08:04.0 PCI bridge: Intel Corporation JHL7540 Thunderbolt 3 Bridge [Titan Ridge DD 2018] (rev 06)
09:00.0 USB controller: Intel Corporation JHL7540 Thunderbolt 3 USB Controller [Titan Ridge DD 2018] (rev 06)
52:00.0 Network controller: Intel Corporation Device 2723 (rev 1a)
53:00.0 SD Host controller: Genesys Logic, Inc Device 9755

-- 
Dave Sherohman


Reply to: