Lines Matching refs:vha

358 	scsi_qla_host_t *vha = pci_get_drvdata(ha->pdev);  in qla82xx_pci_set_crbwindow_2M()  local
370 ql_dbg(ql_dbg_p3p, vha, 0xb000, in qla82xx_pci_set_crbwindow_2M()
381 scsi_qla_host_t *vha = pci_get_drvdata(ha->pdev); in qla82xx_pci_set_crbwindow() local
412 ql_dbg(ql_dbg_p3p, vha, 0xb001, in qla82xx_pci_set_crbwindow()
578 scsi_qla_host_t *vha = pci_get_drvdata(ha->pdev); in qla82xx_pci_set_window() local
590 ql_dbg(ql_dbg_p3p, vha, 0xb003, in qla82xx_pci_set_window()
599 ql_log(ql_log_warn, vha, 0xb004, in qla82xx_pci_set_window()
612 ql_log(ql_log_warn, vha, 0xb005, in qla82xx_pci_set_window()
628 ql_log(ql_log_warn, vha, 0xb006, in qla82xx_pci_set_window()
640 ql_log(ql_log_warn, vha, 0xb007, in qla82xx_pci_set_window()
687 scsi_qla_host_t *vha = pci_get_drvdata(ha->pdev); in qla82xx_pci_mem_read_direct() local
699 ql_log(ql_log_fatal, vha, 0xb008, in qla82xx_pci_mem_read_direct()
759 scsi_qla_host_t *vha = pci_get_drvdata(ha->pdev); in qla82xx_pci_mem_write_direct() local
771 ql_log(ql_log_fatal, vha, 0xb009, in qla82xx_pci_mem_write_direct()
851 scsi_qla_host_t *vha = pci_get_drvdata(ha->pdev); in qla82xx_rom_lock() local
860 ql_dbg(ql_dbg_p3p, vha, 0xb157, in qla82xx_rom_lock()
883 scsi_qla_host_t *vha = pci_get_drvdata(ha->pdev); in qla82xx_wait_rom_busy() local
890 ql_dbg(ql_dbg_p3p, vha, 0xb00a, in qla82xx_wait_rom_busy()
904 scsi_qla_host_t *vha = pci_get_drvdata(ha->pdev); in qla82xx_wait_rom_done() local
911 ql_dbg(ql_dbg_p3p, vha, 0xb00b, in qla82xx_wait_rom_done()
959 scsi_qla_host_t *vha = pci_get_drvdata(ha->pdev); in qla82xx_rom_fast_read() local
968 ql_log(ql_log_fatal, vha, 0x00b9, in qla82xx_rom_fast_read()
981 scsi_qla_host_t *vha = pci_get_drvdata(ha->pdev); in qla82xx_read_status_reg() local
985 ql_log(ql_log_warn, vha, 0xb00c, in qla82xx_read_status_reg()
1000 scsi_qla_host_t *vha = pci_get_drvdata(ha->pdev); in qla82xx_flash_wait_write_finish() local
1010 ql_log(ql_log_warn, vha, 0xb00d, in qla82xx_flash_wait_write_finish()
1038 scsi_qla_host_t *vha = pci_get_drvdata(ha->pdev); in qla82xx_write_status_reg() local
1044 ql_log(ql_log_warn, vha, 0xb00e, in qla82xx_write_status_reg()
1054 scsi_qla_host_t *vha = pci_get_drvdata(ha->pdev); in qla82xx_write_disable_flash() local
1057 ql_log(ql_log_warn, vha, 0xb00f, in qla82xx_write_disable_flash()
1069 scsi_qla_host_t *vha = pci_get_drvdata(ha->pdev); in ql82xx_rom_lock_d() local
1078 ql_log(ql_log_warn, vha, 0xb010, in ql82xx_rom_lock_d()
1090 scsi_qla_host_t *vha = pci_get_drvdata(ha->pdev); in qla82xx_write_flash_dword() local
1094 ql_log(ql_log_warn, vha, 0xb011, in qla82xx_write_flash_dword()
1108 ql_log(ql_log_warn, vha, 0xb012, in qla82xx_write_flash_dword()
1125 qla82xx_pinit_from_rom(scsi_qla_host_t *vha) in qla82xx_pinit_from_rom() argument
1132 struct qla_hw_data *ha = vha->hw; in qla82xx_pinit_from_rom()
1187 if (test_bit(ABORT_ISP_ACTIVE, &vha->dpc_flags)) in qla82xx_pinit_from_rom()
1201 ql_log(ql_log_fatal, vha, 0x006e, in qla82xx_pinit_from_rom()
1214 ql_log(ql_log_fatal, vha, 0x0071, in qla82xx_pinit_from_rom()
1219 ql_log(ql_log_info, vha, 0x0072, in qla82xx_pinit_from_rom()
1224 ql_log(ql_log_fatal, vha, 0x010c, in qla82xx_pinit_from_rom()
1276 ql_log(ql_log_fatal, vha, 0x0116, in qla82xx_pinit_from_rom()
1734 qla82xx_pci_config(scsi_qla_host_t *vha) in qla82xx_pci_config() argument
1736 struct qla_hw_data *ha = vha->hw; in qla82xx_pci_config()
1742 ql_dbg(ql_dbg_init, vha, 0x0043, in qla82xx_pci_config()
1755 qla82xx_reset_chip(scsi_qla_host_t *vha) in qla82xx_reset_chip() argument
1757 struct qla_hw_data *ha = vha->hw; in qla82xx_reset_chip()
1761 void qla82xx_config_rings(struct scsi_qla_host *vha) in qla82xx_config_rings() argument
1763 struct qla_hw_data *ha = vha->hw; in qla82xx_config_rings()
1870 qla82xx_validate_firmware_blob(scsi_qla_host_t *vha, uint8_t fw_type) in qla82xx_validate_firmware_blob() argument
1874 struct qla_hw_data *ha = vha->hw; in qla82xx_validate_firmware_blob()
1902 scsi_qla_host_t *vha = pci_get_drvdata(ha->pdev); in qla82xx_check_cmdpeg_state() local
1918 ql_log(ql_log_info, vha, 0x00a8, in qla82xx_check_cmdpeg_state()
1926 ql_log(ql_log_fatal, vha, 0x00a9, in qla82xx_check_cmdpeg_state()
1941 scsi_qla_host_t *vha = pci_get_drvdata(ha->pdev); in qla82xx_check_rcvpeg_state() local
1957 ql_log(ql_log_info, vha, 0x00ab, in qla82xx_check_rcvpeg_state()
1965 ql_log(ql_log_fatal, vha, 0x00ac, in qla82xx_check_rcvpeg_state()
1983 qla82xx_mbx_completion(scsi_qla_host_t *vha, uint16_t mb0) in qla82xx_mbx_completion() argument
1987 struct qla_hw_data *ha = vha->hw; in qla82xx_mbx_completion()
2001 ql_dbg(ql_dbg_async, vha, 0x5053, in qla82xx_mbx_completion()
2018 scsi_qla_host_t *vha; in qla82xx_intr_handler() local
2056 vha = pci_get_drvdata(ha->pdev); in qla82xx_intr_handler()
2067 qla82xx_mbx_completion(vha, MSW(stat)); in qla82xx_intr_handler()
2075 qla2x00_async_event(vha, rsp, mb); in qla82xx_intr_handler()
2078 qla24xx_process_response_queue(vha, rsp); in qla82xx_intr_handler()
2081 ql_dbg(ql_dbg_async, vha, 0x5054, in qla82xx_intr_handler()
2102 scsi_qla_host_t *vha; in qla82xx_msix_default() local
2123 vha = pci_get_drvdata(ha->pdev); in qla82xx_msix_default()
2126 if (qla2x00_check_reg32_for_disconnect(vha, host_int)) in qla82xx_msix_default()
2136 qla82xx_mbx_completion(vha, MSW(stat)); in qla82xx_msix_default()
2144 qla2x00_async_event(vha, rsp, mb); in qla82xx_msix_default()
2147 qla24xx_process_response_queue(vha, rsp); in qla82xx_msix_default()
2150 ql_dbg(ql_dbg_async, vha, 0x5041, in qla82xx_msix_default()
2168 scsi_qla_host_t *vha; in qla82xx_msix_rsp_q() local
2185 vha = pci_get_drvdata(ha->pdev); in qla82xx_msix_rsp_q()
2187 if (qla2x00_check_reg32_for_disconnect(vha, host_int)) in qla82xx_msix_rsp_q()
2189 qla24xx_process_response_queue(vha, rsp); in qla82xx_msix_rsp_q()
2199 scsi_qla_host_t *vha; in qla82xx_poll() local
2219 vha = pci_get_drvdata(ha->pdev); in qla82xx_poll()
2222 if (qla2x00_check_reg32_for_disconnect(vha, host_int)) in qla82xx_poll()
2231 qla82xx_mbx_completion(vha, MSW(stat)); in qla82xx_poll()
2239 qla2x00_async_event(vha, rsp, mb); in qla82xx_poll()
2242 qla24xx_process_response_queue(vha, rsp); in qla82xx_poll()
2245 ql_dbg(ql_dbg_p3p, vha, 0xb013, in qla82xx_poll()
2259 scsi_qla_host_t *vha = pci_get_drvdata(ha->pdev); in qla82xx_enable_intrs() local
2260 qla82xx_mbx_intr_enable(vha); in qla82xx_enable_intrs()
2273 scsi_qla_host_t *vha = pci_get_drvdata(ha->pdev); in qla82xx_disable_intrs() local
2274 qla82xx_mbx_intr_disable(vha); in qla82xx_disable_intrs()
2302 qla82xx_set_idc_version(scsi_qla_host_t *vha) in qla82xx_set_idc_version() argument
2306 struct qla_hw_data *ha = vha->hw; in qla82xx_set_idc_version()
2312 ql_log(ql_log_info, vha, 0xb082, in qla82xx_set_idc_version()
2317 ql_log(ql_log_info, vha, 0xb083, in qla82xx_set_idc_version()
2325 qla82xx_set_drv_active(scsi_qla_host_t *vha) in qla82xx_set_drv_active() argument
2328 struct qla_hw_data *ha = vha->hw; in qla82xx_set_drv_active()
2371 scsi_qla_host_t *vha = pci_get_drvdata(ha->pdev); in qla82xx_set_rst_ready() local
2381 ql_dbg(ql_dbg_init, vha, 0x00bb, in qla82xx_set_rst_ready()
2407 qla82xx_clear_qsnt_ready(scsi_qla_host_t *vha) in qla82xx_clear_qsnt_ready() argument
2409 struct qla_hw_data *ha = vha->hw; in qla82xx_clear_qsnt_ready()
2418 qla82xx_load_fw(scsi_qla_host_t *vha) in qla82xx_load_fw() argument
2422 struct qla_hw_data *ha = vha->hw; in qla82xx_load_fw()
2424 if (qla82xx_pinit_from_rom(vha) != QLA_SUCCESS) { in qla82xx_load_fw()
2425 ql_log(ql_log_fatal, vha, 0x009f, in qla82xx_load_fw()
2444 ql_log(ql_log_info, vha, 0x00a0, in qla82xx_load_fw()
2448 ql_log(ql_log_info, vha, 0x00a1, in qla82xx_load_fw()
2452 ql_log(ql_log_warn, vha, 0x0108, in qla82xx_load_fw()
2457 ql_log(ql_log_info, vha, 0x00a2, in qla82xx_load_fw()
2461 blob = ha->hablob = qla2x00_request_firmware(vha); in qla82xx_load_fw()
2463 ql_log(ql_log_fatal, vha, 0x00a3, in qla82xx_load_fw()
2469 if (qla82xx_validate_firmware_blob(vha, in qla82xx_load_fw()
2472 if (qla82xx_validate_firmware_blob(vha, in qla82xx_load_fw()
2474 ql_log(ql_log_fatal, vha, 0x00a4, in qla82xx_load_fw()
2481 ql_log(ql_log_info, vha, 0x00a5, in qla82xx_load_fw()
2485 ql_log(ql_log_fatal, vha, 0x00a6, in qla82xx_load_fw()
2498 qla82xx_start_firmware(scsi_qla_host_t *vha) in qla82xx_start_firmware() argument
2501 struct qla_hw_data *ha = vha->hw; in qla82xx_start_firmware()
2516 if (qla82xx_load_fw(vha) != QLA_SUCCESS) { in qla82xx_start_firmware()
2517 ql_log(ql_log_fatal, vha, 0x00a7, in qla82xx_start_firmware()
2524 ql_log(ql_log_fatal, vha, 0x00aa, in qla82xx_start_firmware()
2538 qla82xx_read_flash_data(scsi_qla_host_t *vha, uint32_t *dwptr, uint32_t faddr, in qla82xx_read_flash_data() argument
2543 struct qla_hw_data *ha = vha->hw; in qla82xx_read_flash_data()
2548 ql_log(ql_log_warn, vha, 0x0106, in qla82xx_read_flash_data()
2563 scsi_qla_host_t *vha = pci_get_drvdata(ha->pdev); in qla82xx_unprotect_flash() local
2567 ql_log(ql_log_warn, vha, 0xb014, in qla82xx_unprotect_flash()
2584 ql_log(ql_log_warn, vha, 0xb015, in qla82xx_unprotect_flash()
2597 scsi_qla_host_t *vha = pci_get_drvdata(ha->pdev); in qla82xx_protect_flash() local
2601 ql_log(ql_log_warn, vha, 0xb016, in qla82xx_protect_flash()
2614 ql_log(ql_log_warn, vha, 0xb017, in qla82xx_protect_flash()
2618 ql_log(ql_log_warn, vha, 0xb018, in qla82xx_protect_flash()
2629 scsi_qla_host_t *vha = pci_get_drvdata(ha->pdev); in qla82xx_erase_sector() local
2633 ql_log(ql_log_warn, vha, 0xb019, in qla82xx_erase_sector()
2644 ql_log(ql_log_warn, vha, 0xb01a, in qla82xx_erase_sector()
2659 qla82xx_read_optrom_data(struct scsi_qla_host *vha, uint8_t *buf, in qla82xx_read_optrom_data() argument
2662 scsi_block_requests(vha->host); in qla82xx_read_optrom_data()
2663 qla82xx_read_flash_data(vha, (uint32_t *)buf, offset, length); in qla82xx_read_optrom_data()
2664 scsi_unblock_requests(vha->host); in qla82xx_read_optrom_data()
2669 qla82xx_write_flash_data(struct scsi_qla_host *vha, uint32_t *dwptr, in qla82xx_write_flash_data() argument
2678 struct qla_hw_data *ha = vha->hw; in qla82xx_write_flash_data()
2688 ql_log(ql_log_warn, vha, 0xb01b, in qla82xx_write_flash_data()
2700 ql_log(ql_log_warn, vha, 0xb01c, in qla82xx_write_flash_data()
2711 ql_log(ql_log_warn, vha, 0xb01d, in qla82xx_write_flash_data()
2723 ret = qla2x00_load_ram(vha, optrom_dma, in qla82xx_write_flash_data()
2727 ql_log(ql_log_warn, vha, 0xb01e, in qla82xx_write_flash_data()
2732 ql_log(ql_log_warn, vha, 0xb01f, in qla82xx_write_flash_data()
2749 ql_dbg(ql_dbg_p3p, vha, 0xb020, in qla82xx_write_flash_data()
2758 ql_log(ql_log_warn, vha, 0xb021, in qla82xx_write_flash_data()
2768 qla82xx_write_optrom_data(struct scsi_qla_host *vha, uint8_t *buf, in qla82xx_write_optrom_data() argument
2774 scsi_block_requests(vha->host); in qla82xx_write_optrom_data()
2775 rval = qla82xx_write_flash_data(vha, (uint32_t *)buf, offset, in qla82xx_write_optrom_data()
2777 scsi_unblock_requests(vha->host); in qla82xx_write_optrom_data()
2788 qla82xx_start_iocbs(scsi_qla_host_t *vha) in qla82xx_start_iocbs() argument
2790 struct qla_hw_data *ha = vha->hw; in qla82xx_start_iocbs()
2823 scsi_qla_host_t *vha = pci_get_drvdata(ha->pdev); in qla82xx_rom_lock_recovery() local
2829 ql_log(ql_log_info, vha, 0xb022, in qla82xx_rom_lock_recovery()
2852 qla82xx_device_bootstrap(scsi_qla_host_t *vha) in qla82xx_device_bootstrap() argument
2857 struct qla_hw_data *ha = vha->hw; in qla82xx_device_bootstrap()
2880 ql_log(ql_log_info, vha, 0x009e, in qla82xx_device_bootstrap()
2885 rval = qla82xx_start_firmware(vha); in qla82xx_device_bootstrap()
2889 ql_log(ql_log_fatal, vha, 0x00ad, in qla82xx_device_bootstrap()
2897 ql_log(ql_log_info, vha, 0x00ae, in qla82xx_device_bootstrap()
2915 qla82xx_need_qsnt_handler(scsi_qla_host_t *vha) in qla82xx_need_qsnt_handler() argument
2917 struct qla_hw_data *ha = vha->hw; in qla82xx_need_qsnt_handler()
2921 if (vha->flags.online) { in qla82xx_need_qsnt_handler()
2923 qla2x00_quiesce_io(vha); in qla82xx_need_qsnt_handler()
2943 ql_log(ql_log_info, vha, 0xb023, in qla82xx_need_qsnt_handler()
2949 ql_log(ql_log_info, vha, 0xb025, in qla82xx_need_qsnt_handler()
2952 qla2x00_perform_loop_resync(vha); in qla82xx_need_qsnt_handler()
2955 qla82xx_clear_qsnt_ready(vha); in qla82xx_need_qsnt_handler()
2970 ql_log(ql_log_info, vha, 0xb026, in qla82xx_need_qsnt_handler()
2987 qla82xx_wait_for_state_change(scsi_qla_host_t *vha, uint32_t curr_state) in qla82xx_wait_for_state_change() argument
2989 struct qla_hw_data *ha = vha->hw; in qla82xx_wait_for_state_change()
3003 qla8xxx_dev_failed_handler(scsi_qla_host_t *vha) in qla8xxx_dev_failed_handler() argument
3005 struct qla_hw_data *ha = vha->hw; in qla8xxx_dev_failed_handler()
3008 ql_log(ql_log_fatal, vha, 0x00b8, in qla8xxx_dev_failed_handler()
3020 vha->device_flags |= DFLG_DEV_FAILED; in qla8xxx_dev_failed_handler()
3021 qla2x00_abort_all_cmds(vha, DID_NO_CONNECT << 16); in qla8xxx_dev_failed_handler()
3022 qla2x00_mark_all_devices_lost(vha, 0); in qla8xxx_dev_failed_handler()
3023 vha->flags.online = 0; in qla8xxx_dev_failed_handler()
3024 vha->flags.init_done = 0; in qla8xxx_dev_failed_handler()
3039 qla82xx_need_reset_handler(scsi_qla_host_t *vha) in qla82xx_need_reset_handler() argument
3044 struct qla_hw_data *ha = vha->hw; in qla82xx_need_reset_handler()
3047 if (vha->flags.online) { in qla82xx_need_reset_handler()
3049 qla2x00_abort_isp_cleanup(vha); in qla82xx_need_reset_handler()
3050 ha->isp_ops->get_flash_version(vha, req->ring); in qla82xx_need_reset_handler()
3051 ha->isp_ops->nvram_config(vha); in qla82xx_need_reset_handler()
3057 ql_dbg(ql_dbg_p3p, vha, 0xb028, in qla82xx_need_reset_handler()
3063 ql_dbg(ql_dbg_p3p, vha, 0xb029, in qla82xx_need_reset_handler()
3074 ql_dbg(ql_dbg_p3p, vha, 0xb02a, in qla82xx_need_reset_handler()
3082 ql_log(ql_log_warn, vha, 0x00b5, in qla82xx_need_reset_handler()
3096 ql_dbg(ql_dbg_p3p, vha, 0xb02b, in qla82xx_need_reset_handler()
3101 ql_log(ql_log_info, vha, 0x00b6, in qla82xx_need_reset_handler()
3109 ql_log(ql_log_info, vha, 0x00b7, in qla82xx_need_reset_handler()
3114 if (qla82xx_md_collect(vha)) in qla82xx_need_reset_handler()
3115 ql_log(ql_log_warn, vha, 0xb02c, in qla82xx_need_reset_handler()
3118 ql_log(ql_log_warn, vha, 0xb04f, in qla82xx_need_reset_handler()
3124 qla82xx_check_md_needed(scsi_qla_host_t *vha) in qla82xx_check_md_needed() argument
3126 struct qla_hw_data *ha = vha->hw; in qla82xx_check_md_needed()
3134 rval = qla2x00_get_fw_version(vha); in qla82xx_check_md_needed()
3144 ql_dbg(ql_dbg_p3p, vha, 0xb02d, in qla82xx_check_md_needed()
3153 qla82xx_md_free(vha); in qla82xx_check_md_needed()
3155 qla82xx_md_prep(vha); in qla82xx_check_md_needed()
3158 ql_log(ql_log_info, vha, 0xb02e, in qla82xx_check_md_needed()
3166 qla82xx_check_fw_alive(scsi_qla_host_t *vha) in qla82xx_check_fw_alive() argument
3171 fw_heartbeat_counter = qla82xx_rd_32(vha->hw, in qla82xx_check_fw_alive()
3175 ql_dbg(ql_dbg_timer, vha, 0x6003, in qla82xx_check_fw_alive()
3180 if (vha->fw_heartbeat_counter == fw_heartbeat_counter) { in qla82xx_check_fw_alive()
3181 vha->seconds_since_last_heartbeat++; in qla82xx_check_fw_alive()
3183 if (vha->seconds_since_last_heartbeat == 2) { in qla82xx_check_fw_alive()
3184 vha->seconds_since_last_heartbeat = 0; in qla82xx_check_fw_alive()
3188 vha->seconds_since_last_heartbeat = 0; in qla82xx_check_fw_alive()
3189 vha->fw_heartbeat_counter = fw_heartbeat_counter; in qla82xx_check_fw_alive()
3191 ql_dbg(ql_dbg_timer, vha, 0x6004, in qla82xx_check_fw_alive()
3208 qla82xx_device_state_handler(scsi_qla_host_t *vha) in qla82xx_device_state_handler() argument
3214 struct qla_hw_data *ha = vha->hw; in qla82xx_device_state_handler()
3218 if (!vha->flags.init_done) { in qla82xx_device_state_handler()
3219 qla82xx_set_drv_active(vha); in qla82xx_device_state_handler()
3220 qla82xx_set_idc_version(vha); in qla82xx_device_state_handler()
3225 ql_log(ql_log_info, vha, 0x009b, in qla82xx_device_state_handler()
3236 ql_log(ql_log_fatal, vha, 0x009c, in qla82xx_device_state_handler()
3247 ql_log(ql_log_info, vha, 0x009d, in qla82xx_device_state_handler()
3259 rval = qla82xx_device_bootstrap(vha); in qla82xx_device_state_handler()
3268 qla82xx_need_reset_handler(vha); in qla82xx_device_state_handler()
3278 qla82xx_need_qsnt_handler(vha); in qla82xx_device_state_handler()
3299 qla8xxx_dev_failed_handler(vha); in qla82xx_device_state_handler()
3315 static int qla82xx_check_temp(scsi_qla_host_t *vha) in qla82xx_check_temp() argument
3318 struct qla_hw_data *ha = vha->hw; in qla82xx_check_temp()
3325 ql_log(ql_log_warn, vha, 0x600e, in qla82xx_check_temp()
3331 ql_log(ql_log_warn, vha, 0x600f, in qla82xx_check_temp()
3339 int qla82xx_read_temperature(scsi_qla_host_t *vha) in qla82xx_read_temperature() argument
3343 temp = qla82xx_rd_32(vha->hw, CRB_TEMP_STATE); in qla82xx_read_temperature()
3347 void qla82xx_clear_pending_mbx(scsi_qla_host_t *vha) in qla82xx_clear_pending_mbx() argument
3349 struct qla_hw_data *ha = vha->hw; in qla82xx_clear_pending_mbx()
3354 ql_log(ql_log_warn, vha, 0x6010, in qla82xx_clear_pending_mbx()
3361 void qla82xx_watchdog(scsi_qla_host_t *vha) in qla82xx_watchdog() argument
3364 struct qla_hw_data *ha = vha->hw; in qla82xx_watchdog()
3369 if (qla82xx_check_temp(vha)) { in qla82xx_watchdog()
3370 set_bit(ISP_UNRECOVERABLE, &vha->dpc_flags); in qla82xx_watchdog()
3372 qla82xx_clear_pending_mbx(vha); in qla82xx_watchdog()
3374 !test_bit(ISP_ABORT_NEEDED, &vha->dpc_flags)) { in qla82xx_watchdog()
3375 ql_log(ql_log_warn, vha, 0x6001, in qla82xx_watchdog()
3377 set_bit(ISP_ABORT_NEEDED, &vha->dpc_flags); in qla82xx_watchdog()
3379 !test_bit(ISP_QUIESCE_NEEDED, &vha->dpc_flags)) { in qla82xx_watchdog()
3380 ql_log(ql_log_warn, vha, 0x6002, in qla82xx_watchdog()
3382 set_bit(ISP_QUIESCE_NEEDED, &vha->dpc_flags); in qla82xx_watchdog()
3384 !test_bit(ISP_UNRECOVERABLE, &vha->dpc_flags) && in qla82xx_watchdog()
3385 vha->flags.online == 1) { in qla82xx_watchdog()
3386 ql_log(ql_log_warn, vha, 0xb055, in qla82xx_watchdog()
3388 set_bit(ISP_UNRECOVERABLE, &vha->dpc_flags); in qla82xx_watchdog()
3390 qla82xx_clear_pending_mbx(vha); in qla82xx_watchdog()
3392 if (qla82xx_check_fw_alive(vha)) { in qla82xx_watchdog()
3393 ql_dbg(ql_dbg_timer, vha, 0x6011, in qla82xx_watchdog()
3399 ql_log(ql_log_info, vha, 0x6005, in qla82xx_watchdog()
3417 ql_log(ql_log_warn, vha, 0xb052, in qla82xx_watchdog()
3423 &vha->dpc_flags); in qla82xx_watchdog()
3425 ql_log(ql_log_info, vha, 0x6006, in qla82xx_watchdog()
3428 &vha->dpc_flags); in qla82xx_watchdog()
3431 ql_log(ql_log_warn, vha, 0x6007, "Firmware hung.\n"); in qla82xx_watchdog()
3432 qla82xx_clear_pending_mbx(vha); in qla82xx_watchdog()
3438 int qla82xx_load_risc(scsi_qla_host_t *vha, uint32_t *srisc_addr) in qla82xx_load_risc() argument
3441 struct qla_hw_data *ha = vha->hw; in qla82xx_load_risc()
3444 rval = qla82xx_device_state_handler(vha); in qla82xx_load_risc()
3448 qla83xx_reset_ownership(vha); in qla82xx_load_risc()
3450 rval = qla8044_device_state_handler(vha); in qla82xx_load_risc()
3456 qla82xx_set_reset_owner(scsi_qla_host_t *vha) in qla82xx_set_reset_owner() argument
3458 struct qla_hw_data *ha = vha->hw; in qla82xx_set_reset_owner()
3464 dev_state = qla8044_rd_direct(vha, QLA8044_CRB_DEV_STATE_INDEX); in qla82xx_set_reset_owner()
3467 ql_log(ql_log_info, vha, 0xb02f, in qla82xx_set_reset_owner()
3473 ql_dbg(ql_dbg_p3p, vha, 0xb030, in qla82xx_set_reset_owner()
3476 qla8044_wr_direct(vha, QLA8044_CRB_DEV_STATE_INDEX, in qla82xx_set_reset_owner()
3479 ql_log(ql_log_info, vha, 0xb031, in qla82xx_set_reset_owner()
3496 qla82xx_abort_isp(scsi_qla_host_t *vha) in qla82xx_abort_isp() argument
3499 struct qla_hw_data *ha = vha->hw; in qla82xx_abort_isp()
3501 if (vha->device_flags & DFLG_DEV_FAILED) { in qla82xx_abort_isp()
3502 ql_log(ql_log_warn, vha, 0x8024, in qla82xx_abort_isp()
3509 qla82xx_set_reset_owner(vha); in qla82xx_abort_isp()
3513 rval = qla82xx_device_state_handler(vha); in qla82xx_abort_isp()
3517 qla83xx_reset_ownership(vha); in qla82xx_abort_isp()
3519 rval = qla8044_device_state_handler(vha); in qla82xx_abort_isp()
3529 qla82xx_restart_isp(vha); in qla82xx_abort_isp()
3533 vha->flags.online = 1; in qla82xx_abort_isp()
3534 if (test_bit(ISP_ABORT_RETRY, &vha->dpc_flags)) { in qla82xx_abort_isp()
3536 ql_log(ql_log_warn, vha, 0x8027, in qla82xx_abort_isp()
3543 ha->isp_ops->reset_adapter(vha); in qla82xx_abort_isp()
3544 vha->flags.online = 0; in qla82xx_abort_isp()
3546 &vha->dpc_flags); in qla82xx_abort_isp()
3550 ql_log(ql_log_warn, vha, 0x8036, in qla82xx_abort_isp()
3557 ql_dbg(ql_dbg_taskm, vha, 0x8029, in qla82xx_abort_isp()
3560 set_bit(ISP_ABORT_RETRY, &vha->dpc_flags); in qla82xx_abort_isp()
3580 int qla82xx_fcoe_ctx_reset(scsi_qla_host_t *vha) in qla82xx_fcoe_ctx_reset() argument
3584 if (vha->flags.online) { in qla82xx_fcoe_ctx_reset()
3586 qla2x00_abort_isp_cleanup(vha); in qla82xx_fcoe_ctx_reset()
3592 qla2x00_try_to_stop_firmware(vha); in qla82xx_fcoe_ctx_reset()
3595 rval = qla82xx_restart_isp(vha); in qla82xx_fcoe_ctx_reset()
3612 int qla2x00_wait_for_fcoe_ctx_reset(scsi_qla_host_t *vha) in qla2x00_wait_for_fcoe_ctx_reset() argument
3618 while ((test_bit(FCOE_CTX_RESET_NEEDED, &vha->dpc_flags) || in qla2x00_wait_for_fcoe_ctx_reset()
3619 test_bit(ABORT_ISP_ACTIVE, &vha->dpc_flags)) in qla2x00_wait_for_fcoe_ctx_reset()
3625 if (!test_bit(FCOE_CTX_RESET_NEEDED, &vha->dpc_flags) && in qla2x00_wait_for_fcoe_ctx_reset()
3626 !test_bit(ABORT_ISP_ACTIVE, &vha->dpc_flags)) { in qla2x00_wait_for_fcoe_ctx_reset()
3631 ql_dbg(ql_dbg_p3p, vha, 0xb027, in qla2x00_wait_for_fcoe_ctx_reset()
3638 qla82xx_chip_reset_cleanup(scsi_qla_host_t *vha) in qla82xx_chip_reset_cleanup() argument
3642 struct qla_hw_data *ha = vha->hw; in qla82xx_chip_reset_cleanup()
3652 fw_state = qla82xx_check_fw_alive(vha); in qla82xx_chip_reset_cleanup()
3654 fw_state = qla8044_check_fw_alive(vha); in qla82xx_chip_reset_cleanup()
3657 qla82xx_clear_pending_mbx(vha); in qla82xx_chip_reset_cleanup()
3662 ql_dbg(ql_dbg_init, vha, 0x00b0, in qla82xx_chip_reset_cleanup()
3687 ql_log(ql_log_info, vha, in qla82xx_chip_reset_cleanup()
3691 ql_log(ql_log_info, vha, in qla82xx_chip_reset_cleanup()
3703 if (!qla2x00_eh_wait_for_pending_commands(vha, 0, 0, in qla82xx_chip_reset_cleanup()
3705 ql_dbg(ql_dbg_init, vha, 0x00b3, in qla82xx_chip_reset_cleanup()
3714 qla82xx_minidump_process_control(scsi_qla_host_t *vha, in qla82xx_minidump_process_control() argument
3717 struct qla_hw_data *ha = vha->hw; in qla82xx_minidump_process_control()
3831 qla82xx_minidump_process_rdocm(scsi_qla_host_t *vha, in qla82xx_minidump_process_rdocm() argument
3834 struct qla_hw_data *ha = vha->hw; in qla82xx_minidump_process_rdocm()
3854 qla82xx_minidump_process_rdmux(scsi_qla_host_t *vha, in qla82xx_minidump_process_rdmux() argument
3857 struct qla_hw_data *ha = vha->hw; in qla82xx_minidump_process_rdmux()
3880 qla82xx_minidump_process_rdcrb(scsi_qla_host_t *vha, in qla82xx_minidump_process_rdcrb() argument
3883 struct qla_hw_data *ha = vha->hw; in qla82xx_minidump_process_rdcrb()
3903 qla82xx_minidump_process_l2tag(scsi_qla_host_t *vha, in qla82xx_minidump_process_l2tag() argument
3906 struct qla_hw_data *ha = vha->hw; in qla82xx_minidump_process_l2tag()
3940 ql_dbg(ql_dbg_p3p, vha, 0xb032, in qla82xx_minidump_process_l2tag()
3962 qla82xx_minidump_process_l1cache(scsi_qla_host_t *vha, in qla82xx_minidump_process_l1cache() argument
3965 struct qla_hw_data *ha = vha->hw; in qla82xx_minidump_process_l1cache()
3997 qla82xx_minidump_process_queue(scsi_qla_host_t *vha, in qla82xx_minidump_process_queue() argument
4000 struct qla_hw_data *ha = vha->hw; in qla82xx_minidump_process_queue()
4027 qla82xx_minidump_process_rdrom(scsi_qla_host_t *vha, in qla82xx_minidump_process_rdrom() argument
4030 struct qla_hw_data *ha = vha->hw; in qla82xx_minidump_process_rdrom()
4053 qla82xx_minidump_process_rdmem(scsi_qla_host_t *vha, in qla82xx_minidump_process_rdmem() argument
4056 struct qla_hw_data *ha = vha->hw; in qla82xx_minidump_process_rdmem()
4069 ql_log(ql_log_warn, vha, 0xb033, in qla82xx_minidump_process_rdmem()
4075 ql_log(ql_log_warn, vha, 0xb034, in qla82xx_minidump_process_rdmem()
4081 ql_dbg(ql_dbg_p3p, vha, 0xb035, in qla82xx_minidump_process_rdmem()
4122 qla82xx_validate_template_chksum(scsi_qla_host_t *vha) in qla82xx_validate_template_chksum() argument
4124 struct qla_hw_data *ha = vha->hw; in qla82xx_validate_template_chksum()
4137 qla82xx_mark_entry_skipped(scsi_qla_host_t *vha, in qla82xx_mark_entry_skipped() argument
4141 ql_dbg(ql_dbg_p3p, vha, 0xb036, in qla82xx_mark_entry_skipped()
4149 qla82xx_md_collect(scsi_qla_host_t *vha) in qla82xx_md_collect() argument
4151 struct qla_hw_data *ha = vha->hw; in qla82xx_md_collect()
4163 ql_log(ql_log_warn, vha, 0xb037, in qla82xx_md_collect()
4172 ql_log(ql_log_warn, vha, 0xb038, in qla82xx_md_collect()
4178 ql_log(ql_log_warn, vha, 0xb054, in qla82xx_md_collect()
4185 if (qla82xx_validate_template_chksum(vha)) { in qla82xx_md_collect()
4186 ql_log(ql_log_info, vha, 0xb039, in qla82xx_md_collect()
4192 ql_dbg(ql_dbg_p3p, vha, 0xb03a, in qla82xx_md_collect()
4195 ql_dbg(ql_dbg_p3p, vha, 0xb03b, in qla82xx_md_collect()
4202 ql_log(ql_log_warn, vha, 0xb03c, in qla82xx_md_collect()
4209 tmplt_hdr->driver_info[0] = vha->host_no; in qla82xx_md_collect()
4216 ql_dbg(ql_dbg_p3p, vha, 0xb03d, in qla82xx_md_collect()
4221 ql_log(ql_log_warn, vha, 0xb04e, in qla82xx_md_collect()
4234 ql_log(ql_log_warn, vha, 0xb03e, in qla82xx_md_collect()
4244 ql_dbg(ql_dbg_p3p, vha, 0xb03f, in qla82xx_md_collect()
4252 ql_dbg(ql_dbg_p3p, vha, 0xb040, in qla82xx_md_collect()
4259 ql_dbg(ql_dbg_p3p, vha, 0xb041, in qla82xx_md_collect()
4267 qla82xx_mark_entry_skipped(vha, entry_hdr, i); in qla82xx_md_collect()
4270 rval = qla82xx_minidump_process_control(vha, in qla82xx_md_collect()
4273 qla82xx_mark_entry_skipped(vha, entry_hdr, i); in qla82xx_md_collect()
4278 qla82xx_minidump_process_rdcrb(vha, in qla82xx_md_collect()
4282 rval = qla82xx_minidump_process_rdmem(vha, in qla82xx_md_collect()
4285 qla82xx_mark_entry_skipped(vha, entry_hdr, i); in qla82xx_md_collect()
4291 qla82xx_minidump_process_rdrom(vha, in qla82xx_md_collect()
4298 rval = qla82xx_minidump_process_l2tag(vha, in qla82xx_md_collect()
4301 qla82xx_mark_entry_skipped(vha, entry_hdr, i); in qla82xx_md_collect()
4307 qla82xx_minidump_process_l1cache(vha, in qla82xx_md_collect()
4311 qla82xx_minidump_process_rdocm(vha, in qla82xx_md_collect()
4315 qla82xx_minidump_process_rdmux(vha, in qla82xx_md_collect()
4319 qla82xx_minidump_process_queue(vha, in qla82xx_md_collect()
4324 qla82xx_mark_entry_skipped(vha, entry_hdr, i); in qla82xx_md_collect()
4328 ql_dbg(ql_dbg_p3p, vha, 0xb042, in qla82xx_md_collect()
4339 ql_dbg(ql_dbg_p3p, vha, 0xb043, in qla82xx_md_collect()
4346 ql_log(ql_log_info, vha, 0xb044, in qla82xx_md_collect()
4348 vha->host_no, ha->md_tmplt_hdr, vha->host_no, ha->md_dump); in qla82xx_md_collect()
4350 qla2x00_post_uevent_work(vha, QLA_UEVENT_CODE_FW_DUMP); in qla82xx_md_collect()
4357 qla82xx_md_alloc(scsi_qla_host_t *vha) in qla82xx_md_alloc() argument
4359 struct qla_hw_data *ha = vha->hw; in qla82xx_md_alloc()
4367 ql_log(ql_log_info, vha, 0xb045, in qla82xx_md_alloc()
4378 ql_log(ql_log_warn, vha, 0xb046, in qla82xx_md_alloc()
4385 ql_log(ql_log_warn, vha, 0xb047, in qla82xx_md_alloc()
4394 qla82xx_md_free(scsi_qla_host_t *vha) in qla82xx_md_free() argument
4396 struct qla_hw_data *ha = vha->hw; in qla82xx_md_free()
4400 ql_log(ql_log_info, vha, 0xb048, in qla82xx_md_free()
4410 ql_log(ql_log_info, vha, 0xb049, in qla82xx_md_free()
4420 qla82xx_md_prep(scsi_qla_host_t *vha) in qla82xx_md_prep() argument
4422 struct qla_hw_data *ha = vha->hw; in qla82xx_md_prep()
4426 rval = qla82xx_md_get_template_size(vha); in qla82xx_md_prep()
4428 ql_log(ql_log_info, vha, 0xb04a, in qla82xx_md_prep()
4434 rval = qla8044_md_get_template(vha); in qla82xx_md_prep()
4436 rval = qla82xx_md_get_template(vha); in qla82xx_md_prep()
4439 ql_dbg(ql_dbg_p3p, vha, 0xb04b, in qla82xx_md_prep()
4443 rval = qla82xx_md_alloc(vha); in qla82xx_md_prep()
4445 ql_log(ql_log_info, vha, 0xb04c, in qla82xx_md_prep()
4449 ql_log(ql_log_info, vha, 0xb04d, in qla82xx_md_prep()
4464 qla82xx_beacon_on(struct scsi_qla_host *vha) in qla82xx_beacon_on() argument
4468 struct qla_hw_data *ha = vha->hw; in qla82xx_beacon_on()
4470 rval = qla82xx_mbx_beacon_ctl(vha, 1); in qla82xx_beacon_on()
4473 ql_log(ql_log_warn, vha, 0xb050, in qla82xx_beacon_on()
4484 qla82xx_beacon_off(struct scsi_qla_host *vha) in qla82xx_beacon_off() argument
4488 struct qla_hw_data *ha = vha->hw; in qla82xx_beacon_off()
4490 rval = qla82xx_mbx_beacon_ctl(vha, 0); in qla82xx_beacon_off()
4493 ql_log(ql_log_warn, vha, 0xb051, in qla82xx_beacon_off()
4504 qla82xx_fw_dump(scsi_qla_host_t *vha, int hardware_locked) in qla82xx_fw_dump() argument
4506 struct qla_hw_data *ha = vha->hw; in qla82xx_fw_dump()
4511 scsi_block_requests(vha->host); in qla82xx_fw_dump()
4514 qla82xx_set_reset_owner(vha); in qla82xx_fw_dump()
4516 qla2x00_wait_for_chip_reset(vha); in qla82xx_fw_dump()
4517 scsi_unblock_requests(vha->host); in qla82xx_fw_dump()