wireless: don't publish __regulatory_hint
This function requires an internal lock to be held, so it cannot be published to other modules in the kernel. Signed-off-by: Johannes Berg <johannes@sipsolutions.net> Signed-off-by: John W. Linville <linville@tuxdriver.com>
This commit is contained in:
parent
e37d4dffdf
commit
cf03268e6e
2 changed files with 37 additions and 28 deletions
|
@ -340,33 +340,6 @@ ieee80211_get_channel(struct wiphy *wiphy, int freq)
|
|||
return __ieee80211_get_channel(wiphy, freq);
|
||||
}
|
||||
|
||||
/**
|
||||
* __regulatory_hint - hint to the wireless core a regulatory domain
|
||||
* @wiphy: if a driver is providing the hint this is the driver's very
|
||||
* own &struct wiphy
|
||||
* @alpha2: the ISO/IEC 3166 alpha2 being claimed the regulatory domain
|
||||
* should be in. If @rd is set this should be NULL
|
||||
* @rd: a complete regulatory domain, if passed the caller need not worry
|
||||
* about freeing it
|
||||
*
|
||||
* The Wireless subsystem can use this function to hint to the wireless core
|
||||
* what it believes should be the current regulatory domain by
|
||||
* giving it an ISO/IEC 3166 alpha2 country code it knows its regulatory
|
||||
* domain should be in or by providing a completely build regulatory domain.
|
||||
*
|
||||
* Returns -EALREADY if *a regulatory domain* has already been set. Note that
|
||||
* this could be by another driver. It is safe for drivers to continue if
|
||||
* -EALREADY is returned, if drivers are not capable of world roaming they
|
||||
* should not register more channels than they support. Right now we only
|
||||
* support listening to the first driver hint. If the driver is capable
|
||||
* of world roaming but wants to respect its own EEPROM mappings for
|
||||
* specific regulatory domains it should register the @reg_notifier callback
|
||||
* on the &struct wiphy. Returns 0 if the hint went through fine or through an
|
||||
* intersection operation. Otherwise a standard error code is returned.
|
||||
*
|
||||
*/
|
||||
extern int __regulatory_hint(struct wiphy *wiphy, enum reg_set_by set_by,
|
||||
const char *alpha2, struct ieee80211_regdomain *rd);
|
||||
/**
|
||||
* regulatory_hint - driver hint to the wireless core a regulatory domain
|
||||
* @wiphy: the driver's very own &struct wiphy
|
||||
|
@ -388,7 +361,15 @@ extern int __regulatory_hint(struct wiphy *wiphy, enum reg_set_by set_by,
|
|||
* the wireless core it is unknown. If you pass a built regulatory domain
|
||||
* and we return non zero you are in charge of kfree()'ing the structure.
|
||||
*
|
||||
* See __regulatory_hint() documentation for possible return values.
|
||||
* Returns -EALREADY if *a regulatory domain* has already been set. Note that
|
||||
* this could be by another driver. It is safe for drivers to continue if
|
||||
* -EALREADY is returned, if drivers are not capable of world roaming they
|
||||
* should not register more channels than they support. Right now we only
|
||||
* support listening to the first driver hint. If the driver is capable
|
||||
* of world roaming but wants to respect its own EEPROM mappings for
|
||||
* specific regulatory domains it should register the @reg_notifier callback
|
||||
* on the &struct wiphy. Returns 0 if the hint went through fine or through an
|
||||
* intersection operation. Otherwise a standard error code is returned.
|
||||
*/
|
||||
extern int regulatory_hint(struct wiphy *wiphy,
|
||||
const char *alpha2, struct ieee80211_regdomain *rd);
|
||||
|
|
|
@ -10,4 +10,32 @@ void regulatory_exit(void);
|
|||
|
||||
int set_regdom(const struct ieee80211_regdomain *rd);
|
||||
|
||||
/**
|
||||
* __regulatory_hint - hint to the wireless core a regulatory domain
|
||||
* @wiphy: if a driver is providing the hint this is the driver's very
|
||||
* own &struct wiphy
|
||||
* @alpha2: the ISO/IEC 3166 alpha2 being claimed the regulatory domain
|
||||
* should be in. If @rd is set this should be NULL
|
||||
* @rd: a complete regulatory domain, if passed the caller need not worry
|
||||
* about freeing it
|
||||
*
|
||||
* The Wireless subsystem can use this function to hint to the wireless core
|
||||
* what it believes should be the current regulatory domain by
|
||||
* giving it an ISO/IEC 3166 alpha2 country code it knows its regulatory
|
||||
* domain should be in or by providing a completely build regulatory domain.
|
||||
*
|
||||
* Returns -EALREADY if *a regulatory domain* has already been set. Note that
|
||||
* this could be by another driver. It is safe for drivers to continue if
|
||||
* -EALREADY is returned, if drivers are not capable of world roaming they
|
||||
* should not register more channels than they support. Right now we only
|
||||
* support listening to the first driver hint. If the driver is capable
|
||||
* of world roaming but wants to respect its own EEPROM mappings for
|
||||
* specific regulatory domains it should register the @reg_notifier callback
|
||||
* on the &struct wiphy. Returns 0 if the hint went through fine or through an
|
||||
* intersection operation. Otherwise a standard error code is returned.
|
||||
*
|
||||
*/
|
||||
extern int __regulatory_hint(struct wiphy *wiphy, enum reg_set_by set_by,
|
||||
const char *alpha2, struct ieee80211_regdomain *rd);
|
||||
|
||||
#endif /* __NET_WIRELESS_REG_H */
|
||||
|
|
Loading…
Reference in a new issue