Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1556128 > unrolled thread

[PATCH] clk: rockchip: rk3288: make aclk_vio1_niu a critical clock

Started byJacob Chen <jacob-chen@iotwrt.com>
First post2017-01-11 02:30 +0100
Last post2017-01-14 12:30 +0100
Articles 2 — 2 participants

Back to article view | Back to linux.kernel


Contents

  [PATCH] clk: rockchip: rk3288: make aclk_vio1_niu a critical clock Jacob Chen <jacob-chen@iotwrt.com> - 2017-01-11 02:30 +0100
    Re: [PATCH] clk: rockchip: rk3288: make aclk_vio1_niu a critical clock Heiko Stuebner <heiko@sntech.de> - 2017-01-14 12:30 +0100

#1556128 — [PATCH] clk: rockchip: rk3288: make aclk_vio1_niu a critical clock

FromJacob Chen <jacob-chen@iotwrt.com>
Date2017-01-11 02:30 +0100
Subject[PATCH] clk: rockchip: rk3288: make aclk_vio1_niu a critical clock
Message-ID<sYfTI-lG-17@gated-at.bofh.it>
According to the pd blocks, VIO1_NIU is required by RGA,ISP and VOP1.
Then at least one VIO_NIU should be turned on to supply eDP, HDMI, MIPI.

If eDP,HDMI,MIPI is inited early than VOP or RGA is inited early than VOP1,
system will hang.

So make aclk_vio1_niu a critical clock and turn it on at all times.

Signed-off-by: Jacob Chen <jacob-chen@iotwrt.com>
---
 drivers/clk/rockchip/clk-rk3288.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/drivers/clk/rockchip/clk-rk3288.c b/drivers/clk/rockchip/clk-rk3288.c
index f071c24..59ee244 100644
--- a/drivers/clk/rockchip/clk-rk3288.c
+++ b/drivers/clk/rockchip/clk-rk3288.c
@@ -815,6 +815,7 @@ static struct rockchip_clk_branch rk3288_clk_branches[] __initdata = {
 static const char *const rk3288_critical_clocks[] __initconst = {
 	"aclk_cpu",
 	"aclk_peri",
+	"aclk_vio1_niu",
 	"hclk_peri",
 	"pclk_pd_pmu",
 };
-- 
2.7.4

[toc] | [next] | [standalone]


#1558949

FromHeiko Stuebner <heiko@sntech.de>
Date2017-01-14 12:30 +0100
Message-ID<sZuH0-5kp-11@gated-at.bofh.it>
In reply to#1556128
Hi Jacob,

Am Mittwoch, 11. Januar 2017, 09:26:32 CET schrieb Jacob Chen:
> According to the pd blocks, VIO1_NIU is required by RGA,ISP and VOP1.
> Then at least one VIO_NIU should be turned on to supply eDP, HDMI, MIPI.
> 
> If eDP,HDMI,MIPI is inited early than VOP or RGA is inited early than VOP1,
> system will hang.
> 
> So make aclk_vio1_niu a critical clock and turn it on at all times.

NIU clocks are part of the interconnect, which we do not model at all yet,
so I guess all of those should never be turned off (until an interconnect 
driver handles them).

Could you just make all of them critical in one go please, so that we don't 
have to each clock on its own once things break?


Thanks
Heiko

> 
> Signed-off-by: Jacob Chen <jacob-chen@iotwrt.com>
> ---
>  drivers/clk/rockchip/clk-rk3288.c | 1 +
>  1 file changed, 1 insertion(+)
> 
> diff --git a/drivers/clk/rockchip/clk-rk3288.c
> b/drivers/clk/rockchip/clk-rk3288.c index f071c24..59ee244 100644
> --- a/drivers/clk/rockchip/clk-rk3288.c
> +++ b/drivers/clk/rockchip/clk-rk3288.c
> @@ -815,6 +815,7 @@ static struct rockchip_clk_branch rk3288_clk_branches[]
> __initdata = { static const char *const rk3288_critical_clocks[]
> __initconst = { "aclk_cpu",
>  	"aclk_peri",
> +	"aclk_vio1_niu",
>  	"hclk_peri",
>  	"pclk_pd_pmu",
>  };

[toc] | [prev] | [standalone]


Back to top | Article view | linux.kernel


csiph-web