If DDR initialziation uses a speed table and the speed is not matched, print a warning message instead of silently ignoring.
Signed-off-by: York Sun <york...@freescale.com> --- board/freescale/corenet_ds/ddr.c | 6 ++++++ board/freescale/mpc8572ds/ddr.c | 8 ++++---- board/freescale/mpc8641hpcn/ddr.c | 5 +++++ board/freescale/p2020ds/ddr.c | 6 ++++++ board/xes/xpedite550x/ddr.c | 6 ++++++ 5 files changed, 27 insertions(+), 4 deletions(-) diff --git a/board/freescale/corenet_ds/ddr.c b/board/freescale/corenet_ds/ddr.c index f2b716d..a184592 100644 --- a/board/freescale/corenet_ds/ddr.c +++ b/board/freescale/corenet_ds/ddr.c @@ -192,10 +192,16 @@ void fsl_ddr_board_options(memctl_options_t *popts, popts->clk_adjust = pbsp->clk_adjust; popts->wrlvl_start = pbsp->wrlvl_start; popts->twoT_en = pbsp->force_2T; + break; } pbsp++; } + if (i == num_params) { + printf("Warning: board specific timing not found " + "for data rate %lu MT/s!\n", ddr_freq); + } + /* * Factors to consider for half-strength driver enable: * - number of DIMMs installed diff --git a/board/freescale/mpc8572ds/ddr.c b/board/freescale/mpc8572ds/ddr.c index ab471af..adcbd58 100644 --- a/board/freescale/mpc8572ds/ddr.c +++ b/board/freescale/mpc8572ds/ddr.c @@ -104,7 +104,6 @@ void fsl_ddr_board_options(memctl_options_t *popts, u32 num_params; u32 i; ulong ddr_freq; - int matched = 0; if (!pdimm->n_ranks) return; @@ -151,14 +150,15 @@ void fsl_ddr_board_options(memctl_options_t *popts, popts->cpo_override = pbsp->cpo; popts->write_data_delay = pbsp->write_data_delay; popts->twoT_en = pbsp->force_2T; - matched = 1; break; } pbsp++; } - if (!matched) - printf("Warning: board specific timing not found!\n"); + if (i == num_params) { + printf("Warning: board specific timing not found " + "for data rate %lu MT/s!\n", ddr_freq); + } /* * Factors to consider for half-strength driver enable: diff --git a/board/freescale/mpc8641hpcn/ddr.c b/board/freescale/mpc8641hpcn/ddr.c index bd0b299..4f2e853 100644 --- a/board/freescale/mpc8641hpcn/ddr.c +++ b/board/freescale/mpc8641hpcn/ddr.c @@ -127,6 +127,11 @@ void fsl_ddr_board_options(memctl_options_t *popts, } } + if (i == num_params) { + printf("Warning: board specific timing not found " + "for data rate %lu MT/s!\n", ddr_freq); + } + /* 2T timing enable */ popts->twoT_en = 1; } diff --git a/board/freescale/p2020ds/ddr.c b/board/freescale/p2020ds/ddr.c index 9bf7d2f..926fd19 100644 --- a/board/freescale/p2020ds/ddr.c +++ b/board/freescale/p2020ds/ddr.c @@ -83,10 +83,16 @@ void fsl_ddr_board_options(memctl_options_t *popts, popts->cpo_override = pbsp->cpo; popts->write_data_delay = pbsp->write_data_delay; popts->twoT_en = pbsp->force_2T; + break; } pbsp++; } + if (i == num_params) { + printf("Warning: board specific timing not found " + "for data rate %lu MT/s!\n", ddr_freq); + } + /* * Factors to consider for half-strength driver enable: * - number of DIMMs installed diff --git a/board/xes/xpedite550x/ddr.c b/board/xes/xpedite550x/ddr.c index 3b6e08b..8031a34 100644 --- a/board/xes/xpedite550x/ddr.c +++ b/board/xes/xpedite550x/ddr.c @@ -125,10 +125,16 @@ void fsl_ddr_board_options(memctl_options_t *popts, popts->clk_adjust = pbsp->clk_adjust; popts->cpo_override = pbsp->cpo; popts->twoT_en = 0; + break; } pbsp++; } + if (i == num_params) { + printf("Warning: board specific timing not found " + "for data rate %lu MT/s!\n", ddr_freq); + } + /* * Factors to consider for half-strength driver enable: * - number of DIMMs installed -- 1.7.0.4 _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot