Thread (14 messages) 14 messages, 4 authors, 2015-09-15

[PATCH 2/2] mmc: sdhci-pxav3: Print ret value on error from sdhci_add_host() fn

From: Vaibhav Hiremath <hidden>
Date: 2015-09-02 15:16:59
Also in: linux-mmc, lkml


On Wednesday 02 September 2015 08:37 PM, Joe Perches wrote:
On Wed, 2015-09-02 at 18:37 +0530, Vaibhav Hiremath wrote:
quoted
On Wednesday 02 September 2015 02:07 AM, Joe Perches wrote:
quoted
On Wed, 2015-09-02 at 00:54 +0530, Vaibhav Hiremath wrote:
quoted
Return value would give clear information about the actual root-cause
of the failure.
diff --git a/drivers/mmc/host/sdhci-pxav3.c b/drivers/mmc/host/sdhci-pxav3.c
@@ -455,7 +455,7 @@ static int sdhci_pxav3_probe(struct platform_device *pdev)

   	ret = sdhci_add_host(host);
   	if (ret) {
-		dev_err(&pdev->dev, "failed to add host\n");
+		dev_err(&pdev->dev, "failed to add host ret - %d\n", ret);
   		goto err_add_host;
   	}
If this is really desirable, there are many other callers of
sdhci_add_host with error messages just like this one.
How about this? If you are ok, I can change it and submit the patch
again.
diff --git a/drivers/mmc/host/sdhci.c b/drivers/mmc/host/sdhci.c
[]
quoted
@@ -3176,8 +3176,11 @@ int sdhci_add_host(struct sdhci_host *host)
                  mmc->caps |= MMC_CAP_NEEDS_POLL;

          /* If there are external regulators, get them */
-       if (mmc_regulator_get_supply(mmc) == -EPROBE_DEFER)
+       if (mmc_regulator_get_supply(mmc) == -EPROBE_DEFER) {
+               pr_err("%s: regulator supply unavailable, deferring
probe. \n",
+                               mmc_hostname(mmc));
                  return -EPROBE_DEFER;
+       }
(your email client has inappropriate line wrapping)

The KERN_<LEVEL> here probably isn't right.

Deferring isn't an error, at best it's a notification
I would consider it as an ERROR if it gets deferred
continuously/multiple times due to same reason.
and perhaps should be at pr_notice/KERN_NOTICE
Yeah, KERN_NOTICE looks right here.
I don't know how often or how many times this deferral
can occur.  Do you?
-EDEFER_PROBE usually means that driver has some dependency,
for which it has to wait.
In my case, during every boot, I pxav3_sdhci_probe gets deferred once
due to regulator unavailability.

Thanks,
Vaibhav
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help