iwlwifi: dbg_ini: remove periodic trigger
authorShahar S Matityahu <shahar.s.matityahu@intel.com>
Mon, 1 Jul 2019 13:03:48 +0000 (16:03 +0300)
committerLuca Coelho <luciano.coelho@intel.com>
Fri, 6 Sep 2019 12:52:07 +0000 (15:52 +0300)
Remove periodic trigger functionality.
After moving to the new API we will add periodic trigger functionality
that matches the new API.

Signed-off-by: Shahar S Matityahu <shahar.s.matityahu@intel.com>
Signed-off-by: Luca Coelho <luciano.coelho@intel.com>
drivers/net/wireless/intel/iwlwifi/fw/dbg.c
drivers/net/wireless/intel/iwlwifi/fw/dbg.h
drivers/net/wireless/intel/iwlwifi/fw/init.c
drivers/net/wireless/intel/iwlwifi/fw/runtime.h
drivers/net/wireless/intel/iwlwifi/iwl-dbg-tlv.c
drivers/net/wireless/intel/iwlwifi/iwl-dbg-tlv.h
drivers/net/wireless/intel/iwlwifi/mvm/ops.c

index 310b85b..5c8602d 100644 (file)
@@ -2381,7 +2381,7 @@ void iwl_fw_dbg_stop_sync(struct iwl_fw_runtime *fwrt)
 {
        int i;
 
-       del_timer(&fwrt->dump.periodic_trig);
+       iwl_dbg_tlv_del_timers(fwrt->trans);
        for (i = 0; i < IWL_FW_RUNTIME_DUMP_WK_NUM; i++)
                iwl_fw_dbg_collect_sync(fwrt, i);
 
@@ -2389,31 +2389,6 @@ void iwl_fw_dbg_stop_sync(struct iwl_fw_runtime *fwrt)
 }
 IWL_EXPORT_SYMBOL(iwl_fw_dbg_stop_sync);
 
-void iwl_fw_dbg_periodic_trig_handler(struct timer_list *t)
-{
-       struct iwl_fw_runtime *fwrt;
-       enum iwl_fw_ini_trigger_id id = IWL_FW_TRIGGER_ID_PERIODIC_TRIGGER;
-       int ret;
-       typeof(fwrt->dump) *dump_ptr = container_of(t, typeof(fwrt->dump),
-                                                   periodic_trig);
-
-       fwrt = container_of(dump_ptr, typeof(*fwrt), dump);
-
-       ret = _iwl_fw_dbg_ini_collect(fwrt, id);
-       if (!ret || ret == -EBUSY) {
-               struct iwl_fw_ini_trigger *trig =
-                       fwrt->dump.active_trigs[id].trig;
-               u32 occur = le32_to_cpu(trig->occurrences);
-               u32 collect_interval = le32_to_cpu(trig->trigger_data);
-
-               if (!occur)
-                       return;
-
-               mod_timer(&fwrt->dump.periodic_trig,
-                         jiffies + msecs_to_jiffies(collect_interval));
-       }
-}
-
 #define FSEQ_REG(x) { .addr = (x), .str = #x, }
 
 void iwl_fw_error_print_fseq_regs(struct iwl_fw_runtime *fwrt)
index b2445be..14181e6 100644 (file)
@@ -314,7 +314,7 @@ static inline void iwl_fw_flush_dumps(struct iwl_fw_runtime *fwrt)
 {
        int i;
 
-       del_timer(&fwrt->dump.periodic_trig);
+       iwl_dbg_tlv_del_timers(fwrt->trans);
        for (i = 0; i < IWL_FW_RUNTIME_DUMP_WK_NUM; i++) {
                flush_delayed_work(&fwrt->dump.wks[i].wk);
                fwrt->dump.wks[i].ini_trig_id = IWL_FW_TRIGGER_ID_INVALID;
@@ -325,7 +325,7 @@ static inline void iwl_fw_cancel_dumps(struct iwl_fw_runtime *fwrt)
 {
        int i;
 
-       del_timer(&fwrt->dump.periodic_trig);
+       iwl_dbg_tlv_del_timers(fwrt->trans);
        for (i = 0; i < IWL_FW_RUNTIME_DUMP_WK_NUM; i++) {
                cancel_delayed_work_sync(&fwrt->dump.wks[i].wk);
                fwrt->dump.wks[i].ini_trig_id = IWL_FW_TRIGGER_ID_INVALID;
@@ -400,8 +400,6 @@ static inline void iwl_fw_error_collect(struct iwl_fw_runtime *fwrt)
        }
 }
 
-void iwl_fw_dbg_periodic_trig_handler(struct timer_list *t);
-
 void iwl_fw_error_print_fseq_regs(struct iwl_fw_runtime *fwrt);
 
 static inline void iwl_fwrt_update_fw_versions(struct iwl_fw_runtime *fwrt,
index c16d6e1..ba00d16 100644 (file)
@@ -81,8 +81,6 @@ void iwl_fw_runtime_init(struct iwl_fw_runtime *fwrt, struct iwl_trans *trans,
                INIT_DELAYED_WORK(&fwrt->dump.wks[i].wk, iwl_fw_error_dump_wk);
        }
        iwl_fwrt_dbgfs_register(fwrt, dbgfs_dir);
-       timer_setup(&fwrt->dump.periodic_trig,
-                   iwl_fw_dbg_periodic_trig_handler, 0);
 }
 IWL_EXPORT_SYMBOL(iwl_fw_runtime_init);
 
index 40b9250..8b8ab6d 100644 (file)
@@ -159,7 +159,6 @@ struct iwl_fw_runtime {
                u32 umac_err_id;
 
                struct iwl_txf_iter_data txf_iter_data;
-               struct timer_list periodic_trig;
 
                u8 img_name[IWL_FW_INI_MAX_IMG_NAME_LEN];
                u8 internal_dbg_cfg_name[IWL_FW_INI_MAX_DBG_CFG_NAME_LEN];
index db76b28..3d7f8ff 100644 (file)
@@ -151,6 +151,12 @@ out_err:
        *cfg_state = IWL_INI_CFG_STATE_CORRUPTED;
 }
 
+void iwl_dbg_tlv_del_timers(struct iwl_trans *trans)
+{
+       /* will be used later */
+}
+IWL_EXPORT_SYMBOL(iwl_dbg_tlv_del_timers);
+
 void iwl_dbg_tlv_free(struct iwl_trans *trans)
 {
        /* will be used again later */
index c7988b6..e257ad3 100644 (file)
@@ -92,5 +92,6 @@ void iwl_dbg_tlv_alloc(struct iwl_trans *trans, struct iwl_ucode_tlv *tlv,
 void iwl_dbg_tlv_time_point(struct iwl_fw_runtime *fwrt,
                            enum iwl_fw_ini_time_point tp_id,
                            union iwl_dbg_tlv_tp_data *tp_data);
+void iwl_dbg_tlv_del_timers(struct iwl_trans *trans);
 
 #endif /* __iwl_dbg_tlv_h__*/
index 35af56a..3acbd5b 100644 (file)
@@ -1239,7 +1239,7 @@ static void iwl_mvm_reprobe_wk(struct work_struct *wk)
 void iwl_mvm_nic_restart(struct iwl_mvm *mvm, bool fw_error)
 {
        iwl_abort_notification_waits(&mvm->notif_wait);
-       del_timer(&mvm->fwrt.dump.periodic_trig);
+       iwl_dbg_tlv_del_timers(mvm->trans);
 
        /*
         * This is a bit racy, but worst case we tell mac80211 about