• Alice Guo's avatar
    soc: imx8m: change to use platform driver · 7d981405
    Alice Guo authored
    Directly reading ocotp register depends on that bootloader enables ocotp
    clk, which is not always effective, so change to use nvmem API. Using
    nvmem API requires to support driver defer probe and thus change
    soc-imx8m.c to use platform driver.
    
    The other reason is that directly reading ocotp register causes kexec
    kernel hang because the 1st kernel running will disable unused clks
    after kernel boots up, and then ocotp clk will be disabled even if
    bootloader enables it. When kexec kernel, ocotp clk needs to be enabled
    before reading ocotp registers, and nvmem API with platform driver
    supported can accomplish this.
    Reviewed-by: default avatarKrzysztof Kozlowski <krzk@kernel.org>
    Signed-off-by: default avatarAlice Guo <alice.guo@nxp.com>
    Signed-off-by: default avatarShawn Guo <shawnguo@kernel.org>
    7d981405
soc-imx8m.c 6.36 KB