Lines Matching refs:txdesc

178 						 struct txentry_desc *txdesc)
188 __set_bit(ENTRY_TXD_GENERATE_SEQ, &txdesc->flags);
199 __set_bit(ENTRY_TXD_GENERATE_SEQ, &txdesc->flags);
204 __clear_bit(ENTRY_TXD_GENERATE_SEQ, &txdesc->flags);
218 if (test_bit(ENTRY_TXD_FIRST_FRAGMENT, &txdesc->flags))
229 struct txentry_desc *txdesc,
243 if (test_bit(ENTRY_TXD_FIRST_FRAGMENT, &txdesc->flags))
244 txdesc->u.plcp.ifs = IFS_BACKOFF;
246 txdesc->u.plcp.ifs = IFS_SIFS;
256 txdesc->u.plcp.signal = hwrate->plcp;
257 txdesc->u.plcp.service = 0x04;
260 txdesc->u.plcp.length_high = (data_length >> 6) & 0x3f;
261 txdesc->u.plcp.length_low = data_length & 0x3f;
276 txdesc->u.plcp.service |= 0x80;
279 txdesc->u.plcp.length_high = (duration >> 8) & 0xff;
280 txdesc->u.plcp.length_low = duration & 0xff;
287 txdesc->u.plcp.signal |= 0x08;
293 struct txentry_desc *txdesc,
305 txdesc->u.ht.wcid = sta_priv->wcid;
314 txdesc->u.ht.mcs = txrate->idx;
320 if (sta && txdesc->u.ht.mcs > 7 &&
322 __set_bit(ENTRY_TXD_HT_MIMO_PS, &txdesc->flags);
324 txdesc->u.ht.mcs = rt2x00_get_rate_mcs(hwrate->mcs);
326 txdesc->u.ht.mcs |= 0x08;
331 txdesc->u.ht.txop = TXOP_SIFS;
333 txdesc->u.ht.txop = TXOP_BACKOFF;
343 txdesc->u.ht.stbc = 1;
351 __set_bit(ENTRY_TXD_HT_AMPDU, &txdesc->flags);
352 txdesc->u.ht.mpdu_density = density;
353 txdesc->u.ht.ba_size = 7; /* FIXME: What value is needed? */
362 __set_bit(ENTRY_TXD_HT_BW_40, &txdesc->flags);
364 __set_bit(ENTRY_TXD_HT_SHORT_GI, &txdesc->flags);
377 txdesc->u.ht.txop = TXOP_BACKOFF;
379 txdesc->u.ht.txop = TXOP_SIFS;
381 txdesc->u.ht.txop = TXOP_HTTXOP;
386 struct txentry_desc *txdesc,
395 memset(txdesc, 0, sizeof(*txdesc));
400 txdesc->length = skb->len;
401 txdesc->header_length = ieee80211_get_hdrlen_from_skb(skb);
407 __set_bit(ENTRY_TXD_ACK, &txdesc->flags);
414 __set_bit(ENTRY_TXD_BURST, &txdesc->flags);
416 __set_bit(ENTRY_TXD_RTS_FRAME, &txdesc->flags);
418 __set_bit(ENTRY_TXD_CTS_FRAME, &txdesc->flags);
427 txdesc->retry_limit = tx_info->control.rates[0].count - 1;
428 if (txdesc->retry_limit >= rt2x00dev->long_retry)
429 __set_bit(ENTRY_TXD_RETRY_MODE, &txdesc->flags);
435 __set_bit(ENTRY_TXD_BURST, &txdesc->flags);
436 __set_bit(ENTRY_TXD_MORE_FRAG, &txdesc->flags);
443 __set_bit(ENTRY_TXD_BURST, &txdesc->flags);
452 __set_bit(ENTRY_TXD_REQ_TIMESTAMP, &txdesc->flags);
455 !test_bit(ENTRY_TXD_RTS_FRAME, &txdesc->flags))
456 __set_bit(ENTRY_TXD_FIRST_FRAGMENT, &txdesc->flags);
462 txdesc->rate_mode = RATE_MODE_HT_GREENFIELD;
464 txdesc->rate_mode = RATE_MODE_HT_MIX;
469 txdesc->rate_mode = RATE_MODE_OFDM;
471 txdesc->rate_mode = RATE_MODE_CCK;
477 rt2x00crypto_create_tx_descriptor(rt2x00dev, skb, txdesc);
478 rt2x00queue_create_tx_descriptor_seq(rt2x00dev, skb, txdesc);
481 rt2x00queue_create_tx_descriptor_ht(rt2x00dev, skb, txdesc,
484 rt2x00queue_create_tx_descriptor_plcp(rt2x00dev, skb, txdesc,
489 struct txentry_desc *txdesc)
517 rt2x00dev->ops->lib->write_tx_data(entry, txdesc);
530 struct txentry_desc *txdesc)
534 queue->rt2x00dev->ops->lib->write_tx_desc(entry, txdesc);
544 struct txentry_desc *txdesc)
556 !test_bit(ENTRY_TXD_BURST, &txdesc->flags))
607 struct txentry_desc txdesc;
613 * Copy all TX descriptor information into txdesc,
617 rt2x00queue_create_tx_descriptor(queue->rt2x00dev, skb, &txdesc, sta);
640 if (test_bit(ENTRY_TXD_ENCRYPT, &txdesc.flags) &&
641 !test_bit(ENTRY_TXD_ENCRYPT_IV, &txdesc.flags)) {
643 rt2x00crypto_tx_copy_iv(skb, &txdesc);
645 rt2x00crypto_tx_remove_iv(skb, &txdesc);
657 rt2x00queue_insert_l2pad(skb, txdesc.header_length);
692 if (unlikely(rt2x00queue_write_tx_data(entry, &txdesc))) {
707 rt2x00queue_write_tx_descriptor(entry, &txdesc);
708 rt2x00queue_kick_tx_queue(queue, &txdesc);
751 struct txentry_desc txdesc;
766 * Copy all TX descriptor information into txdesc,
770 rt2x00queue_create_tx_descriptor(rt2x00dev, intf->beacon->skb, &txdesc, NULL);
781 rt2x00dev->ops->lib->write_beacon(intf->beacon, &txdesc);