On 27 June 2018 at 10:31, Daniel Mack <daniel@xxxxxxxxxx> wrote: > On Wednesday, June 27, 2018 09:54 AM, Ulf Hansson wrote: >> >> On 26 June 2018 at 22:50, Daniel Mack <daniel@xxxxxxxxxx> wrote: >>> >>> On Tuesday, June 26, 2018 10:48 PM, Daniel Mack wrote: > > >>>> @@ -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,9 @@ 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); >>>> + >> >> >> To guarantee firmware is loaded, don't you need the below as well? >> >> wait_event(card->pwron_waitq, priv->fw_ready); > > > Hmm, yes. I should probably just be calling into if_sdio_power_restore(). You don't want to mess up the runtime PM counter though. > > I'll test that and resend the patch. Great! Kind regards Uffe