Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

nl80211: Add LC placeholder band definition to nl80211_band

Define LC band which is a draft under IEEE 802.11bb.
Current NL80211_BAND_LC is a placeholder band and
will be more defined IEEE 802.11bb progresses.

Signed-off-by: Srinivasan Raju <srini.raju@purelifi.com>
Link: https://lore.kernel.org/r/20211018100143.7565-2-srini.raju@purelifi.com
Signed-off-by: Johannes Berg <johannes.berg@intel.com>

authored by

Srinivasan Raju and committed by
Johannes Berg
63fa0426 1add667d

+9 -1
+2
include/uapi/linux/nl80211.h
··· 4978 4978 * @NL80211_BAND_60GHZ: around 60 GHz band (58.32 - 69.12 GHz) 4979 4979 * @NL80211_BAND_6GHZ: around 6 GHz band (5.9 - 7.2 GHz) 4980 4980 * @NL80211_BAND_S1GHZ: around 900MHz, supported by S1G PHYs 4981 + * @NL80211_BAND_LC: light communication band (placeholder) 4981 4982 * @NUM_NL80211_BANDS: number of bands, avoid using this in userspace 4982 4983 * since newer kernel versions may support more bands 4983 4984 */ ··· 4988 4987 NL80211_BAND_60GHZ, 4989 4988 NL80211_BAND_6GHZ, 4990 4989 NL80211_BAND_S1GHZ, 4990 + NL80211_BAND_LC, 4991 4991 4992 4992 NUM_NL80211_BANDS, 4993 4993 };
+1
net/mac80211/mlme.c
··· 1490 1490 fallthrough; 1491 1491 case NL80211_BAND_2GHZ: 1492 1492 case NL80211_BAND_60GHZ: 1493 + case NL80211_BAND_LC: 1493 1494 chan_increment = 1; 1494 1495 break; 1495 1496 case NL80211_BAND_5GHZ:
+1
net/mac80211/sta_info.c
··· 444 444 445 445 switch (i) { 446 446 case NL80211_BAND_2GHZ: 447 + case NL80211_BAND_LC: 447 448 /* 448 449 * We use both here, even if we cannot really know for 449 450 * sure the station will support both, but the only use
+2 -1
net/mac80211/tx.c
··· 146 146 rate = DIV_ROUND_UP(r->bitrate, 1 << shift); 147 147 148 148 switch (sband->band) { 149 - case NL80211_BAND_2GHZ: { 149 + case NL80211_BAND_2GHZ: 150 + case NL80211_BAND_LC: { 150 151 u32 flag; 151 152 if (tx->sdata->flags & IEEE80211_SDATA_OPERATING_GMODE) 152 153 flag = IEEE80211_RATE_MANDATORY_G;
+1
net/wireless/nl80211.c
··· 866 866 [NL80211_BAND_5GHZ] = { .type = NLA_S32 }, 867 867 [NL80211_BAND_6GHZ] = { .type = NLA_S32 }, 868 868 [NL80211_BAND_60GHZ] = { .type = NLA_S32 }, 869 + [NL80211_BAND_LC] = { .type = NLA_S32 }, 869 870 }; 870 871 871 872 static const struct nla_policy
+2
net/wireless/util.c
··· 80 80 return 0; /* not supported */ 81 81 switch (band) { 82 82 case NL80211_BAND_2GHZ: 83 + case NL80211_BAND_LC: 83 84 if (chan == 14) 84 85 return MHZ_TO_KHZ(2484); 85 86 else if (chan < 14) ··· 210 209 WARN_ON(want); 211 210 break; 212 211 case NL80211_BAND_2GHZ: 212 + case NL80211_BAND_LC: 213 213 want = 7; 214 214 for (i = 0; i < sband->n_bitrates; i++) { 215 215 switch (sband->bitrates[i].bitrate) {