This series add initial support for the Rockchip RK3506 SoC. Clk and pinctrl drivers have been imported from vendor U-Boot with some adjustments and fixes.
Upstream DT is currently not existing for RK3506, so this series does not add support for any new boards, it only add initial arch support. Please see my U-Boot rk3506 branch at [1] for a few more commits that add DTs and defconfig for e.g. Luckfox Lyra variants and ArmSoM Forge1. With this series, board DTs and defconfigs it should be possible to boot into U-Boot proper (without OP-TEE) and still have support for MMC, Ethernet, OTP, RNG, LEDs, buttons and USB gadget/host. Changes in v2: - Use common handling of USB bootsource_id 0x81 - Re-sort the spl_infos list alphanumerically - Drop use of struct rk3506_cru and of_to_plat() ops - Define LOG_CATEGORY and use log_debug() in clk driver - Extract rk3506_clk_init_xpl() from clk bind() ops - Enable SPL_ARMV7_SET_CORTEX_SMPEN - Fix mac1 and otg1 access to ddr memory - Collect a-b and t-b tags (where applicable) [1] https://source.denx.de/u-boot/contributors/kwiboo/u-boot/-/commits/rk3506 Finley Xiao (2): dt-bindings: clock: rockchip: Add RK3506 clock and reset unit clk: rockchip: Add support for RK3506 Jonas Karlman (8): rockchip: spl: Add common handling of USB bootsource_id 0x81 rockchip: mkimage: Re-sort the spl_infos list alphanumerically ram: rockchip: Add basic support for RK3506 pinctrl: rockchip: Use syscon_regmap_lookup_by_phandle() rockchip: otp: Add support for RK3506 phy: rockchip-inno-usb2: Add support for RK3506 net: dwc_eth_qos_rockchip: Add support for RK3506 arch: arm: rockchip: Add initial support for RK3506 Xuhui Lin (1): rockchip: mkimage: Add support for RK3506 Ye Zhang (1): pinctrl: rockchip: Add support for RK3506 arch/arm/include/asm/arch-rk3506/boot0.h | 9 + arch/arm/include/asm/arch-rk3506/gpio.h | 9 + arch/arm/include/asm/arch-rockchip/clock.h | 10 + .../include/asm/arch-rockchip/cru_rk3506.h | 181 +++ arch/arm/mach-rockchip/Kconfig | 44 + arch/arm/mach-rockchip/Makefile | 1 + arch/arm/mach-rockchip/rk3506/Kconfig | 15 + arch/arm/mach-rockchip/rk3506/Makefile | 5 + arch/arm/mach-rockchip/rk3506/clk_rk3506.c | 16 + arch/arm/mach-rockchip/rk3506/rk3506.c | 125 ++ arch/arm/mach-rockchip/rk3506/syscon_rk3506.c | 19 + arch/arm/mach-rockchip/rk3528/rk3528.c | 15 - arch/arm/mach-rockchip/spl.c | 12 +- drivers/clk/rockchip/Makefile | 1 + drivers/clk/rockchip/clk_rk3506.c | 1166 +++++++++++++++++ drivers/misc/rockchip-otp.c | 4 + drivers/net/dwc_eth_qos.c | 4 + drivers/net/dwc_eth_qos_rockchip.c | 86 ++ drivers/phy/rockchip/phy-rockchip-inno-usb2.c | 20 + drivers/pinctrl/rockchip/Makefile | 1 + drivers/pinctrl/rockchip/pinctrl-rk3506.c | 462 +++++++ .../pinctrl/rockchip/pinctrl-rockchip-core.c | 46 +- drivers/pinctrl/rockchip/pinctrl-rockchip.h | 1 + drivers/ram/rockchip/Makefile | 1 + drivers/ram/rockchip/sdram_rk3506.c | 33 + drivers/reset/Makefile | 2 +- drivers/reset/rst-rk3506.c | 222 ++++ drivers/usb/gadget/Kconfig | 1 + .../Bindings/clock/rockchip,rk3506-cru.yaml | 55 + .../dt-bindings/clock/rockchip,rk3506-cru.h | 285 ++++ .../dt-bindings/reset/rockchip,rk3506-cru.h | 211 +++ include/configs/rk3506_common.h | 38 + tools/rkcommon.c | 5 +- 33 files changed, 3060 insertions(+), 45 deletions(-) create mode 100644 arch/arm/include/asm/arch-rk3506/boot0.h create mode 100644 arch/arm/include/asm/arch-rk3506/gpio.h create mode 100644 arch/arm/include/asm/arch-rockchip/cru_rk3506.h create mode 100644 arch/arm/mach-rockchip/rk3506/Kconfig create mode 100644 arch/arm/mach-rockchip/rk3506/Makefile create mode 100644 arch/arm/mach-rockchip/rk3506/clk_rk3506.c create mode 100644 arch/arm/mach-rockchip/rk3506/rk3506.c create mode 100644 arch/arm/mach-rockchip/rk3506/syscon_rk3506.c create mode 100644 drivers/clk/rockchip/clk_rk3506.c create mode 100644 drivers/pinctrl/rockchip/pinctrl-rk3506.c create mode 100644 drivers/ram/rockchip/sdram_rk3506.c create mode 100644 drivers/reset/rst-rk3506.c create mode 100644 dts/upstream/Bindings/clock/rockchip,rk3506-cru.yaml create mode 100644 dts/upstream/include/dt-bindings/clock/rockchip,rk3506-cru.h create mode 100644 dts/upstream/include/dt-bindings/reset/rockchip,rk3506-cru.h create mode 100644 include/configs/rk3506_common.h -- 2.52.0

