Lines Matching refs:base_cmds

751 	if (ioc->base_cmds.status == MPT3_CMD_NOT_USED)  in mpt3sas_base_done()
754 ioc->base_cmds.status |= MPT3_CMD_COMPLETE; in mpt3sas_base_done()
756 ioc->base_cmds.status |= MPT3_CMD_REPLY_VALID; in mpt3sas_base_done()
757 memcpy(ioc->base_cmds.reply, mpi_reply, mpi_reply->MsgLength*4); in mpt3sas_base_done()
759 ioc->base_cmds.status &= ~MPT3_CMD_PENDING; in mpt3sas_base_done()
761 complete(&ioc->base_cmds.done); in mpt3sas_base_done()
3462 mutex_lock(&ioc->base_cmds.mutex); in mpt3sas_base_sas_iounit_control()
3464 if (ioc->base_cmds.status != MPT3_CMD_NOT_USED) { in mpt3sas_base_sas_iounit_control()
3497 ioc->base_cmds.status = MPT3_CMD_PENDING; in mpt3sas_base_sas_iounit_control()
3499 ioc->base_cmds.smid = smid; in mpt3sas_base_sas_iounit_control()
3504 init_completion(&ioc->base_cmds.done); in mpt3sas_base_sas_iounit_control()
3506 timeleft = wait_for_completion_timeout(&ioc->base_cmds.done, in mpt3sas_base_sas_iounit_control()
3512 if (!(ioc->base_cmds.status & MPT3_CMD_COMPLETE)) { in mpt3sas_base_sas_iounit_control()
3517 if (!(ioc->base_cmds.status & MPT3_CMD_RESET)) in mpt3sas_base_sas_iounit_control()
3521 if (ioc->base_cmds.status & MPT3_CMD_REPLY_VALID) in mpt3sas_base_sas_iounit_control()
3522 memcpy(mpi_reply, ioc->base_cmds.reply, in mpt3sas_base_sas_iounit_control()
3526 ioc->base_cmds.status = MPT3_CMD_NOT_USED; in mpt3sas_base_sas_iounit_control()
3533 ioc->base_cmds.status = MPT3_CMD_NOT_USED; in mpt3sas_base_sas_iounit_control()
3536 mutex_unlock(&ioc->base_cmds.mutex); in mpt3sas_base_sas_iounit_control()
3566 mutex_lock(&ioc->base_cmds.mutex); in mpt3sas_base_scsi_enclosure_processor()
3568 if (ioc->base_cmds.status != MPT3_CMD_NOT_USED) { in mpt3sas_base_scsi_enclosure_processor()
3602 ioc->base_cmds.status = MPT3_CMD_PENDING; in mpt3sas_base_scsi_enclosure_processor()
3604 ioc->base_cmds.smid = smid; in mpt3sas_base_scsi_enclosure_processor()
3606 init_completion(&ioc->base_cmds.done); in mpt3sas_base_scsi_enclosure_processor()
3608 timeleft = wait_for_completion_timeout(&ioc->base_cmds.done, in mpt3sas_base_scsi_enclosure_processor()
3610 if (!(ioc->base_cmds.status & MPT3_CMD_COMPLETE)) { in mpt3sas_base_scsi_enclosure_processor()
3615 if (!(ioc->base_cmds.status & MPT3_CMD_RESET)) in mpt3sas_base_scsi_enclosure_processor()
3619 if (ioc->base_cmds.status & MPT3_CMD_REPLY_VALID) in mpt3sas_base_scsi_enclosure_processor()
3620 memcpy(mpi_reply, ioc->base_cmds.reply, in mpt3sas_base_scsi_enclosure_processor()
3624 ioc->base_cmds.status = MPT3_CMD_NOT_USED; in mpt3sas_base_scsi_enclosure_processor()
3631 ioc->base_cmds.status = MPT3_CMD_NOT_USED; in mpt3sas_base_scsi_enclosure_processor()
3634 mutex_unlock(&ioc->base_cmds.mutex); in mpt3sas_base_scsi_enclosure_processor()
4123 if (ioc->base_cmds.status & MPT3_CMD_PENDING) { in _base_event_notification()
4135 ioc->base_cmds.status = MPT3_CMD_PENDING; in _base_event_notification()
4137 ioc->base_cmds.smid = smid; in _base_event_notification()
4145 init_completion(&ioc->base_cmds.done); in _base_event_notification()
4147 timeleft = wait_for_completion_timeout(&ioc->base_cmds.done, 30*HZ); in _base_event_notification()
4148 if (!(ioc->base_cmds.status & MPT3_CMD_COMPLETE)) { in _base_event_notification()
4153 if (ioc->base_cmds.status & MPT3_CMD_RESET) in _base_event_notification()
4160 ioc->base_cmds.status = MPT3_CMD_NOT_USED; in _base_event_notification()
4196 mutex_lock(&ioc->base_cmds.mutex); in mpt3sas_base_validate_event_type()
4198 mutex_unlock(&ioc->base_cmds.mutex); in mpt3sas_base_validate_event_type()
4699 mutex_init(&ioc->base_cmds.mutex); in mpt3sas_base_attach()
4700 ioc->base_cmds.reply = kzalloc(ioc->reply_sz, GFP_KERNEL); in mpt3sas_base_attach()
4701 ioc->base_cmds.status = MPT3_CMD_NOT_USED; in mpt3sas_base_attach()
4733 if (!ioc->base_cmds.reply || !ioc->transport_cmds.reply || in mpt3sas_base_attach()
4777 kfree(ioc->base_cmds.reply); in mpt3sas_base_attach()
4783 ioc->base_cmds.reply = NULL; in mpt3sas_base_attach()
4815 kfree(ioc->base_cmds.reply); in mpt3sas_base_detach()
4853 if (ioc->base_cmds.status & MPT3_CMD_PENDING) { in _base_reset_handler()
4854 ioc->base_cmds.status |= MPT3_CMD_RESET; in _base_reset_handler()
4855 mpt3sas_base_free_smid(ioc, ioc->base_cmds.smid); in _base_reset_handler()
4856 complete(&ioc->base_cmds.done); in _base_reset_handler()