]> git.baikalelectronics.ru Git - kernel.git/commit
PCI: iproc: Add PAXC interface support
authorRay Jui <rjui@broadcom.com>
Fri, 4 Dec 2015 17:34:59 +0000 (09:34 -0800)
committerBjorn Helgaas <bhelgaas@google.com>
Mon, 7 Dec 2015 16:35:29 +0000 (10:35 -0600)
commitc6fc5bc9ccd197f8045748381155e146a7480cf1
treec8a23f7d62d7faff13e2266f521413e3333cd6b6
parent9b7dd5e551facafdbab7393fac7327ecbeba7fb0
PCI: iproc: Add PAXC interface support

Traditionally, all iProc PCIe root complexes use PAXB-based wrapper, with
an integrated on-chip Serdes to support external endpoint devices.  On
newer iProc platforms, a PAXC-based wrapper is introduced, for connection
with internally emulated PCIe endpoint devices in the ASIC.

Add support for PAXC-based iProc PCIe root complex in the iProc PCIe core
driver.  This change factors out common logic between PAXB and PAXC, and
uses tables to store register offsets that are different between PAXB and
PAXC.  This allows the driver to be scaled to support subsequent PAXC
revisions in the future.

Signed-off-by: Ray Jui <rjui@broadcom.com>
Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
Reviewed-by: Scott Branden <sbranden@broadcom.com>
drivers/pci/host/pcie-iproc-platform.c
drivers/pci/host/pcie-iproc.c
drivers/pci/host/pcie-iproc.h