[U-Boot] [PATCH] mtd: nand: mxs: Add ECC geometry for 2048b/112b NAND

Marek Vasut marex at denx.de
Thu Sep 25 21:13:36 CEST 2014


Add ECC geometry for NAND which has 2048b pagesize and 112b OOB
size. This is for example Macronix MX30LF2G28AB chip.

Signed-off-by: Marek Vasut <marex at denx.de>
---
 drivers/mtd/nand/mxs_nand.c | 9 +++++++--
 1 file changed, 7 insertions(+), 2 deletions(-)

diff --git a/drivers/mtd/nand/mxs_nand.c b/drivers/mtd/nand/mxs_nand.c
index 036c113..7a064ab 100644
--- a/drivers/mtd/nand/mxs_nand.c
+++ b/drivers/mtd/nand/mxs_nand.c
@@ -146,8 +146,13 @@ static uint32_t mxs_nand_aux_status_offset(void)
 static inline uint32_t mxs_nand_get_ecc_strength(uint32_t page_data_size,
 						uint32_t page_oob_size)
 {
-	if (page_data_size == 2048)
-		return 8;
+	if (page_data_size == 2048) {
+		if (page_oob_size == 64)
+			return 8;
+
+		if (page_oob_size == 112)
+			return 14;
+	}
 
 	if (page_data_size == 4096) {
 		if (page_oob_size == 128)
-- 
2.1.0



More information about the U-Boot mailing list