Rockchip RK3528 ships one PCIe Gen2x1 controller that operates in RC mode only. The SoC doesn't provide a separate MSI controller, thus the one integrated in designware PCIe IP must be used. This series documents the PCIe controller in dt-binding and describes it in the SoC devicetree. Radxa E20C board is used for testing, whose LAN GbE port is provided through an RTL8111H chip connected to PCIe controller. Its devicetree is adjusted to enable the controller, and IPERF3 shows the interface runs at full-speed. A typical result looks like [ ID] Interval Transfer Bitrate Retr [ 5] 0.00-10.00 sec 1.09 GBytes 936 Mbits/sec 0 sender [ 5] 0.00-10.00 sec 1.09 GBytes 934 Mbits/sec receiver This series is based on next-20250905. It's worth noting that commit 727e914bbfbb ("PCI/MSI: Check MSI_FLAG_PCI_MSI_MASK_PARENT in cond_[startup|shutdown]_parent()") (already contained in next-20250905) is necessary for normal operation of designware PCIe IP's integrated MSI controller. Thanks for your time and review. Yao Zi (3): dt-bindings: PCI: dwc: rockchip: Add RK3528 variant arm64: dts: rockchip: Add PCIe Gen2x1 controller for RK3528 arm64: dts: rockchip: Enable PCIe controller on Radxa E20C .../bindings/pci/rockchip-dw-pcie.yaml | 3 + .../boot/dts/rockchip/rk3528-radxa-e20c.dts | 17 ++++++ arch/arm64/boot/dts/rockchip/rk3528.dtsi | 56 ++++++++++++++++++- 3 files changed, 75 insertions(+), 1 deletion(-) -- 2.50.1