Thunderbolt Lenovo Yoga X390 - no longer works with docks

Hi everyone,

I’m new here so let me first introduce myself: Linux (Desktop / Servers) geek for some 3+ years, a refugee from MS Windows.

I’m struggling to revert back my machine to work with thunderbolt docks.

The config was working almost flawlessly for 8+ months but now it is all gone. My Yoga no longer detects any of my two HP G2 Thunderbolt docks. Interestingly, the docks started to work as USB devices (I can access connected USB devices, audio and network card, as I see from the config it is all routed through USB controller, but displays do not work anymore). Nor the device shows up in the Settings->Devices->Thunderbolt. I was thinking that Thunderbolt controller is down, but it does work with Razer CoreX dock pretty well and then it does show up.

The OS is Ubuntu 19.04.

I was blaming docks (would be surprised that both failed in the same moment of time), but it is also not a case as they work pretty well with another PC (HP G5 Zbook Studio X360) without a single glitch, so HP docks are ok themselves.

Any ideas?

Thinkpad’s Yoga X390 controller is JHL6240, while docks (not sure here) are JHL7440.

I’ve read here that possibly JHL7440 is switchable between Thunderbolt and USB-C (h ttps://egpu.io/forums/thunderbolt-enclosures/list-of-intel-titan-ridge-thunderbolt-3-devices/) but my question is how to force switch it to the Thunderbolt mode?

Indeed it seems like they’re “sleeping” while my second HP Laptop “wakes it up” somehow.

Strange thing is, it was working for 8 months and now it does not …

Any help is highly appreciated.

Hi,

I was having a similar issue with my Lenovo x1 gen7 laptop and Thunderbolt dock. It used to work but suddenly the system did not recognised it as if it is not connected at all. I even reinstalled the the OS, updated there firmware on the dock itself but no luck. It was pain and I quickly ran out of ideas.

What eventually helped was that I turned off the laptop. Then I pressed the reset button with pin on the bottom side of the laptop. I have mentioned this in my arch on Lenovo X1 guide. See the bottom trouble shooting part.

I’m not sure how this is related to your scenario but I thought that I will mention it.

Thanks for your great help.

Suddenly, dock triggered today but … only once. When I shut down my Yoga and turned it back on after some 2h delay, now it does not work (Thunderbolt part) anymore.
I’ve reset using the button (power-off, button for some 10s, release it then power on - is it ok?) but still no luck. No Thunderbolt docks visible even if connected.

Interestingly, in the morning when it does wake up once, I just realised I had Windows optimised BIOS settings (including Kernel DMA on TB Assist mode and so on). Anyway, changes, as you presented in your manual, does not change it - still does not work now :(.

Regards,

P.

Have you tried to load another Linux system? For example try to download Ubuntu 20.04 and load it LIVE from USB/DVD without the actual installation and test your dock. This will help to make sure that your currently installed operating system is not to blame.

Just out of curiosity. Is your Thunderbolt Controller detected by the fwupdmgr tool using your current Ubuntu system?

Other than that you may try to upgrade the Thunderbolt Controller firmware. Although I have upgraded the firmware on my laptop using this tool multiple times without any problems, be aware that it always comes with risk.

Proceed with caution !!!

$ fwupdmgr refresh
$ fwupdmgr get-updates
$ fwupdmgr update

For example I’m also currently due to upgrade:

$ fwupdmgr update
• ThinkPad Thunderbolt 3 Dock has no available firmware updates
Upgrade available for Thunderbolt Controller from 43.00 to 44.00
Thunderbolt Controller and all connected devices may not be usable while updating. Continue with update? [Y|n]:

Hi,

Thank you for your reply. Already checked with fresh 19.04, 19.10 and 20.04 (nightly build). Also with Windows 10, nothing currently helps.

I do have updated using fwupdmgr and currently, I can see Laptop’s controller, but not the remote one:

n317-pc01:~$ lspci -vt
-[0000:00]-+-00.0  Intel Corporation Device 3e34
       +-02.0  Intel Corporation UHD Graphics 620 (Whiskey Lake)
       +-04.0  Intel Corporation Xeon E3-1200 v5/E3-1500 v5/6th Gen Core Processor Thermal Subsystem
       +-08.0  Intel Corporation Xeon E3-1200 v5/v6 / E3-1500 v5 / 6th/7th Gen Core Processor Gaussian Mixture Model
       +-12.0  Intel Corporation Device 9df9
       +-13.0  Intel Corporation Device 9dfc
       +-14.0  Intel Corporation Device 9ded
       +-14.2  Intel Corporation Device 9def
       +-14.3  Intel Corporation Device 9df0
       +-16.0  Intel Corporation Device 9de0
       +-1c.0-[02]----00.0  Realtek Semiconductor Co., Ltd. RTS522A PCI Express Card Reader
       +-1c.4-[07-2f]----00.0-[08-2f]--+-00.0-[09]----00.0  Intel Corporation JHL6240 Thunderbolt 3 NHI (Low Power) [Alpine Ridge LP 2016]
       |                               +-01.0-[0a-2e]--
       |                               \-02.0-[2f]----00.0  Intel Corporation Device 15c1
       +-1d.0-[03]----00.0  Toshiba America Info Systems Device 011a
       +-1f.0  Intel Corporation Device 9d84
       +-1f.3  Intel Corporation Device 9dc8
       +-1f.4  Intel Corporation Device 9da3
       \-1f.5  Intel Corporation Device 9da4

The topology is as follows, so controller is on, an working:

317-pc01:~$ sudo fwupdmgr get-topology 
├─ Thunderbolt Controller                    bd51a68b37db1184aa8a610e0d0fdf93999da6a8
├─ KXG6AZNV512G TOSHIBA                      3743975ad7f64f8d6575a9ae49fb3a8856fe186f
├─ System Firmware                           f3680a0cb873b4f2d6cf67f9fef6016eda0f0a7f
├─ UEFI Device Firmware                      347f241c15f38108f561926fb8653aaf3582d66f
├─ UEFI Device Firmware                      c722681ce3a143aea3d497d643d2ec2329f1aa8a
├─ UEFI Device Firmware                      5fc78c03259cea33fbb1dc6068fbd0c8e651afc2
├─ UEFI Device Firmware                      cd5ab83d01979ee71a835d6b9dcb304aa29ff7fc
└─ USB2.0 Hub                                ef5791f75bea792344af5e07f52d4bb54563221c

I was talking to the Lenovo support to ask for the older firmware, but all they were able to send me is Windows .exe installer that actually no longer works with current Windows version (there is some error during install on Windows 10 saying, no SDK related functions - I believe it is due to the Windows update). So they suggested waiting for the next critical update. So far I was also informed that I’m not the only one claiming problems on TB3 in those machines :frowning:

Just to supply: when dock somehow wakes up, it looks as follows:

317-pc01:~$ lspci -vt
-[0000:00]-+-00.0  Intel Corporation Device 3e34
       +-02.0  Intel Corporation UHD Graphics 620 (Whiskey Lake)
       +-04.0  Intel Corporation Xeon E3-1200 v5/E3-1500 v5/6th Gen Core Processor Thermal  Subsystem
       +-08.0  Intel Corporation Xeon E3-1200 v5/v6 / E3-1500 v5 / 6th/7th Gen Core Processor Gaussian Mixture Model
       +-12.0  Intel Corporation Device 9df9
       +-13.0  Intel Corporation Device 9dfc
       +-14.0  Intel Corporation Device 9ded
       +-14.2  Intel Corporation Device 9def
       +-14.3  Intel Corporation Device 9df0
       +-16.0  Intel Corporation Device 9de0
       +-1c.0-[02]----00.0  Realtek Semiconductor Co., Ltd. RTS522A PCI Express Card Reader
       +-1c.4-[07-2f]----00.0-[08-2f]--+-00.0-[09]----00.0  Intel Corporation JHL6240 Thunderbolt 3 NHI (Low Power) [Alpine Ridge LP 2016]
       |                               +-01.0-[0a-2e]----00.0-[0b-2e]--+-02.0-[0c]----00.0  Intel Corporation JHL7540 Thunderbolt 3 USB Controller [Titan Ridge 4C 2018]
       |                               |                               \-04.0-[0d-2e]--
       |                               \-02.0-[2f]----00.0  Intel Corporation Device 15c1
       +-1d.0-[03]----00.0  Toshiba America Info Systems Device 011a
       +-1f.0  Intel Corporation Device 9d84
       +-1f.3  Intel Corporation Device 9dc8
       +-1f.4  Intel Corporation Device 9da3
        \-1f.5  Intel Corporation Device 9da4

The dock is JHL7540.
However, fwupdmgr does not show any updates to the dock.

Any luck? Just another thought. Could this issue be in some way related to perhaps kernel/system update. What I mean is that it was working and suddenly it stopped. Perhaps you updated your system and this could be the result. I know this is a long stretch but could be worth to try some other more stable distros such as CentOS or Debian etc.

Thanks for asking.

Still no luck :(.
I was trying Ubuntu 18.04, 19.04.2, 19.10 and even beta 20.04.
Also Windows 10.
Seems it is firmware bug then. I’d say it is Thunderbolt controller that is broken but fortunately, I’ve got Razer Core X Thunderbolt dock with eGPU and that one works…

Finally, got some regular behavior.

I can make it working HP G2 docks (bit of hazard) following way:

  • shutdown Notebook
  • power on dock (wait a while to stabilise)
  • power on Notebook and then in 2 seconds since pushing power button, connect thunderbolt dock.

So far this is the only way I can do it working now but it it 99% success. Still this applies only to the HP G2 docks (got two of them). Razer CoreX works always.

If you have any ideas, please let me know.
Regarding OSes, tried Mint, Windows 10, Ubuntu 18.04, no luck.

To me it seems like for some reason remote, docks’ thunderbolt controller won’t wake up for some reason. I blame Lenovo here as it was working like a charm without any glitches till latest firmware update mid February that was actually announced as critical and broke my system :(. I’m considering RMA as this is still under warranty.

Regards,

P.

Thanks for the update. It seems like a lot of work to get it working.

In any case my Lenono Thunderbolt dock is also far from flawless. I’m using it with three monitors 2x display port and 1 x VGA. It works but approximately in 70% of all situations I need to perform similar ritual like you do in order to get the external monitors working.

For example when connecting the laptop to the dock via thunderbolt cable sometimes I need to turn off the dock ( from orange dock LED light to none ). Then while the laptop is on I connect the laptop to the dock and wait if the dock’s LED light turns white. Then I have to wait for all monitors to start and become stable. In case that it does not work in need to disconnect the thunderbolt cable, wait few seconds to give OS some time to react and repeat the process.

However, at this point I must say that I cannot say with certainty that this issue is caused by the dock, or OS or both.

2 posts were split to a new topic: Razer Core X eGPU and Linux Desktop

I made it.
Seems to be a breakthrough:
I force re-flashed controller firmware (same version) using fwupdmgr and now it seems to be stable - I can even put the whole config to sleep and wake it up and it works, hopefully, flawless (at least since this re-flashing). I just read the overall mass scale reflashing of all controllers was related to the “SPI flash wearing out” - at least that is what Lenovo states in the update documentation. Seems it requires more than one re-flashing in some cases. Anyway, I’m not using any security at the moment nor BIOS Assisted Thunderbolt mode, so this is not the desired configuration. Just don’t even want to try to “tighten security” not to lose working configuration.

Regards,

P.