Hi all,
This patch series adds USB host support for Raspberry Pi 4 board.
It includes the Broadcom STB PCIe driver ported from Linux kernel,
a memory mapping update for the xHCI controller behind a PCIe bridge
for 32-bit and 64-bit system builds and some related fixes and updates
in the usb/xhci and the pci core code.
Any changes since previous (RFC) version are listed in individual
patches. The most significant change was rewriting the PCIe driver
to align with current mainline Linux kernel version. As suggested,
readq/writeq have been removed from xhci_{readq/writeq} helpers
instead of adding a Kconfig option.
This patch series is based on v2020.04 tag.
Regards,
Sylwester
Marek Szyprowski (4):
rpi4: shorten a mapping for the DRAM
rpi4: add a mapping for the PCIe XHCI controller MMIO registers (ARM
64bit)
rpi4: add a mapping for the PCIe XHCI controller MMIO registers (ARM
32bit)
config: Enable support for the XHCI controller on RPI4 board
Nicolas Saenz Julienne (1):
linux/bitfield.h: Add primitives for manipulating bitfields both in
host- and fixed-endian.
Sylwester Nawrocki (5):
usb: xhci: Add missing cache flush in the scratchpad array
initialization
usb: xhci: Use only 32-bit accesses in xhci_writeq/xhci_readq
pci: Move some PCIe register offset definitions to a common header
pci: Add some PCI Express capability register offset definitions
pci: Add driver for Broadcom STB PCIe controller
arch/arm/mach-bcm283x/Kconfig | 1 +
arch/arm/mach-bcm283x/include/mach/base.h | 7 +
arch/arm/mach-bcm283x/init.c | 72 +++-
configs/rpi_4_32b_defconfig | 9 +
configs/rpi_4_defconfig | 10 +
configs/rpi_arm64_defconfig | 9 +-
drivers/pci/Kconfig | 6 +
drivers/pci/Makefile | 1 +
drivers/pci/pci-rcar-gen3.c | 8 -
drivers/pci/pcie_brcmstb.c | 593 ++++++++++++++++++++++++++++++
drivers/pci/pcie_intel_fpga.c | 3 -
drivers/usb/host/xhci-mem.c | 3 +
include/linux/bitfield.h | 46 +++
include/pci.h | 19 +-
include/usb/xhci.h | 8 -
15 files changed, 769 insertions(+), 26 deletions(-)
create mode 100644 drivers/pci/pcie_brcmstb.c