[U-Boot] [PATCH] Flex-OneNAND driver

Scott Wood scottwood at freescale.com
Thu Oct 23 01:09:00 CEST 2008


On Mon, Sep 22, 2008 at 11:58:51AM +0530, apgmoorthy wrote:
> Hi All,
> This patch adds support for Samsung Flex-OneNAND devices.
> 
> Flex-OneNAND combines SLC and MLC technologies into a single
> device. SLC area provides increased reliability and speed, suitable
> for storing code and data, such as bootloader, kernel
> and root file system. MLC area provides high density and is best used
> for storing user data. Users can configure the size of SLC and MLC
> regions through 'onenand setboundary' command.
> 
> Signed-off-by: Rohit Hagargundgi <h.rohit at samsung.com>

Sorry for the late reply...

>  extern struct mtd_info onenand_mtd;
>  extern struct onenand_chip onenand_chip;
> +loff_t flexonenand_get_addr(int block)

Space before function declarations.

> +	for (block = start; block <= end; block++) {
> +		if (FLEXONENAND(this))
> +			instr.addr = flexonenand_get_addr(block);
> +		else
> +			instr.addr = block << onenand_chip.erase_shift;
> +
> +		if (FLEXONENAND(this) && (mtd->numeraseregions > 1)) {
> +			for (i = 0; i < mtd->numeraseregions &&
> +				mtd->eraseregions[i].offset <= instr.addr;
> i++)

Patch is line-wrapped.

Can some of this be abstracted through the driver interface, rather than
putting a bunch of stuff into what should be a relatively straightforward
command-line wrapper?

Perhaps the two regions should be exposed as separate devices.

-Scott


More information about the U-Boot mailing list