summaryrefslogtreecommitdiff
path: root/board
diff options
context:
space:
mode:
authorFabio Estevam <fabio.estevam@nxp.com>2016-09-12 11:38:36 -0300
committerStefano Babic <sbabic@denx.de>2016-10-04 12:01:14 +0200
commitba4e159f9804c02a87ed38be0ed669a348d78f25 (patch)
tree2fa21834b34f5ceb90b097dd6f63ab937da15625 /board
parent53fec162061811a73c7dab3207f8fdb2343ae289 (diff)
downloadu-boot-ba4e159f9804c02a87ed38be0ed669a348d78f25.tar.gz
u-boot-ba4e159f9804c02a87ed38be0ed669a348d78f25.tar.bz2
u-boot-ba4e159f9804c02a87ed38be0ed669a348d78f25.zip
wandboard: Fix hang when going into low frequency
A kernel hang is observed when running wandboard 3.14 kernel and going to the lowest operational point of cpufreq: # ifconfig eth0 down # echo 1 > /sys/class/graphics/fb0/blank The problem is caused by incorrect setting of the REFR field of register MDREF. Setting it to 4 refresh commands per refresh cycle fixes the hang. Signed-off-by: Fabio Estevam <fabio.estevam@nxp.com>
Diffstat (limited to 'board')
-rw-r--r--board/wandboard/spl.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/board/wandboard/spl.c b/board/wandboard/spl.c
index c513b22d82..a21a3d0f21 100644
--- a/board/wandboard/spl.c
+++ b/board/wandboard/spl.c
@@ -188,7 +188,7 @@ static struct mx6_ddr_sysinfo mem_q = {
.rst_to_cke = 0x23,
.sde_to_rst = 0x10,
.refsel = 1, /* Refresh cycles at 32KHz */
- .refr = 7, /* 8 refresh commands per refresh cycle */
+ .refr = 3, /* 4 refresh commands per refresh cycle */
};
static struct mx6_mmdc_calibration mx6dl_1g_mmdc_calib = {
@@ -231,7 +231,7 @@ static struct mx6_ddr_sysinfo mem_dl = {
.rst_to_cke = 0x23,
.sde_to_rst = 0x10,
.refsel = 1, /* Refresh cycles at 32KHz */
- .refr = 7, /* 8 refresh commands per refresh cycle */
+ .refr = 3, /* 4 refresh commands per refresh cycle */
};
/* DDR 32bit 512MB */
@@ -250,7 +250,7 @@ static struct mx6_ddr_sysinfo mem_s = {
.rst_to_cke = 0x23,
.sde_to_rst = 0x10,
.refsel = 1, /* Refresh cycles at 32KHz */
- .refr = 7, /* 8 refresh commands per refresh cycle */
+ .refr = 3, /* 4 refresh commands per refresh cycle */
};
static void ccgr_init(void)