Lines Matching refs:smid

288 _base_get_chain(struct MPT3SAS_ADAPTER *ioc, u16 smid,  in _base_get_chain()  argument
297 chain_virt = base_chain + (smid * ioc->facts.MaxChainDepth * in _base_get_chain()
314 _base_get_chain_phys(struct MPT3SAS_ADAPTER *ioc, u16 smid, in _base_get_chain_phys() argument
323 chain_phys = base_chain_phys + (smid * ioc->facts.MaxChainDepth * in _base_get_chain_phys()
340 _base_get_buffer_bar0(struct MPT3SAS_ADAPTER *ioc, u16 smid) in _base_get_buffer_bar0() argument
347 return chain_end + (smid * 64 * 1024); in _base_get_buffer_bar0()
361 _base_get_buffer_phys_bar0(struct MPT3SAS_ADAPTER *ioc, u16 smid) in _base_get_buffer_phys_bar0() argument
367 return chain_end_phys + (smid * 64 * 1024); in _base_get_buffer_phys_bar0()
410 void *mpi_request, u16 smid) in _clone_sg_entries() argument
449 scmd = mpt3sas_scsih_scsi_lookup_get(ioc, smid); in _clone_sg_entries()
474 buffer_iomem = _base_get_buffer_bar0(ioc, smid); in _clone_sg_entries()
475 buffer_iomem_phys = _base_get_buffer_phys_bar0(ioc, smid); in _clone_sg_entries()
508 smid, sge_chain_count); in _clone_sg_entries()
512 smid, sge_chain_count); in _clone_sg_entries()
1285 _base_display_reply_info(struct MPT3SAS_ADAPTER *ioc, u16 smid, u8 msix_index, in _base_display_reply_info() argument
1303 mpt3sas_base_get_msg_frame(ioc, smid)); in _base_display_reply_info()
1329 mpt3sas_base_done(struct MPT3SAS_ADAPTER *ioc, u16 smid, u8 msix_index, in mpt3sas_base_done() argument
1336 return mpt3sas_check_for_pending_internal_cmds(ioc, smid); in mpt3sas_base_done()
1367 u16 smid; in _base_async_event() local
1380 smid = mpt3sas_base_get_smid(ioc, ioc->base_cb_idx); in _base_async_event()
1381 if (!smid) { in _base_async_event()
1397 ack_request = mpt3sas_base_get_msg_frame(ioc, smid); in _base_async_event()
1404 ioc->put_smid_default(ioc, smid); in _base_async_event()
1418 _get_st_from_smid(struct MPT3SAS_ADAPTER *ioc, u16 smid) in _get_st_from_smid() argument
1422 if (WARN_ON(!smid) || in _get_st_from_smid()
1423 WARN_ON(smid >= ioc->hi_priority_smid)) in _get_st_from_smid()
1426 cmd = mpt3sas_scsih_scsi_lookup_get(ioc, smid); in _get_st_from_smid()
1441 _base_get_cb_idx(struct MPT3SAS_ADAPTER *ioc, u16 smid) in _base_get_cb_idx() argument
1447 if (smid < ioc->hi_priority_smid) { in _base_get_cb_idx()
1450 if (smid < ctl_smid) { in _base_get_cb_idx()
1451 st = _get_st_from_smid(ioc, smid); in _base_get_cb_idx()
1454 } else if (smid == ctl_smid) in _base_get_cb_idx()
1456 } else if (smid < ioc->internal_smid) { in _base_get_cb_idx()
1457 i = smid - ioc->hi_priority_smid; in _base_get_cb_idx()
1459 } else if (smid <= ioc->hba_queue_depth) { in _base_get_cb_idx()
1460 i = smid - ioc->internal_smid; in _base_get_cb_idx()
1533 u16 smid; in _base_process_reply_queue() local
1559 smid = le16_to_cpu(rpf->Default.DescriptorTypeDependent1); in _base_process_reply_queue()
1566 cb_idx = _base_get_cb_idx(ioc, smid); in _base_process_reply_queue()
1569 rc = mpt_callbacks[cb_idx](ioc, smid, in _base_process_reply_queue()
1572 mpt3sas_base_free_smid(ioc, smid); in _base_process_reply_queue()
1581 if (smid) { in _base_process_reply_queue()
1582 cb_idx = _base_get_cb_idx(ioc, smid); in _base_process_reply_queue()
1585 rc = mpt_callbacks[cb_idx](ioc, smid, in _base_process_reply_queue()
1589 smid, msix_index, reply); in _base_process_reply_queue()
1592 smid); in _base_process_reply_queue()
1951 u16 smid = st->smid; in _base_get_chain_buffer_tracker() local
1953 atomic_read(&ioc->chain_lookup[smid - 1].chain_offset); in _base_get_chain_buffer_tracker()
1958 chain_req = &ioc->chain_lookup[smid - 1].chains_per_smid[chain_offset]; in _base_get_chain_buffer_tracker()
1959 atomic_inc(&ioc->chain_lookup[smid - 1].chain_offset); in _base_get_chain_buffer_tracker()
2077 _base_build_nvme_prp(struct MPT3SAS_ADAPTER *ioc, u16 smid, in _base_build_nvme_prp() argument
2105 prp_page = (__le64 *)mpt3sas_base_get_pcie_sgl(ioc, smid); in _base_build_nvme_prp()
2106 prp_page_dma = mpt3sas_base_get_pcie_sgl_dma(ioc, smid); in _base_build_nvme_prp()
2247 u16 smid, int sge_count) in base_make_prp_nvme() argument
2298 curr_buff = mpt3sas_base_get_pcie_sgl(ioc, smid); in base_make_prp_nvme()
2299 msg_dma = mpt3sas_base_get_pcie_sgl_dma(ioc, smid); in base_make_prp_nvme()
2410 Mpi25SCSIIORequest_t *mpi_request, u16 smid, struct scsi_cmnd *scmd, in _base_check_pcie_native_sgl() argument
2435 smid, sges_left); in _base_check_pcie_native_sgl()
2498 struct scsi_cmnd *scmd, u16 smid, struct _pcie_device *unused) in _base_build_sg_scmd() argument
2514 mpi_request = mpt3sas_base_get_msg_frame(ioc, smid); in _base_build_sg_scmd()
2643 struct scsi_cmnd *scmd, u16 smid, struct _pcie_device *pcie_device) in _base_build_sg_scmd_ieee() argument
2658 mpi_request = mpt3sas_base_get_msg_frame(ioc, smid); in _base_build_sg_scmd_ieee()
2670 smid, scmd, pcie_device) == 0)) { in _base_build_sg_scmd_ieee()
3475 mpt3sas_base_get_msg_frame(struct MPT3SAS_ADAPTER *ioc, u16 smid) in mpt3sas_base_get_msg_frame() argument
3477 return (void *)(ioc->request + (smid * ioc->request_sz)); in mpt3sas_base_get_msg_frame()
3488 mpt3sas_base_get_sense_buffer(struct MPT3SAS_ADAPTER *ioc, u16 smid) in mpt3sas_base_get_sense_buffer() argument
3490 return (void *)(ioc->sense + ((smid - 1) * SCSI_SENSE_BUFFERSIZE)); in mpt3sas_base_get_sense_buffer()
3501 mpt3sas_base_get_sense_buffer_dma(struct MPT3SAS_ADAPTER *ioc, u16 smid) in mpt3sas_base_get_sense_buffer_dma() argument
3503 return cpu_to_le32(ioc->sense_dma + ((smid - 1) * in mpt3sas_base_get_sense_buffer_dma()
3515 mpt3sas_base_get_pcie_sgl(struct MPT3SAS_ADAPTER *ioc, u16 smid) in mpt3sas_base_get_pcie_sgl() argument
3517 return (void *)(ioc->pcie_sg_lookup[smid - 1].pcie_sgl); in mpt3sas_base_get_pcie_sgl()
3528 mpt3sas_base_get_pcie_sgl_dma(struct MPT3SAS_ADAPTER *ioc, u16 smid) in mpt3sas_base_get_pcie_sgl_dma() argument
3530 return ioc->pcie_sg_lookup[smid - 1].pcie_sgl_dma; in mpt3sas_base_get_pcie_sgl_dma()
3627 u16 smid; in mpt3sas_base_get_smid() local
3639 smid = request->smid; in mpt3sas_base_get_smid()
3642 return smid; in mpt3sas_base_get_smid()
3659 u16 smid; in mpt3sas_base_get_smid_scsiio() local
3661 smid = tag + 1; in mpt3sas_base_get_smid_scsiio()
3663 request->smid = smid; in mpt3sas_base_get_smid_scsiio()
3666 return smid; in mpt3sas_base_get_smid_scsiio()
3681 u16 smid; in mpt3sas_base_get_smid_hpr() local
3692 smid = request->smid; in mpt3sas_base_get_smid_hpr()
3695 return smid; in mpt3sas_base_get_smid_hpr()
3714 if (WARN_ON(st->smid == 0)) in mpt3sas_base_clear_st()
3719 atomic_set(&ioc->chain_lookup[st->smid - 1].chain_offset, 0); in mpt3sas_base_clear_st()
3720 st->smid = 0; in mpt3sas_base_clear_st()
3729 mpt3sas_base_free_smid(struct MPT3SAS_ADAPTER *ioc, u16 smid) in mpt3sas_base_free_smid() argument
3734 if (smid < ioc->hi_priority_smid) { in mpt3sas_base_free_smid()
3738 st = _get_st_from_smid(ioc, smid); in mpt3sas_base_free_smid()
3745 request = mpt3sas_base_get_msg_frame(ioc, smid); in mpt3sas_base_free_smid()
3754 if (smid < ioc->internal_smid) { in mpt3sas_base_free_smid()
3756 i = smid - ioc->hi_priority_smid; in mpt3sas_base_free_smid()
3759 } else if (smid <= ioc->hba_queue_depth) { in mpt3sas_base_free_smid()
3761 i = smid - ioc->internal_smid; in mpt3sas_base_free_smid()
3826 _base_set_and_get_msix_index(struct MPT3SAS_ADAPTER *ioc, u16 smid) in _base_set_and_get_msix_index() argument
3830 if (smid < ioc->hi_priority_smid) in _base_set_and_get_msix_index()
3831 st = _get_st_from_smid(ioc, smid); in _base_set_and_get_msix_index()
3848 u16 smid, u16 handle) in _base_put_smid_mpi_ep_scsi_io() argument
3853 __le32 *mfp = (__le32 *)mpt3sas_base_get_msg_frame(ioc, smid); in _base_put_smid_mpi_ep_scsi_io()
3855 _clone_sg_entries(ioc, (void *) mfp, smid); in _base_put_smid_mpi_ep_scsi_io()
3857 MPI_FRAME_START_OFFSET + (smid * ioc->request_sz); in _base_put_smid_mpi_ep_scsi_io()
3861 descriptor.SCSIIO.MSIxIndex = _base_set_and_get_msix_index(ioc, smid); in _base_put_smid_mpi_ep_scsi_io()
3862 descriptor.SCSIIO.SMID = cpu_to_le16(smid); in _base_put_smid_mpi_ep_scsi_io()
3876 _base_put_smid_scsi_io(struct MPT3SAS_ADAPTER *ioc, u16 smid, u16 handle) in _base_put_smid_scsi_io() argument
3883 descriptor.SCSIIO.MSIxIndex = _base_set_and_get_msix_index(ioc, smid); in _base_put_smid_scsi_io()
3884 descriptor.SCSIIO.SMID = cpu_to_le16(smid); in _base_put_smid_scsi_io()
3898 _base_put_smid_fast_path(struct MPT3SAS_ADAPTER *ioc, u16 smid, in _base_put_smid_fast_path() argument
3906 descriptor.SCSIIO.MSIxIndex = _base_set_and_get_msix_index(ioc, smid); in _base_put_smid_fast_path()
3907 descriptor.SCSIIO.SMID = cpu_to_le16(smid); in _base_put_smid_fast_path()
3921 _base_put_smid_hi_priority(struct MPT3SAS_ADAPTER *ioc, u16 smid, in _base_put_smid_hi_priority() argument
3929 __le32 *mfp = (__le32 *)mpt3sas_base_get_msg_frame(ioc, smid); in _base_put_smid_hi_priority()
3934 + (smid * ioc->request_sz); in _base_put_smid_hi_priority()
3944 descriptor.HighPriority.SMID = cpu_to_le16(smid); in _base_put_smid_hi_priority()
3963 mpt3sas_base_put_smid_nvme_encap(struct MPT3SAS_ADAPTER *ioc, u16 smid) in mpt3sas_base_put_smid_nvme_encap() argument
3970 descriptor.Default.MSIxIndex = _base_set_and_get_msix_index(ioc, smid); in mpt3sas_base_put_smid_nvme_encap()
3971 descriptor.Default.SMID = cpu_to_le16(smid); in mpt3sas_base_put_smid_nvme_encap()
3984 _base_put_smid_default(struct MPT3SAS_ADAPTER *ioc, u16 smid) in _base_put_smid_default() argument
3991 __le32 *mfp = (__le32 *)mpt3sas_base_get_msg_frame(ioc, smid); in _base_put_smid_default()
3993 _clone_sg_entries(ioc, (void *) mfp, smid); in _base_put_smid_default()
3996 MPI_FRAME_START_OFFSET + (smid * ioc->request_sz); in _base_put_smid_default()
4002 descriptor.Default.MSIxIndex = _base_set_and_get_msix_index(ioc, smid); in _base_put_smid_default()
4003 descriptor.Default.SMID = cpu_to_le16(smid); in _base_put_smid_default()
4025 _base_put_smid_scsi_io_atomic(struct MPT3SAS_ADAPTER *ioc, u16 smid, in _base_put_smid_scsi_io_atomic() argument
4032 descriptor.MSIxIndex = _base_set_and_get_msix_index(ioc, smid); in _base_put_smid_scsi_io_atomic()
4033 descriptor.SMID = cpu_to_le16(smid); in _base_put_smid_scsi_io_atomic()
4047 _base_put_smid_fast_path_atomic(struct MPT3SAS_ADAPTER *ioc, u16 smid, in _base_put_smid_fast_path_atomic() argument
4054 descriptor.MSIxIndex = _base_set_and_get_msix_index(ioc, smid); in _base_put_smid_fast_path_atomic()
4055 descriptor.SMID = cpu_to_le16(smid); in _base_put_smid_fast_path_atomic()
4070 _base_put_smid_hi_priority_atomic(struct MPT3SAS_ADAPTER *ioc, u16 smid, in _base_put_smid_hi_priority_atomic() argument
4078 descriptor.SMID = cpu_to_le16(smid); in _base_put_smid_hi_priority_atomic()
4092 _base_put_smid_default_atomic(struct MPT3SAS_ADAPTER *ioc, u16 smid) in _base_put_smid_default_atomic() argument
4098 descriptor.MSIxIndex = _base_set_and_get_msix_index(ioc, smid); in _base_put_smid_default_atomic()
4099 descriptor.SMID = cpu_to_le16(smid); in _base_put_smid_default_atomic()
4370 u16 smid, ioc_status; in _base_display_fwpkg_version() local
4390 smid = mpt3sas_base_get_smid(ioc, ioc->base_cb_idx); in _base_display_fwpkg_version()
4391 if (!smid) { in _base_display_fwpkg_version()
4398 mpi_request = mpt3sas_base_get_msg_frame(ioc, smid); in _base_display_fwpkg_version()
4399 ioc->base_cmds.smid = smid; in _base_display_fwpkg_version()
4407 ioc->put_smid_default(ioc, smid); in _base_display_fwpkg_version()
6096 u16 smid; in mpt3sas_base_sas_iounit_control() local
6115 smid = mpt3sas_base_get_smid(ioc, ioc->base_cb_idx); in mpt3sas_base_sas_iounit_control()
6116 if (!smid) { in mpt3sas_base_sas_iounit_control()
6124 request = mpt3sas_base_get_msg_frame(ioc, smid); in mpt3sas_base_sas_iounit_control()
6125 ioc->base_cmds.smid = smid; in mpt3sas_base_sas_iounit_control()
6131 ioc->put_smid_default(ioc, smid); in mpt3sas_base_sas_iounit_control()
6177 u16 smid; in mpt3sas_base_scsi_enclosure_processor() local
6196 smid = mpt3sas_base_get_smid(ioc, ioc->base_cb_idx); in mpt3sas_base_scsi_enclosure_processor()
6197 if (!smid) { in mpt3sas_base_scsi_enclosure_processor()
6205 request = mpt3sas_base_get_msg_frame(ioc, smid); in mpt3sas_base_scsi_enclosure_processor()
6206 ioc->base_cmds.smid = smid; in mpt3sas_base_scsi_enclosure_processor()
6210 ioc->put_smid_default(ioc, smid); in mpt3sas_base_scsi_enclosure_processor()
6555 mpt3sas_port_enable_done(struct MPT3SAS_ADAPTER *ioc, u16 smid, u8 msix_index, in mpt3sas_port_enable_done() argument
6605 u16 smid; in _base_send_port_enable() local
6615 smid = mpt3sas_base_get_smid(ioc, ioc->port_enable_cb_idx); in _base_send_port_enable()
6616 if (!smid) { in _base_send_port_enable()
6622 mpi_request = mpt3sas_base_get_msg_frame(ioc, smid); in _base_send_port_enable()
6623 ioc->port_enable_cmds.smid = smid; in _base_send_port_enable()
6628 ioc->put_smid_default(ioc, smid); in _base_send_port_enable()
6666 u16 smid; in mpt3sas_port_enable() local
6675 smid = mpt3sas_base_get_smid(ioc, ioc->port_enable_cb_idx); in mpt3sas_port_enable()
6676 if (!smid) { in mpt3sas_port_enable()
6682 mpi_request = mpt3sas_base_get_msg_frame(ioc, smid); in mpt3sas_port_enable()
6683 ioc->port_enable_cmds.smid = smid; in mpt3sas_port_enable()
6687 ioc->put_smid_default(ioc, smid); in mpt3sas_port_enable()
6776 u16 smid; in _base_event_notification() local
6787 smid = mpt3sas_base_get_smid(ioc, ioc->base_cb_idx); in _base_event_notification()
6788 if (!smid) { in _base_event_notification()
6793 mpi_request = mpt3sas_base_get_msg_frame(ioc, smid); in _base_event_notification()
6794 ioc->base_cmds.smid = smid; in _base_event_notification()
6803 ioc->put_smid_default(ioc, smid); in _base_event_notification()
7070 u16 smid; in _base_make_ioc_operational() local
7110 smid = ioc->hi_priority_smid; in _base_make_ioc_operational()
7111 for (i = 0; i < ioc->hi_priority_depth; i++, smid++) { in _base_make_ioc_operational()
7113 ioc->hpr_lookup[i].smid = smid; in _base_make_ioc_operational()
7120 smid = ioc->internal_smid; in _base_make_ioc_operational()
7121 for (i = 0; i < ioc->internal_depth; i++, smid++) { in _base_make_ioc_operational()
7123 ioc->internal_lookup[i].smid = smid; in _base_make_ioc_operational()
7619 mpt3sas_base_free_smid(ioc, ioc->transport_cmds.smid); in _base_clear_outstanding_mpt_commands()
7624 mpt3sas_base_free_smid(ioc, ioc->base_cmds.smid); in _base_clear_outstanding_mpt_commands()
7630 mpt3sas_base_free_smid(ioc, ioc->port_enable_cmds.smid); in _base_clear_outstanding_mpt_commands()
7643 mpt3sas_base_free_smid(ioc, ioc->config_cmds.smid); in _base_clear_outstanding_mpt_commands()
7644 ioc->config_cmds.smid = USHRT_MAX; in _base_clear_outstanding_mpt_commands()