1. 10 Mar, 2016 4 commits
    • Amitkumar Karwar's avatar
      mwifiex: Empty Tx queue during suspend · 54f00849
      Amitkumar Karwar authored
      In cfg80211 suspend handler, stop the netif queue and
      wait until all the Tx queues become empty. Start the
      queues in resume handler.
      Signed-off-by: default avatarAmitkumar Karwar <akarwar@marvell.com>
      Signed-off-by: default avatarKalle Valo <kvalo@codeaurora.org>
      54f00849
    • Hui Wang's avatar
      brcmfmac: Remove waitqueue_active check · 107b8713
      Hui Wang authored
      We met a problem of pm_suspend  when repeated closing/opening the lid
      on a Lenovo laptop (1/20 reproduce rate), below is the log:
      
      [ 199.735876] PM: Entering mem sleep
      [ 199.750516] e1000e: EEE TX LPI TIMER: 00000011
      [ 199.856638] Trying to free nonexistent resource <000000000000d000-000000000000d0ff>
      [ 201.753566] brcmfmac: brcmf_pcie_suspend: Timeout on response for entering D3 substate
      [ 201.753581] pci_legacy_suspend(): brcmf_pcie_suspend+0x0/0x1f0 [brcmfmac] returns -5
      [ 201.753585] dpm_run_callback(): pci_pm_suspend+0x0/0x160 returns -5
      [ 201.753589] PM: Device 0000:04:00.0 failed to suspend async: error -5
      
      Through debugging, we found when problem happens, it is not the device
      fails to enter D3, but the signal D3_ACK comes too early to pass the
      waitqueue_active() check.
      
      Just like this:
      brcmf_pcie_send_mb_data(devinfo, BRCMF_H2D_HOST_D3_INFORM);
      // signal is triggered here
      wait_event_timeout(devinfo->mbdata_resp_wait, devinfo->mbdata_completed,
      		   BRCMF_PCIE_MBDATA_TIMEOUT);
      
      So far I think it is safe to remove waitqueue_active check since there
      is only one place to trigger this signal (sending
      BRCMF_H2D_HOST_D3_INFORM). And it is not a problem calling wake_up
      event earlier than calling wait_event.
      
      Cc: Brett Rudley <brudley@broadcom.com>
      Cc: Hante Meuleman <meuleman@broadcom.com>
      Cc: Franky (Zhenhui) Lin <frankyl@broadcom.com>
      Cc: Pieter-Paul Giesberts <pieterpg@broadcom.com>
      Cc: Arend van Spriel <arend@broadcom.com>
      Signed-off-by: default avatarHui Wang <hui.wang@canonical.com>
      Signed-off-by: default avatarKalle Valo <kvalo@codeaurora.org>
      107b8713
    • Dan Carpenter's avatar
      libertas: fix an error code in probe · 3691ac4a
      Dan Carpenter authored
      We accidentally return success instead of a negative error code.
      Signed-off-by: default avatarDan Carpenter <dan.carpenter@oracle.com>
      Signed-off-by: default avatarKalle Valo <kvalo@codeaurora.org>
      3691ac4a
    • Kalle Valo's avatar
      Merge tag 'iwlwifi-next-for-kalle-2016-03-09_2' of... · 6ab882a8
      Kalle Valo authored
      Merge tag 'iwlwifi-next-for-kalle-2016-03-09_2' of https://git.kernel.org/pub/scm/linux/kernel/git/iwlwifi/iwlwifi-next
      
      * update GSCAN capabilities (Ayala)
      * fix AES-CMAC in AP mode (Johannes)
      * adapt prints to new firmware API
      * rx path improvements (Sara and Gregory)
      * fixes for the thermal / cooling device code (Chaya Rachel)
      * fixes for GO uAPSD handling
      * more code for the 9000 device family (Sara)
      * infrastructure work for firmware notification (Chaya Rachel)
      * improve association reliablity (Sara)
      * runtime PM fixes
      * fixes for ROC (HS2.0)
      6ab882a8
  2. 09 Mar, 2016 13 commits
  3. 08 Mar, 2016 2 commits
    • Arnd Bergmann's avatar
      wireless: cw1200: use __maybe_unused to hide pm functions_ · 836856e3
      Arnd Bergmann authored
      The cw1200 uses #ifdef to check for CONFIG_PM, but then
      uses SIMPLE_DEV_PM_OPS, which leaves the references out when
      CONFIG_PM_SLEEP is not defined, so we get a warning with
      PM=y && PM_SLEEP=n:
      
      drivers/net/wireless/st/cw1200/cw1200_spi.c:450:12: error: 'cw1200_spi_suspend' defined but not used [-Werror=unused-function]
      
      This removes the incorrect #ifdef and instead uses a __maybe_unused
      annotation to let the compiler know it can silently drop
      the function definition.
      
      For the DEV_PM_OPS definition, we can use an IS_ENABLED() check
      to avoid defining the structure when CONFIG_PM is not set without
      the #ifdef.
      Signed-off-by: default avatarArnd Bergmann <arnd@arndb.de>
      Signed-off-by: default avatarKalle Valo <kvalo@codeaurora.org>
      836856e3
    • Larry Finger's avatar
      rtlwifi: Fix size of wireless mode variable · 73fb2705
      Larry Finger authored
      Smatch reports the following warning:
      
        CHECK   drivers/net/wireless/realtek/rtlwifi/rc.c
      drivers/net/wireless/realtek/rtlwifi/rc.c:144 _rtl_rc_rate_set_series() warn: impossible condition '(wireless_mode == 256) => (0-255 == 256)'
      
      This warning arises because commit acc6907b87a9 ("rtlwifi: Fix warning
      from ieee80211_get_tx_rates() when using 5G") now checks the wireless
      mode for WIRELESS_MODE_AC_ONLY (BIT(8)) in _rtl_rc_rate_set_series().
      As a result, all quantities used to store the wireless mode must be u16.
      
      This patch also reorders struct rtl_sta_info to save a little space.
      
      Fixes: d76d65fd ("rtlwifi: fix broken VHT support")
      Reported-by: default avatarDan Williams <dcbw@redhat.com>
      Signed-off-by: default avatarLarry Finger <Larry.Finger@lwfinger.net>
      Signed-off-by: default avatarKalle Valo <kvalo@codeaurora.org>
      73fb2705
  4. 07 Mar, 2016 21 commits