| .. | .. |
|---|
| 41 | 41 | LPFC_EVT_DEV_LOSS, |
|---|
| 42 | 42 | LPFC_EVT_FASTPATH_MGMT_EVT, |
|---|
| 43 | 43 | LPFC_EVT_RESET_HBA, |
|---|
| 44 | + LPFC_EVT_RECOVER_PORT |
|---|
| 44 | 45 | }; |
|---|
| 45 | 46 | |
|---|
| 46 | 47 | /* structure used to queue event to the discovery tasklet */ |
|---|
| .. | .. |
|---|
| 112 | 113 | uint8_t nlp_retry; /* used for ELS retries */ |
|---|
| 113 | 114 | uint8_t nlp_fcp_info; /* class info, bits 0-3 */ |
|---|
| 114 | 115 | #define NLP_FCP_2_DEVICE 0x10 /* FCP-2 device */ |
|---|
| 116 | + u8 nlp_nvme_info; /* NVME NSLER Support */ |
|---|
| 117 | +#define NLP_NVME_NSLER 0x1 /* NVME NSLER device */ |
|---|
| 115 | 118 | |
|---|
| 116 | 119 | uint16_t nlp_usg_map; /* ndlp management usage bitmap */ |
|---|
| 117 | 120 | #define NLP_USG_NODE_ACT_BIT 0x1 /* Indicate ndlp is actively used */ |
|---|
| .. | .. |
|---|
| 126 | 129 | struct lpfc_vport *vport; |
|---|
| 127 | 130 | struct lpfc_work_evt els_retry_evt; |
|---|
| 128 | 131 | struct lpfc_work_evt dev_loss_evt; |
|---|
| 132 | + struct lpfc_work_evt recovery_evt; |
|---|
| 129 | 133 | struct kref kref; |
|---|
| 130 | 134 | atomic_t cmd_pending; |
|---|
| 131 | 135 | uint32_t cmd_qdepth; |
|---|
| .. | .. |
|---|
| 138 | 142 | |
|---|
| 139 | 143 | uint32_t nvme_fb_size; /* NVME target's supported byte cnt */ |
|---|
| 140 | 144 | #define NVME_FB_BIT_SHIFT 9 /* PRLI Rsp first burst in 512B units. */ |
|---|
| 145 | + uint32_t nlp_defer_did; |
|---|
| 141 | 146 | }; |
|---|
| 142 | 147 | struct lpfc_node_rrq { |
|---|
| 143 | 148 | struct list_head list; |
|---|
| .. | .. |
|---|
| 156 | 161 | /* Defines for nlp_flag (uint32) */ |
|---|
| 157 | 162 | #define NLP_IGNR_REG_CMPL 0x00000001 /* Rcvd rscn before we cmpl reg login */ |
|---|
| 158 | 163 | #define NLP_REG_LOGIN_SEND 0x00000002 /* sent reglogin to adapter */ |
|---|
| 164 | +#define NLP_RELEASE_RPI 0x00000004 /* Release RPI to free pool */ |
|---|
| 159 | 165 | #define NLP_SUPPRESS_RSP 0x00000010 /* Remote NPort supports suppress rsp */ |
|---|
| 160 | 166 | #define NLP_PLOGI_SND 0x00000020 /* sent PLOGI request for this entry */ |
|---|
| 161 | 167 | #define NLP_PRLI_SND 0x00000040 /* sent PRLI request for this entry */ |
|---|
| .. | .. |
|---|
| 165 | 171 | #define NLP_ELS_SND_MASK 0x000007e0 /* sent ELS request for this entry */ |
|---|
| 166 | 172 | #define NLP_NVMET_RECOV 0x00001000 /* NVMET auditing node for recovery. */ |
|---|
| 167 | 173 | #define NLP_FCP_PRLI_RJT 0x00002000 /* Rport does not support FCP PRLI. */ |
|---|
| 174 | +#define NLP_UNREG_INP 0x00008000 /* UNREG_RPI cmd is in progress */ |
|---|
| 168 | 175 | #define NLP_DEFER_RM 0x00010000 /* Remove this ndlp if no longer used */ |
|---|
| 169 | 176 | #define NLP_DELAY_TMO 0x00020000 /* delay timeout is running for node */ |
|---|
| 170 | 177 | #define NLP_NPR_2B_DISC 0x00040000 /* node is included in num_disc_nodes */ |
|---|
| .. | .. |
|---|
| 293 | 300 | #define NLP_EVT_DEVICE_RM 0xb /* Device not found in NS / ALPAmap */ |
|---|
| 294 | 301 | #define NLP_EVT_DEVICE_RECOVERY 0xc /* Device existence unknown */ |
|---|
| 295 | 302 | #define NLP_EVT_MAX_EVENT 0xd |
|---|
| 296 | | - |
|---|
| 303 | +#define NLP_EVT_NOTHING_PENDING 0xff |
|---|