regulatory.h (4f2c0a4acffbec01079c28f839422e64ddeff004) regulatory.h (e8c2af660ba0790afd14d5cbc2fd05c6dc85e207)
1
2#ifndef __NET_REGULATORY_H
3#define __NET_REGULATORY_H
4/*
5 * regulatory support structures
6 *
7 * Copyright 2008-2009 Luis R. Rodriguez <mcgrof@qca.qualcomm.com>
8 * Copyright (C) 2018 Intel Corporation

--- 126 unchanged lines hidden (view full) ---

135 * all country IE information processed by the regulatory core. This will
136 * override %REGULATORY_COUNTRY_IE_FOLLOW_POWER as all country IEs will
137 * be ignored.
138 * @REGULATORY_ENABLE_RELAX_NO_IR: for devices that wish to allow the
139 * NO_IR relaxation, which enables transmissions on channels on which
140 * otherwise initiating radiation is not allowed. This will enable the
141 * relaxations enabled under the CFG80211_REG_RELAX_NO_IR configuration
142 * option
1
2#ifndef __NET_REGULATORY_H
3#define __NET_REGULATORY_H
4/*
5 * regulatory support structures
6 *
7 * Copyright 2008-2009 Luis R. Rodriguez <mcgrof@qca.qualcomm.com>
8 * Copyright (C) 2018 Intel Corporation

--- 126 unchanged lines hidden (view full) ---

135 * all country IE information processed by the regulatory core. This will
136 * override %REGULATORY_COUNTRY_IE_FOLLOW_POWER as all country IEs will
137 * be ignored.
138 * @REGULATORY_ENABLE_RELAX_NO_IR: for devices that wish to allow the
139 * NO_IR relaxation, which enables transmissions on channels on which
140 * otherwise initiating radiation is not allowed. This will enable the
141 * relaxations enabled under the CFG80211_REG_RELAX_NO_IR configuration
142 * option
143 * @REGULATORY_IGNORE_STALE_KICKOFF: the regulatory core will _not_ make sure
144 * all interfaces on this wiphy reside on allowed channels. If this flag
145 * is not set, upon a regdomain change, the interfaces are given a grace
146 * period (currently 60 seconds) to disconnect or move to an allowed
147 * channel. Interfaces on forbidden channels are forcibly disconnected.
148 * Currently these types of interfaces are supported for enforcement:
149 * NL80211_IFTYPE_ADHOC, NL80211_IFTYPE_STATION, NL80211_IFTYPE_AP,
150 * NL80211_IFTYPE_AP_VLAN, NL80211_IFTYPE_MONITOR,
151 * NL80211_IFTYPE_P2P_CLIENT, NL80211_IFTYPE_P2P_GO,
152 * NL80211_IFTYPE_P2P_DEVICE. The flag will be set by default if a device
153 * includes any modes unsupported for enforcement checking.
154 * @REGULATORY_WIPHY_SELF_MANAGED: for devices that employ wiphy-specific
155 * regdom management. These devices will ignore all regdom changes not
156 * originating from their own wiphy.
157 * A self-managed wiphys only employs regulatory information obtained from
158 * the FW and driver and does not use other cfg80211 sources like
159 * beacon-hints, country-code IEs and hints from other devices on the same
160 * system. Conversely, a self-managed wiphy does not share its regulatory
161 * hints with other devices in the system. If a system contains several

--- 10 unchanged lines hidden (view full) ---

172 */
173enum ieee80211_regulatory_flags {
174 REGULATORY_CUSTOM_REG = BIT(0),
175 REGULATORY_STRICT_REG = BIT(1),
176 REGULATORY_DISABLE_BEACON_HINTS = BIT(2),
177 REGULATORY_COUNTRY_IE_FOLLOW_POWER = BIT(3),
178 REGULATORY_COUNTRY_IE_IGNORE = BIT(4),
179 REGULATORY_ENABLE_RELAX_NO_IR = BIT(5),
143 * @REGULATORY_WIPHY_SELF_MANAGED: for devices that employ wiphy-specific
144 * regdom management. These devices will ignore all regdom changes not
145 * originating from their own wiphy.
146 * A self-managed wiphys only employs regulatory information obtained from
147 * the FW and driver and does not use other cfg80211 sources like
148 * beacon-hints, country-code IEs and hints from other devices on the same
149 * system. Conversely, a self-managed wiphy does not share its regulatory
150 * hints with other devices in the system. If a system contains several

--- 10 unchanged lines hidden (view full) ---

161 */
162enum ieee80211_regulatory_flags {
163 REGULATORY_CUSTOM_REG = BIT(0),
164 REGULATORY_STRICT_REG = BIT(1),
165 REGULATORY_DISABLE_BEACON_HINTS = BIT(2),
166 REGULATORY_COUNTRY_IE_FOLLOW_POWER = BIT(3),
167 REGULATORY_COUNTRY_IE_IGNORE = BIT(4),
168 REGULATORY_ENABLE_RELAX_NO_IR = BIT(5),
180 REGULATORY_IGNORE_STALE_KICKOFF = BIT(6),
169 /* reuse bit 6 next time */
181 REGULATORY_WIPHY_SELF_MANAGED = BIT(7),
182};
183
184struct ieee80211_freq_range {
185 u32 start_freq_khz;
186 u32 end_freq_khz;
187 u32 max_bandwidth_khz;
188};

--- 63 unchanged lines hidden ---
170 REGULATORY_WIPHY_SELF_MANAGED = BIT(7),
171};
172
173struct ieee80211_freq_range {
174 u32 start_freq_khz;
175 u32 end_freq_khz;
176 u32 max_bandwidth_khz;
177};

--- 63 unchanged lines hidden ---