[V2 PATCH 0/2] Update RAM Bank Logic for RK3568/RK3588

Chris Morgan macroalpha82 at gmail.com
Mon Apr 1 20:14:33 CEST 2024


From: Chris Morgan <macromorgan at hotmail.com>

Use the ATAG info provided by the Rockchip binary TPL to identify
RAM banks on the RK3568 and RK3588 when using the ROCKCHIP_TPL binary.

This is needed because there are specific addresses that should not
be written to for all RK3588 based devices with >=16GB of RAM, writing
to these addresses immediately results in a crash. Additionally on the
RK3568 and RK3588 this allows us to reclaim 256MB of RAM when RAM >=
4GB.

Changes since V1:
 - After additional feedback, removed RFC tag.
 - Made code work for both RK3568 and RK3588.
 - Removed memory hole code for all RK3588 boards.
 - Updated CONFIG_NR_DRAM_BANKS for 3568 and 3588 boards as it is
   the max number of banks supported by the ATAGS code.

Chris Morgan (2):
  rockchip: sdram: Support getting banks from TPL for rk3568 and rk3588
  rockchip: Switch RK3568 and RK3588 to new RAM bank logic

 arch/arm/mach-rockchip/sdram.c                | 100 ++++++++++++++++++
 board/friendlyelec/nanopc-t6-rk3588/Makefile  |   6 --
 .../nanopc-t6-rk3588/nanopc-t6-rk3588.c       |  39 -------
 board/pine64/quartzpro64-rk3588/Makefile      |   3 -
 .../quartzpro64-rk3588/quartzpro64-rk3588.c   |  39 -------
 board/radxa/rock5a-rk3588s/Makefile           |   6 --
 board/radxa/rock5a-rk3588s/rock5a-rk3588s.c   |  39 -------
 board/radxa/rock5b-rk3588/Makefile            |   6 --
 board/radxa/rock5b-rk3588/rock5b-rk3588.c     |  39 -------
 board/rockchip/evb_rk3588/Makefile            |   6 --
 board/rockchip/evb_rk3588/evb-rk3588.c        |  39 -------
 board/turing/turing-rk1-rk3588/Makefile       |   6 --
 .../turing-rk1-rk3588/turing-rk1-rk3588.c     |  39 -------
 configs/anbernic-rgxx3-rk3566_defconfig       |   2 +-
 configs/bpi-r2-pro-rk3568_defconfig           |   2 +-
 configs/evb-rk3568_defconfig                  |   2 +-
 configs/evb-rk3588_defconfig                  |   3 +-
 configs/generic-rk3568_defconfig              |   2 +-
 configs/lubancat-2-rk3568_defconfig           |   2 +-
 configs/nanopc-t6-rk3588_defconfig            |   3 +-
 configs/nanopi-r5c-rk3568_defconfig           |   2 +-
 configs/nanopi-r5s-rk3568_defconfig           |   2 +-
 configs/neu6a-io-rk3588_defconfig             |   2 +-
 configs/neu6b-io-rk3588_defconfig             |   2 +-
 configs/odroid-m1-rk3568_defconfig            |   2 +-
 configs/orangepi-5-plus-rk3588_defconfig      |   3 +-
 configs/orangepi-5-rk3588s_defconfig          |   3 +-
 configs/quartz64-a-rk3566_defconfig           |   2 +-
 configs/quartz64-b-rk3566_defconfig           |   2 +-
 configs/quartzpro64-rk3588_defconfig          |   3 +-
 configs/radxa-cm3-io-rk3566_defconfig         |   2 +-
 configs/radxa-e25-rk3568_defconfig            |   2 +-
 configs/rock-3a-rk3568_defconfig              |   2 +-
 configs/rock5a-rk3588s_defconfig              |   3 +-
 configs/rock5b-rk3588_defconfig               |   3 +-
 configs/soquartz-blade-rk3566_defconfig       |   2 +-
 configs/soquartz-cm4-rk3566_defconfig         |   2 +-
 configs/soquartz-model-a-rk3566_defconfig     |   2 +-
 configs/turing-rk1-rk3588_defconfig           |   3 +-
 39 files changed, 126 insertions(+), 301 deletions(-)
 delete mode 100644 board/friendlyelec/nanopc-t6-rk3588/Makefile
 delete mode 100644 board/friendlyelec/nanopc-t6-rk3588/nanopc-t6-rk3588.c
 delete mode 100644 board/pine64/quartzpro64-rk3588/Makefile
 delete mode 100644 board/pine64/quartzpro64-rk3588/quartzpro64-rk3588.c
 delete mode 100644 board/radxa/rock5a-rk3588s/Makefile
 delete mode 100644 board/radxa/rock5a-rk3588s/rock5a-rk3588s.c
 delete mode 100644 board/radxa/rock5b-rk3588/Makefile
 delete mode 100644 board/radxa/rock5b-rk3588/rock5b-rk3588.c
 delete mode 100644 board/rockchip/evb_rk3588/Makefile
 delete mode 100644 board/rockchip/evb_rk3588/evb-rk3588.c
 delete mode 100644 board/turing/turing-rk1-rk3588/Makefile
 delete mode 100644 board/turing/turing-rk1-rk3588/turing-rk1-rk3588.c

-- 
2.34.1



More information about the U-Boot mailing list