From: James Taylor <jrtaylor11@gmail.com>
To: mika.westerberg@linux.intel.com
Cc: linux-usb@vger.kernel.org
Subject: Re: thunderbolt: AMD Phoenix USB4 host advertises Gen3 Support=0 in SB LINK_CONF with TB5 device, link stuck at Gen2
Date: Mon, 09 Nov 2026 11:25:45 +0000 [thread overview]
Message-ID: <1794223545.366398.reply.hermes@gmail.com> (raw)
In-Reply-To: <20261109111852.GQ176724@black.igk.intel.com>
[-- Attachment #1: Type: text/plain, Size: 7509 bytes --]
Hi Mika,
On Mon, Nov 09, 2026 at 12:18:52PM +0100, Mika Westerberg wrote:
> Please use tbdump from tbtools [1]. It knows the registers. Something like
> this:
>
> https://github.com/intel/tbtools/wiki/Useful-Commands#dump-lane-adapter-capability-for-current-link-capabilities-and-status
Thanks, here it is (tbtools 0.8.0). Domain 1 route 0 is the AMD host
router, route 2 is the DEG2 (JHL9480). Both lane adapters on each side
are included, followed by tbadapters for reference.
tbtools 0.8.0, kernel 7.2.15, BIOS 1.06, 2026-11-09 11:23 UTC
# tblist -A
Domain 0
Domain 0 Route 0: 0000:0000
Domain 1
Domain 1 Route 0: 0000:0000
Domain 1 Route 0 Adapter 2 Index 1: 7fea:1032
Domain 1 Route 2: 041f:d002 Micro Computer (HK) Tech. Ltd. TBGAA
# tbdump -d 1 -r 0 -a 2 -N 2 -vv LANE_ADP_CS_0
0x0080 0x003c01c0 0b00000000 00111100 00000001 11000000 .<.. LANE_ADP_CS_0
[00:07] 0xc0 Next Capability Pointer
[08:15] 0x1 Capability ID
[16:19] 0xc Supported Link Speeds
[20:21] 0x3 Supported Link Widths (SLW)
[22:23] 0x0 Gen 4 Asymmetric Support (G4AS)
[26:26] 0x0 CL0s Support
[27:27] 0x0 CL1 Support
[28:28] 0x0 CL2 Support
0x0081 0x4828003c 0b01001000 00101000 00000000 00111100 H(.< LANE_ADP_CS_1
[00:03] 0xc Target Link Speed → Router shall attempt Gen 3 speed
[04:05] 0x3 Target Link Width → Establish a Symmetric Link
[06:07] 0x0 Target Asymmetric Link → Establish Symmetric Link
[10:10] 0x0 CL0s Enable
[11:11] 0x0 CL1 Enable
[12:12] 0x0 CL2 Enable
[14:14] 0x0 Lane Disable (LD)
[15:15] 0x0 Lane Bonding (LB)
[16:19] 0x8 Current Link Speed → Gen 2
[20:25] 0x2 Negotiated Link Width → Symmetric Link (x2)
[26:29] 0x2 Adapter State → CL0
[30:30] 0x1 PM Secondary (PMS)
# tbdump -d 1 -r 0 -a 3 -N 2 -vv LANE_ADP_CS_0
0x0080 0x003c0100 0b00000000 00111100 00000001 00000000 .<.. LANE_ADP_CS_0
[00:07] 0x0 Next Capability Pointer
[08:15] 0x1 Capability ID
[16:19] 0xc Supported Link Speeds
[20:21] 0x3 Supported Link Widths (SLW)
[22:23] 0x0 Gen 4 Asymmetric Support (G4AS)
[26:26] 0x0 CL0s Support
[27:27] 0x0 CL1 Support
[28:28] 0x0 CL2 Support
0x0081 0x4828003c 0b01001000 00101000 00000000 00111100 H(.< LANE_ADP_CS_1
[00:03] 0xc Target Link Speed → Router shall attempt Gen 3 speed
[04:05] 0x3 Target Link Width → Establish a Symmetric Link
[06:07] 0x0 Target Asymmetric Link → Establish Symmetric Link
[10:10] 0x0 CL0s Enable
[11:11] 0x0 CL1 Enable
[12:12] 0x0 CL2 Enable
[14:14] 0x0 Lane Disable (LD)
[15:15] 0x0 Lane Bonding (LB)
[16:19] 0x8 Current Link Speed → Gen 2
[20:25] 0x2 Negotiated Link Width → Symmetric Link (x2)
[26:29] 0x2 Adapter State → CL0
[30:30] 0x1 PM Secondary (PMS)
# tbdump -d 1 -r 2 -a 1 -N 2 -vv LANE_ADP_CS_0
0x0036 0x0cfe01c0 0b00001100 11111110 00000001 11000000 .... LANE_ADP_CS_0
[00:07] 0xc0 Next Capability Pointer
[08:15] 0x1 Capability ID
[16:19] 0xe Supported Link Speeds
[20:21] 0x3 Supported Link Widths (SLW)
[22:23] 0x3 Gen 4 Asymmetric Support (G4AS)
[26:26] 0x1 CL0s Support
[27:27] 0x1 CL1 Support
[28:28] 0x0 CL2 Support
0x0037 0x4828003e 0b01001000 00101000 00000000 00111110 H(.> LANE_ADP_CS_1
[00:03] 0xe Target Link Speed → Router shall attempt Gen 4 speed
[04:05] 0x3 Target Link Width → Establish a Symmetric Link
[06:07] 0x0 Target Asymmetric Link → Establish Symmetric Link
[10:10] 0x0 CL0s Enable
[11:11] 0x0 CL1 Enable
[12:12] 0x0 CL2 Enable
[14:14] 0x0 Lane Disable (LD)
[15:15] 0x0 Lane Bonding (LB)
[16:19] 0x8 Current Link Speed → Gen 2
[20:25] 0x2 Negotiated Link Width → Symmetric Link (x2)
[26:29] 0x2 Adapter State → CL0
[30:30] 0x1 PM Secondary (PMS)
# tbdump -d 1 -r 2 -a 2 -N 2 -vv LANE_ADP_CS_0
0x0036 0x0cfe0100 0b00001100 11111110 00000001 00000000 .... LANE_ADP_CS_0
[00:07] 0x0 Next Capability Pointer
[08:15] 0x1 Capability ID
[16:19] 0xe Supported Link Speeds
[20:21] 0x3 Supported Link Widths (SLW)
[22:23] 0x3 Gen 4 Asymmetric Support (G4AS)
[26:26] 0x1 CL0s Support
[27:27] 0x1 CL1 Support
[28:28] 0x0 CL2 Support
0x0037 0x4828003e 0b01001000 00101000 00000000 00111110 H(.> LANE_ADP_CS_1
[00:03] 0xe Target Link Speed → Router shall attempt Gen 4 speed
[04:05] 0x3 Target Link Width → Establish a Symmetric Link
[06:07] 0x0 Target Asymmetric Link → Establish Symmetric Link
[10:10] 0x0 CL0s Enable
[11:11] 0x0 CL1 Enable
[12:12] 0x0 CL2 Enable
[14:14] 0x0 Lane Disable (LD)
[15:15] 0x0 Lane Bonding (LB)
[16:19] 0x8 Current Link Speed → Gen 2
[20:25] 0x2 Negotiated Link Width → Symmetric Link (x2)
[26:29] 0x2 Adapter State → CL0
[30:30] 0x1 PM Secondary (PMS)
# tbadapters -d 1 -r 0
1: Host Interface (upstream) Enabled
2: Lane 0 CL0
3: Lane 0 CL0
4: USB 3 Down Disabled
5: PCIe Down L0
6: DisplayPort IN Disabled
7: DisplayPort IN Disabled
# tbadapters -d 1 -r 2
1: Lane 0 (upstream) CL0
2: Lane 1 CL0
3: Lane 0 CLd
4: Lane 1 CLd
5: Lane 0 CLd
6: Lane 1 CLd
7: Lane 0 CLd
8: Lane 1 CLd
9: PCIe Up L0
10: PCIe Down Disabled
11: DisplayPort OUT Disabled
12: DisplayPort OUT Disabled
13: Not implemented
14: Not implemented
15: Not implemented
16: Not implemented
17: PCIe Down Disabled
18: PCIe Down Disabled
19: DisplayPort OUT Disabled
20: USB 3 Up Disabled
21: USB 3 Down Disabled
22: USB 3 Down Disabled
23: USB 3 Down Disabled
> Also please provide full dmesg with dynamic debugging enabled.
Attached (dmesg-tb-dyndbg-20261109.txt.gz, gzipped to stay under the
list size limit). It is the full log since boot; at 68136.012005 I
reloaded the driver with "modprobe thunderbolt host_reset=0 dyndbg=+p"
so the whole enumeration of the host routers, the retimer and the DEG2
is captured with debug output. The link came up the same way again,
2 x Gen2 ("current link speed 10.0 Gb/s", "link: TBT"). The only edits
to the log are masked MAC and IP addresses.
Happy to run anything else that would help.
Thanks,
James
[-- Attachment #2: dmesg-tb-dyndbg-20261109.txt.gz --]
[-- Type: application/gzip, Size: 36429 bytes --]
next prev parent reply other threads:[~2026-11-09 11:26 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-11-08 13:15 thunderbolt: AMD Phoenix USB4 host advertises Gen3 Support=0 in SB LINK_CONF with TB5 device, link stuck at Gen2 James Taylor
2026-11-09 11:18 ` Mika Westerberg
2026-11-09 11:25 ` James Taylor [this message]
2026-11-09 14:20 ` Mika Westerberg
2026-11-09 14:39 ` James R Taylor
2026-11-09 15:39 ` Mika Westerberg
2026-11-09 15:41 ` James R Taylor
2026-11-09 15:50 ` Mika Westerberg
2026-11-09 15:53 ` James R Taylor
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1794223545.366398.reply.hermes@gmail.com \
--to=jrtaylor11@gmail.com \
--cc=linux-usb@vger.kernel.org \
--cc=mika.westerberg@linux.intel.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox