/* 57xx_hsi_bnx2fc.h: QLogic Linux FCoE offload driver. * Handles operations such as session offload/upload etc, and manages * session resources such as connection id and qp resources. * * Copyright (c) 2008-2013 Broadcom Corporation * Copyright (c) 2014-2016 QLogic Corporation * Copyright (c) 2016-2017 Cavium Inc. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation. * */ #ifndef __57XX_FCOE_HSI_LINUX_LE__ #define __57XX_FCOE_HSI_LINUX_LE__ /* * common data for all protocols */ struct b577xx_doorbell_hdr { … }; /* * doorbell message sent to the chip */ struct b577xx_doorbell { … }; /* * doorbell message sent to the chip */ struct b577xx_doorbell_set_prod { … }; struct regpair { … }; /* * ABTS info $$KEEP_ENDIANNESS$$ */ struct fcoe_abts_info { … }; /* * Fixed size structure in order to plant it in Union structure * $$KEEP_ENDIANNESS$$ */ struct fcoe_abts_rsp_union { … }; /* * 4 regs size $$KEEP_ENDIANNESS$$ */ struct fcoe_bd_ctx { … }; /* * FCoE cached sges context $$KEEP_ENDIANNESS$$ */ struct fcoe_cached_sge_ctx { … }; /* * Cleanup info $$KEEP_ENDIANNESS$$ */ struct fcoe_cleanup_info { … }; /* * Fcp RSP flags $$KEEP_ENDIANNESS$$ */ struct fcoe_fcp_rsp_flags { … }; /* * Fcp RSP payload $$KEEP_ENDIANNESS$$ */ struct fcoe_fcp_rsp_payload { … }; /* * Fixed size structure in order to plant it in Union structure * $$KEEP_ENDIANNESS$$ */ struct fcoe_fcp_rsp_union { … }; /* * FC header $$KEEP_ENDIANNESS$$ */ struct fcoe_fc_hdr { … }; /* * FC header union $$KEEP_ENDIANNESS$$ */ struct fcoe_mp_rsp_union { … }; /* * Completion information $$KEEP_ENDIANNESS$$ */ fcoe_comp_flow_info; /* * External ABTS info $$KEEP_ENDIANNESS$$ */ struct fcoe_ext_abts_info { … }; /* * External cleanup info $$KEEP_ENDIANNESS$$ */ struct fcoe_ext_cleanup_info { … }; /* * Fcoe FW Tx sequence context $$KEEP_ENDIANNESS$$ */ struct fcoe_fw_tx_seq_ctx { … }; /* * Fcoe external FW Tx sequence context $$KEEP_ENDIANNESS$$ */ struct fcoe_ext_fw_tx_seq_ctx { … }; /* * FCoE multiple sges context $$KEEP_ENDIANNESS$$ */ struct fcoe_mul_sges_ctx { … }; /* * FCoE external multiple sges context $$KEEP_ENDIANNESS$$ */ struct fcoe_ext_mul_sges_ctx { … }; /* * FCP CMD payload $$KEEP_ENDIANNESS$$ */ struct fcoe_fcp_cmd_payload { … }; /* * Fcp xfr rdy payload $$KEEP_ENDIANNESS$$ */ struct fcoe_fcp_xfr_rdy_payload { … }; /* * FC frame $$KEEP_ENDIANNESS$$ */ struct fcoe_fc_frame { … }; /* * FCoE KCQ CQE parameters $$KEEP_ENDIANNESS$$ */ fcoe_kcqe_params; /* * FCoE KCQ CQE $$KEEP_ENDIANNESS$$ */ struct fcoe_kcqe { … }; /* * FCoE KWQE header $$KEEP_ENDIANNESS$$ */ struct fcoe_kwqe_header { … }; /* * FCoE firmware init request 1 $$KEEP_ENDIANNESS$$ */ struct fcoe_kwqe_init1 { … }; /* * FCoE firmware init request 2 $$KEEP_ENDIANNESS$$ */ struct fcoe_kwqe_init2 { … }; /* * FCoE firmware init request 3 $$KEEP_ENDIANNESS$$ */ struct fcoe_kwqe_init3 { … }; /* * FCoE connection offload request 1 $$KEEP_ENDIANNESS$$ */ struct fcoe_kwqe_conn_offload1 { … }; /* * FCoE connection offload request 2 $$KEEP_ENDIANNESS$$ */ struct fcoe_kwqe_conn_offload2 { … }; /* * FCoE connection offload request 3 $$KEEP_ENDIANNESS$$ */ struct fcoe_kwqe_conn_offload3 { … }; /* * FCoE connection offload request 4 $$KEEP_ENDIANNESS$$ */ struct fcoe_kwqe_conn_offload4 { … }; /* * FCoE connection enable request $$KEEP_ENDIANNESS$$ */ struct fcoe_kwqe_conn_enable_disable { … }; /* * FCoE connection destroy request $$KEEP_ENDIANNESS$$ */ struct fcoe_kwqe_conn_destroy { … }; /* * FCoe destroy request $$KEEP_ENDIANNESS$$ */ struct fcoe_kwqe_destroy { … }; /* * FCoe statistics request $$KEEP_ENDIANNESS$$ */ struct fcoe_kwqe_stat { … }; /* * FCoE KWQ WQE $$KEEP_ENDIANNESS$$ */ fcoe_kwqe; /* * TX SGL context $$KEEP_ENDIANNESS$$ */ fcoe_sgl_union_ctx; /* * Data-In/ELS/BLS information $$KEEP_ENDIANNESS$$ */ struct fcoe_read_flow_info { … }; /* * Fcoe stat context $$KEEP_ENDIANNESS$$ */ struct fcoe_s_stat_ctx { … }; /* * Fcoe rx seq context $$KEEP_ENDIANNESS$$ */ struct fcoe_rx_seq_ctx { … }; /* * Fcoe rx_wr union context $$KEEP_ENDIANNESS$$ */ fcoe_rx_wr_union_ctx; /* * FCoE SQ element $$KEEP_ENDIANNESS$$ */ struct fcoe_sqe { … }; /* * 14 regs $$KEEP_ENDIANNESS$$ */ struct fcoe_tce_tx_only { … }; /* * 32 bytes (8 regs) used for TX only purposes $$KEEP_ENDIANNESS$$ */ fcoe_tx_wr_rx_rd_union_ctx; /* * tce_tx_wr_rx_rd_const $$KEEP_ENDIANNESS$$ */ struct fcoe_tce_tx_wr_rx_rd_const { … }; /* * tce_tx_wr_rx_rd $$KEEP_ENDIANNESS$$ */ struct fcoe_tce_tx_wr_rx_rd { … }; /* * tce_rx_wr_tx_rd_const $$KEEP_ENDIANNESS$$ */ struct fcoe_tce_rx_wr_tx_rd_const { … }; /* * tce_rx_wr_tx_rd_var $$KEEP_ENDIANNESS$$ */ struct fcoe_tce_rx_wr_tx_rd_var { … }; /* * tce_rx_wr_tx_rd $$KEEP_ENDIANNESS$$ */ struct fcoe_tce_rx_wr_tx_rd { … }; /* * tce_rx_only $$KEEP_ENDIANNESS$$ */ struct fcoe_tce_rx_only { … }; /* * task_ctx_entry $$KEEP_ENDIANNESS$$ */ struct fcoe_task_ctx_entry { … }; /* * FCoE XFRQ element $$KEEP_ENDIANNESS$$ */ struct fcoe_xfrqe { … }; /* * fcoe rx doorbell message sent to the chip $$KEEP_ENDIANNESS$$ */ struct b577xx_fcoe_rx_doorbell { … }; /* * FCoE CONFQ element $$KEEP_ENDIANNESS$$ */ struct fcoe_confqe { … }; /* * FCoE connection data base */ struct fcoe_conn_db { … }; /* * FCoE CQ element $$KEEP_ENDIANNESS$$ */ struct fcoe_cqe { … }; /* * FCoE error/warning reporting entry $$KEEP_ENDIANNESS$$ */ struct fcoe_partial_err_report_entry { … }; /* * FCoE error/warning reporting entry $$KEEP_ENDIANNESS$$ */ struct fcoe_err_report_entry { … }; /* * FCoE hash table entry (32 bytes) $$KEEP_ENDIANNESS$$ */ struct fcoe_hash_table_entry { … }; /* * FCoE LCQ element $$KEEP_ENDIANNESS$$ */ struct fcoe_lcqe { … }; /* * FCoE pending work request CQE $$KEEP_ENDIANNESS$$ */ struct fcoe_pend_wq_cqe { … }; /* * FCoE RX statistics parameters section#0 $$KEEP_ENDIANNESS$$ */ struct fcoe_rx_stat_params_section0 { … }; /* * FCoE RX statistics parameters section#1 $$KEEP_ENDIANNESS$$ */ struct fcoe_rx_stat_params_section1 { … }; /* * FCoE RX statistics parameters section#2 $$KEEP_ENDIANNESS$$ */ struct fcoe_rx_stat_params_section2 { … }; /* * FCoE TX statistics parameters $$KEEP_ENDIANNESS$$ */ struct fcoe_tx_stat_params { … }; /* * FCoE statistics parameters $$KEEP_ENDIANNESS$$ */ struct fcoe_statistics_params { … }; /* * FCoE t2 hash table entry (64 bytes) $$KEEP_ENDIANNESS$$ */ struct fcoe_t2_hash_table_entry { … }; /* * FCoE unsolicited CQE $$KEEP_ENDIANNESS$$ */ struct fcoe_unsolicited_cqe { … }; #endif /* __57XX_FCOE_HSI_LINUX_LE__ */