Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

cfg80211: consolidate passive-scan and no-ibss flags

These two flags are used for the same purpose, just
combine them into a no-ir flag to annotate no initiating
radiation is allowed.

Old userspace sending either flag will have it treated as
the no-ir flag. To be considerate to older userspace we
also send both the no-ir flag and the old no-ibss flags.
Newer userspace will have to be aware of older kernels.

Update all places in the tree using these flags with the
following semantic patch:

@@
@@
-NL80211_RRF_PASSIVE_SCAN
+NL80211_RRF_NO_IR
@@
@@
-NL80211_RRF_NO_IBSS
+NL80211_RRF_NO_IR
@@
@@
-IEEE80211_CHAN_PASSIVE_SCAN
+IEEE80211_CHAN_NO_IR
@@
@@
-IEEE80211_CHAN_NO_IBSS
+IEEE80211_CHAN_NO_IR
@@
@@
-NL80211_RRF_NO_IR | NL80211_RRF_NO_IR
+NL80211_RRF_NO_IR
@@
@@
-IEEE80211_CHAN_NO_IR | IEEE80211_CHAN_NO_IR
+IEEE80211_CHAN_NO_IR
@@
@@
-(NL80211_RRF_NO_IR)
+NL80211_RRF_NO_IR
@@
@@
-(IEEE80211_CHAN_NO_IR)
+IEEE80211_CHAN_NO_IR

Along with some hand-optimisations in documentation, to
remove duplicates and to fix some indentation.

Signed-off-by: Luis R. Rodriguez <mcgrof@do-not-panic.com>
[do all the driver updates in one go]
Signed-off-by: Johannes Berg <johannes.berg@intel.com>

authored by

Luis R. Rodriguez and committed by
Johannes Berg
8fe02e16 c17bff87

+197 -230
+2 -2
Documentation/networking/regulatory.txt
··· 159 159 REG_RULE(2412-20, 2484+20, 40, 6, 20, 0), 160 160 /* IEEE 802.11a, channels 34..48 */ 161 161 REG_RULE(5170-20, 5240+20, 40, 6, 20, 162 - NL80211_RRF_PASSIVE_SCAN), 162 + NL80211_RRF_NO_IR), 163 163 /* IEEE 802.11a, channels 52..64 */ 164 164 REG_RULE(5260-20, 5320+20, 40, 6, 20, 165 - NL80211_RRF_NO_IBSS | 165 + NL80211_RRF_NO_IR| 166 166 NL80211_RRF_DFS), 167 167 } 168 168 };
+2 -2
drivers/net/wireless/ath/ath10k/mac.c
··· 1351 1351 ch->allow_vht = true; 1352 1352 1353 1353 ch->allow_ibss = 1354 - !(channel->flags & IEEE80211_CHAN_NO_IBSS); 1354 + !(channel->flags & IEEE80211_CHAN_NO_IR); 1355 1355 1356 1356 ch->ht40plus = 1357 1357 !(channel->flags & IEEE80211_CHAN_NO_HT40PLUS); 1358 1358 1359 - passive = channel->flags & IEEE80211_CHAN_PASSIVE_SCAN; 1359 + passive = channel->flags & IEEE80211_CHAN_NO_IR; 1360 1360 ch->passive = passive; 1361 1361 1362 1362 ch->freq = channel->center_freq;
+20 -27
drivers/net/wireless/ath/regd.c
··· 37 37 38 38 /* We enable active scan on these a case by case basis by regulatory domain */ 39 39 #define ATH9K_2GHZ_CH12_13 REG_RULE(2467-10, 2472+10, 40, 0, 20,\ 40 - NL80211_RRF_PASSIVE_SCAN) 40 + NL80211_RRF_NO_IR) 41 41 #define ATH9K_2GHZ_CH14 REG_RULE(2484-10, 2484+10, 40, 0, 20,\ 42 - NL80211_RRF_PASSIVE_SCAN | NL80211_RRF_NO_OFDM) 42 + NL80211_RRF_NO_IR | \ 43 + NL80211_RRF_NO_OFDM) 43 44 44 45 /* We allow IBSS on these on a case by case basis by regulatory domain */ 45 46 #define ATH9K_5GHZ_5150_5350 REG_RULE(5150-10, 5350+10, 80, 0, 30,\ 46 - NL80211_RRF_PASSIVE_SCAN | NL80211_RRF_NO_IBSS) 47 + NL80211_RRF_NO_IR) 47 48 #define ATH9K_5GHZ_5470_5850 REG_RULE(5470-10, 5850+10, 80, 0, 30,\ 48 - NL80211_RRF_PASSIVE_SCAN | NL80211_RRF_NO_IBSS) 49 + NL80211_RRF_NO_IR) 49 50 #define ATH9K_5GHZ_5725_5850 REG_RULE(5725-10, 5850+10, 80, 0, 30,\ 50 - NL80211_RRF_PASSIVE_SCAN | NL80211_RRF_NO_IBSS) 51 + NL80211_RRF_NO_IR) 51 52 52 53 #define ATH9K_2GHZ_ALL ATH9K_2GHZ_CH01_11, \ 53 54 ATH9K_2GHZ_CH12_13, \ ··· 224 223 * default during init, prior to calling our 225 224 * regulatory_hint(). 226 225 */ 227 - if (!(reg_rule->flags & 228 - NL80211_RRF_NO_IBSS)) 229 - ch->flags &= 230 - ~IEEE80211_CHAN_NO_IBSS; 231 - if (!(reg_rule->flags & 232 - NL80211_RRF_PASSIVE_SCAN)) 233 - ch->flags &= 234 - ~IEEE80211_CHAN_PASSIVE_SCAN; 226 + if (!(reg_rule->flags & NL80211_RRF_NO_IR)) 227 + ch->flags &= ~IEEE80211_CHAN_NO_IR; 235 228 } else { 236 229 if (ch->beacon_found) 237 - ch->flags &= ~(IEEE80211_CHAN_NO_IBSS | 238 - IEEE80211_CHAN_PASSIVE_SCAN); 230 + ch->flags &= ~IEEE80211_CHAN_NO_IR; 239 231 } 240 232 } 241 233 } ··· 254 260 */ 255 261 if (initiator != NL80211_REGDOM_SET_BY_COUNTRY_IE) { 256 262 ch = &sband->channels[11]; /* CH 12 */ 257 - if (ch->flags & IEEE80211_CHAN_PASSIVE_SCAN) 258 - ch->flags &= ~IEEE80211_CHAN_PASSIVE_SCAN; 263 + if (ch->flags & IEEE80211_CHAN_NO_IR) 264 + ch->flags &= ~IEEE80211_CHAN_NO_IR; 259 265 ch = &sband->channels[12]; /* CH 13 */ 260 - if (ch->flags & IEEE80211_CHAN_PASSIVE_SCAN) 261 - ch->flags &= ~IEEE80211_CHAN_PASSIVE_SCAN; 266 + if (ch->flags & IEEE80211_CHAN_NO_IR) 267 + ch->flags &= ~IEEE80211_CHAN_NO_IR; 262 268 return; 263 269 } 264 270 ··· 272 278 ch = &sband->channels[11]; /* CH 12 */ 273 279 reg_rule = freq_reg_info(wiphy, ch->center_freq); 274 280 if (!IS_ERR(reg_rule)) { 275 - if (!(reg_rule->flags & NL80211_RRF_PASSIVE_SCAN)) 276 - if (ch->flags & IEEE80211_CHAN_PASSIVE_SCAN) 277 - ch->flags &= ~IEEE80211_CHAN_PASSIVE_SCAN; 281 + if (!(reg_rule->flags & NL80211_RRF_NO_IR)) 282 + if (ch->flags & IEEE80211_CHAN_NO_IR) 283 + ch->flags &= ~IEEE80211_CHAN_NO_IR; 278 284 } 279 285 280 286 ch = &sband->channels[12]; /* CH 13 */ 281 287 reg_rule = freq_reg_info(wiphy, ch->center_freq); 282 288 if (!IS_ERR(reg_rule)) { 283 - if (!(reg_rule->flags & NL80211_RRF_PASSIVE_SCAN)) 284 - if (ch->flags & IEEE80211_CHAN_PASSIVE_SCAN) 285 - ch->flags &= ~IEEE80211_CHAN_PASSIVE_SCAN; 289 + if (!(reg_rule->flags & NL80211_RRF_NO_IR)) 290 + if (ch->flags & IEEE80211_CHAN_NO_IR) 291 + ch->flags &= ~IEEE80211_CHAN_NO_IR; 286 292 } 287 293 } 288 294 ··· 314 320 */ 315 321 if (!(ch->flags & IEEE80211_CHAN_DISABLED)) 316 322 ch->flags |= IEEE80211_CHAN_RADAR | 317 - IEEE80211_CHAN_NO_IBSS | 318 - IEEE80211_CHAN_PASSIVE_SCAN; 323 + IEEE80211_CHAN_NO_IR; 319 324 } 320 325 } 321 326
+1 -1
drivers/net/wireless/brcm80211/brcmfmac/p2p.c
··· 812 812 struct ieee80211_channel *chan = request->channels[i]; 813 813 814 814 if (chan->flags & (IEEE80211_CHAN_RADAR | 815 - IEEE80211_CHAN_PASSIVE_SCAN)) 815 + IEEE80211_CHAN_NO_IR)) 816 816 continue; 817 817 818 818 chanspecs[i] = channel_to_chanspec(&p2p->cfg->d11inf,
+5 -5
drivers/net/wireless/brcm80211/brcmfmac/wl_cfg80211.c
··· 202 202 203 203 /* This is to override regulatory domains defined in cfg80211 module (reg.c) 204 204 * By default world regulatory domain defined in reg.c puts the flags 205 - * NL80211_RRF_PASSIVE_SCAN and NL80211_RRF_NO_IBSS for 5GHz channels (for 206 - * 36..48 and 149..165). With respect to these flags, wpa_supplicant doesn't 207 - * start p2p operations on 5GHz channels. All the changes in world regulatory 205 + * NL80211_RRF_NO_IR for 5GHz channels (for * 36..48 and 149..165). 206 + * With respect to these flags, wpa_supplicant doesn't * start p2p 207 + * operations on 5GHz channels. All the changes in world regulatory 208 208 * domain are to be done here. 209 209 */ 210 210 static const struct ieee80211_regdomain brcmf_regdom = { ··· 5197 5197 if (channel & WL_CHAN_RADAR) 5198 5198 band_chan_arr[index].flags |= 5199 5199 (IEEE80211_CHAN_RADAR | 5200 - IEEE80211_CHAN_NO_IBSS); 5200 + IEEE80211_CHAN_NO_IR); 5201 5201 if (channel & WL_CHAN_PASSIVE) 5202 5202 band_chan_arr[index].flags |= 5203 - IEEE80211_CHAN_PASSIVE_SCAN; 5203 + IEEE80211_CHAN_NO_IR; 5204 5204 } 5205 5205 } 5206 5206 if (!update)
+11 -20
drivers/net/wireless/brcm80211/brcmsmac/channel.c
··· 59 59 60 60 #define BRCM_2GHZ_2412_2462 REG_RULE(2412-10, 2462+10, 40, 0, 19, 0) 61 61 #define BRCM_2GHZ_2467_2472 REG_RULE(2467-10, 2472+10, 20, 0, 19, \ 62 - NL80211_RRF_PASSIVE_SCAN | \ 63 - NL80211_RRF_NO_IBSS) 62 + NL80211_RRF_NO_IR) 64 63 65 64 #define BRCM_5GHZ_5180_5240 REG_RULE(5180-10, 5240+10, 40, 0, 21, \ 66 - NL80211_RRF_PASSIVE_SCAN | \ 67 - NL80211_RRF_NO_IBSS) 65 + NL80211_RRF_NO_IR) 68 66 #define BRCM_5GHZ_5260_5320 REG_RULE(5260-10, 5320+10, 40, 0, 21, \ 69 - NL80211_RRF_PASSIVE_SCAN | \ 70 67 NL80211_RRF_DFS | \ 71 - NL80211_RRF_NO_IBSS) 68 + NL80211_RRF_NO_IR) 72 69 #define BRCM_5GHZ_5500_5700 REG_RULE(5500-10, 5700+10, 40, 0, 21, \ 73 - NL80211_RRF_PASSIVE_SCAN | \ 74 70 NL80211_RRF_DFS | \ 75 - NL80211_RRF_NO_IBSS) 71 + NL80211_RRF_NO_IR) 76 72 #define BRCM_5GHZ_5745_5825 REG_RULE(5745-10, 5825+10, 40, 0, 21, \ 77 - NL80211_RRF_PASSIVE_SCAN | \ 78 - NL80211_RRF_NO_IBSS) 73 + NL80211_RRF_NO_IR) 79 74 80 75 static const struct ieee80211_regdomain brcms_regdom_x2 = { 81 76 .n_reg_rules = 6, ··· 390 395 brcms_c_set_gmode(wlc, wlc->protection->gmode_user, false); 391 396 392 397 brcms_b_set_chanspec(wlc->hw, chanspec, 393 - !!(ch->flags & IEEE80211_CHAN_PASSIVE_SCAN), 398 + !!(ch->flags & IEEE80211_CHAN_NO_IR), 394 399 &txpwr); 395 400 } 396 401 ··· 652 657 */ 653 658 if (!(ch->flags & IEEE80211_CHAN_DISABLED)) 654 659 ch->flags |= IEEE80211_CHAN_RADAR | 655 - IEEE80211_CHAN_NO_IBSS | 656 - IEEE80211_CHAN_PASSIVE_SCAN; 660 + IEEE80211_CHAN_NO_IR | 661 + IEEE80211_CHAN_NO_IR; 657 662 } 658 663 } 659 664 ··· 683 688 if (IS_ERR(rule)) 684 689 continue; 685 690 686 - if (!(rule->flags & NL80211_RRF_NO_IBSS)) 687 - ch->flags &= ~IEEE80211_CHAN_NO_IBSS; 688 - if (!(rule->flags & NL80211_RRF_PASSIVE_SCAN)) 689 - ch->flags &= 690 - ~IEEE80211_CHAN_PASSIVE_SCAN; 691 + if (!(rule->flags & NL80211_RRF_NO_IR)) 692 + ch->flags &= ~IEEE80211_CHAN_NO_IR; 691 693 } else if (ch->beacon_found) { 692 - ch->flags &= ~(IEEE80211_CHAN_NO_IBSS | 693 - IEEE80211_CHAN_PASSIVE_SCAN); 694 + ch->flags &= ~IEEE80211_CHAN_NO_IR; 694 695 } 695 696 } 696 697 }
+33 -33
drivers/net/wireless/brcm80211/brcmsmac/mac80211_if.c
··· 125 125 CHAN2GHZ(10, 2457, IEEE80211_CHAN_NO_HT40PLUS), 126 126 CHAN2GHZ(11, 2462, IEEE80211_CHAN_NO_HT40PLUS), 127 127 CHAN2GHZ(12, 2467, 128 - IEEE80211_CHAN_PASSIVE_SCAN | IEEE80211_CHAN_NO_IBSS | 128 + IEEE80211_CHAN_NO_IR | 129 129 IEEE80211_CHAN_NO_HT40PLUS), 130 130 CHAN2GHZ(13, 2472, 131 - IEEE80211_CHAN_PASSIVE_SCAN | IEEE80211_CHAN_NO_IBSS | 131 + IEEE80211_CHAN_NO_IR | 132 132 IEEE80211_CHAN_NO_HT40PLUS), 133 133 CHAN2GHZ(14, 2484, 134 - IEEE80211_CHAN_PASSIVE_SCAN | IEEE80211_CHAN_NO_IBSS | 134 + IEEE80211_CHAN_NO_IR | 135 135 IEEE80211_CHAN_NO_HT40PLUS | IEEE80211_CHAN_NO_HT40MINUS | 136 136 IEEE80211_CHAN_NO_OFDM) 137 137 }; ··· 144 144 CHAN5GHZ(48, IEEE80211_CHAN_NO_HT40PLUS), 145 145 /* UNII-2 */ 146 146 CHAN5GHZ(52, 147 - IEEE80211_CHAN_RADAR | IEEE80211_CHAN_NO_IBSS | 148 - IEEE80211_CHAN_PASSIVE_SCAN | IEEE80211_CHAN_NO_HT40MINUS), 147 + IEEE80211_CHAN_RADAR | 148 + IEEE80211_CHAN_NO_IR | IEEE80211_CHAN_NO_HT40MINUS), 149 149 CHAN5GHZ(56, 150 - IEEE80211_CHAN_RADAR | IEEE80211_CHAN_NO_IBSS | 151 - IEEE80211_CHAN_PASSIVE_SCAN | IEEE80211_CHAN_NO_HT40PLUS), 150 + IEEE80211_CHAN_RADAR | 151 + IEEE80211_CHAN_NO_IR | IEEE80211_CHAN_NO_HT40PLUS), 152 152 CHAN5GHZ(60, 153 - IEEE80211_CHAN_RADAR | IEEE80211_CHAN_NO_IBSS | 154 - IEEE80211_CHAN_PASSIVE_SCAN | IEEE80211_CHAN_NO_HT40MINUS), 153 + IEEE80211_CHAN_RADAR | 154 + IEEE80211_CHAN_NO_IR | IEEE80211_CHAN_NO_HT40MINUS), 155 155 CHAN5GHZ(64, 156 - IEEE80211_CHAN_RADAR | IEEE80211_CHAN_NO_IBSS | 157 - IEEE80211_CHAN_PASSIVE_SCAN | IEEE80211_CHAN_NO_HT40PLUS), 156 + IEEE80211_CHAN_RADAR | 157 + IEEE80211_CHAN_NO_IR | IEEE80211_CHAN_NO_HT40PLUS), 158 158 /* MID */ 159 159 CHAN5GHZ(100, 160 - IEEE80211_CHAN_RADAR | IEEE80211_CHAN_NO_IBSS | 161 - IEEE80211_CHAN_PASSIVE_SCAN | IEEE80211_CHAN_NO_HT40MINUS), 160 + IEEE80211_CHAN_RADAR | 161 + IEEE80211_CHAN_NO_IR | IEEE80211_CHAN_NO_HT40MINUS), 162 162 CHAN5GHZ(104, 163 - IEEE80211_CHAN_RADAR | IEEE80211_CHAN_NO_IBSS | 164 - IEEE80211_CHAN_PASSIVE_SCAN | IEEE80211_CHAN_NO_HT40PLUS), 163 + IEEE80211_CHAN_RADAR | 164 + IEEE80211_CHAN_NO_IR | IEEE80211_CHAN_NO_HT40PLUS), 165 165 CHAN5GHZ(108, 166 - IEEE80211_CHAN_RADAR | IEEE80211_CHAN_NO_IBSS | 167 - IEEE80211_CHAN_PASSIVE_SCAN | IEEE80211_CHAN_NO_HT40MINUS), 166 + IEEE80211_CHAN_RADAR | 167 + IEEE80211_CHAN_NO_IR | IEEE80211_CHAN_NO_HT40MINUS), 168 168 CHAN5GHZ(112, 169 - IEEE80211_CHAN_RADAR | IEEE80211_CHAN_NO_IBSS | 170 - IEEE80211_CHAN_PASSIVE_SCAN | IEEE80211_CHAN_NO_HT40PLUS), 169 + IEEE80211_CHAN_RADAR | 170 + IEEE80211_CHAN_NO_IR | IEEE80211_CHAN_NO_HT40PLUS), 171 171 CHAN5GHZ(116, 172 - IEEE80211_CHAN_RADAR | IEEE80211_CHAN_NO_IBSS | 173 - IEEE80211_CHAN_PASSIVE_SCAN | IEEE80211_CHAN_NO_HT40MINUS), 172 + IEEE80211_CHAN_RADAR | 173 + IEEE80211_CHAN_NO_IR | IEEE80211_CHAN_NO_HT40MINUS), 174 174 CHAN5GHZ(120, 175 - IEEE80211_CHAN_RADAR | IEEE80211_CHAN_NO_IBSS | 176 - IEEE80211_CHAN_PASSIVE_SCAN | IEEE80211_CHAN_NO_HT40PLUS), 175 + IEEE80211_CHAN_RADAR | 176 + IEEE80211_CHAN_NO_IR | IEEE80211_CHAN_NO_HT40PLUS), 177 177 CHAN5GHZ(124, 178 - IEEE80211_CHAN_RADAR | IEEE80211_CHAN_NO_IBSS | 179 - IEEE80211_CHAN_PASSIVE_SCAN | IEEE80211_CHAN_NO_HT40MINUS), 178 + IEEE80211_CHAN_RADAR | 179 + IEEE80211_CHAN_NO_IR | IEEE80211_CHAN_NO_HT40MINUS), 180 180 CHAN5GHZ(128, 181 - IEEE80211_CHAN_RADAR | IEEE80211_CHAN_NO_IBSS | 182 - IEEE80211_CHAN_PASSIVE_SCAN | IEEE80211_CHAN_NO_HT40PLUS), 181 + IEEE80211_CHAN_RADAR | 182 + IEEE80211_CHAN_NO_IR | IEEE80211_CHAN_NO_HT40PLUS), 183 183 CHAN5GHZ(132, 184 - IEEE80211_CHAN_RADAR | IEEE80211_CHAN_NO_IBSS | 185 - IEEE80211_CHAN_PASSIVE_SCAN | IEEE80211_CHAN_NO_HT40MINUS), 184 + IEEE80211_CHAN_RADAR | 185 + IEEE80211_CHAN_NO_IR | IEEE80211_CHAN_NO_HT40MINUS), 186 186 CHAN5GHZ(136, 187 - IEEE80211_CHAN_RADAR | IEEE80211_CHAN_NO_IBSS | 188 - IEEE80211_CHAN_PASSIVE_SCAN | IEEE80211_CHAN_NO_HT40PLUS), 187 + IEEE80211_CHAN_RADAR | 188 + IEEE80211_CHAN_NO_IR | IEEE80211_CHAN_NO_HT40PLUS), 189 189 CHAN5GHZ(140, 190 - IEEE80211_CHAN_RADAR | IEEE80211_CHAN_NO_IBSS | 191 - IEEE80211_CHAN_PASSIVE_SCAN | IEEE80211_CHAN_NO_HT40PLUS | 190 + IEEE80211_CHAN_RADAR | 191 + IEEE80211_CHAN_NO_IR | IEEE80211_CHAN_NO_HT40PLUS | 192 192 IEEE80211_CHAN_NO_HT40MINUS), 193 193 /* UNII-3 */ 194 194 CHAN5GHZ(149, IEEE80211_CHAN_NO_HT40MINUS),
+5 -5
drivers/net/wireless/cw1200/scan.c
··· 197 197 if ((*it)->band != first->band) 198 198 break; 199 199 if (((*it)->flags ^ first->flags) & 200 - IEEE80211_CHAN_PASSIVE_SCAN) 200 + IEEE80211_CHAN_NO_IR) 201 201 break; 202 - if (!(first->flags & IEEE80211_CHAN_PASSIVE_SCAN) && 202 + if (!(first->flags & IEEE80211_CHAN_NO_IR) && 203 203 (*it)->max_power != first->max_power) 204 204 break; 205 205 } ··· 210 210 else 211 211 scan.max_tx_rate = WSM_TRANSMIT_RATE_1; 212 212 scan.num_probes = 213 - (first->flags & IEEE80211_CHAN_PASSIVE_SCAN) ? 0 : 2; 213 + (first->flags & IEEE80211_CHAN_NO_IR) ? 0 : 2; 214 214 scan.num_ssids = priv->scan.n_ssids; 215 215 scan.ssids = &priv->scan.ssids[0]; 216 216 scan.num_channels = it - priv->scan.curr; ··· 233 233 } 234 234 for (i = 0; i < scan.num_channels; ++i) { 235 235 scan.ch[i].number = priv->scan.curr[i]->hw_value; 236 - if (priv->scan.curr[i]->flags & IEEE80211_CHAN_PASSIVE_SCAN) { 236 + if (priv->scan.curr[i]->flags & IEEE80211_CHAN_NO_IR) { 237 237 scan.ch[i].min_chan_time = 50; 238 238 scan.ch[i].max_chan_time = 100; 239 239 } else { ··· 241 241 scan.ch[i].max_chan_time = 25; 242 242 } 243 243 } 244 - if (!(first->flags & IEEE80211_CHAN_PASSIVE_SCAN) && 244 + if (!(first->flags & IEEE80211_CHAN_NO_IR) && 245 245 priv->scan.output_power != first->max_power) { 246 246 priv->scan.output_power = first->max_power; 247 247 wsm_set_output_power(priv,
+2 -2
drivers/net/wireless/ipw2x00/ipw2100.c
··· 1930 1930 bg_band->channels[i].max_power = geo->bg[i].max_power; 1931 1931 if (geo->bg[i].flags & LIBIPW_CH_PASSIVE_ONLY) 1932 1932 bg_band->channels[i].flags |= 1933 - IEEE80211_CHAN_PASSIVE_SCAN; 1933 + IEEE80211_CHAN_NO_IR; 1934 1934 if (geo->bg[i].flags & LIBIPW_CH_NO_IBSS) 1935 1935 bg_band->channels[i].flags |= 1936 - IEEE80211_CHAN_NO_IBSS; 1936 + IEEE80211_CHAN_NO_IR; 1937 1937 if (geo->bg[i].flags & LIBIPW_CH_RADAR_DETECT) 1938 1938 bg_band->channels[i].flags |= 1939 1939 IEEE80211_CHAN_RADAR;
+4 -4
drivers/net/wireless/ipw2x00/ipw2200.c
··· 11472 11472 bg_band->channels[i].max_power = geo->bg[i].max_power; 11473 11473 if (geo->bg[i].flags & LIBIPW_CH_PASSIVE_ONLY) 11474 11474 bg_band->channels[i].flags |= 11475 - IEEE80211_CHAN_PASSIVE_SCAN; 11475 + IEEE80211_CHAN_NO_IR; 11476 11476 if (geo->bg[i].flags & LIBIPW_CH_NO_IBSS) 11477 11477 bg_band->channels[i].flags |= 11478 - IEEE80211_CHAN_NO_IBSS; 11478 + IEEE80211_CHAN_NO_IR; 11479 11479 if (geo->bg[i].flags & LIBIPW_CH_RADAR_DETECT) 11480 11480 bg_band->channels[i].flags |= 11481 11481 IEEE80211_CHAN_RADAR; ··· 11511 11511 a_band->channels[i].max_power = geo->a[i].max_power; 11512 11512 if (geo->a[i].flags & LIBIPW_CH_PASSIVE_ONLY) 11513 11513 a_band->channels[i].flags |= 11514 - IEEE80211_CHAN_PASSIVE_SCAN; 11514 + IEEE80211_CHAN_NO_IR; 11515 11515 if (geo->a[i].flags & LIBIPW_CH_NO_IBSS) 11516 11516 a_band->channels[i].flags |= 11517 - IEEE80211_CHAN_NO_IBSS; 11517 + IEEE80211_CHAN_NO_IR; 11518 11518 if (geo->a[i].flags & LIBIPW_CH_RADAR_DETECT) 11519 11519 a_band->channels[i].flags |= 11520 11520 IEEE80211_CHAN_RADAR;
+1 -1
drivers/net/wireless/iwlegacy/3945-mac.c
··· 1595 1595 * and use long active_dwell time. 1596 1596 */ 1597 1597 if (!is_active || il_is_channel_passive(ch_info) || 1598 - (chan->flags & IEEE80211_CHAN_PASSIVE_SCAN)) { 1598 + (chan->flags & IEEE80211_CHAN_NO_IR)) { 1599 1599 scan_ch->type = 0; /* passive */ 1600 1600 if (IL_UCODE_API(il->ucode_ver) == 1) 1601 1601 scan_ch->active_dwell =
+1 -1
drivers/net/wireless/iwlegacy/4965-mac.c
··· 805 805 } 806 806 807 807 if (!is_active || il_is_channel_passive(ch_info) || 808 - (chan->flags & IEEE80211_CHAN_PASSIVE_SCAN)) 808 + (chan->flags & IEEE80211_CHAN_NO_IR)) 809 809 scan_ch->type = SCAN_CHANNEL_TYPE_PASSIVE; 810 810 else 811 811 scan_ch->type = SCAN_CHANNEL_TYPE_ACTIVE;
+2 -2
drivers/net/wireless/iwlegacy/common.c
··· 3445 3445 3446 3446 if (il_is_channel_valid(ch)) { 3447 3447 if (!(ch->flags & EEPROM_CHANNEL_IBSS)) 3448 - geo_ch->flags |= IEEE80211_CHAN_NO_IBSS; 3448 + geo_ch->flags |= IEEE80211_CHAN_NO_IR; 3449 3449 3450 3450 if (!(ch->flags & EEPROM_CHANNEL_ACTIVE)) 3451 - geo_ch->flags |= IEEE80211_CHAN_PASSIVE_SCAN; 3451 + geo_ch->flags |= IEEE80211_CHAN_NO_IR; 3452 3452 3453 3453 if (ch->flags & EEPROM_CHANNEL_RADAR) 3454 3454 geo_ch->flags |= IEEE80211_CHAN_RADAR;
+4 -4
drivers/net/wireless/iwlegacy/debug.c
··· 567 567 flags & IEEE80211_CHAN_RADAR ? 568 568 " (IEEE 802.11h required)" : "", 569 569 ((channels[i]. 570 - flags & IEEE80211_CHAN_NO_IBSS) || 570 + flags & IEEE80211_CHAN_NO_IR) || 571 571 (channels[i]. 572 572 flags & IEEE80211_CHAN_RADAR)) ? "" : 573 573 ", IBSS", 574 574 channels[i]. 575 - flags & IEEE80211_CHAN_PASSIVE_SCAN ? 575 + flags & IEEE80211_CHAN_NO_IR ? 576 576 "passive only" : "active/passive"); 577 577 } 578 578 supp_band = il_get_hw_mode(il, IEEE80211_BAND_5GHZ); ··· 594 594 flags & IEEE80211_CHAN_RADAR ? 595 595 " (IEEE 802.11h required)" : "", 596 596 ((channels[i]. 597 - flags & IEEE80211_CHAN_NO_IBSS) || 597 + flags & IEEE80211_CHAN_NO_IR) || 598 598 (channels[i]. 599 599 flags & IEEE80211_CHAN_RADAR)) ? "" : 600 600 ", IBSS", 601 601 channels[i]. 602 - flags & IEEE80211_CHAN_PASSIVE_SCAN ? 602 + flags & IEEE80211_CHAN_NO_IR ? 603 603 "passive only" : "active/passive"); 604 604 } 605 605 ret = simple_read_from_buffer(user_buf, count, ppos, buf, pos);
+4 -4
drivers/net/wireless/iwlwifi/dvm/debugfs.c
··· 352 352 channels[i].max_power, 353 353 channels[i].flags & IEEE80211_CHAN_RADAR ? 354 354 " (IEEE 802.11h required)" : "", 355 - ((channels[i].flags & IEEE80211_CHAN_NO_IBSS) 355 + ((channels[i].flags & IEEE80211_CHAN_NO_IR) 356 356 || (channels[i].flags & 357 357 IEEE80211_CHAN_RADAR)) ? "" : 358 358 ", IBSS", 359 359 channels[i].flags & 360 - IEEE80211_CHAN_PASSIVE_SCAN ? 360 + IEEE80211_CHAN_NO_IR ? 361 361 "passive only" : "active/passive"); 362 362 } 363 363 supp_band = iwl_get_hw_mode(priv, IEEE80211_BAND_5GHZ); ··· 375 375 channels[i].max_power, 376 376 channels[i].flags & IEEE80211_CHAN_RADAR ? 377 377 " (IEEE 802.11h required)" : "", 378 - ((channels[i].flags & IEEE80211_CHAN_NO_IBSS) 378 + ((channels[i].flags & IEEE80211_CHAN_NO_IR) 379 379 || (channels[i].flags & 380 380 IEEE80211_CHAN_RADAR)) ? "" : 381 381 ", IBSS", 382 382 channels[i].flags & 383 - IEEE80211_CHAN_PASSIVE_SCAN ? 383 + IEEE80211_CHAN_NO_IR ? 384 384 "passive only" : "active/passive"); 385 385 } 386 386 ret = simple_read_from_buffer(user_buf, count, ppos, buf, pos);
+1 -1
drivers/net/wireless/iwlwifi/dvm/scan.c
··· 544 544 channel = chan->hw_value; 545 545 scan_ch->channel = cpu_to_le16(channel); 546 546 547 - if (!is_active || (chan->flags & IEEE80211_CHAN_PASSIVE_SCAN)) 547 + if (!is_active || (chan->flags & IEEE80211_CHAN_NO_IR)) 548 548 scan_ch->type = SCAN_CHANNEL_TYPE_PASSIVE; 549 549 else 550 550 scan_ch->type = SCAN_CHANNEL_TYPE_ACTIVE;
+2 -2
drivers/net/wireless/iwlwifi/iwl-eeprom-parse.c
··· 614 614 channel->flags = IEEE80211_CHAN_NO_HT40; 615 615 616 616 if (!(eeprom_ch->flags & EEPROM_CHANNEL_IBSS)) 617 - channel->flags |= IEEE80211_CHAN_NO_IBSS; 617 + channel->flags |= IEEE80211_CHAN_NO_IR; 618 618 619 619 if (!(eeprom_ch->flags & EEPROM_CHANNEL_ACTIVE)) 620 - channel->flags |= IEEE80211_CHAN_PASSIVE_SCAN; 620 + channel->flags |= IEEE80211_CHAN_NO_IR; 621 621 622 622 if (eeprom_ch->flags & EEPROM_CHANNEL_RADAR) 623 623 channel->flags |= IEEE80211_CHAN_RADAR;
+2 -2
drivers/net/wireless/iwlwifi/iwl-nvm-parse.c
··· 223 223 channel->flags |= IEEE80211_CHAN_NO_160MHZ; 224 224 225 225 if (!(ch_flags & NVM_CHANNEL_IBSS)) 226 - channel->flags |= IEEE80211_CHAN_NO_IBSS; 226 + channel->flags |= IEEE80211_CHAN_NO_IR; 227 227 228 228 if (!(ch_flags & NVM_CHANNEL_ACTIVE)) 229 - channel->flags |= IEEE80211_CHAN_PASSIVE_SCAN; 229 + channel->flags |= IEEE80211_CHAN_NO_IR; 230 230 231 231 if (ch_flags & NVM_CHANNEL_RADAR) 232 232 channel->flags |= IEEE80211_CHAN_RADAR;
+2 -2
drivers/net/wireless/iwlwifi/mvm/scan.c
··· 192 192 for (i = 0; i < cmd->channel_count; i++) { 193 193 chan->channel = cpu_to_le16(req->channels[i]->hw_value); 194 194 chan->type = cpu_to_le32(type); 195 - if (req->channels[i]->flags & IEEE80211_CHAN_PASSIVE_SCAN) 195 + if (req->channels[i]->flags & IEEE80211_CHAN_NO_IR) 196 196 chan->type &= cpu_to_le32(~SCAN_CHANNEL_TYPE_ACTIVE); 197 197 chan->active_dwell = cpu_to_le16(active_dwell); 198 198 chan->passive_dwell = cpu_to_le16(passive_dwell); ··· 642 642 channels->iter_count[index] = cpu_to_le16(1); 643 643 channels->iter_interval[index] = 0; 644 644 645 - if (!(s_band->channels[i].flags & IEEE80211_CHAN_PASSIVE_SCAN)) 645 + if (!(s_band->channels[i].flags & IEEE80211_CHAN_NO_IR)) 646 646 channels->type[index] |= 647 647 cpu_to_le32(IWL_SCAN_OFFLOAD_CHANNEL_ACTIVE); 648 648
+2 -2
drivers/net/wireless/mac80211_hwsim.c
··· 159 159 .reg_rules = { 160 160 REG_RULE(2412-10, 2462+10, 40, 0, 20, 0), 161 161 REG_RULE(5725-10, 5850+10, 40, 0, 30, 162 - NL80211_RRF_PASSIVE_SCAN | NL80211_RRF_NO_IBSS), 162 + NL80211_RRF_NO_IR), 163 163 } 164 164 }; 165 165 ··· 1485 1485 req->channels[hwsim->scan_chan_idx]->center_freq); 1486 1486 1487 1487 hwsim->tmp_chan = req->channels[hwsim->scan_chan_idx]; 1488 - if (hwsim->tmp_chan->flags & IEEE80211_CHAN_PASSIVE_SCAN || 1488 + if (hwsim->tmp_chan->flags & IEEE80211_CHAN_NO_IR || 1489 1489 !req->n_ssids) { 1490 1490 dwell = 120; 1491 1491 } else {
+7 -7
drivers/net/wireless/mwifiex/cfg80211.c
··· 50 50 REG_RULE(2412-10, 2462+10, 40, 3, 20, 0), 51 51 /* Channel 12 - 13 */ 52 52 REG_RULE(2467-10, 2472+10, 20, 3, 20, 53 - NL80211_RRF_PASSIVE_SCAN | NL80211_RRF_NO_IBSS), 53 + NL80211_RRF_NO_IR), 54 54 /* Channel 14 */ 55 55 REG_RULE(2484-10, 2484+10, 20, 3, 20, 56 - NL80211_RRF_PASSIVE_SCAN | NL80211_RRF_NO_IBSS | 56 + NL80211_RRF_NO_IR | 57 57 NL80211_RRF_NO_OFDM), 58 58 /* Channel 36 - 48 */ 59 59 REG_RULE(5180-10, 5240+10, 40, 3, 20, 60 - NL80211_RRF_PASSIVE_SCAN | NL80211_RRF_NO_IBSS), 60 + NL80211_RRF_NO_IR), 61 61 /* Channel 149 - 165 */ 62 62 REG_RULE(5745-10, 5825+10, 40, 3, 20, 63 - NL80211_RRF_PASSIVE_SCAN | NL80211_RRF_NO_IBSS), 63 + NL80211_RRF_NO_IR), 64 64 /* Channel 52 - 64 */ 65 65 REG_RULE(5260-10, 5320+10, 40, 3, 30, 66 - NL80211_RRF_PASSIVE_SCAN | NL80211_RRF_NO_IBSS | 66 + NL80211_RRF_NO_IR | 67 67 NL80211_RRF_DFS), 68 68 /* Channel 100 - 140 */ 69 69 REG_RULE(5500-10, 5700+10, 40, 3, 30, 70 - NL80211_RRF_PASSIVE_SCAN | NL80211_RRF_NO_IBSS | 70 + NL80211_RRF_NO_IR | 71 71 NL80211_RRF_DFS), 72 72 } 73 73 }; ··· 1968 1968 user_scan_cfg->chan_list[i].chan_number = chan->hw_value; 1969 1969 user_scan_cfg->chan_list[i].radio_type = chan->band; 1970 1970 1971 - if (chan->flags & IEEE80211_CHAN_PASSIVE_SCAN) 1971 + if (chan->flags & IEEE80211_CHAN_NO_IR) 1972 1972 user_scan_cfg->chan_list[i].scan_type = 1973 1973 MWIFIEX_SCAN_TYPE_PASSIVE; 1974 1974 else
+2 -2
drivers/net/wireless/mwifiex/scan.c
··· 515 515 scan_chan_list[chan_idx].max_scan_time = 516 516 cpu_to_le16((u16) user_scan_in-> 517 517 chan_list[0].scan_time); 518 - else if (ch->flags & IEEE80211_CHAN_PASSIVE_SCAN) 518 + else if (ch->flags & IEEE80211_CHAN_NO_IR) 519 519 scan_chan_list[chan_idx].max_scan_time = 520 520 cpu_to_le16(adapter->passive_scan_time); 521 521 else 522 522 scan_chan_list[chan_idx].max_scan_time = 523 523 cpu_to_le16(adapter->active_scan_time); 524 524 525 - if (ch->flags & IEEE80211_CHAN_PASSIVE_SCAN) 525 + if (ch->flags & IEEE80211_CHAN_NO_IR) 526 526 scan_chan_list[chan_idx].chan_scan_mode_bitmap 527 527 |= MWIFIEX_PASSIVE_SCAN; 528 528 else
+19 -29
drivers/net/wireless/rtlwifi/regd.c
··· 59 59 */ 60 60 #define RTL819x_2GHZ_CH12_13 \ 61 61 REG_RULE(2467-10, 2472+10, 40, 0, 20,\ 62 - NL80211_RRF_PASSIVE_SCAN) 62 + NL80211_RRF_NO_IR) 63 63 64 64 #define RTL819x_2GHZ_CH14 \ 65 65 REG_RULE(2484-10, 2484+10, 40, 0, 20, \ 66 - NL80211_RRF_PASSIVE_SCAN | \ 67 - NL80211_RRF_NO_OFDM) 66 + NL80211_RRF_NO_IR | NL80211_RRF_NO_OFDM) 68 67 69 68 /* 5G chan 36 - chan 64*/ 70 69 #define RTL819x_5GHZ_5150_5350 \ 71 70 REG_RULE(5150-10, 5350+10, 40, 0, 30, \ 72 - NL80211_RRF_PASSIVE_SCAN | \ 73 - NL80211_RRF_NO_IBSS) 71 + NL80211_RRF_NO_IR) 74 72 75 73 /* 5G chan 100 - chan 165*/ 76 74 #define RTL819x_5GHZ_5470_5850 \ 77 75 REG_RULE(5470-10, 5850+10, 40, 0, 30, \ 78 - NL80211_RRF_PASSIVE_SCAN | \ 79 - NL80211_RRF_NO_IBSS) 76 + NL80211_RRF_NO_IR) 80 77 81 78 /* 5G chan 149 - chan 165*/ 82 79 #define RTL819x_5GHZ_5725_5850 \ 83 80 REG_RULE(5725-10, 5850+10, 40, 0, 30, \ 84 - NL80211_RRF_PASSIVE_SCAN | \ 85 - NL80211_RRF_NO_IBSS) 81 + NL80211_RRF_NO_IR) 86 82 87 83 #define RTL819x_5GHZ_ALL \ 88 84 (RTL819x_5GHZ_5150_5350, RTL819x_5GHZ_5470_5850) ··· 181 185 *regulatory_hint(). 182 186 */ 183 187 184 - if (!(reg_rule->flags & NL80211_RRF_NO_IBSS)) 185 - ch->flags &= ~IEEE80211_CHAN_NO_IBSS; 186 - if (!(reg_rule-> 187 - flags & NL80211_RRF_PASSIVE_SCAN)) 188 - ch->flags &= 189 - ~IEEE80211_CHAN_PASSIVE_SCAN; 188 + if (!(reg_rule->flags & NL80211_RRF_NO_IR)) 189 + ch->flags &= ~IEEE80211_CHAN_NO_IR; 190 190 } else { 191 191 if (ch->beacon_found) 192 - ch->flags &= ~(IEEE80211_CHAN_NO_IBSS | 193 - IEEE80211_CHAN_PASSIVE_SCAN); 192 + ch->flags &= ~IEEE80211_CHAN_NO_IR; 194 193 } 195 194 } 196 195 } ··· 210 219 */ 211 220 if (initiator != NL80211_REGDOM_SET_BY_COUNTRY_IE) { 212 221 ch = &sband->channels[11]; /* CH 12 */ 213 - if (ch->flags & IEEE80211_CHAN_PASSIVE_SCAN) 214 - ch->flags &= ~IEEE80211_CHAN_PASSIVE_SCAN; 222 + if (ch->flags & IEEE80211_CHAN_NO_IR) 223 + ch->flags &= ~IEEE80211_CHAN_NO_IR; 215 224 ch = &sband->channels[12]; /* CH 13 */ 216 - if (ch->flags & IEEE80211_CHAN_PASSIVE_SCAN) 217 - ch->flags &= ~IEEE80211_CHAN_PASSIVE_SCAN; 225 + if (ch->flags & IEEE80211_CHAN_NO_IR) 226 + ch->flags &= ~IEEE80211_CHAN_NO_IR; 218 227 return; 219 228 } 220 229 ··· 228 237 ch = &sband->channels[11]; /* CH 12 */ 229 238 reg_rule = freq_reg_info(wiphy, ch->center_freq); 230 239 if (!IS_ERR(reg_rule)) { 231 - if (!(reg_rule->flags & NL80211_RRF_PASSIVE_SCAN)) 232 - if (ch->flags & IEEE80211_CHAN_PASSIVE_SCAN) 233 - ch->flags &= ~IEEE80211_CHAN_PASSIVE_SCAN; 240 + if (!(reg_rule->flags & NL80211_RRF_NO_IR)) 241 + if (ch->flags & IEEE80211_CHAN_NO_IR) 242 + ch->flags &= ~IEEE80211_CHAN_NO_IR; 234 243 } 235 244 236 245 ch = &sband->channels[12]; /* CH 13 */ 237 246 reg_rule = freq_reg_info(wiphy, ch->center_freq); 238 247 if (!IS_ERR(reg_rule)) { 239 - if (!(reg_rule->flags & NL80211_RRF_PASSIVE_SCAN)) 240 - if (ch->flags & IEEE80211_CHAN_PASSIVE_SCAN) 241 - ch->flags &= ~IEEE80211_CHAN_PASSIVE_SCAN; 248 + if (!(reg_rule->flags & NL80211_RRF_NO_IR)) 249 + if (ch->flags & IEEE80211_CHAN_NO_IR) 250 + ch->flags &= ~IEEE80211_CHAN_NO_IR; 242 251 } 243 252 } 244 253 ··· 275 284 */ 276 285 if (!(ch->flags & IEEE80211_CHAN_DISABLED)) 277 286 ch->flags |= IEEE80211_CHAN_RADAR | 278 - IEEE80211_CHAN_NO_IBSS | 279 - IEEE80211_CHAN_PASSIVE_SCAN; 287 + IEEE80211_CHAN_NO_IR; 280 288 } 281 289 } 282 290
+1 -1
drivers/net/wireless/ti/wl12xx/scan.c
··· 47 47 * In active scans, we only scan channels not 48 48 * marked as passive. 49 49 */ 50 - (passive || !(flags & IEEE80211_CHAN_PASSIVE_SCAN))) { 50 + (passive || !(flags & IEEE80211_CHAN_NO_IR))) { 51 51 wl1271_debug(DEBUG_SCAN, "band %d, center_freq %d ", 52 52 req->channels[i]->band, 53 53 req->channels[i]->center_freq);
+1 -1
drivers/net/wireless/ti/wlcore/cmd.c
··· 1688 1688 1689 1689 if (channel->flags & (IEEE80211_CHAN_DISABLED | 1690 1690 IEEE80211_CHAN_RADAR | 1691 - IEEE80211_CHAN_PASSIVE_SCAN)) 1691 + IEEE80211_CHAN_NO_IR)) 1692 1692 continue; 1693 1693 1694 1694 ch_bit_idx = wlcore_get_reg_conf_ch_idx(b, ch);
+1 -2
drivers/net/wireless/ti/wlcore/main.c
··· 91 91 continue; 92 92 93 93 if (ch->flags & IEEE80211_CHAN_RADAR) 94 - ch->flags |= IEEE80211_CHAN_NO_IBSS | 95 - IEEE80211_CHAN_PASSIVE_SCAN; 94 + ch->flags |= IEEE80211_CHAN_NO_IR; 96 95 97 96 } 98 97
+5 -7
drivers/net/wireless/ti/wlcore/scan.c
··· 188 188 flags = req_channels[i]->flags; 189 189 190 190 if (force_passive) 191 - flags |= IEEE80211_CHAN_PASSIVE_SCAN; 191 + flags |= IEEE80211_CHAN_NO_IR; 192 192 193 193 if ((req_channels[i]->band == band) && 194 194 !(flags & IEEE80211_CHAN_DISABLED) && 195 195 (!!(flags & IEEE80211_CHAN_RADAR) == radar) && 196 196 /* if radar is set, we ignore the passive flag */ 197 197 (radar || 198 - !!(flags & IEEE80211_CHAN_PASSIVE_SCAN) == passive)) { 199 - 200 - 198 + !!(flags & IEEE80211_CHAN_NO_IR) == passive)) { 201 199 if (flags & IEEE80211_CHAN_RADAR) { 202 200 channels[j].flags |= SCAN_CHANNEL_FLAGS_DFS; 203 201 ··· 218 220 (band == IEEE80211_BAND_2GHZ) && 219 221 (channels[j].channel >= 12) && 220 222 (channels[j].channel <= 14) && 221 - (flags & IEEE80211_CHAN_PASSIVE_SCAN) && 223 + (flags & IEEE80211_CHAN_NO_IR) && 222 224 !force_passive) { 223 225 /* pactive channels treated as DFS */ 224 226 channels[j].flags = SCAN_CHANNEL_FLAGS_DFS; ··· 241 243 max_dwell_time_active, 242 244 flags & IEEE80211_CHAN_RADAR ? 243 245 ", DFS" : "", 244 - flags & IEEE80211_CHAN_PASSIVE_SCAN ? 245 - ", PASSIVE" : ""); 246 + flags & IEEE80211_CHAN_NO_IR ? 247 + ", NO-IR" : ""); 246 248 j++; 247 249 } 248 250 }
+4 -5
include/net/cfg80211.h
··· 91 91 * Channel flags set by the regulatory control code. 92 92 * 93 93 * @IEEE80211_CHAN_DISABLED: This channel is disabled. 94 - * @IEEE80211_CHAN_PASSIVE_SCAN: Only passive scanning is permitted 95 - * on this channel. 96 - * @IEEE80211_CHAN_NO_IBSS: IBSS is not allowed on this channel. 94 + * @IEEE80211_CHAN_NO_IR: do not initiate radiation, this includes 95 + * sending probe requests or beaconing. 97 96 * @IEEE80211_CHAN_RADAR: Radar detection is required on this channel. 98 97 * @IEEE80211_CHAN_NO_HT40PLUS: extension channel above this channel 99 98 * is not permitted. ··· 112 113 */ 113 114 enum ieee80211_channel_flags { 114 115 IEEE80211_CHAN_DISABLED = 1<<0, 115 - IEEE80211_CHAN_PASSIVE_SCAN = 1<<1, 116 - IEEE80211_CHAN_NO_IBSS = 1<<2, 116 + IEEE80211_CHAN_NO_IR = 1<<1, 117 + /* hole at 1<<2 */ 117 118 IEEE80211_CHAN_RADAR = 1<<3, 118 119 IEEE80211_CHAN_NO_HT40PLUS = 1<<4, 119 120 IEEE80211_CHAN_NO_HT40MINUS = 1<<5,
+20 -10
include/uapi/linux/nl80211.h
··· 2231 2231 * @NL80211_FREQUENCY_ATTR_FREQ: Frequency in MHz 2232 2232 * @NL80211_FREQUENCY_ATTR_DISABLED: Channel is disabled in current 2233 2233 * regulatory domain. 2234 - * @NL80211_FREQUENCY_ATTR_PASSIVE_SCAN: Only passive scanning is 2235 - * permitted on this channel in current regulatory domain. 2236 - * @NL80211_FREQUENCY_ATTR_NO_IBSS: IBSS networks are not permitted 2237 - * on this channel in current regulatory domain. 2234 + * @NL80211_FREQUENCY_ATTR_NO_IR: no mechanisms that initiate radiation 2235 + * are permitted on this channel, this includes sending probe 2236 + * requests, or modes of operation that require beaconing. 2238 2237 * @NL80211_FREQUENCY_ATTR_RADAR: Radar detection is mandatory 2239 2238 * on this channel in current regulatory domain. 2240 2239 * @NL80211_FREQUENCY_ATTR_MAX_TX_POWER: Maximum transmission power in mBm ··· 2260 2261 __NL80211_FREQUENCY_ATTR_INVALID, 2261 2262 NL80211_FREQUENCY_ATTR_FREQ, 2262 2263 NL80211_FREQUENCY_ATTR_DISABLED, 2263 - NL80211_FREQUENCY_ATTR_PASSIVE_SCAN, 2264 - NL80211_FREQUENCY_ATTR_NO_IBSS, 2264 + NL80211_FREQUENCY_ATTR_NO_IR, 2265 + __NL80211_FREQUENCY_ATTR_NO_IBSS, 2265 2266 NL80211_FREQUENCY_ATTR_RADAR, 2266 2267 NL80211_FREQUENCY_ATTR_MAX_TX_POWER, 2267 2268 NL80211_FREQUENCY_ATTR_DFS_STATE, ··· 2277 2278 }; 2278 2279 2279 2280 #define NL80211_FREQUENCY_ATTR_MAX_TX_POWER NL80211_FREQUENCY_ATTR_MAX_TX_POWER 2281 + #define NL80211_FREQUENCY_ATTR_PASSIVE_SCAN NL80211_FREQUENCY_ATTR_NO_IR 2282 + #define NL80211_FREQUENCY_ATTR_NO_IBSS NL80211_FREQUENCY_ATTR_NO_IR 2283 + #define NL80211_FREQUENCY_ATTR_NO_IR NL80211_FREQUENCY_ATTR_NO_IR 2280 2284 2281 2285 /** 2282 2286 * enum nl80211_bitrate_attr - bitrate attributes ··· 2422 2420 * @NL80211_RRF_DFS: DFS support is required to be used 2423 2421 * @NL80211_RRF_PTP_ONLY: this is only for Point To Point links 2424 2422 * @NL80211_RRF_PTMP_ONLY: this is only for Point To Multi Point links 2425 - * @NL80211_RRF_PASSIVE_SCAN: passive scan is required 2426 - * @NL80211_RRF_NO_IBSS: no IBSS is allowed 2423 + * @NL80211_RRF_NO_IR: no mechanisms that initiate radiation are allowed, 2424 + * this includes probe requests or modes of operation that require 2425 + * beaconing. 2427 2426 */ 2428 2427 enum nl80211_reg_rule_flags { 2429 2428 NL80211_RRF_NO_OFDM = 1<<0, ··· 2434 2431 NL80211_RRF_DFS = 1<<4, 2435 2432 NL80211_RRF_PTP_ONLY = 1<<5, 2436 2433 NL80211_RRF_PTMP_ONLY = 1<<6, 2437 - NL80211_RRF_PASSIVE_SCAN = 1<<7, 2438 - NL80211_RRF_NO_IBSS = 1<<8, 2434 + NL80211_RRF_NO_IR = 1<<7, 2435 + __NL80211_RRF_NO_IBSS = 1<<8, 2439 2436 }; 2437 + 2438 + #define NL80211_RRF_PASSIVE_SCAN NL80211_RRF_NO_IR 2439 + #define NL80211_RRF_NO_IBSS NL80211_RRF_NO_IR 2440 + #define NL80211_RRF_NO_IR NL80211_RRF_NO_IR 2441 + 2442 + /* For backport compatibility with older userspace */ 2443 + #define NL80211_RRF_NO_IR_ALL (NL80211_RRF_NO_IR | __NL80211_RRF_NO_IBSS) 2440 2444 2441 2445 /** 2442 2446 * enum nl80211_dfs_regions - regulatory DFS regions
+5 -5
net/mac80211/scan.c
··· 526 526 ieee80211_hw_config(local, 0); 527 527 528 528 if ((req->channels[0]->flags & 529 - IEEE80211_CHAN_PASSIVE_SCAN) || 529 + IEEE80211_CHAN_NO_IR) || 530 530 !local->scan_req->n_ssids) { 531 531 next_delay = IEEE80211_PASSIVE_CHANNEL_TIME; 532 532 } else { ··· 572 572 * TODO: channel switching also consumes quite some time, 573 573 * add that delay as well to get a better estimation 574 574 */ 575 - if (chan->flags & IEEE80211_CHAN_PASSIVE_SCAN) 575 + if (chan->flags & IEEE80211_CHAN_NO_IR) 576 576 return IEEE80211_PASSIVE_CHANNEL_TIME; 577 577 return IEEE80211_PROBE_DELAY + IEEE80211_CHANNEL_TIME; 578 578 } ··· 696 696 * 697 697 * In any case, it is not necessary for a passive scan. 698 698 */ 699 - if (chan->flags & IEEE80211_CHAN_PASSIVE_SCAN || 699 + if (chan->flags & IEEE80211_CHAN_NO_IR || 700 700 !local->scan_req->n_ssids) { 701 701 *next_delay = IEEE80211_PASSIVE_CHANNEL_TIME; 702 702 local->next_scan_state = SCAN_DECISION; ··· 881 881 struct ieee80211_channel *tmp_ch = 882 882 &local->hw.wiphy->bands[band]->channels[i]; 883 883 884 - if (tmp_ch->flags & (IEEE80211_CHAN_NO_IBSS | 884 + if (tmp_ch->flags & (IEEE80211_CHAN_NO_IR | 885 885 IEEE80211_CHAN_DISABLED)) 886 886 continue; 887 887 ··· 895 895 896 896 local->int_scan_req->n_channels = n_ch; 897 897 } else { 898 - if (WARN_ON_ONCE(chan->flags & (IEEE80211_CHAN_NO_IBSS | 898 + if (WARN_ON_ONCE(chan->flags & (IEEE80211_CHAN_NO_IR | 899 899 IEEE80211_CHAN_DISABLED))) 900 900 goto unlock; 901 901
+1 -2
net/mac80211/tx.c
··· 1724 1724 * radar detection by itself. We can do that later by adding a 1725 1725 * monitor flag interfaces used for AP support. 1726 1726 */ 1727 - if ((chan->flags & (IEEE80211_CHAN_NO_IBSS | IEEE80211_CHAN_RADAR | 1728 - IEEE80211_CHAN_PASSIVE_SCAN))) 1727 + if ((chan->flags & (IEEE80211_CHAN_NO_IR | IEEE80211_CHAN_RADAR))) 1729 1728 goto fail_rcu; 1730 1729 1731 1730 ieee80211_xmit(sdata, skb, chan->band);
+1 -2
net/wireless/chan.c
··· 467 467 468 468 res = cfg80211_chandef_usable(wiphy, chandef, 469 469 IEEE80211_CHAN_DISABLED | 470 - IEEE80211_CHAN_PASSIVE_SCAN | 471 - IEEE80211_CHAN_NO_IBSS | 470 + IEEE80211_CHAN_NO_IR | 472 471 IEEE80211_CHAN_RADAR); 473 472 474 473 trace_cfg80211_return_bool(res);
+5 -2
net/wireless/genregdb.awk
··· 107 107 } else if (flagarray[arg] == "PTMP-ONLY") { 108 108 flags = flags "\n\t\t\tNL80211_RRF_PTMP_ONLY | " 109 109 } else if (flagarray[arg] == "PASSIVE-SCAN") { 110 - flags = flags "\n\t\t\tNL80211_RRF_PASSIVE_SCAN | " 110 + flags = flags "\n\t\t\tNL80211_RRF_NO_IR | " 111 111 } else if (flagarray[arg] == "NO-IBSS") { 112 - flags = flags "\n\t\t\tNL80211_RRF_NO_IBSS | " 112 + flags = flags "\n\t\t\tNL80211_RRF_NO_IR | " 113 + } else if (flagarray[arg] == "NO-IR") { 114 + flags = flags "\n\t\t\tNL80211_RRF_NO_IR | " 113 115 } 116 + 114 117 } 115 118 flags = flags "0" 116 119 printf "\t\tREG_RULE(%d, %d, %d, %d, %d, %s),\n", start, end, bw, gain, power, flags
+2 -2
net/wireless/ibss.c
··· 274 274 275 275 for (i = 0; i < sband->n_channels; i++) { 276 276 chan = &sband->channels[i]; 277 - if (chan->flags & IEEE80211_CHAN_NO_IBSS) 277 + if (chan->flags & IEEE80211_CHAN_NO_IR) 278 278 continue; 279 279 if (chan->flags & IEEE80211_CHAN_DISABLED) 280 280 continue; ··· 345 345 chan = ieee80211_get_channel(wdev->wiphy, freq); 346 346 if (!chan) 347 347 return -EINVAL; 348 - if (chan->flags & IEEE80211_CHAN_NO_IBSS || 348 + if (chan->flags & IEEE80211_CHAN_NO_IR || 349 349 chan->flags & IEEE80211_CHAN_DISABLED) 350 350 return -EINVAL; 351 351 }
+1 -2
net/wireless/mesh.c
··· 141 141 142 142 for (i = 0; i < sband->n_channels; i++) { 143 143 chan = &sband->channels[i]; 144 - if (chan->flags & (IEEE80211_CHAN_NO_IBSS | 145 - IEEE80211_CHAN_PASSIVE_SCAN | 144 + if (chan->flags & (IEEE80211_CHAN_NO_IR | 146 145 IEEE80211_CHAN_DISABLED | 147 146 IEEE80211_CHAN_RADAR)) 148 147 continue;
+6 -6
net/wireless/nl80211.c
··· 545 545 if ((chan->flags & IEEE80211_CHAN_DISABLED) && 546 546 nla_put_flag(msg, NL80211_FREQUENCY_ATTR_DISABLED)) 547 547 goto nla_put_failure; 548 - if ((chan->flags & IEEE80211_CHAN_PASSIVE_SCAN) && 549 - nla_put_flag(msg, NL80211_FREQUENCY_ATTR_PASSIVE_SCAN)) 550 - goto nla_put_failure; 551 - if ((chan->flags & IEEE80211_CHAN_NO_IBSS) && 552 - nla_put_flag(msg, NL80211_FREQUENCY_ATTR_NO_IBSS)) 553 - goto nla_put_failure; 548 + if (chan->flags & IEEE80211_CHAN_NO_IR) { 549 + if (nla_put_flag(msg, NL80211_FREQUENCY_ATTR_NO_IR)) 550 + goto nla_put_failure; 551 + if (nla_put_flag(msg, __NL80211_FREQUENCY_ATTR_NO_IBSS)) 552 + goto nla_put_failure; 553 + } 554 554 if (chan->flags & IEEE80211_CHAN_RADAR) { 555 555 if (nla_put_flag(msg, NL80211_FREQUENCY_ATTR_RADAR)) 556 556 goto nla_put_failure;
+10 -23
net/wireless/reg.c
··· 163 163 REG_RULE(2412-10, 2462+10, 40, 6, 20, 0), 164 164 /* IEEE 802.11b/g, channels 12..13. */ 165 165 REG_RULE(2467-10, 2472+10, 40, 6, 20, 166 - NL80211_RRF_PASSIVE_SCAN | 167 - NL80211_RRF_NO_IBSS), 166 + NL80211_RRF_NO_IR), 168 167 /* IEEE 802.11 channel 14 - Only JP enables 169 168 * this and for 802.11b only */ 170 169 REG_RULE(2484-10, 2484+10, 20, 6, 20, 171 - NL80211_RRF_PASSIVE_SCAN | 172 - NL80211_RRF_NO_IBSS | 170 + NL80211_RRF_NO_IR | 173 171 NL80211_RRF_NO_OFDM), 174 172 /* IEEE 802.11a, channel 36..48 */ 175 173 REG_RULE(5180-10, 5240+10, 160, 6, 20, 176 - NL80211_RRF_PASSIVE_SCAN | 177 - NL80211_RRF_NO_IBSS), 174 + NL80211_RRF_NO_IR), 178 175 179 176 /* IEEE 802.11a, channel 52..64 - DFS required */ 180 177 REG_RULE(5260-10, 5320+10, 160, 6, 20, 181 - NL80211_RRF_PASSIVE_SCAN | 182 - NL80211_RRF_NO_IBSS | 178 + NL80211_RRF_NO_IR | 183 179 NL80211_RRF_DFS), 184 180 185 181 /* IEEE 802.11a, channel 100..144 - DFS required */ 186 182 REG_RULE(5500-10, 5720+10, 160, 6, 20, 187 - NL80211_RRF_PASSIVE_SCAN | 188 - NL80211_RRF_NO_IBSS | 183 + NL80211_RRF_NO_IR | 189 184 NL80211_RRF_DFS), 190 185 191 186 /* IEEE 802.11a, channel 149..165 */ 192 187 REG_RULE(5745-10, 5825+10, 80, 6, 20, 193 - NL80211_RRF_PASSIVE_SCAN | 194 - NL80211_RRF_NO_IBSS), 188 + NL80211_RRF_NO_IR), 195 189 196 190 /* IEEE 802.11ad (60gHz), channels 1..3 */ 197 191 REG_RULE(56160+2160*1-1080, 56160+2160*3+1080, 2160, 0, 0, 0), ··· 692 698 static u32 map_regdom_flags(u32 rd_flags) 693 699 { 694 700 u32 channel_flags = 0; 695 - if (rd_flags & NL80211_RRF_PASSIVE_SCAN) 696 - channel_flags |= IEEE80211_CHAN_PASSIVE_SCAN; 697 - if (rd_flags & NL80211_RRF_NO_IBSS) 698 - channel_flags |= IEEE80211_CHAN_NO_IBSS; 701 + if (rd_flags & NL80211_RRF_NO_IR_ALL) 702 + channel_flags |= IEEE80211_CHAN_NO_IR; 699 703 if (rd_flags & NL80211_RRF_DFS) 700 704 channel_flags |= IEEE80211_CHAN_RADAR; 701 705 if (rd_flags & NL80211_RRF_NO_OFDM) ··· 1058 1066 chan_before.center_freq = chan->center_freq; 1059 1067 chan_before.flags = chan->flags; 1060 1068 1061 - if (chan->flags & IEEE80211_CHAN_PASSIVE_SCAN) { 1062 - chan->flags &= ~IEEE80211_CHAN_PASSIVE_SCAN; 1063 - channel_changed = true; 1064 - } 1065 - 1066 - if (chan->flags & IEEE80211_CHAN_NO_IBSS) { 1067 - chan->flags &= ~IEEE80211_CHAN_NO_IBSS; 1069 + if (chan->flags & IEEE80211_CHAN_NO_IR) { 1070 + chan->flags &= ~IEEE80211_CHAN_NO_IR; 1068 1071 channel_changed = true; 1069 1072 } 1070 1073