Skip to content
Commit acd61ffb authored by Nathan Rossi's avatar Nathan Rossi Committed by Bjorn Helgaas
Browse files

PCI: Add ACS quirk for Pericom PI7C9X2G switches

The Pericom PI7C9X2G404/PI7C9X2G304/PI7C9X2G303 PCIe switches have an
erratum for ACS P2P Request Redirect behaviour when used in the cut-through
forwarding mode. The recommended work around for this issue is to use the
switch in store and forward mode. The erratum results in packets being
queued and not being delivered upstream, which can be observed as very poor
downstream device performance and/or dropped device-generated
data/interrupts.

Add a fixup so that when enabling or resuming the downstream port we check
if it has enabled ACS P2P Request Redirect, and if so, change the device
(via the upstream port) to use the store and forward operating mode.

Link: https://bugzilla.kernel.org/show_bug.cgi?id=177471
Link: https://lore.kernel.org/r/20210910025823.196508-1-nathan@nathanrossi.com


Tested-by: default avatarAlex Williamson <alex.williamson@redhat.com>
Signed-off-by: default avatarNathan Rossi <nathan.rossi@digi.com>
Signed-off-by: default avatarBjorn Helgaas <bhelgaas@google.com>
parent e3f4bd34
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment