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>
master
Fabio Estevam 8 years ago committed by Stefano Babic
parent 53fec16206
commit ba4e159f98
  1. 6
      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)

Loading…
Cancel
Save