aboutsummaryrefslogtreecommitdiff
path: root/drivers/scsi/bfa/fabric.c
diff options
context:
space:
mode:
authorJing Huang <huangj@brocade.com>2010-07-08 19:50:15 -0700
committerJames Bottomley <James.Bottomley@suse.de>2010-07-27 12:04:08 -0500
commit4f1806bc3c409395de4dab5984f7a235dc4a0eda (patch)
tree9a631392451ba3c28d62944380685d49f6ca7eb5 /drivers/scsi/bfa/fabric.c
parentb85d045ee866011df535565bf12d684e8e5b7a9d (diff)
[SCSI] bfa: use standards defined timeout for ELS/CT
Use standards defined 2 * RA_TOV as a timeout for ELS Request retries. And standards defined 3 * RA_TOV as a timeout for FC-CT Request retries. Also, added a check to send RPSC2 to a Brocade Fabric only. Signed-off-by: Jing Huang <huangj@brocade.com> Signed-off-by: James Bottomley <James.Bottomley@suse.de>
Diffstat (limited to 'drivers/scsi/bfa/fabric.c')
-rw-r--r--drivers/scsi/bfa/fabric.c26
1 files changed, 26 insertions, 0 deletions
diff --git a/drivers/scsi/bfa/fabric.c b/drivers/scsi/bfa/fabric.c
index c646d6dd789b..ddd4ba9317e6 100644
--- a/drivers/scsi/bfa/fabric.c
+++ b/drivers/scsi/bfa/fabric.c
@@ -1027,6 +1027,32 @@ bfa_fcs_fabric_vport_count(struct bfa_fcs_fabric_s *fabric)
return fabric->num_vports;
}
+/*
+ * Get OUI of the attached switch.
+ *
+ * Note : Use of this function should be avoided as much as possible.
+ * This function should be used only if there is any requirement
+ * to check for FOS version below 6.3.
+ * To check if the attached fabric is a brocade fabric, use
+ * bfa_lps_is_brcd_fabric() which works for FOS versions 6.3
+ * or above only.
+ */
+
+u16
+bfa_fcs_fabric_get_switch_oui(struct bfa_fcs_fabric_s *fabric)
+{
+ wwn_t fab_nwwn;
+ u8 *tmp;
+ u16 oui;
+
+ fab_nwwn = bfa_lps_get_peer_nwwn(fabric->lps);
+
+ tmp = (uint8_t *)&fab_nwwn;
+ oui = (tmp[3] << 8) | tmp[4];
+
+ return oui;
+}
+
/**
* Unsolicited frame receive handling.
*/