From 36b8890fc2f0a109015b7c6a535c9fed7a4248c9 Mon Sep 17 00:00:00 2001 From: Don Fry Date: Fri, 9 Dec 2011 10:07:38 -0800 Subject: [PATCH] --- yaml --- r: 279192 b: refs/heads/master c: 09af14030d77d5f43229adabdd3c84c63f3499aa h: refs/heads/master v: v3 --- [refs] | 2 +- trunk/drivers/net/wireless/iwlwifi/iwl-agn.c | 7 +------ trunk/drivers/net/wireless/iwlwifi/iwl-agn.h | 1 + trunk/drivers/net/wireless/iwlwifi/iwl-mac80211.c | 9 +++++++++ 4 files changed, 12 insertions(+), 7 deletions(-) diff --git a/[refs] b/[refs] index 19d1736ea421..8c92e7def11e 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 23fd7b029fa58c265bfa757603fd2af27c7af3ad +refs/heads/master: 09af14030d77d5f43229adabdd3c84c63f3499aa diff --git a/trunk/drivers/net/wireless/iwlwifi/iwl-agn.c b/trunk/drivers/net/wireless/iwlwifi/iwl-agn.c index 5a9370d839ce..f7e089d5807b 100644 --- a/trunk/drivers/net/wireless/iwlwifi/iwl-agn.c +++ b/trunk/drivers/net/wireless/iwlwifi/iwl-agn.c @@ -1915,12 +1915,7 @@ void __devexit iwl_remove(struct iwl_priv * priv) set_bit(STATUS_EXIT_PENDING, &priv->shrd->status); iwl_testmode_cleanup(priv); - iwl_leds_exit(priv); - - if (priv->mac80211_registered) { - ieee80211_unregister_hw(priv->hw); - priv->mac80211_registered = 0; - } + iwlagn_mac_unregister(priv); iwl_tt_exit(priv); diff --git a/trunk/drivers/net/wireless/iwlwifi/iwl-agn.h b/trunk/drivers/net/wireless/iwlwifi/iwl-agn.h index 66bcd3e6ccfb..2c5b6c4af3ce 100644 --- a/trunk/drivers/net/wireless/iwlwifi/iwl-agn.h +++ b/trunk/drivers/net/wireless/iwlwifi/iwl-agn.h @@ -91,6 +91,7 @@ void iwlagn_prepare_restart(struct iwl_priv *priv); struct ieee80211_hw *iwl_alloc_all(void); int iwlagn_mac_setup_register(struct iwl_priv *priv, struct iwlagn_ucode_capabilities *capa); +void iwlagn_mac_unregister(struct iwl_priv *priv); /* RXON */ int iwlagn_set_pan_params(struct iwl_priv *priv); diff --git a/trunk/drivers/net/wireless/iwlwifi/iwl-mac80211.c b/trunk/drivers/net/wireless/iwlwifi/iwl-mac80211.c index 8074c6eafab0..412ff484e105 100644 --- a/trunk/drivers/net/wireless/iwlwifi/iwl-mac80211.c +++ b/trunk/drivers/net/wireless/iwlwifi/iwl-mac80211.c @@ -245,6 +245,15 @@ int iwlagn_mac_setup_register(struct iwl_priv *priv, return 0; } +void iwlagn_mac_unregister(struct iwl_priv *priv) +{ + if (!priv->mac80211_registered) + return; + iwl_leds_exit(priv); + ieee80211_unregister_hw(priv->hw); + priv->mac80211_registered = 0; +} + static int __iwl_up(struct iwl_priv *priv) { struct iwl_rxon_context *ctx;