mirror of
https://git.kernel.org/pub/scm/network/wireless/iwd.git
synced 2024-11-22 14:49:24 +01:00
station: check disabled band configuration in station_init
For IWD to work correctly either 2.4GHz or 5GHz bands must be enabled (even for 6GHz to work). Check this and don't allow IWD to initialize if both 2.4 and 5GHz is disabled.
This commit is contained in:
parent
66f47343d9
commit
0cb3e4af30
@ -5203,6 +5203,19 @@ static void station_known_networks_changed(enum known_networks_event event,
|
||||
|
||||
static int station_init(void)
|
||||
{
|
||||
if (scan_get_band_rank_modifier(BAND_FREQ_2_4_GHZ))
|
||||
allowed_bands |= BAND_FREQ_2_4_GHZ;
|
||||
if (scan_get_band_rank_modifier(BAND_FREQ_5_GHZ))
|
||||
allowed_bands |= BAND_FREQ_5_GHZ;
|
||||
if (scan_get_band_rank_modifier(BAND_FREQ_6_GHZ))
|
||||
allowed_bands |= BAND_FREQ_6_GHZ;
|
||||
|
||||
if (!(allowed_bands & (BAND_FREQ_2_4_GHZ | BAND_FREQ_5_GHZ))) {
|
||||
l_error("At least 2.4GHz and 5GHz bands must be enabled for "
|
||||
"IWD to start, check [Rank].BandModifier* setting");
|
||||
return -ENOTSUP;
|
||||
}
|
||||
|
||||
station_list = l_queue_new();
|
||||
netdev_watch = netdev_watch_add(station_netdev_watch, NULL, NULL);
|
||||
l_dbus_register_interface(dbus_get_bus(), IWD_STATION_INTERFACE,
|
||||
@ -5259,13 +5272,6 @@ static int station_init(void)
|
||||
station_known_networks_changed,
|
||||
NULL, NULL);
|
||||
|
||||
if (scan_get_band_rank_modifier(BAND_FREQ_2_4_GHZ))
|
||||
allowed_bands |= BAND_FREQ_2_4_GHZ;
|
||||
if (scan_get_band_rank_modifier(BAND_FREQ_5_GHZ))
|
||||
allowed_bands |= BAND_FREQ_5_GHZ;
|
||||
if (scan_get_band_rank_modifier(BAND_FREQ_6_GHZ))
|
||||
allowed_bands |= BAND_FREQ_6_GHZ;
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user