tmp_suning_uos_patched/drivers/mtd/nand
Feng Kan 76c23c32e3 mtd: nand: fix ECC Correction bug for SMC ordering for NDFC driver
Fix ECC Correction bug where the byte offset location were double
fliped causing correction routine to toggle the wrong byte location
in the ECC segment. The ndfc_calculate_ecc routine change the order
of getting the ECC code.
        /* The NDFC uses Smart Media (SMC) bytes order */
        ecc_code[0] = p[2];
        ecc_code[1] = p[1];
        ecc_code[2] = p[3];
But in the Correction algorithm when calculating the byte offset
location, the b1 is used as the upper part of the address. Which
again reverse the order making the final byte offset address
location incorrect.
	byte_addr = (addressbits[b1] << 4) + addressbits[b0];
The order is change to read it in straight and let the correction
function to revert it to SMC order.

Cc: stable@kernel.org
Signed-off-by: Feng Kan <fkan@amcc.com>
Acked-by: Victor Gallardo <vgallardo@amcc.com>
Acked-by: Prodyut Hazarika <phazarika@amcc.com>
Acked-by: Stefan Roese <sr@denx.de>
Signed-off-by: David Woodhouse <David.Woodhouse@intel.com>
2009-09-19 14:15:00 -07:00
..
alauda.c [MTD] [NAND] alauda: use USB API functions rather than constants 2009-01-05 12:59:02 +01:00
ams-delta.c omap drivers: switch to standard GPIO calls 2008-10-16 11:21:40 -07:00
atmel_nand_ecc.h [ARM] 5265/3: [AT91] Add copyright info 2008-09-21 23:01:18 +01:00
atmel_nand.c mtd: nand: add "page" parameter to all read_page/read_page_raw APIs 2009-09-19 11:13:47 -07:00
au1550nd.c [MTD] [NAND] au1550nd.c: remove unused #include <version.h> 2008-08-25 12:20:53 +01:00
autcpu12.c [ARM] Move include/asm-arm/arch-* to arch/arm/*/include/mach 2008-08-07 09:55:48 +01:00
bf5xx_nand.c mtd: blackfin NFC: fix hang when using NAND on BF527-EZKITs 2009-06-05 18:27:43 +01:00
cafe_nand.c mtd: nand: add "page" parameter to all read_page/read_page_raw APIs 2009-09-19 11:13:47 -07:00
cmx270_nand.c [ARM] pxa: move pxa2xx chip selects definitions out of pxa-regs.h 2009-03-09 21:22:40 +08:00
cs553x_nand.c [MTD] [NAND] Fix compilation warnings in drivers/mtd/nand/cs553x_nand.c 2008-10-18 12:39:17 +01:00
davinci_nand.c mtd: nand: DaVinci: Add 4-bit ECC support for large page NAND chips 2009-09-19 11:16:57 -07:00
diskonchip.c trivial: MTD: remove EOL from MODULE_DESCRIPTION 2009-03-30 15:22:02 +02:00
edb7312.c [ARM] Move include/asm-arm/arch-* to arch/arm/*/include/mach 2008-08-07 09:55:48 +01:00
excite_nandflash.c platform driver: fix incorrect use of 'platform_bus_type' with 'struct device_driver' 2009-03-24 16:38:25 -07:00
fsl_elbc_nand.c mtd: nand: add "page" parameter to all read_page/read_page_raw APIs 2009-09-19 11:13:47 -07:00
fsl_upm.c [MTD] [NAND] FSL-UPM: Add wait flags to support board/chip specific delays 2009-04-06 07:17:59 -07:00
gpio.c [MTD] [NAND] GPIO NAND flash driver 2008-10-18 12:48:42 +01:00
h1910.c [ARM] Move include/asm-arm/arch-* to arch/arm/*/include/mach 2008-08-07 09:55:48 +01:00
Kconfig mtd: omap: adding DMA mode support in nand prefetch/post-write 2009-09-19 13:21:05 -07:00
Makefile mtd: add nand support for w90p910 (v2) 2009-09-19 13:17:05 -07:00
mxc_nand.c mtd: mxc_nand: fix 2KiB pagesize NAND on i.MX27 2009-09-19 13:11:51 -07:00
nand_base.c mtd: nand: add new ECC mode - ECC_HW_OOB_FIRST 2009-09-19 11:14:54 -07:00
nand_bbt.c [MTD] update internal API to support 64-bit device size 2008-12-10 13:37:21 +00:00
nand_ecc.c mtd: nand: fix 512 byte software ecc support 2009-06-05 17:40:14 +01:00
nand_ids.c
nandsim.c [MTD] [NAND] fix nandsim sched.h references 2009-01-05 12:59:32 +01:00
ndfc.c mtd: nand: fix ECC Correction bug for SMC ordering for NDFC driver 2009-09-19 14:15:00 -07:00
omap2.c mtd: omap: adding DMA mode support in nand prefetch/post-write 2009-09-19 13:21:05 -07:00
orion_nand.c mtd: nand: register orion_nand using platform_driver_probe() 2009-09-19 11:06:30 -07:00
pasemi_nand.c powerpc: More printing warning fixes for the l64 to ll64 conversion 2009-01-28 17:15:52 +11:00
plat_nand.c mtd: plat_nand: allow platform to set partitions 2009-06-05 18:11:55 +01:00
ppchameleonevb.c
pxa3xx_nand.c mtd: pxa3xx_nand: add single-bit error corrections reporting 2009-09-19 13:13:08 -07:00
rtc_from4.c
s3c2410.c mtd/nand: s3c6400 support for s3c2410 driver 2009-06-08 12:23:23 +01:00
sh_flctl.c mtd: nand: add "page" parameter to all read_page/read_page_raw APIs 2009-09-19 11:13:47 -07:00
sharpsl.c [MTD] sharpsl-nand: move registration to board code 2008-10-29 21:08:37 +03:00
socrates_nand.c [MTD] [NAND] Add support for NAND on the Socrates board 2009-04-06 07:15:27 -07:00
spia.c
tmio_nand.c [MTD] struct device - replace bus_id with dev_name(), dev_set_name() 2008-12-23 10:00:14 +00:00
ts7250.c mtd: ep93xx: cleanup includes in ts7250 nand driver 2009-09-04 09:35:12 +01:00
txx9ndfmc.c mtd: nand: Fix memory leak on txx9ndfmc probe failure. 2009-06-09 14:31:15 +01:00
w90p910_nand.c mtd: add nand support for w90p910 (v2) 2009-09-19 13:17:05 -07:00