I have a Dell XPS 13 9350 laptop with a Dell Thunderbolt 3 dock (TB15) that I'm trying to get to talk to each other. * The dock appears as a usb hub when I run lspci and lsusb but I can't see any usb devices that I attach or the audio and network controllers in the dock * If I attach the dock after boot not even the usb hub shows up All firmware is updated as of 2016 apr 05 Could be related to https://bugzilla.kernel.org/show_bug.cgi?id=115121
Created attachment 211851 [details] dmesg with dock attached on boot
Created attachment 211861 [details] lscpi -vv with dock attached on boot
Created attachment 211871 [details] lsusb -vv with dock attached on boot
Martin, please try http://marc.info/?l=linux-acpi&m=145929159015853&w=2 and let us know if it works. Users in https://bugzilla.kernel.org/show_bug.cgi?id=115121 have had positive testing results. Thanks, P.
Oh wait. Sorry, I just noticed your issue is with the DOCK. Yes -- the Thunderbolt3 dock will NOT work with Linux ATM because of a lack of support :(. The 0x1576 ID has been introduced via a pci_id patchset, however, no support exists yet for it. What the above patch will do, however, is at least prevent the system from hanging or spitting out task hung messages, so the test is still worthwhile IMO. P.
Thanks for the feedback! I will try the patch and report back. The patch doesn't apply on 4.6-rc2 though but I can try it on 4.5. Regarding thunderbolt3, that's what I thought. Dell are supposedly working with Intel to get it implemented [1]. But who want's to wait? ;) [1] http://en.community.dell.com/techcenter/os-applications/f/4613/p/19678284/20890806?rfsh=1457684236357
Sorry, the patch does apply. I'm compiling a kernel right now.
This is what happens when i hotplug in 4.6-rc2 (from dmesg): [53663.089646] ACPI Error: [\_SB_.PCI0.LPCB.H_EC.CHRG] Namespace lookup failure, AE_NOT_FOUND (20160108/psargs-359) [53663.089651] ACPI Error: Method parse/execution failed [\PNOT] (Node ffff88046e0ce4b0), AE_NOT_FOUND (20160108/psparse-542) [53663.089655] ACPI Error: Method parse/execution failed [\_SB.AC._PSR] (Node ffff88046e0e12a8), AE_NOT_FOUND (20160108/psparse-542) [53663.089659] ACPI Exception: AE_NOT_FOUND, Error reading AC Adapter state (20160108/ac-128) I have no issues with hung tasks. This happens when I unplug the dock: [53750.575424] ACPI Error: [\_SB_.PCI0.LPCB.H_EC.CHRG] Namespace lookup failure, AE_NOT_FOUND (20160108/psargs-359) [53750.575446] ACPI Error: Method parse/execution failed [\PNOT] (Node ffff88046e0ce4b0), AE_NOT_FOUND (20160108/psparse-542) [53750.575452] ACPI Error: Method parse/execution failed [\_SB.AC._PSR] (Node ffff88046e0e12a8), AE_NOT_FOUND (20160108/psparse-542) [53750.575466] ACPI Exception: AE_NOT_FOUND, Error reading AC Adapter state (20160108/ac-128) With the patch applied the kernel detects a bunch of new pci-devices. As expected the dock is not functional but it is at least detected! 4.6-rc2+patch hotplug: [ 66.296077] ACPI Error: [SPRT] Namespace lookup failure, AE_ALREADY_EXISTS (20160108/dswload2-330) [ 66.296083] ACPI Exception: AE_ALREADY_EXISTS, During name lookup/catalog (20160108/psobject-227) [ 66.296085] ACPI Error: Method parse/execution failed [\_GPE._E42] (Node ffff88046e0cee38), AE_ALREADY_EXISTS (20160108/psparse-542) [ 66.296091] ACPI Error: Method parse/execution failed [\_GPE._E42] (Node ffff88046e0cee38), AE_ALREADY_EXISTS (20160108/psparse-542) [ 66.296096] ACPI Exception: AE_ALREADY_EXISTS, while evaluating GPE method [_E42] (20160108/evgpe-592) [ 66.349057] pci 0000:01:00.0: [8086:1576] type 01 class 0x060400 [ 66.349245] pci 0000:01:00.0: supports D1 D2 [ 66.349248] pci 0000:01:00.0: PME# supported from D0 D1 D2 D3hot D3cold [ 66.349432] pci 0000:01:00.0: System wakeup disabled by ACPI [ 66.351799] pci 0000:02:00.0: [8086:1576] type 01 class 0x060400 [ 66.351993] pci 0000:02:00.0: supports D1 D2 [ 66.351996] pci 0000:02:00.0: PME# supported from D0 D1 D2 D3hot D3cold [ 66.352171] pci 0000:02:01.0: [8086:1576] type 01 class 0x060400 [ 66.352346] pci 0000:02:01.0: supports D1 D2 [ 66.352348] pci 0000:02:01.0: PME# supported from D0 D1 D2 D3hot D3cold [ 66.352506] pci 0000:02:02.0: [8086:1576] type 01 class 0x060400 [ 66.352679] pci 0000:02:02.0: supports D1 D2 [ 66.352681] pci 0000:02:02.0: PME# supported from D0 D1 D2 D3hot D3cold [ 66.352877] pci 0000:01:00.0: PCI bridge to [bus 02-39] [ 66.352888] pci 0000:01:00.0: bridge window [mem 0xc4000000-0xda0fffff] [ 66.352906] pci 0000:01:00.0: bridge window [mem 0xa0000000-0xc1ffffff 64bit pref] [ 66.353010] pci 0000:03:00.0: [8086:1575] type 00 class 0x088000 [ 66.353043] pci 0000:03:00.0: reg 0x10: [mem 0xda000000-0xda03ffff] [ 66.353067] pci 0000:03:00.0: reg 0x14: [mem 0xda040000-0xda040fff] [ 66.353282] pci 0000:03:00.0: supports D1 D2 [ 66.353284] pci 0000:03:00.0: PME# supported from D0 D1 D2 D3hot D3cold [ 66.353464] pci 0000:02:00.0: PCI bridge to [bus 03] [ 66.353486] pci 0000:02:00.0: bridge window [mem 0xda000000-0xda0fffff] [ 66.353583] pci 0000:02:01.0: PCI bridge to [bus 04-38] [ 66.353604] pci 0000:02:01.0: bridge window [mem 0xc4000000-0xd9efffff] [ 66.353611] pci 0000:02:01.0: bridge window [mem 0xa0000000-0xc1ffffff 64bit pref] [ 66.353696] pci 0000:02:02.0: PCI bridge to [bus 39] [ 66.353705] pci 0000:02:02.0: bridge window [mem 0xd9f00000-0xd9ffffff] [ 66.353749] pci_bus 0000:02: Allocating resources [ 66.353819] pci 0000:02:01.0: bridge window [io 0x1000-0x0fff] to [bus 04-38] add_size 1000 [ 66.353850] pci 0000:02:01.0: res[13]=[io 0x1000-0x0fff] res_to_dev_res add_size 1000 min_align 1000 [ 66.353852] pci 0000:01:00.0: bridge window [io 0x1000-0x0fff] to [bus 02-39] add_size 1000 [ 66.353855] pci 0000:01:00.0: res[13]=[io 0x1000-0x0fff] res_to_dev_res add_size 1000 min_align 1000 [ 66.353857] pci 0000:01:00.0: res[13]=[io 0x1000-0x1fff] res_to_dev_res add_size 1000 min_align 1000 [ 66.353860] pci 0000:01:00.0: BAR 13: assigned [io 0x2000-0x2fff] [ 66.353863] pci 0000:02:01.0: res[13]=[io 0x1000-0x0fff] res_to_dev_res add_size 1000 min_align 1000 [ 66.353865] pci 0000:02:01.0: res[13]=[io 0x1000-0x1fff] res_to_dev_res add_size 1000 min_align 1000 [ 66.353867] pci 0000:02:01.0: BAR 13: assigned [io 0x2000-0x2fff] [ 66.353869] pci 0000:02:00.0: PCI bridge to [bus 03] [ 66.353876] pci 0000:02:00.0: bridge window [mem 0xda000000-0xda0fffff] [ 66.353897] pci 0000:02:01.0: PCI bridge to [bus 04-38] [ 66.353900] pci 0000:02:01.0: bridge window [io 0x2000-0x2fff] [ 66.353906] pci 0000:02:01.0: bridge window [mem 0xc4000000-0xd9efffff] [ 66.353911] pci 0000:02:01.0: bridge window [mem 0xa0000000-0xc1ffffff 64bit pref] [ 66.353918] pci 0000:02:02.0: PCI bridge to [bus 39] [ 66.353935] pci 0000:02:02.0: bridge window [mem 0xd9f00000-0xd9ffffff] [ 66.353945] pci 0000:01:00.0: PCI bridge to [bus 02-39] [ 66.353948] pci 0000:01:00.0: bridge window [io 0x2000-0x2fff] [ 66.353954] pci 0000:01:00.0: bridge window [mem 0xc4000000-0xda0fffff] [ 66.353958] pci 0000:01:00.0: bridge window [mem 0xa0000000-0xc1ffffff 64bit pref] [ 66.354148] pcieport 0000:01:00.0: enabling device (0006 -> 0007) [ 66.354693] pcieport 0000:02:01.0: enabling device (0006 -> 0007) Unplug: [ 233.763575] pci_bus 0000:02: Allocating resources [ 243.857273] pci_bus 0000:03: busn_res: [bus 03] is released [ 243.857457] pci_bus 0000:04: busn_res: [bus 04-38] is released [ 243.857613] pci_bus 0000:39: busn_res: [bus 39] is released [ 243.857762] pci_bus 0000:02: busn_res: [bus 02-39] is released
Thanks Martin. When I plug the Dell dock in here I see very similar warnings: [ 374.978633] ACPI Error: [SPRT] Namespace lookup failure, AE_ALREADY_EXISTS (20160108/dswload2-330) [ 374.979059] ACPI Exception: AE_ALREADY_EXISTS, During name lookup/catalog (20160108/psobject-227) [ 374.979488] ACPI Error: Method parse/execution failed [\_GPE._E42] (Node ffff8804714e55c8), AE_ALREADY_EXISTS (20160108/psparse-542) [ 374.980140] ACPI Error: Method parse/execution failed [\_GPE._E42] (Node ffff8804714e55c8), AE_ALREADY_EXISTS (20160108/psparse-542) [ 374.980565] ACPI Exception: AE_ALREADY_EXISTS, while evaluating GPE method [_E42] (20160108/evgpe-592) but the PCI bridges appear, as does the Thunderbolt NHI. I dunno what to do with this BZ :/. It is really a lack of support that is the problem and like you've pointed out, Dell & Intel are working on that. Perhaps I can try and find someone who is involved in that effort ... P.
It would be very cool it you could figure something out about the Thunderbolt3 support. I'm more than willing to beta test any patches.
For me the dsmethod patch fixed the dock. Here is the first scenario as I just got the dock to work. -Patch dsmethod. -Compile 4.6-rc2 -Boot into new kernel. -After X starts I plugged in thunderbolt 3 for wd15 dock -Nothing shows up on external monitor that is plugged into dock but xrandr shows a new monitor "DP1-1". (Note: when I plugged in same monitor via a thunderbolt adapter it will show as DP1.) -Ran my xrandr script -Monitor connected to dock is now displaying screen -Connected corsair keyboard via usb 3 on dock (works) -Connected razer mouse via usb on dock (works) I haven't tried to boot with the dock attached nor have I unplugged dock.
Created attachment 212281 [details] Dmesg of dock working with dsmethod patch
Hi, The Dell WD15 dock doesn't appear to be a thunderbolt dock. It uses Display Port and usb over the usb-c connector but there is no mention of thunderbolt. I'm glad the patch worked for you though!
Hi Martin, Sorry to create the noise. Upon another glance at the specs you are completely right on this one. The WD 15 does not feature the thunderbolt 3. I didn't pay too much attention. Good luck on the TB15 connectivity.