Skip to contentSkip to conversation

wiphy band information

DISCUSSION Arend van Spriel 3 participants 4 messages Mar 18, 2015 – Mar 19, 2015

lore
Share & tools
lore
#0 lore raw

Hi Johannes,

Is it ok to update the wiphy band information after registration. In brcmfmac the firmware is queried to obtain the supported channels. However, it returns the channels for the current country set in firmware. So after probe/registration iw shows:

Frequencies:
* 2412 MHz [1] (20.0 dBm)
* 2417 MHz [2] (20.0 dBm)
* 2422 MHz [3] (20.0 dBm)
* 2427 MHz [4] (20.0 dBm)
* 2432 MHz [5] (20.0 dBm)
* 2437 MHz [6] (20.0 dBm)
* 2442 MHz [7] (20.0 dBm)
* 2447 MHz [8] (20.0 dBm)
* 2452 MHz [9] (20.0 dBm)
* 2457 MHz [10] (20.0 dBm)
* 2462 MHz [11] (20.0 dBm)

Recently, I added a .reg_notifier() callback to brcmfmac which will propagate country setting to firmware. This gave a crash during scan because ieee80211_get_channel() returned NULL for bss on freq 2472. I added code to update the channel info upon changing country code, but when I do that iw shows:

Frequencies:
* 2412 MHz [1] (0.0 dBm)
* 2417 MHz [2] (0.0 dBm)
* 2422 MHz [3] (0.0 dBm)
* 2427 MHz [4] (0.0 dBm)
* 2432 MHz [5] (0.0 dBm)
* 2437 MHz [6] (0.0 dBm)
* 2442 MHz [7] (0.0 dBm)
* 2447 MHz [8] (0.0 dBm)
* 2452 MHz [9] (0.0 dBm)
* 2457 MHz [10] (0.0 dBm)
* 2462 MHz [11] (0.0 dBm)
* 2467 MHz [12] (0.0 dBm)
* 2472 MHz [13] (0.0 dBm)

Looks fine apart from the power levels so it made me wonder if what I am doing is allowed. Any opinion on this?

I assume the supported band info is intended to show what hardware can do regardless of the configured country, but I have no way to pull that info from the device.

Regards,
Arend

#1 lore raw

Hi Arend,

Quoted 1 line

Is it ok to update the wiphy band information after registration.

I believe this will cause issues.

Quoted 7 lines

In
brcmfmac the firmware is queried to obtain the supported channels. However, it returns the channels for the current country set in firmware. So after probe/registration iw shows:

Looks fine apart from the power levels so it made me wonder if what I am doing is allowed. Any opinion on this?

I think the regulatory flags will also break, since some are pre-processed during wiphy registration.

Quoted 3 lines

I assume the supported band info is intended to show what hardware can do regardless of the configured country, but I have no way to pull that info from the device.

I'd recommend finding (and hard-coding) a superset of all the channels that the hardware could supported, and then dynamically setting the disabled flag on those channels that the (current) regulatory information cannot do.

This is something that needs to be handled throughout the code since regulatory information can already change, but adding/removing channels is something I'd really recommend against.

johannes

#2 lore raw
Quoted 17 lines · Johannes Berg

Hi Arend,

Quoted 1 line

Is it ok to update the wiphy band information after registration.

I believe this will cause issues.

Quoted 7 lines

In
brcmfmac the firmware is queried to obtain the supported channels. However, it returns the channels for the current country set in firmware. So after probe/registration iw shows:

Looks fine apart from the power levels so it made me wonder if what I am doing is allowed. Any opinion on this?

I think the regulatory flags will also break, since some are pre-processed during wiphy registration.

Quoted 8 lines
Quoted 3 lines

I assume the supported band info is intended to show what hardware can do regardless of the configured country, but I have no way to pull that info from the device.

I'd recommend finding (and hard-coding) a superset of all the channels that the hardware could supported, and then dynamically setting the disabled flag on those channels that the (current) regulatory information cannot do.

Depending on your reply that was the plan.

Quoted 3 lines

This is something that needs to be handled throughout the code since regulatory information can already change, but adding/removing channels is something I'd really recommend against.

I had my suspicions. Thanks.

Gr. AvS

#3 lore raw
Quoted 27 lines · Arend van Spriel
Quoted 26 lines · Johannes Berg

Hi Arend,

Quoted 1 line

Is it ok to update the wiphy band information after registration.

I believe this will cause issues.

Quoted 8 lines

In
brcmfmac the firmware is queried to obtain the supported channels. However, it returns the channels for the current country set in firmware. So after probe/registration iw shows:

Looks fine apart from the power levels so it made me wonder if what I am doing is allowed. Any opinion on this?

I think the regulatory flags will also break, since some are pre-processed during wiphy registration.

Quoted 3 lines

I assume the supported band info is intended to show what hardware can do regardless of the configured country, but I have no way to pull that info from the device.

Quoted 7 lines
Quoted 4 lines

I'd recommend finding (and hard-coding) a superset of all the channels that the hardware could supported, and then dynamically setting the disabled flag on those channels that the (current) regulatory information cannot do.

Depending on your reply that was the plan.

btw, this is what's done in iwlwifi (iwlmvm) - all supported channels are registered with regulatory flags=0. Later on when specific countries are set, some channels are disabled/limited.

Arik