Skip to content

Commit fe0b821

Browse files
Aapo Vienamomiquelraynal
authored andcommitted
mtd: core: Don't fail mtd_otp_nvmem_add() if OTP is unsupported
Handle the case where -EOPNOTSUPP is returned from OTP driver. This addresses an issue that occurs with the Intel SPI flash controller, which has a limited supported opcode set. Whilst the OTP functionality is not available due to this restriction, other parts of the MTD functionality of the device are intact. This change allows the driver to gracefully handle the restriction by allowing the supported functionality to remain available instead of failing the probe altogether. Signed-off-by: Aapo Vienamo <aapo.vienamo@linux.intel.com> Reviewed-by: Mika Westerberg <mika.westerberg@linux.intel.com> Reviewed-by: Michael Walle <mwalle@kernel.org> Signed-off-by: Miquel Raynal <miquel.raynal@bootlin.com> Link: https://lore.kernel.org/linux-mtd/20240313173425.1325790-3-aapo.vienamo@linux.intel.com
1 parent d44f0bb commit fe0b821

1 file changed

Lines changed: 5 additions & 1 deletion

File tree

drivers/mtd/mtdcore.c

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1014,7 +1014,11 @@ static int mtd_otp_nvmem_add(struct mtd_info *mtd)
10141014

10151015
err:
10161016
nvmem_unregister(mtd->otp_user_nvmem);
1017-
return dev_err_probe(dev, err, "Failed to register OTP NVMEM device\n");
1017+
/* Don't report error if OTP is not supported. */
1018+
if (err != -EOPNOTSUPP)
1019+
return dev_err_probe(dev, err,
1020+
"Failed to register OTP NVMEM device\n");
1021+
return 0;
10181022
}
10191023

10201024
/**

0 commit comments

Comments
 (0)