[U-Boot] [PATCH v2 0/6] Add 3GiB DRAM support to 64-bit Allwinner SoCs

Icenowy Zheng
2018-03-23T08:18:51Z

Allwinner 64-bit SoCs have allocated 3GiB space in the memory map for
DRAM. If memory bigger than 3GiB is installed (as memory usually come as
pow of 2 and they are not known to support 3GiB LPDDR3 modules, it means
4GiB memory is installed), the whole 3GiB space can be all used.

However, in many situations we still only defined 2GiB for the DRAM.

Add support for 3GiB DRAM. Tested on a customized Pine A64-LTS with 4GiB
LPDDR3 memory installed.

Icenowy Zheng (6):
sunxi: map DRAM part with 3G size on AArch64
sunxi: add Kconfig option for the maximum accessible DRAM
sunxi: let sunxi_dram_init return unsigned long long
sunxi: restrict the ram_size to the accessible range in SPL
sunxi: add code for recalculating the DRAM size in U-Boot
sunxi: add size recalculation code for common DesignWare DRAM driver

arch/arm/include/asm/arch-sunxi/dram.h | 5 ++++-
arch/arm/mach-sunxi/Kconfig | 15 +++++++++++++++
arch/arm/mach-sunxi/Makefile | 2 +-
arch/arm/mach-sunxi/board.c | 2 +-
arch/arm/mach-sunxi/dram_sun6i.c | 2 +-
arch/arm/mach-sunxi/dram_sun8i_a23.c | 2 +-
arch/arm/mach-sunxi/dram_sun8i_a33.c | 2 +-
arch/arm/mach-sunxi/dram_sun8i_a83t.c | 2 +-
arch/arm/mach-sunxi/dram_sun9i.c | 4 ++--
arch/arm/mach-sunxi/dram_sunxi_dw.c | 30 +++++++++++++++++++++++++++---
board/sunxi/board.c | 21 +++++++++++++++++++--
board/sunxi/dram_sun4i_auto.c | 2 +-
board/sunxi/dram_sun5i_auto.c | 2 +-
13 files changed, 75 insertions(+), 16 deletions(-)

--
2.15.1