|
@@ -279,6 +279,8 @@ ieee80211_add_rx_radiotap_header(struct ieee80211_local *local,
|
|
|
*pos |= IEEE80211_RADIOTAP_MCS_BW_40;
|
|
|
if (status->flag & RX_FLAG_HT_GF)
|
|
|
*pos |= IEEE80211_RADIOTAP_MCS_FMT_GF;
|
|
|
+ if (status->flag & RX_FLAG_LDPC)
|
|
|
+ *pos |= IEEE80211_RADIOTAP_MCS_FEC_LDPC;
|
|
|
stbc = (status->flag & RX_FLAG_STBC_MASK) >> RX_FLAG_STBC_SHIFT;
|
|
|
*pos |= stbc << IEEE80211_RADIOTAP_MCS_STBC_SHIFT;
|
|
|
pos++;
|
|
@@ -328,6 +330,9 @@ ieee80211_add_rx_radiotap_header(struct ieee80211_local *local,
|
|
|
/* flags */
|
|
|
if (status->flag & RX_FLAG_SHORT_GI)
|
|
|
*pos |= IEEE80211_RADIOTAP_VHT_FLAG_SGI;
|
|
|
+ /* in VHT, STBC is binary */
|
|
|
+ if (status->flag & RX_FLAG_STBC_MASK)
|
|
|
+ *pos |= IEEE80211_RADIOTAP_VHT_FLAG_STBC;
|
|
|
pos++;
|
|
|
/* bandwidth */
|
|
|
if (status->vht_flag & RX_VHT_FLAG_80MHZ)
|
|
@@ -344,6 +349,8 @@ ieee80211_add_rx_radiotap_header(struct ieee80211_local *local,
|
|
|
*pos = (status->rate_idx << 4) | status->vht_nss;
|
|
|
pos += 4;
|
|
|
/* coding field */
|
|
|
+ if (status->flag & RX_FLAG_LDPC)
|
|
|
+ *pos |= IEEE80211_RADIOTAP_CODING_LDPC_USER0;
|
|
|
pos++;
|
|
|
/* group ID */
|
|
|
pos++;
|