[U-Boot] [PATCH v2 6/7] mtd: nand: add driver for diskonchip g4 nand flash

Scott Wood
2013-04-11T21:00:07Z

On 04/10/2013 07:45:27 PM, Mike Dunn wrote:
> This patch adds a driver for the diskonchip G4 nand flash device. It
> is based
> on the driver from the linux kernel.
>
> This also includes a separate SPL driver. A separate SPL driver is
> used because
> the device operates in a different mode (reliable mode) when loading
> a boot
> image, and also because the storage format of the boot image is
> different from
> normal data (pages are stored redundantly). The SPL driver basically
> mimics how
> a typical IPL reads data from the device. The special operating mode
> and
> storage format are used to compensate for the fact that the IPL does
> not contain
> the BCH ecc decoding algorithm (due to size constraints). Although
> the u-boot
> SPL *could* use ecc, it operates like an IPL for the sake of
> simplicity and
> uniformity, since the IPL and SPL share the task of loading the
> u-boot image.
> As a side benefit, the SPL driver is very small.
>
> [port from linux kernel 3.4 commit
> 570469f3bde7f71cc1ece07a18d54a05b6a8775d]
>
> Signed-off-by: Mike Dunn <mikedunn@newsguy.com>
> ---
> drivers/mtd/nand/Makefile | 2 +
> drivers/mtd/nand/docg4.c | 1035
> ++++++++++++++++++++++++++++++++++++++++++
> drivers/mtd/nand/docg4_spl.c | 222 +++++++++
> include/linux/mtd/docg4.h | 134 ++++++
> 4 files changed, 1393 insertions(+), 0 deletions(-)
> create mode 100644 drivers/mtd/nand/docg4.c
> create mode 100644 drivers/mtd/nand/docg4_spl.c
> create mode 100644 include/linux/mtd/docg4.h
[snip]
> +#ifdef DEBUG_DOCG4
> +#define dbg(format, arg...) printf("DEBUG: " format, ##arg)
> +#else
> +#define dbg(format, arg...) do {} while (0)
> +#endif

Maybe use MTDDEBUG?

Otherwise:
Acked-by: Scott Wood <scottwood@freescale.com>

-Scott