mmc_omap_fclk_state(host, OFF);
}
+static void mmc_omap_fclk_lazy_disable(struct mmc_omap_host *host)
+{
+ mod_timer(&host->idle_timer, jiffies + IDLE_TIMEOUT);
+}
+
/*
* Stop clock to the card
*/
if (!data->stop) {
host->mrq = NULL;
- mod_timer(&host->idle_timer, jiffies + IDLE_TIMEOUT);
+ mmc_omap_fclk_lazy_disable(host);
mmc_request_done(host->mmc, data->mrq);
return;
}
}
if (host->data == NULL || cmd->error) {
host->mrq = NULL;
- mod_timer(&host->idle_timer, jiffies + IDLE_TIMEOUT);
+ mmc_omap_fclk_lazy_disable(host);
mmc_request_done(host->mmc, cmd->mrq);
}
}
while (OMAP_HSMMC_READ(host->base, SYSCTL) & SRD) ;
mmc_detect_change(host->mmc, (HZ * 50) / 1000);
}
- mod_timer(&host->idle_timer, jiffies + IDLE_TIMEOUT);
+ mmc_omap_fclk_lazy_disable(host);
}
/*
if (ios->power_mode == MMC_POWER_OFF)
mmc_omap_fclk_state(host, OFF);
else
- mod_timer(&host->idle_timer, jiffies + IDLE_TIMEOUT);
+ mmc_omap_fclk_lazy_disable(host);
}
static int omap_hsmmc_get_cd(struct mmc_host *mmc)
if (ret < 0)
goto err_cover_switch;
}
- mod_timer(&host->idle_timer, jiffies + IDLE_TIMEOUT);
+ mmc_omap_fclk_lazy_disable(host);
return 0;
return 0;
if (host) {
-
if (mmc_omap_fclk_state(host, ON) != 0)
goto clk_en_err;
if (ret == 0)
host->suspended = 0;
- mod_timer(&host->idle_timer, jiffies + IDLE_TIMEOUT);
+ mmc_omap_fclk_lazy_disable(host);
}
return ret;