mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2026-08-31 10:31:33 -04:00
scsi: fnic: Advertise NVMe initiator service parameters
Set FC service parameters according to the selected initiator role. Keep FCP retry and confirmation bits for FCP initiators, and advertise NVMe initiator and SLER bits for NVMe initiators. Reviewed-by: Sesidhar Baddela <sebaddel@cisco.com> Reviewed-by: Arulprabhu Ponnusamy <arulponn@cisco.com> Reviewed-by: Gian Carlo Boffa <gcboffa@cisco.com> Reviewed-by: Arun Easi <aeasi@cisco.com> Reviewed-by: Hannes Reinecke <hare@kernel.org> Reviewed-by: Lee Duncan <lduncan@suse.com> Signed-off-by: Karan Tilak Kumar <kartilak@cisco.com> Co-developed-by: Hannes Reinecke <hare@kernel.org> Link: https://patch.msgid.link/20260724174811.5118-5-kartilak@cisco.com Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
This commit is contained in:
committed by
Martin K. Petersen
parent
12bd1b2912
commit
20b991c302
@@ -39,6 +39,9 @@
|
||||
#define FNIC_FCP_SP_CONF_CMPL 0x00000080
|
||||
#define FNIC_FCP_SP_RETRY 0x00000100
|
||||
|
||||
#define FNIC_NVME_SP_INITIATOR 0x00000020
|
||||
#define FNIC_NVME_SP_SLER 0x00000100
|
||||
|
||||
#define FNIC_FC_CONCUR_SEQS (0xFF)
|
||||
#define FNIC_FC_RO_INFO (0x1F)
|
||||
|
||||
|
||||
@@ -1016,11 +1016,16 @@ static int fnic_probe(struct pci_dev *pdev, const struct pci_device_id *ent)
|
||||
iport->max_flogi_retries = fnic->config.flogi_retries;
|
||||
iport->max_plogi_retries = fnic->config.plogi_retries;
|
||||
iport->plogi_timeout = fnic->config.plogi_timeout;
|
||||
iport->service_params =
|
||||
(FNIC_FCP_SP_INITIATOR | FNIC_FCP_SP_RD_XRDY_DIS |
|
||||
FNIC_FCP_SP_CONF_CMPL);
|
||||
if (fnic->config.flags & VFCF_FCP_SEQ_LVL_ERR)
|
||||
iport->service_params |= FNIC_FCP_SP_RETRY;
|
||||
if (IS_FNIC_FCP_INITIATOR(fnic)) {
|
||||
iport->service_params = (FNIC_FCP_SP_INITIATOR |
|
||||
FNIC_FCP_SP_RD_XRDY_DIS | FNIC_FCP_SP_CONF_CMPL);
|
||||
if (fnic->config.flags & VFCF_FCP_SEQ_LVL_ERR)
|
||||
iport->service_params |= FNIC_FCP_SP_RETRY;
|
||||
} else if (IS_FNIC_NVME_INITIATOR(fnic)) {
|
||||
iport->service_params = (FNIC_NVME_SP_INITIATOR);
|
||||
if (fnic->config.flags & VFCF_FCP_SEQ_LVL_ERR)
|
||||
iport->service_params |= FNIC_NVME_SP_SLER;
|
||||
}
|
||||
|
||||
iport->boot_time = jiffies;
|
||||
iport->e_d_tov = fnic->config.ed_tov;
|
||||
|
||||
Reference in New Issue
Block a user