aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/scsi/lpfc/lpfc_sli.h
diff options
context:
space:
mode:
authorJames Smart <James.Smart@Emulex.Com>2007-06-17 20:56:36 -0400
committerJames Bottomley <jejb@mulgrave.il.steeleye.com>2007-06-17 23:05:45 -0400
commit2e0fef85e098f6794956b8b80b111179fbb4cbb7 (patch)
treef632090be67f95e9a637eeb044938ba1591e848f /drivers/scsi/lpfc/lpfc_sli.h
parent4c2baaaf2ba4875d1d2d59b3b3e1216d3277b17a (diff)
[SCSI] lpfc: NPIV: split ports
The driver is reorganized to separate the handling of the adapter from the handling of the FC port. Adapter handling includes submissions of command requests, receiving responses, and managing adapter resources. The FC port includes the discovery engine, login handling, and the mapping of a Scsi_Host on the "port". Although not a large functional change, as it touches core structures and functions, resulting in a large text delta. Signed-off-by: James Smart <James.Smart@emulex.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
Diffstat (limited to 'drivers/scsi/lpfc/lpfc_sli.h')
-rw-r--r--drivers/scsi/lpfc/lpfc_sli.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/drivers/scsi/lpfc/lpfc_sli.h b/drivers/scsi/lpfc/lpfc_sli.h
index 41c38d324ab0..0e857e51a2c4 100644
--- a/drivers/scsi/lpfc/lpfc_sli.h
+++ b/drivers/scsi/lpfc/lpfc_sli.h
@@ -20,6 +20,7 @@
20 20
21/* forward declaration for LPFC_IOCB_t's use */ 21/* forward declaration for LPFC_IOCB_t's use */
22struct lpfc_hba; 22struct lpfc_hba;
23struct lpfc_vport;
23 24
24/* Define the context types that SLI handles for abort and sums. */ 25/* Define the context types that SLI handles for abort and sums. */
25typedef enum _lpfc_ctx_cmd { 26typedef enum _lpfc_ctx_cmd {
@@ -47,6 +48,7 @@ struct lpfc_iocbq {
47 uint8_t abort_count; 48 uint8_t abort_count;
48 uint8_t rsvd2; 49 uint8_t rsvd2;
49 uint32_t drvrTimeout; /* driver timeout in seconds */ 50 uint32_t drvrTimeout; /* driver timeout in seconds */
51 struct lpfc_vport *vport;/* virtual port pointer */
50 void *context1; /* caller context information */ 52 void *context1; /* caller context information */
51 void *context2; /* caller context information */ 53 void *context2; /* caller context information */
52 void *context3; /* caller context information */ 54 void *context3; /* caller context information */
@@ -74,6 +76,7 @@ typedef struct lpfcMboxq {
74 /* MBOXQs are used in single linked lists */ 76 /* MBOXQs are used in single linked lists */
75 struct list_head list; /* ptr to next mailbox command */ 77 struct list_head list; /* ptr to next mailbox command */
76 MAILBOX_t mb; /* Mailbox cmd */ 78 MAILBOX_t mb; /* Mailbox cmd */
79 struct lpfc_vport *vport;/* virutal port pointer */
77 void *context1; /* caller context information */ 80 void *context1; /* caller context information */
78 void *context2; /* caller context information */ 81 void *context2; /* caller context information */
79 82
@@ -197,6 +200,7 @@ struct lpfc_sli {
197#define LPFC_SLI_MBOX_ACTIVE 0x100 /* HBA mailbox is currently active */ 200#define LPFC_SLI_MBOX_ACTIVE 0x100 /* HBA mailbox is currently active */
198#define LPFC_SLI2_ACTIVE 0x200 /* SLI2 overlay in firmware is active */ 201#define LPFC_SLI2_ACTIVE 0x200 /* SLI2 overlay in firmware is active */
199#define LPFC_PROCESS_LA 0x400 /* Able to process link attention */ 202#define LPFC_PROCESS_LA 0x400 /* Able to process link attention */
203#define LPFC_BLOCK_MGMT_IO 0x800 /* Don't allow mgmt mbx or iocb cmds */
200 204
201 struct lpfc_sli_ring ring[LPFC_MAX_RING]; 205 struct lpfc_sli_ring ring[LPFC_MAX_RING];
202 int fcp_ring; /* ring used for FCP initiator commands */ 206 int fcp_ring; /* ring used for FCP initiator commands */