ops.c (b8fa3bfb14e78dbfcfbd2fac1d81a0e666eb8f42) ops.c (93b167c13a3afa389eaa1af277e94add976ea43f)
1/******************************************************************************
2 *
3 * This file is provided under a dual BSD/GPLv2 license. When using or
4 * redistributing this file, you may do so under either license.
5 *
6 * GPL LICENSE SUMMARY
7 *
8 * Copyright(c) 2012 - 2014 Intel Corporation. All rights reserved.

--- 588 unchanged lines hidden (view full) ---

597
598 mvm = IWL_OP_MODE_GET_MVM(op_mode);
599 mvm->dev = trans->dev;
600 mvm->trans = trans;
601 mvm->cfg = cfg;
602 mvm->fw = fw;
603 mvm->hw = hw;
604
1/******************************************************************************
2 *
3 * This file is provided under a dual BSD/GPLv2 license. When using or
4 * redistributing this file, you may do so under either license.
5 *
6 * GPL LICENSE SUMMARY
7 *
8 * Copyright(c) 2012 - 2014 Intel Corporation. All rights reserved.

--- 588 unchanged lines hidden (view full) ---

597
598 mvm = IWL_OP_MODE_GET_MVM(op_mode);
599 mvm->dev = trans->dev;
600 mvm->trans = trans;
601 mvm->cfg = cfg;
602 mvm->fw = fw;
603 mvm->hw = hw;
604
605 iwl_fw_runtime_init(&mvm->fwrt, trans, fw, &iwl_mvm_fwrt_ops, mvm);
605 iwl_fw_runtime_init(&mvm->fwrt, trans, fw, &iwl_mvm_fwrt_ops, mvm,
606 dbgfs_dir);
606
607 mvm->init_status = 0;
608
609 if (iwl_mvm_has_new_rx_api(mvm)) {
610 op_mode->ops = &iwl_mvm_ops_mq;
611 trans->rx_mpdu_cmd_hdr_size = sizeof(struct iwl_rx_mpdu_desc);
612 } else {
613 op_mode->ops = &iwl_mvm_ops;

--- 182 unchanged lines hidden (view full) ---

796 if (iwlmvm_mod_params.init_dbg)
797 return op_mode;
798
799 ieee80211_unregister_hw(mvm->hw);
800 mvm->hw_registered = false;
801 iwl_mvm_leds_exit(mvm);
802 iwl_mvm_thermal_exit(mvm);
803 out_free:
607
608 mvm->init_status = 0;
609
610 if (iwl_mvm_has_new_rx_api(mvm)) {
611 op_mode->ops = &iwl_mvm_ops_mq;
612 trans->rx_mpdu_cmd_hdr_size = sizeof(struct iwl_rx_mpdu_desc);
613 } else {
614 op_mode->ops = &iwl_mvm_ops;

--- 182 unchanged lines hidden (view full) ---

797 if (iwlmvm_mod_params.init_dbg)
798 return op_mode;
799
800 ieee80211_unregister_hw(mvm->hw);
801 mvm->hw_registered = false;
802 iwl_mvm_leds_exit(mvm);
803 iwl_mvm_thermal_exit(mvm);
804 out_free:
805 iwl_fw_runtime_exit(&mvm->fwrt);
804 iwl_fw_flush_dump(&mvm->fwrt);
805
806 if (iwlmvm_mod_params.init_dbg)
807 return op_mode;
808 iwl_phy_db_free(mvm->phy_db);
809 kfree(mvm->scan_cmd);
810 iwl_trans_op_mode_leave(trans);
811

--- 24 unchanged lines hidden (view full) ---

836
837 kfree(mvm->scan_cmd);
838 kfree(mvm->mcast_filter_cmd);
839 mvm->mcast_filter_cmd = NULL;
840
841#if defined(CONFIG_PM_SLEEP) && defined(CONFIG_IWLWIFI_DEBUGFS)
842 kfree(mvm->d3_resume_sram);
843#endif
806 iwl_fw_flush_dump(&mvm->fwrt);
807
808 if (iwlmvm_mod_params.init_dbg)
809 return op_mode;
810 iwl_phy_db_free(mvm->phy_db);
811 kfree(mvm->scan_cmd);
812 iwl_trans_op_mode_leave(trans);
813

--- 24 unchanged lines hidden (view full) ---

838
839 kfree(mvm->scan_cmd);
840 kfree(mvm->mcast_filter_cmd);
841 mvm->mcast_filter_cmd = NULL;
842
843#if defined(CONFIG_PM_SLEEP) && defined(CONFIG_IWLWIFI_DEBUGFS)
844 kfree(mvm->d3_resume_sram);
845#endif
844
846 iwl_fw_runtime_exit(&mvm->fwrt);
845 iwl_trans_op_mode_leave(mvm->trans);
846
847 iwl_phy_db_free(mvm->phy_db);
848 mvm->phy_db = NULL;
849
850 kfree(mvm->nvm_data);
851 for (i = 0; i < NVM_MAX_NUM_SECTIONS; i++)
852 kfree(mvm->nvm_sections[i].data);

--- 846 unchanged lines hidden ---
847 iwl_trans_op_mode_leave(mvm->trans);
848
849 iwl_phy_db_free(mvm->phy_db);
850 mvm->phy_db = NULL;
851
852 kfree(mvm->nvm_data);
853 for (i = 0; i < NVM_MAX_NUM_SECTIONS; i++)
854 kfree(mvm->nvm_sections[i].data);

--- 846 unchanged lines hidden ---