NAND subpage write support interface
Artem Bityutskiy
dedekind1 at gmail.com
Fri Mar 8 08:24:50 EST 2013
On Thu, 2013-02-28 at 06:41 +0000, Gupta, Pekon wrote:
> Hi All,
>
> Need a suggestion, based on my understanding of following flow in NAND driver:
>
> MTD Writes: (Currently implemented)
> nand_write [Interface]
> +-- nand_do_write_ops [Internal]
> +-- chip->write_page [Replacable]
> +-- chip->ecc.write_page_raw [Replaceable]
> +-- chip->ecc.write_page [Replaceable]
>
>
> MTD Read: (Currently implemented)
> nand_read [Interface]
> +-- nand_do_read_ops [Internal]
> +-- chip->ecc.read_page_raw [Replaceable]
> +-- chip->ecc.read_subpage [Replaceable]
> +-- chip->ecc.write_page [Replaceable]
I guess you meant 'read_page' here.
> My queries:
> (1) Going forward, Can the MLC and SLC programming sequence be merged
> In generic 'nand_do_write_ops' ?
> And 'chip->write_page' interface can be deprecated?
> Currently I do not see any driver except 'lpc32xx_mlc.c' using this interface.
Probably, do you have a patch?
>
> --------------------------------------------------
>
> MTD Writes: (with deprecated chip->write_page interface)
> nand_write [Interface]
> +-- nand_do_write_ops [Internal]
> +-- chip->ecc.write_page_raw [Replaceable]
> +-- chip->ecc.write_page [Replaceable]
>
> --------------------------------------------------
>
>
> (2) To add support for NAND subpage writes, I need to pass 'column' offset
> also till chip->ecc.nand_subpage_write. So I need to either update existing
> 'chip->write_page' interface,
> OR add a new interface 'chip->write_subpage' in parallel.
I guess 'write_subpage' is reasonable.
--
Best Regards,
Artem Bityutskiy
More information about the linux-mtd
mailing list