From: Hector Palacios Date: Fri, 21 Nov 2014 16:54:43 +0000 (+0100) Subject: mxs_ocotp: check for errors from the OTP controller after writing X-Git-Tag: v2015.01-rc4~30^2~11 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=ad5dd7ae4b0474b8e359c691cddb310940276695;p=platform%2Fkernel%2Fu-boot.git mxs_ocotp: check for errors from the OTP controller after writing The write operation may fail when trying to write to a locked area. In this case the ERROR bit is set in the CTRL register. Check for that condition and return an error. Signed-off-by: Hector Palacios Reviewed-by: Fabio Estevam --- diff --git a/drivers/misc/mxs_ocotp.c b/drivers/misc/mxs_ocotp.c index 0900281..1659ee6 100644 --- a/drivers/misc/mxs_ocotp.c +++ b/drivers/misc/mxs_ocotp.c @@ -221,6 +221,13 @@ static int mxs_ocotp_write_fuse(uint32_t addr, uint32_t mask) goto fail; } + /* Check for errors */ + if (readl(&ocotp_regs->hw_ocotp_ctrl) & OCOTP_CTRL_ERROR) { + puts("Failed writing fuses!\n"); + ret = -EPERM; + goto fail; + } + fail: mxs_ocotp_scale_vddio(0, &vddio_val); if (mxs_ocotp_scale_hclk(0, &hclk_val))