• Peng Fan's avatar
    clk: imx7ulp: make it easy to change ARM core clk · 260dab44
    Peng Fan authored
    ARM clk could only source from divcore or hsrun_divcore.
    
    Follow what we already used on i.MX7D and i.MX8M SoCs, use
    imx_clk_hw_cpu API. When ARM core is running normaly,
    whether divcore or hwrun_divcore will finally source
    from SPLL_PFD0. However SPLL_PFD0 is marked with CLK_SET_GATE,
    so we need to disable SPLL_PFD0, when configure the rate.
    So add CORE and HSRUN_CORE virtual clk to make it easy to
    configure the clk using imx_clk_hw_cpu API.
    
    Since CORE and HSRUN_CORE already marked with CLK_IS_CRITICAL, no
    need to set ARM as CLK_IS_CRITICAL. And when set the rate of ARM clk,
    prograting it the parent with CLK_SET_RATE_PARENT will finally set
    the SPLL_PFD0 clk.
    Signed-off-by: default avatarPeng Fan <peng.fan@nxp.com>
    Reviewed-by: default avatarAbel Vesa <abel.vesa@nxp.com>
    Signed-off-by: default avatarShawn Guo <shawnguo@kernel.org>
    260dab44
clk-imx7ulp.c 14.5 KB