[U-Boot] [PATCH] TQM8xx: Fix CFI flash driver support for all TQM8xx based boards
Stefan Roese
sr at denx.de
Wed Sep 17 06:11:45 CEST 2008
Hi Wolfgang,
On Tuesday 16 September 2008, Wolfgang Denk wrote:
> After switching to using the CFI flash driver, the correct remapping
> of the flash banks was forgotten.
>
> Also, some boards were not adapted, and the old legacy flash driver
> was not removed yet.
Please find some nitpicking comments below.
<snip>
> diff --git a/board/tqc/tqm8xx/tqm8xx.c b/board/tqc/tqm8xx/tqm8xx.c
> index 96b6103..59bbdbc 100644
> --- a/board/tqc/tqm8xx/tqm8xx.c
> +++ b/board/tqc/tqm8xx/tqm8xx.c
> @@ -1,5 +1,5 @@
> /*
> - * (C) Copyright 2000-2006
> + * (C) Copyright 2000-2008
> * Wolfgang Denk, DENX Software Engineering, wd at denx.de.
> *
> * See file CREDITS for list of people who contributed to this
> @@ -21,16 +21,14 @@
> * MA 02111-1307 USA
> */
>
> -#if 0
> -#define DEBUG
> -#endif
> -
> #include <common.h>
> #include <mpc8xx.h>
> #ifdef CONFIG_PS2MULT
> #include <ps2mult.h>
> #endif
>
> +extern flash_info_t flash_info[]; /* FLASH chips info */
> +
> DECLARE_GLOBAL_DATA_PTR;
>
> static long int dram_size (long int, long int *, long int);
> @@ -451,24 +449,107 @@ int board_early_init_r (void)
>
> #endif /* CONFIG_PS2MULT */
>
> -/*
> ---------------------------------------------------------------------------
>- */ -/* HMI10 specific stuff */
> -/*
> ---------------------------------------------------------------------------
>- */ -#ifdef CONFIG_HMI10
>
> +#ifdef CONFIG_MISC_INIT_R
> int misc_init_r (void)
> {
> -# ifdef CONFIG_IDE_LED
> - volatile immap_t *immap = (immap_t *) CFG_IMMR;
> + volatile immap_t *immap = (immap_t *)CFG_IMMR;
> + volatile memctl8xx_t *memctl = &immap->im_memctl;
> +
> +#ifdef CFG_OR_TIMING_FLASH_AT_50MHZ
> + int scy, trlx, flash_or_timing, clk_diff;
> +
> + scy = (CFG_OR_TIMING_FLASH_AT_50MHZ & OR_SCY_MSK) >> 4;
> + if (CFG_OR_TIMING_FLASH_AT_50MHZ & OR_TRLX) {
> + trlx = OR_TRLX;
> + scy *= 2;
> + } else
> + trlx = 0;
> +
> + /*
> + * We assume that each 10MHz of bus clock require 1-clk SCY
> + * adjustment.
> + */
> + clk_diff = (gd->bus_clk / 1000000) - 50;
Indentation looks wrong here.
> +
> + /*
> + * We need proper rounding here. This is what the "+5" and "-5"
> + * are here for.
> + */
> + if (clk_diff >= 0)
> + scy += (clk_diff + 5) / 10;
> + else
> + scy += (clk_diff - 5) / 10;
And here. And other places below too.
Best regards,
Stefan
=====================================================================
DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: +49-8142-66989-0 Fax: +49-8142-66989-80 Email: office at denx.de
=====================================================================
More information about the U-Boot
mailing list