* [PATCH v2] libertas: fix suspend and resume for SDIO connected cards
@ 2018-06-27 18:58 Daniel Mack
[not found] ` <20180627185845.31799-1-daniel-cYrQPVfZoowdnm+yROfE0A@public.gmane.org>
0 siblings, 1 reply; 7+ messages in thread
From: Daniel Mack @ 2018-06-27 18:58 UTC (permalink / raw)
To: ulf.hansson-QSEj5FYQhm4dnm+yROfE0A
Cc: chris-OsFVWbfNK3isTnJN9+BGXg, linux-mmc-u79uwXL29TY76Z2rM5mHXA,
libertas-dev-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r,
linux-wireless-u79uwXL29TY76Z2rM5mHXA, Daniel Mack
Prior to commit 573185cc7e64 ("mmc: core: Invoke sdio func driver's PM
callbacks from the sdio bus"), the MMC core used to call into the power
management functions of SDIO clients itself and removed the card if the
return code was non-zero. IOW, the mmc handled errors gracefully and didn't
upchain them to the pm core.
Since this change, the mmc core relies on generic power management
functions which treat all errors as a reason to cancel the suspend
immediately. This causes suspend attempts to fail when the libertas
driver is loaded.
To fix this, power down the card explicitly in if_sdio_suspend() when we
know we're about to lose power and return success. Also set a flag in these
cases, and power up the card again in if_sdio_resume().
Signed-off-by: Daniel Mack <daniel-cYrQPVfZoowdnm+yROfE0A@public.gmane.org>
Cc: Ulf Hansson <ulf.hansson-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>
Cc: Chris Ball <chris-OsFVWbfNK3isTnJN9+BGXg@public.gmane.org>
---
v1 → v2:
* Reworded patch subject
* Added wait_event(card->pwron_waitq, card->priv->fw_ready)
drivers/net/wireless/marvell/libertas/dev.h | 1 +
.../net/wireless/marvell/libertas/if_sdio.c | 30 +++++++++++++++----
2 files changed, 25 insertions(+), 6 deletions(-)
diff --git a/drivers/net/wireless/marvell/libertas/dev.h b/drivers/net/wireless/marvell/libertas/dev.h
index dd1ee1f0af48..469134930026 100644
--- a/drivers/net/wireless/marvell/libertas/dev.h
+++ b/drivers/net/wireless/marvell/libertas/dev.h
@@ -104,6 +104,7 @@ struct lbs_private {
u8 fw_ready;
u8 surpriseremoved;
u8 setup_fw_on_resume;
+ u8 power_up_on_resume;
int (*hw_host_to_card) (struct lbs_private *priv, u8 type, u8 *payload, u16 nb);
void (*reset_card) (struct lbs_private *priv);
int (*power_save) (struct lbs_private *priv);
diff --git a/drivers/net/wireless/marvell/libertas/if_sdio.c b/drivers/net/wireless/marvell/libertas/if_sdio.c
index 2300e796c6ab..43743c26c071 100644
--- a/drivers/net/wireless/marvell/libertas/if_sdio.c
+++ b/drivers/net/wireless/marvell/libertas/if_sdio.c
@@ -1290,15 +1290,23 @@ static void if_sdio_remove(struct sdio_func *func)
static int if_sdio_suspend(struct device *dev)
{
struct sdio_func *func = dev_to_sdio_func(dev);
- int ret;
struct if_sdio_card *card = sdio_get_drvdata(func);
+ struct lbs_private *priv = card->priv;
+ int ret;
mmc_pm_flag_t flags = sdio_get_host_pm_caps(func);
+ priv->power_up_on_resume = false;
/* If we're powered off anyway, just let the mmc layer remove the
* card. */
- if (!lbs_iface_active(card->priv))
- return -ENOSYS;
+ if (!lbs_iface_active(priv)) {
+ if (priv->fw_ready) {
+ priv->power_up_on_resume = true;
+ if_sdio_power_off(card);
+ }
+
+ return 0;
+ }
dev_info(dev, "%s: suspend: PM flags = 0x%x\n",
sdio_func_id(func), flags);
@@ -1306,9 +1314,14 @@ static int if_sdio_suspend(struct device *dev)
/* If we aren't being asked to wake on anything, we should bail out
* and let the SD stack power down the card.
*/
- if (card->priv->wol_criteria == EHS_REMOVE_WAKEUP) {
+ if (priv->wol_criteria == EHS_REMOVE_WAKEUP) {
dev_info(dev, "Suspend without wake params -- powering down card\n");
- return -ENOSYS;
+ if (priv->fw_ready) {
+ priv->power_up_on_resume = true;
+ if_sdio_power_off(card);
+ }
+
+ return 0;
}
if (!(flags & MMC_PM_KEEP_POWER)) {
@@ -1321,7 +1334,7 @@ static int if_sdio_suspend(struct device *dev)
if (ret)
return ret;
- ret = lbs_suspend(card->priv);
+ ret = lbs_suspend(priv);
if (ret)
return ret;
@@ -1336,6 +1349,11 @@ static int if_sdio_resume(struct device *dev)
dev_info(dev, "%s: resume: we're back\n", sdio_func_id(func));
+ if (card->priv->power_up_on_resume) {
+ if_sdio_power_on(card);
+ wait_event(card->pwron_waitq, card->priv->fw_ready);
+ }
+
ret = lbs_resume(card->priv);
return ret;
--
2.17.1
^ permalink raw reply related [flat|nested] 7+ messages in thread
* Re: [PATCH v2] libertas: fix suspend and resume for SDIO connected cards
[not found] ` <20180627185845.31799-1-daniel-cYrQPVfZoowdnm+yROfE0A@public.gmane.org>
@ 2018-06-27 23:13 ` Chris Ball
2018-06-29 15:39 ` Ulf Hansson
2018-07-04 15:13 ` [v2] " Kalle Valo
2 siblings, 0 replies; 7+ messages in thread
From: Chris Ball @ 2018-06-27 23:13 UTC (permalink / raw)
To: Daniel Mack
Cc: ulf.hansson-QSEj5FYQhm4dnm+yROfE0A,
linux-mmc-u79uwXL29TY76Z2rM5mHXA,
libertas-dev-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r,
linux-wireless-u79uwXL29TY76Z2rM5mHXA
On Wed, Jun 27, 2018 at 08:58:45PM +0200, Daniel Mack wrote:
> Prior to commit 573185cc7e64 ("mmc: core: Invoke sdio func driver's PM
> callbacks from the sdio bus"), the MMC core used to call into the power
> management functions of SDIO clients itself and removed the card if the
> return code was non-zero. IOW, the mmc handled errors gracefully and didn't
> upchain them to the pm core.
>
> Since this change, the mmc core relies on generic power management
> functions which treat all errors as a reason to cancel the suspend
> immediately. This causes suspend attempts to fail when the libertas
> driver is loaded.
>
> To fix this, power down the card explicitly in if_sdio_suspend() when we
> know we're about to lose power and return success. Also set a flag in these
> cases, and power up the card again in if_sdio_resume().
>
> Signed-off-by: Daniel Mack <daniel-cYrQPVfZoowdnm+yROfE0A@public.gmane.org>
> Cc: Ulf Hansson <ulf.hansson-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>
> Cc: Chris Ball <chris-OsFVWbfNK3isTnJN9+BGXg@public.gmane.org>
Thanks, looks good.
Reviewed-by: Chris Ball <chris-OsFVWbfNK3isTnJN9+BGXg@public.gmane.org>
--
Chris Ball <http://printf.net/>
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH v2] libertas: fix suspend and resume for SDIO connected cards
[not found] ` <20180627185845.31799-1-daniel-cYrQPVfZoowdnm+yROfE0A@public.gmane.org>
2018-06-27 23:13 ` Chris Ball
@ 2018-06-29 15:39 ` Ulf Hansson
[not found] ` <CAPDyKFr7snWsk=194u4nKs4301tUARByuEPSFop_fzxn6HVQDQ-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2018-07-04 15:13 ` [v2] " Kalle Valo
2 siblings, 1 reply; 7+ messages in thread
From: Ulf Hansson @ 2018-06-29 15:39 UTC (permalink / raw)
To: Daniel Mack
Cc: Chris Ball, linux-mmc-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
libertas-dev-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r,
linux-wireless-u79uwXL29TY76Z2rM5mHXA
On 27 June 2018 at 20:58, Daniel Mack <daniel-cYrQPVfZoowdnm+yROfE0A@public.gmane.org> wrote:
> Prior to commit 573185cc7e64 ("mmc: core: Invoke sdio func driver's PM
> callbacks from the sdio bus"), the MMC core used to call into the power
> management functions of SDIO clients itself and removed the card if the
> return code was non-zero. IOW, the mmc handled errors gracefully and didn't
> upchain them to the pm core.
>
> Since this change, the mmc core relies on generic power management
> functions which treat all errors as a reason to cancel the suspend
> immediately. This causes suspend attempts to fail when the libertas
> driver is loaded.
>
> To fix this, power down the card explicitly in if_sdio_suspend() when we
> know we're about to lose power and return success. Also set a flag in these
> cases, and power up the card again in if_sdio_resume().
>
> Signed-off-by: Daniel Mack <daniel-cYrQPVfZoowdnm+yROfE0A@public.gmane.org>
> Cc: Ulf Hansson <ulf.hansson-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>
> Cc: Chris Ball <chris-OsFVWbfNK3isTnJN9+BGXg@public.gmane.org>
Looks good to me! Should be a candidate for stable as well!?
Reviewed-by: Ulf Hansson <ulf.hansson-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>
I have some additional related changes in mind for the libertas SDIO
driver, however let me post patches for us to discuss around instead.
Kind regards
Uffe
> ---
> v1 → v2:
> * Reworded patch subject
> * Added wait_event(card->pwron_waitq, card->priv->fw_ready)
>
> drivers/net/wireless/marvell/libertas/dev.h | 1 +
> .../net/wireless/marvell/libertas/if_sdio.c | 30 +++++++++++++++----
> 2 files changed, 25 insertions(+), 6 deletions(-)
>
> diff --git a/drivers/net/wireless/marvell/libertas/dev.h b/drivers/net/wireless/marvell/libertas/dev.h
> index dd1ee1f0af48..469134930026 100644
> --- a/drivers/net/wireless/marvell/libertas/dev.h
> +++ b/drivers/net/wireless/marvell/libertas/dev.h
> @@ -104,6 +104,7 @@ struct lbs_private {
> u8 fw_ready;
> u8 surpriseremoved;
> u8 setup_fw_on_resume;
> + u8 power_up_on_resume;
> int (*hw_host_to_card) (struct lbs_private *priv, u8 type, u8 *payload, u16 nb);
> void (*reset_card) (struct lbs_private *priv);
> int (*power_save) (struct lbs_private *priv);
> diff --git a/drivers/net/wireless/marvell/libertas/if_sdio.c b/drivers/net/wireless/marvell/libertas/if_sdio.c
> index 2300e796c6ab..43743c26c071 100644
> --- a/drivers/net/wireless/marvell/libertas/if_sdio.c
> +++ b/drivers/net/wireless/marvell/libertas/if_sdio.c
> @@ -1290,15 +1290,23 @@ static void if_sdio_remove(struct sdio_func *func)
> static int if_sdio_suspend(struct device *dev)
> {
> struct sdio_func *func = dev_to_sdio_func(dev);
> - int ret;
> struct if_sdio_card *card = sdio_get_drvdata(func);
> + struct lbs_private *priv = card->priv;
> + int ret;
>
> mmc_pm_flag_t flags = sdio_get_host_pm_caps(func);
> + priv->power_up_on_resume = false;
>
> /* If we're powered off anyway, just let the mmc layer remove the
> * card. */
> - if (!lbs_iface_active(card->priv))
> - return -ENOSYS;
> + if (!lbs_iface_active(priv)) {
> + if (priv->fw_ready) {
> + priv->power_up_on_resume = true;
> + if_sdio_power_off(card);
> + }
> +
> + return 0;
> + }
>
> dev_info(dev, "%s: suspend: PM flags = 0x%x\n",
> sdio_func_id(func), flags);
> @@ -1306,9 +1314,14 @@ static int if_sdio_suspend(struct device *dev)
> /* If we aren't being asked to wake on anything, we should bail out
> * and let the SD stack power down the card.
> */
> - if (card->priv->wol_criteria == EHS_REMOVE_WAKEUP) {
> + if (priv->wol_criteria == EHS_REMOVE_WAKEUP) {
> dev_info(dev, "Suspend without wake params -- powering down card\n");
> - return -ENOSYS;
> + if (priv->fw_ready) {
> + priv->power_up_on_resume = true;
> + if_sdio_power_off(card);
> + }
> +
> + return 0;
> }
>
> if (!(flags & MMC_PM_KEEP_POWER)) {
> @@ -1321,7 +1334,7 @@ static int if_sdio_suspend(struct device *dev)
> if (ret)
> return ret;
>
> - ret = lbs_suspend(card->priv);
> + ret = lbs_suspend(priv);
> if (ret)
> return ret;
>
> @@ -1336,6 +1349,11 @@ static int if_sdio_resume(struct device *dev)
>
> dev_info(dev, "%s: resume: we're back\n", sdio_func_id(func));
>
> + if (card->priv->power_up_on_resume) {
> + if_sdio_power_on(card);
> + wait_event(card->pwron_waitq, card->priv->fw_ready);
> + }
> +
> ret = lbs_resume(card->priv);
>
> return ret;
> --
> 2.17.1
>
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH v2] libertas: fix suspend and resume for SDIO connected cards
[not found] ` <CAPDyKFr7snWsk=194u4nKs4301tUARByuEPSFop_fzxn6HVQDQ-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
@ 2018-06-29 17:57 ` Daniel Mack
[not found] ` <dac693d9-b6f4-fac6-3cfa-ccfc4a6172c6-cYrQPVfZoowdnm+yROfE0A@public.gmane.org>
0 siblings, 1 reply; 7+ messages in thread
From: Daniel Mack @ 2018-06-29 17:57 UTC (permalink / raw)
To: Ulf Hansson
Cc: Chris Ball, linux-mmc-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
libertas-dev-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r,
linux-wireless-u79uwXL29TY76Z2rM5mHXA
On Friday, June 29, 2018 05:39 PM, Ulf Hansson wrote:
> On 27 June 2018 at 20:58, Daniel Mack <daniel-cYrQPVfZoowdnm+yROfE0A@public.gmane.org> wrote:
>> Prior to commit 573185cc7e64 ("mmc: core: Invoke sdio func driver's PM
>> callbacks from the sdio bus"), the MMC core used to call into the power
>> management functions of SDIO clients itself and removed the card if the
>> return code was non-zero. IOW, the mmc handled errors gracefully and didn't
>> upchain them to the pm core.
>>
>> Since this change, the mmc core relies on generic power management
>> functions which treat all errors as a reason to cancel the suspend
>> immediately. This causes suspend attempts to fail when the libertas
>> driver is loaded.
>>
>> To fix this, power down the card explicitly in if_sdio_suspend() when we
>> know we're about to lose power and return success. Also set a flag in these
>> cases, and power up the card again in if_sdio_resume().
>>
>> Signed-off-by: Daniel Mack <daniel-cYrQPVfZoowdnm+yROfE0A@public.gmane.org>
>> Cc: Ulf Hansson <ulf.hansson-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>
>> Cc: Chris Ball <chris-OsFVWbfNK3isTnJN9+BGXg@public.gmane.org>
>
> Looks good to me! Should be a candidate for stable as well!?
Thanks!
Yeah, it should probably get a
Fixes: 573185cc7e64 ("mmc: core: Invoke sdio func driver's PM
callbacks from the sdio bus")
as well.
> I have some additional related changes in mind for the libertas SDIO
> driver, however let me post patches for us to discuss around instead.
I currently have access to such hardware, so I can test patches :)
Thanks,
Daniel
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH v2] libertas: fix suspend and resume for SDIO connected cards
[not found] ` <dac693d9-b6f4-fac6-3cfa-ccfc4a6172c6-cYrQPVfZoowdnm+yROfE0A@public.gmane.org>
@ 2018-07-02 14:57 ` Kalle Valo
[not found] ` <87o9fp8z2o.fsf-5ukZ45wKbUHoml4zekdYB16hYfS7NtTn@public.gmane.org>
0 siblings, 1 reply; 7+ messages in thread
From: Kalle Valo @ 2018-07-02 14:57 UTC (permalink / raw)
To: Daniel Mack
Cc: Ulf Hansson, Chris Ball, linux-mmc@vger.kernel.org,
libertas-dev-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r,
linux-wireless-u79uwXL29TY76Z2rM5mHXA
Daniel Mack <daniel-cYrQPVfZoowdnm+yROfE0A@public.gmane.org> writes:
> On Friday, June 29, 2018 05:39 PM, Ulf Hansson wrote:
>> On 27 June 2018 at 20:58, Daniel Mack <daniel-cYrQPVfZoowdnm+yROfE0A@public.gmane.org> wrote:
>>> Prior to commit 573185cc7e64 ("mmc: core: Invoke sdio func driver's PM
>>> callbacks from the sdio bus"), the MMC core used to call into the power
>>> management functions of SDIO clients itself and removed the card if the
>>> return code was non-zero. IOW, the mmc handled errors gracefully and didn't
>>> upchain them to the pm core.
>>>
>>> Since this change, the mmc core relies on generic power management
>>> functions which treat all errors as a reason to cancel the suspend
>>> immediately. This causes suspend attempts to fail when the libertas
>>> driver is loaded.
>>>
>>> To fix this, power down the card explicitly in if_sdio_suspend() when we
>>> know we're about to lose power and return success. Also set a flag in these
>>> cases, and power up the card again in if_sdio_resume().
>>>
>>> Signed-off-by: Daniel Mack <daniel-cYrQPVfZoowdnm+yROfE0A@public.gmane.org>
>>> Cc: Ulf Hansson <ulf.hansson-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>
>>> Cc: Chris Ball <chris-OsFVWbfNK3isTnJN9+BGXg@public.gmane.org>
>>
>> Looks good to me! Should be a candidate for stable as well!?
>
> Thanks!
>
> Yeah, it should probably get a
>
> Fixes: 573185cc7e64 ("mmc: core: Invoke sdio func driver's PM
> callbacks from the sdio bus")
>
> as well.
So I'll queue this for wireless-drivers-next and add:
Fixes: 573185cc7e64 ("mmc: core: Invoke sdio func driver's PM callbacks from the sdio bus")
Cc: <stable-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
Ok?
--
Kalle Valo
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH v2] libertas: fix suspend and resume for SDIO connected cards
[not found] ` <87o9fp8z2o.fsf-5ukZ45wKbUHoml4zekdYB16hYfS7NtTn@public.gmane.org>
@ 2018-07-03 4:51 ` Ulf Hansson
0 siblings, 0 replies; 7+ messages in thread
From: Ulf Hansson @ 2018-07-03 4:51 UTC (permalink / raw)
To: Kalle Valo
Cc: Daniel Mack, Chris Ball,
linux-mmc-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
libertas-dev-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r,
linux-wireless-u79uwXL29TY76Z2rM5mHXA
On 2 July 2018 at 16:57, Kalle Valo <kvalo-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org> wrote:
> Daniel Mack <daniel-cYrQPVfZoowdnm+yROfE0A@public.gmane.org> writes:
>
>> On Friday, June 29, 2018 05:39 PM, Ulf Hansson wrote:
>>> On 27 June 2018 at 20:58, Daniel Mack <daniel-cYrQPVfZoowdnm+yROfE0A@public.gmane.org> wrote:
>>>> Prior to commit 573185cc7e64 ("mmc: core: Invoke sdio func driver's PM
>>>> callbacks from the sdio bus"), the MMC core used to call into the power
>>>> management functions of SDIO clients itself and removed the card if the
>>>> return code was non-zero. IOW, the mmc handled errors gracefully and didn't
>>>> upchain them to the pm core.
>>>>
>>>> Since this change, the mmc core relies on generic power management
>>>> functions which treat all errors as a reason to cancel the suspend
>>>> immediately. This causes suspend attempts to fail when the libertas
>>>> driver is loaded.
>>>>
>>>> To fix this, power down the card explicitly in if_sdio_suspend() when we
>>>> know we're about to lose power and return success. Also set a flag in these
>>>> cases, and power up the card again in if_sdio_resume().
>>>>
>>>> Signed-off-by: Daniel Mack <daniel-cYrQPVfZoowdnm+yROfE0A@public.gmane.org>
>>>> Cc: Ulf Hansson <ulf.hansson-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>
>>>> Cc: Chris Ball <chris-OsFVWbfNK3isTnJN9+BGXg@public.gmane.org>
>>>
>>> Looks good to me! Should be a candidate for stable as well!?
>>
>> Thanks!
>>
>> Yeah, it should probably get a
>>
>> Fixes: 573185cc7e64 ("mmc: core: Invoke sdio func driver's PM
>> callbacks from the sdio bus")
>>
>> as well.
>
> So I'll queue this for wireless-drivers-next and add:
>
> Fixes: 573185cc7e64 ("mmc: core: Invoke sdio func driver's PM callbacks from the sdio bus")
> Cc: <stable-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
>
> Ok?
That's fine by me.
Kind regards
Uffe
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [v2] libertas: fix suspend and resume for SDIO connected cards
[not found] ` <20180627185845.31799-1-daniel-cYrQPVfZoowdnm+yROfE0A@public.gmane.org>
2018-06-27 23:13 ` Chris Ball
2018-06-29 15:39 ` Ulf Hansson
@ 2018-07-04 15:13 ` Kalle Valo
2 siblings, 0 replies; 7+ messages in thread
From: Kalle Valo @ 2018-07-04 15:13 UTC (permalink / raw)
Cc: ulf.hansson-QSEj5FYQhm4dnm+yROfE0A, chris-OsFVWbfNK3isTnJN9+BGXg,
linux-mmc-u79uwXL29TY76Z2rM5mHXA,
libertas-dev-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r,
linux-wireless-u79uwXL29TY76Z2rM5mHXA, Daniel Mack
Daniel Mack <daniel-cYrQPVfZoowdnm+yROfE0A@public.gmane.org> wrote:
> Prior to commit 573185cc7e64 ("mmc: core: Invoke sdio func driver's PM
> callbacks from the sdio bus"), the MMC core used to call into the power
> management functions of SDIO clients itself and removed the card if the
> return code was non-zero. IOW, the mmc handled errors gracefully and didn't
> upchain them to the pm core.
>
> Since this change, the mmc core relies on generic power management
> functions which treat all errors as a reason to cancel the suspend
> immediately. This causes suspend attempts to fail when the libertas
> driver is loaded.
>
> To fix this, power down the card explicitly in if_sdio_suspend() when we
> know we're about to lose power and return success. Also set a flag in these
> cases, and power up the card again in if_sdio_resume().
>
> Fixes: 573185cc7e64 ("mmc: core: Invoke sdio func driver's PM callbacks from the sdio bus")
> Cc: <stable-u79uwXL29TY76Z2rM5mHXA@public.gmane.org>
> Signed-off-by: Daniel Mack <daniel-cYrQPVfZoowdnm+yROfE0A@public.gmane.org>
> Reviewed-by: Chris Ball <chris-OsFVWbfNK3isTnJN9+BGXg@public.gmane.org>
> Reviewed-by: Ulf Hansson <ulf.hansson-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>
Patch applied to wireless-drivers-next.git, thanks.
7444a8092906 libertas: fix suspend and resume for SDIO connected cards
--
https://patchwork.kernel.org/patch/10492407/
https://wireless.wiki.kernel.org/en/developers/documentation/submittingpatches
^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2018-07-04 15:13 UTC | newest]
Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2018-06-27 18:58 [PATCH v2] libertas: fix suspend and resume for SDIO connected cards Daniel Mack
[not found] ` <20180627185845.31799-1-daniel-cYrQPVfZoowdnm+yROfE0A@public.gmane.org>
2018-06-27 23:13 ` Chris Ball
2018-06-29 15:39 ` Ulf Hansson
[not found] ` <CAPDyKFr7snWsk=194u4nKs4301tUARByuEPSFop_fzxn6HVQDQ-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2018-06-29 17:57 ` Daniel Mack
[not found] ` <dac693d9-b6f4-fac6-3cfa-ccfc4a6172c6-cYrQPVfZoowdnm+yROfE0A@public.gmane.org>
2018-07-02 14:57 ` Kalle Valo
[not found] ` <87o9fp8z2o.fsf-5ukZ45wKbUHoml4zekdYB16hYfS7NtTn@public.gmane.org>
2018-07-03 4:51 ` Ulf Hansson
2018-07-04 15:13 ` [v2] " Kalle Valo
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).