lkml.org 
[lkml]   [2015]   [Apr]   [17]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH v2 2/5] mmc: mediatek: Add Mediatek MMC driver
Ulf,

On Tue, Mar 31, 2015 at 02:23:06PM +0200, Ulf Hansson wrote:
> On 17 March 2015 at 04:13, Chaotian Jing <chaotian.jing@mediatek.com> wrote:
> > +
> > + msdc_set_buswidth(host, ios->bus_width);
> > +
> > + /* Suspend/Resume will do power off/on */
> > + switch (ios->power_mode) {
> > + case MMC_POWER_UP:
> > + msdc_init_hw(host);
> > + if (!IS_ERR(mmc->supply.vmmc)) {
> > + ret = mmc_regulator_set_ocr(mmc, mmc->supply.vmmc,
> > + ios->vdd);
> > + if (ret) {
> > + dev_err(host->dev, "Failed to set vmmc power!\n");
> > + return;
> > + }
> > + }
> > + break;
> > + case MMC_POWER_ON:
> > + if (!IS_ERR(mmc->supply.vqmmc)) {
> > + ret = regulator_enable(mmc->supply.vqmmc);
>
> The calls to regulator_enable|disable() for the vqmmc will not be
> balanced properly here. You need a local cache variable like
> "is_enabled" to keep track of this.

Shouldn't the MMC core provide balanced hooks for this? What about
MMC_POWER_UP, can this be used for enabling regulators?

Sascha

--
Pengutronix e.K. | |
Industrial Linux Solutions | http://www.pengutronix.de/ |
Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-0 |
Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 |


\
 
 \ /
  Last update: 2015-04-17 11:41    [W:0.055 / U:0.492 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site