• Home
  • Raw
  • Download

Lines Matching refs:vha

364 	scsi_qla_host_t *vha = pci_get_drvdata(ha->pdev);  in qla82xx_pci_set_crbwindow_2M()  local
374 ql_dbg(ql_dbg_p3p, vha, 0xb000, in qla82xx_pci_set_crbwindow_2M()
547 scsi_qla_host_t *vha = pci_get_drvdata(ha->pdev); in qla82xx_pci_set_window() local
559 ql_dbg(ql_dbg_p3p, vha, 0xb003, in qla82xx_pci_set_window()
569 ql_log(ql_log_warn, vha, 0xb004, in qla82xx_pci_set_window()
582 ql_log(ql_log_warn, vha, 0xb005, in qla82xx_pci_set_window()
598 ql_log(ql_log_warn, vha, 0xb006, in qla82xx_pci_set_window()
610 ql_log(ql_log_warn, vha, 0xb007, in qla82xx_pci_set_window()
657 scsi_qla_host_t *vha = pci_get_drvdata(ha->pdev); in qla82xx_pci_mem_read_direct() local
669 ql_log(ql_log_fatal, vha, 0xb008, in qla82xx_pci_mem_read_direct()
729 scsi_qla_host_t *vha = pci_get_drvdata(ha->pdev); in qla82xx_pci_mem_write_direct() local
741 ql_log(ql_log_fatal, vha, 0xb009, in qla82xx_pci_mem_write_direct()
821 scsi_qla_host_t *vha = pci_get_drvdata(ha->pdev); in qla82xx_rom_lock() local
830 ql_dbg(ql_dbg_p3p, vha, 0xb157, in qla82xx_rom_lock()
853 scsi_qla_host_t *vha = pci_get_drvdata(ha->pdev); in qla82xx_wait_rom_busy() local
860 ql_dbg(ql_dbg_p3p, vha, 0xb00a, in qla82xx_wait_rom_busy()
874 scsi_qla_host_t *vha = pci_get_drvdata(ha->pdev); in qla82xx_wait_rom_done() local
881 ql_dbg(ql_dbg_p3p, vha, 0xb00b, in qla82xx_wait_rom_done()
927 scsi_qla_host_t *vha = pci_get_drvdata(ha->pdev); in qla82xx_rom_fast_read() local
936 ql_log(ql_log_fatal, vha, 0x00b9, in qla82xx_rom_fast_read()
949 scsi_qla_host_t *vha = pci_get_drvdata(ha->pdev); in qla82xx_read_status_reg() local
954 ql_log(ql_log_warn, vha, 0xb00c, in qla82xx_read_status_reg()
967 scsi_qla_host_t *vha = pci_get_drvdata(ha->pdev); in qla82xx_flash_wait_write_finish() local
977 ql_log(ql_log_warn, vha, 0xb00d, in qla82xx_flash_wait_write_finish()
1003 scsi_qla_host_t *vha = pci_get_drvdata(ha->pdev); in qla82xx_write_status_reg() local
1010 ql_log(ql_log_warn, vha, 0xb00e, in qla82xx_write_status_reg()
1020 scsi_qla_host_t *vha = pci_get_drvdata(ha->pdev); in qla82xx_write_disable_flash() local
1024 ql_log(ql_log_warn, vha, 0xb00f, in qla82xx_write_disable_flash()
1036 scsi_qla_host_t *vha = pci_get_drvdata(ha->pdev); in ql82xx_rom_lock_d() local
1045 ql_log(ql_log_warn, vha, 0xb010, in ql82xx_rom_lock_d()
1057 scsi_qla_host_t *vha = pci_get_drvdata(ha->pdev); in qla82xx_write_flash_dword() local
1061 ql_log(ql_log_warn, vha, 0xb011, in qla82xx_write_flash_dword()
1076 ql_log(ql_log_warn, vha, 0xb012, in qla82xx_write_flash_dword()
1093 qla82xx_pinit_from_rom(scsi_qla_host_t *vha) in qla82xx_pinit_from_rom() argument
1100 struct qla_hw_data *ha = vha->hw; in qla82xx_pinit_from_rom()
1155 if (test_bit(ABORT_ISP_ACTIVE, &vha->dpc_flags)) in qla82xx_pinit_from_rom()
1170 ql_log(ql_log_fatal, vha, 0x006e, in qla82xx_pinit_from_rom()
1183 ql_log(ql_log_fatal, vha, 0x0071, in qla82xx_pinit_from_rom()
1188 ql_log(ql_log_info, vha, 0x0072, in qla82xx_pinit_from_rom()
1193 ql_log(ql_log_fatal, vha, 0x010c, in qla82xx_pinit_from_rom()
1245 ql_log(ql_log_fatal, vha, 0x0116, in qla82xx_pinit_from_rom()
1699 qla82xx_pci_config(scsi_qla_host_t *vha) in qla82xx_pci_config() argument
1701 struct qla_hw_data *ha = vha->hw; in qla82xx_pci_config()
1707 ql_dbg(ql_dbg_init, vha, 0x0043, in qla82xx_pci_config()
1720 qla82xx_reset_chip(scsi_qla_host_t *vha) in qla82xx_reset_chip() argument
1722 struct qla_hw_data *ha = vha->hw; in qla82xx_reset_chip()
1729 void qla82xx_config_rings(struct scsi_qla_host *vha) in qla82xx_config_rings() argument
1731 struct qla_hw_data *ha = vha->hw; in qla82xx_config_rings()
1836 qla82xx_validate_firmware_blob(scsi_qla_host_t *vha, uint8_t fw_type) in qla82xx_validate_firmware_blob() argument
1840 struct qla_hw_data *ha = vha->hw; in qla82xx_validate_firmware_blob()
1868 scsi_qla_host_t *vha = pci_get_drvdata(ha->pdev); in qla82xx_check_cmdpeg_state() local
1884 ql_log(ql_log_info, vha, 0x00a8, in qla82xx_check_cmdpeg_state()
1892 ql_log(ql_log_fatal, vha, 0x00a9, in qla82xx_check_cmdpeg_state()
1907 scsi_qla_host_t *vha = pci_get_drvdata(ha->pdev); in qla82xx_check_rcvpeg_state() local
1923 ql_log(ql_log_info, vha, 0x00ab, in qla82xx_check_rcvpeg_state()
1931 ql_log(ql_log_fatal, vha, 0x00ac, in qla82xx_check_rcvpeg_state()
1949 qla82xx_mbx_completion(scsi_qla_host_t *vha, uint16_t mb0) in qla82xx_mbx_completion() argument
1953 struct qla_hw_data *ha = vha->hw; in qla82xx_mbx_completion()
1968 ql_dbg(ql_dbg_async, vha, 0x5053, in qla82xx_mbx_completion()
1984 scsi_qla_host_t *vha; in qla82xx_intr_handler() local
2022 vha = pci_get_drvdata(ha->pdev); in qla82xx_intr_handler()
2033 qla82xx_mbx_completion(vha, MSW(stat)); in qla82xx_intr_handler()
2041 qla2x00_async_event(vha, rsp, mb); in qla82xx_intr_handler()
2044 qla24xx_process_response_queue(vha, rsp); in qla82xx_intr_handler()
2047 ql_dbg(ql_dbg_async, vha, 0x5054, in qla82xx_intr_handler()
2068 scsi_qla_host_t *vha; in qla82xx_msix_default() local
2089 vha = pci_get_drvdata(ha->pdev); in qla82xx_msix_default()
2092 if (qla2x00_check_reg32_for_disconnect(vha, host_int)) in qla82xx_msix_default()
2102 qla82xx_mbx_completion(vha, MSW(stat)); in qla82xx_msix_default()
2110 qla2x00_async_event(vha, rsp, mb); in qla82xx_msix_default()
2113 qla24xx_process_response_queue(vha, rsp); in qla82xx_msix_default()
2116 ql_dbg(ql_dbg_async, vha, 0x5041, in qla82xx_msix_default()
2134 scsi_qla_host_t *vha; in qla82xx_msix_rsp_q() local
2151 vha = pci_get_drvdata(ha->pdev); in qla82xx_msix_rsp_q()
2153 if (qla2x00_check_reg32_for_disconnect(vha, host_int)) in qla82xx_msix_rsp_q()
2155 qla24xx_process_response_queue(vha, rsp); in qla82xx_msix_rsp_q()
2165 scsi_qla_host_t *vha; in qla82xx_poll() local
2184 vha = pci_get_drvdata(ha->pdev); in qla82xx_poll()
2187 if (qla2x00_check_reg32_for_disconnect(vha, host_int)) in qla82xx_poll()
2196 qla82xx_mbx_completion(vha, MSW(stat)); in qla82xx_poll()
2203 qla2x00_async_event(vha, rsp, mb); in qla82xx_poll()
2206 qla24xx_process_response_queue(vha, rsp); in qla82xx_poll()
2209 ql_dbg(ql_dbg_p3p, vha, 0xb013, in qla82xx_poll()
2223 scsi_qla_host_t *vha = pci_get_drvdata(ha->pdev); in qla82xx_enable_intrs() local
2225 qla82xx_mbx_intr_enable(vha); in qla82xx_enable_intrs()
2238 scsi_qla_host_t *vha = pci_get_drvdata(ha->pdev); in qla82xx_disable_intrs() local
2241 qla82xx_mbx_intr_disable(vha); in qla82xx_disable_intrs()
2270 qla82xx_set_idc_version(scsi_qla_host_t *vha) in qla82xx_set_idc_version() argument
2274 struct qla_hw_data *ha = vha->hw; in qla82xx_set_idc_version()
2280 ql_log(ql_log_info, vha, 0xb082, in qla82xx_set_idc_version()
2285 ql_log(ql_log_info, vha, 0xb083, in qla82xx_set_idc_version()
2293 qla82xx_set_drv_active(scsi_qla_host_t *vha) in qla82xx_set_drv_active() argument
2296 struct qla_hw_data *ha = vha->hw; in qla82xx_set_drv_active()
2339 scsi_qla_host_t *vha = pci_get_drvdata(ha->pdev); in qla82xx_set_rst_ready() local
2349 ql_dbg(ql_dbg_init, vha, 0x00bb, in qla82xx_set_rst_ready()
2375 qla82xx_clear_qsnt_ready(scsi_qla_host_t *vha) in qla82xx_clear_qsnt_ready() argument
2377 struct qla_hw_data *ha = vha->hw; in qla82xx_clear_qsnt_ready()
2386 qla82xx_load_fw(scsi_qla_host_t *vha) in qla82xx_load_fw() argument
2390 struct qla_hw_data *ha = vha->hw; in qla82xx_load_fw()
2392 if (qla82xx_pinit_from_rom(vha) != QLA_SUCCESS) { in qla82xx_load_fw()
2393 ql_log(ql_log_fatal, vha, 0x009f, in qla82xx_load_fw()
2412 ql_log(ql_log_info, vha, 0x00a0, in qla82xx_load_fw()
2416 ql_log(ql_log_info, vha, 0x00a1, in qla82xx_load_fw()
2420 ql_log(ql_log_warn, vha, 0x0108, in qla82xx_load_fw()
2425 ql_log(ql_log_info, vha, 0x00a2, in qla82xx_load_fw()
2429 blob = ha->hablob = qla2x00_request_firmware(vha); in qla82xx_load_fw()
2431 ql_log(ql_log_fatal, vha, 0x00a3, in qla82xx_load_fw()
2437 if (qla82xx_validate_firmware_blob(vha, in qla82xx_load_fw()
2440 if (qla82xx_validate_firmware_blob(vha, in qla82xx_load_fw()
2442 ql_log(ql_log_fatal, vha, 0x00a4, in qla82xx_load_fw()
2449 ql_log(ql_log_info, vha, 0x00a5, in qla82xx_load_fw()
2454 ql_log(ql_log_fatal, vha, 0x00a6, in qla82xx_load_fw()
2464 qla82xx_start_firmware(scsi_qla_host_t *vha) in qla82xx_start_firmware() argument
2467 struct qla_hw_data *ha = vha->hw; in qla82xx_start_firmware()
2482 if (qla82xx_load_fw(vha) != QLA_SUCCESS) { in qla82xx_start_firmware()
2483 ql_log(ql_log_fatal, vha, 0x00a7, in qla82xx_start_firmware()
2490 ql_log(ql_log_fatal, vha, 0x00aa, in qla82xx_start_firmware()
2504 qla82xx_read_flash_data(scsi_qla_host_t *vha, __le32 *dwptr, uint32_t faddr, in qla82xx_read_flash_data() argument
2509 struct qla_hw_data *ha = vha->hw; in qla82xx_read_flash_data()
2514 ql_log(ql_log_warn, vha, 0x0106, in qla82xx_read_flash_data()
2529 scsi_qla_host_t *vha = pci_get_drvdata(ha->pdev); in qla82xx_unprotect_flash() local
2533 ql_log(ql_log_warn, vha, 0xb014, in qla82xx_unprotect_flash()
2550 ql_log(ql_log_warn, vha, 0xb015, in qla82xx_unprotect_flash()
2563 scsi_qla_host_t *vha = pci_get_drvdata(ha->pdev); in qla82xx_protect_flash() local
2567 ql_log(ql_log_warn, vha, 0xb016, in qla82xx_protect_flash()
2580 ql_log(ql_log_warn, vha, 0xb017, in qla82xx_protect_flash()
2584 ql_log(ql_log_warn, vha, 0xb018, in qla82xx_protect_flash()
2595 scsi_qla_host_t *vha = pci_get_drvdata(ha->pdev); in qla82xx_erase_sector() local
2599 ql_log(ql_log_warn, vha, 0xb019, in qla82xx_erase_sector()
2610 ql_log(ql_log_warn, vha, 0xb01a, in qla82xx_erase_sector()
2625 qla82xx_read_optrom_data(struct scsi_qla_host *vha, void *buf, in qla82xx_read_optrom_data() argument
2628 scsi_block_requests(vha->host); in qla82xx_read_optrom_data()
2629 qla82xx_read_flash_data(vha, buf, offset, length); in qla82xx_read_optrom_data()
2630 scsi_unblock_requests(vha->host); in qla82xx_read_optrom_data()
2635 qla82xx_write_flash_data(struct scsi_qla_host *vha, __le32 *dwptr, in qla82xx_write_flash_data() argument
2644 struct qla_hw_data *ha = vha->hw; in qla82xx_write_flash_data()
2654 ql_log(ql_log_warn, vha, 0xb01b, in qla82xx_write_flash_data()
2665 ql_log(ql_log_warn, vha, 0xb01c, in qla82xx_write_flash_data()
2676 ql_log(ql_log_warn, vha, 0xb01d, in qla82xx_write_flash_data()
2688 ret = qla2x00_load_ram(vha, optrom_dma, in qla82xx_write_flash_data()
2692 ql_log(ql_log_warn, vha, 0xb01e, in qla82xx_write_flash_data()
2697 ql_log(ql_log_warn, vha, 0xb01f, in qla82xx_write_flash_data()
2714 ql_dbg(ql_dbg_p3p, vha, 0xb020, in qla82xx_write_flash_data()
2723 ql_log(ql_log_warn, vha, 0xb021, in qla82xx_write_flash_data()
2733 qla82xx_write_optrom_data(struct scsi_qla_host *vha, void *buf, in qla82xx_write_optrom_data() argument
2739 scsi_block_requests(vha->host); in qla82xx_write_optrom_data()
2740 rval = qla82xx_write_flash_data(vha, buf, offset, length >> 2); in qla82xx_write_optrom_data()
2741 scsi_unblock_requests(vha->host); in qla82xx_write_optrom_data()
2752 qla82xx_start_iocbs(scsi_qla_host_t *vha) in qla82xx_start_iocbs() argument
2754 struct qla_hw_data *ha = vha->hw; in qla82xx_start_iocbs()
2784 scsi_qla_host_t *vha = pci_get_drvdata(ha->pdev); in qla82xx_rom_lock_recovery() local
2790 ql_log(ql_log_info, vha, 0xb022, in qla82xx_rom_lock_recovery()
2813 qla82xx_device_bootstrap(scsi_qla_host_t *vha) in qla82xx_device_bootstrap() argument
2818 struct qla_hw_data *ha = vha->hw; in qla82xx_device_bootstrap()
2841 ql_log(ql_log_info, vha, 0x009e, in qla82xx_device_bootstrap()
2846 rval = qla82xx_start_firmware(vha); in qla82xx_device_bootstrap()
2850 ql_log(ql_log_fatal, vha, 0x00ad, in qla82xx_device_bootstrap()
2858 ql_log(ql_log_info, vha, 0x00ae, in qla82xx_device_bootstrap()
2876 qla82xx_need_qsnt_handler(scsi_qla_host_t *vha) in qla82xx_need_qsnt_handler() argument
2878 struct qla_hw_data *ha = vha->hw; in qla82xx_need_qsnt_handler()
2882 if (vha->flags.online) { in qla82xx_need_qsnt_handler()
2884 qla2x00_quiesce_io(vha); in qla82xx_need_qsnt_handler()
2904 ql_log(ql_log_info, vha, 0xb023, in qla82xx_need_qsnt_handler()
2910 ql_log(ql_log_info, vha, 0xb025, in qla82xx_need_qsnt_handler()
2913 qla2x00_perform_loop_resync(vha); in qla82xx_need_qsnt_handler()
2916 qla82xx_clear_qsnt_ready(vha); in qla82xx_need_qsnt_handler()
2931 ql_log(ql_log_info, vha, 0xb026, in qla82xx_need_qsnt_handler()
2948 qla82xx_wait_for_state_change(scsi_qla_host_t *vha, uint32_t curr_state) in qla82xx_wait_for_state_change() argument
2950 struct qla_hw_data *ha = vha->hw; in qla82xx_wait_for_state_change()
2964 qla8xxx_dev_failed_handler(scsi_qla_host_t *vha) in qla8xxx_dev_failed_handler() argument
2966 struct qla_hw_data *ha = vha->hw; in qla8xxx_dev_failed_handler()
2969 ql_log(ql_log_fatal, vha, 0x00b8, in qla8xxx_dev_failed_handler()
2981 vha->device_flags |= DFLG_DEV_FAILED; in qla8xxx_dev_failed_handler()
2982 qla2x00_abort_all_cmds(vha, DID_NO_CONNECT << 16); in qla8xxx_dev_failed_handler()
2983 qla2x00_mark_all_devices_lost(vha); in qla8xxx_dev_failed_handler()
2984 vha->flags.online = 0; in qla8xxx_dev_failed_handler()
2985 vha->flags.init_done = 0; in qla8xxx_dev_failed_handler()
3000 qla82xx_need_reset_handler(scsi_qla_host_t *vha) in qla82xx_need_reset_handler() argument
3005 struct qla_hw_data *ha = vha->hw; in qla82xx_need_reset_handler()
3008 if (vha->flags.online) { in qla82xx_need_reset_handler()
3010 qla2x00_abort_isp_cleanup(vha); in qla82xx_need_reset_handler()
3011 ha->isp_ops->get_flash_version(vha, req->ring); in qla82xx_need_reset_handler()
3012 ha->isp_ops->nvram_config(vha); in qla82xx_need_reset_handler()
3018 ql_dbg(ql_dbg_p3p, vha, 0xb028, in qla82xx_need_reset_handler()
3024 ql_dbg(ql_dbg_p3p, vha, 0xb029, in qla82xx_need_reset_handler()
3035 ql_dbg(ql_dbg_p3p, vha, 0xb02a, in qla82xx_need_reset_handler()
3043 ql_log(ql_log_warn, vha, 0x00b5, in qla82xx_need_reset_handler()
3057 ql_dbg(ql_dbg_p3p, vha, 0xb02b, in qla82xx_need_reset_handler()
3062 ql_log(ql_log_info, vha, 0x00b6, in qla82xx_need_reset_handler()
3070 ql_log(ql_log_info, vha, 0x00b7, in qla82xx_need_reset_handler()
3075 if (qla82xx_md_collect(vha)) in qla82xx_need_reset_handler()
3076 ql_log(ql_log_warn, vha, 0xb02c, in qla82xx_need_reset_handler()
3079 ql_log(ql_log_warn, vha, 0xb04f, in qla82xx_need_reset_handler()
3085 qla82xx_check_md_needed(scsi_qla_host_t *vha) in qla82xx_check_md_needed() argument
3087 struct qla_hw_data *ha = vha->hw; in qla82xx_check_md_needed()
3095 rval = qla2x00_get_fw_version(vha); in qla82xx_check_md_needed()
3105 ql_dbg(ql_dbg_p3p, vha, 0xb02d, in qla82xx_check_md_needed()
3114 qla82xx_md_free(vha); in qla82xx_check_md_needed()
3116 qla82xx_md_prep(vha); in qla82xx_check_md_needed()
3119 ql_log(ql_log_info, vha, 0xb02e, in qla82xx_check_md_needed()
3127 qla82xx_check_fw_alive(scsi_qla_host_t *vha) in qla82xx_check_fw_alive() argument
3132 fw_heartbeat_counter = qla82xx_rd_32(vha->hw, in qla82xx_check_fw_alive()
3136 ql_dbg(ql_dbg_timer, vha, 0x6003, in qla82xx_check_fw_alive()
3141 if (vha->fw_heartbeat_counter == fw_heartbeat_counter) { in qla82xx_check_fw_alive()
3142 vha->seconds_since_last_heartbeat++; in qla82xx_check_fw_alive()
3144 if (vha->seconds_since_last_heartbeat == 2) { in qla82xx_check_fw_alive()
3145 vha->seconds_since_last_heartbeat = 0; in qla82xx_check_fw_alive()
3149 vha->seconds_since_last_heartbeat = 0; in qla82xx_check_fw_alive()
3150 vha->fw_heartbeat_counter = fw_heartbeat_counter; in qla82xx_check_fw_alive()
3152 ql_dbg(ql_dbg_timer, vha, 0x6004, in qla82xx_check_fw_alive()
3169 qla82xx_device_state_handler(scsi_qla_host_t *vha) in qla82xx_device_state_handler() argument
3175 struct qla_hw_data *ha = vha->hw; in qla82xx_device_state_handler()
3179 if (!vha->flags.init_done) { in qla82xx_device_state_handler()
3180 qla82xx_set_drv_active(vha); in qla82xx_device_state_handler()
3181 qla82xx_set_idc_version(vha); in qla82xx_device_state_handler()
3186 ql_log(ql_log_info, vha, 0x009b, in qla82xx_device_state_handler()
3197 ql_log(ql_log_fatal, vha, 0x009c, in qla82xx_device_state_handler()
3208 ql_log(ql_log_info, vha, 0x009d, in qla82xx_device_state_handler()
3220 rval = qla82xx_device_bootstrap(vha); in qla82xx_device_state_handler()
3229 qla82xx_need_reset_handler(vha); in qla82xx_device_state_handler()
3239 qla82xx_need_qsnt_handler(vha); in qla82xx_device_state_handler()
3260 qla8xxx_dev_failed_handler(vha); in qla82xx_device_state_handler()
3276 static int qla82xx_check_temp(scsi_qla_host_t *vha) in qla82xx_check_temp() argument
3279 struct qla_hw_data *ha = vha->hw; in qla82xx_check_temp()
3286 ql_log(ql_log_warn, vha, 0x600e, in qla82xx_check_temp()
3292 ql_log(ql_log_warn, vha, 0x600f, in qla82xx_check_temp()
3300 int qla82xx_read_temperature(scsi_qla_host_t *vha) in qla82xx_read_temperature() argument
3304 temp = qla82xx_rd_32(vha->hw, CRB_TEMP_STATE); in qla82xx_read_temperature()
3308 void qla82xx_clear_pending_mbx(scsi_qla_host_t *vha) in qla82xx_clear_pending_mbx() argument
3310 struct qla_hw_data *ha = vha->hw; in qla82xx_clear_pending_mbx()
3315 ql_log(ql_log_warn, vha, 0x6010, in qla82xx_clear_pending_mbx()
3322 void qla82xx_watchdog(scsi_qla_host_t *vha) in qla82xx_watchdog() argument
3325 struct qla_hw_data *ha = vha->hw; in qla82xx_watchdog()
3330 if (qla82xx_check_temp(vha)) { in qla82xx_watchdog()
3331 set_bit(ISP_UNRECOVERABLE, &vha->dpc_flags); in qla82xx_watchdog()
3333 qla82xx_clear_pending_mbx(vha); in qla82xx_watchdog()
3335 !test_bit(ISP_ABORT_NEEDED, &vha->dpc_flags)) { in qla82xx_watchdog()
3336 ql_log(ql_log_warn, vha, 0x6001, in qla82xx_watchdog()
3338 set_bit(ISP_ABORT_NEEDED, &vha->dpc_flags); in qla82xx_watchdog()
3340 !test_bit(ISP_QUIESCE_NEEDED, &vha->dpc_flags)) { in qla82xx_watchdog()
3341 ql_log(ql_log_warn, vha, 0x6002, in qla82xx_watchdog()
3343 set_bit(ISP_QUIESCE_NEEDED, &vha->dpc_flags); in qla82xx_watchdog()
3345 !test_bit(ISP_UNRECOVERABLE, &vha->dpc_flags) && in qla82xx_watchdog()
3346 vha->flags.online == 1) { in qla82xx_watchdog()
3347 ql_log(ql_log_warn, vha, 0xb055, in qla82xx_watchdog()
3349 set_bit(ISP_UNRECOVERABLE, &vha->dpc_flags); in qla82xx_watchdog()
3351 qla82xx_clear_pending_mbx(vha); in qla82xx_watchdog()
3353 if (qla82xx_check_fw_alive(vha)) { in qla82xx_watchdog()
3354 ql_dbg(ql_dbg_timer, vha, 0x6011, in qla82xx_watchdog()
3360 ql_log(ql_log_info, vha, 0x6005, in qla82xx_watchdog()
3378 ql_log(ql_log_warn, vha, 0xb052, in qla82xx_watchdog()
3384 &vha->dpc_flags); in qla82xx_watchdog()
3386 ql_log(ql_log_info, vha, 0x6006, in qla82xx_watchdog()
3389 &vha->dpc_flags); in qla82xx_watchdog()
3392 ql_log(ql_log_warn, vha, 0x6007, "Firmware hung.\n"); in qla82xx_watchdog()
3393 qla82xx_clear_pending_mbx(vha); in qla82xx_watchdog()
3399 int qla82xx_load_risc(scsi_qla_host_t *vha, uint32_t *srisc_addr) in qla82xx_load_risc() argument
3402 struct qla_hw_data *ha = vha->hw; in qla82xx_load_risc()
3405 rval = qla82xx_device_state_handler(vha); in qla82xx_load_risc()
3409 qla83xx_reset_ownership(vha); in qla82xx_load_risc()
3411 rval = qla8044_device_state_handler(vha); in qla82xx_load_risc()
3417 qla82xx_set_reset_owner(scsi_qla_host_t *vha) in qla82xx_set_reset_owner() argument
3419 struct qla_hw_data *ha = vha->hw; in qla82xx_set_reset_owner()
3425 dev_state = qla8044_rd_direct(vha, QLA8044_CRB_DEV_STATE_INDEX); in qla82xx_set_reset_owner()
3428 ql_log(ql_log_info, vha, 0xb02f, in qla82xx_set_reset_owner()
3434 ql_dbg(ql_dbg_p3p, vha, 0xb030, in qla82xx_set_reset_owner()
3437 qla8044_wr_direct(vha, QLA8044_CRB_DEV_STATE_INDEX, in qla82xx_set_reset_owner()
3440 ql_log(ql_log_info, vha, 0xb031, in qla82xx_set_reset_owner()
3457 qla82xx_abort_isp(scsi_qla_host_t *vha) in qla82xx_abort_isp() argument
3460 struct qla_hw_data *ha = vha->hw; in qla82xx_abort_isp()
3462 if (vha->device_flags & DFLG_DEV_FAILED) { in qla82xx_abort_isp()
3463 ql_log(ql_log_warn, vha, 0x8024, in qla82xx_abort_isp()
3470 qla82xx_set_reset_owner(vha); in qla82xx_abort_isp()
3474 rval = qla82xx_device_state_handler(vha); in qla82xx_abort_isp()
3478 qla83xx_reset_ownership(vha); in qla82xx_abort_isp()
3480 rval = qla8044_device_state_handler(vha); in qla82xx_abort_isp()
3490 qla82xx_restart_isp(vha); in qla82xx_abort_isp()
3494 vha->flags.online = 1; in qla82xx_abort_isp()
3495 if (test_bit(ISP_ABORT_RETRY, &vha->dpc_flags)) { in qla82xx_abort_isp()
3497 ql_log(ql_log_warn, vha, 0x8027, in qla82xx_abort_isp()
3504 ha->isp_ops->reset_adapter(vha); in qla82xx_abort_isp()
3505 vha->flags.online = 0; in qla82xx_abort_isp()
3507 &vha->dpc_flags); in qla82xx_abort_isp()
3511 ql_log(ql_log_warn, vha, 0x8036, in qla82xx_abort_isp()
3518 ql_dbg(ql_dbg_taskm, vha, 0x8029, in qla82xx_abort_isp()
3521 set_bit(ISP_ABORT_RETRY, &vha->dpc_flags); in qla82xx_abort_isp()
3541 int qla82xx_fcoe_ctx_reset(scsi_qla_host_t *vha) in qla82xx_fcoe_ctx_reset() argument
3545 if (vha->flags.online) { in qla82xx_fcoe_ctx_reset()
3547 qla2x00_abort_isp_cleanup(vha); in qla82xx_fcoe_ctx_reset()
3553 qla2x00_try_to_stop_firmware(vha); in qla82xx_fcoe_ctx_reset()
3556 rval = qla82xx_restart_isp(vha); in qla82xx_fcoe_ctx_reset()
3573 int qla2x00_wait_for_fcoe_ctx_reset(scsi_qla_host_t *vha) in qla2x00_wait_for_fcoe_ctx_reset() argument
3579 while ((test_bit(FCOE_CTX_RESET_NEEDED, &vha->dpc_flags) || in qla2x00_wait_for_fcoe_ctx_reset()
3580 test_bit(ABORT_ISP_ACTIVE, &vha->dpc_flags)) in qla2x00_wait_for_fcoe_ctx_reset()
3586 if (!test_bit(FCOE_CTX_RESET_NEEDED, &vha->dpc_flags) && in qla2x00_wait_for_fcoe_ctx_reset()
3587 !test_bit(ABORT_ISP_ACTIVE, &vha->dpc_flags)) { in qla2x00_wait_for_fcoe_ctx_reset()
3592 ql_dbg(ql_dbg_p3p, vha, 0xb027, in qla2x00_wait_for_fcoe_ctx_reset()
3599 qla82xx_chip_reset_cleanup(scsi_qla_host_t *vha) in qla82xx_chip_reset_cleanup() argument
3603 struct qla_hw_data *ha = vha->hw; in qla82xx_chip_reset_cleanup()
3613 fw_state = qla82xx_check_fw_alive(vha); in qla82xx_chip_reset_cleanup()
3615 fw_state = qla8044_check_fw_alive(vha); in qla82xx_chip_reset_cleanup()
3618 qla82xx_clear_pending_mbx(vha); in qla82xx_chip_reset_cleanup()
3623 ql_dbg(ql_dbg_init, vha, 0x00b0, in qla82xx_chip_reset_cleanup()
3648 ql_log(ql_log_info, vha, in qla82xx_chip_reset_cleanup()
3652 ql_log(ql_log_info, vha, in qla82xx_chip_reset_cleanup()
3664 if (qla2x00_eh_wait_for_pending_commands(vha, 0, 0, in qla82xx_chip_reset_cleanup()
3666 ql_dbg(ql_dbg_init, vha, 0x00b3, in qla82xx_chip_reset_cleanup()
3677 qla82xx_minidump_process_control(scsi_qla_host_t *vha, in qla82xx_minidump_process_control() argument
3680 struct qla_hw_data *ha = vha->hw; in qla82xx_minidump_process_control()
3794 qla82xx_minidump_process_rdocm(scsi_qla_host_t *vha, in qla82xx_minidump_process_rdocm() argument
3797 struct qla_hw_data *ha = vha->hw; in qla82xx_minidump_process_rdocm()
3816 qla82xx_minidump_process_rdmux(scsi_qla_host_t *vha, in qla82xx_minidump_process_rdmux() argument
3819 struct qla_hw_data *ha = vha->hw; in qla82xx_minidump_process_rdmux()
3842 qla82xx_minidump_process_rdcrb(scsi_qla_host_t *vha, in qla82xx_minidump_process_rdcrb() argument
3845 struct qla_hw_data *ha = vha->hw; in qla82xx_minidump_process_rdcrb()
3865 qla82xx_minidump_process_l2tag(scsi_qla_host_t *vha, in qla82xx_minidump_process_l2tag() argument
3868 struct qla_hw_data *ha = vha->hw; in qla82xx_minidump_process_l2tag()
3902 ql_dbg(ql_dbg_p3p, vha, 0xb032, in qla82xx_minidump_process_l2tag()
3924 qla82xx_minidump_process_l1cache(scsi_qla_host_t *vha, in qla82xx_minidump_process_l1cache() argument
3927 struct qla_hw_data *ha = vha->hw; in qla82xx_minidump_process_l1cache()
3959 qla82xx_minidump_process_queue(scsi_qla_host_t *vha, in qla82xx_minidump_process_queue() argument
3962 struct qla_hw_data *ha = vha->hw; in qla82xx_minidump_process_queue()
3989 qla82xx_minidump_process_rdrom(scsi_qla_host_t *vha, in qla82xx_minidump_process_rdrom() argument
3992 struct qla_hw_data *ha = vha->hw; in qla82xx_minidump_process_rdrom()
4015 qla82xx_minidump_process_rdmem(scsi_qla_host_t *vha, in qla82xx_minidump_process_rdmem() argument
4018 struct qla_hw_data *ha = vha->hw; in qla82xx_minidump_process_rdmem()
4031 ql_log(ql_log_warn, vha, 0xb033, in qla82xx_minidump_process_rdmem()
4037 ql_log(ql_log_warn, vha, 0xb034, in qla82xx_minidump_process_rdmem()
4043 ql_dbg(ql_dbg_p3p, vha, 0xb035, in qla82xx_minidump_process_rdmem()
4084 qla82xx_validate_template_chksum(scsi_qla_host_t *vha) in qla82xx_validate_template_chksum() argument
4086 struct qla_hw_data *ha = vha->hw; in qla82xx_validate_template_chksum()
4099 qla82xx_mark_entry_skipped(scsi_qla_host_t *vha, in qla82xx_mark_entry_skipped() argument
4103 ql_dbg(ql_dbg_p3p, vha, 0xb036, in qla82xx_mark_entry_skipped()
4111 qla82xx_md_collect(scsi_qla_host_t *vha) in qla82xx_md_collect() argument
4113 struct qla_hw_data *ha = vha->hw; in qla82xx_md_collect()
4125 ql_log(ql_log_warn, vha, 0xb037, in qla82xx_md_collect()
4134 ql_log(ql_log_warn, vha, 0xb038, in qla82xx_md_collect()
4140 ql_log(ql_log_warn, vha, 0xb054, in qla82xx_md_collect()
4147 if (qla82xx_validate_template_chksum(vha)) { in qla82xx_md_collect()
4148 ql_log(ql_log_info, vha, 0xb039, in qla82xx_md_collect()
4154 ql_dbg(ql_dbg_p3p, vha, 0xb03a, in qla82xx_md_collect()
4157 ql_dbg(ql_dbg_p3p, vha, 0xb03b, in qla82xx_md_collect()
4164 ql_log(ql_log_warn, vha, 0xb03c, in qla82xx_md_collect()
4171 tmplt_hdr->driver_info[0] = vha->host_no; in qla82xx_md_collect()
4178 ql_dbg(ql_dbg_p3p, vha, 0xb03d, in qla82xx_md_collect()
4183 ql_log(ql_log_warn, vha, 0xb04e, in qla82xx_md_collect()
4196 ql_log(ql_log_warn, vha, 0xb03e, in qla82xx_md_collect()
4206 ql_dbg(ql_dbg_p3p, vha, 0xb03f, in qla82xx_md_collect()
4214 ql_dbg(ql_dbg_p3p, vha, 0xb040, in qla82xx_md_collect()
4221 ql_dbg(ql_dbg_p3p, vha, 0xb041, in qla82xx_md_collect()
4229 qla82xx_mark_entry_skipped(vha, entry_hdr, i); in qla82xx_md_collect()
4232 rval = qla82xx_minidump_process_control(vha, in qla82xx_md_collect()
4235 qla82xx_mark_entry_skipped(vha, entry_hdr, i); in qla82xx_md_collect()
4240 qla82xx_minidump_process_rdcrb(vha, in qla82xx_md_collect()
4244 rval = qla82xx_minidump_process_rdmem(vha, in qla82xx_md_collect()
4247 qla82xx_mark_entry_skipped(vha, entry_hdr, i); in qla82xx_md_collect()
4253 qla82xx_minidump_process_rdrom(vha, in qla82xx_md_collect()
4260 rval = qla82xx_minidump_process_l2tag(vha, in qla82xx_md_collect()
4263 qla82xx_mark_entry_skipped(vha, entry_hdr, i); in qla82xx_md_collect()
4269 qla82xx_minidump_process_l1cache(vha, in qla82xx_md_collect()
4273 qla82xx_minidump_process_rdocm(vha, in qla82xx_md_collect()
4277 qla82xx_minidump_process_rdmux(vha, in qla82xx_md_collect()
4281 qla82xx_minidump_process_queue(vha, in qla82xx_md_collect()
4286 qla82xx_mark_entry_skipped(vha, entry_hdr, i); in qla82xx_md_collect()
4290 ql_dbg(ql_dbg_p3p, vha, 0xb042, in qla82xx_md_collect()
4301 ql_dbg(ql_dbg_p3p, vha, 0xb043, in qla82xx_md_collect()
4308 ql_log(ql_log_info, vha, 0xb044, in qla82xx_md_collect()
4310 vha->host_no, ha->md_tmplt_hdr, vha->host_no, ha->md_dump); in qla82xx_md_collect()
4312 qla2x00_post_uevent_work(vha, QLA_UEVENT_CODE_FW_DUMP); in qla82xx_md_collect()
4319 qla82xx_md_alloc(scsi_qla_host_t *vha) in qla82xx_md_alloc() argument
4321 struct qla_hw_data *ha = vha->hw; in qla82xx_md_alloc()
4329 ql_log(ql_log_info, vha, 0xb045, in qla82xx_md_alloc()
4340 ql_log(ql_log_warn, vha, 0xb046, in qla82xx_md_alloc()
4347 ql_log(ql_log_warn, vha, 0xb047, in qla82xx_md_alloc()
4356 qla82xx_md_free(scsi_qla_host_t *vha) in qla82xx_md_free() argument
4358 struct qla_hw_data *ha = vha->hw; in qla82xx_md_free()
4362 ql_log(ql_log_info, vha, 0xb048, in qla82xx_md_free()
4372 ql_log(ql_log_info, vha, 0xb049, in qla82xx_md_free()
4382 qla82xx_md_prep(scsi_qla_host_t *vha) in qla82xx_md_prep() argument
4384 struct qla_hw_data *ha = vha->hw; in qla82xx_md_prep()
4388 rval = qla82xx_md_get_template_size(vha); in qla82xx_md_prep()
4390 ql_log(ql_log_info, vha, 0xb04a, in qla82xx_md_prep()
4396 rval = qla8044_md_get_template(vha); in qla82xx_md_prep()
4398 rval = qla82xx_md_get_template(vha); in qla82xx_md_prep()
4401 ql_dbg(ql_dbg_p3p, vha, 0xb04b, in qla82xx_md_prep()
4405 rval = qla82xx_md_alloc(vha); in qla82xx_md_prep()
4407 ql_log(ql_log_info, vha, 0xb04c, in qla82xx_md_prep()
4411 ql_log(ql_log_info, vha, 0xb04d, in qla82xx_md_prep()
4426 qla82xx_beacon_on(struct scsi_qla_host *vha) in qla82xx_beacon_on() argument
4430 struct qla_hw_data *ha = vha->hw; in qla82xx_beacon_on()
4433 rval = qla82xx_mbx_beacon_ctl(vha, 1); in qla82xx_beacon_on()
4436 ql_log(ql_log_warn, vha, 0xb050, in qla82xx_beacon_on()
4447 qla82xx_beacon_off(struct scsi_qla_host *vha) in qla82xx_beacon_off() argument
4451 struct qla_hw_data *ha = vha->hw; in qla82xx_beacon_off()
4454 rval = qla82xx_mbx_beacon_ctl(vha, 0); in qla82xx_beacon_off()
4457 ql_log(ql_log_warn, vha, 0xb051, in qla82xx_beacon_off()
4468 qla82xx_fw_dump(scsi_qla_host_t *vha) in qla82xx_fw_dump() argument
4470 struct qla_hw_data *ha = vha->hw; in qla82xx_fw_dump()
4475 scsi_block_requests(vha->host); in qla82xx_fw_dump()
4478 qla82xx_set_reset_owner(vha); in qla82xx_fw_dump()
4480 qla2x00_wait_for_chip_reset(vha); in qla82xx_fw_dump()
4481 scsi_unblock_requests(vha->host); in qla82xx_fw_dump()