[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAAd53p5J8xTU6Fgo8m4h5wzy7w8x4jPugonrR9DTwk-QAm8fZQ@mail.gmail.com>
Date: Wed, 21 Jun 2023 11:08:18 +0800
From: Kai-Heng Feng <kai.heng.feng@...onical.com>
To: Bjorn Helgaas <helgaas@...nel.org>
Cc: bhelgaas@...gle.com, Mario Limonciello <mario.limonciello@....com>,
Mika Westerberg <mika.westerberg@...ux.intel.com>,
Kuppuswamy Sathyanarayanan
<sathyanarayanan.kuppuswamy@...ux.intel.com>,
Vidya Sagar <vidyas@...dia.com>,
Michael Bottini <michael.a.bottini@...ux.intel.com>,
"Rafael J. Wysocki" <rafael.j.wysocki@...el.com>,
linux-pci@...r.kernel.org, linux-kernel@...r.kernel.org
Subject: Re: [PATCH] PCI/ASPM: Enable ASPM on external PCIe devices
On Sat, Jun 17, 2023 at 6:01 AM Bjorn Helgaas <helgaas@...nel.org> wrote:
>
> On Thu, Jun 15, 2023 at 03:04:20PM +0800, Kai-Heng Feng wrote:
> > When a PCIe device is hotplugged to a Thunderbolt port, ASPM is not
> > enabled for that device. However, when the device is plugged preboot,
> > ASPM is enabled by default.
> >
> > The disparity happens because BIOS doesn't have the ability to program
> > ASPM on hotplugged devices.
> >
> > So enable ASPM by default for external connected PCIe devices so ASPM
> > settings are consitent between preboot and hotplugged.
> >
> > On HP Thunderbolt Dock G4, enable ASPM can also fix BadDLLP error:
> > pcieport 0000:00:1d.0: AER: Corrected error received: 0000:07:04.0
> > pcieport 0000:07:04.0: PCIe Bus Error: severity=Corrected, type=Data Link Layer, (Receiver ID)
> > pcieport 0000:07:04.0: device [8086:0b26] error status/mask=00000080/00002000
> > pcieport 0000:07:04.0: [ 7] BadDLLP
> >
> > The root cause is still unclear, but quite likely because the I225 on
> > the dock supports PTM, where ASPM timing is precalculated for the PTM.
>
> > Link: https://bugzilla.kernel.org/show_bug.cgi?id=217557
>
> I know you said this isn't clear yet, but I don't see a connection
> between ASPM being enabled and PTM. If anything, *disabling* ASPM
> should be safer if there's a timing issue.
If PTM timing is tested when ASPM is enabled, there can be a strong
connection between the two.
I'll raise the issue to IGC devs.
>
> I assume the ASPM timing you refer to is the LTR snoop/no snoop
> latency, since that's the only timing difference I see in the lspci
> output in bugzilla?
Not only LTR. ASPM L0s and L1 are not enabled when devices are hotplugged.
Kai-Heng
>
> I don't see any PTM differences there.
>
> Bjorn
Powered by blists - more mailing lists