Re: [PATCH v4 00/10] Add PCIe support for bcm2712

From: Olivier Benjamin
Date: Mon Dec 23 2024 - 11:40:37 EST


On 10/25/24 14:45, Stanimir Varbanov wrote:
Here is v4 of the series which aims to add support for PCIe on bcm2712 SoC
used by RPi5. Previous v3 can be found at [1].

Hello Stanimir,

Thank you for you work on this!

v3 -> v4 changes include:
- Addressed comments on the interrupt-controller driver (Thomas)
- Moved "Reuse config structure" patch earlier in the series (Bjorn)
- Merged "Avoid turn off of bridge reset" into "Add bcm2712 support" (Bjorn)
- Fixed DTB warnings on broadcom/bcm2712-rpi-5-b.dtb

For more detailed info check patches.

I would simply like to report that I have (rather succintly) tested this series.
I have built a 6.13.0-rc4-v8 vanilla kernel and deployed it to a Raspberry Pi 5 equipped with a "Raspberry Pi SSD" NVMe Drive on an M.2 Hat+ connected to the main board using PCIe.
This of course did not work, and I could not see my drive.
I then applied this series on top, rebuilt and deployed the kernel, and I could see the /dev/nvme0 device and mount the ext4 fs on the 1st partition.

Comments are welcome!
~Stan

If you find it helpful, feel free to collect my Tested-By tag.

I'll be happy to do the same for future versions of the series and can do some additional testing if you want an extra pair of eyes.

Olivier

[1] https://patchwork.kernel.org/project/linux-pci/list/?series=898891

Stanimir Varbanov (10):
dt-bindings: interrupt-controller: Add bcm2712 MSI-X DT bindings
dt-bindings: PCI: brcmstb: Update bindings for PCIe on bcm2712
irqchip: Add Broadcom bcm2712 MSI-X interrupt controller
PCI: brcmstb: Reuse config structure
PCI: brcmstb: Expand inbound window size up to 64GB
PCI: brcmstb: Enable external MSI-X if available
PCI: brcmstb: Add bcm2712 support
PCI: brcmstb: Adjust PHY PLL setup to use a 54MHz input refclk
arm64: dts: broadcom: bcm2712: Add PCIe DT nodes
arm64: dts: broadcom: bcm2712-rpi-5-b: Enable PCIe DT nodes

.../brcm,bcm2712-msix.yaml | 60 ++++
.../bindings/pci/brcm,stb-pcie.yaml | 21 ++
.../boot/dts/broadcom/bcm2712-rpi-5-b.dts | 8 +
arch/arm64/boot/dts/broadcom/bcm2712.dtsi | 162 +++++++++
drivers/irqchip/Kconfig | 16 +
drivers/irqchip/Makefile | 1 +
drivers/irqchip/irq-bcm2712-mip.c | 310 ++++++++++++++++++
drivers/pci/controller/pcie-brcmstb.c | 204 +++++++++---
8 files changed, 735 insertions(+), 47 deletions(-)
create mode 100644 Documentation/devicetree/bindings/interrupt-controller/brcm,bcm2712-msix.yaml
create mode 100644 drivers/irqchip/irq-bcm2712-mip.c


--
Olivier Benjamin, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com