aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/scsi/bfa/bfi_ms.h
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/scsi/bfa/bfi_ms.h')
-rw-r--r--drivers/scsi/bfa/bfi_ms.h66
1 files changed, 38 insertions, 28 deletions
diff --git a/drivers/scsi/bfa/bfi_ms.h b/drivers/scsi/bfa/bfi_ms.h
index fa9f6fb9d45b..19e888a57555 100644
--- a/drivers/scsi/bfa/bfi_ms.h
+++ b/drivers/scsi/bfa/bfi_ms.h
@@ -47,10 +47,10 @@ struct bfi_iocfc_cfg_s {
47 */ 47 */
48 union bfi_addr_u req_cq_ba[BFI_IOC_MAX_CQS]; 48 union bfi_addr_u req_cq_ba[BFI_IOC_MAX_CQS];
49 union bfi_addr_u req_shadow_ci[BFI_IOC_MAX_CQS]; 49 union bfi_addr_u req_shadow_ci[BFI_IOC_MAX_CQS];
50 u16 req_cq_elems[BFI_IOC_MAX_CQS]; 50 __be16 req_cq_elems[BFI_IOC_MAX_CQS];
51 union bfi_addr_u rsp_cq_ba[BFI_IOC_MAX_CQS]; 51 union bfi_addr_u rsp_cq_ba[BFI_IOC_MAX_CQS];
52 union bfi_addr_u rsp_shadow_pi[BFI_IOC_MAX_CQS]; 52 union bfi_addr_u rsp_shadow_pi[BFI_IOC_MAX_CQS];
53 u16 rsp_cq_elems[BFI_IOC_MAX_CQS]; 53 __be16 rsp_cq_elems[BFI_IOC_MAX_CQS];
54 54
55 union bfi_addr_u stats_addr; /* DMA-able address for stats */ 55 union bfi_addr_u stats_addr; /* DMA-able address for stats */
56 union bfi_addr_u cfgrsp_addr; /* config response dma address */ 56 union bfi_addr_u cfgrsp_addr; /* config response dma address */
@@ -102,8 +102,8 @@ struct bfi_iocfc_set_intr_req_s {
102 struct bfi_mhdr_s mh; /* common msg header */ 102 struct bfi_mhdr_s mh; /* common msg header */
103 u8 coalesce; /* enable intr coalescing */ 103 u8 coalesce; /* enable intr coalescing */
104 u8 rsvd[3]; 104 u8 rsvd[3];
105 u16 delay; /* delay timer 0..1125us */ 105 __be16 delay; /* delay timer 0..1125us */
106 u16 latency; /* latency timer 0..225us */ 106 __be16 latency; /* latency timer 0..225us */
107}; 107};
108 108
109 109
@@ -188,7 +188,8 @@ struct bfi_fcport_rsp_s {
188 struct bfi_mhdr_s mh; /* common msg header */ 188 struct bfi_mhdr_s mh; /* common msg header */
189 u8 status; /* port enable status */ 189 u8 status; /* port enable status */
190 u8 rsvd[3]; 190 u8 rsvd[3];
191 u32 msgtag; /* msgtag for reply */ 191 struct bfa_port_cfg_s port_cfg;/* port configuration */
192 u32 msgtag; /* msgtag for reply */
192}; 193};
193 194
194/* 195/*
@@ -202,7 +203,8 @@ struct bfi_fcport_enable_req_s {
202 struct bfa_port_cfg_s port_cfg; /* port configuration */ 203 struct bfa_port_cfg_s port_cfg; /* port configuration */
203 union bfi_addr_u stats_dma_addr; /* DMA address for stats */ 204 union bfi_addr_u stats_dma_addr; /* DMA address for stats */
204 u32 msgtag; /* msgtag for reply */ 205 u32 msgtag; /* msgtag for reply */
205 u32 rsvd2; 206 u8 use_flash_cfg; /* get prot cfg from flash */
207 u8 rsvd2[3];
206}; 208};
207 209
208/* 210/*
@@ -210,7 +212,7 @@ struct bfi_fcport_enable_req_s {
210 */ 212 */
211struct bfi_fcport_set_svc_params_req_s { 213struct bfi_fcport_set_svc_params_req_s {
212 struct bfi_mhdr_s mh; /* msg header */ 214 struct bfi_mhdr_s mh; /* msg header */
213 u16 tx_bbcredit; /* Tx credits */ 215 __be16 tx_bbcredit; /* Tx credits */
214 u16 rsvd; 216 u16 rsvd;
215}; 217};
216 218
@@ -231,7 +233,7 @@ struct bfi_fcport_trunk_link_s {
231 u8 state; /* bfa_trunk_link_state_t */ 233 u8 state; /* bfa_trunk_link_state_t */
232 u8 speed; /* bfa_port_speed_t */ 234 u8 speed; /* bfa_port_speed_t */
233 u8 rsvd; 235 u8 rsvd;
234 u32 deskew; 236 __be32 deskew;
235}; 237};
236 238
237#define BFI_FCPORT_MAX_LINKS 2 239#define BFI_FCPORT_MAX_LINKS 2
@@ -284,17 +286,17 @@ enum bfi_fcxp_i2h {
284 */ 286 */
285struct bfi_fcxp_send_req_s { 287struct bfi_fcxp_send_req_s {
286 struct bfi_mhdr_s mh; /* Common msg header */ 288 struct bfi_mhdr_s mh; /* Common msg header */
287 u16 fcxp_tag; /* driver request tag */ 289 __be16 fcxp_tag; /* driver request tag */
288 u16 max_frmsz; /* max send frame size */ 290 __be16 max_frmsz; /* max send frame size */
289 u16 vf_id; /* vsan tag if applicable */ 291 __be16 vf_id; /* vsan tag if applicable */
290 u16 rport_fw_hndl; /* FW Handle for the remote port */ 292 u16 rport_fw_hndl; /* FW Handle for the remote port */
291 u8 class; /* FC class used for req/rsp */ 293 u8 class; /* FC class used for req/rsp */
292 u8 rsp_timeout; /* timeout in secs, 0-no response */ 294 u8 rsp_timeout; /* timeout in secs, 0-no response */
293 u8 cts; /* continue sequence */ 295 u8 cts; /* continue sequence */
294 u8 lp_tag; /* lport tag */ 296 u8 lp_tag; /* lport tag */
295 struct fchs_s fchs; /* request FC header structure */ 297 struct fchs_s fchs; /* request FC header structure */
296 u32 req_len; /* request payload length */ 298 __be32 req_len; /* request payload length */
297 u32 rsp_maxlen; /* max response length expected */ 299 __be32 rsp_maxlen; /* max response length expected */
298 struct bfi_sge_s req_sge[BFA_FCXP_MAX_SGES]; /* request buf */ 300 struct bfi_sge_s req_sge[BFA_FCXP_MAX_SGES]; /* request buf */
299 struct bfi_sge_s rsp_sge[BFA_FCXP_MAX_SGES]; /* response buf */ 301 struct bfi_sge_s rsp_sge[BFA_FCXP_MAX_SGES]; /* response buf */
300}; 302};
@@ -304,11 +306,11 @@ struct bfi_fcxp_send_req_s {
304 */ 306 */
305struct bfi_fcxp_send_rsp_s { 307struct bfi_fcxp_send_rsp_s {
306 struct bfi_mhdr_s mh; /* Common msg header */ 308 struct bfi_mhdr_s mh; /* Common msg header */
307 u16 fcxp_tag; /* send request tag */ 309 __be16 fcxp_tag; /* send request tag */
308 u8 req_status; /* request status */ 310 u8 req_status; /* request status */
309 u8 rsvd; 311 u8 rsvd;
310 u32 rsp_len; /* actual response length */ 312 __be32 rsp_len; /* actual response length */
311 u32 residue_len; /* residual response length */ 313 __be32 residue_len; /* residual response length */
312 struct fchs_s fchs; /* response FC header structure */ 314 struct fchs_s fchs; /* response FC header structure */
313}; 315};
314 316
@@ -325,7 +327,7 @@ enum bfi_uf_i2h {
325struct bfi_uf_buf_post_s { 327struct bfi_uf_buf_post_s {
326 struct bfi_mhdr_s mh; /* Common msg header */ 328 struct bfi_mhdr_s mh; /* Common msg header */
327 u16 buf_tag; /* buffer tag */ 329 u16 buf_tag; /* buffer tag */
328 u16 buf_len; /* total buffer length */ 330 __be16 buf_len; /* total buffer length */
329 struct bfi_sge_s sge[BFA_UF_MAX_SGES]; /* buffer DMA SGEs */ 331 struct bfi_sge_s sge[BFA_UF_MAX_SGES]; /* buffer DMA SGEs */
330}; 332};
331 333
@@ -340,6 +342,7 @@ struct bfi_uf_frm_rcvd_s {
340enum bfi_lps_h2i_msgs { 342enum bfi_lps_h2i_msgs {
341 BFI_LPS_H2I_LOGIN_REQ = 1, 343 BFI_LPS_H2I_LOGIN_REQ = 1,
342 BFI_LPS_H2I_LOGOUT_REQ = 2, 344 BFI_LPS_H2I_LOGOUT_REQ = 2,
345 BFI_LPS_H2I_N2N_PID_REQ = 3,
343}; 346};
344 347
345enum bfi_lps_i2h_msgs { 348enum bfi_lps_i2h_msgs {
@@ -352,7 +355,7 @@ struct bfi_lps_login_req_s {
352 struct bfi_mhdr_s mh; /* common msg header */ 355 struct bfi_mhdr_s mh; /* common msg header */
353 u8 lp_tag; 356 u8 lp_tag;
354 u8 alpa; 357 u8 alpa;
355 u16 pdu_size; 358 __be16 pdu_size;
356 wwn_t pwwn; 359 wwn_t pwwn;
357 wwn_t nwwn; 360 wwn_t nwwn;
358 u8 fdisc; 361 u8 fdisc;
@@ -368,7 +371,7 @@ struct bfi_lps_login_rsp_s {
368 u8 lsrjt_expl; 371 u8 lsrjt_expl;
369 wwn_t port_name; 372 wwn_t port_name;
370 wwn_t node_name; 373 wwn_t node_name;
371 u16 bb_credit; 374 __be16 bb_credit;
372 u8 f_port; 375 u8 f_port;
373 u8 npiv_en; 376 u8 npiv_en;
374 u32 lp_pid:24; 377 u32 lp_pid:24;
@@ -399,10 +402,17 @@ struct bfi_lps_cvl_event_s {
399 u8 rsvd[3]; 402 u8 rsvd[3];
400}; 403};
401 404
405struct bfi_lps_n2n_pid_req_s {
406 struct bfi_mhdr_s mh; /* common msg header */
407 u8 lp_tag;
408 u32 lp_pid:24;
409};
410
402union bfi_lps_h2i_msg_u { 411union bfi_lps_h2i_msg_u {
403 struct bfi_mhdr_s *msg; 412 struct bfi_mhdr_s *msg;
404 struct bfi_lps_login_req_s *login_req; 413 struct bfi_lps_login_req_s *login_req;
405 struct bfi_lps_logout_req_s *logout_req; 414 struct bfi_lps_logout_req_s *logout_req;
415 struct bfi_lps_n2n_pid_req_s *n2n_pid_req;
406}; 416};
407 417
408union bfi_lps_i2h_msg_u { 418union bfi_lps_i2h_msg_u {
@@ -427,7 +437,7 @@ enum bfi_rport_i2h_msgs {
427struct bfi_rport_create_req_s { 437struct bfi_rport_create_req_s {
428 struct bfi_mhdr_s mh; /* common msg header */ 438 struct bfi_mhdr_s mh; /* common msg header */
429 u16 bfa_handle; /* host rport handle */ 439 u16 bfa_handle; /* host rport handle */
430 u16 max_frmsz; /* max rcv pdu size */ 440 __be16 max_frmsz; /* max rcv pdu size */
431 u32 pid:24, /* remote port ID */ 441 u32 pid:24, /* remote port ID */
432 lp_tag:8; /* local port tag */ 442 lp_tag:8; /* local port tag */
433 u32 local_pid:24, /* local port ID */ 443 u32 local_pid:24, /* local port ID */
@@ -583,7 +593,7 @@ struct bfi_ioim_dif_s {
583 */ 593 */
584struct bfi_ioim_req_s { 594struct bfi_ioim_req_s {
585 struct bfi_mhdr_s mh; /* Common msg header */ 595 struct bfi_mhdr_s mh; /* Common msg header */
586 u16 io_tag; /* I/O tag */ 596 __be16 io_tag; /* I/O tag */
587 u16 rport_hdl; /* itnim/rport firmware handle */ 597 u16 rport_hdl; /* itnim/rport firmware handle */
588 struct fcp_cmnd_s cmnd; /* IO request info */ 598 struct fcp_cmnd_s cmnd; /* IO request info */
589 599
@@ -689,7 +699,7 @@ enum bfi_ioim_status {
689 */ 699 */
690struct bfi_ioim_rsp_s { 700struct bfi_ioim_rsp_s {
691 struct bfi_mhdr_s mh; /* common msg header */ 701 struct bfi_mhdr_s mh; /* common msg header */
692 u16 io_tag; /* completed IO tag */ 702 __be16 io_tag; /* completed IO tag */
693 u16 bfa_rport_hndl; /* releated rport handle */ 703 u16 bfa_rport_hndl; /* releated rport handle */
694 u8 io_status; /* IO completion status */ 704 u8 io_status; /* IO completion status */
695 u8 reuse_io_tag; /* IO tag can be reused */ 705 u8 reuse_io_tag; /* IO tag can be reused */
@@ -698,13 +708,13 @@ struct bfi_ioim_rsp_s {
698 u8 sns_len; /* scsi sense length */ 708 u8 sns_len; /* scsi sense length */
699 u8 resid_flags; /* IO residue flags */ 709 u8 resid_flags; /* IO residue flags */
700 u8 rsvd_a; 710 u8 rsvd_a;
701 u32 residue; /* IO residual length in bytes */ 711 __be32 residue; /* IO residual length in bytes */
702 u32 rsvd_b[3]; 712 u32 rsvd_b[3];
703}; 713};
704 714
705struct bfi_ioim_abort_req_s { 715struct bfi_ioim_abort_req_s {
706 struct bfi_mhdr_s mh; /* Common msg header */ 716 struct bfi_mhdr_s mh; /* Common msg header */
707 u16 io_tag; /* I/O tag */ 717 __be16 io_tag; /* I/O tag */
708 u16 abort_tag; /* unique request tag */ 718 u16 abort_tag; /* unique request tag */
709}; 719};
710 720
@@ -723,9 +733,9 @@ enum bfi_tskim_i2h {
723 733
724struct bfi_tskim_req_s { 734struct bfi_tskim_req_s {
725 struct bfi_mhdr_s mh; /* Common msg header */ 735 struct bfi_mhdr_s mh; /* Common msg header */
726 u16 tsk_tag; /* task management tag */ 736 __be16 tsk_tag; /* task management tag */
727 u16 itn_fhdl; /* itn firmware handle */ 737 u16 itn_fhdl; /* itn firmware handle */
728 lun_t lun; /* LU number */ 738 struct scsi_lun lun; /* LU number */
729 u8 tm_flags; /* see enum fcp_tm_cmnd */ 739 u8 tm_flags; /* see enum fcp_tm_cmnd */
730 u8 t_secs; /* Timeout value in seconds */ 740 u8 t_secs; /* Timeout value in seconds */
731 u8 rsvd[2]; 741 u8 rsvd[2];
@@ -733,7 +743,7 @@ struct bfi_tskim_req_s {
733 743
734struct bfi_tskim_abortreq_s { 744struct bfi_tskim_abortreq_s {
735 struct bfi_mhdr_s mh; /* Common msg header */ 745 struct bfi_mhdr_s mh; /* Common msg header */
736 u16 tsk_tag; /* task management tag */ 746 __be16 tsk_tag; /* task management tag */
737 u16 rsvd; 747 u16 rsvd;
738}; 748};
739 749
@@ -755,7 +765,7 @@ enum bfi_tskim_status {
755 765
756struct bfi_tskim_rsp_s { 766struct bfi_tskim_rsp_s {
757 struct bfi_mhdr_s mh; /* Common msg header */ 767 struct bfi_mhdr_s mh; /* Common msg header */
758 u16 tsk_tag; /* task mgmt cmnd tag */ 768 __be16 tsk_tag; /* task mgmt cmnd tag */
759 u8 tsk_status; /* @ref bfi_tskim_status */ 769 u8 tsk_status; /* @ref bfi_tskim_status */
760 u8 rsvd; 770 u8 rsvd;
761}; 771};