diff options
author | Roger Quadros <rogerq@ti.com> | 2014-08-25 16:15:32 -0700 |
---|---|---|
committer | Tony Lindgren <tony@atomide.com> | 2014-08-25 16:15:32 -0700 |
commit | 7d5929c1f34304ca5a970cfde8044053e56aa8c9 (patch) | |
tree | 411c3fa537815dd726d4123a59f208402260483f /include | |
parent | 52addcf9d6669fa439387610bc65c92fa0980cef (diff) | |
download | linux-stable-7d5929c1f34304ca5a970cfde8044053e56aa8c9.tar.gz linux-stable-7d5929c1f34304ca5a970cfde8044053e56aa8c9.tar.bz2 linux-stable-7d5929c1f34304ca5a970cfde8044053e56aa8c9.zip |
mtd: nand: omap: Revert to using software ECC by default
For v3.12 and prior, 1-bit Hamming code ECC via software was the
default choice. Commit c66d039197e4 in v3.13 changed the behaviour
to use 1-bit Hamming code via Hardware using a different ECC layout
i.e. (ROM code layout) than what is used by software ECC.
This ECC layout change causes NAND filesystems created in v3.12
and prior to be unusable in v3.13 and later. So revert back to
using software ECC by default if an ECC scheme is not explicitely
specified.
This defect can be observed on the following boards during legacy boot
-omap3beagle
-omap3touchbook
-overo
-am3517crane
-devkit8000
-ldp
-3430sdp
Signed-off-by: Roger Quadros <rogerq@ti.com>
Tested-by: Grazvydas Ignotas <notasas@gmail.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
Diffstat (limited to 'include')
-rw-r--r-- | include/linux/platform_data/mtd-nand-omap2.h | 13 |
1 files changed, 11 insertions, 2 deletions
diff --git a/include/linux/platform_data/mtd-nand-omap2.h b/include/linux/platform_data/mtd-nand-omap2.h index 660c029d694f..16ec262dfcc8 100644 --- a/include/linux/platform_data/mtd-nand-omap2.h +++ b/include/linux/platform_data/mtd-nand-omap2.h @@ -21,8 +21,17 @@ enum nand_io { }; enum omap_ecc { - /* 1-bit ECC calculation by GPMC, Error detection by Software */ - OMAP_ECC_HAM1_CODE_HW = 0, + /* + * 1-bit ECC: calculation and correction by SW + * ECC stored at end of spare area + */ + OMAP_ECC_HAM1_CODE_SW = 0, + + /* + * 1-bit ECC: calculation by GPMC, Error detection by Software + * ECC layout compatible with ROM code layout + */ + OMAP_ECC_HAM1_CODE_HW, /* 4-bit ECC calculation by GPMC, Error detection by Software */ OMAP_ECC_BCH4_CODE_HW_DETECTION_SW, /* 4-bit ECC calculation by GPMC, Error detection by ELM */ |