OSDN Git Service

bus: ti-sysc: Remove unpaired sysc_clkdm_deny_idle()
authorTony Lindgren <tony@atomide.com>
Fri, 6 Sep 2019 19:57:46 +0000 (12:57 -0700)
committerTony Lindgren <tony@atomide.com>
Fri, 6 Sep 2019 19:57:46 +0000 (12:57 -0700)
Commit d098913a10f8 ("bus: ti-sysc: Fix clock handling for no-idle
quirks") fixed handling for no-idle quirk modules that are not enabled
by the bootloader.

But it also caused unpaired clockdomain calls that won't allow idling
the system. That's because clkdm_allow_idle_nolock() and
clkdm_deny_idle_nolock() have usage count with clkdm->forcewake_count.

Let's drop the unpaired sysc_clkdm_deny_idle() to fix idling of devices.

Fixes: d098913a10f8 ("bus: ti-sysc: Fix clock handling for no-idle quirks")
Cc: Keerthy <j-keerthy@ti.com>
Cc: Vignesh Raghavendra <vigneshr@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
drivers/bus/ti-sysc.c

index 24583d8..364ee49 100644 (file)
@@ -2363,7 +2363,6 @@ static void ti_sysc_idle(struct work_struct *work)
         */
        if (ddata->cfg.quirks & (SYSC_QUIRK_NO_IDLE |
                                 SYSC_QUIRK_NO_IDLE_ON_INIT)) {
-               sysc_clkdm_deny_idle(ddata);
                sysc_disable_main_clocks(ddata);
                sysc_disable_opt_clocks(ddata);
                sysc_clkdm_allow_idle(ddata);