|
@@ -2608,7 +2608,7 @@ void iwl_post_associate(struct iwl_priv *priv)
|
|
|
* Not a mac80211 entry point function, but it fits in with all the
|
|
|
* other mac80211 functions grouped here.
|
|
|
*/
|
|
|
-static int iwl_setup_mac(struct iwl_priv *priv)
|
|
|
+static int iwl_mac_setup_register(struct iwl_priv *priv)
|
|
|
{
|
|
|
int ret;
|
|
|
struct ieee80211_hw *hw = priv->hw;
|
|
@@ -3625,9 +3625,9 @@ static int iwl_pci_probe(struct pci_dev *pdev, const struct pci_device_id *ent)
|
|
|
iwl_setup_deferred_work(priv);
|
|
|
iwl_setup_rx_handlers(priv);
|
|
|
|
|
|
- /**********************************
|
|
|
- * 8. Setup and register mac80211
|
|
|
- **********************************/
|
|
|
+ /*********************************************
|
|
|
+ * 8. Enable interrupts and read RFKILL state
|
|
|
+ *********************************************/
|
|
|
|
|
|
/* enable interrupts if needed: hw bug w/a */
|
|
|
pci_read_config_word(priv->pci_dev, PCI_COMMAND, &pci_cmd);
|
|
@@ -3638,14 +3638,6 @@ static int iwl_pci_probe(struct pci_dev *pdev, const struct pci_device_id *ent)
|
|
|
|
|
|
iwl_enable_interrupts(priv);
|
|
|
|
|
|
- err = iwl_setup_mac(priv);
|
|
|
- if (err)
|
|
|
- goto out_remove_sysfs;
|
|
|
-
|
|
|
- err = iwl_dbgfs_register(priv, DRV_NAME);
|
|
|
- if (err)
|
|
|
- IWL_ERR(priv, "failed to create debugfs files. Ignoring error: %d\n", err);
|
|
|
-
|
|
|
/* If platform's RF_KILL switch is NOT set to KILL */
|
|
|
if (iwl_read32(priv, CSR_GP_CNTRL) & CSR_GP_CNTRL_REG_FLAG_HW_RF_KILL_SW)
|
|
|
clear_bit(STATUS_RF_KILL_HW, &priv->status);
|
|
@@ -3657,6 +3649,18 @@ static int iwl_pci_probe(struct pci_dev *pdev, const struct pci_device_id *ent)
|
|
|
|
|
|
iwl_power_initialize(priv);
|
|
|
iwl_tt_initialize(priv);
|
|
|
+
|
|
|
+ /**************************************************
|
|
|
+ * 9. Setup and register with mac80211 and debugfs
|
|
|
+ **************************************************/
|
|
|
+ err = iwl_mac_setup_register(priv);
|
|
|
+ if (err)
|
|
|
+ goto out_remove_sysfs;
|
|
|
+
|
|
|
+ err = iwl_dbgfs_register(priv, DRV_NAME);
|
|
|
+ if (err)
|
|
|
+ IWL_ERR(priv, "failed to create debugfs files. Ignoring error: %d\n", err);
|
|
|
+
|
|
|
return 0;
|
|
|
|
|
|
out_remove_sysfs:
|