Lines Matching +full:timeout +full:- +full:ulp +full:- +full:ms
4 * Copyright (C) 2017-2024 Broadcom. All Rights Reserved. The term *
6 * Copyright (C) 2004-2016 Emulex. All rights reserved. *
9 * Portions Copyright (C) 2004-2005 Christoph Hellwig *
17 * FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT, ARE *
65 #define LPFC_IOCB_LIST_CNT 2250 /* list of IOCBs for fast-path usage. */
84 #define LPFC_HB_MBOX_TIMEOUT 30 /* Heart beat timeout in seconds. */
95 #define LPFC_DRVR_TIMEOUT 16 /* driver iocb timeout value in sec */
101 /* Number of MSI-X vectors the driver uses */
133 * Provide for FC4 TYPE x28 - NVME. The
348 (vport->vmid_priority_tagging ? 1 : 0)
397 LPFC_LINK_UP = 5, /* Link is up - issue READ_LA */
398 LPFC_CLEAR_LA = 6, /* authentication cmplt - issue
401 LPFC_HBA_ERROR = -1
408 HBA_SP_QUEUE_EVT = 3, /* Slow-path qevt posted to worker thread*/
417 HBA_DEVLOSS_TMO = 13, /* HBA in devloss timeout */
430 HBA_HBEAT_TMO = 27, /* HBEAT initiated after timeout */
561 #define LPFC_CGN_INFO_SZ (sizeof(struct lpfc_cgn_info) - \
579 * phba->link_flag (e.g. FC_PTP, FC_PUBLIC_LOOP)
679 uint32_t work_port_events; /* Timeout to be handled */
680 #define WORKER_DISC_TMO 0x1 /* vport: Discovery timeout */
681 #define WORKER_ELS_TMO 0x2 /* vport: ELS timeout */
684 #define WORKER_MBOX_TMO 0x100 /* hba: MBOX timeout */
685 #define WORKER_HB_TMO 0x200 /* hba: Heart beat timeout */
686 #define WORKER_FABRIC_BLOCK_TMO 0x400 /* hba: fabric block timeout */
913 /* Assign IRQs only on non-hyperthreaded CPUs. This is the
965 /* Slow-path IOCB process function jump table entries */
1052 uint32_t fcp_ring_in_use; /* When polling test if intr-hndlr active*/
1104 u8 nsler; /* Firmware supports FC-NVMe-2 SLER */
1245 PCI BAR0 with dual-ULP support */
1247 PCI BAR2 with dual-ULP support */
1249 PCI BAR4 with dual-ULP support */
1327 #define LPFC_MAX_VPI 0xFF /* Max number VPI supported 0 - 0xff */
1390 #define LPFC_INJERR_LBA_OFF (sector_t)(-1)
1395 /* iDiag debugfs sub-directory */
1515 uint32_t cmf_interval_rate; /* timer interval limit in ms */
1532 uint32_t cmf_last_ts; /* Interval congestion time (ms) */
1574 #define LPFC_CGN_TIMER_TO_MIN 60000 /* ms in a minute */
1632 if (phba->cfg_topology == FLAGS_LOCAL_LB) in lpfc_set_loopback_flag()
1633 phba->link_flag |= LS_LOOPBACK_MODE; in lpfc_set_loopback_flag()
1635 phba->link_flag &= ~LS_LOOPBACK_MODE; in lpfc_set_loopback_flag()
1641 return phba->link_state == LPFC_LINK_UP || in lpfc_is_link_up()
1642 phba->link_state == LPFC_CLEAR_LA || in lpfc_is_link_up()
1643 phba->link_state == LPFC_HBA_READY; in lpfc_is_link_up()
1650 set_bit(LPFC_DATA_READY, &phba->data_flags); in lpfc_worker_wake_up()
1653 wake_up(&phba->work_waitq); in lpfc_worker_wake_up()
1663 return -EIO; in lpfc_readl()
1675 phba->sli.slistat.err_attn_event++; in lpfc_sli_read_hs()
1678 if (lpfc_readl(phba->HSregaddr, &phba->work_hs) || in lpfc_sli_read_hs()
1679 lpfc_readl(phba->MBslimaddr + 0xa8, &phba->work_status[0]) || in lpfc_sli_read_hs()
1680 lpfc_readl(phba->MBslimaddr + 0xac, &phba->work_status[1])) { in lpfc_sli_read_hs()
1681 return -EIO; in lpfc_sli_read_hs()
1685 writel(HA_ERATT, phba->HAregaddr); in lpfc_sli_read_hs()
1686 readl(phba->HAregaddr); /* flush */ in lpfc_sli_read_hs()
1687 phba->pport->stopped = 1; in lpfc_sli_read_hs()
1696 if (phba->sli_rev != LPFC_SLI_REV4 && in lpfc_phba_elsring()
1697 phba->sli_rev != LPFC_SLI_REV3 && in lpfc_phba_elsring()
1698 phba->sli_rev != LPFC_SLI_REV2) in lpfc_phba_elsring()
1701 if (phba->sli_rev == LPFC_SLI_REV4) { in lpfc_phba_elsring()
1702 if (phba->sli4_hba.els_wq) in lpfc_phba_elsring()
1703 return phba->sli4_hba.els_wq->pring; in lpfc_phba_elsring()
1707 return &phba->sli.sli3_ring[LPFC_ELS_RING]; in lpfc_phba_elsring()
1711 * lpfc_next_online_cpu - Finds next online CPU on cpumask
1731 * lpfc_next_present_cpu - Finds next present CPU after n
1750 * lpfc_sli4_mod_hba_eq_delay - update EQ delay
1763 bf_set(lpfc_sliport_eqdelay_id, ®_data, eq->queue_id); in lpfc_sli4_mod_hba_eq_delay()
1765 writel(reg_data.word0, phba->sli4_hba.u.if_type2.EQDregaddr); in lpfc_sli4_mod_hba_eq_delay()
1766 eq->q_mode = delay; in lpfc_sli4_mod_hba_eq_delay()
1799 * lpfc_is_vmid_enabled - returns if VMID is enabled for either switch types
1804 * ---------------------------------------------------
1806 * ---------------------------------------------------
1814 ---------------------------------------------------
1819 return phba->cfg_vmid_app_header || phba->cfg_vmid_priority_tagging; in lpfc_is_vmid_enabled()
1825 if (phba->sli_rev == LPFC_SLI_REV4) in get_job_ulpstatus()
1826 return bf_get(lpfc_wcqe_c_status, &iocbq->wcqe_cmpl); in get_job_ulpstatus()
1828 return iocbq->iocb.ulpStatus; in get_job_ulpstatus()
1834 if (phba->sli_rev == LPFC_SLI_REV4) in get_job_word4()
1835 return iocbq->wcqe_cmpl.parameter; in get_job_word4()
1837 return iocbq->iocb.un.ulpWord[4]; in get_job_word4()
1843 if (phba->sli_rev == LPFC_SLI_REV4) in get_job_cmnd()
1844 return bf_get(wqe_cmnd, &iocbq->wqe.generic.wqe_com); in get_job_cmnd()
1846 return iocbq->iocb.ulpCommand; in get_job_cmnd()
1852 if (phba->sli_rev == LPFC_SLI_REV4) in get_job_ulpcontext()
1853 return bf_get(wqe_ctxt_tag, &iocbq->wqe.generic.wqe_com); in get_job_ulpcontext()
1855 return iocbq->iocb.ulpContext; in get_job_ulpcontext()
1861 if (phba->sli_rev == LPFC_SLI_REV4) in get_job_rcvoxid()
1862 return bf_get(wqe_rcvoxid, &iocbq->wqe.generic.wqe_com); in get_job_rcvoxid()
1864 return iocbq->iocb.unsli3.rcvsli3.ox_id; in get_job_rcvoxid()
1870 if (phba->sli_rev == LPFC_SLI_REV4) in get_job_data_placed()
1871 return iocbq->wcqe_cmpl.total_data_placed; in get_job_data_placed()
1873 return iocbq->iocb.un.genreq64.bdl.bdeSize; in get_job_data_placed()
1879 if (phba->sli_rev == LPFC_SLI_REV4) in get_job_abtsiotag()
1880 return iocbq->wqe.abort_cmd.wqe_com.abort_tag; in get_job_abtsiotag()
1882 return iocbq->iocb.un.acxri.abortIoTag; in get_job_abtsiotag()
1888 if (phba->sli_rev == LPFC_SLI_REV4) in get_job_els_rsp64_did()
1889 return bf_get(wqe_els_did, &iocbq->wqe.els_req.wqe_dest); in get_job_els_rsp64_did()
1891 return iocbq->iocb.un.elsreq64.remoteID; in get_job_els_rsp64_did()