[PATCH] clk: rockchip: mark pclk_uart2 as critical on rk3328

Robin Murphy robin.murphy at arm.com
Wed Jul 8 11:34:31 EDT 2020


On 2020-07-08 15:45, Johan Jonker wrote:
> The rk3328 uart2 port is used as boot console and to debug.
> During the boot pclk_uart2 is disabled by a clk_disable_unused
> initcall. Fix the uart2 function by marking pclk_uart2
> as critical on rk3328. Also add sclk_uart2 as that is needed
> for the same DT node.

Hmm, given that those are named in the DT as the "baudclk" and
"apb_pclk" that dw8250_probe() explicitly claims, they really
shouldn't be unused :/

On my RK3328 box they appear to be prepared and enabled OK:

[robin at nemulon-9 ~]$ sudo grep uart2 /sys/kernel/debug/clk/clk_summary
    sclk_uart2                        1        1        0    24000000          0     0  50000
                   pclk_uart2         1        1        0    75000000          0     0  50000
...

Robin.

> Signed-off-by: Johan Jonker <jbx6244 at gmail.com>
> ---
>   drivers/clk/rockchip/clk-rk3328.c | 2 ++
>   1 file changed, 2 insertions(+)
> 
> diff --git a/drivers/clk/rockchip/clk-rk3328.c b/drivers/clk/rockchip/clk-rk3328.c
> index c186a1985..cb7749cb7 100644
> --- a/drivers/clk/rockchip/clk-rk3328.c
> +++ b/drivers/clk/rockchip/clk-rk3328.c
> @@ -875,6 +875,8 @@ static const char *const rk3328_critical_clocks[] __initconst = {
>   	"aclk_gmac_niu",
>   	"pclk_gmac_niu",
>   	"pclk_phy_niu",
> +	"pclk_uart2",
> +	"sclk_uart2",
>   };
>   
>   static void __init rk3328_clk_init(struct device_node *np)
> 



More information about the Linux-rockchip mailing list