summaryrefslogtreecommitdiff
path: root/cpu/mpc8xxx/ddr/main.c
diff options
context:
space:
mode:
authorEd Swarthout <Ed.Swarthout@freescale.com>2008-10-29 09:21:44 -0500
committerAndrew Fleming-AFLEMING <afleming@freescale.com>2008-12-03 22:47:19 -0600
commit7008d26a40a76f90cae5824c812cfed449fb97b8 (patch)
treec062c63bcb707b5424839622ed2b667da9b51699 /cpu/mpc8xxx/ddr/main.c
parentdd332e18d082de75eca3fc2c7c778f5d4571a096 (diff)
fsl ddr skip interleaving if not supported.
Removed while(1) hang if memctl_intlv_ctl is set wrong. Remove embedded tabs from strings. Signed-off-by: Ed Swarthout <Ed.Swarthout@freescale.com> Acked-by: Kumar Gala <galak@kernel.crashing.org> Acked-by: Andy Fleming <afleming@freescale.com>
Diffstat (limited to 'cpu/mpc8xxx/ddr/main.c')
-rw-r--r--cpu/mpc8xxx/ddr/main.c9
1 files changed, 7 insertions, 2 deletions
diff --git a/cpu/mpc8xxx/ddr/main.c b/cpu/mpc8xxx/ddr/main.c
index 21a16d97e1..f1ad132865 100644
--- a/cpu/mpc8xxx/ddr/main.c
+++ b/cpu/mpc8xxx/ddr/main.c
@@ -475,9 +475,14 @@ phys_size_t fsl_ddr_sdram(void)
*/
memctl_interleaved = 1;
} else {
- printf("Error: memctl interleaving not "
+ printf("Warning: memctl interleaving not "
"properly configured on all controllers\n");
- while (1);
+ memctl_interleaved = 0;
+ for (i = 0; i < CONFIG_NUM_DDR_CONTROLLERS; i++)
+ info.memctl_opts[i].memctl_interleaving = 0;
+ debug("Recomputing with memctl_interleaving off.\n");
+ total_memory = fsl_ddr_compute(&info,
+ STEP_ASSIGN_ADDRESSES);
}
}