On Wed, 2010-11-24 at 18:33 +0200, ext Shahar Levi wrote: > > +int wl1271_op_ampdu_action(struct ieee80211_hw *hw, struct ieee80211_vif *vif, > + enum ieee80211_ampdu_mlme_action action, > + struct ieee80211_sta *sta, u16 tid, u16 *ssn) > +{ > + struct wl1271 *wl = hw->priv; > + int ret; > + > + ret = wl1271_ps_elp_wakeup(wl, false); > + if (ret < 0) > + goto out; > + > + switch (action) { > + case IEEE80211_AMPDU_RX_START: > + if (wl->ba_allowed) { > + ret = wl1271_acx_set_ba_receiver_session(wl, tid, ssn, > + true); > + if (!ret) > + wl->ba_rx_bitmap |= (u8)(BIT(0) << tid); > + } else > + ret = -EPERM; > + break; > + > + case IEEE80211_AMPDU_RX_STOP: > + ret = wl1271_acx_set_ba_receiver_session(wl, tid, ssn, false); > + if (!ret) > + wl->ba_rx_bitmap &= ~(u8)(BIT(0) << tid); > + break; > + > + /* These "BIT(0) << tid" thingies look weird. Why not BIT(tid) ? -Juuso -- To unsubscribe from this list: send the line "unsubscribe linux-wireless" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html