}
 EXPORT_SYMBOL(iwl_uninit_drv);
 
-
-
-/* Low level driver call this function to update iwlcore with
- * driver status.
- */
-int iwlcore_low_level_notify(struct iwl_priv *priv,
-                             enum iwlcore_card_notify notify)
-{
-       int ret;
-       switch (notify) {
-       case IWLCORE_INIT_EVT:
-               ret = iwl_rfkill_init(priv);
-               if (ret)
-                       IWL_ERROR("Unable to initialize RFKILL system. "
-                                 "Ignoring error: %d\n", ret);
-               iwl_power_initialize(priv);
-               break;
-       case IWLCORE_START_EVT:
-               iwl_power_update_mode(priv, 1);
-               break;
-       case IWLCORE_STOP_EVT:
-               break;
-       case IWLCORE_REMOVE_EVT:
-               iwl_rfkill_unregister(priv);
-               break;
-       }
-
-       return 0;
-}
-EXPORT_SYMBOL(iwlcore_low_level_notify);
-
 int iwl_send_statistics_request(struct iwl_priv *priv, u8 flags)
 {
        u32 stat_flags = 0;
 
        return iwl_is_ready(priv);
 }
 
-enum iwlcore_card_notify {
-       IWLCORE_INIT_EVT = 0,
-       IWLCORE_START_EVT = 1,
-       IWLCORE_STOP_EVT = 2,
-       IWLCORE_REMOVE_EVT = 3,
-};
-
-int iwlcore_low_level_notify(struct iwl_priv *priv,
-                            enum iwlcore_card_notify notify);
 extern int iwl_send_statistics_request(struct iwl_priv *priv, u8 flags);
 extern int iwl_verify_ucode(struct iwl_priv *priv);
 extern void iwl_rf_kill_ct_config(struct iwl_priv *priv);
 
        if (priv->error_recovering)
                iwl4965_error_recovery(priv);
 
-       iwlcore_low_level_notify(priv, IWLCORE_START_EVT);
+       iwl_power_update_mode(priv, 1);
        ieee80211_notify_mac(priv->hw, IEEE80211_NOTIFY_RE_ASSOC);
 
        if (test_and_clear_bit(STATUS_MODE_PENDING, &priv->status))
 
        iwl_leds_unregister(priv);
 
-       iwlcore_low_level_notify(priv, IWLCORE_STOP_EVT);
-
        iwlcore_clear_stations_table(priv);
 
        /* Unblock any waiting calls */
        if (err)
                IWL_ERROR("failed to create debugfs files\n");
 
-       /* notify iwlcore to init */
-       iwlcore_low_level_notify(priv, IWLCORE_INIT_EVT);
+       err = iwl_rfkill_init(priv);
+       if (err)
+               IWL_ERROR("Unable to initialize RFKILL system. "
+                                 "Ignoring error: %d\n", err);
+       iwl_power_initialize(priv);
        return 0;
 
  out_remove_sysfs:
                }
        }
 
-       iwlcore_low_level_notify(priv, IWLCORE_REMOVE_EVT);
-
+       iwl_rfkill_unregister(priv);
        iwl4965_dealloc_ucode_pci(priv);
 
        if (priv->rxq.bd)