[PATCH v3 00/12] rockchip: Add initial support for RK3506

Jonas Karlman jonas at kwiboo.se
Tue Mar 10 02:13:21 CET 2026


Hi Kever,

On 3/10/2026 2:03 AM, Kever Yang wrote:
> Hi Jonas,
> 
>      This patch set V2 has been landed, please send the fix/new patches 
> instead if needed.

Sure, I can re-work the changes into a fixup series instead. I was not
really expecting anything Rockchip related to land for 2026.04 so this
caught me by surprise and I tried to send an email about this pending
v3 earlier today [1].

[1] https://lore.kernel.org/u-boot/71e54f48-2827-4b16-9f16-cbfe97b6ec0d@kwiboo.se/

Regards,
Jonas

> 
> 
> Thanks,
> - Kever
> On 2026/3/10 08:52, Jonas Karlman wrote:
>> 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 v3:
>> - Add parentheses to mod checks to be consistent in clk driver
>> - Remove and add blank lines in pinctrl driver
>> - Remove unneeded rockchip_get_clk()
>> - Remove unneeded syscon_rk3506.c
>> - Add BOOTSOURCE_SPINOR mapping
>> - Update emmc/sdmmc comment
>> - Collect r-b tags
>>
>> 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        |    4 +
>>   arch/arm/mach-rockchip/rk3506/clk_rk3506.c    |    9 +
>>   arch/arm/mach-rockchip/rk3506/rk3506.c        |  126 ++
>>   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 +-
>>   32 files changed, 3034 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 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
>>



More information about the U-Boot mailing list