OK

On 2022/03/19 20:37, Stefan Sperling wrote:
> Both iwm and iwx are currently writing VHT capabilities into
> the "common" secion of the firmware's probe request frame template.
> This "common" section is used on both 2GHz and 5GHz bands.
> 
> Announcing VHT capabilities on 2GHz makes no sense.
> Move them into the 5GHz-only section.
> 
> ok?
> 
> diff f6c92c11f983c9e9dd370657ab43ccf9feb56be5 /usr/src
> blob - e82db1f229ad0141f2bedfe4fa81cb46267f2588
> file + sys/dev/pci/if_iwm.c
> --- sys/dev/pci/if_iwm.c
> +++ sys/dev/pci/if_iwm.c
> @@ -7661,6 +7661,12 @@ iwm_fill_probe_req(struct iwm_softc *sc, struct iwm_sc
>                       frm = ieee80211_add_xrates(frm, rs);
>               preq->band_data[1].len = htole16(frm - pos);
>               remain -= frm - pos;
> +             if (ic->ic_flags & IEEE80211_F_VHTON) {
> +                     if (remain < 14)
> +                             return ENOBUFS;
> +                     frm = ieee80211_add_vhtcaps(frm, ic);
> +                     remain -= frm - pos;
> +             }
>       }
>  
>       /* Send 11n IEs on both 2GHz and 5GHz bands. */
> @@ -7674,12 +7680,6 @@ iwm_fill_probe_req(struct iwm_softc *sc, struct iwm_sc
>               remain -= frm - pos;
>       }
>  
> -     if (ic->ic_flags & IEEE80211_F_VHTON) {
> -             if (remain < 14)
> -                     return ENOBUFS;
> -             frm = ieee80211_add_vhtcaps(frm, ic);
> -     }
> -
>       preq->common_data.len = htole16(frm - pos);
>  
>       return 0;
> blob - 6c1c1647fbcd6d6e71f2d6c08e178fc533650239
> file + sys/dev/pci/if_iwx.c
> --- sys/dev/pci/if_iwx.c
> +++ sys/dev/pci/if_iwx.c
> @@ -6200,6 +6200,12 @@ iwx_fill_probe_req(struct iwx_softc *sc, struct iwx_sc
>                       frm = ieee80211_add_xrates(frm, rs);
>               preq->band_data[1].len = htole16(frm - pos);
>               remain -= frm - pos;
> +             if (ic->ic_flags & IEEE80211_F_VHTON) {
> +                     if (remain < 14)
> +                             return ENOBUFS;
> +                     frm = ieee80211_add_vhtcaps(frm, ic);
> +                     remain -= frm - pos;
> +             }
>       }
>  
>       /* Send 11n IEs on both 2GHz and 5GHz bands. */
> @@ -6213,12 +6219,6 @@ iwx_fill_probe_req(struct iwx_softc *sc, struct iwx_sc
>               remain -= frm - pos;
>       }
>  
> -     if (ic->ic_flags & IEEE80211_F_VHTON) {
> -             if (remain < 14)
> -                     return ENOBUFS;
> -             frm = ieee80211_add_vhtcaps(frm, ic);
> -     }
> -
>       preq->common_data.len = htole16(frm - pos);
>  
>       return 0;
> 

Reply via email to