Am Donnerstag, 30. M?rz 2017, 14:44:17 CEST schrieb Maxime Ripard: > On Tue, Mar 28, 2017 at 06:06:52PM +0800, Elaine Zhang wrote: > > Signed-off-by: Elaine Zhang <zhangqing at rock-chips.com> > > --- > > drivers/clk/rockchip/clk-rk3228.c | 30 +++++++++++++++++++++++++++++- > > 1 file changed, 29 insertions(+), 1 deletion(-) > > > > diff --git a/drivers/clk/rockchip/clk-rk3228.c b/drivers/clk/rockchip/clk-rk3228.c > > index db6e5a9e6de6..4d3203f887e2 100644 > > --- a/drivers/clk/rockchip/clk-rk3228.c > > +++ b/drivers/clk/rockchip/clk-rk3228.c > > @@ -445,7 +445,7 @@ enum rk3228_plls { > > RK2928_CLKGATE_CON(2), 12, GFLAGS, > > &rk3228_spdif_fracmux), > > > > - GATE(0, "jtag", "ext_jtag", 0, > > + GATE(0, "jtag", "ext_jtag", CLK_IGNORE_UNUSED, > > CLK_IGNORE_UNUSED only prevents a given clock from being gated at > late_initcall time, but will not prevent it from being gated later in > the life of the system, for example if a reparenting occurs, or if all > the clocks sharing the same clock tree become disabled. > > If your clock really should never ever be gated in order for Linux to > operate properly, you should use CLK_IS_CRITICAL. in the scope of the jtag clock, that is actually ok. As it only gates some clock supplied from an external source (ext_jtag).