Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit eb684507 authored by Jörn Engel's avatar Jörn Engel Committed by David Woodhouse
Browse files

[MTD] [NAND] Replace -1 with -EBADMSG in nand error correction code



Magic numerical values are just bad style.  Particularly so when
undocumented.

Signed-off-by: default avatarJörn Engel <joern@logfs.org>
Signed-off-by: default avatarDavid Woodhouse <dwmw2@infradead.org>
parent 1dd7fdb1
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -220,7 +220,7 @@ static int doc_ecc_decode(struct rs_control *rs, uint8_t *data, uint8_t *ecc)
		}
	}
	/* If the parity is wrong, no rescue possible */
	return parity ? -1 : nerr;
	return parity ? -EBADMSG : nerr;
}

static void DoC_Delay(struct doc_priv *doc, unsigned short cycles)
@@ -1034,7 +1034,7 @@ static int doc200x_correct_data(struct mtd_info *mtd, u_char *dat,
		WriteDOC(DOC_ECC_DIS, docptr, Mplus_ECCConf);
	else
		WriteDOC(DOC_ECC_DIS, docptr, ECCConf);
	if (no_ecc_failures && (ret == -1)) {
	if (no_ecc_failures && (ret == -EBADMSG)) {
		printk(KERN_ERR "suppressing ECC failure\n");
		ret = 0;
	}
+1 −1
Original line number Diff line number Diff line
@@ -189,7 +189,7 @@ int nand_correct_data(struct mtd_info *mtd, u_char *dat,
	if(countbits(s0 | ((uint32_t)s1 << 8) | ((uint32_t)s2 <<16)) == 1)
		return 1;

	return -1;
	return -EBADMSG;
}
EXPORT_SYMBOL(nand_correct_data);

+1 −1
Original line number Diff line number Diff line
@@ -202,7 +202,7 @@
		 * deg(lambda) unequal to number of roots => uncorrectable
		 * error detected
		 */
		count = -1;
		count = -EBADMSG;
		goto finish;
	}
	/*
+2 −0
Original line number Diff line number Diff line
@@ -320,6 +320,7 @@ EXPORT_SYMBOL_GPL(encode_rs8);
 *  The syndrome and parity uses a uint16_t data type to enable
 *  symbol size > 8. The calling code must take care of decoding of the
 *  syndrome result and the received parity before calling this code.
 *  Returns the number of corrected bits or -EBADMSG for uncorrectable errors.
 */
int decode_rs8(struct rs_control *rs, uint8_t *data, uint16_t *par, int len,
	       uint16_t *s, int no_eras, int *eras_pos, uint16_t invmsk,
@@ -363,6 +364,7 @@ EXPORT_SYMBOL_GPL(encode_rs16);
 *  @corr:	buffer to store correction bitmask on eras_pos
 *
 *  Each field in the data array contains up to symbol size bits of valid data.
 *  Returns the number of corrected bits or -EBADMSG for uncorrectable errors.
 */
int decode_rs16(struct rs_control *rs, uint16_t *data, uint16_t *par, int len,
		uint16_t *s, int no_eras, int *eras_pos, uint16_t invmsk,