ath9k: move common regulatory code out of if() branches
Both branches of the regulatory check in ath_attach() set up a custom regulatory domain and apply radar and world flags, so extract those into a single path. While at it, fix a couple of spelling errors and an unnecessary extra pointer traversal. Signed-off-by: Bob Copeland <me@bobcopeland.com> Acked-by: Luis R. Rodriguez <lrodriguez@atheros.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
This commit is contained in:
committed by
John W. Linville
parent
65fe4656b7
commit
191a99b748
@@ -1570,6 +1570,7 @@ bad:
|
|||||||
int ath_attach(u16 devid, struct ath_softc *sc)
|
int ath_attach(u16 devid, struct ath_softc *sc)
|
||||||
{
|
{
|
||||||
struct ieee80211_hw *hw = sc->hw;
|
struct ieee80211_hw *hw = sc->hw;
|
||||||
|
const struct ieee80211_regdomain *regd;
|
||||||
int error = 0, i;
|
int error = 0, i;
|
||||||
|
|
||||||
DPRINTF(sc, ATH_DBG_CONFIG, "Attach ATH hw\n");
|
DPRINTF(sc, ATH_DBG_CONFIG, "Attach ATH hw\n");
|
||||||
@@ -1640,25 +1641,20 @@ int ath_attach(u16 devid, struct ath_softc *sc)
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
if (ath9k_is_world_regd(sc->sc_ah)) {
|
if (ath9k_is_world_regd(sc->sc_ah)) {
|
||||||
/* Anything applied here (prior to wiphy registratoin) gets
|
/* Anything applied here (prior to wiphy registration) gets
|
||||||
* saved on the wiphy orig_* parameters */
|
* saved on the wiphy orig_* parameters */
|
||||||
const struct ieee80211_regdomain *regd =
|
regd = ath9k_world_regdomain(sc->sc_ah);
|
||||||
ath9k_world_regdomain(sc->sc_ah);
|
|
||||||
hw->wiphy->custom_regulatory = true;
|
hw->wiphy->custom_regulatory = true;
|
||||||
hw->wiphy->strict_regulatory = false;
|
hw->wiphy->strict_regulatory = false;
|
||||||
wiphy_apply_custom_regulatory(sc->hw->wiphy, regd);
|
|
||||||
ath9k_reg_apply_radar_flags(hw->wiphy);
|
|
||||||
ath9k_reg_apply_world_flags(hw->wiphy, REGDOM_SET_BY_INIT);
|
|
||||||
} else {
|
} else {
|
||||||
/* This gets applied in the case of the absense of CRDA,
|
/* This gets applied in the case of the absense of CRDA,
|
||||||
* its our own custom world regulatory domain, similar to
|
* it's our own custom world regulatory domain, similar to
|
||||||
* cfg80211's but we enable passive scanning */
|
* cfg80211's but we enable passive scanning */
|
||||||
const struct ieee80211_regdomain *regd =
|
regd = ath9k_default_world_regdomain();
|
||||||
ath9k_default_world_regdomain();
|
|
||||||
wiphy_apply_custom_regulatory(sc->hw->wiphy, regd);
|
|
||||||
ath9k_reg_apply_radar_flags(hw->wiphy);
|
|
||||||
ath9k_reg_apply_world_flags(hw->wiphy, REGDOM_SET_BY_INIT);
|
|
||||||
}
|
}
|
||||||
|
wiphy_apply_custom_regulatory(hw->wiphy, regd);
|
||||||
|
ath9k_reg_apply_radar_flags(hw->wiphy);
|
||||||
|
ath9k_reg_apply_world_flags(hw->wiphy, REGDOM_SET_BY_INIT);
|
||||||
|
|
||||||
error = ieee80211_register_hw(hw);
|
error = ieee80211_register_hw(hw);
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user