This series adds support for three small Rockchip camera SoCs and two boards which use them.
The first eight patches are Fabio Estevam's series adding the RV1103B and the Onion Omega4 board, updated here to address the review comments on v2: the board patch is split into SoC and board patches, the devicetree files move into the patches where they belong and the pinctrl driver uses regmap_update_bits() throughout. All credit for this work goes to Fabio. The devicetree concern raised in the v2 review is also resolved now: the devicetree files carried here are the versions merged in Linux v7.1, verbatim, and can be dropped once the next dts/upstream sync brings them in. The remaining patches add the RV1106 and its RV1103 package variant, following the same structure as the RV1103B patches, together with the Luckfox Pico Mini B board. These SoCs have no mainline Linux support yet, so their devicetrees are local for now. The clock and pinctrl drivers are ported from the Rockchip vendor tree and are the work of Elaine Zhang and Ye Zhang. The final patch makes the maskrom-mode RAM-boot images work on 32-bit boards without OP-TEE, which both of these boards rely on. Tested on the Luckfox Pico Mini B: U-Boot runs from RAM over the USB maskrom path and both the SPI NAND and a microSD card are usable. THe board is running in my lab. Changes in v3: - Move the board devicetrees to the board patch and the SoC u-boot.dtsi to the SoC patch (Jonas) - Use the devicetree files as merged in Linux v7.1 - Use regmap_update_bits() in all the remaining places (Jonas) - Align continuation lines with the open parenthesis (checkpatch) - Use CONFIG_IS_ENABLED() to guard the set_parent operation, matching clk_rk3588.c, since plain IS_ENABLED() needs the CONFIG_ prefix - Guard the spi-nand checks with SPI_NAND_LOAD so that boards without SPI NAND support do not grow in size - New patch, split out from the board patch (Jonas) - Include the SoC u-boot.dtsi here (Jonas) - Match the pmu-grf compatible used by the devicetree merged in Linux v7.1 - Split out the SoC support into its own patch (Jonas) - Move the board devicetree files into this patch (Jonas) - Add the board to the list in the Rockchip documentation - Extend the MAINTAINERS entry to cover all the RV1103B files - Use the board devicetree files as merged in Linux v7.1 and switch the default devicetree to rv1103b-omega4-evb Changes in v2: - Use the devicetrees submitted to upstream Linux - Use the original author from Rockchip's vendor U-Boot tree - Use regmap_update_bits() - Remove unneeded blank lines - Remove unneeded logging functions - Use the original author from Rockchip's vendor U-Boot tree - Use RV1103B rather than RV1103, which is the correct SoC name Elaine Zhang (1): clk: rockchip: Add RV1103B clock driver Fabio Estevam (5): ARM: dts: Add the RV1103B devicetree files rockchip: spl-boot-order: Add SPI NAND support spl: Add SPI NAND support via MTD in SPL rockchip: rv1103b: Add SoC support omega4-rv1103b: Add the initial support Simon Glass (7): tools: rkcommon: Add RV1106 support pinctrl: rockchip: Add RV1106 support ARM: dts: Add the RV1103/RV1106 devicetree files clk: rockchip: Add RV1106 clock driver rockchip: rv1106: Add SoC support luckfox-pico: Add the initial support rockchip: Support legacy images when booting from RAM Xuhui Lin (1): tools: rkcommon: Add RV1103B support Ye Zhang (1): pinctrl: rockchip: Add RV1103B support .../rv1103-luckfox-pico-mini-b-u-boot.dtsi | 10 + arch/arm/dts/rv1103-luckfox-pico-mini-b.dts | 85 ++ arch/arm/dts/rv1103.dtsi | 16 + arch/arm/dts/rv1103b-omega4-evb-u-boot.dtsi | 10 + arch/arm/dts/rv1103b-omega4-evb.dts | 63 + arch/arm/dts/rv1103b-omega4.dtsi | 147 ++ arch/arm/dts/rv1103b-pinctrl.dtsi | 816 ++++++++++ arch/arm/dts/rv1103b-u-boot.dtsi | 4 + arch/arm/dts/rv1103b.dtsi | 239 +++ arch/arm/dts/rv1106-pinctrl.dtsi | 1102 ++++++++++++++ arch/arm/dts/rv1106-u-boot.dtsi | 4 + arch/arm/dts/rv1106.dtsi | 328 ++++ .../include/asm/arch-rockchip/cru_rv1103b.h | 266 ++++ .../include/asm/arch-rockchip/cru_rv1106.h | 305 ++++ .../include/asm/arch-rockchip/grf_rv1103b.h | 31 + arch/arm/include/asm/arch-rv1103b/boot0.h | 11 + arch/arm/include/asm/arch-rv1106/boot0.h | 11 + arch/arm/mach-rockchip/Kconfig | 28 + arch/arm/mach-rockchip/Makefile | 2 + arch/arm/mach-rockchip/rv1103b/Kconfig | 22 + arch/arm/mach-rockchip/rv1103b/Makefile | 12 + arch/arm/mach-rockchip/rv1103b/boot0.h | 5 + arch/arm/mach-rockchip/rv1103b/clk_rv1103b.c | 32 + arch/arm/mach-rockchip/rv1103b/rv1103b.c | 133 ++ .../mach-rockchip/rv1103b/syscon_rv1103b.c | 19 + arch/arm/mach-rockchip/rv1106/Kconfig | 28 + arch/arm/mach-rockchip/rv1106/Makefile | 12 + arch/arm/mach-rockchip/rv1106/clk_rv1106.c | 31 + arch/arm/mach-rockchip/rv1106/rv1106.c | 118 ++ arch/arm/mach-rockchip/rv1106/syscon_rv1106.c | 19 + arch/arm/mach-rockchip/spl-boot-order.c | 12 +- arch/arm/mach-rockchip/spl.c | 53 +- board/luckfox/pico/Kconfig | 12 + board/luckfox/pico/MAINTAINERS | 6 + board/luckfox/pico/Makefile | 7 + board/luckfox/pico/pico.c | 19 + board/luckfox/pico/pico.env | 4 + board/onion/omega4_rv1103b/Kconfig | 12 + board/onion/omega4_rv1103b/MAINTAINERS | 15 + board/onion/omega4_rv1103b/Makefile | 7 + board/onion/omega4_rv1103b/omega4_rv1103b.c | 19 + board/onion/omega4_rv1103b/omega4_rv1103b.env | 5 + common/spl/Kconfig | 10 +- common/spl/Makefile | 1 + common/spl/spl_spi_nand.c | 82 + configs/luckfox-pico-mini-b-rv1103_defconfig | 79 + configs/omega4-rv1103b_defconfig | 82 + doc/board/index.rst | 2 + doc/board/luckfox/index.rst | 9 + doc/board/luckfox/luckfox-pico.rst | 71 + doc/board/onion/index.rst | 9 + doc/board/onion/omega4-rv1103b.rst | 56 + doc/board/rockchip/rockchip.rst | 7 + drivers/clk/rockchip/Makefile | 2 + drivers/clk/rockchip/clk_rv1103b.c | 1068 +++++++++++++ drivers/clk/rockchip/clk_rv1106.c | 1319 +++++++++++++++++ drivers/mtd/Makefile | 1 + drivers/mtd/nand/Makefile | 13 +- drivers/pinctrl/rockchip/Makefile | 2 + drivers/pinctrl/rockchip/pinctrl-rv1103b.c | 402 +++++ drivers/pinctrl/rockchip/pinctrl-rv1106.c | 320 ++++ include/configs/luckfox_pico.h | 11 + include/configs/omega4_rv1103b.h | 11 + include/configs/rv1103b_common.h | 14 + include/configs/rv1106_common.h | 13 + .../dt-bindings/clock/rockchip,rv1103b-cru.h | 220 +++ include/dt-bindings/clock/rv1106-cru.h | 572 +++++++ tools/rkcommon.c | 2 + 68 files changed, 8436 insertions(+), 22 deletions(-) create mode 100644 arch/arm/dts/rv1103-luckfox-pico-mini-b-u-boot.dtsi create mode 100644 arch/arm/dts/rv1103-luckfox-pico-mini-b.dts create mode 100644 arch/arm/dts/rv1103.dtsi create mode 100644 arch/arm/dts/rv1103b-omega4-evb-u-boot.dtsi create mode 100644 arch/arm/dts/rv1103b-omega4-evb.dts create mode 100644 arch/arm/dts/rv1103b-omega4.dtsi create mode 100644 arch/arm/dts/rv1103b-pinctrl.dtsi create mode 100644 arch/arm/dts/rv1103b-u-boot.dtsi create mode 100644 arch/arm/dts/rv1103b.dtsi create mode 100644 arch/arm/dts/rv1106-pinctrl.dtsi create mode 100644 arch/arm/dts/rv1106-u-boot.dtsi create mode 100644 arch/arm/dts/rv1106.dtsi create mode 100644 arch/arm/include/asm/arch-rockchip/cru_rv1103b.h create mode 100644 arch/arm/include/asm/arch-rockchip/cru_rv1106.h create mode 100644 arch/arm/include/asm/arch-rockchip/grf_rv1103b.h create mode 100644 arch/arm/include/asm/arch-rv1103b/boot0.h create mode 100644 arch/arm/include/asm/arch-rv1106/boot0.h create mode 100644 arch/arm/mach-rockchip/rv1103b/Kconfig create mode 100644 arch/arm/mach-rockchip/rv1103b/Makefile create mode 100644 arch/arm/mach-rockchip/rv1103b/boot0.h create mode 100644 arch/arm/mach-rockchip/rv1103b/clk_rv1103b.c create mode 100644 arch/arm/mach-rockchip/rv1103b/rv1103b.c create mode 100644 arch/arm/mach-rockchip/rv1103b/syscon_rv1103b.c create mode 100644 arch/arm/mach-rockchip/rv1106/Kconfig create mode 100644 arch/arm/mach-rockchip/rv1106/Makefile create mode 100644 arch/arm/mach-rockchip/rv1106/clk_rv1106.c create mode 100644 arch/arm/mach-rockchip/rv1106/rv1106.c create mode 100644 arch/arm/mach-rockchip/rv1106/syscon_rv1106.c create mode 100644 board/luckfox/pico/Kconfig create mode 100644 board/luckfox/pico/MAINTAINERS create mode 100644 board/luckfox/pico/Makefile create mode 100644 board/luckfox/pico/pico.c create mode 100644 board/luckfox/pico/pico.env create mode 100644 board/onion/omega4_rv1103b/Kconfig create mode 100644 board/onion/omega4_rv1103b/MAINTAINERS create mode 100644 board/onion/omega4_rv1103b/Makefile create mode 100644 board/onion/omega4_rv1103b/omega4_rv1103b.c create mode 100644 board/onion/omega4_rv1103b/omega4_rv1103b.env create mode 100644 common/spl/spl_spi_nand.c create mode 100644 configs/luckfox-pico-mini-b-rv1103_defconfig create mode 100644 configs/omega4-rv1103b_defconfig create mode 100644 doc/board/luckfox/index.rst create mode 100644 doc/board/luckfox/luckfox-pico.rst create mode 100644 doc/board/onion/index.rst create mode 100644 doc/board/onion/omega4-rv1103b.rst create mode 100644 drivers/clk/rockchip/clk_rv1103b.c create mode 100644 drivers/clk/rockchip/clk_rv1106.c create mode 100644 drivers/pinctrl/rockchip/pinctrl-rv1103b.c create mode 100644 drivers/pinctrl/rockchip/pinctrl-rv1106.c create mode 100644 include/configs/luckfox_pico.h create mode 100644 include/configs/omega4_rv1103b.h create mode 100644 include/configs/rv1103b_common.h create mode 100644 include/configs/rv1106_common.h create mode 100644 include/dt-bindings/clock/rockchip,rv1103b-cru.h create mode 100644 include/dt-bindings/clock/rv1106-cru.h --- base-commit: ee5d46b45ec0c63f8f9dd1e816e0dac3452ccc3d branch: rocka-us3 -- 2.43.0

