This series fixes and enables PCIe and NVMe support on RK3568. It depends on prior series by Eugen Hristev, [1] and [2] that adds PCIe support on RK3588 and also [3] that add basic reference counting to gpio regulators.
Patch 1-2 fixes main issue in the driver to be usable on RK3568. Patch 3 fixes a long wait time during probe when no device is attached. Patch 4 hides BARs of the root complex that could claim the entire memory region during PCI autoconfig. Patch 5 adds support for the gpios prop to the fixed regulators driver. Patch 6 adds a missing clock to the clock driver. Patch 7 enables PCIe and NVMe support on rk3568-rock-3a. Patch 8 updates the device tree with new reg and ranges values. For a clean apply of patch 7, the series at [4] may be needed. I have tested that a Samsung 970 EVO NVMe is detected on a ROCK 3A, BusDevFun VendorId DeviceId Device Class Sub-Class 01.00.00 0x1d87 0x3566 Bridge device 0x04 02.00.00 0x144d 0xa808 Mass storage controller 0x08 and I have also verified that the network controller continues to be detected on a ROCK 5B. BusDevFun VendorId DeviceId Device Class Sub-Class 00.00.00 0x1d87 0x3588 Bridge device 0x04 01.00.00 0x10ec 0x8125 Network controller 0x00 This series can also be found at [5]. [1] https://patchwork.ozlabs.org/project/uboot/patch/20230413141103.268571-1-eugen.hris...@collabora.com/ [2] https://patchwork.ozlabs.org/project/uboot/patch/20230417091951.4640-1-eugen.hris...@collabora.com/ [3] https://patchwork.ozlabs.org/project/uboot/patch/20230419134526.128800-1-eugen.hris...@collabora.com/ [4] https://patchwork.ozlabs.org/project/uboot/cover/20230422012309.402799-1-jo...@kwiboo.se/ [5] https://github.com/Kwiboo/u-boot-rockchip/commits/rk3568-pcie-v1 Jonas Karlman (8): pci: pcie_dw_rockchip: Get config region from reg prop pci: pcie_dw_rockchip: Use regulator_set_enable_if_allowed pci: pcie_dw_rockchip: Speed up link probe pci: pcie_dw_rockchip: Hide BARs of the root complex regulator: fixed: Add support for gpios prop rockchip: clk: clk_rk3568: Add CLK_PCIEPHY2_REF support rockchip: rk3568-rock-3a: Enable PCIe and NVMe support rockchip: rk356x: Update PCIe config, IO and memory regions arch/arm/dts/rk3568-rock-3a-u-boot.dtsi | 14 +++ arch/arm/dts/rk3568.dtsi | 14 +-- arch/arm/dts/rk356x.dtsi | 7 +- configs/rock-3a-rk3568_defconfig | 4 + drivers/clk/rockchip/clk_rk3568.c | 1 + drivers/pci/pcie_dw_common.c | 10 +- drivers/pci/pcie_dw_rockchip.c | 128 +++++++++++++++--------- drivers/power/regulator/fixed.c | 5 +- 8 files changed, 123 insertions(+), 60 deletions(-) -- 2.40.0