diff options
author | Krishna Gudipati <kgudipat@brocade.com> | 2011-06-24 23:24:52 -0400 |
---|---|---|
committer | James Bottomley <JBottomley@Parallels.com> | 2011-06-29 18:12:11 -0400 |
commit | d7be54cc5c5f6f9cb9ac67462aadda57813698b8 (patch) | |
tree | 2f77812fe06a7ed59172a51f11166aadd6a262d8 /drivers/scsi/bfa/bfa_fcbuild.h | |
parent | 4507025d01149aea8705e43508d0ef11e7010cfd (diff) |
[SCSI] bfa: FCS bug fixes.
- Added logic to initiate a PLOGI to the target, while processing a LOGO
from the same target in Direct attach mode.
- Added logic to generate a FCCT Reject indicating unsupported command,
upon receiving FCCT/FCGS requests.
- Added logic to set the fcpim in offline state and avoid any PRLI retries
if a PRLI response is a reject with a reason Command Not Supported.
- Updated the FDMI Supported/Current speeds.
- Added logic to wait for the response from the firmware before sending
ACC to PLOGI and transitioning to subsequent states - while processing an
Incoming PLOGI in online state.
- Added a wait state in the fcs_vport state machine - For case where
FDISC is in progress and we get a vport delete request we wait for
fdisc response and will transition to the appropriate state based on
rsp status, else its causing both driver/fw resources to be not
freed.
- Remove the fc_credit_recovery module param.
Signed-off-by: Krishna Gudipati <kgudipat@brocade.com>
Signed-off-by: James Bottomley <JBottomley@Parallels.com>
Diffstat (limited to 'drivers/scsi/bfa/bfa_fcbuild.h')
-rw-r--r-- | drivers/scsi/bfa/bfa_fcbuild.h | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/drivers/scsi/bfa/bfa_fcbuild.h b/drivers/scsi/bfa/bfa_fcbuild.h index 9ba24c724f4c..42cd9d4da697 100644 --- a/drivers/scsi/bfa/bfa_fcbuild.h +++ b/drivers/scsi/bfa/bfa_fcbuild.h | |||
@@ -183,6 +183,10 @@ u16 fc_gidpn_build(struct fchs_s *fchs, void *pyld, u32 s_id, | |||
183 | u16 fc_gpnid_build(struct fchs_s *fchs, void *pld, u32 s_id, | 183 | u16 fc_gpnid_build(struct fchs_s *fchs, void *pld, u32 s_id, |
184 | u16 ox_id, u32 port_id); | 184 | u16 ox_id, u32 port_id); |
185 | 185 | ||
186 | u16 fc_gs_rjt_build(struct fchs_s *fchs, struct ct_hdr_s *cthdr, | ||
187 | u32 d_id, u32 s_id, u16 ox_id, | ||
188 | u8 reason_code, u8 reason_code_expl); | ||
189 | |||
186 | u16 fc_scr_build(struct fchs_s *fchs, struct fc_scr_s *scr, | 190 | u16 fc_scr_build(struct fchs_s *fchs, struct fc_scr_s *scr, |
187 | u8 set_br_reg, u32 s_id, u16 ox_id); | 191 | u8 set_br_reg, u32 s_id, u16 ox_id); |
188 | 192 | ||