diff options
author | Vijaya Mohan Guvva <vmohan@brocade.com> | 2013-05-13 05:33:21 -0400 |
---|---|---|
committer | James Bottomley <JBottomley@Parallels.com> | 2013-06-26 14:44:20 -0400 |
commit | 1a898a794d5913c899a329c5dec39d28e6065672 (patch) | |
tree | bf5ec13403df005157a3ac053dcf82c8044cd1b7 /drivers/scsi/bfa/bfad_bsg.h | |
parent | 4e1e0d8d71810fb5e4c294299ab35c30a746353d (diff) |
[SCSI] bfa: Add dynamic diagnostic port support
D-Port is a new port type created with the intention of running link
level diagnostic tests like loopback, traffic test. In static D-port
mode, user configures the port to D-port mode and starts the test, but
in dynamic D-port, once the Brocade switch port is configured to
D-port, it will reject the regular FLOGI from HBA with reason that it is
in D-port mode. So based on the reason code HBA port will turn itself into
D-port and start diagnostic test.
Signed-off-by: Sudarsana Reddy Kalluru <skalluru@brocade.com>
Signed-off-by: Vijaya Mohan Guvva <vmohan@brocade.com>
Signed-off-by: James Bottomley <JBottomley@Parallels.com>
Diffstat (limited to 'drivers/scsi/bfa/bfad_bsg.h')
-rw-r--r-- | drivers/scsi/bfa/bfad_bsg.h | 25 |
1 files changed, 17 insertions, 8 deletions
diff --git a/drivers/scsi/bfa/bfad_bsg.h b/drivers/scsi/bfa/bfad_bsg.h index 612463b60061..3ef321cd7e20 100644 --- a/drivers/scsi/bfa/bfad_bsg.h +++ b/drivers/scsi/bfa/bfad_bsg.h | |||
@@ -144,7 +144,6 @@ enum { | |||
144 | IOCMD_FCPIM_LUNMASK_DELETE, | 144 | IOCMD_FCPIM_LUNMASK_DELETE, |
145 | IOCMD_DIAG_DPORT_ENABLE, | 145 | IOCMD_DIAG_DPORT_ENABLE, |
146 | IOCMD_DIAG_DPORT_DISABLE, | 146 | IOCMD_DIAG_DPORT_DISABLE, |
147 | IOCMD_DIAG_DPORT_GET_STATE, | ||
148 | IOCMD_QOS_SET_BW, | 147 | IOCMD_QOS_SET_BW, |
149 | IOCMD_FCPIM_THROTTLE_QUERY, | 148 | IOCMD_FCPIM_THROTTLE_QUERY, |
150 | IOCMD_FCPIM_THROTTLE_SET, | 149 | IOCMD_FCPIM_THROTTLE_SET, |
@@ -153,6 +152,8 @@ enum { | |||
153 | IOCMD_FRUVPD_READ, | 152 | IOCMD_FRUVPD_READ, |
154 | IOCMD_FRUVPD_UPDATE, | 153 | IOCMD_FRUVPD_UPDATE, |
155 | IOCMD_FRUVPD_GET_MAX_SIZE, | 154 | IOCMD_FRUVPD_GET_MAX_SIZE, |
155 | IOCMD_DIAG_DPORT_SHOW, | ||
156 | IOCMD_DIAG_DPORT_START, | ||
156 | }; | 157 | }; |
157 | 158 | ||
158 | struct bfa_bsg_gen_s { | 159 | struct bfa_bsg_gen_s { |
@@ -593,6 +594,21 @@ struct bfa_bsg_diag_loopback_s { | |||
593 | struct bfa_diag_loopback_result_s result; | 594 | struct bfa_diag_loopback_result_s result; |
594 | }; | 595 | }; |
595 | 596 | ||
597 | struct bfa_bsg_diag_dport_show_s { | ||
598 | bfa_status_t status; | ||
599 | u16 bfad_num; | ||
600 | u16 rsvd; | ||
601 | struct bfa_diag_dport_result_s result; | ||
602 | }; | ||
603 | |||
604 | struct bfa_bsg_dport_enable_s { | ||
605 | bfa_status_t status; | ||
606 | u16 bfad_num; | ||
607 | u16 rsvd; | ||
608 | u16 lpcnt; | ||
609 | u16 pat; | ||
610 | }; | ||
611 | |||
596 | struct bfa_bsg_diag_fwping_s { | 612 | struct bfa_bsg_diag_fwping_s { |
597 | bfa_status_t status; | 613 | bfa_status_t status; |
598 | u16 bfad_num; | 614 | u16 bfad_num; |
@@ -640,13 +656,6 @@ struct bfa_bsg_diag_lb_stat_s { | |||
640 | u16 rsvd; | 656 | u16 rsvd; |
641 | }; | 657 | }; |
642 | 658 | ||
643 | struct bfa_bsg_diag_dport_get_state_s { | ||
644 | bfa_status_t status; | ||
645 | u16 bfad_num; | ||
646 | u16 rsvd; | ||
647 | enum bfa_dport_state state; | ||
648 | }; | ||
649 | |||
650 | struct bfa_bsg_phy_attr_s { | 659 | struct bfa_bsg_phy_attr_s { |
651 | bfa_status_t status; | 660 | bfa_status_t status; |
652 | u16 bfad_num; | 661 | u16 bfad_num; |