1. 11 9月, 2014 1 次提交
  2. 25 6月, 2014 1 次提交
  3. 13 4月, 2014 1 次提交
  4. 09 4月, 2014 1 次提交
  5. 13 2月, 2014 2 次提交
  6. 14 1月, 2014 1 次提交
  7. 04 1月, 2014 1 次提交
  8. 01 1月, 2014 1 次提交
  9. 18 12月, 2013 1 次提交
    • A
      iwlwifi: trans: divide stop_hw into stop_device/op_mode_leave · a4082843
      Arik Nemtsov 提交于
      The stop_hw trans callback is not well defined. It is missing in many
      cleanup flows and the division of labor between stop_device/stop_hw
      is cumbersome. Remove stop_hw and use stop_device to perform both.
      Implement this for all current transports.
      
      PCIE needs some extra configuration the op-mode is leaving to configure
      RF kill. Expose this explicitly as a new op_mode_leave trans callback.
      Take the call to stop_device outside iwl_run_mvm_init_ucode, this
      makes more sense and WARN when we want to run the INIT firmware while
      it has run already.
      Signed-off-by: NArik Nemtsov <arik@wizery.com>
      Signed-off-by: NEmmanuel Grumbach <emmanuel.grumbach@intel.com>
      a4082843
  10. 26 11月, 2013 1 次提交
    • L
      cfg80211: move regulatory flags to their own variable · a2f73b6c
      Luis R. Rodriguez 提交于
      We'll expand this later, this will make it easier to
      classify and review what things are related to regulatory
      or not.
      
      Coccinelle only missed 4 hits, which I had to do manually,
      supplying the SmPL in case of merge conflicts.
      
      @@
      struct wiphy *wiphy;
      @@
      -wiphy->flags |= WIPHY_FLAG_CUSTOM_REGULATORY
      +wiphy->regulatory_flags |= REGULATORY_CUSTOM_REG
      @@
      expression e;
      @@
      -e->flags |= WIPHY_FLAG_CUSTOM_REGULATORY
      +e->regulatory_flags |= REGULATORY_CUSTOM_REG
      @@
      struct wiphy *wiphy;
      @@
      -wiphy->flags &= ~WIPHY_FLAG_CUSTOM_REGULATORY
      +wiphy->regulatory_flags &= ~REGULATORY_CUSTOM_REG
      @@
      struct wiphy *wiphy;
      @@
      -wiphy->flags & WIPHY_FLAG_CUSTOM_REGULATORY
      +wiphy->regulatory_flags & REGULATORY_CUSTOM_REG
      
      @@
      struct wiphy *wiphy;
      @@
      -wiphy->flags |= WIPHY_FLAG_STRICT_REGULATORY
      +wiphy->regulatory_flags |= REGULATORY_STRICT_REG
      @@
      expression e;
      @@
      -e->flags |= WIPHY_FLAG_STRICT_REGULATORY
      +e->regulatory_flags |= REGULATORY_STRICT_REG
      @@
      struct wiphy *wiphy;
      @@
      -wiphy->flags &= ~WIPHY_FLAG_STRICT_REGULATORY
      +wiphy->regulatory_flags &= ~REGULATORY_STRICT_REG
      @@
      struct wiphy *wiphy;
      @@
      -wiphy->flags & WIPHY_FLAG_STRICT_REGULATORY
      +wiphy->regulatory_flags & REGULATORY_STRICT_REG
      
      @@
      struct wiphy *wiphy;
      @@
      -wiphy->flags |= WIPHY_FLAG_DISABLE_BEACON_HINTS
      +wiphy->regulatory_flags |= REGULATORY_DISABLE_BEACON_HINTS
      @@
      expression e;
      @@
      -e->flags |= WIPHY_FLAG_DISABLE_BEACON_HINTS
      +e->regulatory_flags |= REGULATORY_DISABLE_BEACON_HINTS
      @@
      struct wiphy *wiphy;
      @@
      -wiphy->flags &= ~WIPHY_FLAG_DISABLE_BEACON_HINTS
      +wiphy->regulatory_flags &= ~REGULATORY_DISABLE_BEACON_HINTS
      @@
      struct wiphy *wiphy;
      @@
      -wiphy->flags & WIPHY_FLAG_DISABLE_BEACON_HINTS
      +wiphy->regulatory_flags & REGULATORY_DISABLE_BEACON_HINTS
      
      Generated-by: Coccinelle SmPL
      Cc: Julia Lawall <julia.lawall@lip6.fr>
      Cc: Peter Senna Tschudin <peter.senna@gmail.com>
      Cc: Mihir Shete <smihir@qti.qualcomm.com>
      Cc: Henri Bahini <hbahini@qca.qualcomm.com>
      Cc: Tushnim Bhattacharyya <tushnimb@qca.qualcomm.com>
      Signed-off-by: NLuis R. Rodriguez <mcgrof@do-not-panic.com>
      [fix up whitespace damage, overly long lines]
      Signed-off-by: NJohannes Berg <johannes.berg@intel.com>
      a2f73b6c
  11. 31 7月, 2013 1 次提交
    • S
      iwlwifi: dvm: fix calling ieee80211_chswitch_done() with NULL · 9186a1fd
      Stanislaw Gruszka 提交于
      If channel switch is pending and we remove interface we can
      crash like showed below due to passing NULL vif to mac80211:
      
      BUG: unable to handle kernel paging request at fffffffffffff8cc
      IP: [<ffffffff8130924d>] strnlen+0xd/0x40
      Call Trace:
       [<ffffffff8130ad2e>] string.isra.3+0x3e/0xd0
       [<ffffffff8130bf99>] vsnprintf+0x219/0x640
       [<ffffffff8130c481>] vscnprintf+0x11/0x30
       [<ffffffff81061585>] vprintk_emit+0x115/0x4f0
       [<ffffffff81657bd5>] printk+0x61/0x63
       [<ffffffffa048987f>] ieee80211_chswitch_done+0xaf/0xd0 [mac80211]
       [<ffffffffa04e7b34>] iwl_chswitch_done+0x34/0x40 [iwldvm]
       [<ffffffffa04f83c3>] iwlagn_commit_rxon+0x2a3/0xdc0 [iwldvm]
       [<ffffffffa04ebc50>] ? iwlagn_set_rxon_chain+0x180/0x2c0 [iwldvm]
       [<ffffffffa04e5e76>] iwl_set_mode+0x36/0x40 [iwldvm]
       [<ffffffffa04e5f0d>] iwlagn_mac_remove_interface+0x8d/0x1b0 [iwldvm]
       [<ffffffffa0459b3d>] ieee80211_do_stop+0x29d/0x7f0 [mac80211]
      
      This is because we nulify ctx->vif in iwlagn_mac_remove_interface()
      before calling some other functions that teardown interface. To fix
      just check ctx->vif on iwl_chswitch_done(). We should not call
      ieee80211_chswitch_done() as channel switch works were already canceled
      by mac80211 in ieee80211_do_stop() -> ieee80211_mgd_stop().
      
      Resolve:
      https://bugzilla.redhat.com/show_bug.cgi?id=979581
      
      Cc: stable@vger.kernel.org
      Reported-by: NLukasz Jagiello <jagiello.lukasz@gmail.com>
      Signed-off-by: NStanislaw Gruszka <sgruszka@redhat.com>
      Reviewed-by: NEmmanuel Grumbach <emmanuel.grumbach@intel.com>
      Signed-off-by: NJohannes Berg <johannes.berg@intel.com>
      9186a1fd
  12. 25 7月, 2013 1 次提交
  13. 18 6月, 2013 1 次提交
  14. 04 6月, 2013 1 次提交
  15. 30 5月, 2013 1 次提交
    • J
      iwlwifi: mvm: implement D3 testing · debff618
      Johannes Berg 提交于
      For testing the D3 (WoWLAN) firmware, it is useful to be able
      to run the firmware with instrumentation while the host isn't
      sleeping and can poke at the firmware debug logging etc.
      
      Implement this by a debugfs file. When the file is opened the
      D3 firmware is loaded and all regular commands are blocked.
      While the file is being read, poll the firmware's PME status
      flag and report EOF once it changes to non-zero. When it is
      closed, do (most of) the resume processing. This lets a user
      just "cat" the file. Pressing Ctrl-C to kill the cat process
      will resume the firwmare as though the platform resumed for
      non-wireless reason and when the firmware wants to wake up
      reading from the file automatically completes.
      
      Unlike in real suspend, only disable interrupts and don't
      reset the TX/RX hardware while in the test mode. This is a
      workaround for some interrupt problems that happen only when
      the PCIe link isn't fully reset (presumably by changing the
      PCI config space registers which the core PCI code does.)
      
      Note that while regular operations are blocked from sending
      commands to the firmware, they could still be made and cause
      strange mac80211 issues. Therefore, while using this testing
      feature you need to be careful to not try to disconnect, roam
      or similar, and will see warnings for such attempts.
      
      Als note that this requires an upcoming firmware change to
      tell the driver the location of the PME status flag in SRAM.
      D3 test will fail if the firmware doesn't report the pointer.
      Reviewed-by: NEmmanuel Grumbach <emmanuel.grumbach@intel.com>
      Signed-off-by: NJohannes Berg <johannes.berg@intel.com>
      debff618
  16. 27 5月, 2013 2 次提交
  17. 16 4月, 2013 1 次提交
    • J
      mac80211: support secondary channel offset in CSA · 85220d71
      Johannes Berg 提交于
      Add support for the secondary channel offset IE in channel
      switch announcements. This is necessary for proper handling
      of CSA on HT access points.
      
      For this to work it is also necessary to convert everything
      here to use chandef structs instead of just channels. The
      driver updates aren't really correct though. In particular,
      the TI wl18xx driver update can't possibly be right since
      it just ignores the new channel width for lack of firmware
      API.
      Signed-off-by: NJohannes Berg <johannes.berg@intel.com>
      85220d71
  18. 08 4月, 2013 1 次提交
    • E
      iwlwifi: dvm: handle FLUSH ampdu actions from mac80211 · 2d055afd
      Emmanuel Grumbach 提交于
      Until now we didn't handle properly the FLUSH ampdu action
      coming from mac80211. This could result in SCD queue leak:
      mac80211 would STOP_FLUSH an AMPDU Tx session and remove
      the station. If we had still packets on the ring, we
      wouldn't deallocate the SCD queue and wait for it to be
      empty.
      The indication of the queue being empty comes from the Tx
      response flow which relies on the tid_data structure. The
      problem is that this structure has been cleared when the
      station has been removed.
      In order to solve this issue, block in the STOP_FLUSH
      ampdu_action until the SCD queue is flushed, and only then,
      let mac80211 move forward to remove the station.
      iwlagn_txfifo_flush had to be enhanced to allow this.
      
      The bug fixed here caused the "txq_id mismatch: 12 0" print.
      Signed-off-by: NEmmanuel Grumbach <emmanuel.grumbach@intel.com>
      Signed-off-by: NJohannes Berg <johannes.berg@intel.com>
      2d055afd
  19. 19 3月, 2013 1 次提交
  20. 06 3月, 2013 1 次提交
  21. 12 2月, 2013 2 次提交
  22. 01 2月, 2013 1 次提交
  23. 31 1月, 2013 1 次提交
    • E
      mac80211: inform the driver about update of dtim_period · c65dd147
      Emmanuel Grumbach 提交于
      Currently, when the driver requires the DTIM period,
      mac80211 will wait to hear a beacon before association.
      This behavior is suboptimal since some drivers may be
      able to deal with knowing the DTIM period after the
      association, if they get it at all.
      
      To address this, notify the drivers with bss_info_changed
      with the new BSS_CHANGED_DTIM_PERIOD flag when the DTIM
      becomes known. This might be when changing to associated,
      or later when the entire association was done with only
      probe response information.
      
      Rename the hardware flag for the current behaviour to
      IEEE80211_HW_NEED_DTIM_BEFORE_ASSOC to more accurately
      reflect its behaviour. IEEE80211_HW_NEED_DTIM_PERIOD is
      no longer accurate as all drivers get the DTIM period
      now, just not before association.
      Signed-off-by: NEmmanuel Grumbach <emmanuel.grumbach@intel.com>
      Signed-off-by: NJohannes Berg <johannes.berg@intel.com>
      c65dd147
  24. 24 1月, 2013 2 次提交
  25. 16 1月, 2013 2 次提交
  26. 03 1月, 2013 4 次提交
  27. 07 12月, 2012 1 次提交
  28. 26 11月, 2012 1 次提交
    • J
      cfg80211: remove remain-on-channel channel type · 42d97a59
      Johannes Berg 提交于
      As mwifiex (and mac80211 in the software case) are the
      only drivers actually implementing remain-on-channel
      with channel type, userspace can't be relying on it.
      This is the case, as it's used only for P2P operations
      right now.
      
      Rather than adding a flag to tell userspace whether or
      not it can actually rely on it, simplify all the code
      by removing the ability to use different channel types.
      Leave only the validation of the attribute, so that if
      we extend it again later (with the needed capability
      flag), it can't break userspace sending invalid data.
      Signed-off-by: NJohannes Berg <johannes.berg@intel.com>
      42d97a59
  29. 19 11月, 2012 2 次提交
  30. 14 11月, 2012 1 次提交
  31. 07 11月, 2012 1 次提交