aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/s390/scsi/zfcp_def.h
diff options
context:
space:
mode:
authorMaxim Shchetynin <maxim@de.ibm.com>2005-09-13 15:51:16 -0400
committerJames Bottomley <jejb@mulgrave.(none)>2005-09-19 14:03:45 -0400
commitaef4a983090fa590481a86d9690dc3fa6bb121fa (patch)
tree12b78b227102dc2f41dda227fe83f34a8838e015 /drivers/s390/scsi/zfcp_def.h
parent8a36e4532ea10471f0a8605207d071361d7be2c3 (diff)
[SCSI] zfcp: provide support for NPIV
N_Port ID Virtualization (NPIV) allows a single FCP port to appear as multiple, distinct ports providing separate port identification. NPIV is supported by FC HBAs on System z9. zfcp was adapted to support this new feature. Signed-off-by: Andreas Herrmann <aherrman@de.ibm.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
Diffstat (limited to 'drivers/s390/scsi/zfcp_def.h')
-rw-r--r--drivers/s390/scsi/zfcp_def.h13
1 files changed, 11 insertions, 2 deletions
diff --git a/drivers/s390/scsi/zfcp_def.h b/drivers/s390/scsi/zfcp_def.h
index fc5bb6f31808..4b6af8e07e8d 100644
--- a/drivers/s390/scsi/zfcp_def.h
+++ b/drivers/s390/scsi/zfcp_def.h
@@ -66,7 +66,7 @@
66/********************* GENERAL DEFINES *********************************/ 66/********************* GENERAL DEFINES *********************************/
67 67
68/* zfcp version number, it consists of major, minor, and patch-level number */ 68/* zfcp version number, it consists of major, minor, and patch-level number */
69#define ZFCP_VERSION "4.4.0" 69#define ZFCP_VERSION "4.5.0"
70 70
71/** 71/**
72 * zfcp_sg_to_address - determine kernel address from struct scatterlist 72 * zfcp_sg_to_address - determine kernel address from struct scatterlist
@@ -154,6 +154,11 @@ typedef u32 scsi_lun_t;
154#define ZFCP_EXCHANGE_CONFIG_DATA_FIRST_SLEEP 100 154#define ZFCP_EXCHANGE_CONFIG_DATA_FIRST_SLEEP 100
155#define ZFCP_EXCHANGE_CONFIG_DATA_RETRIES 7 155#define ZFCP_EXCHANGE_CONFIG_DATA_RETRIES 7
156 156
157/* Retry 5 times every 2 second, then every minute */
158#define ZFCP_EXCHANGE_PORT_DATA_SHORT_RETRIES 5
159#define ZFCP_EXCHANGE_PORT_DATA_SHORT_SLEEP 200
160#define ZFCP_EXCHANGE_PORT_DATA_LONG_SLEEP 6000
161
157/* timeout value for "default timer" for fsf requests */ 162/* timeout value for "default timer" for fsf requests */
158#define ZFCP_FSF_REQUEST_TIMEOUT (60*HZ); 163#define ZFCP_FSF_REQUEST_TIMEOUT (60*HZ);
159 164
@@ -638,6 +643,7 @@ do { \
638#define ZFCP_STATUS_ADAPTER_ERP_THREAD_KILL 0x00000080 643#define ZFCP_STATUS_ADAPTER_ERP_THREAD_KILL 0x00000080
639#define ZFCP_STATUS_ADAPTER_ERP_PENDING 0x00000100 644#define ZFCP_STATUS_ADAPTER_ERP_PENDING 0x00000100
640#define ZFCP_STATUS_ADAPTER_LINK_UNPLUGGED 0x00000200 645#define ZFCP_STATUS_ADAPTER_LINK_UNPLUGGED 0x00000200
646#define ZFCP_STATUS_ADAPTER_XPORT_OK 0x00000800
641 647
642#define ZFCP_STATUS_ADAPTER_SCSI_UP \ 648#define ZFCP_STATUS_ADAPTER_SCSI_UP \
643 (ZFCP_STATUS_COMMON_UNBLOCKED | \ 649 (ZFCP_STATUS_COMMON_UNBLOCKED | \
@@ -915,13 +921,16 @@ struct zfcp_adapter {
915 wwn_t peer_wwnn; /* P2P peer WWNN */ 921 wwn_t peer_wwnn; /* P2P peer WWNN */
916 wwn_t peer_wwpn; /* P2P peer WWPN */ 922 wwn_t peer_wwpn; /* P2P peer WWPN */
917 fc_id_t peer_d_id; /* P2P peer D_ID */ 923 fc_id_t peer_d_id; /* P2P peer D_ID */
924 wwn_t physical_wwpn; /* WWPN of physical port */
925 fc_id_t physical_s_id; /* local FC port ID */
918 struct ccw_device *ccw_device; /* S/390 ccw device */ 926 struct ccw_device *ccw_device; /* S/390 ccw device */
919 u8 fc_service_class; 927 u8 fc_service_class;
920 u32 fc_topology; /* FC topology */ 928 u32 fc_topology; /* FC topology */
921 u32 fc_link_speed; /* FC interface speed */ 929 u32 fc_link_speed; /* FC interface speed */
922 u32 hydra_version; /* Hydra version */ 930 u32 hydra_version; /* Hydra version */
923 u32 fsf_lic_version; 931 u32 fsf_lic_version;
924 u32 supported_features;/* of FCP channel */ 932 u32 adapter_features; /* FCP channel features */
933 u32 connection_features; /* host connection features */
925 u32 hardware_version; /* of FCP channel */ 934 u32 hardware_version; /* of FCP channel */
926 u8 serial_number[32]; /* of hardware */ 935 u8 serial_number[32]; /* of hardware */
927 struct Scsi_Host *scsi_host; /* Pointer to mid-layer */ 936 struct Scsi_Host *scsi_host; /* Pointer to mid-layer */