# Lenovo docking station not working



## robhar (Feb 1, 2019)

Hi, I just bought a Lenovo Hybrid USB-C/USB-A docking station for my X1 Carbon thats running FreeBSD. I can't get it to play nicely. It seems to detect the dock, lights flash etc. Can turn the laptop on/off via the button on the dock. I bought it to connect 2 external monitors and ethernet (since the laptop is missing an ethernet port).

My questions:

How can I make it work so that I can connect my HDMI/DisplayPort screen ?
How do I setup the LAN connection via the dock?

usbconfig when connected to USB-C:

```
ugen0.1: <0x8086 XHCI root HUB> at usbus0, cfg=0 md=HOST spd=SUPER (5.0Gbps) pwr=SAVE (0mA)
ugen0.6: <SunplusIT Inc Integrated Camera> at usbus0, cfg=0 md=HOST spd=HIGH (480Mbps) pwr=ON (500mA)
ugen0.7: <vendor 0x06cb product 0x009a> at usbus0, cfg=0 md=HOST spd=FULL (12Mbps) pwr=ON (100mA)
ugen0.12: <Generic USB3.0-CRW> at usbus0, cfg=0 md=HOST spd=SUPER (5.0Gbps) pwr=ON (200mA)
ugen0.2: <VIA Labs, Inc. USB2.0 Hub> at usbus0, cfg=0 md=HOST spd=FULL (12Mbps) pwr=SAVE (0mA)
ugen0.3: <VIA Labs, Inc. USB2.0 Hub> at usbus0, cfg=0 md=HOST spd=FULL (12Mbps) pwr=SAVE (0mA)
ugen0.4: <vendor 0x1a40 USB 2.0 Hub MTT> at usbus0, cfg=0 md=HOST spd=FULL (12Mbps) pwr=SAVE (100mA)
ugen0.5: <Cypress Semiconductor Billboard Device> at usbus0, cfg=0 md=HOST spd=FULL (12Mbps) pwr=ON (100mA)
```

usbconfig when connected to USB-A

```
ugen0.1: <0x8086 XHCI root HUB> at usbus0, cfg=0 md=HOST spd=SUPER (5.0Gbps) pwr=SAVE (0mA)
ugen0.6: <SunplusIT Inc Integrated Camera> at usbus0, cfg=0 md=HOST spd=HIGH (480Mbps) pwr=ON (500mA)
ugen0.7: <vendor 0x06cb product 0x009a> at usbus0, cfg=0 md=HOST spd=FULL (12Mbps) pwr=ON (100mA)
ugen0.12: <Generic USB3.0-CRW> at usbus0, cfg=0 md=HOST spd=SUPER (5.0Gbps) pwr=ON (200mA)
ugen0.2: <VIA Labs, Inc. USB2.0 Hub> at usbus0, cfg=0 md=HOST spd=HIGH (480Mbps) pwr=SAVE (0mA)
ugen0.3: <VIA Labs, Inc. USB2.0 Hub> at usbus0, cfg=0 md=HOST spd=HIGH (480Mbps) pwr=SAVE (0mA)
ugen0.4: <vendor 0x1a40 USB 2.0 Hub MTT> at usbus0, cfg=0 md=HOST spd=HIGH (480Mbps) pwr=SAVE (100mA)
ugen0.5: <Cypress Semiconductor Billboard Device> at usbus0, cfg=0 md=HOST spd=FULL (12Mbps) pwr=ON (100mA)
ugen0.8: <VIA Labs, Inc. USB3.1 Hub> at usbus0, cfg=0 md=HOST spd=SUPER (5.0Gbps) pwr=SAVE (0mA)
ugen0.9: <DisplayLink ThinkPad Hybrid USB-C with USB-A Dock> at usbus0, cfg=0 md=HOST spd=SUPER (5.0Gbps) pwr=ON (2mA)
ugen0.10: <Lenovo ThinkPad Lan> at usbus0, cfg=0 md=HOST spd=SUPER (5.0Gbps) pwr=ON (72mA)
ugen0.11: <VIA Labs, Inc. USB3.1 Hub> at usbus0, cfg=0 md=HOST spd=SUPER (5.0Gbps) pwr=SAVE (0mA)
```

xrandr doesn't detect any extra screens.

Can anyone help me out / point me in the right direction?


----------



## tingo (Feb 3, 2019)

Hmm, it looks like your dock uses DisplayLink (ugen0.9) for external monitors when connected via USB-A. AFAIK, it is currently not supported under FreeBSD.
For USB-C it might use Thunderbolt, not sure.
It also seem like support for Cypress Billboard could be needed https://www.cypress.com/documentation/other-resources/usb-billboard-cy7c65210-and-cy7c65217


----------



## Deleted member 30996 (Feb 3, 2019)

I don't dock my Thinkpads anymore. The first T61 I purchased off ebay looked like it just came out of the box. I was compiling ports and it would be busy a while so I unplugged the USB mouse from the dock.

That was the end of it. It froze and after giving it plenty of time to pick back up had to do a hard reboot IIRC. It went to laptop heaven and if I didn't shed a tear at its demise it wasn't because I didn't feel like it. It's still good for parts if I need it.


----------



## PorCus_ch (Feb 4, 2020)

I just got the opportunity to test a USB-C docking (Gen2) with my X1 Carbon Gen6. I didn't pushed it too far, however the display port worked without issue. It didn't on the Gen 1 docking. Charge didn't worked, and ethernet was blinking but didn't worked either. If I have more time I'll dump the output of my dmesg here. I'm running 12.0 p12.


----------



## k3y5 (Apr 17, 2020)

PorCus_ch said:


> I just got the opportunity to test a USB-C docking (Gen2) with my X1 Carbon Gen6. I didn't pushed it too far, however the display port worked without issue. It didn't on the Gen 1 docking. Charge didn't worked, and ethernet was blinking but didn't worked either. If I have more time I'll dump the output of my dmesg here. I'm running 12.0 p12.



Were you able to get the ethernet connection working? I've got freebsd running on a thinkpad p72, and the output would be helpful.


----------



## PorCus_ch (May 23, 2020)

k3y5 said:


> Were you able to get the ethernet connection working? I've got freebsd running on a thinkpad p72, and the output would be helpful.


For now, I didn't had luck with any of the docking I tried, that is Gen1 & 2 Docking from Lenovo, QDos Powerlink Grand, i-tec USB-C Metal 4K, so I kept using the dongle, which is good enough for me. Will see with updated kernel.


----------



## Newfinder (Sep 4, 2020)

I was quite surpised to see Gen2 working in OpenBSD. Ethernet was recognized as cdce0 and worked properly. Some weird things happened to the displays and X though, I didn't figure out the problem yet. 
Today tried to make it work on FreeBSD, unfortunately no success with the Ethernet so far. Displays are working great.


----------

