1. 28 Feb, 2012 3 commits
    • Arik Nemtsov's avatar
      wl12xx: reset link Tx queues when freeing it · 6246ca00
      Arik Nemtsov authored
      Before, the link was first freed (invalidating it in the map), and later
      on vif removal, all valid wlvif-related links were reset. Since these
      links were already invalid, we failed to reset them.
      The bug was made worse by op_stop, which set the tx_queue_count to 0
      arbitrarily. This resulted in a negative tx_queue_count in some scenarios.
      
      Fix this by resetting the Tx-queues of a link when freeing it. Add a
      WARN_ON and reset all link Tx-queues in op_stop, to avoid a negative
      tx_queue_count.
      
      [changed WARN_ON to WARN_ON_ONCE -- Luca]
      Signed-off-by: default avatarArik Nemtsov <arik@wizery.com>
      Signed-off-by: default avatarLuciano Coelho <coelho@ti.com>
      6246ca00
    • Arik Nemtsov's avatar
      wl12xx: change bits in the link_map under spin lock · 0b0e32b7
      Arik Nemtsov authored
      These bits are used in op_tx to determine if a packet should be dropped.
      As such we should use the spin lock to sync the state.
      Signed-off-by: default avatarArik Nemtsov <arik@wizery.com>
      Signed-off-by: default avatarLuciano Coelho <coelho@ti.com>
      0b0e32b7
    • Arik Nemtsov's avatar
      wl12xx: set the ELP entry delay to the FW dyn-ps timeout · 5af70c86
      Arik Nemtsov authored
      With PSM handled in FW, the checks in wl1271_elp_work() are always true.
      Thus during active traffic we constantly enter and exit ELP (many times
      per second). As each ELP exit takes ~10ms, this can have an adverse
      effect on throughput and interactivity.
      Set the ELP timeout to the dyn-ps timeout. This period is longer and
      avoids the above problem. It also makes sense to stay out of ELP while
      we are awake on the network, to minimize delays in Tx/Rx. The same thing
      was done by the mac80211 dynamic-ps mechanism before the FW DPS changes.
      Signed-off-by: default avatarArik Nemtsov <arik@wizery.com>
      Signed-off-by: default avatarLuciano Coelho <coelho@ti.com>
      5af70c86
  2. 27 Feb, 2012 37 commits