Message ID | 20200327093147.189390-1-robert.marko@sartura.hr (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | ath10k: enable advertising support for channels 32, 68 and 98 | expand |
On Fri, Mar 27, 2020 at 10:31 AM Robert Marko <robert.marko@sartura.hr> wrote: > > Enable advertising support for 5G channels: 32, 68 and 96. > These channels are legal and available for use in ETSI countries. > So lets advertise these and they will be available in accordance with the regulatory domain used. Hi, are there are remarks on this patch? Regards Robert > > Signed-off-by: Robert Marko <robert.marko@sartura.hr> > Cc: Luka Perkov <luka.perkov@sartura.hr> > --- > drivers/net/wireless/ath/ath10k/core.h | 2 +- > drivers/net/wireless/ath/ath10k/mac.c | 3 +++ > 2 files changed, 4 insertions(+), 1 deletion(-) > > diff --git a/drivers/net/wireless/ath/ath10k/core.h b/drivers/net/wireless/ath/ath10k/core.h > index 5101bf2b5b15..480efaa1278c 100644 > --- a/drivers/net/wireless/ath/ath10k/core.h > +++ b/drivers/net/wireless/ath/ath10k/core.h > @@ -37,7 +37,7 @@ > #define WMI_READY_TIMEOUT (5 * HZ) > #define ATH10K_FLUSH_TIMEOUT_HZ (5 * HZ) > #define ATH10K_CONNECTION_LOSS_HZ (3 * HZ) > -#define ATH10K_NUM_CHANS 41 > +#define ATH10K_NUM_CHANS 44 > #define ATH10K_MAX_5G_CHAN 173 > > /* Antenna noise floor */ > diff --git a/drivers/net/wireless/ath/ath10k/mac.c b/drivers/net/wireless/ath/ath10k/mac.c > index 7fee35ff966b..f98422427b27 100644 > --- a/drivers/net/wireless/ath/ath10k/mac.c > +++ b/drivers/net/wireless/ath/ath10k/mac.c > @@ -8363,6 +8363,7 @@ static const struct ieee80211_channel ath10k_2ghz_channels[] = { > }; > > static const struct ieee80211_channel ath10k_5ghz_channels[] = { > + CHAN5G(32, 5160, 0), > CHAN5G(36, 5180, 0), > CHAN5G(40, 5200, 0), > CHAN5G(44, 5220, 0), > @@ -8371,6 +8372,8 @@ static const struct ieee80211_channel ath10k_5ghz_channels[] = { > CHAN5G(56, 5280, 0), > CHAN5G(60, 5300, 0), > CHAN5G(64, 5320, 0), > + CHAN5G(68, 5340, 0), > + CHAN5G(96, 5480, 0), > CHAN5G(100, 5500, 0), > CHAN5G(104, 5520, 0), > CHAN5G(108, 5540, 0), > -- > 2.26.0 >
Robert Marko <robert.marko@sartura.hr> writes: > Enable advertising support for 5G channels: 32, 68 and 96. > These channels are legal and available for use in ETSI countries. > So lets advertise these and they will be available in accordance with the regulatory domain used. > > Signed-off-by: Robert Marko <robert.marko@sartura.hr> > Cc: Luka Perkov <luka.perkov@sartura.hr> What's the use case for this? I was told that the IEEE standard does not define these channels, that's why I'm asking for more information. On what hardware and firmware did you test this? It might be that not all hardware or firmware support this. There was a concern if this slows down scanning due to more channels being scanned, but I haven't analysed that yet. Did you measure that? Also please CC linux-wireless on ath10k patches. Otherwise patchwork won't see them and it won't be on my radar: https://wireless.wiki.kernel.org/en/users/drivers/ath10k/submittingpatches
On Tue, Jun 9, 2020 at 1:58 PM Kalle Valo <kvalo@codeaurora.org> wrote: > > Robert Marko <robert.marko@sartura.hr> writes: > > > Enable advertising support for 5G channels: 32, 68 and 96. > > These channels are legal and available for use in ETSI countries. > > So lets advertise these and they will be available in accordance with the regulatory domain used. > > > > Signed-off-by: Robert Marko <robert.marko@sartura.hr> > > Cc: Luka Perkov <luka.perkov@sartura.hr> > > What's the use case for this? I was told that the IEEE standard does not > define these channels, that's why I'm asking for more information. The primary use case is to enable more of the spectrum to be used, since in ETSI countries it's legal. Even 5GHz is getting pretty crowded in cities. > > On what hardware and firmware did you test this? It might be that not > all hardware or firmware support this. It's tested on IPQ4018, 10.4-3.6-00140 FW if I remember correctly as some time has passed. If HW does not support it then BDF-s and caldata should disable it? > > There was a concern if this slows down scanning due to more channels > being scanned, but I haven't analysed that yet. Did you measure that? No, I have not thought of that. Even if it does, I don't think that 3 channels more would drastically increase scan time. > > Also please CC linux-wireless on ath10k patches. Otherwise patchwork > won't see them and it won't be on my radar: Thanks, completely forgot to do it. > > https://wireless.wiki.kernel.org/en/users/drivers/ath10k/submittingpatches > > -- > https://wireless.wiki.kernel.org/en/developers/documentation/submittingpatches
On 3/27/20 10:31 AM, Robert Marko wrote: > Enable advertising support for 5G channels: 32, 68 and 96. > These channels are legal and available for use in ETSI countries. > So lets advertise these and they will be available in accordance with the regulatory domain used. > > Signed-off-by: Robert Marko <robert.marko@sartura.hr> > Cc: Luka Perkov <luka.perkov@sartura.hr> > --- > drivers/net/wireless/ath/ath10k/core.h | 2 +- > drivers/net/wireless/ath/ath10k/mac.c | 3 +++ > 2 files changed, 4 insertions(+), 1 deletion(-) > > diff --git a/drivers/net/wireless/ath/ath10k/core.h b/drivers/net/wireless/ath/ath10k/core.h > index 5101bf2b5b15..480efaa1278c 100644 > --- a/drivers/net/wireless/ath/ath10k/core.h > +++ b/drivers/net/wireless/ath/ath10k/core.h > @@ -37,7 +37,7 @@ > #define WMI_READY_TIMEOUT (5 * HZ) > #define ATH10K_FLUSH_TIMEOUT_HZ (5 * HZ) > #define ATH10K_CONNECTION_LOSS_HZ (3 * HZ) > -#define ATH10K_NUM_CHANS 41 > +#define ATH10K_NUM_CHANS 44 > #define ATH10K_MAX_5G_CHAN 173 > > /* Antenna noise floor */ > diff --git a/drivers/net/wireless/ath/ath10k/mac.c b/drivers/net/wireless/ath/ath10k/mac.c > index 7fee35ff966b..f98422427b27 100644 > --- a/drivers/net/wireless/ath/ath10k/mac.c > +++ b/drivers/net/wireless/ath/ath10k/mac.c > @@ -8363,6 +8363,7 @@ static const struct ieee80211_channel ath10k_2ghz_channels[] = { > }; > > static const struct ieee80211_channel ath10k_5ghz_channels[] = { > + CHAN5G(32, 5160, 0), > CHAN5G(36, 5180, 0), > CHAN5G(40, 5200, 0), > CHAN5G(44, 5220, 0), > @@ -8371,6 +8372,8 @@ static const struct ieee80211_channel ath10k_5ghz_channels[] = { > CHAN5G(56, 5280, 0), > CHAN5G(60, 5300, 0), > CHAN5G(64, 5320, 0), > + CHAN5G(68, 5340, 0), > + CHAN5G(96, 5480, 0), > CHAN5G(100, 5500, 0), > CHAN5G(104, 5520, 0), > CHAN5G(108, 5540, 0), Hi, your patch is incomplete. Mgmt frames cannot be received on channel 32, because of the following lines in wmi.c: /* Hardware can Rx CCK rates on 5GHz. In that case phy_mode is set to * MODE_11B. This means phy_mode is not a reliable source for the band * of mgmt rx. */ if (channel >= 1 && channel <= 14) { status->band = NL80211_BAND_2GHZ; } else if (channel >= 36 && channel <= ATH10K_MAX_5G_CHAN) { status->band = NL80211_BAND_5GHZ; } else { /* Shouldn't happen unless list of advertised channels to * mac80211 has been changed. */ WARN_ON_ONCE(1); dev_kfree_skb(skb); return 0; } Have you tested this patch? Markus
On 6/11/20 1:29 PM, Markus Theil wrote: > On 3/27/20 10:31 AM, Robert Marko wrote: >> Enable advertising support for 5G channels: 32, 68 and 96. >> These channels are legal and available for use in ETSI countries. >> So lets advertise these and they will be available in accordance with the regulatory domain used. >> >> Signed-off-by: Robert Marko <robert.marko@sartura.hr> >> Cc: Luka Perkov <luka.perkov@sartura.hr> >> --- >> drivers/net/wireless/ath/ath10k/core.h | 2 +- >> drivers/net/wireless/ath/ath10k/mac.c | 3 +++ >> 2 files changed, 4 insertions(+), 1 deletion(-) >> >> diff --git a/drivers/net/wireless/ath/ath10k/core.h b/drivers/net/wireless/ath/ath10k/core.h >> index 5101bf2b5b15..480efaa1278c 100644 >> --- a/drivers/net/wireless/ath/ath10k/core.h >> +++ b/drivers/net/wireless/ath/ath10k/core.h >> @@ -37,7 +37,7 @@ >> #define WMI_READY_TIMEOUT (5 * HZ) >> #define ATH10K_FLUSH_TIMEOUT_HZ (5 * HZ) >> #define ATH10K_CONNECTION_LOSS_HZ (3 * HZ) >> -#define ATH10K_NUM_CHANS 41 >> +#define ATH10K_NUM_CHANS 44 >> #define ATH10K_MAX_5G_CHAN 173 >> >> /* Antenna noise floor */ >> diff --git a/drivers/net/wireless/ath/ath10k/mac.c b/drivers/net/wireless/ath/ath10k/mac.c >> index 7fee35ff966b..f98422427b27 100644 >> --- a/drivers/net/wireless/ath/ath10k/mac.c >> +++ b/drivers/net/wireless/ath/ath10k/mac.c >> @@ -8363,6 +8363,7 @@ static const struct ieee80211_channel ath10k_2ghz_channels[] = { >> }; >> >> static const struct ieee80211_channel ath10k_5ghz_channels[] = { >> + CHAN5G(32, 5160, 0), >> CHAN5G(36, 5180, 0), >> CHAN5G(40, 5200, 0), >> CHAN5G(44, 5220, 0), >> @@ -8371,6 +8372,8 @@ static const struct ieee80211_channel ath10k_5ghz_channels[] = { >> CHAN5G(56, 5280, 0), >> CHAN5G(60, 5300, 0), >> CHAN5G(64, 5320, 0), >> + CHAN5G(68, 5340, 0), >> + CHAN5G(96, 5480, 0), >> CHAN5G(100, 5500, 0), >> CHAN5G(104, 5520, 0), >> CHAN5G(108, 5540, 0), > Hi, your patch is incomplete. Mgmt frames cannot be received on channel 32, because of the following lines in wmi.c: > > /* Hardware can Rx CCK rates on 5GHz. In that case phy_mode is set to > * MODE_11B. This means phy_mode is not a reliable source for the band > * of mgmt rx. > */ > if (channel >= 1 && channel <= 14) { > status->band = NL80211_BAND_2GHZ; > } else if (channel >= 36 && channel <= ATH10K_MAX_5G_CHAN) { > status->band = NL80211_BAND_5GHZ; > } else { > /* Shouldn't happen unless list of advertised channels to > * mac80211 has been changed. > */ > WARN_ON_ONCE(1); > dev_kfree_skb(skb); > return 0; > } > > Have you tested this patch? I've tested your patch (changed 36 to 32 in wmi.c). And channel 32 does not work for me, even with that change. Nevertheless, I was able to use channels 68 and 96 between two ath10k cards in AP and STA mode. I do not know, why channel 32 does not work.
diff --git a/drivers/net/wireless/ath/ath10k/core.h b/drivers/net/wireless/ath/ath10k/core.h index 5101bf2b5b15..480efaa1278c 100644 --- a/drivers/net/wireless/ath/ath10k/core.h +++ b/drivers/net/wireless/ath/ath10k/core.h @@ -37,7 +37,7 @@ #define WMI_READY_TIMEOUT (5 * HZ) #define ATH10K_FLUSH_TIMEOUT_HZ (5 * HZ) #define ATH10K_CONNECTION_LOSS_HZ (3 * HZ) -#define ATH10K_NUM_CHANS 41 +#define ATH10K_NUM_CHANS 44 #define ATH10K_MAX_5G_CHAN 173 /* Antenna noise floor */ diff --git a/drivers/net/wireless/ath/ath10k/mac.c b/drivers/net/wireless/ath/ath10k/mac.c index 7fee35ff966b..f98422427b27 100644 --- a/drivers/net/wireless/ath/ath10k/mac.c +++ b/drivers/net/wireless/ath/ath10k/mac.c @@ -8363,6 +8363,7 @@ static const struct ieee80211_channel ath10k_2ghz_channels[] = { }; static const struct ieee80211_channel ath10k_5ghz_channels[] = { + CHAN5G(32, 5160, 0), CHAN5G(36, 5180, 0), CHAN5G(40, 5200, 0), CHAN5G(44, 5220, 0), @@ -8371,6 +8372,8 @@ static const struct ieee80211_channel ath10k_5ghz_channels[] = { CHAN5G(56, 5280, 0), CHAN5G(60, 5300, 0), CHAN5G(64, 5320, 0), + CHAN5G(68, 5340, 0), + CHAN5G(96, 5480, 0), CHAN5G(100, 5500, 0), CHAN5G(104, 5520, 0), CHAN5G(108, 5540, 0),
Enable advertising support for 5G channels: 32, 68 and 96. These channels are legal and available for use in ETSI countries. So lets advertise these and they will be available in accordance with the regulatory domain used. Signed-off-by: Robert Marko <robert.marko@sartura.hr> Cc: Luka Perkov <luka.perkov@sartura.hr> --- drivers/net/wireless/ath/ath10k/core.h | 2 +- drivers/net/wireless/ath/ath10k/mac.c | 3 +++ 2 files changed, 4 insertions(+), 1 deletion(-)