Hi,
we have an imx8md processor on a custom board and we need to use CLK_EXT3 as input to one of the SAI modules.
However if we change the assigned parent in the device tree the board freezes without any error during boot up:
&sai2 {
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_sai2>;
assigned-clocks = <&clk IMX8MQ_CLK_SAI2>;
assigned-clock-parents = <&clk IMX8MQ_CLK_EXT3>;
status = "okay";
};
If I change the clock parent to any other (e.g. 25M_REF_CLK or IMX8MQ_AUDIO_PLL1_OUT) of the supported clock parents according to reference manual it works.
The pins are configured as required:
pinctrl_hog: hoggrp {
fsl,pins = <
MX8MQ_IOMUXC_GPIO1_IO06_CCMSRCGPCMIX_EXT_CLK3 0x00000011
MX8MQ_IOMUXC_GPIO1_IO15_CCMSRCGPCMIX_CLKO2 0x00000011
The same applies to clock slice 117 IPP_DO_CLKO2 if I try to reparent to anything other than the default 25M_REF_CLK. The system instantly freezes without any error.
If I change the above from userspace via the CCM registers the same happens -> freeze:
Set CLKO2 to 32K reference clock: devmem2 0x3038BA84 w 0x17000000
The reference manual does not mention anything regarding these topics or if there is a special sequence etc.
which must be followed to change parents.
Any help or hints are appreciated!
Thanks,
Wolfgang