[U-Boot] [PATCH] mx6sxsabresd: Fix SPL memory description
Fabio Estevam
fabio.estevam at freescale.com
Wed Apr 22 15:22:12 CEST 2015
Commit 1565d54a7671a1 ("imx:mx6sxsabresd board spl support") introduced the
SPL support, but described the memory layout incorrectly.
mx6sxsabresd board has two MT41K256M16HA-125 DDR3 chips.
Each MT41K256M16HA-125 has 16-bit width, giving a total bus width of 32 bits and
1GiB of RAM space, so fix the memory representation accordingly.
Signed-off-by: Fabio Estevam <fabio.estevam at freescale.com>
---
board/freescale/mx6sxsabresd/mx6sxsabresd.c | 9 +++++----
1 file changed, 5 insertions(+), 4 deletions(-)
diff --git a/board/freescale/mx6sxsabresd/mx6sxsabresd.c b/board/freescale/mx6sxsabresd/mx6sxsabresd.c
index 2ff960e..1a1beaf 100644
--- a/board/freescale/mx6sxsabresd/mx6sxsabresd.c
+++ b/board/freescale/mx6sxsabresd/mx6sxsabresd.c
@@ -523,10 +523,11 @@ const struct mx6_mmdc_calibration mx6_mmcd_calib = {
.p0_mpwrdlctl = 0x34363638,
};
+/* MT41K256M16HA-125 */
static struct mx6_ddr3_cfg mem_ddr = {
.mem_speed = 1600,
.density = 4,
- .width = 32,
+ .width = 16,
.banks = 8,
.rowaddr = 15,
.coladdr = 10,
@@ -553,8 +554,8 @@ static void ccgr_init(void)
static void spl_dram_init(void)
{
struct mx6_ddr_sysinfo sysinfo = {
- .dsize = mem_ddr.width/32,
- .cs_density = 24,
+ .dsize = 1, /* 32-bit width total */
+ .cs_density = 32, /* Probe full 32GiB range */
.ncs = 1,
.cs1_mirror = 0,
.rtt_wr = 2,
@@ -567,7 +568,7 @@ static void spl_dram_init(void)
.rst_to_cke = 0x23, /* 33 cycles, 500us (JEDEC default) */
};
- mx6sx_dram_iocfg(mem_ddr.width, &mx6_ddr_ioregs, &mx6_grp_ioregs);
+ mx6sx_dram_iocfg(32, &mx6_ddr_ioregs, &mx6_grp_ioregs);
mx6_dram_cfg(&sysinfo, &mx6_mmcd_calib, &mem_ddr);
}
--
1.9.1
More information about the U-Boot
mailing list