u-boot/arch/arm/mach-sunxi
Icenowy Zheng e9dfd8e960 sunxi: support asymmetric dual rank DRAM on A64/R40
Previously we have known that R40 has a configuration register for its
rank 1, which allows different configuration than rank 0. Reverse
engineering of newest libdram of A64 from Allwinner shows that A64 has
this register too. It's bit 0 (which enables dual rank in rank 0
configuration register) means a dedicated rank size setup is used for
rank 1.

Now, Pine64 scheduled to use a 3GiB LPDDR3 DRAM chip (which has 2GiB
rank 0 and 1GiB rank 1) on PinePhone, that makes asymmetric dual rank
DRAM support necessary.

Add this support. The code could support both A64 and R40, but because
dual rank detection is broken on R40 now, we cannot really use it on R40
currently.

Signed-off-by: Icenowy Zheng <icenowy@aosc.io>
Reviewed-by: Andre Przywara <andre.przywara@arm.com>
Tested-by: Peter Robinson <pbrobinson@gmail.com>
Signed-off-by: Andre Przywara <andre.przywara@arm.com>
2021-04-16 01:12:58 +01:00
..
dram_timings sunxi: Add H616 DRAM support 2021-01-25 21:52:01 +00:00
board.c reset: Remove addr parameter from reset_cpu() 2021-03-02 14:03:02 -05:00
clock.c SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
clock_sun4i.c SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
clock_sun6i.c common: Drop linux/bitops.h from common header 2020-05-18 21:19:23 -04:00
clock_sun8i_a83t.c common: Drop linux/delay.h from common header 2020-05-18 21:19:23 -04:00
clock_sun9i.c SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
clock_sun50i_h6.c sunxi: spl: Fix H616 clock initialization 2021-02-19 23:28:50 +00:00
cpu_info.c sunxi: Add support for H616 SoC 2021-01-25 21:52:01 +00:00
dram_helpers.c common: Move get_ticks() function out of common.h 2019-12-02 18:23:13 -05:00
dram_sun4i.c common: Drop linux/delay.h from common header 2020-05-18 21:19:23 -04:00
dram_sun6i.c common: Drop linux/delay.h from common header 2020-05-18 21:19:23 -04:00
dram_sun8i_a23.c common: Drop linux/delay.h from common header 2020-05-18 21:19:23 -04:00
dram_sun8i_a33.c common: Drop linux/delay.h from common header 2020-05-18 21:19:23 -04:00
dram_sun8i_a83t.c common: Drop linux/delay.h from common header 2020-05-18 21:19:23 -04:00
dram_sun9i.c common: Drop log.h from common header 2020-05-18 21:19:18 -04:00
dram_sun50i_h6.c sunxi: dram: h6: Improve DDR3 config detection 2021-01-11 23:19:34 +00:00
dram_sun50i_h616.c sunxi: Add H616 DRAM support 2021-01-25 21:52:01 +00:00
dram_sunxi_dw.c sunxi: support asymmetric dual rank DRAM on A64/R40 2021-04-16 01:12:58 +01:00
gtbus_sun9i.c SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
Kconfig video: sunxi_display: Convert to DM_VIDEO 2021-03-03 10:03:15 +01:00
Makefile sunxi: Add H616 DRAM support 2021-01-25 21:52:01 +00:00
p2wi.c common: Move get_ticks() function out of common.h 2019-12-02 18:23:13 -05:00
pinmux.c SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
pmic_bus.c sunxi: Add support for AXP305 PMIC 2021-01-25 21:52:00 +00:00
prcm.c SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
rmr_switch.S sunxi: Introduce common symbol for H6 like SoCs 2021-01-25 21:52:00 +00:00
rsb.c common: Move get_ticks() function out of common.h 2019-12-02 18:23:13 -05:00
spl_spi_sunxi.c common: Drop linux/bitops.h from common header 2020-05-18 21:19:23 -04:00