kernel_samsung_a53x/drivers/clk/imx
Zhipeng Wang ce6796181c clk: imx: imx8mp: fix clock tree update of TF-A managed clocks
[ Upstream commit 3d29036853b9cb07ac49e8261fca82a940be5c41 ]

On the i.MX8M*, the TF-A exposes a SiP (Silicon Provider) service
for DDR frequency scaling. The imx8m-ddrc-devfreq driver calls the
SiP and then does clk_set_parent on the DDR muxes to synchronize
the clock tree.

since commit 936c383673b9 ("clk: imx: fix composite peripheral flags"),
these TF-A managed muxes have SET_PARENT_GATE set, which results
in imx8m-ddrc-devfreq's clk_set_parent after SiP failing with -EBUSY:

clk_set_parent(dram_apb_src, sys1_pll_40m);(busfreq-imx8mq.c)

commit 926bf91248dd
("clk: imx8m: fix clock tree update of TF-A managed clocks") adds this
method and enables 8mm, 8mn and 8mq. i.MX8MP also needs it.

This is safe to do, because updating the Linux clock tree to reflect
reality will always be glitch-free.

Another reason to this patch is that powersave image BT music
requires dram to be 400MTS, so clk_set_parent(dram_alt_src,
sys1_pll_800m); is required. Without this patch, it will not succeed.

Fixes: 936c383673b9 ("clk: imx: fix composite peripheral flags")
Signed-off-by: Zhipeng Wang <zhipeng.wang_1@nxp.com>
Reviewed-by: Ahmad Fatoum <a.fatoum@pengutronix.de>
Signed-off-by: Peng Fan <peng.fan@nxp.com>
Reviewed-by: Abel Vesa <abel.vesa@linaro.org>
Link: https://lore.kernel.org/r/20240607133347.3291040-7-peng.fan@oss.nxp.com
Signed-off-by: Abel Vesa <abel.vesa@linaro.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2024-11-23 23:21:24 +01:00
..
clk-busy.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
clk-composite-7ulp.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
clk-composite-8m.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
clk-cpu.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
clk-divider-gate.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
clk-fixup-div.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
clk-fixup-mux.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
clk-frac-pll.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
clk-gate-exclusive.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
clk-gate2.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
clk-imx1.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
clk-imx5.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
clk-imx6q.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
clk-imx6sl.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
clk-imx6sll.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
clk-imx6sx.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
clk-imx6ul.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
clk-imx7d.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
clk-imx7ulp.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
clk-imx8mm.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
clk-imx8mn.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
clk-imx8mp.c clk: imx: imx8mp: fix clock tree update of TF-A managed clocks 2024-11-23 23:21:24 +01:00
clk-imx8mq.c clk: imx: imx8mq: correct error handling path 2024-11-18 11:42:53 +01:00
clk-imx8qxp-lpcg.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
clk-imx8qxp-lpcg.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
clk-imx8qxp.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
clk-imx25.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
clk-imx27.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
clk-imx31.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
clk-imx35.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
clk-lpcg-scu.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
clk-pfd.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
clk-pfdv2.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
clk-pll14xx.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
clk-pllv1.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
clk-pllv2.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
clk-pllv3.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
clk-pllv4.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
clk-scu.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
clk-scu.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
clk-sscg-pll.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
clk-vf610.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
clk.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
clk.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
Kconfig clk: imx: Select MXC_CLK for CLK_IMX8QXP 2024-11-18 11:42:53 +01:00
Makefile Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00