RE: [PATCH V2 02/10] clk: imx8m: drop clk_hw_set_parent for A53
From: Aisheng Dong
Date: Sat Apr 25 2020 - 23:54:42 EST
> From: Peng Fan <peng.fan@xxxxxxx>
> Sent: Thursday, March 12, 2020 6:20 PM
>
> The parent settings have been moved to dtsi, we no need to set parent here. And
> clk_hw_set_parent will trigger lockdep warning, because this api not have
> prepare_lock.
>
> Reported-by: Leonard Crestez <leonard.crestez@xxxxxxx>
> Signed-off-by: Peng Fan <peng.fan@xxxxxxx>
For the patch:
Reviewed-by: Dong Aisheng <aisheng.dong@xxxxxxx>
BTW, What kind of lockdep warning?
Do you mean it's generic issue that we can't use clk_hw_set_parent in clock driver?
Regards
Aisheng
> ---
> drivers/clk/imx/clk-imx8mm.c | 3 ---
> drivers/clk/imx/clk-imx8mn.c | 3 ---
> drivers/clk/imx/clk-imx8mp.c | 3 ---
> drivers/clk/imx/clk-imx8mq.c | 3 ---
> 4 files changed, 12 deletions(-)
>
> diff --git a/drivers/clk/imx/clk-imx8mm.c b/drivers/clk/imx/clk-imx8mm.c index
> 925670438f23..5435042a06e3 100644
> --- a/drivers/clk/imx/clk-imx8mm.c
> +++ b/drivers/clk/imx/clk-imx8mm.c
> @@ -614,9 +614,6 @@ static int imx8mm_clocks_probe(struct
> platform_device *pdev)
> hws[IMX8MM_ARM_PLL_OUT]->clk,
> hws[IMX8MM_CLK_A53_DIV]->clk);
>
> - clk_hw_set_parent(hws[IMX8MM_CLK_A53_SRC],
> hws[IMX8MM_SYS_PLL1_800M]);
> - clk_hw_set_parent(hws[IMX8MM_CLK_A53_CORE],
> hws[IMX8MM_ARM_PLL_OUT]);
> -
> imx_check_clk_hws(hws, IMX8MM_CLK_END);
>
> ret = of_clk_add_hw_provider(np, of_clk_hw_onecell_get, clk_hw_data);
> diff --git a/drivers/clk/imx/clk-imx8mn.c b/drivers/clk/imx/clk-imx8mn.c index
> 0bc7070235bd..6cac6ca03e12 100644
> --- a/drivers/clk/imx/clk-imx8mn.c
> +++ b/drivers/clk/imx/clk-imx8mn.c
> @@ -565,9 +565,6 @@ static int imx8mn_clocks_probe(struct platform_device
> *pdev)
> hws[IMX8MN_ARM_PLL_OUT]->clk,
> hws[IMX8MN_CLK_A53_DIV]->clk);
>
> - clk_hw_set_parent(hws[IMX8MN_CLK_A53_SRC],
> hws[IMX8MN_SYS_PLL1_800M]);
> - clk_hw_set_parent(hws[IMX8MN_CLK_A53_CORE],
> hws[IMX8MN_ARM_PLL_OUT]);
> -
> imx_check_clk_hws(hws, IMX8MN_CLK_END);
>
> ret = of_clk_add_hw_provider(np, of_clk_hw_onecell_get, clk_hw_data);
> diff --git a/drivers/clk/imx/clk-imx8mp.c b/drivers/clk/imx/clk-imx8mp.c index
> 41469e2cc3de..e05ec56df285 100644
> --- a/drivers/clk/imx/clk-imx8mp.c
> +++ b/drivers/clk/imx/clk-imx8mp.c
> @@ -735,9 +735,6 @@ static int imx8mp_clocks_probe(struct platform_device
> *pdev)
> hws[IMX8MP_ARM_PLL_OUT]->clk,
> hws[IMX8MP_CLK_A53_DIV]->clk);
>
> - clk_hw_set_parent(hws[IMX8MP_CLK_A53_SRC],
> hws[IMX8MP_SYS_PLL1_800M]);
> - clk_hw_set_parent(hws[IMX8MP_CLK_A53_CORE],
> hws[IMX8MP_ARM_PLL_OUT]);
> -
> imx_check_clk_hws(hws, IMX8MP_CLK_END);
>
> of_clk_add_hw_provider(np, of_clk_hw_onecell_get, clk_hw_data); diff
> --git a/drivers/clk/imx/clk-imx8mq.c b/drivers/clk/imx/clk-imx8mq.c index
> fdc68db68de5..201c7bbb201f 100644
> --- a/drivers/clk/imx/clk-imx8mq.c
> +++ b/drivers/clk/imx/clk-imx8mq.c
> @@ -599,9 +599,6 @@ static int imx8mq_clocks_probe(struct platform_device
> *pdev)
> hws[IMX8MQ_ARM_PLL_OUT]->clk,
> hws[IMX8MQ_CLK_A53_DIV]->clk);
>
> - clk_hw_set_parent(hws[IMX8MQ_CLK_A53_SRC],
> hws[IMX8MQ_SYS1_PLL_800M]);
> - clk_hw_set_parent(hws[IMX8MQ_CLK_A53_CORE],
> hws[IMX8MQ_ARM_PLL_OUT]);
> -
> imx_check_clk_hws(hws, IMX8MQ_CLK_END);
>
> err = of_clk_add_hw_provider(np, of_clk_hw_onecell_get, clk_hw_data);
> --
> 2.16.4