Commit db74cbfc authored by Albert ARIBAUD \(3ADEV\)'s avatar Albert ARIBAUD \(3ADEV\) Committed by Tom Rini

pcm052: fix DDR initialization sequence

The sequence erroneously launched the DDR controller
initialization before the pad muxing was done, causing
DRAM size computation to hang.

Configuring the pads first then launching DDR controller
initialization prevents the DRAM hanging.
Signed-off-by: 's avatarAlbert ARIBAUD (3ADEV) <albert.aribaud@3adev.fr>
parent e9ced147
......@@ -258,8 +258,7 @@ int dram_init(void)
.wldqsen = 25,
};
ddrmc_ctrl_init_ddr3(&pcm052_ddr_timings, pcm052_cr_settings,
pcm052_phy_settings, 1, 2);
const int row_diff = 2;
#elif defined(CONFIG_TARGET_BK4R1)
......@@ -314,8 +313,7 @@ int dram_init(void)
.wldqsen = 25,
};
ddrmc_ctrl_init_ddr3(&pcm052_ddr_timings, pcm052_cr_settings,
pcm052_phy_settings, 1, 1);
const int row_diff = 1;
#else /* Unknown PCM052 variant */
......@@ -325,6 +323,9 @@ int dram_init(void)
imx_iomux_v3_setup_multiple_pads(pcm052_pads, ARRAY_SIZE(pcm052_pads));
ddrmc_ctrl_init_ddr3(&pcm052_ddr_timings, pcm052_cr_settings,
pcm052_phy_settings, 1, row_diff);
gd->ram_size = get_ram_size((void *)PHYS_SDRAM, PHYS_SDRAM_SIZE);
return 0;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment