Re: [PATCH v4 02/12] clk: qcom: Use qcom_branch_set_clk_en()

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, Jan 02, 2024 at 03:27:29PM +0100, Konrad Dybcio wrote:
> On 2.01.2024 11:35, Johan Hovold wrote:
> > On Sat, Dec 30, 2023 at 02:04:04PM +0100, Konrad Dybcio wrote:

> >> @@ -3010,10 +3010,8 @@ static int camcc_sc8280xp_probe(struct platform_device *pdev)
> >>  	clk_lucid_pll_configure(&camcc_pll6, regmap, &camcc_pll6_config);
> >>  	clk_lucid_pll_configure(&camcc_pll7, regmap, &camcc_pll7_config);
> >>  
> >> -	/*
> >> -	 * Keep camcc_gdsc_clk always enabled:
> >> -	 */
> >> -	regmap_update_bits(regmap, 0xc1e4, BIT(0), 1);
> >> +	/* Keep the critical clocks always-on */
> >> +	qcom_branch_set_clk_en(regmap, 0xc1e4); /* CAMCC_GDSC_CLK */
> > 
> > I still think something along the lines of
> > 
> > 	/* Keep some clocks always on */
> > 
> > is preferred as it is far from obvious why a camera clock would be
> > considered "critical".
> > 
> > Or perhaps you can come up with a better description of why we've
> > decided not to model these clocks and just leave them ungated.

> Technically they're not really super critical if the hardware is
> not in use.. It's just that at one point Qualcomm decided to take
> the lazy decision to keep them always-on downstream and we seem to
> have agreed on going with that, instead of pm_clk (remember my old
> attempt at getting rid of this on dispcc-sc8280xp?)..
> 
> For now, I was just trying to clean this up a bit before looking
> into a better solution for this (probably a whole lot of pm_clks
> with some clever handle-getting due to different ways of grabbing
> clock sources.. by-name vs by-index vs global lookup that we've
> accumulated over the years).

Yeah, that's fine. I'm not saying you have to come up with a better way
of describing these for this series, but I find calling them "critical"
throughout is more confusing than the current unspecified comments about
leaving some clocks on (i.e. without a proper motivation or even hint
about why they are being kept always on).

Johan




[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [Linux for Sparc]     [IETF Annouce]     [Security]     [Bugtraq]     [Linux MIPS]     [ECOS]     [Asterisk Internet PBX]     [Linux API]

  Powered by Linux