diff options
Diffstat (limited to 'drivers/net/wireless/intel/iwlwifi/mvm/utils.c')
| -rw-r--r-- | drivers/net/wireless/intel/iwlwifi/mvm/utils.c | 12 | 
1 files changed, 7 insertions, 5 deletions
diff --git a/drivers/net/wireless/intel/iwlwifi/mvm/utils.c b/drivers/net/wireless/intel/iwlwifi/mvm/utils.c index 4a18997fb48a..4649327abb45 100644 --- a/drivers/net/wireless/intel/iwlwifi/mvm/utils.c +++ b/drivers/net/wireless/intel/iwlwifi/mvm/utils.c @@ -457,12 +457,14 @@ static void iwl_mvm_dump_umac_error_log(struct iwl_mvm *mvm)  {  	struct iwl_trans *trans = mvm->trans;  	struct iwl_umac_error_event_table table; +	u32 base = mvm->trans->umac_error_event_table; -	if (!mvm->support_umac_log) +	if (!mvm->support_umac_log && +	    !(mvm->trans->error_event_table_tlv_status & +	      IWL_ERROR_EVENT_TABLE_UMAC))  		return; -	iwl_trans_read_mem_bytes(trans, mvm->umac_error_event_table, &table, -				 sizeof(table)); +	iwl_trans_read_mem_bytes(trans, base, &table, sizeof(table));  	if (table.valid)  		mvm->fwrt.dump.umac_err_id = table.error_id; @@ -494,7 +496,7 @@ static void iwl_mvm_dump_lmac_error_log(struct iwl_mvm *mvm, u8 lmac_num)  {  	struct iwl_trans *trans = mvm->trans;  	struct iwl_error_event_table table; -	u32 val, base = mvm->error_event_table[lmac_num]; +	u32 val, base = mvm->trans->lmac_error_event_table[lmac_num];  	if (mvm->fwrt.cur_fw_img == IWL_UCODE_INIT) {  		if (!base) @@ -590,7 +592,7 @@ void iwl_mvm_dump_nic_error_log(struct iwl_mvm *mvm)  	iwl_mvm_dump_lmac_error_log(mvm, 0); -	if (mvm->error_event_table[1]) +	if (mvm->trans->lmac_error_event_table[1])  		iwl_mvm_dump_lmac_error_log(mvm, 1);  	iwl_mvm_dump_umac_error_log(mvm);  |