Revert "nand: make 1-bit software ECC configurable"
This reverts commit 4fee6c2f29.
It breaks boards that currently rely on soft-ecc, as pointed out here:
http://patchwork.ozlabs.org/patch/140872/
The reverted patch should be resubmitted with documentation, and with the
CONFIG_MTD_ECC_SOFT selected from every board that needs it.  We could
start by looking at what NAND driver the board selects, and whether
that driver ever asks for soft ECC.
Signed-off-by: Scott Wood <scottwood@freescale.com>
			
			
This commit is contained in:
		
							parent
							
								
									54e96680cb
								
							
						
					
					
						commit
						1f7b1743d3
					
				|  | @ -39,7 +39,7 @@ COBJS-y += nand_bbt.o | |||
| COBJS-y += nand_ids.o | ||||
| COBJS-y += nand_util.o | ||||
| endif | ||||
| COBJS-$(CONFIG_MTD_ECC_SOFT) += nand_ecc.o | ||||
| COBJS-y += nand_ecc.o | ||||
| COBJS-y += nand_base.o | ||||
| COBJS-$(CONFIG_NAND_ECC_BCH) += nand_bch.o | ||||
| 
 | ||||
|  |  | |||
|  | @ -3028,10 +3028,6 @@ int nand_scan_tail(struct mtd_info *mtd) | |||
| 		chip->ecc.mode = NAND_ECC_SOFT; | ||||
| 
 | ||||
| 	case NAND_ECC_SOFT: | ||||
| 		if (!mtd_nand_has_ecc_soft()) { | ||||
| 			printk(KERN_WARNING "CONFIG_MTD_ECC_SOFT not enabled\n"); | ||||
| 			return -EINVAL; | ||||
| 		} | ||||
| 		chip->ecc.calculate = nand_calculate_ecc; | ||||
| 		chip->ecc.correct = nand_correct_data; | ||||
| 		chip->ecc.read_page = nand_read_page_swecc; | ||||
|  |  | |||
|  | @ -15,10 +15,6 @@ | |||
| 
 | ||||
| struct mtd_info; | ||||
| 
 | ||||
| #if defined(CONFIG_MTD_ECC_SOFT) | ||||
| 
 | ||||
| static inline int mtd_nand_has_ecc_soft(void) { return 1; } | ||||
| 
 | ||||
| /*
 | ||||
|  * Calculate 3 byte ECC code for 256 byte block | ||||
|  */ | ||||
|  | @ -29,25 +25,4 @@ int nand_calculate_ecc(struct mtd_info *mtd, const u_char *dat, u_char *ecc_code | |||
|  */ | ||||
| int nand_correct_data(struct mtd_info *mtd, u_char *dat, u_char *read_ecc, u_char *calc_ecc); | ||||
| 
 | ||||
| #else | ||||
| 
 | ||||
| static inline int mtd_nand_has_ecc_soft(void) { return 0; } | ||||
| 
 | ||||
| static inline int | ||||
| nand_calculate_ecc(struct mtd_info *mtd, const u_char *dat, u_char *ecc_code) | ||||
| { | ||||
| 	return -1; | ||||
| } | ||||
| 
 | ||||
| static inline int | ||||
| nand_correct_data(struct mtd_info *mtd, | ||||
| 			u_char *dat, | ||||
| 			u_char *read_ecc, | ||||
| 			u_char *calc_ecc) | ||||
| { | ||||
| 	return -1; | ||||
| } | ||||
| 
 | ||||
| #endif | ||||
| 
 | ||||
| #endif /* __MTD_NAND_ECC_H__ */ | ||||
|  |  | |||
		Loading…
	
		Reference in New Issue