Przeglądaj źródła

kernel: mtk-bmt: fix usage of _oob_read

_oob_read returns number of bitflips on success while
bbt_nand_read should return 0.

Fixes: 2d49e49b18 ("mediatek: bmt: use generic mtd api")
Signed-off-by: Chuanhong Guo <[email protected]>
Chuanhong Guo 3 lat temu
rodzic
commit
f183ce35b8

+ 8 - 2
target/linux/generic/files/drivers/mtd/nand/mtk_bmt.h

@@ -95,8 +95,14 @@ bbt_nand_read(u32 page, unsigned char *dat, int dat_len,
 		.datbuf = dat,
 		.len = dat_len,
 	};
-
-	return bmtd._read_oob(bmtd.mtd, page << bmtd.pg_shift, &ops);
+	int ret;
+
+	ret = bmtd._read_oob(bmtd.mtd, page << bmtd.pg_shift, &ops);
+	if (ret < 0)
+		return ret;
+	if (ret)
+		pr_info("%s: %d bitflips\n", __func__, ret);
+	return 0;
 }
 
 static inline int bbt_nand_erase(u16 block)