From: linux@arm.linux.org.uk (Russell King - ARM Linux)
To: linux-arm-kernel@lists.infradead.org
Subject: All OMAP platforms: MMC is broken
Date: Mon, 5 Oct 2015 19:38:13 +0100 [thread overview]
Message-ID: <20151005183813.GD21626@n2100.arm.linux.org.uk> (raw)
In-Reply-To: <20151005171155.GF23801@atomide.com>
On Mon, Oct 05, 2015 at 10:11:56AM -0700, Tony Lindgren wrote:
> * Tony Lindgren <tony@atomide.com> [151005 07:57]:
> > * Tony Lindgren <tony@atomide.com> [151005 07:44]:
> > > * Tony Lindgren <tony@atomide.com> [151005 04:28]:
> > >
> > > Based on some tests it seems that the duovero unpaired regulator usage
> > > is fixed by reverting:
> > >
> > > c55d7a055364 ("mmc: host: omap_hsmmc: use regulator_is_enabled to
> > > find pbias status")
> >
> > With commit c55d7a055364 my guess is that the PBIAS regulator is
> > already on from an earlier MMC probe and getting re-enabled when
> > a deferred probe happens?
>
> Unless somebody has a better fix in mind for the above, I suggest
> we revert it for the -rc kernel.
Let me try reverting that in my build tree, and...
> > > And it seems that omap3 legacy MMC is broken earlier in the
> > > series with:
> > >
> > > 7d607f917008 ("mmc: host: omap_hsmmc: use
> > > devm_regulator_get_optional() for vmmc")
> > >
> > > This one does not cleanly revert so have not yet tried reverting
> > > it.
> >
> > And with commit 7d607f917008 I'm guessing we can't return an
> > error if the PBIAS regulator does not exist as that's not there
> > for the legacy booting.
>
> For omap3 legacy booting, we keep getting -EPROBE_DEFER for
> all the optional regulators.
>
> Something like the following might be the minimal fix for the -rc
> cycle?
applying this patch. If that gets things going again, then we
_definitely_ should get both of these to Linus ASAP. The breakage
has been around far too long already.
> 8< ----------------
> From: Tony Lindgren <tony@atomide.com>
> Date: Mon, 5 Oct 2015 09:37:36 -0700
> Subject: [PATCH] mmc: host: omap_hsmmc: Fix MMC for omap3 legacy booting
>
> Starting with commit 7d607f917008 ("mmc: host: omap_hsmmc: use
> devm_regulator_get_optional() for vmmc") MMC on omap3 stopped working
> for legacy booting.
>
> This is because legacy booting sets up some of the resource in the
> platform init code, and for optional regulators always seem to
> return -EPROBE_DEFER for the legacy booting.
>
> Let's fix the issue by checking for device tree based booting for
> now. Then when omap3 boots in device tree only mode, this patch
> can be just reverted.
>
> Fixes: 7d607f917008 ("mmc: host: omap_hsmmc: use
> devm_regulator_get_optional() for vmmc")
> Signed-off-by: Tony Lindgren <tony@atomide.com>
>
> --- a/drivers/mmc/host/omap_hsmmc.c
> +++ b/drivers/mmc/host/omap_hsmmc.c
> @@ -478,7 +478,7 @@ static int omap_hsmmc_reg_get(struct omap_hsmmc_host *host)
> mmc->supply.vmmc = devm_regulator_get_optional(host->dev, "vmmc");
> if (IS_ERR(mmc->supply.vmmc)) {
> ret = PTR_ERR(mmc->supply.vmmc);
> - if (ret != -ENODEV)
> + if ((ret != -ENODEV) && host->dev->of_node)
> return ret;
> dev_dbg(host->dev, "unable to get vmmc regulator %ld\n",
> PTR_ERR(mmc->supply.vmmc));
> @@ -493,7 +493,7 @@ static int omap_hsmmc_reg_get(struct omap_hsmmc_host *host)
> mmc->supply.vqmmc = devm_regulator_get_optional(host->dev, "vmmc_aux");
> if (IS_ERR(mmc->supply.vqmmc)) {
> ret = PTR_ERR(mmc->supply.vqmmc);
> - if (ret != -ENODEV)
> + if ((ret != -ENODEV) && host->dev->of_node)
> return ret;
> dev_dbg(host->dev, "unable to get vmmc_aux regulator %ld\n",
> PTR_ERR(mmc->supply.vqmmc));
> @@ -503,7 +503,7 @@ static int omap_hsmmc_reg_get(struct omap_hsmmc_host *host)
> host->pbias = devm_regulator_get_optional(host->dev, "pbias");
> if (IS_ERR(host->pbias)) {
> ret = PTR_ERR(host->pbias);
> - if (ret != -ENODEV)
> + if ((ret != -ENODEV) && host->dev->of_node)
> return ret;
> dev_dbg(host->dev, "unable to get pbias regulator %ld\n",
> PTR_ERR(host->pbias));
--
FTTC broadband for 0.8mile line: currently at 9.6Mbps down 400kbps up
according to speedtest.net.
next prev parent reply other threads:[~2015-10-05 18:38 UTC|newest]
Thread overview: 35+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-09-24 9:00 All OMAP platforms: MMC is broken Russell King - ARM Linux
2015-09-24 22:51 ` Grygorii Strashko
2015-09-24 22:53 ` Russell King - ARM Linux
2015-09-24 23:37 ` Tony Lindgren
2015-09-25 1:13 ` Tony Lindgren
2015-09-26 2:54 ` Nishanth Menon
2015-10-01 9:33 ` Russell King - ARM Linux
2015-10-01 9:50 ` Ulf Hansson
2015-10-01 10:03 ` Russell King - ARM Linux
2015-10-05 11:23 ` Tony Lindgren
2015-10-05 14:35 ` Tony Lindgren
2015-10-05 14:51 ` Tony Lindgren
2015-10-05 17:11 ` Tony Lindgren
2015-10-05 18:38 ` Russell King - ARM Linux [this message]
2015-10-06 9:00 ` Russell King - ARM Linux
2015-10-06 9:44 ` Tony Lindgren
2015-10-06 10:11 ` Ulf Hansson
2015-10-06 10:36 ` Kishon Vijay Abraham I
2015-10-06 15:07 ` Russell King - ARM Linux
2015-10-06 19:29 ` Kishon Vijay Abraham I
2015-10-06 19:57 ` Russell King - ARM Linux
2015-10-08 0:46 ` Kishon Vijay Abraham I
2015-10-06 15:00 ` Russell King - ARM Linux
2015-10-06 15:37 ` Tony Lindgren
2015-10-07 12:45 ` Russell King - ARM Linux
2015-10-07 13:26 ` Tony Lindgren
2015-10-07 13:41 ` Ulf Hansson
2015-10-07 15:52 ` Tony Lindgren
2015-10-07 19:40 ` Ulf Hansson
2015-10-07 23:13 ` Kishon Vijay Abraham I
2015-10-08 8:40 ` Tony Lindgren
2015-10-08 9:35 ` Russell King - ARM Linux
2015-10-08 9:56 ` Tony Lindgren
2015-10-08 10:00 ` Russell King - ARM Linux
2015-10-07 17:53 ` Russell King - ARM Linux
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20151005183813.GD21626@n2100.arm.linux.org.uk \
--to=linux@arm.linux.org.uk \
--cc=linux-arm-kernel@lists.infradead.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).