]> asedeno.scripts.mit.edu Git - linux.git/commit
ARM: dts: imx6sx: Use nvmem-cells for tempmon
authorLeonard Crestez <leonard.crestez@nxp.com>
Fri, 14 Jul 2017 14:11:09 +0000 (17:11 +0300)
committerShawn Guo <shawnguo@kernel.org>
Mon, 23 Oct 2017 00:19:37 +0000 (08:19 +0800)
commita6c856e9a8cd808f014f9629506c044607ffe203
treefff15fffd32eeee7f4a93eac28052c1bcd921336
parentd31c46c00f5443fe7e3714de8de27ff3621a1788
ARM: dts: imx6sx: Use nvmem-cells for tempmon

On imx6sx accessing OCOTP directly is wrong because the ocotp clock
needs to be enabled first. Use the nvmem-cells binding instead.

This requirement does not apply to older imx6qdl chips because there the
ocotp access clock (clk_ipg_s) is always enabled.

This is visible by comparing the "System Clocks, Gating, and Override"
tables (OCOTP rows) in the 6DQ and 6SX manuals:
http://www.nxp.com/assets/documents/data/en/reference-manuals/IMX6SXRM.pdf
http://www.nxp.com/assets/documents/data/en/reference-manuals/IMX6DQRM.pdf

This happens to work right now because the ocotp clock might be enabled
for some other reason. In particular the it might be enabled from the
bootloader and it only gets disabled late during boot in
clk_disable_unused, after imx-thermal has completed probing.

If imx-thermal is compiled as a module then the system can hang on
probe.

Reported-by: Lothar Waßmann <LW@KARO-electronics.de>
Signed-off-by: Leonard Crestez <leonard.crestez@nxp.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
arch/arm/boot/dts/imx6sx.dtsi