iwlwifi: drv object can release its own memory

Move that code to the iwl-drv.c

Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
Signed-off-by: Wey-Yi Guy <wey-yi.w.guy@intel.com>
diff --git a/drivers/net/wireless/iwlwifi/iwl-pci.c b/drivers/net/wireless/iwlwifi/iwl-pci.c
index e269544..b9cdd1a 100644
--- a/drivers/net/wireless/iwlwifi/iwl-pci.c
+++ b/drivers/net/wireless/iwlwifi/iwl-pci.c
@@ -321,12 +321,11 @@
 	struct iwl_bus *bus = pci_get_drvdata(pdev);
 	struct iwl_shared *shrd = bus->shrd;
 
-	iwl_remove(shrd->priv);
+	iwl_drv_stop(shrd);
 	iwl_trans_free(shrd->trans);
 
 	pci_set_drvdata(pdev, NULL);
 
-	kfree(bus->shrd->nic);
 	kfree(bus->shrd);
 	kfree(bus);
 }