mbox series

[V3,0/8] nl80211: add 6GHz band support

Message ID 1564745465-21234-1-git-send-email-arend.vanspriel@broadcom.com (mailing list archive)
Headers show
Series nl80211: add 6GHz band support | expand

Message

Arend van Spriel Aug. 2, 2019, 11:30 a.m. UTC
Changing to formal patch series instead of RFC.

In 802.11ax D4.0 a new band has been proposed. This series contains
changes to cfg80211 for supporting this band. With 2GHz and 5GHz there
was no overlap in channel number. However, this new band has channel
numbers with a range from 1 up to 253. The only place I could find an
issue with this is in cfg80211_wext_freq(). Not sure how to deal with
that so it is not part of this series.

The series applies to the master branch of the mac80211-next repository.

Arend van Spriel (8):
  nl80211: add 6GHz band definition to enum nl80211_band
  cfg80211: add 6GHz UNII band definitions
  cfg80211: util: add 6GHz channel to freq conversion and vice versa
  cfg80211: extend ieee80211_operating_class_to_band() for 6GHz
  cfg80211: add 6GHz in code handling array with NUM_NL80211_BANDS
    entries
  cfg80211: use same IR permissive rules for 6GHz band
  cfg80211: ibss: use 11a mandatory rates for 6GHz band operation
  cfg80211: apply same mandatory rate flags for 5GHz and 6GHz

 include/uapi/linux/nl80211.h |  2 ++
 net/mac80211/tx.c            |  1 +
 net/wireless/chan.c          |  3 ++-
 net/wireless/ibss.c          | 16 +++++++++++-----
 net/wireless/nl80211.c       |  1 +
 net/wireless/reg.c           | 21 +++++++++++++++++++--
 net/wireless/trace.h         |  3 ++-
 net/wireless/util.c          | 14 +++++++++++++-
 8 files changed, 51 insertions(+), 10 deletions(-)

Comments

Arend van Spriel Sept. 21, 2019, 6:49 p.m. UTC | #1
+ linux-wireless

On September 19, 2019 8:25:57 PM Jeff Johnson <jjohnson@codeaurora.org> 
wrote:

> On 2019-08-02 04:30, Arend van Spriel wrote:
>> Changing to formal patch series instead of RFC.
>>
>>
>> In 802.11ax D4.0 a new band has been proposed. This series contains
>> changes to cfg80211 for supporting this band. With 2GHz and 5GHz there
>> was no overlap in channel number. However, this new band has channel
>> numbers with a range from 1 up to 253. The only place I could find an
>> issue with this is in cfg80211_wext_freq(). Not sure how to deal with
>> that so it is not part of this series.
>>
>>
>> The series applies to the master branch of the mac80211-next
>> repository.
>>
>>
>> Arend van Spriel (8):
>> nl80211: add 6GHz band definition to enum nl80211_band
>> cfg80211: add 6GHz UNII band definitions
>> cfg80211: util: add 6GHz channel to freq conversion and vice versa
>> cfg80211: extend ieee80211_operating_class_to_band() for 6GHz
>> cfg80211: add 6GHz in code handling array with NUM_NL80211_BANDS
>> entries
>> cfg80211: use same IR permissive rules for 6GHz band
>> cfg80211: ibss: use 11a mandatory rates for 6GHz band operation
>> cfg80211: apply same mandatory rate flags for 5GHz and 6GHz
>>
>>
>> include/uapi/linux/nl80211.h |  2 ++
>> net/mac80211/tx.c            |  1 +
>> net/wireless/chan.c          |  3 ++-
>> net/wireless/ibss.c          | 16 +++++++++++-----
>> net/wireless/nl80211.c       |  1 +
>> net/wireless/reg.c           | 21 +++++++++++++++++++--
>> net/wireless/trace.h         |  3 ++-
>> net/wireless/util.c          | 14 +++++++++++++-
>> 8 files changed, 51 insertions(+), 10 deletions(-)
>
> Curious how you are populating the wiphy->bands[6 GHz].
> If we don't set ht_cap.ht_supported and/or vht_cap.vht_supported then
> cfg80211_chandef_usable() fails, but setting those flags on 6 GHz seems
> broken.

Hi Jeff,

Good point. Actually, for 6GHz a couple of (v)ht capabilities are still 
applicable and exchanged using HE extended capabilities element. My idea 
was that these (v)ht capabilities would be reported to user-space same 
as for the other bands so that would imply those flags are also set for 
6GHz. This may look odd as the statement "6G is HE only" applies, but 
still some (v)ht functionality is used in HE. Despite this it may be 
good to extend the cfg80211_chandef_usable() for HE in general and cover 
the 6G case as well. The intended driver implementation in brcmfmac is 
still being worked on so issues might arise.

Regards,
Arend