diff mbox

Correctly fail to suspend when SDIO does not support power on suspend

Message ID BY1PR0201MB0904426CF17EF719FA343B1C839D0@BY1PR0201MB0904.namprd02.prod.outlook.com (mailing list archive)
State Changes Requested
Delegated to: Kalle Valo
Headers show

Commit Message

Eric Bentley Aug. 31, 2017, 11:44 p.m. UTC
Return error when failing to set power management capabilities flag.  This will cause the suspend to fail but the radio
will continue to operate.  Allowing this to fail without reporting error will cause the radio to be non-functional on 
resume as it will have lost power.

Signed-off-by: Eric Bentley <eric.bentley@lairdtech.com>
---
 drivers/net/wireless/broadcom/brcm80211/brcmfmac/bcmsdh.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

-- 
2.6.0.GIT

Comments

Steve deRosier Aug. 31, 2017, 11:49 p.m. UTC | #1
On Thu, Aug 31, 2017 at 4:44 PM, Eric Bentley
<Eric.Bentley@lairdtech.com> wrote:
> -       if (sdio_set_host_pm_flags(sdiodev->func[1], sdio_flags))
> +       if (sdio_set_host_pm_flags(sdiodev->func[1], sdio_flags)) (

Hi Eric,

Shouldn't that be a '{' instead of '('?  Maybe I'm missing some
context, but that doesn't look compilable.

:)

- Steve
Eric Bentley Sept. 1, 2017, 12:01 a.m. UTC | #2
Yep – tried to clean some white space up at the last minute…ugh

On 8/31/17, 7:49 PM, "steve.derosier@gmail.com on behalf of Steve deRosier" <steve.derosier@gmail.com on behalf of derosier@gmail.com> wrote:

    On Thu, Aug 31, 2017 at 4:44 PM, Eric Bentley
    <Eric.Bentley@lairdtech.com> wrote:
    > -       if (sdio_set_host_pm_flags(sdiodev->func[1], sdio_flags))

    > +       if (sdio_set_host_pm_flags(sdiodev->func[1], sdio_flags)) (

    
    Hi Eric,
    
    Shouldn't that be a '{' instead of '('?  Maybe I'm missing some
    context, but that doesn't look compilable.
    
    :)
    
    - Steve
diff mbox

Patch

diff --git a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/bcmsdh.c b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/bcmsdh.c
index 72139b5..2f7d03f 100644
--- a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/bcmsdh.c
+++ b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/bcmsdh.c
@@ -1264,8 +1264,10 @@  static int brcmf_ops_sdio_suspend(struct device *dev)
                 else
                         sdio_flags |= MMC_PM_WAKE_SDIO_IRQ;
         }
-       if (sdio_set_host_pm_flags(sdiodev->func[1], sdio_flags))
+       if (sdio_set_host_pm_flags(sdiodev->func[1], sdio_flags)) (
                 brcmf_err("Failed to set pm_flags %x\n", sdio_flags);
+               return -EINVAL;
+       }
         return 0;
 }