[PATCH v2 00/15] rockchip: rk3328: Update defconfigs, DTs and enable boot from SPI

Jonas Karlman jonas at kwiboo.se
Sat Feb 17 10:23:14 CET 2024


On 2024-02-17 01:22, Jonas Karlman wrote:
> This series contains miscellaneous updates to defconfigs, syncs latest
> device trees from linux, fixes an issue loading FIT from SD-card when
> running SPL from eMMC and enables building a bootable SPI image on
> RK3328 boards.
> 
> I am also adding myself as a reviewer for the three RK3328 boards I own.
> 
> Patch 1-7 updates boards to enable similar Kconfig options and use a
> common order for from where to try and load FIT.
> 
> Patch 8 fix loading FIT from SD-card when booting from eMMC by using
> pinctrl for emmc and sdmmc in SPL.
> 
> Patch 9-10 makes rockchip gpio and rng driver compatible with linux.
> 
> Patch 11 sync latest rk3328 device tree files from linux v6.8-rc1.
> 
> Patch 12 reverts an old commit that added duplicated code.
> 
> Patch 13-15 enables building u-boot-rockchip-spi.bin for boards with
> SPI flash.
> 
> Changes in v2:
> - Remove unused SPL drivers, I2C and PMIC
> - Add helpful CMD_GPIO and CMD_REGULATOR to boards
> - Add missing UART2 pinctrl nodes to soc u-boot.dtsi
> - Mark the pinctrl node to be included in U-Boot proper pre-reloc phase
> - Add SD-card IO-voltage related nodes to nanopi-r2 u-boot.dtsi
> - Fix an ethernet issue on orangepi-r1-plus-lts
> - Include SPI flash pinctrl nodes in SPL
> - Collect r-b tags

Forgot to mention that following has been tested with this series:
- Loading TPL/SPL and FIT from a combo of different sources, e.g. SPL in
  eMMC and FIT in SD-card or SPL in SD-card and FIT in eMMC etc.
- USB host e.g. usb start; usb tree; usb stop;
- Ethernet e.g. mdio list; mii info; net list; dhcp;
- No pinctrl issue is reported with CONFIG_LOGLEVEL=7, i.e. no print of
  "pinctrl_select_state_full: uclass_get_device_by_phandle_id: err=-19"
- GPIO and regulator status using gpio status; regulator status;
- Manually inspect TPL and SPL device tree
  $ dtc -I dtb -O dts tpl/u-boot-tpl.dtb
  $ dtc -I dtb -O dts spl/u-boot-spl.dtb

On the following devices:
- Rock64 v2.0 and v3.0
- ROC-RK3328-CC v1.0 and v1.3
- ROCK Pi E v1.21
- Orange Pi R1 Plus LTS

Following devices have _not_ been tested:
- NanoPi R2C/R2C Plus/R2S
- Orange Pi R1 Plus

A USB host issue was discovered on Orange Pi R1 Plus LTS during testing
and I expect NanoPi R2* boards also have the same issue. A fix for this
will be sent separately. The issue relates to fdt address translation of
reg prop in usbdrd3 node.

Regards,
Jonas

> 
> This series depends on the "rockchip: Update stack and bss addresses on
> RK3328 and RK3399" series at [1] being applied _after_ this series.
> Some boards may go over the simple malloc limit without that series also
> applied.
> 
> See [2] for a branch with the dependent series applied.
> 
> [1] https://patchwork.ozlabs.org/cover/1887729/
> [2] https://github.com/Kwiboo/u-boot-rockchip/commits/rk3328-update-v2
> 
> Jonas Karlman (15):
>   rockchip: rk3328: Update default u-boot,spl-boot-order prop
>   rockchip: rk3328-evb: Update defconfig
>   rockchip: rk3328-rock64: Update defconfig
>   rockchip: rk3328-roc-cc: Update defconfig
>   rockchip: rk3328-rock-pi-e: Update defconfig
>   rockchip: rk3328-nanopi-r2: Update defconfig
>   rockchip: rk3328-orangepi-r1-plus: Update defconfig
>   rockchip: rk3328: Fix loading FIT from SD-card when booting from eMMC
>   gpio: rockchip: Use gpio alias id as gpio bank id
>   rng: rockchip: Use same compatible as linux
>   rockchip: rk3328: Sync device tree from linux v6.8-rc1
>   Revert "rockchip: Allow booting from SPI"
>   rockchip: rk3328: Add support to build bootable SPI image
>   rockchip: rk3328-rock64: Enable boot from SPI NOR flash
>   rockchip: rk3328-orangepi-r1-plus: Enable boot from SPI NOR flash
> 
>  arch/arm/dts/rk3328-evb-u-boot.dtsi           |   4 +
>  arch/arm/dts/rk3328-evb.dts                   |   1 +
>  .../dts/rk3328-nanopi-r2c-plus-u-boot.dtsi    |   6 -
>  arch/arm/dts/rk3328-nanopi-r2s-u-boot.dtsi    |  24 +---
>  arch/arm/dts/rk3328-nanopi-r2s.dts            |   3 +-
>  .../rk3328-orangepi-r1-plus-lts-u-boot.dtsi   |  32 ++----
>  arch/arm/dts/rk3328-orangepi-r1-plus-lts.dts  |   4 +-
>  .../dts/rk3328-orangepi-r1-plus-u-boot.dtsi   |  32 ++----
>  arch/arm/dts/rk3328-orangepi-r1-plus.dts      |   1 +
>  arch/arm/dts/rk3328-roc-cc-u-boot.dtsi        |  22 +---
>  arch/arm/dts/rk3328-roc-cc.dts                |   3 +-
>  arch/arm/dts/rk3328-rock-pi-e-u-boot.dtsi     |  17 ---
>  arch/arm/dts/rk3328-rock-pi-e.dts             |  55 +++++++++
>  arch/arm/dts/rk3328-rock64-u-boot.dtsi        |  28 ++---
>  arch/arm/dts/rk3328-rock64.dts                |   1 +
>  arch/arm/dts/rk3328-u-boot.dtsi               | 108 +++++++++++++++---
>  arch/arm/dts/rk3328.dtsi                      |  64 ++++++++---
>  arch/arm/dts/rk3399-u-boot.dtsi               |   2 +-
>  arch/arm/mach-rockchip/rk3328/rk3328.c        |   1 +
>  arch/arm/mach-rockchip/spl-boot-order.c       |   3 -
>  board/rockchip/evb_rk3328/MAINTAINERS         |  11 ++
>  board/rockchip/evb_rk3328/README              |  70 ------------
>  configs/evb-rk3328_defconfig                  |  22 +++-
>  configs/nanopi-r2c-plus-rk3328_defconfig      |  20 +++-
>  configs/nanopi-r2c-rk3328_defconfig           |  20 +++-
>  configs/nanopi-r2s-rk3328_defconfig           |  20 +++-
>  configs/orangepi-r1-plus-lts-rk3328_defconfig |  29 ++++-
>  configs/orangepi-r1-plus-rk3328_defconfig     |  29 ++++-
>  configs/roc-cc-rk3328_defconfig               |  15 ++-
>  configs/rock-pi-e-rk3328_defconfig            |  17 +--
>  configs/rock64-rk3328_defconfig               |  23 +++-
>  doc/board/rockchip/rockchip.rst               |   9 +-
>  drivers/gpio/rk_gpio.c                        |   7 +-
>  drivers/rng/rockchip_rng.c                    |  10 +-
>  34 files changed, 432 insertions(+), 281 deletions(-)
>  delete mode 100644 board/rockchip/evb_rk3328/README
> 



More information about the U-Boot mailing list