i4x4-ram
authorVagrant Cascadian <vagrant@debian.org>
Mon, 2 Apr 2018 01:20:06 +0000 (02:20 +0100)
committerVagrant Cascadian <vagrant@debian.org>
Mon, 2 Apr 2018 01:20:06 +0000 (02:20 +0100)
Gbp-Pq: Topic mx6cuboxi
Gbp-Pq: Name i4x4-ram.patch

board/solidrun/mx6cuboxi/Kconfig
board/solidrun/mx6cuboxi/mx6cuboxi.c

index 741c1754f819113d2fceb9b852f89dd326cce013..fc68eedce91732af7a624f7e9734b7d620051e56 100644 (file)
@@ -9,4 +9,8 @@ config SYS_VENDOR
 config SYS_CONFIG_NAME
        default "mx6cuboxi"
 
+config I4X4_RAM
+       bool "4GB ram support for cubox i4x4 (will break cubox i4)"
+       default n
+
 endif
index ee9e4f7c01ebf0a1088c1bb0a32e109a84596fa9..f4800f9eafa319c548b2fdc4541b42953390df34 100644 (file)
@@ -600,6 +600,19 @@ static struct mx6_ddr3_cfg mem_ddr_4g = {
        .trasmin = 3500,
 };
 
+static struct mx6_ddr3_cfg mem_ddr_8g = {
+       .mem_speed = 1600,
+       .density = 4,
+       .width = 16,
+       .banks = 8,
+       .rowaddr = 16,
+       .coladdr = 10,
+       .pagesz = 2,
+       .trcd = 1375,
+       .trcmin = 4875,
+       .trasmin = 3500,
+};
+
 static void ccgr_init(void)
 {
        struct mxc_ccm_reg *ccm = (struct mxc_ccm_reg *)CCM_BASE_ADDR;
@@ -643,7 +656,11 @@ static void spl_dram_init(int width)
        if (is_cpu_type(MXC_CPU_MX6D))
                mx6_dram_cfg(&sysinfo, &mx6q_1g_mmcd_calib, &mem_ddr_2g);
        else if (is_cpu_type(MXC_CPU_MX6Q))
-               mx6_dram_cfg(&sysinfo, &mx6q_2g_mmcd_calib, &mem_ddr_4g);
+               #ifdef CONFIG_I4X4_RAM
+                       mx6_dram_cfg(&sysinfo, &mx6q_2g_mmcd_calib, &mem_ddr_8g);
+               #else
+                       mx6_dram_cfg(&sysinfo, &mx6q_2g_mmcd_calib, &mem_ddr_4g);
+               #endif
        else if (is_cpu_type(MXC_CPU_MX6DL))
                mx6_dram_cfg(&sysinfo, &mx6dl_1g_mmcd_calib, &mem_ddr_2g);
        else if (is_cpu_type(MXC_CPU_MX6SOLO))