0x02, 0x23, 0x23, 0xab, 0x63, 0x89, 0x51, 0xb3,
                               0xe7, 0x8b, 0x72, 0x90, 0x4c, 0xe8, 0xfb, 0xc0};
        u32 len = 1200;
+       struct ieee80211_tx_rate *rate;
        struct ieee80211_hw *hw = sc->hw;
+       struct ath_hw *ah = sc->sc_ah;
        struct ieee80211_hdr *hdr;
        struct ieee80211_tx_info *tx_info;
        struct sk_buff *skb;
 
        tx_info = IEEE80211_SKB_CB(skb);
        memset(tx_info, 0, sizeof(*tx_info));
+       rate = &tx_info->control.rates[0];
        tx_info->band = hw->conf.chandef.chan->band;
        tx_info->flags = IEEE80211_TX_CTL_NO_ACK;
        tx_info->control.vif = sc->tx99_vif;
-       tx_info->control.rates[0].count = 1;
+       rate->count = 1;
+       if (ah->curchan && IS_CHAN_HT(ah->curchan)) {
+               rate->flags |= IEEE80211_TX_RC_MCS;
+               if (IS_CHAN_HT40(ah->curchan))
+                       rate->flags |= IEEE80211_TX_RC_40_MHZ_WIDTH;
+       }
 
        memcpy(skb->data + sizeof(*hdr), PN9Data, sizeof(PN9Data));