Re: [PATCH v4] PCI: Relabel JHL6540 on Lenovo X1 Carbon 7,8

Lukas Wunner
2024-07-28T15:41:16Z

On Wed, Jun 26, 2024 at 11:59:45AM +0300, Mika Westerberg wrote:
> On Wed, Jun 26, 2024 at 10:50:22AM +0200, Lukas Wunner wrote:
> > On Mon, Jun 24, 2024 at 11:58:46AM -0400, Esther Shimanovich wrote:
> > > On Wed, May 15, 2024 at 4:45???PM Lukas Wunner <lukas@wunner.de> wrote:
> > > > Could you add this to the command line:
> > > > thunderbolt.dyndbg ignore_loglevel log_buf_len=10M
> > > >
> > > > and this to your kernel config:
> > > > CONFIG_DYNAMIC_DEBUG=y
> > > >
> > > > You should see "... is associated with ..." messages in dmesg.
> > >
> > > I tried Lukas's patches again, after enabling the Thunderbolt driver
> > > in the config and also verbose messages, so that I can see
> > > "thunderbolt:" messages, but it still never reaches the
> > > tb_pci_notifier_call function. I don't see "associated with" in any of
> > > the logs. The config on the image I am testing does not have the
> > > thunderbolt driver enabled by default, so this patch wouldn't help my
> > > use case even if I did manage to get it to work.
> >
> > Mika, what do you make of this? Are the ChromeBooks in question
> > using ICM-based tunneling instead of native tunneling? I thought
> > this is all native nowadays and ICM is only used on older (pre-USB4)
> > products.
>
> I think these are not Chromebooks. They are "regular" PCs with
> Thunderbolt 3 host controller which is ICM as you suggest.
>
> There is still Maple Ridge and Tiger Lake (non-Chrome) that are ICM
> (firmware based connection manager) that are USB4 but everything after
> that is software based connection manager.

Even with ICM, the DROM of the root switch seems to be retrieved:

icm_start()
tb_switch_add()
tb_drom_read()

Assuming the DROM contains proper PCIe Upstream and Downstream Adapter
Entries, all the data needed to at least associate the PCIe Adapters
on the root switch should be there. So I'm surprised Esther is not
seeing *any* messages.

Do the DROMs on ICM root switches generally lack PCIe Upstream and
Downstream Adapter Entries?
What am I missing?

Thanks,

Lukas