Lines Matching refs:tid_info
186 struct carl9170_sta_tid *tid_info; in carl9170_ampdu_gc() local
190 list_for_each_entry_rcu(tid_info, &ar->tx_ampdu_list, list) { in carl9170_ampdu_gc()
192 if (tid_info->state == CARL9170_TID_STATE_SHUTDOWN) { in carl9170_ampdu_gc()
193 tid_info->state = CARL9170_TID_STATE_KILLED; in carl9170_ampdu_gc()
194 list_del_rcu(&tid_info->list); in carl9170_ampdu_gc()
196 list_add_tail(&tid_info->tmp_list, &tid_gc); in carl9170_ampdu_gc()
201 rcu_assign_pointer(ar->tx_ampdu_iter, tid_info); in carl9170_ampdu_gc()
208 tid_info = list_first_entry(&tid_gc, struct carl9170_sta_tid, in carl9170_ampdu_gc()
211 while ((skb = __skb_dequeue(&tid_info->queue))) in carl9170_ampdu_gc()
214 list_del_init(&tid_info->tmp_list); in carl9170_ampdu_gc()
215 kfree(tid_info); in carl9170_ampdu_gc()
252 struct carl9170_sta_tid *tid_info; in carl9170_flush_ba() local
259 list_for_each_entry_rcu(tid_info, &ar->tx_ampdu_list, list) { in carl9170_flush_ba()
260 if (tid_info->state > CARL9170_TID_STATE_SUSPEND) { in carl9170_flush_ba()
261 tid_info->state = CARL9170_TID_STATE_SUSPEND; in carl9170_flush_ba()
263 spin_lock(&tid_info->lock); in carl9170_flush_ba()
264 while ((skb = __skb_dequeue(&tid_info->queue))) in carl9170_flush_ba()
266 spin_unlock(&tid_info->lock); in carl9170_flush_ba()
1359 struct carl9170_sta_tid *tid_info; in carl9170_op_sta_remove() local
1361 tid_info = rcu_dereference(sta_info->agg[i]); in carl9170_op_sta_remove()
1364 if (!tid_info) in carl9170_op_sta_remove()
1368 if (tid_info->state > CARL9170_TID_STATE_SHUTDOWN) in carl9170_op_sta_remove()
1369 tid_info->state = CARL9170_TID_STATE_SHUTDOWN; in carl9170_op_sta_remove()
1424 struct carl9170_sta_tid *tid_info; in carl9170_op_ampdu_action() local
1434 tid_info = kzalloc(sizeof(struct carl9170_sta_tid), in carl9170_op_ampdu_action()
1436 if (!tid_info) in carl9170_op_ampdu_action()
1439 tid_info->hsn = tid_info->bsn = tid_info->snx = (*ssn); in carl9170_op_ampdu_action()
1440 tid_info->state = CARL9170_TID_STATE_PROGRESS; in carl9170_op_ampdu_action()
1441 tid_info->tid = tid; in carl9170_op_ampdu_action()
1442 tid_info->max = sta_info->ampdu_max_len; in carl9170_op_ampdu_action()
1443 tid_info->sta = sta; in carl9170_op_ampdu_action()
1444 tid_info->vif = vif; in carl9170_op_ampdu_action()
1446 INIT_LIST_HEAD(&tid_info->list); in carl9170_op_ampdu_action()
1447 INIT_LIST_HEAD(&tid_info->tmp_list); in carl9170_op_ampdu_action()
1448 skb_queue_head_init(&tid_info->queue); in carl9170_op_ampdu_action()
1449 spin_lock_init(&tid_info->lock); in carl9170_op_ampdu_action()
1453 list_add_tail_rcu(&tid_info->list, &ar->tx_ampdu_list); in carl9170_op_ampdu_action()
1454 rcu_assign_pointer(sta_info->agg[tid], tid_info); in carl9170_op_ampdu_action()
1464 tid_info = rcu_dereference(sta_info->agg[tid]); in carl9170_op_ampdu_action()
1465 if (tid_info) { in carl9170_op_ampdu_action()
1467 if (tid_info->state > CARL9170_TID_STATE_SHUTDOWN) in carl9170_op_ampdu_action()
1468 tid_info->state = CARL9170_TID_STATE_SHUTDOWN; in carl9170_op_ampdu_action()
1481 tid_info = rcu_dereference(sta_info->agg[tid]); in carl9170_op_ampdu_action()
1486 if (tid_info) { in carl9170_op_ampdu_action()
1487 bitmap_zero(tid_info->bitmap, CARL9170_BAW_SIZE); in carl9170_op_ampdu_action()
1488 tid_info->state = CARL9170_TID_STATE_IDLE; in carl9170_op_ampdu_action()
1492 if (WARN_ON_ONCE(!tid_info)) in carl9170_op_ampdu_action()