Hi Tero, On Thursday 31 May 2012 06:58 PM, Tero Kristo wrote:
dpll3, dpll4 and sdrc_ick are controlled automatically by hardware.
sdrc_ick does not seem to have a software control to enable/disable this automatic control in hardware, so what you are doing in the patch below seems fine. However for dpll3 and dpll4, there is indeed a software control which is enabled/disabled through omap3_dpll_allow_idle/omap3_dpll_deny_idle functions respectively. So shouldn't the 'autoidle' flag for them be handled similar to what you do in omap2_clkt_iclk_allow_idle/ omap2_clkt_iclk_deny_idle functions in your PATCH 2/9, instead of setting them to 'true' statically? regards, Rajendra
Thus, reflect this with the autoidle flags, the clocks will no longer show as active in usecount dumps and will allow the voltdm->sleep / wakeup calls to work properly. Signed-off-by: Tero Kristo<t-kristo@xxxxxx> Cc: Paul Walmsley<paul@xxxxxxxxx> Cc: Kevin Hilman<khilman@xxxxxx> --- arch/arm/mach-omap2/clock3xxx_data.c | 3 +++ 1 files changed, 3 insertions(+), 0 deletions(-) diff --git a/arch/arm/mach-omap2/clock3xxx_data.c b/arch/arm/mach-omap2/clock3xxx_data.c index 4e1a3b0..ca0de28 100644 --- a/arch/arm/mach-omap2/clock3xxx_data.c +++ b/arch/arm/mach-omap2/clock3xxx_data.c @@ -434,6 +434,7 @@ static struct clk dpll3_ck = { .round_rate =&omap2_dpll_round_rate, .clkdm_name = "dpll3_clkdm", .recalc =&omap3_dpll_recalc, + .autoidle = true, }; /* @@ -617,6 +618,7 @@ static struct clk dpll4_ck = { .set_rate =&omap3_dpll4_set_rate, .clkdm_name = "dpll4_clkdm", .recalc =&omap3_dpll_recalc, + .autoidle = true, }; /* @@ -1751,6 +1753,7 @@ static struct clk sdrc_ick = { .flags = ENABLE_ON_INIT, .clkdm_name = "core_l3_clkdm", .recalc =&followparent_recalc, + .autoidle = true, }; static struct clk gpmc_fck = {
-- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html