From: Daniel Golle Date: Thu, 25 Nov 2021 19:45:03 +0000 (+0000) Subject: mt76: eeprom: tolerate corrected bit-flips X-Git-Tag: block-5.17-2022-01-21~91^2~134^2~20^2~30 X-Git-Url: https://git.kernel.dk/?a=commitdiff_plain;h=5b595b66394096258d0ad555a41e52ea387aeb9e;p=linux-2.6-block.git mt76: eeprom: tolerate corrected bit-flips mtd_read() returns -EUCLEAN in case of corrected bit-flips. As data was read, don't error out in this case. Signed-off-by: Daniel Golle Acked-by: Hauke Mehrtens Signed-off-by: Felix Fietkau --- diff --git a/drivers/net/wireless/mediatek/mt76/eeprom.c b/drivers/net/wireless/mediatek/mt76/eeprom.c index 2d58aa31db93..a499861918fa 100644 --- a/drivers/net/wireless/mediatek/mt76/eeprom.c +++ b/drivers/net/wireless/mediatek/mt76/eeprom.c @@ -65,6 +65,8 @@ int mt76_get_of_eeprom(struct mt76_dev *dev, void *eep, int offset, int len) offset = be32_to_cpup(list); ret = mtd_read(mtd, offset, len, &retlen, eep); put_mtd_device(mtd); + if (mtd_is_bitflip(ret)) + ret = 0; if (ret) { dev_err(dev->dev, "reading EEPROM from mtd %s failed: %i\n", part, ret);