Lines Matching refs:smid

283 _base_get_chain(struct MPT3SAS_ADAPTER *ioc, u16 smid,  in _base_get_chain()  argument
292 chain_virt = base_chain + (smid * ioc->facts.MaxChainDepth * in _base_get_chain()
309 _base_get_chain_phys(struct MPT3SAS_ADAPTER *ioc, u16 smid, in _base_get_chain_phys() argument
318 chain_phys = base_chain_phys + (smid * ioc->facts.MaxChainDepth * in _base_get_chain_phys()
335 _base_get_buffer_bar0(struct MPT3SAS_ADAPTER *ioc, u16 smid) in _base_get_buffer_bar0() argument
342 return chain_end + (smid * 64 * 1024); in _base_get_buffer_bar0()
356 _base_get_buffer_phys_bar0(struct MPT3SAS_ADAPTER *ioc, u16 smid) in _base_get_buffer_phys_bar0() argument
362 return chain_end_phys + (smid * 64 * 1024); in _base_get_buffer_phys_bar0()
405 void *mpi_request, u16 smid) in _clone_sg_entries() argument
444 scmd = mpt3sas_scsih_scsi_lookup_get(ioc, smid); in _clone_sg_entries()
469 buffer_iomem = _base_get_buffer_bar0(ioc, smid); in _clone_sg_entries()
470 buffer_iomem_phys = _base_get_buffer_phys_bar0(ioc, smid); in _clone_sg_entries()
503 smid, sge_chain_count); in _clone_sg_entries()
507 smid, sge_chain_count); in _clone_sg_entries()
1186 _base_display_reply_info(struct MPT3SAS_ADAPTER *ioc, u16 smid, u8 msix_index, in _base_display_reply_info() argument
1204 mpt3sas_base_get_msg_frame(ioc, smid)); in _base_display_reply_info()
1230 mpt3sas_base_done(struct MPT3SAS_ADAPTER *ioc, u16 smid, u8 msix_index, in mpt3sas_base_done() argument
1237 return mpt3sas_check_for_pending_internal_cmds(ioc, smid); in mpt3sas_base_done()
1268 u16 smid; in _base_async_event() local
1281 smid = mpt3sas_base_get_smid(ioc, ioc->base_cb_idx); in _base_async_event()
1282 if (!smid) { in _base_async_event()
1298 ack_request = mpt3sas_base_get_msg_frame(ioc, smid); in _base_async_event()
1305 ioc->put_smid_default(ioc, smid); in _base_async_event()
1319 _get_st_from_smid(struct MPT3SAS_ADAPTER *ioc, u16 smid) in _get_st_from_smid() argument
1323 if (WARN_ON(!smid) || in _get_st_from_smid()
1324 WARN_ON(smid >= ioc->hi_priority_smid)) in _get_st_from_smid()
1327 cmd = mpt3sas_scsih_scsi_lookup_get(ioc, smid); in _get_st_from_smid()
1342 _base_get_cb_idx(struct MPT3SAS_ADAPTER *ioc, u16 smid) in _base_get_cb_idx() argument
1348 if (smid < ioc->hi_priority_smid) { in _base_get_cb_idx()
1351 if (smid < ctl_smid) { in _base_get_cb_idx()
1352 st = _get_st_from_smid(ioc, smid); in _base_get_cb_idx()
1355 } else if (smid == ctl_smid) in _base_get_cb_idx()
1357 } else if (smid < ioc->internal_smid) { in _base_get_cb_idx()
1358 i = smid - ioc->hi_priority_smid; in _base_get_cb_idx()
1360 } else if (smid <= ioc->hba_queue_depth) { in _base_get_cb_idx()
1361 i = smid - ioc->internal_smid; in _base_get_cb_idx()
1434 u16 smid; in _base_process_reply_queue() local
1460 smid = le16_to_cpu(rpf->Default.DescriptorTypeDependent1); in _base_process_reply_queue()
1467 cb_idx = _base_get_cb_idx(ioc, smid); in _base_process_reply_queue()
1470 rc = mpt_callbacks[cb_idx](ioc, smid, in _base_process_reply_queue()
1473 mpt3sas_base_free_smid(ioc, smid); in _base_process_reply_queue()
1482 if (smid) { in _base_process_reply_queue()
1483 cb_idx = _base_get_cb_idx(ioc, smid); in _base_process_reply_queue()
1486 rc = mpt_callbacks[cb_idx](ioc, smid, in _base_process_reply_queue()
1490 smid, msix_index, reply); in _base_process_reply_queue()
1493 smid); in _base_process_reply_queue()
1836 u16 smid = st->smid; in _base_get_chain_buffer_tracker() local
1838 atomic_read(&ioc->chain_lookup[smid - 1].chain_offset); in _base_get_chain_buffer_tracker()
1843 chain_req = &ioc->chain_lookup[smid - 1].chains_per_smid[chain_offset]; in _base_get_chain_buffer_tracker()
1844 atomic_inc(&ioc->chain_lookup[smid - 1].chain_offset); in _base_get_chain_buffer_tracker()
1962 _base_build_nvme_prp(struct MPT3SAS_ADAPTER *ioc, u16 smid, in _base_build_nvme_prp() argument
1990 prp_page = (__le64 *)mpt3sas_base_get_pcie_sgl(ioc, smid); in _base_build_nvme_prp()
1991 prp_page_dma = mpt3sas_base_get_pcie_sgl_dma(ioc, smid); in _base_build_nvme_prp()
2132 u16 smid, int sge_count) in base_make_prp_nvme() argument
2183 curr_buff = mpt3sas_base_get_pcie_sgl(ioc, smid); in base_make_prp_nvme()
2184 msg_dma = mpt3sas_base_get_pcie_sgl_dma(ioc, smid); in base_make_prp_nvme()
2295 Mpi25SCSIIORequest_t *mpi_request, u16 smid, struct scsi_cmnd *scmd, in _base_check_pcie_native_sgl() argument
2320 smid, sges_left); in _base_check_pcie_native_sgl()
2383 struct scsi_cmnd *scmd, u16 smid, struct _pcie_device *unused) in _base_build_sg_scmd() argument
2399 mpi_request = mpt3sas_base_get_msg_frame(ioc, smid); in _base_build_sg_scmd()
2528 struct scsi_cmnd *scmd, u16 smid, struct _pcie_device *pcie_device) in _base_build_sg_scmd_ieee() argument
2543 mpi_request = mpt3sas_base_get_msg_frame(ioc, smid); in _base_build_sg_scmd_ieee()
2555 smid, scmd, pcie_device) == 0)) { in _base_build_sg_scmd_ieee()
3374 mpt3sas_base_get_msg_frame(struct MPT3SAS_ADAPTER *ioc, u16 smid) in mpt3sas_base_get_msg_frame() argument
3376 return (void *)(ioc->request + (smid * ioc->request_sz)); in mpt3sas_base_get_msg_frame()
3387 mpt3sas_base_get_sense_buffer(struct MPT3SAS_ADAPTER *ioc, u16 smid) in mpt3sas_base_get_sense_buffer() argument
3389 return (void *)(ioc->sense + ((smid - 1) * SCSI_SENSE_BUFFERSIZE)); in mpt3sas_base_get_sense_buffer()
3400 mpt3sas_base_get_sense_buffer_dma(struct MPT3SAS_ADAPTER *ioc, u16 smid) in mpt3sas_base_get_sense_buffer_dma() argument
3402 return cpu_to_le32(ioc->sense_dma + ((smid - 1) * in mpt3sas_base_get_sense_buffer_dma()
3414 mpt3sas_base_get_pcie_sgl(struct MPT3SAS_ADAPTER *ioc, u16 smid) in mpt3sas_base_get_pcie_sgl() argument
3416 return (void *)(ioc->pcie_sg_lookup[smid - 1].pcie_sgl); in mpt3sas_base_get_pcie_sgl()
3427 mpt3sas_base_get_pcie_sgl_dma(struct MPT3SAS_ADAPTER *ioc, u16 smid) in mpt3sas_base_get_pcie_sgl_dma() argument
3429 return ioc->pcie_sg_lookup[smid - 1].pcie_sgl_dma; in mpt3sas_base_get_pcie_sgl_dma()
3510 u16 smid; in mpt3sas_base_get_smid() local
3522 smid = request->smid; in mpt3sas_base_get_smid()
3525 return smid; in mpt3sas_base_get_smid()
3542 u16 smid; in mpt3sas_base_get_smid_scsiio() local
3544 smid = tag + 1; in mpt3sas_base_get_smid_scsiio()
3546 request->smid = smid; in mpt3sas_base_get_smid_scsiio()
3549 return smid; in mpt3sas_base_get_smid_scsiio()
3564 u16 smid; in mpt3sas_base_get_smid_hpr() local
3575 smid = request->smid; in mpt3sas_base_get_smid_hpr()
3578 return smid; in mpt3sas_base_get_smid_hpr()
3597 if (WARN_ON(st->smid == 0)) in mpt3sas_base_clear_st()
3602 atomic_set(&ioc->chain_lookup[st->smid - 1].chain_offset, 0); in mpt3sas_base_clear_st()
3603 st->smid = 0; in mpt3sas_base_clear_st()
3612 mpt3sas_base_free_smid(struct MPT3SAS_ADAPTER *ioc, u16 smid) in mpt3sas_base_free_smid() argument
3617 if (smid < ioc->hi_priority_smid) { in mpt3sas_base_free_smid()
3621 st = _get_st_from_smid(ioc, smid); in mpt3sas_base_free_smid()
3628 request = mpt3sas_base_get_msg_frame(ioc, smid); in mpt3sas_base_free_smid()
3637 if (smid < ioc->internal_smid) { in mpt3sas_base_free_smid()
3639 i = smid - ioc->hi_priority_smid; in mpt3sas_base_free_smid()
3642 } else if (smid <= ioc->hba_queue_depth) { in mpt3sas_base_free_smid()
3644 i = smid - ioc->internal_smid; in mpt3sas_base_free_smid()
3709 _base_set_and_get_msix_index(struct MPT3SAS_ADAPTER *ioc, u16 smid) in _base_set_and_get_msix_index() argument
3713 if (smid < ioc->hi_priority_smid) in _base_set_and_get_msix_index()
3714 st = _get_st_from_smid(ioc, smid); in _base_set_and_get_msix_index()
3731 u16 smid, u16 handle) in _base_put_smid_mpi_ep_scsi_io() argument
3736 __le32 *mfp = (__le32 *)mpt3sas_base_get_msg_frame(ioc, smid); in _base_put_smid_mpi_ep_scsi_io()
3738 _clone_sg_entries(ioc, (void *) mfp, smid); in _base_put_smid_mpi_ep_scsi_io()
3740 MPI_FRAME_START_OFFSET + (smid * ioc->request_sz); in _base_put_smid_mpi_ep_scsi_io()
3744 descriptor.SCSIIO.MSIxIndex = _base_set_and_get_msix_index(ioc, smid); in _base_put_smid_mpi_ep_scsi_io()
3745 descriptor.SCSIIO.SMID = cpu_to_le16(smid); in _base_put_smid_mpi_ep_scsi_io()
3759 _base_put_smid_scsi_io(struct MPT3SAS_ADAPTER *ioc, u16 smid, u16 handle) in _base_put_smid_scsi_io() argument
3766 descriptor.SCSIIO.MSIxIndex = _base_set_and_get_msix_index(ioc, smid); in _base_put_smid_scsi_io()
3767 descriptor.SCSIIO.SMID = cpu_to_le16(smid); in _base_put_smid_scsi_io()
3781 _base_put_smid_fast_path(struct MPT3SAS_ADAPTER *ioc, u16 smid, in _base_put_smid_fast_path() argument
3789 descriptor.SCSIIO.MSIxIndex = _base_set_and_get_msix_index(ioc, smid); in _base_put_smid_fast_path()
3790 descriptor.SCSIIO.SMID = cpu_to_le16(smid); in _base_put_smid_fast_path()
3804 _base_put_smid_hi_priority(struct MPT3SAS_ADAPTER *ioc, u16 smid, in _base_put_smid_hi_priority() argument
3812 __le32 *mfp = (__le32 *)mpt3sas_base_get_msg_frame(ioc, smid); in _base_put_smid_hi_priority()
3817 + (smid * ioc->request_sz); in _base_put_smid_hi_priority()
3827 descriptor.HighPriority.SMID = cpu_to_le16(smid); in _base_put_smid_hi_priority()
3846 mpt3sas_base_put_smid_nvme_encap(struct MPT3SAS_ADAPTER *ioc, u16 smid) in mpt3sas_base_put_smid_nvme_encap() argument
3853 descriptor.Default.MSIxIndex = _base_set_and_get_msix_index(ioc, smid); in mpt3sas_base_put_smid_nvme_encap()
3854 descriptor.Default.SMID = cpu_to_le16(smid); in mpt3sas_base_put_smid_nvme_encap()
3867 _base_put_smid_default(struct MPT3SAS_ADAPTER *ioc, u16 smid) in _base_put_smid_default() argument
3874 __le32 *mfp = (__le32 *)mpt3sas_base_get_msg_frame(ioc, smid); in _base_put_smid_default()
3876 _clone_sg_entries(ioc, (void *) mfp, smid); in _base_put_smid_default()
3879 MPI_FRAME_START_OFFSET + (smid * ioc->request_sz); in _base_put_smid_default()
3885 descriptor.Default.MSIxIndex = _base_set_and_get_msix_index(ioc, smid); in _base_put_smid_default()
3886 descriptor.Default.SMID = cpu_to_le16(smid); in _base_put_smid_default()
3908 _base_put_smid_scsi_io_atomic(struct MPT3SAS_ADAPTER *ioc, u16 smid, in _base_put_smid_scsi_io_atomic() argument
3915 descriptor.MSIxIndex = _base_set_and_get_msix_index(ioc, smid); in _base_put_smid_scsi_io_atomic()
3916 descriptor.SMID = cpu_to_le16(smid); in _base_put_smid_scsi_io_atomic()
3930 _base_put_smid_fast_path_atomic(struct MPT3SAS_ADAPTER *ioc, u16 smid, in _base_put_smid_fast_path_atomic() argument
3937 descriptor.MSIxIndex = _base_set_and_get_msix_index(ioc, smid); in _base_put_smid_fast_path_atomic()
3938 descriptor.SMID = cpu_to_le16(smid); in _base_put_smid_fast_path_atomic()
3953 _base_put_smid_hi_priority_atomic(struct MPT3SAS_ADAPTER *ioc, u16 smid, in _base_put_smid_hi_priority_atomic() argument
3961 descriptor.SMID = cpu_to_le16(smid); in _base_put_smid_hi_priority_atomic()
3975 _base_put_smid_default_atomic(struct MPT3SAS_ADAPTER *ioc, u16 smid) in _base_put_smid_default_atomic() argument
3981 descriptor.MSIxIndex = _base_set_and_get_msix_index(ioc, smid); in _base_put_smid_default_atomic()
3982 descriptor.SMID = cpu_to_le16(smid); in _base_put_smid_default_atomic()
4251 u16 smid, ioc_status; in _base_display_fwpkg_version() local
4270 smid = mpt3sas_base_get_smid(ioc, ioc->base_cb_idx); in _base_display_fwpkg_version()
4271 if (!smid) { in _base_display_fwpkg_version()
4278 mpi_request = mpt3sas_base_get_msg_frame(ioc, smid); in _base_display_fwpkg_version()
4279 ioc->base_cmds.smid = smid; in _base_display_fwpkg_version()
4287 ioc->put_smid_default(ioc, smid); in _base_display_fwpkg_version()
5797 u16 smid; in mpt3sas_base_sas_iounit_control() local
5816 smid = mpt3sas_base_get_smid(ioc, ioc->base_cb_idx); in mpt3sas_base_sas_iounit_control()
5817 if (!smid) { in mpt3sas_base_sas_iounit_control()
5825 request = mpt3sas_base_get_msg_frame(ioc, smid); in mpt3sas_base_sas_iounit_control()
5826 ioc->base_cmds.smid = smid; in mpt3sas_base_sas_iounit_control()
5832 ioc->put_smid_default(ioc, smid); in mpt3sas_base_sas_iounit_control()
5879 u16 smid; in mpt3sas_base_scsi_enclosure_processor() local
5898 smid = mpt3sas_base_get_smid(ioc, ioc->base_cb_idx); in mpt3sas_base_scsi_enclosure_processor()
5899 if (!smid) { in mpt3sas_base_scsi_enclosure_processor()
5907 request = mpt3sas_base_get_msg_frame(ioc, smid); in mpt3sas_base_scsi_enclosure_processor()
5908 ioc->base_cmds.smid = smid; in mpt3sas_base_scsi_enclosure_processor()
5912 ioc->put_smid_default(ioc, smid); in mpt3sas_base_scsi_enclosure_processor()
6246 mpt3sas_port_enable_done(struct MPT3SAS_ADAPTER *ioc, u16 smid, u8 msix_index, in mpt3sas_port_enable_done() argument
6296 u16 smid; in _base_send_port_enable() local
6306 smid = mpt3sas_base_get_smid(ioc, ioc->port_enable_cb_idx); in _base_send_port_enable()
6307 if (!smid) { in _base_send_port_enable()
6313 mpi_request = mpt3sas_base_get_msg_frame(ioc, smid); in _base_send_port_enable()
6314 ioc->port_enable_cmds.smid = smid; in _base_send_port_enable()
6319 ioc->put_smid_default(ioc, smid); in _base_send_port_enable()
6357 u16 smid; in mpt3sas_port_enable() local
6366 smid = mpt3sas_base_get_smid(ioc, ioc->port_enable_cb_idx); in mpt3sas_port_enable()
6367 if (!smid) { in mpt3sas_port_enable()
6373 mpi_request = mpt3sas_base_get_msg_frame(ioc, smid); in mpt3sas_port_enable()
6374 ioc->port_enable_cmds.smid = smid; in mpt3sas_port_enable()
6378 ioc->put_smid_default(ioc, smid); in mpt3sas_port_enable()
6467 u16 smid; in _base_event_notification() local
6478 smid = mpt3sas_base_get_smid(ioc, ioc->base_cb_idx); in _base_event_notification()
6479 if (!smid) { in _base_event_notification()
6484 mpi_request = mpt3sas_base_get_msg_frame(ioc, smid); in _base_event_notification()
6485 ioc->base_cmds.smid = smid; in _base_event_notification()
6494 ioc->put_smid_default(ioc, smid); in _base_event_notification()
6731 u16 smid; in _base_make_ioc_operational() local
6771 smid = ioc->hi_priority_smid; in _base_make_ioc_operational()
6772 for (i = 0; i < ioc->hi_priority_depth; i++, smid++) { in _base_make_ioc_operational()
6774 ioc->hpr_lookup[i].smid = smid; in _base_make_ioc_operational()
6781 smid = ioc->internal_smid; in _base_make_ioc_operational()
6782 for (i = 0; i < ioc->internal_depth; i++, smid++) { in _base_make_ioc_operational()
6784 ioc->internal_lookup[i].smid = smid; in _base_make_ioc_operational()
7276 mpt3sas_base_free_smid(ioc, ioc->transport_cmds.smid); in _base_after_reset_handler()
7281 mpt3sas_base_free_smid(ioc, ioc->base_cmds.smid); in _base_after_reset_handler()
7287 mpt3sas_base_free_smid(ioc, ioc->port_enable_cmds.smid); in _base_after_reset_handler()
7300 mpt3sas_base_free_smid(ioc, ioc->config_cmds.smid); in _base_after_reset_handler()
7301 ioc->config_cmds.smid = USHRT_MAX; in _base_after_reset_handler()