Correct net80211 channel flag.

Adrian Chadd adrian at freebsd.org
Fri Apr 2 04:56:20 UTC 2021


Hi!

Oh, so from what I recall, implementations got it wrong in the early
draft days with their interop so the flag values changed.


-adrian

On Thu, 1 Apr 2021 at 20:45, qcwap <1051244836 at qq.com> wrote:
>
> Well, I see.
>
> I am newly to freebsd, thanks for your answering.
> I had tried using this section of code and found these flags are not satisfied, after changing them, I can negotiate VHT80, VHT160 fine with iwm, so I pointed out this problem. I am also wondering what's the badly wrong of you said in draft VHT implementation?
>
> thanks
> zxystd
>
> > 2021年3月30日 上午1:26,Adrian Chadd <adrian at freebsd.org> 写道:
> >
> > hm!
> >
> > On Mon, 29 Mar 2021 at 08:02, qcwap <1051244836 at qq.com> wrote:
> >>
> >> This patch corrects ieee80211_vht_get_vhtcap_ie for 160/80P80 channel width recognition.
> >>
> >> diff --git a/sys/net80211/ieee80211.h b/sys/net80211/ieee80211.h
> >> index 86ab1459cca..76c43629b33 100644
> >> --- a/sys/net80211/ieee80211.h
> >> +++ b/sys/net80211/ieee80211.h
> >> @@ -811,9 +811,9 @@ struct ieee80211_ie_vht_operation {
> >> #define        IEEE80211_VHTCAP_SUPP_CHAN_WIDTH_MASK   0x0000000C
> >> #define        IEEE80211_VHTCAP_SUPP_CHAN_WIDTH_MASK_S 2
> >> #define        IEEE80211_VHTCAP_SUPP_CHAN_WIDTH_NONE           0
> >> -#define        IEEE80211_VHTCAP_SUPP_CHAN_WIDTH_160MHZ         1
> >> -#define        IEEE80211_VHTCAP_SUPP_CHAN_WIDTH_160_80P80MHZ   2
> >> -#define        IEEE80211_VHTCAP_SUPP_CHAN_WIDTH_RESERVED       3
> >> +#define        IEEE80211_VHTCAP_SUPP_CHAN_WIDTH_160MHZ         4
> >> +#define        IEEE80211_VHTCAP_SUPP_CHAN_WIDTH_160_80P80MHZ   8
> >> +#define        IEEE80211_VHTCAP_SUPP_CHAN_WIDTH_RESERVED       16
> >>
> >> #define        IEEE80211_VHTCAP_SUPP_CHAN_WIDTH_IS_160MHZ(_vhtcaps)            \
> >>     (_IEEE80211_MASKSHIFT(_vhtcaps, IEEE80211_VHTCAP_SUPP_CHAN_WIDTH_MASK) >= \
> >
> >
> > This is the flag change from the draft 11ac spec to the released 11ac
> > spec, right?
> >
> > I remember they needed to change the flags because existing draft
> > implementations got the 80+80/160MHz negotiation really badly wrong in
> > some interop places...
> >
> >
> > -adrian
> >
> >>
> >> _______________________________________________
> >> freebsd-current at freebsd.org mailing list
> >> https://lists.freebsd.org/mailman/listinfo/freebsd-current
> >> To unsubscribe, send any mail to "freebsd-current-unsubscribe at freebsd.org"
> >
>


More information about the freebsd-current mailing list