Lines Matching full:dump

17  * struct iwl_fw_dump_ptrs - set of pointers needed for the fw-error-dump
37 IWL_DEBUG_INFO(fwrt, "WRT radio registers dump\n"); in iwl_read_radio_regs()
178 IWL_DEBUG_INFO(fwrt, "WRT RX FIFO dump\n"); in iwl_fw_dump_rxf()
210 IWL_DEBUG_INFO(fwrt, "WRT TX FIFO dump\n"); in iwl_fw_dump_txf()
532 IWL_DEBUG_INFO(trans, "WRT PRPH dump\n"); in iwl_dump_prph()
696 IWL_DEBUG_INFO(fwrt, "WRT memory dump. Type=%u\n", dump_mem->type); in iwl_fw_dump_mem()
768 IWL_DEBUG_INFO(fwrt, "WRT paging dump\n"); in iwl_dump_paging()
858 /* Dump SRAM only if no mem_tlvs */ in iwl_fw_error_dump_file()
877 if (iwl_fw_dbg_is_d3_debug_enabled(fwrt) && fwrt->dump.d3_debug_data) { in iwl_fw_error_dump_file()
882 /* If we only want a monitor dump, reset the file length */ in iwl_fw_error_dump_file()
918 cpu_to_le32(fwrt->dump.lmac_err_id[0]); in iwl_fw_error_dump_file()
921 cpu_to_le32(fwrt->dump.lmac_err_id[1]); in iwl_fw_error_dump_file()
922 dump_info->umac_err_id = cpu_to_le32(fwrt->dump.umac_err_id); in iwl_fw_error_dump_file()
928 /* Dump shared memory configuration */ in iwl_fw_error_dump_file()
957 /* We only dump the FIFOs if the FW is in error state */ in iwl_fw_error_dump_file()
978 /* In case we only want monitor dump, skip to dump trasport data */ in iwl_fw_error_dump_file()
1007 if (iwl_fw_dbg_is_d3_debug_enabled(fwrt) && fwrt->dump.d3_debug_data) { in iwl_fw_error_dump_file()
1014 memcpy(dump_data->data, fwrt->dump.d3_debug_data, data_size); in iwl_fw_error_dump_file()
1016 kfree(fwrt->dump.d3_debug_data); in iwl_fw_error_dump_file()
1017 fwrt->dump.d3_debug_data = NULL; in iwl_fw_error_dump_file()
1031 /* Dump fw's virtual image */ in iwl_fw_error_dump_file()
1046 * @dump_data: dump data
1323 struct iwl_txf_iter_data *iter = &fwrt->dump.txf_iter_data; in iwl_ini_txf_iter()
1377 struct iwl_txf_iter_data *iter = &fwrt->dump.txf_iter_data; in iwl_dump_ini_txf_iter()
1398 * read txf registers. for each register, write to the dump the in iwl_dump_ini_txf_iter()
1534 * parsing the dump in iwl_ini_get_rxf_data()
1579 * read rxf registers. for each register, write to the dump the in iwl_dump_ini_rxf_iter()
1741 struct iwl_fw_ini_error_dump *dump = data; in iwl_dump_ini_mem_fill_header() local
1743 dump->header.version = cpu_to_le32(IWL_INI_DUMP_VER); in iwl_dump_ini_mem_fill_header()
1745 return dump->data; in iwl_dump_ini_mem_fill_header()
1856 struct iwl_fw_ini_err_table_dump *dump = data; in iwl_dump_ini_err_table_fill_header() local
1858 dump->header.version = cpu_to_le32(IWL_INI_DUMP_VER); in iwl_dump_ini_err_table_fill_header()
1859 dump->version = reg->err_table.version; in iwl_dump_ini_err_table_fill_header()
1861 return dump->data; in iwl_dump_ini_err_table_fill_header()
1870 struct iwl_fw_ini_special_device_memory *dump = data; in iwl_dump_ini_special_mem_fill_header() local
1872 dump->header.version = cpu_to_le32(IWL_INI_DUMP_VER); in iwl_dump_ini_special_mem_fill_header()
1873 dump->type = reg->special_mem.type; in iwl_dump_ini_special_mem_fill_header()
1874 dump->version = reg->special_mem.version; in iwl_dump_ini_special_mem_fill_header()
1876 return dump->data; in iwl_dump_ini_special_mem_fill_header()
1884 struct iwl_fw_ini_error_dump *dump = data; in iwl_dump_ini_imr_fill_header() local
1886 dump->header.version = cpu_to_le32(IWL_INI_DUMP_VER); in iwl_dump_ini_imr_fill_header()
1888 return dump->data; in iwl_dump_ini_imr_fill_header()
2094 struct iwl_txf_iter_data *iter = &fwrt->dump.txf_iter_data; in iwl_dump_ini_txf_get_size()
2203 * struct iwl_dump_ini_mem_ops - ini memory dump operations
2208 * @fill_range: copies a given memory range into the dump.
2225 * iwl_dump_ini_mem - dump memory region
2228 * @list: list to add the dump tlv to
2230 * @ops: memory dump operations
2232 * Creates a dump tlv and copy a memory region into it.
2234 * Returns: the size of the current dump tlv or 0 if failed
2252 IWL_DEBUG_FW(fwrt, "WRT: Collecting region: dump type=%d, id=%d, type=%d\n", in iwl_dump_ini_mem()
2262 "WRT: no dump - type %d and policy mismatch=%d\n", in iwl_dump_ini_mem()
2268 "WRT: no dump - type %d and policy mismatch=%d\n", in iwl_dump_ini_mem()
2274 "WRT: no dump - type %d and policy mismatch=%d\n", in iwl_dump_ini_mem()
2341 "WRT: Failed to dump region: id=%d, type=%d\n", in iwl_dump_ini_mem()
2373 struct iwl_fw_ini_dump_info *dump; in iwl_dump_ini_info() local
2376 u32 size = sizeof(*tlv) + sizeof(*dump); in iwl_dump_ini_info()
2395 dump = (void *)tlv->data; in iwl_dump_ini_info()
2397 dump->version = cpu_to_le32(IWL_INI_DUMP_VER); in iwl_dump_ini_info()
2398 dump->time_point = trigger->time_point; in iwl_dump_ini_info()
2399 dump->trigger_reason = trigger->trigger_reason; in iwl_dump_ini_info()
2400 dump->external_cfg_state = in iwl_dump_ini_info()
2403 dump->ver_type = cpu_to_le32(fwrt->dump.fw_ver.type); in iwl_dump_ini_info()
2404 dump->ver_subtype = cpu_to_le32(fwrt->dump.fw_ver.subtype); in iwl_dump_ini_info()
2406 dump->hw_step = cpu_to_le32(fwrt->trans->hw_rev_step); in iwl_dump_ini_info()
2426 dump->hw_type = cpu_to_le32(hw_type); in iwl_dump_ini_info()
2428 dump->rf_id_flavor = in iwl_dump_ini_info()
2430 dump->rf_id_dash = cpu_to_le32(CSR_HW_RFID_DASH(fwrt->trans->hw_rf_id)); in iwl_dump_ini_info()
2431 dump->rf_id_step = cpu_to_le32(CSR_HW_RFID_STEP(fwrt->trans->hw_rf_id)); in iwl_dump_ini_info()
2432 dump->rf_id_type = cpu_to_le32(CSR_HW_RFID_TYPE(fwrt->trans->hw_rf_id)); in iwl_dump_ini_info()
2434 dump->lmac_major = cpu_to_le32(fwrt->dump.fw_ver.lmac_major); in iwl_dump_ini_info()
2435 dump->lmac_minor = cpu_to_le32(fwrt->dump.fw_ver.lmac_minor); in iwl_dump_ini_info()
2436 dump->umac_major = cpu_to_le32(fwrt->dump.fw_ver.umac_major); in iwl_dump_ini_info()
2437 dump->umac_minor = cpu_to_le32(fwrt->dump.fw_ver.umac_minor); in iwl_dump_ini_info()
2439 dump->fw_mon_mode = cpu_to_le32(fwrt->trans->dbg.ini_dest); in iwl_dump_ini_info()
2440 dump->regions_mask = trigger->regions_mask & in iwl_dump_ini_info()
2443 dump->build_tag_len = cpu_to_le32(sizeof(dump->build_tag)); in iwl_dump_ini_info()
2444 memcpy(dump->build_tag, fwrt->fw->human_readable, in iwl_dump_ini_info()
2445 sizeof(dump->build_tag)); in iwl_dump_ini_info()
2447 cfg_name = dump->cfg_names; in iwl_dump_ini_info()
2448 dump->num_of_cfg_names = cpu_to_le32(num_of_cfg_names); in iwl_dump_ini_info()
2464 /* add dump info TLV to the beginning of the list since it needs to be in iwl_dump_ini_info()
2465 * the first TLV in the dump in iwl_dump_ini_info()
2494 /* add the dump file name extension tlv to the list */ in iwl_dump_ini_file_name_info()
2760 fwrt->dump.lmac_err_id[0] = 0; in iwl_fw_free_dump_desc()
2762 fwrt->dump.lmac_err_id[1] = 0; in iwl_fw_free_dump_desc()
2763 fwrt->dump.umac_err_id = 0; in iwl_fw_free_dump_desc()
2882 if (fwrt->dump.active_wks == ~0UL) in iwl_fw_dbg_collect_desc()
2885 idx = ffz(fwrt->dump.active_wks); in iwl_fw_dbg_collect_desc()
2888 test_and_set_bit(fwrt->dump.wks[idx].idx, &fwrt->dump.active_wks)) in iwl_fw_dbg_collect_desc()
2891 wk_data = &fwrt->dump.wks[idx]; in iwl_fw_dbg_collect_desc()
3047 if (fwrt->dump.conf != FW_DBG_INVALID) in iwl_fw_start_dbg_conf()
3049 fwrt->dump.conf); in iwl_fw_start_dbg_conf()
3069 fwrt->dump.conf = conf_id; in iwl_fw_start_dbg_conf()
3104 &fwrt->dump.wks[wk_idx].dump_data; in iwl_fw_dbg_collect_sync()
3105 if (!test_bit(wk_idx, &fwrt->dump.active_wks)) in iwl_fw_dbg_collect_sync()
3110 IWL_ERR(fwrt, "dump trigger data is not set\n"); in iwl_fw_dbg_collect_sync()
3115 IWL_ERR(fwrt, "Device is not enabled - cannot dump error\n"); in iwl_fw_dbg_collect_sync()
3119 /* there's no point in fw dump if the bus is dead */ in iwl_fw_dbg_collect_sync()
3121 IWL_ERR(fwrt, "Skip fw error dump since bus is dead\n"); in iwl_fw_dbg_collect_sync()
3129 iwl_fw_error_ini_dump(fwrt, &fwrt->dump.wks[wk_idx].dump_data); in iwl_fw_dbg_collect_sync()
3131 iwl_fw_error_dump(fwrt, &fwrt->dump.wks[wk_idx].dump_data); in iwl_fw_dbg_collect_sync()
3141 IWL_DEBUG_FW_INFO(fwrt, "WRT: sending dump complete\n"); in iwl_fw_dbg_collect_sync()
3157 clear_bit(wk_idx, &fwrt->dump.active_wks); in iwl_fw_dbg_collect_sync()
3170 IWL_WARN(fwrt, "WRT: Trigger %d is not active, aborting dump\n", in iwl_fw_dbg_ini_collect()
3186 if (fwrt->dump.active_wks == ~0UL) in iwl_fw_dbg_ini_collect()
3189 idx = ffz(fwrt->dump.active_wks); in iwl_fw_dbg_ini_collect()
3192 test_and_set_bit(fwrt->dump.wks[idx].idx, &fwrt->dump.active_wks)) in iwl_fw_dbg_ini_collect()
3195 fwrt->dump.wks[idx].dump_data = *dump_data; in iwl_fw_dbg_ini_collect()
3208 &fwrt->dump.wks[idx].wk, in iwl_fw_dbg_ini_collect()
3219 container_of(wks, typeof(*fwrt), dump.wks[wks->idx]); in iwl_fw_error_dump_wk()
3240 if (!fwrt->dump.d3_debug_data) { in iwl_fw_dbg_read_d3_debug_data()
3241 fwrt->dump.d3_debug_data = kmalloc(cfg->d3_debug_data_length, in iwl_fw_dbg_read_d3_debug_data()
3243 if (!fwrt->dump.d3_debug_data) { in iwl_fw_dbg_read_d3_debug_data()
3252 fwrt->dump.d3_debug_data, in iwl_fw_dbg_read_d3_debug_data()
3258 fwrt->dump.d3_debug_data, in iwl_fw_dbg_read_d3_debug_data()