pci: mvebu: Add PCIe driver

This adds a PCI driver for the controllers found on Marvell MVEBU SoCs.

Besides the driver, this patch also removes the statically defined
PCI MBUS windows. As they are not needed anymore, since this PCIe
driver now creates the windows dynamically.

Tested on Armada XP db-mv784mp-gp eval board using an Intel E1000
PCIe card in all 3 PCIe slots. And on the Armada 38x db-88f6820-gp
eval board using this Intel E1000 PCIe card in the PCIe 0 slot.

This port was done in cooperation with Anton Schubert.

Signed-off-by: Anton Schubert <anton.schubert@gmx.de>
Signed-off-by: Stefan Roese <sr@denx.de>
Cc: Luka Perkov <luka.perkov@sartura.hr>
Cc: Dirk Eibach <eibach@gdsys.de>
This commit is contained in:
Anton Schubert
2015-08-11 11:54:01 +02:00
committed by Luka Perkov
parent 0ceb2dae78
commit 9c28d61c8e
3 changed files with 424 additions and 8 deletions

View File

@@ -18,14 +18,6 @@
#define DDR_SIZE_CS_OFF(n) (0x0004 + ((n) << 3))
static struct mbus_win windows[] = {
/* PCIE MEM address space */
{ MBUS_PCI_MEM_BASE, MBUS_PCI_MEM_SIZE,
CPU_TARGET_PCIE13, CPU_ATTR_PCIE_MEM },
/* PCIE IO address space */
{ MBUS_PCI_IO_BASE, MBUS_PCI_IO_SIZE,
CPU_TARGET_PCIE13, CPU_ATTR_PCIE_IO },
/* SPI */
{ MBUS_SPI_BASE, MBUS_SPI_SIZE,
CPU_TARGET_DEVICEBUS_BOOTROM_SPI, CPU_ATTR_SPIFLASH },