]> git.baikalelectronics.ru Git - kernel.git/commit
PCI: aardvark: Add support for AER registers on emulated bridge
authorPali Rohár <pali@kernel.org>
Tue, 24 May 2022 13:28:26 +0000 (15:28 +0200)
committerBjorn Helgaas <bhelgaas@google.com>
Mon, 13 Jun 2022 23:41:10 +0000 (18:41 -0500)
commit394efbf0435e7ae7967f073adfa7787ec93d19e7
tree14ce6f576971ae5d7de51879b1eeafcf659acc69
parentf040cca4b0da0180bf9de9141ef5c95f60f85182
PCI: aardvark: Add support for AER registers on emulated bridge

Aardvark controller supports Advanced Error Reporting configuration
registers.

Export these registers on the emulated root bridge via new .read_ext() and
.write_ext() methods.

Note that in the Advanced Error Reporting Capability header the offset to
the next Extended Capability header is set, but it is not documented in
Armada 3700 Functional Specification. Since this change adds support only
for Advanced Error Reporting, explicitly clear PCI_EXT_CAP_NEXT bits in AER
capability header.

Now the pcieport driver correctly detects AER support and allows PCIe AER
driver to start receiving ERR interrupts. Kernel log now says:

  pcieport 0000:00:00.0: AER: enabled with IRQ 52

Link: https://lore.kernel.org/r/20220524132827.8837-2-kabel@kernel.org
Signed-off-by: Pali Rohár <pali@kernel.org>
Signed-off-by: Marek Behún <kabel@kernel.org>
Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
drivers/pci/controller/pci-aardvark.c