linux/drivers/clk/imx
Leonard Crestez b234fe9558 clk: imx8m: Use SYS_PLL1_800M as intermediate parent of CLK_ARM
During cpu frequency switching the main "CLK_ARM" is reparented to an
intermediate "step" clock. On imx8mm and imx8mn the 24M oscillator is
used for this purpose but it is extremely slow, increasing wakeup
latencies to the point that i2c transactions can timeout and system
becomes unresponsive.

Fix by switching the "step" clk to SYS_PLL1_800M, matching the behavior
of imx8m cpufreq drivers in imx vendor tree.

This bug was not immediately apparent because upstream arm64 defconfig
uses the "performance" governor by default so no cpufreq transitions
happen.

Fixes: ba5625c3e2 ("clk: imx: Add clock driver support for imx8mm")
Fixes: 96d6392b54 ("clk: imx: Add support for i.MX8MN clock driver")

Cc: stable@vger.kernel.org
Signed-off-by: Leonard Crestez <leonard.crestez@nxp.com>
Link: https://lkml.kernel.org/r/f5d2b9c53f1ed5ccb1dd3c6624f56759d92e1689.1571771777.git.leonard.crestez@nxp.com
Acked-by: Shawn Guo <shawnguo@kernel.org>
Signed-off-by: Stephen Boyd <sboyd@kernel.org>
2019-10-28 02:45:37 -07:00
..
clk-busy.c This round of clk driver and framework updates is heavy on the driver update 2019-07-17 10:07:48 -07:00
clk-composite-7ulp.c
clk-composite-8m.c
clk-cpu.c This round of clk driver and framework updates is heavy on the driver update 2019-07-17 10:07:48 -07:00
clk-divider-gate.c
clk-fixup-div.c This round of clk driver and framework updates is heavy on the driver update 2019-07-17 10:07:48 -07:00
clk-fixup-mux.c This round of clk driver and framework updates is heavy on the driver update 2019-07-17 10:07:48 -07:00
clk-frac-pll.c
clk-gate2.c This round of clk driver and framework updates is heavy on the driver update 2019-07-17 10:07:48 -07:00
clk-gate-exclusive.c This round of clk driver and framework updates is heavy on the driver update 2019-07-17 10:07:48 -07:00
clk-imx1.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 336 2019-06-05 17:37:07 +02:00
clk-imx5.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 2019-06-19 17:09:55 +02:00
clk-imx6q.c This round of clk driver and framework updates is heavy on the driver update 2019-07-17 10:07:48 -07:00
clk-imx6sl.c This round of clk driver and framework updates is heavy on the driver update 2019-07-17 10:07:48 -07:00
clk-imx6sll.c Merge branches 'clk-rpi-cpufreq', 'clk-tegra', 'clk-simplify-provider.h', 'clk-sprd' and 'clk-at91' into clk-next 2019-07-12 11:11:30 -07:00
clk-imx6sx.c This round of clk driver and framework updates is heavy on the driver update 2019-07-17 10:07:48 -07:00
clk-imx6ul.c This round of clk driver and framework updates is heavy on the driver update 2019-07-17 10:07:48 -07:00
clk-imx7d.c This round of clk driver and framework updates is heavy on the driver update 2019-07-17 10:07:48 -07:00
clk-imx7ulp.c clk: imx7ulp: Make sure earlycon's clock is enabled 2019-08-03 10:54:44 +02:00
clk-imx8mm.c clk: imx8m: Use SYS_PLL1_800M as intermediate parent of CLK_ARM 2019-10-28 02:45:37 -07:00
clk-imx8mn.c clk: imx8m: Use SYS_PLL1_800M as intermediate parent of CLK_ARM 2019-10-28 02:45:37 -07:00
clk-imx8mq.c clk: imx8mq: Fix sys3 pll references 2019-08-19 13:54:18 +02:00
clk-imx8qxp-lpcg.c clk: imx8: Add DSP related clocks 2019-08-03 09:16:02 +02:00
clk-imx8qxp-lpcg.h
clk-imx8qxp.c
clk-imx21.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152 2019-05-30 11:26:32 -07:00
clk-imx25.c
clk-imx27.c
clk-imx31.c
clk-imx35.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 2019-06-19 17:09:55 +02:00
clk-lpcg-scu.c
clk-pfd.c This round of clk driver and framework updates is heavy on the driver update 2019-07-17 10:07:48 -07:00
clk-pfdv2.c
clk-pll14xx.c clk: imx: clk-pll14xx: unbypass PLL by default 2019-09-17 22:53:34 -07:00
clk-pllv1.c
clk-pllv2.c
clk-pllv3.c This round of clk driver and framework updates is heavy on the driver update 2019-07-17 10:07:48 -07:00
clk-pllv4.c
clk-sccg-pll.c
clk-scu.c
clk-scu.h
clk-vf610.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152 2019-05-30 11:26:32 -07:00
clk.c clk: imx: Add API for clk unregister when driver probe fail 2019-08-03 09:16:01 +02:00
clk.h clk: imx: Remove unused function statement 2019-08-03 10:56:37 +02:00
Kconfig clk: imx: Add support for i.MX8MN clock driver 2019-08-03 09:16:02 +02:00
Makefile clk: imx: Add support for i.MX8MN clock driver 2019-08-03 09:16:02 +02:00