]> git.dujemihanovic.xyz Git - u-boot.git/commitdiff
ram: rockchip: px30: add a config-based ddr selection
authorHeiko Stuebner <heiko.stuebner@theobroma-systems.com>
Thu, 1 Oct 2020 18:40:03 +0000 (20:40 +0200)
committerKever Yang <kever.yang@rock-chips.com>
Fri, 30 Oct 2020 10:11:29 +0000 (18:11 +0800)
The SRAM on the PX30 is not big enough to hold multiple DDR configs
so it needs to be selected during build.

So far simply the DDR3 config was always selected and getting DDR4
or LPDDR2/3 initialized would require a code modification.

So add Kconfig options similar to RK3399 to allow selecting the DDR4
and LPDDR2/3 options instead, while DDR3 stays the default as before.

Signed-off-by: Heiko Stuebner <heiko.stuebner@theobroma-systems.com>
Reviewed-by: Jagan Teki <jagan@amarulasolutions.com>
Reviewed-by: Kever Yang<kever.yang@rock-chips.com>
drivers/ram/rockchip/Kconfig
drivers/ram/rockchip/sdram_px30.c

index 8e97c2f49e2360d978284acf2d473ee97e45a9d2..c459bbf5e24db2e8dc46a14279d4412b735d7964 100644 (file)
@@ -22,6 +22,27 @@ config RAM_ROCKCHIP_DEBUG
          This is an option for developers to understand the ram drivers
          initialization, configurations and etc.
 
+config RAM_PX30_DDR4
+       bool "DDR3 support for Rockchip PX30"
+       depends on RAM_ROCKCHIP && ROCKCHIP_PX30
+       help
+         This enables DDR4 sdram support instead of the default DDR3 support
+         on Rockchip PC30 SoCs.
+
+config RAM_PX30_LPDDR2
+       bool "LPDDR2 support for Rockchip PX30"
+       depends on RAM_ROCKCHIP && ROCKCHIP_PX30
+       help
+         This enables LPDDR2 sdram support instead of the default DDR3 support
+         on Rockchip PC30 SoCs.
+
+config RAM_PX30_LPDDR3
+       bool "LPDDR3 support for Rockchip PX30"
+       depends on RAM_ROCKCHIP && ROCKCHIP_PX30
+       help
+         This enables LPDDR3 sdram support instead of the default DDR3 support
+         on Rockchip PC30 SoCs.
+
 config RAM_RK3399_LPDDR4
        bool "LPDDR4 support for Rockchip RK3399"
        depends on RAM_ROCKCHIP && ROCKCHIP_RK3399
index fd5763d0a0df9f1688eb849371b0c06c0bcd7dc5..2f1f6e9c0c4d7c9f265d04861a8bff9c3b0a78f3 100644 (file)
@@ -125,7 +125,15 @@ u32 addrmap[][8] = {
 struct dram_info dram_info;
 
 struct px30_sdram_params sdram_configs[] = {
+#if defined(CONFIG_RAM_PX30_DDR4)
+#include       "sdram-px30-ddr4-detect-333.inc"
+#elif defined(CONFIG_RAM_PX30_LPDDR2)
+#include       "sdram-px30-lpddr2-detect-333.inc"
+#elif defined(CONFIG_RAM_PX30_LPDDR3)
+#include       "sdram-px30-lpddr3-detect-333.inc"
+#else
 #include       "sdram-px30-ddr3-detect-333.inc"
+#endif
 };
 
 struct ddr_phy_skew skew = {