Lines Matching defs: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);
451 __set_bit(ENTRY_TXD_REQ_TIMESTAMP, &txdesc->flags);
454 !test_bit(ENTRY_TXD_RTS_FRAME, &txdesc->flags))
455 __set_bit(ENTRY_TXD_FIRST_FRAGMENT, &txdesc->flags);
461 txdesc->rate_mode = RATE_MODE_HT_GREENFIELD;
463 txdesc->rate_mode = RATE_MODE_HT_MIX;
468 txdesc->rate_mode = RATE_MODE_OFDM;
470 txdesc->rate_mode = RATE_MODE_CCK;
476 rt2x00crypto_create_tx_descriptor(rt2x00dev, skb, txdesc);
477 rt2x00queue_create_tx_descriptor_seq(rt2x00dev, skb, txdesc);
480 rt2x00queue_create_tx_descriptor_ht(rt2x00dev, skb, txdesc,
483 rt2x00queue_create_tx_descriptor_plcp(rt2x00dev, skb, txdesc,
488 struct txentry_desc *txdesc)
516 rt2x00dev->ops->lib->write_tx_data(entry, txdesc);
529 struct txentry_desc *txdesc)
533 queue->rt2x00dev->ops->lib->write_tx_desc(entry, txdesc);
543 struct txentry_desc *txdesc)
555 !test_bit(ENTRY_TXD_BURST, &txdesc->flags))
606 struct txentry_desc txdesc;
612 * Copy all TX descriptor information into txdesc,
616 rt2x00queue_create_tx_descriptor(queue->rt2x00dev, skb, &txdesc, sta);
639 if (test_bit(ENTRY_TXD_ENCRYPT, &txdesc.flags) &&
640 !test_bit(ENTRY_TXD_ENCRYPT_IV, &txdesc.flags)) {
642 rt2x00crypto_tx_copy_iv(skb, &txdesc);
644 rt2x00crypto_tx_remove_iv(skb, &txdesc);
656 rt2x00queue_insert_l2pad(skb, txdesc.header_length);
691 if (unlikely(rt2x00queue_write_tx_data(entry, &txdesc))) {
706 rt2x00queue_write_tx_descriptor(entry, &txdesc);
707 rt2x00queue_kick_tx_queue(queue, &txdesc);
750 struct txentry_desc txdesc;
765 * Copy all TX descriptor information into txdesc,
769 rt2x00queue_create_tx_descriptor(rt2x00dev, intf->beacon->skb, &txdesc, NULL);
780 rt2x00dev->ops->lib->write_beacon(intf->beacon, &txdesc);