On Mon, Oct 28, 2024 at 12:51:21PM +0200, Mika Westerberg wrote: > Normally there is no need to enumerate retimers on the other side of the > cable. This is only needed in special cases where user wants to run > receiver lane margining against the downstream facing port of a retimer. > Furthermore this might confuse the userspace tools such as fwupd because > it cannot read the information it expects from these retimers. > > Fix this by changing the retimer enumeration code to add only on-board > retimers when CONFIG_USB4_DEBUGFS_MARGINING is not enabled. > > Reported-by: AceLan Kao <acelan.kao@xxxxxxxxxxxxx> > Closes: https://bugzilla.kernel.org/show_bug.cgi?id=219420 > Cc: stable@xxxxxxxxxxxxxxx > Fixes: ff6ab055e070 ("thunderbolt: Add receiver lane margining support for retimers") > Signed-off-by: Mika Westerberg <mika.westerberg@xxxxxxxxxxxxxxx> > --- > Hi AceLan, > > I changed the patch slightly. I wonder if you could try it again? Yes, this revision also fixes the issue. Thanks. Tested-by: AceLan Kao <acelan.kao@xxxxxxxxxxxxx> > > Thanks! > > drivers/thunderbolt/retimer.c | 2 ++ > 1 file changed, 2 insertions(+) > > diff --git a/drivers/thunderbolt/retimer.c b/drivers/thunderbolt/retimer.c > index 7db9869a9f3f..89d2919d0193 100644 > --- a/drivers/thunderbolt/retimer.c > +++ b/drivers/thunderbolt/retimer.c > @@ -532,6 +532,8 @@ int tb_retimer_scan(struct tb_port *port, bool add) > } > > ret = 0; > + if (!IS_ENABLED(CONFIG_USB4_DEBUGFS_MARGINING)) > + max = min(last_idx, max); > > /* Add retimers if they do not exist already */ > for (i = 1; i <= max; i++) { > -- > 2.45.2 >