mirror of
https://github.com/AsahiLinux/u-boot
synced 2024-11-10 23:24:38 +00:00
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: Albert ARIBAUD (3ADEV) <albert.aribaud@3adev.fr>
This commit is contained in:
parent
e9ced147bc
commit
db74cbfc09
1 changed files with 5 additions and 4 deletions
|
@ -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;
|
||||
|
|
Loading…
Reference in a new issue