/linux/drivers/net/wireless/intel/iwlwifi/fw/ |
H A D | dump.c | 117 static void iwl_fwrt_dump_umac_error_log(struct iwl_fw_runtime *fwrt) in iwl_fwrt_dump_umac_error_log() argument 119 struct iwl_trans *trans = fwrt->trans; in iwl_fwrt_dump_umac_error_log() 121 u32 base = fwrt->trans->dbg.umac_error_event_table; in iwl_fwrt_dump_umac_error_log() 125 !(fwrt->trans->dbg.error_event_table_tlv_status & in iwl_fwrt_dump_umac_error_log() 132 fwrt->dump.umac_err_id = table.error_id; in iwl_fwrt_dump_umac_error_log() 134 if (!iwl_fwrt_if_errorid_other_cpu(fwrt->dump.umac_err_id) && in iwl_fwrt_dump_umac_error_log() 135 !fwrt->trans->dbg.dump_file_name_ext_valid) { in iwl_fwrt_dump_umac_error_log() 136 fwrt->trans->dbg.dump_file_name_ext_valid = true; in iwl_fwrt_dump_umac_error_log() 137 snprintf(fwrt->trans->dbg.dump_file_name_ext, IWL_FW_INI_MAX_NAME, in iwl_fwrt_dump_umac_error_log() 138 "0x%x", fwrt->dump.umac_err_id); in iwl_fwrt_dump_umac_error_log() [all …]
|
H A D | dbg.c | 31 static void iwl_read_radio_regs(struct iwl_fw_runtime *fwrt, in iwl_read_radio_regs() argument 37 IWL_DEBUG_INFO(fwrt, "WRT radio registers dump\n"); in iwl_read_radio_regs() 39 if (!iwl_trans_grab_nic_access(fwrt->trans)) in iwl_read_radio_regs() 49 iwl_write_prph_no_grab(fwrt->trans, RSP_RADIO_CMD, rd_cmd); in iwl_read_radio_regs() 50 *pos = (u8)iwl_read_prph_no_grab(fwrt->trans, RSP_RADIO_RDDAT); in iwl_read_radio_regs() 57 iwl_trans_release_nic_access(fwrt->trans); in iwl_read_radio_regs() 60 static void iwl_fwrt_dump_rxf(struct iwl_fw_runtime *fwrt, in iwl_fwrt_dump_rxf() argument 83 cpu_to_le32(iwl_trans_read_prph(fwrt->trans, in iwl_fwrt_dump_rxf() 86 cpu_to_le32(iwl_trans_read_prph(fwrt->trans, in iwl_fwrt_dump_rxf() 89 cpu_to_le32(iwl_trans_read_prph(fwrt->trans, in iwl_fwrt_dump_rxf() [all …]
|
H A D | init.c | 16 void iwl_fw_runtime_init(struct iwl_fw_runtime *fwrt, struct iwl_trans *trans, in iwl_fw_runtime_init() argument 25 memset(fwrt, 0, sizeof(*fwrt)); in iwl_fw_runtime_init() 26 fwrt->trans = trans; in iwl_fw_runtime_init() 27 fwrt->fw = fw; in iwl_fw_runtime_init() 28 fwrt->dev = trans->dev; in iwl_fw_runtime_init() 29 fwrt->dump.conf = FW_DBG_INVALID; in iwl_fw_runtime_init() 30 fwrt->ops = ops; in iwl_fw_runtime_init() 31 fwrt->sanitize_ops = sanitize_ops; in iwl_fw_runtime_init() 32 fwrt->sanitize_ctx = sanitize_ctx; in iwl_fw_runtime_init() 33 fwrt->ops_ctx = ops_ctx; in iwl_fw_runtime_init() [all …]
|
H A D | smem.c | 11 static void iwl_parse_shared_mem_22000(struct iwl_fw_runtime *fwrt, in iwl_parse_shared_mem_22000() argument 17 u8 api_ver = iwl_fw_lookup_notif_ver(fwrt->fw, SYSTEM_GROUP, in iwl_parse_shared_mem_22000() 23 fwrt->smem_cfg.num_lmacs = lmac_num; in iwl_parse_shared_mem_22000() 24 fwrt->smem_cfg.num_txfifo_entries = in iwl_parse_shared_mem_22000() 26 fwrt->smem_cfg.rxfifo2_size = le32_to_cpu(mem_cfg->rxfifo2_size); in iwl_parse_shared_mem_22000() 30 fwrt->smem_cfg.rxfifo2_control_size = in iwl_parse_shared_mem_22000() 39 fwrt->smem_cfg.lmac[lmac].txfifo_size[i] = in iwl_parse_shared_mem_22000() 41 fwrt->smem_cfg.lmac[lmac].rxfifo1_size = in iwl_parse_shared_mem_22000() 46 static void iwl_parse_shared_mem(struct iwl_fw_runtime *fwrt, in iwl_parse_shared_mem() argument 52 fwrt->smem_cfg.num_lmacs = 1; in iwl_parse_shared_mem() [all …]
|
H A D | runtime.h | 187 void iwl_fw_runtime_init(struct iwl_fw_runtime *fwrt, struct iwl_trans *trans, 194 static inline void iwl_fw_runtime_free(struct iwl_fw_runtime *fwrt) in iwl_fw_runtime_free() argument 198 kfree(fwrt->dump.d3_debug_data); in iwl_fw_runtime_free() 199 fwrt->dump.d3_debug_data = NULL; in iwl_fw_runtime_free() 201 iwl_dbg_tlv_del_timers(fwrt->trans); in iwl_fw_runtime_free() 203 cancel_delayed_work_sync(&fwrt->dump.wks[i].wk); in iwl_fw_runtime_free() 206 void iwl_fw_runtime_suspend(struct iwl_fw_runtime *fwrt); 208 void iwl_fw_runtime_resume(struct iwl_fw_runtime *fwrt); 210 static inline void iwl_fw_set_current_image(struct iwl_fw_runtime *fwrt, in iwl_fw_set_current_image() argument 213 fwrt->cur_fw_img = cur_fw_img; in iwl_fw_set_current_image() [all …]
|
H A D | debugfs.h | 10 void iwl_fwrt_dbgfs_register(struct iwl_fw_runtime *fwrt, 14 static inline void iwl_fwrt_dbgfs_register(struct iwl_fw_runtime *fwrt, in iwl_fwrt_dbgfs_register() argument
|
/linux/drivers/net/wireless/intel/iwlwifi/ |
H A D | iwl-dbg-tlv.c | 53 struct iwl_fw_runtime *fwrt; member 540 static int iwl_dbg_tlv_alloc_fragment(struct iwl_fw_runtime *fwrt, in iwl_dbg_tlv_alloc_fragment() argument 557 block = dma_alloc_coherent(fwrt->dev, pages * PAGE_SIZE, in iwl_dbg_tlv_alloc_fragment() 563 IWL_WARN(fwrt, "WRT: Failed to allocate fragment size %lu\n", in iwl_dbg_tlv_alloc_fragment() 579 static int iwl_dbg_tlv_alloc_fragments(struct iwl_fw_runtime *fwrt, in iwl_dbg_tlv_alloc_fragments() argument 591 fw_mon_cfg = &fwrt->trans->dbg.fw_mon_cfg[alloc_id]; in iwl_dbg_tlv_alloc_fragments() 592 fw_mon = &fwrt->trans->dbg.fw_mon_ini[alloc_id]; in iwl_dbg_tlv_alloc_fragments() 606 if (fwrt->trans->trans_cfg->device_family < IWL_DEVICE_FAMILY_AX210) { in iwl_dbg_tlv_alloc_fragments() 610 } else if (fwrt->trans->trans_cfg->device_family < IWL_DEVICE_FAMILY_BZ && in iwl_dbg_tlv_alloc_fragments() 628 IWL_DEBUG_FW(fwrt, in iwl_dbg_tlv_alloc_fragments() [all …]
|
H A D | iwl-dbg-tlv.h | 56 void _iwl_dbg_tlv_time_point(struct iwl_fw_runtime *fwrt, 60 void iwl_dbg_tlv_init_cfg(struct iwl_fw_runtime *fwrt); 62 static inline void iwl_dbg_tlv_time_point(struct iwl_fw_runtime *fwrt, in iwl_dbg_tlv_time_point() argument 66 _iwl_dbg_tlv_time_point(fwrt, tp_id, tp_data, false); in iwl_dbg_tlv_time_point() 69 static inline void iwl_dbg_tlv_time_point_sync(struct iwl_fw_runtime *fwrt, in iwl_dbg_tlv_time_point_sync() argument 73 _iwl_dbg_tlv_time_point(fwrt, tp_id, tp_data, true); in iwl_dbg_tlv_time_point_sync()
|
/linux/drivers/net/wireless/intel/iwlwifi/mvm/ |
H A D | fw.c | 231 (mvm->fwrt.cur_fw_img == IWL_UCODE_INIT) ? in iwl_alive_fn() 251 iwl_fwrt_update_fw_versions(&mvm->fwrt, lmac1, umac); in iwl_alive_fn() 309 enum iwl_ucode_type old_type = mvm->fwrt.cur_fw_img; in iwl_mvm_load_ucode_wait_alive() 325 iwl_fw_set_current_image(&mvm->fwrt, ucode_type); in iwl_mvm_load_ucode_wait_alive() 339 iwl_fw_set_current_image(&mvm->fwrt, old_type); in iwl_mvm_load_ucode_wait_alive() 409 iwl_fw_dbg_error_collect(&mvm->fwrt, in iwl_mvm_load_ucode_wait_alive() 412 iwl_fw_set_current_image(&mvm->fwrt, old_type); in iwl_mvm_load_ucode_wait_alive() 418 iwl_fw_set_current_image(&mvm->fwrt, old_type); in iwl_mvm_load_ucode_wait_alive() 431 iwl_fw_set_current_image(&mvm->fwrt, old_type); in iwl_mvm_load_ucode_wait_alive() 456 iwl_fw_set_dbg_rec_on(&mvm->fwrt); in iwl_mvm_load_ucode_wait_alive() [all …]
|
H A D | ops.c | 120 if (iwl_fw_dbg_is_d3_debug_enabled(&mvm->fwrt)) in iwl_mvm_nic_config() 810 iwl_bios_get_pwr_limit(&mvm->fwrt, &dflt_pwr_limit); in iwl_mvm_min_backoff() 922 iwl_fw_dbg_error_collect(&mvm->fwrt, FW_DBG_TRIGGER_DRIVER); in iwl_mvm_start_get_nvm() 1099 switch (mvm->fwrt.cur_fw_img) { in iwl_mvm_frob_mem() 1214 iwl_fw_flush_dumps(&mvm->fwrt); in iwl_mvm_sap_connected_wk() 1216 iwl_fw_runtime_free(&mvm->fwrt); in iwl_mvm_sap_connected_wk() 1330 iwl_fw_runtime_init(&mvm->fwrt, trans, fw, &iwl_mvm_fwrt_ops, mvm, in iwl_op_mode_mvm_start() 1334 iwl_uefi_get_sgom_table(trans, &mvm->fwrt); in iwl_op_mode_mvm_start() 1336 iwl_bios_setup_step(trans, &mvm->fwrt); in iwl_op_mode_mvm_start() 1358 mvm->bios_enable_puncturing = iwl_uefi_get_puncturing(&mvm->fwrt); in iwl_op_mode_mvm_start() [all …]
|
H A D | debugfs.c | 35 mvm->fwrt.cur_fw_img != IWL_UCODE_REGULAR) in iwl_dbgfs_ctdp_budget_read() 69 mvm->fwrt.cur_fw_img != IWL_UCODE_REGULAR) in iwl_dbgfs_stop_ctdp_write() 99 mvm->fwrt.cur_fw_img != IWL_UCODE_REGULAR) in iwl_dbgfs_start_ctdp_write() 113 mvm->fwrt.cur_fw_img != IWL_UCODE_REGULAR) in iwl_dbgfs_force_ctkill_write() 128 mvm->fwrt.cur_fw_img != IWL_UCODE_REGULAR) in iwl_dbgfs_tx_flush_write() 168 img = &mvm->fw->img[mvm->fwrt.cur_fw_img]; in iwl_dbgfs_sram_read() 200 img = &mvm->fw->img[mvm->fwrt.cur_fw_img]; in iwl_dbgfs_sram_write() 341 mvm->fwrt.geo_profiles[tbl_idx - 1].bands[0].chains[0], in iwl_dbgfs_sar_geo_profile_read() 342 mvm->fwrt.geo_profiles[tbl_idx - 1].bands[0].chains[1], in iwl_dbgfs_sar_geo_profile_read() 343 mvm->fwrt.geo_profiles[tbl_idx - 1].bands[0].max); in iwl_dbgfs_sar_geo_profile_read() [all …]
|
H A D | tt.c | 624 mvm->fwrt.cur_fw_img != IWL_UCODE_REGULAR) { in iwl_mvm_tzone_get_temp() 649 mvm->fwrt.cur_fw_img != IWL_UCODE_REGULAR) in iwl_mvm_tzone_set_trip_temp() 733 mvm->fwrt.cur_fw_img != IWL_UCODE_REGULAR) in iwl_mvm_tcool_set_cur_state()
|
H A D | utils.c | 770 trig = iwl_fw_dbg_trigger_on(&mvm->fwrt, ieee80211_vif_to_wdev(vif), in iwl_mvm_connection_loss() 781 iwl_fw_dbg_collect_trig(&mvm->fwrt, trig, "%s", errmsg); in iwl_mvm_connection_loss() 795 trig = iwl_fw_dbg_trigger_on(&mvm->fwrt, ieee80211_vif_to_wdev(vif), in iwl_mvm_event_frame_timeout_callback() 805 iwl_fw_dbg_collect_trig(&mvm->fwrt, trig, in iwl_mvm_event_frame_timeout_callback()
|
H A D | d3.c | 1374 iwl_fw_dbg_stop_restart_recording(&mvm->fwrt, NULL, true); in __iwl_mvm_suspend() 1413 iwl_fw_runtime_suspend(&mvm->fwrt); in iwl_mvm_suspend() 3529 iwl_fw_dbg_read_d3_debug_data(&mvm->fwrt); in __iwl_mvm_resume() 3537 iwl_dbg_tlv_time_point(&mvm->fwrt, in __iwl_mvm_resume() 3540 iwl_fw_dbg_collect_desc(&mvm->fwrt, in __iwl_mvm_resume() 3657 iwl_fw_runtime_resume(&mvm->fwrt); in iwl_mvm_resume() 3708 iwl_fw_dbg_read_d3_debug_data(&mvm->fwrt); in iwl_mvm_fast_resume() 3717 iwl_dbg_tlv_time_point(&mvm->fwrt, in iwl_mvm_fast_resume() 3720 iwl_fw_dbg_collect_desc(&mvm->fwrt, in iwl_mvm_fast_resume() 3757 iwl_fw_runtime_suspend(&mvm->fwrt); in iwl_mvm_d3_test_open() [all …]
|
H A D | time-event.c | 220 iwl_dbg_tlv_time_point(&mvm->fwrt, in iwl_mvm_te_check_disconnect() 276 trig = iwl_fw_dbg_trigger_on(&mvm->fwrt, in iwl_mvm_te_check_trigger() 296 iwl_fw_dbg_collect_trig(&mvm->fwrt, trig, in iwl_mvm_te_check_trigger()
|
H A D | mac-ctxt.c | 1684 iwl_dbg_tlv_time_point(&mvm->fwrt, in iwl_mvm_handle_missed_beacons_notif() 1687 trigger = iwl_fw_dbg_trigger_on(&mvm->fwrt, ieee80211_vif_to_wdev(vif), in iwl_mvm_handle_missed_beacons_notif() 1701 iwl_fw_dbg_collect_trig(&mvm->fwrt, trigger, NULL); in iwl_mvm_handle_missed_beacons_notif()
|
H A D | nvm.c | 592 !iwl_bios_get_mcc(&mvm->fwrt, mcc)) { in iwl_mvm_init_mcc()
|
H A D | rxmq.c | 2268 trig = iwl_fw_dbg_trigger_on(&mvm->fwrt, in iwl_mvm_rx_mpdu_mq() 2280 iwl_fw_dbg_collect_trig(&mvm->fwrt, trig, in iwl_mvm_rx_mpdu_mq()
|