[U-Boot] [U-Boot, v2, 1/3] am33xx: elm: add support for BCH16_ECC - ELM driver updates
Scott Wood
scottwood at freescale.com
Thu Nov 14 01:35:57 CET 2013
On Tue, Sep 10, 2013 at 12:55:06PM +0530, pekon gupta wrote:
> With increase in NAND flash densities occurence of bit-flips has increased.
> Thus stronger ECC schemes are required for detecting and correcting multiple
> simultaneous bit-flips in same NAND page. But stronger ECC schemes have large
> ECC syndrome which require more space in OOB/Spare.
> This patch add support for BCH16_ECC:
> (a) BCH16_ECC can correct 16 bit-flips per 512Bytes of data.
> (b) BCH16_ECC generates 26-bytes of ECC syndrome / 512B.
>
> Due to (b) this scheme can only be used with NAND devices which have enough
> OOB to satisfy following equation:
> OOBsize per page >= 26 * (page-size / 512)
>
> Signed-off-by: Pekon Gupta <pekon at ti.com>
>
> ---
> arch/arm/cpu/armv7/am33xx/elm.c | 95 ++++++++++++++++++++++------------
> arch/arm/include/asm/arch-am33xx/elm.h | 16 +++---
> 2 files changed, 69 insertions(+), 42 deletions(-)
omap_gpmc.c: In function 'omap_correct_data_bch':
omap_gpmc.c:550:19: error: conversion to incomplete type
It looks like this is fixed in patch 2/3, but this breaks bisectability.
Also, does this code really belong under arch/arm rather than
drivers/mtd/nand?
-Scott
More information about the U-Boot
mailing list