Lines Matching refs:cmd

164 megasas_complete_cmd(struct megasas_instance *instance, struct megasas_cmd *cmd,
189 wait_and_poll(struct megasas_instance *instance, struct megasas_cmd *cmd,
200 megasas_issue_dcmd(struct megasas_instance *instance, struct megasas_cmd *cmd) in megasas_issue_dcmd() argument
203 cmd->frame_phys_addr, 0, instance->reg_set); in megasas_issue_dcmd()
216 struct megasas_cmd *cmd = NULL; in megasas_get_cmd() local
221 cmd = list_entry((&instance->cmd_pool)->next, in megasas_get_cmd()
223 list_del_init(&cmd->list); in megasas_get_cmd()
229 return cmd; in megasas_get_cmd()
238 megasas_return_cmd(struct megasas_instance *instance, struct megasas_cmd *cmd) in megasas_return_cmd() argument
248 if (cmd->flags & DRV_DCMD_POLLED_MODE) in megasas_return_cmd()
254 blk_tags = instance->max_scsi_cmds + cmd->index; in megasas_return_cmd()
258 cmd->scmd = NULL; in megasas_return_cmd()
259 cmd->frame_count = 0; in megasas_return_cmd()
260 cmd->flags = 0; in megasas_return_cmd()
262 cmd->frame->hdr.cmd = MFI_CMD_INVALID; in megasas_return_cmd()
263 list_add(&cmd->list, (&instance->cmd_pool)->next); in megasas_return_cmd()
984 megasas_issue_polled(struct megasas_instance *instance, struct megasas_cmd *cmd) in megasas_issue_polled() argument
987 struct megasas_header *frame_hdr = &cmd->frame->hdr; in megasas_issue_polled()
995 instance->instancet->issue_dcmd(instance, cmd); in megasas_issue_polled()
1004 return wait_and_poll(instance, cmd, seconds); in megasas_issue_polled()
1019 struct megasas_cmd *cmd, int timeout) in megasas_issue_blocked_cmd() argument
1023 cmd->cmd_status_drv = MFI_STAT_INVALID_STATUS; in megasas_issue_blocked_cmd()
1025 instance->instancet->issue_dcmd(instance, cmd); in megasas_issue_blocked_cmd()
1028 cmd->cmd_status_drv != MFI_STAT_INVALID_STATUS, timeout * HZ); in megasas_issue_blocked_cmd()
1033 cmd->cmd_status_drv != MFI_STAT_INVALID_STATUS); in megasas_issue_blocked_cmd()
1035 return (cmd->cmd_status_drv == MFI_STAT_OK) ? in megasas_issue_blocked_cmd()
1054 struct megasas_cmd *cmd; in megasas_issue_blocked_abort_cmd() local
1058 cmd = megasas_get_cmd(instance); in megasas_issue_blocked_abort_cmd()
1060 if (!cmd) in megasas_issue_blocked_abort_cmd()
1063 abort_fr = &cmd->frame->abort; in megasas_issue_blocked_abort_cmd()
1068 abort_fr->cmd = MFI_CMD_ABORT; in megasas_issue_blocked_abort_cmd()
1077 cmd->sync_cmd = 1; in megasas_issue_blocked_abort_cmd()
1078 cmd->cmd_status_drv = MFI_STAT_INVALID_STATUS; in megasas_issue_blocked_abort_cmd()
1080 instance->instancet->issue_dcmd(instance, cmd); in megasas_issue_blocked_abort_cmd()
1084 cmd->cmd_status_drv != MFI_STAT_INVALID_STATUS, timeout * HZ); in megasas_issue_blocked_abort_cmd()
1092 cmd->cmd_status_drv != MFI_STAT_INVALID_STATUS); in megasas_issue_blocked_abort_cmd()
1094 cmd->sync_cmd = 0; in megasas_issue_blocked_abort_cmd()
1096 megasas_return_cmd(instance, cmd); in megasas_issue_blocked_abort_cmd()
1259 struct megasas_cmd *cmd) in megasas_build_dcdb() argument
1268 pthru = (struct megasas_pthru_frame *)cmd->frame; in megasas_build_dcdb()
1284 pthru->cmd = (is_logical) ? MFI_CMD_LD_SCSI_IO : MFI_CMD_PD_SCSI_IO; in megasas_build_dcdb()
1334 cpu_to_le32(upper_32_bits(cmd->sense_phys_addr)); in megasas_build_dcdb()
1336 cpu_to_le32(lower_32_bits(cmd->sense_phys_addr)); in megasas_build_dcdb()
1342 cmd->frame_count = megasas_get_frame_count(instance, pthru->sge_count, in megasas_build_dcdb()
1345 return cmd->frame_count; in megasas_build_dcdb()
1358 struct megasas_cmd *cmd) in megasas_build_ldio() argument
1366 ldio = (struct megasas_io_frame *)cmd->frame; in megasas_build_ldio()
1380 ldio->cmd = (sc & 0x02) ? MFI_CMD_LD_WRITE : MFI_CMD_LD_READ; in megasas_build_ldio()
1475 ldio->sense_buf_phys_addr_lo = cpu_to_le32(cmd->sense_phys_addr); in megasas_build_ldio()
1481 cmd->frame_count = megasas_get_frame_count(instance, in megasas_build_ldio()
1484 return cmd->frame_count; in megasas_build_ldio()
1493 inline int megasas_cmd_type(struct scsi_cmnd *cmd) in megasas_cmd_type() argument
1497 switch (cmd->cmnd[0]) { in megasas_cmd_type()
1506 ret = (MEGASAS_IS_LOGICAL(cmd)) ? in megasas_cmd_type()
1510 ret = (MEGASAS_IS_LOGICAL(cmd)) ? in megasas_cmd_type()
1524 struct megasas_cmd *cmd; in megasas_dump_pending_frames() local
1541 cmd = instance->cmd_list[i]; in megasas_dump_pending_frames()
1542 if (!cmd->scmd) in megasas_dump_pending_frames()
1544 …->dev, "[%d]: Frame addr :0x%08lx : ",instance->host->host_no,(unsigned long)cmd->frame_phys_addr); in megasas_dump_pending_frames()
1545 if (megasas_cmd_type(cmd->scmd) == READ_WRITE_LDIO) { in megasas_dump_pending_frames()
1546 ldio = (struct megasas_io_frame *)cmd->frame; in megasas_dump_pending_frames()
1551 instance->host->host_no, cmd->frame_count, ldio->cmd, ldio->target_id, in megasas_dump_pending_frames()
1555 pthru = (struct megasas_pthru_frame *) cmd->frame; in megasas_dump_pending_frames()
1560 instance->host->host_no, cmd->frame_count, pthru->cmd, pthru->target_id, in megasas_dump_pending_frames()
1580 cmd = instance->cmd_list[i]; in megasas_dump_pending_frames()
1582 if (cmd->sync_cmd == 1) in megasas_dump_pending_frames()
1583 dev_err(&instance->pdev->dev, "0x%08lx : ", (unsigned long)cmd->frame_phys_addr); in megasas_dump_pending_frames()
1592 struct megasas_cmd *cmd; in megasas_build_and_issue_cmd() local
1595 cmd = megasas_get_cmd(instance); in megasas_build_and_issue_cmd()
1596 if (!cmd) in megasas_build_and_issue_cmd()
1603 frame_count = megasas_build_ldio(instance, scmd, cmd); in megasas_build_and_issue_cmd()
1605 frame_count = megasas_build_dcdb(instance, scmd, cmd); in megasas_build_and_issue_cmd()
1610 cmd->scmd = scmd; in megasas_build_and_issue_cmd()
1611 scmd->SCp.ptr = (char *)cmd; in megasas_build_and_issue_cmd()
1618 instance->instancet->fire_cmd(instance, cmd->frame_phys_addr, in megasas_build_and_issue_cmd()
1619 cmd->frame_count-1, instance->reg_set); in megasas_build_and_issue_cmd()
1623 megasas_return_cmd(instance, cmd); in megasas_build_and_issue_cmd()
1829 cmd_mfi->frame->hdr.cmd != MFI_CMD_ABORT) in megasas_complete_outstanding_ioctls()
1837 if (cmd_mfi->sync_cmd && cmd_mfi->frame->hdr.cmd != in megasas_complete_outstanding_ioctls()
1902 struct megasas_cmd *cmd; in megasas_complete_cmd_dpc() local
1924 cmd = instance->cmd_list[context]; in megasas_complete_cmd_dpc()
1926 megasas_complete_cmd(instance, cmd, DID_OK); in megasas_complete_cmd_dpc()
1988 struct megasas_cmd *cmd; in megasas_get_ld_vf_affiliation_111() local
1995 cmd = megasas_get_cmd(instance); in megasas_get_ld_vf_affiliation_111()
1997 if (!cmd) { in megasas_get_ld_vf_affiliation_111()
2004 dcmd = &cmd->frame->dcmd; in megasas_get_ld_vf_affiliation_111()
2009 megasas_return_cmd(instance, cmd); in megasas_get_ld_vf_affiliation_111()
2025 megasas_return_cmd(instance, cmd); in megasas_get_ld_vf_affiliation_111()
2034 dcmd->cmd = MFI_CMD_DCMD; in megasas_get_ld_vf_affiliation_111()
2057 megasas_issue_blocked_cmd(instance, cmd, 0); in megasas_get_ld_vf_affiliation_111()
2090 megasas_return_cmd(instance, cmd); in megasas_get_ld_vf_affiliation_111()
2098 struct megasas_cmd *cmd; in megasas_get_ld_vf_affiliation_12() local
2106 cmd = megasas_get_cmd(instance); in megasas_get_ld_vf_affiliation_12()
2108 if (!cmd) { in megasas_get_ld_vf_affiliation_12()
2115 dcmd = &cmd->frame->dcmd; in megasas_get_ld_vf_affiliation_12()
2120 megasas_return_cmd(instance, cmd); in megasas_get_ld_vf_affiliation_12()
2137 megasas_return_cmd(instance, cmd); in megasas_get_ld_vf_affiliation_12()
2146 dcmd->cmd = MFI_CMD_DCMD; in megasas_get_ld_vf_affiliation_12()
2169 megasas_issue_blocked_cmd(instance, cmd, 0); in megasas_get_ld_vf_affiliation_12()
2259 megasas_return_cmd(instance, cmd); in megasas_get_ld_vf_affiliation_12()
2281 struct megasas_cmd *cmd; in megasas_sriov_start_heartbeat() local
2285 cmd = megasas_get_cmd(instance); in megasas_sriov_start_heartbeat()
2287 if (!cmd) { in megasas_sriov_start_heartbeat()
2294 dcmd = &cmd->frame->dcmd; in megasas_sriov_start_heartbeat()
2313 dcmd->cmd = MFI_CMD_DCMD; in megasas_sriov_start_heartbeat()
2328 retval = megasas_issue_blocked_cmd(instance, cmd, in megasas_sriov_start_heartbeat()
2331 retval = megasas_issue_polled(instance, cmd); in megasas_sriov_start_heartbeat()
2342 megasas_return_cmd(instance, cmd); in megasas_sriov_start_heartbeat()
2687 megasas_service_aen(struct megasas_instance *instance, struct megasas_cmd *cmd) in megasas_service_aen() argument
2694 if ((!cmd->abort_aen) && (instance->unload == 0)) { in megasas_service_aen()
2702 cmd->abort_aen = 0; in megasas_service_aen()
2706 megasas_return_cmd(instance, cmd); in megasas_service_aen()
2904 struct megasas_cmd *cmd) in megasas_complete_int_cmd() argument
2906 cmd->cmd_status_drv = cmd->frame->io.cmd_status; in megasas_complete_int_cmd()
2921 struct megasas_cmd *cmd) in megasas_complete_abort() argument
2923 if (cmd->sync_cmd) { in megasas_complete_abort()
2924 cmd->sync_cmd = 0; in megasas_complete_abort()
2925 cmd->cmd_status_drv = 0; in megasas_complete_abort()
2941 megasas_complete_cmd(struct megasas_instance *instance, struct megasas_cmd *cmd, in megasas_complete_cmd() argument
2945 struct megasas_header *hdr = &cmd->frame->hdr; in megasas_complete_cmd()
2951 cmd->retry_for_fw_reset = 0; in megasas_complete_cmd()
2953 if (cmd->scmd) in megasas_complete_cmd()
2954 cmd->scmd->SCp.ptr = NULL; in megasas_complete_cmd()
2956 switch (hdr->cmd) { in megasas_complete_cmd()
2975 if (cmd->sync_cmd) { in megasas_complete_cmd()
2976 cmd->sync_cmd = 0; in megasas_complete_cmd()
2977 megasas_complete_int_cmd(instance, cmd); in megasas_complete_cmd()
2985 cmd->scmd->result = alt_status << 16; in megasas_complete_cmd()
2993 scsi_dma_unmap(cmd->scmd); in megasas_complete_cmd()
2994 cmd->scmd->scsi_done(cmd->scmd); in megasas_complete_cmd()
2995 megasas_return_cmd(instance, cmd); in megasas_complete_cmd()
3003 cmd->scmd->result = DID_OK << 16; in megasas_complete_cmd()
3008 cmd->scmd->result = in megasas_complete_cmd()
3014 cmd->scmd->result = (DID_OK << 16) | hdr->scsi_status; in megasas_complete_cmd()
3017 memset(cmd->scmd->sense_buffer, 0, in megasas_complete_cmd()
3019 memcpy(cmd->scmd->sense_buffer, cmd->sense, in megasas_complete_cmd()
3022 cmd->scmd->result |= DRIVER_SENSE << 24; in megasas_complete_cmd()
3029 cmd->scmd->result = DID_BAD_TARGET << 16; in megasas_complete_cmd()
3035 cmd->scmd->result = DID_ERROR << 16; in megasas_complete_cmd()
3041 scsi_dma_unmap(cmd->scmd); in megasas_complete_cmd()
3042 cmd->scmd->scsi_done(cmd->scmd); in megasas_complete_cmd()
3043 megasas_return_cmd(instance, cmd); in megasas_complete_cmd()
3050 opcode = le32_to_cpu(cmd->frame->dcmd.opcode); in megasas_complete_cmd()
3053 && (cmd->frame->dcmd.mbox.b[1] == 1)) { in megasas_complete_cmd()
3057 if (cmd->frame->hdr.cmd_status != 0) { in megasas_complete_cmd()
3058 if (cmd->frame->hdr.cmd_status != in megasas_complete_cmd()
3061 cmd->frame->hdr.cmd_status); in megasas_complete_cmd()
3063 megasas_return_cmd(instance, cmd); in megasas_complete_cmd()
3071 megasas_return_cmd(instance, cmd); in megasas_complete_cmd()
3096 (cmd->frame->dcmd.mbox.b[0] == 1)) { in megasas_complete_cmd()
3099 status = cmd->frame->hdr.cmd_status; in megasas_complete_cmd()
3101 megasas_return_cmd(instance, cmd); in megasas_complete_cmd()
3119 megasas_service_aen(instance, cmd); in megasas_complete_cmd()
3121 megasas_complete_int_cmd(instance, cmd); in megasas_complete_cmd()
3129 megasas_complete_abort(instance, cmd); in megasas_complete_cmd()
3134 hdr->cmd); in megasas_complete_cmd()
3147 struct megasas_cmd *cmd; in megasas_issue_pending_cmds_again() local
3159 cmd = list_entry((&clist_local)->next, in megasas_issue_pending_cmds_again()
3161 list_del_init(&cmd->list); in megasas_issue_pending_cmds_again()
3163 if (cmd->sync_cmd || cmd->scmd) { in megasas_issue_pending_cmds_again()
3166 cmd, cmd->scmd, cmd->sync_cmd); in megasas_issue_pending_cmds_again()
3168 cmd->retry_for_fw_reset++; in megasas_issue_pending_cmds_again()
3170 if (cmd->retry_for_fw_reset == 3) { in megasas_issue_pending_cmds_again()
3174 cmd, cmd->scmd, cmd->sync_cmd); in megasas_issue_pending_cmds_again()
3182 if (cmd->sync_cmd == 1) { in megasas_issue_pending_cmds_again()
3183 if (cmd->scmd) { in megasas_issue_pending_cmds_again()
3189 "issue it again.\n", cmd); in megasas_issue_pending_cmds_again()
3190 cmd->cmd_status_drv = MFI_STAT_INVALID_STATUS; in megasas_issue_pending_cmds_again()
3192 cmd->frame_phys_addr, in megasas_issue_pending_cmds_again()
3194 } else if (cmd->scmd) { in megasas_issue_pending_cmds_again()
3197 cmd, cmd->scmd->cmnd[0]); in megasas_issue_pending_cmds_again()
3201 cmd->frame_phys_addr, in megasas_issue_pending_cmds_again()
3202 cmd->frame_count-1, instance->reg_set); in megasas_issue_pending_cmds_again()
3206 cmd); in megasas_issue_pending_cmds_again()
3240 struct megasas_cmd *cmd; in megasas_internal_reset_defer_cmds() local
3249 cmd = instance->cmd_list[i]; in megasas_internal_reset_defer_cmds()
3250 if (cmd->sync_cmd == 1 || cmd->scmd) { in megasas_internal_reset_defer_cmds()
3253 defer_index, cmd, cmd->sync_cmd, cmd->scmd); in megasas_internal_reset_defer_cmds()
3255 if (!list_empty(&cmd->list)) { in megasas_internal_reset_defer_cmds()
3259 cmd, cmd->sync_cmd, cmd->scmd); in megasas_internal_reset_defer_cmds()
3261 list_del_init(&cmd->list); in megasas_internal_reset_defer_cmds()
3264 list_add_tail(&cmd->list, in megasas_internal_reset_defer_cmds()
3619 struct megasas_cmd *cmd; in megasas_teardown_frame_pool() local
3629 cmd = instance->cmd_list[i]; in megasas_teardown_frame_pool()
3631 if (cmd->frame) in megasas_teardown_frame_pool()
3632 pci_pool_free(instance->frame_dma_pool, cmd->frame, in megasas_teardown_frame_pool()
3633 cmd->frame_phys_addr); in megasas_teardown_frame_pool()
3635 if (cmd->sense) in megasas_teardown_frame_pool()
3636 pci_pool_free(instance->sense_dma_pool, cmd->sense, in megasas_teardown_frame_pool()
3637 cmd->sense_phys_addr); in megasas_teardown_frame_pool()
3666 struct megasas_cmd *cmd; in megasas_create_frame_pool() local
3723 cmd = instance->cmd_list[i]; in megasas_create_frame_pool()
3725 cmd->frame = pci_pool_alloc(instance->frame_dma_pool, in megasas_create_frame_pool()
3726 GFP_KERNEL, &cmd->frame_phys_addr); in megasas_create_frame_pool()
3728 cmd->sense = pci_pool_alloc(instance->sense_dma_pool, in megasas_create_frame_pool()
3729 GFP_KERNEL, &cmd->sense_phys_addr); in megasas_create_frame_pool()
3735 if (!cmd->frame || !cmd->sense) { in megasas_create_frame_pool()
3741 memset(cmd->frame, 0, total_sz); in megasas_create_frame_pool()
3742 cmd->frame->io.context = cpu_to_le32(cmd->index); in megasas_create_frame_pool()
3743 cmd->frame->io.pad_0 = 0; in megasas_create_frame_pool()
3745 cmd->frame->hdr.cmd = MFI_CMD_INVALID; in megasas_create_frame_pool()
3797 struct megasas_cmd *cmd; in megasas_alloc_cmds() local
3834 cmd = instance->cmd_list[i]; in megasas_alloc_cmds()
3835 memset(cmd, 0, sizeof(struct megasas_cmd)); in megasas_alloc_cmds()
3836 cmd->index = i; in megasas_alloc_cmds()
3837 cmd->scmd = NULL; in megasas_alloc_cmds()
3838 cmd->instance = instance; in megasas_alloc_cmds()
3840 list_add_tail(&cmd->list, &instance->cmd_pool); in megasas_alloc_cmds()
3867 struct megasas_cmd *cmd; in megasas_get_pd_list() local
3873 cmd = megasas_get_cmd(instance); in megasas_get_pd_list()
3875 if (!cmd) { in megasas_get_pd_list()
3880 dcmd = &cmd->frame->dcmd; in megasas_get_pd_list()
3887 megasas_return_cmd(instance, cmd); in megasas_get_pd_list()
3896 dcmd->cmd = MFI_CMD_DCMD; in megasas_get_pd_list()
3908 ret = megasas_issue_blocked_cmd(instance, cmd, in megasas_get_pd_list()
3911 ret = megasas_issue_polled(instance, cmd); in megasas_get_pd_list()
3944 megasas_return_cmd(instance, cmd); in megasas_get_pd_list()
3962 struct megasas_cmd *cmd; in megasas_get_ld_list() local
3968 cmd = megasas_get_cmd(instance); in megasas_get_ld_list()
3970 if (!cmd) { in megasas_get_ld_list()
3975 dcmd = &cmd->frame->dcmd; in megasas_get_ld_list()
3983 megasas_return_cmd(instance, cmd); in megasas_get_ld_list()
3992 dcmd->cmd = MFI_CMD_DCMD; in megasas_get_ld_list()
4004 ret = megasas_issue_blocked_cmd(instance, cmd, in megasas_get_ld_list()
4007 ret = megasas_issue_polled(instance, cmd); in megasas_get_ld_list()
4031 megasas_return_cmd(instance, cmd); in megasas_get_ld_list()
4048 struct megasas_cmd *cmd; in megasas_ld_list_query() local
4054 cmd = megasas_get_cmd(instance); in megasas_ld_list_query()
4056 if (!cmd) { in megasas_ld_list_query()
4062 dcmd = &cmd->frame->dcmd; in megasas_ld_list_query()
4070 megasas_return_cmd(instance, cmd); in megasas_ld_list_query()
4081 dcmd->cmd = MFI_CMD_DCMD; in megasas_ld_list_query()
4093 ret = megasas_issue_blocked_cmd(instance, cmd, in megasas_ld_list_query()
4096 ret = megasas_issue_polled(instance, cmd); in megasas_ld_list_query()
4112 megasas_return_cmd(instance, cmd); in megasas_ld_list_query()
4184 struct megasas_cmd *cmd; in megasas_get_ctrl_info() local
4192 cmd = megasas_get_cmd(instance); in megasas_get_ctrl_info()
4194 if (!cmd) { in megasas_get_ctrl_info()
4199 dcmd = &cmd->frame->dcmd; in megasas_get_ctrl_info()
4206 megasas_return_cmd(instance, cmd); in megasas_get_ctrl_info()
4213 dcmd->cmd = MFI_CMD_DCMD; in megasas_get_ctrl_info()
4226 ret = megasas_issue_blocked_cmd(instance, cmd, in megasas_get_ctrl_info()
4229 ret = megasas_issue_polled(instance, cmd); in megasas_get_ctrl_info()
4257 megasas_return_cmd(instance, cmd); in megasas_get_ctrl_info()
4280 struct megasas_cmd *cmd; in megasas_set_crash_dump_params() local
4283 cmd = megasas_get_cmd(instance); in megasas_set_crash_dump_params()
4285 if (!cmd) { in megasas_set_crash_dump_params()
4291 dcmd = &cmd->frame->dcmd; in megasas_set_crash_dump_params()
4295 dcmd->cmd = MFI_CMD_DCMD; in megasas_set_crash_dump_params()
4307 ret = megasas_issue_blocked_cmd(instance, cmd, in megasas_set_crash_dump_params()
4310 ret = megasas_issue_polled(instance, cmd); in megasas_set_crash_dump_params()
4312 megasas_return_cmd(instance, cmd); in megasas_set_crash_dump_params()
4326 struct megasas_cmd *cmd; in megasas_issue_init_mfi() local
4340 cmd = megasas_get_cmd(instance); in megasas_issue_init_mfi()
4342 init_frame = (struct megasas_init_frame *)cmd->frame; in megasas_issue_init_mfi()
4346 init_frame_h = cmd->frame_phys_addr; in megasas_issue_init_mfi()
4360 init_frame->cmd = MFI_CMD_INIT; in megasas_issue_init_mfi()
4378 if (megasas_issue_polled(instance, cmd)) { in megasas_issue_init_mfi()
4380 megasas_return_cmd(instance, cmd); in megasas_issue_init_mfi()
4384 megasas_return_cmd(instance, cmd); in megasas_issue_init_mfi()
5003 struct megasas_cmd *cmd; in megasas_get_seq_num() local
5008 cmd = megasas_get_cmd(instance); in megasas_get_seq_num()
5010 if (!cmd) { in megasas_get_seq_num()
5014 dcmd = &cmd->frame->dcmd; in megasas_get_seq_num()
5020 megasas_return_cmd(instance, cmd); in megasas_get_seq_num()
5027 dcmd->cmd = MFI_CMD_DCMD; in megasas_get_seq_num()
5038 if (megasas_issue_blocked_cmd(instance, cmd, 30)) in megasas_get_seq_num()
5055 megasas_return_cmd(instance, cmd); in megasas_get_seq_num()
5074 struct megasas_cmd *cmd; in megasas_register_aen() local
5136 cmd = megasas_get_cmd(instance); in megasas_register_aen()
5138 if (!cmd) in megasas_register_aen()
5141 dcmd = &cmd->frame->dcmd; in megasas_register_aen()
5150 dcmd->cmd = MFI_CMD_DCMD; in megasas_register_aen()
5165 megasas_return_cmd(instance, cmd); in megasas_register_aen()
5174 instance->aen_cmd = cmd; in megasas_register_aen()
5179 instance->instancet->issue_dcmd(instance, cmd); in megasas_register_aen()
5616 struct megasas_cmd *cmd; in megasas_flush_cache() local
5622 cmd = megasas_get_cmd(instance); in megasas_flush_cache()
5624 if (!cmd) in megasas_flush_cache()
5627 dcmd = &cmd->frame->dcmd; in megasas_flush_cache()
5631 dcmd->cmd = MFI_CMD_DCMD; in megasas_flush_cache()
5641 if (megasas_issue_blocked_cmd(instance, cmd, 30)) in megasas_flush_cache()
5645 megasas_return_cmd(instance, cmd); in megasas_flush_cache()
5656 struct megasas_cmd *cmd; in megasas_shutdown_controller() local
5662 cmd = megasas_get_cmd(instance); in megasas_shutdown_controller()
5664 if (!cmd) in megasas_shutdown_controller()
5677 dcmd = &cmd->frame->dcmd; in megasas_shutdown_controller()
5681 dcmd->cmd = MFI_CMD_DCMD; in megasas_shutdown_controller()
5690 if (megasas_issue_blocked_cmd(instance, cmd, 30)) in megasas_shutdown_controller()
5694 megasas_return_cmd(instance, cmd); in megasas_shutdown_controller()
6082 static int megasas_set_crash_dump_params_ioctl(struct megasas_cmd *cmd) in megasas_set_crash_dump_params_ioctl() argument
6088 crash_support = cmd->frame->dcmd.mbox.w[0]; in megasas_set_crash_dump_params_ioctl()
6125 struct megasas_cmd *cmd; in megasas_mgmt_fw_ioctl() local
6141 cmd = megasas_get_cmd(instance); in megasas_mgmt_fw_ioctl()
6142 if (!cmd) { in megasas_mgmt_fw_ioctl()
6153 memcpy(cmd->frame, ioc->frame.raw, 2 * MEGAMFI_FRAME_SIZE); in megasas_mgmt_fw_ioctl()
6154 cmd->frame->hdr.context = cpu_to_le32(cmd->index); in megasas_mgmt_fw_ioctl()
6155 cmd->frame->hdr.pad_0 = 0; in megasas_mgmt_fw_ioctl()
6156 cmd->frame->hdr.flags &= cpu_to_le16(~(MFI_FRAME_IEEE | in megasas_mgmt_fw_ioctl()
6160 if (cmd->frame->dcmd.opcode == MR_DRIVER_SET_APP_CRASHDUMP_MODE) { in megasas_mgmt_fw_ioctl()
6161 error = megasas_set_crash_dump_params_ioctl(cmd); in megasas_mgmt_fw_ioctl()
6162 megasas_return_cmd(instance, cmd); in megasas_mgmt_fw_ioctl()
6175 ((unsigned long)cmd->frame + ioc->sgl_off); in megasas_mgmt_fw_ioctl()
6221 (unsigned long *) ((unsigned long)cmd->frame + ioc->sense_off); in megasas_mgmt_fw_ioctl()
6229 cmd->sync_cmd = 1; in megasas_mgmt_fw_ioctl()
6230 megasas_issue_blocked_cmd(instance, cmd, 0); in megasas_mgmt_fw_ioctl()
6231 cmd->sync_cmd = 0; in megasas_mgmt_fw_ioctl()
6273 &cmd->frame->hdr.cmd_status, sizeof(u8))) { in megasas_mgmt_fw_ioctl()
6294 megasas_return_cmd(instance, cmd); in megasas_mgmt_fw_ioctl()
6457 megasas_mgmt_ioctl(struct file *file, unsigned int cmd, unsigned long arg) in megasas_mgmt_ioctl() argument
6459 switch (cmd) { in megasas_mgmt_ioctl()
6535 megasas_mgmt_compat_ioctl(struct file *file, unsigned int cmd, in megasas_mgmt_compat_ioctl() argument
6538 switch (cmd) { in megasas_mgmt_compat_ioctl()