Re: [PATCH v2 2/3] clk: ti: check clock type before doing autoidle ops

From: Stephen Boyd
Date: Thu Nov 29 2018 - 19:25:09 EST


Quoting Andreas Kemnade (2018-11-10 12:31:14)
> Code might use autoidle api with clocks not being omap2 clocks,
> so check if clock type is not basic
>
> Signed-off-by: Andreas Kemnade <andreas@xxxxxxxxxxxx>
> ---
> New in v2
> ---
> drivers/clk/ti/autoidle.c | 12 ++++++++++--
> 1 file changed, 10 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/clk/ti/autoidle.c b/drivers/clk/ti/autoidle.c
> index 161f67850393..5bdae5552d38 100644
> --- a/drivers/clk/ti/autoidle.c
> +++ b/drivers/clk/ti/autoidle.c
> @@ -54,8 +54,12 @@ static DEFINE_SPINLOCK(autoidle_spinlock);
> int omap2_clk_deny_idle(struct clk *clk)
> {
> struct clk_hw_omap *c;
> + struct clk_hw *hw = __clk_get_hw(clk);
>
> - c = to_clk_hw_omap(__clk_get_hw(clk));
> + if (clk_hw_get_flags(hw) & CLK_IS_BASIC)

Please try to avoid using CLK_IS_BASIC if at all possible. Can you?
Maybe add some flag in clk_hw_omap() instead?