nl80211: add support for setting fixed HE rate/gi/ltf
This patch adds the nl80211 structs, definitions, policies and parsing code required to pass fixed HE rate, GI and LTF settings. Signed-off-by: Miles Hu <milehu@codeaurora.org> Signed-off-by: John Crispin <john@phrozen.org> Link: https://lore.kernel.org/r/20200804081630.2013619-1-john@phrozen.org [fix comment] Signed-off-by: Johannes Berg <johannes.berg@intel.com>
This commit is contained in:
@@ -3180,6 +3180,18 @@ enum nl80211_he_gi {
|
||||
NL80211_RATE_INFO_HE_GI_3_2,
|
||||
};
|
||||
|
||||
/**
|
||||
* enum nl80211_he_ltf - HE long training field
|
||||
* @NL80211_RATE_INFO_HE_1xLTF: 3.2 usec
|
||||
* @NL80211_RATE_INFO_HE_2xLTF: 6.4 usec
|
||||
* @NL80211_RATE_INFO_HE_4xLTF: 12.8 usec
|
||||
*/
|
||||
enum nl80211_he_ltf {
|
||||
NL80211_RATE_INFO_HE_1XLTF,
|
||||
NL80211_RATE_INFO_HE_2XLTF,
|
||||
NL80211_RATE_INFO_HE_4XLTF,
|
||||
};
|
||||
|
||||
/**
|
||||
* enum nl80211_he_ru_alloc - HE RU allocation values
|
||||
* @NL80211_RATE_INFO_HE_RU_ALLOC_26: 26-tone RU allocation
|
||||
@@ -4735,6 +4747,10 @@ enum nl80211_key_attributes {
|
||||
* @NL80211_TXRATE_VHT: VHT rates allowed for TX rate selection,
|
||||
* see &struct nl80211_txrate_vht
|
||||
* @NL80211_TXRATE_GI: configure GI, see &enum nl80211_txrate_gi
|
||||
* @NL80211_TXRATE_HE: HE rates allowed for TX rate selection,
|
||||
* see &struct nl80211_txrate_he
|
||||
* @NL80211_TXRATE_HE_GI: configure HE GI, 0.8us, 1.6us and 3.2us.
|
||||
* @NL80211_TXRATE_HE_LTF: configure HE LTF, 1XLTF, 2XLTF and 4XLTF.
|
||||
* @__NL80211_TXRATE_AFTER_LAST: internal
|
||||
* @NL80211_TXRATE_MAX: highest TX rate attribute
|
||||
*/
|
||||
@@ -4744,6 +4760,9 @@ enum nl80211_tx_rate_attributes {
|
||||
NL80211_TXRATE_HT,
|
||||
NL80211_TXRATE_VHT,
|
||||
NL80211_TXRATE_GI,
|
||||
NL80211_TXRATE_HE,
|
||||
NL80211_TXRATE_HE_GI,
|
||||
NL80211_TXRATE_HE_LTF,
|
||||
|
||||
/* keep last */
|
||||
__NL80211_TXRATE_AFTER_LAST,
|
||||
@@ -4761,6 +4780,15 @@ struct nl80211_txrate_vht {
|
||||
__u16 mcs[NL80211_VHT_NSS_MAX];
|
||||
};
|
||||
|
||||
#define NL80211_HE_NSS_MAX 8
|
||||
/**
|
||||
* struct nl80211_txrate_he - HE MCS/NSS txrate bitmap
|
||||
* @mcs: MCS bitmap table for each NSS (array index 0 for 1 stream, etc.)
|
||||
*/
|
||||
struct nl80211_txrate_he {
|
||||
__u16 mcs[NL80211_HE_NSS_MAX];
|
||||
};
|
||||
|
||||
enum nl80211_txrate_gi {
|
||||
NL80211_TXRATE_DEFAULT_GI,
|
||||
NL80211_TXRATE_FORCE_SGI,
|
||||
|
Reference in New Issue
Block a user