Thread (12 messages) 12 messages, 2 authors, 2018-02-24

[PATCH v3 1/4] driver: clk: imx: Add CLK_IS_CRITICAL flag for busy diviver and busy mux

From: ping.bai@nxp.com (Jacky Bai)
Date: 2018-02-22 09:52:14
Also in: linux-clk

Subject: Re: [PATCH v3 1/4] driver: clk: imx: Add CLK_IS_CRITICAL flag for busy
diviver and busy mux

On Wed, Feb 07, 2018 at 10:00:16AM +0800, Bai Ping wrote:
quoted
The busy divider and busy mux is actually used by the system critical
clocks, so add 'CLK_IS_CRITICAL' to clocks registered with these two type.
Are there any real world issues you have seen with this CLK_IS_CRITICAL missing
from these busy clocks?
Previously in our clk driver, the always clocks is enabled by put them in clk_init_on array. So community suggest me to
Add 'CLK_IS_CRITICAL' flags to these clocks and remove the clk_init_on array. As the busy clock don't have CLK_IS_CRITICAL flag and
It seems all the busy clock are system critical, need to be enabled always, so we need to add this flag to the bus clocks if the clk_init_on array is
removed, otherwise, the bus clock will be disable in 'disable unused clk' stage if we don't enable it explicitly.

BR
Jacky Bai
quoted
Signed-off-by: Bai Ping <ping.bai@nxp.com>
s/diviver/divider in the patch subject.

Shawn
quoted
---
 drivers/clk/imx/clk-busy.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/clk/imx/clk-busy.c b/drivers/clk/imx/clk-busy.c
index 6df3389..9903652 100644
--- a/drivers/clk/imx/clk-busy.c
+++ b/drivers/clk/imx/clk-busy.c
@@ -101,7 +101,7 @@ struct clk *imx_clk_busy_divider(const char *name,
const char *parent_name,

 	init.name = name;
 	init.ops = &clk_busy_divider_ops;
-	init.flags = CLK_SET_RATE_PARENT;
+	init.flags = CLK_SET_RATE_PARENT | CLK_IS_CRITICAL;
 	init.parent_names = &parent_name;
 	init.num_parents = 1;
@@ -175,7 +175,7 @@ struct clk *imx_clk_busy_mux(const char *name,
void __iomem *reg, u8 shift,

 	init.name = name;
 	init.ops = &clk_busy_mux_ops;
-	init.flags = 0;
+	init.flags = CLK_IS_CRITICAL;
 	init.parent_names = parent_names;
 	init.num_parents = num_parents;

--
1.9.1


_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel at lists.infradead.org
https://emea01.safelinks.protection.outlook.com/?url=http%3A%2F%2Flist
s.infradead.org%2Fmailman%2Flistinfo%2Flinux-arm-kernel&data=02%7C01%7
quoted
Cping.bai%40nxp.com%7C6183140614624dfd492f08d579d89d58%7C686ea1d3
bc2b4
quoted
c6fa92cd99c5c301635%7C0%7C0%7C636548893622897723&sdata=amVo6uZ6
ra1o9XA
quoted
xHSRi9cOd%2BuRUV%2BIkrXSbBncE0lA%3D&reserved=0
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help