• Daniel Schultz's avatar
    nvmem: imx-ocotp: Fix wrong register size · 14ba9728
    Daniel Schultz authored
    All i.MX6 SoCs have an OCOTP Controller with 4kbit fuses. The i.MX6SL is
    an exception and has only 2kbit fuses.
    
    In the TRM for the i.MX6DQ (IMX6QDRM - Rev 2, 06/2014) the fuses size is
    described in chapter 46.1.1 with:
    "32-bit word restricted program and read to 4Kbits of eFuse OTP(512x8)."
    
    In the TRM for the i.MX6SL (IMX6SLRM - Rev 2, 06/2015) the fuses size is
    described in chapter 34.1.1 with:
    "32-bit word restricted program and read to 2 kbit of eFuse OTP(128x8)."
    
    Since the Freescale Linux kernel OCOTP driver works with a fuses size of
    2 kbit for the i.MX6SL, it looks like the TRM is wrong and the formula
    to calculate the correct fuses size has to be 256x8.
    Signed-off-by: default avatarDaniel Schultz <d.schultz@phytec.de>
    Signed-off-by: default avatarSrinivas Kandagatla <srinivas.kandagatla@linaro.org>
    Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
    14ba9728
imx-ocotp.c 3.25 KB