[”PATCH” v2 0/5] Asynchronous linkdown recovery

From: bpeled
Date: Wed Apr 14 2021 - 09:21:24 EST


From: Ben Peled <bpeled@xxxxxxxxxxx>

The following patches implement the required procedure to handle and recover from asynchronous PCIE link down events on Armada SoCs.

The procedure is defined as the following:
1) Prevent new access to the PCI-E I/F by disabling the LTSSM
2) Flush all pending transaction/access to the PCI-E I/F
3) HW reset the PCIE end point device (based on board support)
4) Reset the PCIE MAC
5) Reinitialize the PCIE root complex and enable the LTSSM

The execution of this procedure is triggered by the PCIE RST_LINK_DOWN interrupt

v1 --> v2
- Add missing device reset to link-down handle

Ben Peled (5):
PCI: armada8k: Disable LTSSM on link down interrupts
PCI: armada8k: Add link-down handle
dt-bindings: pci: add system controller and MAC reset bit to
Armada 7K/8K controller bindings
arm64: dts: marvell: add pcie mac reset to pcie
PCI: armada8k: add device reset to link-down handle

Documentation/devicetree/bindings/pci/pci-armada8k.txt | 6 +
arch/arm64/boot/dts/marvell/armada-cp11x.dtsi | 7 ++
drivers/pci/controller/dwc/pcie-armada8k.c | 127 ++++++++++++++++++++
3 files changed, 140 insertions(+)

--
2.7.4