1. 20 4月, 2017 18 次提交
  2. 11 4月, 2017 9 次提交
  3. 08 2月, 2017 6 次提交
  4. 07 2月, 2017 5 次提交
    • J
      iwlwifi: pcie: fix another RF-kill race · 23aeea94
      Johannes Berg 提交于
      When resuming, it's possible for the following scenario to occur:
      
       * iwl_pci_resume() enables the RF-kill interrupt
       * iwl_pci_resume() reads the RF-kill state (e.g. to 'radio enabled')
       * RF_KILL interrupt triggers, and iwl_pcie_irq_handler() reads the
         state, now 'radio disabled', and acquires the &trans_pcie->mutex.
       * iwl_pcie_irq_handler() further calls iwl_trans_pcie_rf_kill() to
         indicate to the higher layers that the radio is now disabled (and
         stops the device while at it)
       * iwl_pcie_irq_handler() drops the mutex
       * iwl_pci_resume() continues, acquires the mutex and calls the higher
         layers to indicate that the radio is enabled.
      
      At this point, the device is stopped but the higher layers think it's
      available, and can call deeply into the driver to try to enable it.
      However, this will fail since the device is actually disabled.
      Signed-off-by: NJohannes Berg <johannes.berg@intel.com>
      Signed-off-by: NLuca Coelho <luciano.coelho@intel.com>
      23aeea94
    • S
      iwlwifi: support two phys for a000 devices · 5594d80e
      Sara Sharon 提交于
      Support differentiating between two phys for a000 devices
      in order to load the correct firmware.
      Eventually when moving completely to the new phy we will be
      able to remove this.
      Signed-off-by: NSara Sharon <sara.sharon@intel.com>
      Signed-off-by: NLuca Coelho <luciano.coelho@intel.com>
      5594d80e
    • L
      iwlwifi: remove unnecessary argument to iwl_drv_start() · 49060383
      Luca Coelho 提交于
      When iwl_drv_start() is called, trans->cfg must already be set, so
      there's no need to pass cfg separately, since it can be accessed
      directly from trans->cfg.
      Signed-off-by: NLuca Coelho <luciano.coelho@intel.com>
      Signed-off-by: NLuca Coelho <luciano.coelho@intel.com>
      49060383
    • S
      iwlwifi: pcie: fix the set of DMA memory mask · 2c6262b7
      Sara Sharon 提交于
      Our 9000 device supports 64 bit DMA address for RX only, and
      not for TX.
      Setting DMA mask to 64 for the whole device is erroneous - we
      can do it only for a000 devices where device is capable of
      both RX & TX DMA with 64 bit address space.
      
      Fixes: 96a6497b ("iwlwifi: pcie: add 9000 series multi queue rx DMA support")
      Signed-off-by: NSara Sharon <sara.sharon@intel.com>
      Signed-off-by: NLuca Coelho <luciano.coelho@intel.com>
      2c6262b7
    • J
      iwlwifi: mvm/pcie: adjust A-MSDU tx_cmd length in PCIe · 05e5a7e5
      Johannes Berg 提交于
      Instead of setting the tx_cmd length in the mvm code, which is
      complicated by the fact that DQA may want to temporarily store
      the SKB on the side, adjust the length in the PCIe code which
      also knows about this since it's responsible for duplicating
      all those headers that are account for in this code.
      
      As the PCIe code already relies on the tx_cmd->len field, this
      doesn't really introduce any new dependencies.
      
      To make this possible we need to move the memcpy() of the TX
      command until after it was updated.
      
      This does even simplify the code though, since the PCIe code
      already does a lot of manipulations to build A-MSDUs correctly
      and changing the length becomes a simple operation to see how
      much was added/removed, rather than predicting it.
      
      Fixes: 24afba76 ("iwlwifi: mvm: support bss dynamic alloc/dealloc of queues")
      Signed-off-by: NJohannes Berg <johannes.berg@intel.com>
      Signed-off-by: NLuca Coelho <luciano.coelho@intel.com>
      05e5a7e5
  5. 26 1月, 2017 2 次提交
    • S
      iwlwifi: pcie: cleanup rfkill checks · 727c02df
      Sara Sharon 提交于
      Move repeating code to a separate function.
      Signed-off-by: NSara Sharon <sara.sharon@intel.com>
      Signed-off-by: NLuca Coelho <luciano.coelho@intel.com>
      727c02df
    • K
      iwlwifi: pcie: trans: Remove unused 'shift_param' · 3ce4a038
      Kirtika Ruchandani 提交于
      shift_param is defined and set in iwl_pcie_load_cpu_sections but not
      used. Fix this to avoid -Wunused-but-set-variable warning.
      
      The code using it turned into dead code with commit dcab8ecd
      ("iwlwifi: mvm: support ucode load for family_8000 B0 only") which
      added a separate function iwl_pcie_load_given_ucode_8000 (then 8000b)
      for IWL_DEVICE_FAMILY_8000. Commit 76f8c0e1 ("iwlwifi: pcie:
      remove dead code") removed the dead code but left shift_param as is.
      
      iwlwifi/pcie/trans.c: In function ‘iwl_pcie_load_cpu_sections’:
      iwlwifi/pcie/trans.c:871:6: warning: variable ‘shift_param’ set but not used [-Wunused-but-set-variable]
      
      Fixes: dcab8ecd ("iwlwifi: mvm: support ucode load for family_8000 B0 only")
      Fixes: 76f8c0e1 ("iwlwifi: pcie: remove dead code")
      Signed-off-by: NKirtika Ruchandani <kirtika@google.com>
      Cc: Sara Sharon <sara.sharon@intel.com>
      Cc: Luca Coelho <luciano.coelho@intel.com>
      Cc: Liad Kaufman <liad.kaufman@intel.com>
      Cc: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
      [removed some unnecessary braces]
      Signed-off-by: NLuca Coelho <luciano.coelho@intel.com>
      3ce4a038