Daniel Mack <[email protected]> writes:
> On Friday, June 29, 2018 05:39 PM, Ulf Hansson wrote:
>> On 27 June 2018 at 20:58, Daniel Mack <[email protected]> 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 <[email protected]>
>>> Cc: Ulf Hansson <[email protected]>
>>> Cc: Chris Ball <[email protected]>
>>
>> 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: <[email protected]
Ok?
--
Kalle Valo