[U-Boot] [PATCH] mtdparts: Call nand_init() during mtdparts_init().

Wolfgang Denk wd at denx.de
Fri Oct 15 21:36:40 CEST 2010


Dear Scott Wood,

In message <20101015185902.GA7581 at udp111988uds.am.freescale.net> you wrote:
> The mtdparts code depends on the devices referred to by
> partition specs actually existing, both for error checking,
> when the spread feature is used, for bad block checking.
> 
> Signed-off-by: Scott Wood <scottwood at freescale.com>
> ---
>  common/cmd_mtdparts.c |    5 +----
>  include/nand.h        |    6 ++++++
>  2 files changed, 7 insertions(+), 4 deletions(-)
> 
> Applied to u-boot-nand-flash
> 
> diff --git a/common/cmd_mtdparts.c b/common/cmd_mtdparts.c
> index 5481c88..8e8ba47 100644
> --- a/common/cmd_mtdparts.c
> +++ b/common/cmd_mtdparts.c
> @@ -96,15 +96,11 @@
>  #include <linux/err.h>
>  #include <linux/mtd/mtd.h>
>  
> -#if defined(CONFIG_CMD_NAND)
>  #include <linux/mtd/nand.h>
>  #include <nand.h>
> -#endif
>  
> -#if defined(CONFIG_CMD_ONENAND)
>  #include <linux/mtd/onenand.h>
>  #include <onenand_uboot.h>
> -#endif

I don't like this.  We should include this stuff only on systems that
really need it.

>  /* special size referring to all the remaining space in a partition */
>  #define SIZE_REMAINING		0xFFFFFFFF
> @@ -1711,6 +1707,7 @@ int mtdparts_init(void)
>  		memset(last_ids, 0, MTDIDS_MAXLEN);
>  		memset(last_parts, 0, MTDPARTS_MAXLEN);
>  		memset(last_partition, 0, PARTITION_MAXLEN);
> +		nand_init();
>  		initialized = 1;
>  	}

I don't like this either.  I don't want to see a nand_init() for
systems that have no NAND at all (not even an empty one).


Best regards,

Wolfgang Denk

-- 
DENX Software Engineering GmbH,     MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de
"If you can, help others. If you can't, at least don't hurt  others."
- the Dalai Lama


More information about the U-Boot mailing list