* [PATCH v3] mmc: sdhci-acpi: support deferred probe
@ 2017-01-13 11:03 Zhang Rui
2017-01-17 14:23 ` Ulf Hansson
0 siblings, 1 reply; 3+ messages in thread
From: Zhang Rui @ 2017-01-13 11:03 UTC (permalink / raw)
To: linux-mmc; +Cc: cja, darcari, ulf.hansson, adrain
>From c889f737322b797b743c63eda241d0283696d3f5 Mon Sep 17 00:00:00 2001
From: Zhang Rui <rui.zhang@intel.com>
Date: Wed, 7 Dec 2016 13:13:31 +0800
Subject: [PATCH v3] mmc: sdhci-acpi: support deferred probe
With commit 67bf5156edc4 ("gpio / ACPI: fix returned error from
acpi_dev_gpio_irq_get()"), mmc_gpiod_request_cd() returns -EPROBE_DEFER if
GPIO is not ready when sdhci-acpi driver is probed, and sdhci-acpi driver
should be probed again later in this case.
This fixes an order issue when both GPIO and sdhci-acpi drivers are built
as modules.
CC: stable@vger.kernel.org # v4.9
Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=177101
Tested-by: Jonas Aaberg <cja@gmx.net>
Signed-off-by: Zhang Rui <rui.zhang@intel.com>
Acked-by: Adrian Hunter <adrian.hunter@intel.com>
---
drivers/mmc/host/sdhci-acpi.c | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/drivers/mmc/host/sdhci-acpi.c b/drivers/mmc/host/sdhci-acpi.c
index 160f695cc09c..5440323894ee 100644
--- a/drivers/mmc/host/sdhci-acpi.c
+++ b/drivers/mmc/host/sdhci-acpi.c
@@ -466,7 +466,10 @@ static int sdhci_acpi_probe(struct platform_device *pdev)
if (sdhci_acpi_flag(c, SDHCI_ACPI_SD_CD)) {
bool v = sdhci_acpi_flag(c, SDHCI_ACPI_SD_CD_OVERRIDE_LEVEL);
- if (mmc_gpiod_request_cd(host->mmc, NULL, 0, v, 0, NULL)) {
+ err = mmc_gpiod_request_cd(host->mmc, NULL, 0, v, 0, NULL);
+ if (err) {
+ if (err == -EPROBE_DEFER)
+ goto err_free;
dev_warn(dev, "failed to setup card detect gpio\n");
c->use_runtime_pm = false;
}
--
2.7.4
^ permalink raw reply related [flat|nested] 3+ messages in thread
* Re: [PATCH v3] mmc: sdhci-acpi: support deferred probe
2017-01-13 11:03 [PATCH v3] mmc: sdhci-acpi: support deferred probe Zhang Rui
@ 2017-01-17 14:23 ` Ulf Hansson
2017-01-18 9:45 ` Zhang Rui
0 siblings, 1 reply; 3+ messages in thread
From: Ulf Hansson @ 2017-01-17 14:23 UTC (permalink / raw)
To: Zhang Rui; +Cc: linux-mmc, Jonas Åberg, darcari, adrain
On 13 January 2017 at 12:03, Zhang Rui <rui.zhang@intel.com> wrote:
> From c889f737322b797b743c63eda241d0283696d3f5 Mon Sep 17 00:00:00 2001
> From: Zhang Rui <rui.zhang@intel.com>
> Date: Wed, 7 Dec 2016 13:13:31 +0800
> Subject: [PATCH v3] mmc: sdhci-acpi: support deferred probe
>
> With commit 67bf5156edc4 ("gpio / ACPI: fix returned error from
> acpi_dev_gpio_irq_get()"), mmc_gpiod_request_cd() returns -EPROBE_DEFER if
> GPIO is not ready when sdhci-acpi driver is probed, and sdhci-acpi driver
> should be probed again later in this case.
>
> This fixes an order issue when both GPIO and sdhci-acpi drivers are built
> as modules.
>
> CC: stable@vger.kernel.org # v4.9
> Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=177101
> Tested-by: Jonas Aaberg <cja@gmx.net>
> Signed-off-by: Zhang Rui <rui.zhang@intel.com>
> Acked-by: Adrian Hunter <adrian.hunter@intel.com>
I strongly encourage you to run checkpatch of all your change before
submitting patches. Below is the output, it gave me. It prevents me
from applying the change. Please fix and re-spin!
ERROR: Please use git commit description style 'commit <12+ chars of
sha1> ("<title line>")' - ie: 'commit fatal: bad o
("da241d0283696d3f5")'
#14:
>From c889f737322b797b743c63eda241d0283696d3f5 Mon Sep 17 00:00:00 2001
ERROR: patch seems to be corrupt (line wrapped?)
#49: FILE: drivers/mmc/host/sdhci-acpi.c:465:
if (sdhci_acpi_flag(c, SDHCI_ACPI_SD_CD)) {
total: 2 errors, 0 warnings, 11 lines checked
Kind regards
Uffe
> ---
> drivers/mmc/host/sdhci-acpi.c | 5 ++++-
> 1 file changed, 4 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/mmc/host/sdhci-acpi.c b/drivers/mmc/host/sdhci-acpi.c
> index 160f695cc09c..5440323894ee 100644
> --- a/drivers/mmc/host/sdhci-acpi.c
> +++ b/drivers/mmc/host/sdhci-acpi.c
> @@ -466,7 +466,10 @@ static int sdhci_acpi_probe(struct platform_device *pdev)
> if (sdhci_acpi_flag(c, SDHCI_ACPI_SD_CD)) {
> bool v = sdhci_acpi_flag(c, SDHCI_ACPI_SD_CD_OVERRIDE_LEVEL);
>
> - if (mmc_gpiod_request_cd(host->mmc, NULL, 0, v, 0, NULL)) {
> + err = mmc_gpiod_request_cd(host->mmc, NULL, 0, v, 0, NULL);
> + if (err) {
> + if (err == -EPROBE_DEFER)
> + goto err_free;
> dev_warn(dev, "failed to setup card detect gpio\n");
> c->use_runtime_pm = false;
> }
> --
> 2.7.4
>
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [PATCH v3] mmc: sdhci-acpi: support deferred probe
2017-01-17 14:23 ` Ulf Hansson
@ 2017-01-18 9:45 ` Zhang Rui
0 siblings, 0 replies; 3+ messages in thread
From: Zhang Rui @ 2017-01-18 9:45 UTC (permalink / raw)
To: Ulf Hansson; +Cc: linux-mmc, Jonas Åberg, darcari, adrain
Hi, Uffe,
On Tue, 2017-01-17 at 15:23 +0100, Ulf Hansson wrote:
> On 13 January 2017 at 12:03, Zhang Rui <rui.zhang@intel.com> wrote:
> >
> > From c889f737322b797b743c63eda241d0283696d3f5 Mon Sep 17 00:00:00
> > 2001
> > From: Zhang Rui <rui.zhang@intel.com>
> > Date: Wed, 7 Dec 2016 13:13:31 +0800
> > Subject: [PATCH v3] mmc: sdhci-acpi: support deferred probe
> >
> > With commit 67bf5156edc4 ("gpio / ACPI: fix returned error from
> > acpi_dev_gpio_irq_get()"), mmc_gpiod_request_cd() returns
> > -EPROBE_DEFER if
> > GPIO is not ready when sdhci-acpi driver is probed, and sdhci-acpi
> > driver
> > should be probed again later in this case.
> >
> > This fixes an order issue when both GPIO and sdhci-acpi drivers are
> > built
> > as modules.
> >
> > CC: stable@vger.kernel.org # v4.9
> > Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=177101
> > Tested-by: Jonas Aaberg <cja@gmx.net>
> > Signed-off-by: Zhang Rui <rui.zhang@intel.com>
> > Acked-by: Adrian Hunter <adrian.hunter@intel.com>
> I strongly encourage you to run checkpatch of all your change before
> submitting patches.
> Below is the output, it gave me. It prevents me
> from applying the change. Please fix and re-spin!
>
Sorry for bring the trouble.
In fact, I indeed run checkpatch before sending it out.
> ERROR: Please use git commit description style 'commit <12+ chars of
> sha1> ("<title line>")' - ie: 'commit fatal: bad o
> ("da241d0283696d3f5")'
> #14:
> >
> > From c889f737322b797b743c63eda241d0283696d3f5 Mon Sep 17 00:00:00
> > 2001
> ERROR: patch seems to be corrupt (line wrapped?)
> #49: FILE: drivers/mmc/host/sdhci-acpi.c:465:
> if (sdhci_acpi_flag(c, SDHCI_ACPI_SD_CD)) {
>
> total: 2 errors, 0 warnings, 11 lines checked
>
I tried to resend the patch to myself, and find out the patch is
corrupted when it's sent via evolution. Although I have not used
evolution to send patch for a long time, but it indeed works for me
before.
Patch resent. Sorry again for the noise.
thanks,
rui
> Kind regards
> Uffe
>
> >
> > ---
> > drivers/mmc/host/sdhci-acpi.c | 5 ++++-
> > 1 file changed, 4 insertions(+), 1 deletion(-)
> >
> > diff --git a/drivers/mmc/host/sdhci-acpi.c
> > b/drivers/mmc/host/sdhci-acpi.c
> > index 160f695cc09c..5440323894ee 100644
> > --- a/drivers/mmc/host/sdhci-acpi.c
> > +++ b/drivers/mmc/host/sdhci-acpi.c
> > @@ -466,7 +466,10 @@ static int sdhci_acpi_probe(struct
> > platform_device *pdev)
> > if (sdhci_acpi_flag(c, SDHCI_ACPI_SD_CD)) {
> > bool v = sdhci_acpi_flag(c,
> > SDHCI_ACPI_SD_CD_OVERRIDE_LEVEL);
> >
> > - if (mmc_gpiod_request_cd(host->mmc, NULL, 0, v, 0,
> > NULL)) {
> > + err = mmc_gpiod_request_cd(host->mmc, NULL, 0, v,
> > 0, NULL);
> > + if (err) {
> > + if (err == -EPROBE_DEFER)
> > + goto err_free;
> > dev_warn(dev, "failed to setup card detect
> > gpio\n");
> > c->use_runtime_pm = false;
> > }
> > --
> > 2.7.4
> >
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2017-01-18 9:45 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-01-13 11:03 [PATCH v3] mmc: sdhci-acpi: support deferred probe Zhang Rui
2017-01-17 14:23 ` Ulf Hansson
2017-01-18 9:45 ` Zhang Rui
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).