diff options
author | James Smart <James.Smart@Emulex.Com> | 2007-06-17 20:56:36 -0400 |
---|---|---|
committer | James Bottomley <jejb@mulgrave.il.steeleye.com> | 2007-06-17 23:05:45 -0400 |
commit | 2e0fef85e098f6794956b8b80b111179fbb4cbb7 (patch) | |
tree | f632090be67f95e9a637eeb044938ba1591e848f /drivers/scsi/lpfc/lpfc_sli.h | |
parent | 4c2baaaf2ba4875d1d2d59b3b3e1216d3277b17a (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.h | 4 |
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 */ |
22 | struct lpfc_hba; | 22 | struct lpfc_hba; |
23 | struct 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. */ |
25 | typedef enum _lpfc_ctx_cmd { | 26 | typedef 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 */ |