On Mon, Dec 16, 2019 at 12:01:06PM +0100, Nicolas Saenz Julienne wrote: > This series aims at providing support for Raspberry Pi 4's PCIe > controller, which is also shared with the Broadcom STB family of > devices. > > There was a previous attempt to upstream this some years ago[1] but was > blocked as most STB PCIe integrations have a sparse DMA mapping[2] which > is something currently not supported by the kernel. Luckily this is not > the case for the Raspberry Pi 4. > > Note the series is based on top of linux next, as the DTS patch depends > on it. > > [1] https://patchwork.kernel.org/cover/10605933/ > [2] https://patchwork.kernel.org/patch/10605957/ > > --- > > Changes since v4: > - Rebase DTS patch > - Respin log2.h code into it's own series as it's still contentious > yet mostly unrelated to the PCIe part > > Changes since v3: > - Moved all the log2.h related changes at the end of the series, as I > presume they will be contentious and I don't want the PCIe patches > to depend on them. Ultimately I think I'll respin them on their own > series but wanted to keep them in for this submission just for the > sake of continuity. > - Addressed small nits here and there. > > Changes since v2: > - Redo register access in driver avoiding indirection while keeping > the naming intact > - Add patch editing ARM64's config > - Last MSI cleanups, notably removing MSIX flag > - Got rid of all _RB writes > - Got rid of all of_data > - Overall churn removal > - Address the rest of Andrew's comments > > Changes since v1: > - add generic rounddown/roundup_pow_two64() patch > - Add MAINTAINERS patch > - Fix Kconfig > - Cleanup probe, use up to date APIs, exit on MSI failure > - Get rid of linux,pci-domain and other unused constructs > - Use edge triggered setup for MSI > - Cleanup MSI implementation > - Fix multiple cosmetic issues > - Remove supend/resume code > > Jim Quinlan (3): > dt-bindings: PCI: Add bindings for brcmstb's PCIe device > PCI: brcmstb: Add Broadcom STB PCIe host controller driver > PCI: brcmstb: Add MSI support > > Nicolas Saenz Julienne (3): > ARM: dts: bcm2711: Enable PCIe controller > MAINTAINERS: Add brcmstb PCIe controller > arm64: defconfig: Enable Broadcom's STB PCIe controller > > .../bindings/pci/brcm,stb-pcie.yaml | 97 ++ > MAINTAINERS | 4 + > arch/arm/boot/dts/bcm2711.dtsi | 31 +- > arch/arm64/configs/defconfig | 1 + > drivers/pci/controller/Kconfig | 9 + > drivers/pci/controller/Makefile | 1 + > drivers/pci/controller/pcie-brcmstb.c | 1007 +++++++++++++++++ > 7 files changed, 1149 insertions(+), 1 deletion(-) > create mode 100644 Documentation/devicetree/bindings/pci/brcm,stb-pcie.yaml > create mode 100644 drivers/pci/controller/pcie-brcmstb.c Applied patches [1,3,4] to pci/brcmstb, please have a look to check everything is in order after the minor update I included. Thanks ! Lorenzo