linux-pci.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH V2 0/1] Proposal of a patch to work around link retrain errata of Pericom PCIe brigdes
@ 2019-03-05 17:31 Stefan Mätje
  2019-03-05 17:31 ` [PATCH V2 1/1] PCI/ASPM: Work around link retrain errata of Pericom PCIe-to-PCI bridges Stefan Mätje
  0 siblings, 1 reply; 4+ messages in thread
From: Stefan Mätje @ 2019-03-05 17:31 UTC (permalink / raw)
  To: bhelgaas, rafael.j.wysocki, ptalbert, lukas, fred,
	andriy.shevchenko, bhull, linux-pci
  Cc: Stefan Mätje

This patch provides a quirk that should work around PCIe link retrain issues
with some Pericom PCIe-to-PCI bridges. It is the second version of the patch
referred to by https://patchwork.kernel.org/patch/10664475/ and is archived
at https://marc.info/?l=linux-pci&m=154110439803920

The original patch was only for the Pericom PI7C9X111SL bridge. This is the
only hardware I can test with.

In the meantime Brett Hull <bhull@redhat.com> brought to my attention that
the PI7C9X110 and PI7C9X130 devices are also affected. I had access to the
errata sheet for the PI7C9X130 PCI bridge and its has the same issue
documented.

Therefore the patch will now handle all three mentioned devices.

I'd like to quote the errata sheet PI7C9X111SLB_errata_rev1.2_102711.pdf

> In Reverse Mode, retrain Link bit is not cleared automatically; this bit
> needs to be cleared manually by configuration write after it is set.
>
> Problem:
> In Reverse mode, after setting Retrain Link (bit 5 of register C0h), this
> bit will stay on and PI7C9x111SL will continuously retrain until this bit
> is cleared by another Configuration Write to register C0h.
>
> Workaround:
> Issue another configuration write to clear Retrain Link bit after setting
> this bit. No delay is required between these two configuration write.

There is no public URL to download these errata sheets. Because Pericom has
been acquired by Diodes Inc. all information has to be downloaded from their
web site. Following the link below one can find a datasheet and there is a
button to request additional documents like the errata sheet for instance.

https://www.diodes.com/products/connectivity-and-timing/pcie-packet-switchbridges/pcie-pci-bridges/part/PI7C9X111SL#tab-details

@Brett Hull: Could you please test on your site and supply also a
	signed-off?

Stefan Mätje (1):
  PCI/ASPM: Work around link retrain errata of Pericom PCIe-to-PCI
    bridges

 drivers/pci/pcie/aspm.c | 49 ++++++++++++++++++++++++++++++++++---------------
 drivers/pci/quirks.c    | 20 ++++++++++++++++++++
 include/linux/pci.h     |  2 ++
 3 files changed, 56 insertions(+), 15 deletions(-)

--
2.15.0


^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2019-03-07 15:16 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-03-05 17:31 [PATCH V2 0/1] Proposal of a patch to work around link retrain errata of Pericom PCIe brigdes Stefan Mätje
2019-03-05 17:31 ` [PATCH V2 1/1] PCI/ASPM: Work around link retrain errata of Pericom PCIe-to-PCI bridges Stefan Mätje
2019-03-06  7:03   ` Andy Shevchenko
2019-03-07 15:16     ` Stefan Mätje

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).