|
@@ -177,7 +177,7 @@ struct ocrdma_mbx_hdr {
|
|
|
u32 timeout; /* in seconds */
|
|
|
u32 cmd_len;
|
|
|
u32 rsvd_version;
|
|
|
-} __packed;
|
|
|
+};
|
|
|
|
|
|
enum {
|
|
|
OCRDMA_MBX_RSP_OPCODE_SHIFT = 0,
|
|
@@ -197,7 +197,7 @@ struct ocrdma_mbx_rsp {
|
|
|
u32 status;
|
|
|
u32 rsp_len;
|
|
|
u32 add_rsp_len;
|
|
|
-} __packed;
|
|
|
+};
|
|
|
|
|
|
enum {
|
|
|
OCRDMA_MQE_EMBEDDED = 1,
|
|
@@ -208,7 +208,7 @@ struct ocrdma_mqe_sge {
|
|
|
u32 pa_lo;
|
|
|
u32 pa_hi;
|
|
|
u32 len;
|
|
|
-} __packed;
|
|
|
+};
|
|
|
|
|
|
enum {
|
|
|
OCRDMA_MQE_HDR_EMB_SHIFT = 0,
|
|
@@ -225,12 +225,12 @@ struct ocrdma_mqe_hdr {
|
|
|
u32 tag_lo;
|
|
|
u32 tag_hi;
|
|
|
u32 rsvd3;
|
|
|
-} __packed;
|
|
|
+};
|
|
|
|
|
|
struct ocrdma_mqe_emb_cmd {
|
|
|
struct ocrdma_mbx_hdr mch;
|
|
|
u8 pyld[220];
|
|
|
-} __packed;
|
|
|
+};
|
|
|
|
|
|
struct ocrdma_mqe {
|
|
|
struct ocrdma_mqe_hdr hdr;
|
|
@@ -242,7 +242,7 @@ struct ocrdma_mqe {
|
|
|
u8 cmd[236];
|
|
|
struct ocrdma_mbx_rsp rsp;
|
|
|
} u;
|
|
|
-} __packed;
|
|
|
+};
|
|
|
|
|
|
#define OCRDMA_EQ_LEN 4096
|
|
|
#define OCRDMA_MQ_CQ_LEN 256
|
|
@@ -259,12 +259,12 @@ struct ocrdma_mqe {
|
|
|
struct ocrdma_delete_q_req {
|
|
|
struct ocrdma_mbx_hdr req;
|
|
|
u32 id;
|
|
|
-} __packed;
|
|
|
+};
|
|
|
|
|
|
struct ocrdma_pa {
|
|
|
u32 lo;
|
|
|
u32 hi;
|
|
|
-} __packed;
|
|
|
+};
|
|
|
|
|
|
#define MAX_OCRDMA_EQ_PAGES (8)
|
|
|
struct ocrdma_create_eq_req {
|
|
@@ -275,7 +275,7 @@ struct ocrdma_create_eq_req {
|
|
|
u32 delay;
|
|
|
u32 rsvd;
|
|
|
struct ocrdma_pa pa[MAX_OCRDMA_EQ_PAGES];
|
|
|
-} __packed;
|
|
|
+};
|
|
|
|
|
|
enum {
|
|
|
OCRDMA_CREATE_EQ_VALID = Bit(29),
|
|
@@ -310,7 +310,7 @@ struct ocrdma_mcqe {
|
|
|
u32 tag_lo;
|
|
|
u32 tag_hi;
|
|
|
u32 valid_ae_cmpl_cons;
|
|
|
-} __packed;
|
|
|
+};
|
|
|
|
|
|
enum {
|
|
|
OCRDMA_AE_MCQE_QPVALID = Bit(31),
|
|
@@ -332,7 +332,7 @@ struct ocrdma_ae_mcqe {
|
|
|
u32 cqvalid_cqid;
|
|
|
u32 evt_tag;
|
|
|
u32 valid_ae_event;
|
|
|
-} __packed;
|
|
|
+};
|
|
|
|
|
|
enum {
|
|
|
OCRDMA_AE_MPA_MCQE_REQ_ID_SHIFT = 16,
|
|
@@ -356,7 +356,7 @@ struct ocrdma_ae_mpa_mcqe {
|
|
|
u32 w1;
|
|
|
u32 w2;
|
|
|
u32 valid_ae_event;
|
|
|
-} __packed;
|
|
|
+};
|
|
|
|
|
|
enum {
|
|
|
OCRDMA_AE_QP_MCQE_NEW_QP_STATE_SHIFT = 0,
|
|
@@ -382,7 +382,7 @@ struct ocrdma_ae_qp_mcqe {
|
|
|
u32 w1;
|
|
|
u32 w2;
|
|
|
u32 valid_ae_event;
|
|
|
-} __packed;
|
|
|
+};
|
|
|
|
|
|
#define OCRDMA_ASYNC_EVE_CODE 0x14
|
|
|
|
|
@@ -487,7 +487,8 @@ struct ocrdma_mbx_query_config {
|
|
|
u32 max_ird_ord_per_qp;
|
|
|
u32 max_shared_ird_ord;
|
|
|
u32 max_mr;
|
|
|
- u64 max_mr_size;
|
|
|
+ u32 max_mr_size_lo;
|
|
|
+ u32 max_mr_size_hi;
|
|
|
u32 max_num_mr_pbl;
|
|
|
u32 max_mw;
|
|
|
u32 max_fmr;
|
|
@@ -502,14 +503,14 @@ struct ocrdma_mbx_query_config {
|
|
|
u32 max_wqes_rqes_per_q;
|
|
|
u32 max_cq_cqes_per_cq;
|
|
|
u32 max_srq_rqe_sge;
|
|
|
-} __packed;
|
|
|
+};
|
|
|
|
|
|
struct ocrdma_fw_ver_rsp {
|
|
|
struct ocrdma_mqe_hdr hdr;
|
|
|
struct ocrdma_mbx_rsp rsp;
|
|
|
|
|
|
u8 running_ver[32];
|
|
|
-} __packed;
|
|
|
+};
|
|
|
|
|
|
struct ocrdma_fw_conf_rsp {
|
|
|
struct ocrdma_mqe_hdr hdr;
|
|
@@ -535,7 +536,7 @@ struct ocrdma_fw_conf_rsp {
|
|
|
u32 base_eqid;
|
|
|
u32 max_eq;
|
|
|
|
|
|
-} __packed;
|
|
|
+};
|
|
|
|
|
|
enum {
|
|
|
OCRDMA_FN_MODE_RDMA = 0x4
|
|
@@ -584,7 +585,7 @@ struct ocrdma_create_cq_cmd {
|
|
|
struct ocrdma_create_cq {
|
|
|
struct ocrdma_mqe_hdr hdr;
|
|
|
struct ocrdma_create_cq_cmd cmd;
|
|
|
-} __packed;
|
|
|
+};
|
|
|
|
|
|
enum {
|
|
|
OCRDMA_CREATE_CQ_RSP_CQ_ID_MASK = 0xFFFF
|
|
@@ -593,12 +594,12 @@ enum {
|
|
|
struct ocrdma_create_cq_cmd_rsp {
|
|
|
struct ocrdma_mbx_rsp rsp;
|
|
|
u32 cq_id;
|
|
|
-} __packed;
|
|
|
+};
|
|
|
|
|
|
struct ocrdma_create_cq_rsp {
|
|
|
struct ocrdma_mqe_hdr hdr;
|
|
|
struct ocrdma_create_cq_cmd_rsp rsp;
|
|
|
-} __packed;
|
|
|
+};
|
|
|
|
|
|
enum {
|
|
|
OCRDMA_CREATE_MQ_V0_CQ_ID_SHIFT = 22,
|
|
@@ -617,12 +618,12 @@ struct ocrdma_create_mq_req {
|
|
|
u32 async_cqid_valid;
|
|
|
u32 rsvd;
|
|
|
struct ocrdma_pa pa[8];
|
|
|
-} __packed;
|
|
|
+};
|
|
|
|
|
|
struct ocrdma_create_mq_rsp {
|
|
|
struct ocrdma_mbx_rsp rsp;
|
|
|
u32 id;
|
|
|
-} __packed;
|
|
|
+};
|
|
|
|
|
|
enum {
|
|
|
OCRDMA_DESTROY_CQ_QID_SHIFT = 0,
|
|
@@ -637,12 +638,12 @@ struct ocrdma_destroy_cq {
|
|
|
struct ocrdma_mbx_hdr req;
|
|
|
|
|
|
u32 bypass_flush_qid;
|
|
|
-} __packed;
|
|
|
+};
|
|
|
|
|
|
struct ocrdma_destroy_cq_rsp {
|
|
|
struct ocrdma_mqe_hdr hdr;
|
|
|
struct ocrdma_mbx_rsp rsp;
|
|
|
-} __packed;
|
|
|
+};
|
|
|
|
|
|
enum {
|
|
|
OCRDMA_QPT_GSI = 1,
|
|
@@ -766,7 +767,7 @@ struct ocrdma_create_qp_req {
|
|
|
u32 dpp_credits_cqid;
|
|
|
u32 rpir_lkey;
|
|
|
struct ocrdma_pa ird_addr[MAX_OCRDMA_IRD_PAGES];
|
|
|
-} __packed;
|
|
|
+};
|
|
|
|
|
|
enum {
|
|
|
OCRDMA_CREATE_QP_RSP_QP_ID_SHIFT = 0,
|
|
@@ -820,18 +821,18 @@ struct ocrdma_create_qp_rsp {
|
|
|
u32 max_ord_ird;
|
|
|
u32 sq_rq_id;
|
|
|
u32 dpp_response;
|
|
|
-} __packed;
|
|
|
+};
|
|
|
|
|
|
struct ocrdma_destroy_qp {
|
|
|
struct ocrdma_mqe_hdr hdr;
|
|
|
struct ocrdma_mbx_hdr req;
|
|
|
u32 qp_id;
|
|
|
-} __packed;
|
|
|
+};
|
|
|
|
|
|
struct ocrdma_destroy_qp_rsp {
|
|
|
struct ocrdma_mqe_hdr hdr;
|
|
|
struct ocrdma_mbx_rsp rsp;
|
|
|
-} __packed;
|
|
|
+};
|
|
|
|
|
|
enum {
|
|
|
OCRDMA_MODIFY_QP_ID_SHIFT = 0,
|
|
@@ -975,7 +976,7 @@ struct ocrdma_qp_params {
|
|
|
u32 dmac_b0_to_b3;
|
|
|
u32 vlan_dmac_b4_to_b5;
|
|
|
u32 qkey;
|
|
|
-} __packed;
|
|
|
+};
|
|
|
|
|
|
|
|
|
struct ocrdma_modify_qp {
|
|
@@ -986,7 +987,7 @@ struct ocrdma_modify_qp {
|
|
|
u32 flags;
|
|
|
u32 rdma_flags;
|
|
|
u32 num_outstanding_atomic_rd;
|
|
|
-} __packed;
|
|
|
+};
|
|
|
|
|
|
enum {
|
|
|
OCRDMA_MODIFY_QP_RSP_MAX_RQE_SHIFT = 0,
|
|
@@ -1007,7 +1008,7 @@ struct ocrdma_modify_qp_rsp {
|
|
|
|
|
|
u32 max_wqe_rqe;
|
|
|
u32 max_ord_ird;
|
|
|
-} __packed;
|
|
|
+};
|
|
|
|
|
|
struct ocrdma_query_qp {
|
|
|
struct ocrdma_mqe_hdr hdr;
|
|
@@ -1016,13 +1017,13 @@ struct ocrdma_query_qp {
|
|
|
#define OCRDMA_QUERY_UP_QP_ID_SHIFT 0
|
|
|
#define OCRDMA_QUERY_UP_QP_ID_MASK 0xFFFFFF
|
|
|
u32 qp_id;
|
|
|
-} __packed;
|
|
|
+};
|
|
|
|
|
|
struct ocrdma_query_qp_rsp {
|
|
|
struct ocrdma_mqe_hdr hdr;
|
|
|
struct ocrdma_mbx_rsp rsp;
|
|
|
struct ocrdma_qp_params params;
|
|
|
-} __packed;
|
|
|
+};
|
|
|
|
|
|
enum {
|
|
|
OCRDMA_CREATE_SRQ_PD_ID_SHIFT = 0,
|
|
@@ -1051,7 +1052,7 @@ struct ocrdma_create_srq {
|
|
|
u32 max_sge_rqe;
|
|
|
u32 pages_rqe_sz;
|
|
|
struct ocrdma_pa rq_addr[MAX_OCRDMA_SRQ_PAGES];
|
|
|
-} __packed;
|
|
|
+};
|
|
|
|
|
|
enum {
|
|
|
OCRDMA_CREATE_SRQ_RSP_SRQ_ID_SHIFT = 0,
|
|
@@ -1070,7 +1071,7 @@ struct ocrdma_create_srq_rsp {
|
|
|
|
|
|
u32 id;
|
|
|
u32 max_sge_rqe_allocated;
|
|
|
-} __packed;
|
|
|
+};
|
|
|
|
|
|
enum {
|
|
|
OCRDMA_MODIFY_SRQ_ID_SHIFT = 0,
|
|
@@ -1089,7 +1090,7 @@ struct ocrdma_modify_srq {
|
|
|
|
|
|
u32 id;
|
|
|
u32 limit_max_rqe;
|
|
|
-} __packed;
|
|
|
+};
|
|
|
|
|
|
enum {
|
|
|
OCRDMA_QUERY_SRQ_ID_SHIFT = 0,
|
|
@@ -1101,7 +1102,7 @@ struct ocrdma_query_srq {
|
|
|
struct ocrdma_mbx_rsp req;
|
|
|
|
|
|
u32 id;
|
|
|
-} __packed;
|
|
|
+};
|
|
|
|
|
|
enum {
|
|
|
OCRDMA_QUERY_SRQ_RSP_PD_ID_SHIFT = 0,
|
|
@@ -1123,7 +1124,7 @@ struct ocrdma_query_srq_rsp {
|
|
|
|
|
|
u32 max_rqe_pdid;
|
|
|
u32 srq_lmt_max_sge;
|
|
|
-} __packed;
|
|
|
+};
|
|
|
|
|
|
enum {
|
|
|
OCRDMA_DESTROY_SRQ_ID_SHIFT = 0,
|
|
@@ -1135,7 +1136,7 @@ struct ocrdma_destroy_srq {
|
|
|
struct ocrdma_mbx_rsp req;
|
|
|
|
|
|
u32 id;
|
|
|
-} __packed;
|
|
|
+};
|
|
|
|
|
|
enum {
|
|
|
OCRDMA_ALLOC_PD_ENABLE_DPP = BIT(16),
|
|
@@ -1147,7 +1148,7 @@ struct ocrdma_alloc_pd {
|
|
|
struct ocrdma_mqe_hdr hdr;
|
|
|
struct ocrdma_mbx_hdr req;
|
|
|
u32 enable_dpp_rsvd;
|
|
|
-} __packed;
|
|
|
+};
|
|
|
|
|
|
enum {
|
|
|
OCRDMA_ALLOC_PD_RSP_DPP = Bit(16),
|
|
@@ -1159,18 +1160,18 @@ struct ocrdma_alloc_pd_rsp {
|
|
|
struct ocrdma_mqe_hdr hdr;
|
|
|
struct ocrdma_mbx_rsp rsp;
|
|
|
u32 dpp_page_pdid;
|
|
|
-} __packed;
|
|
|
+};
|
|
|
|
|
|
struct ocrdma_dealloc_pd {
|
|
|
struct ocrdma_mqe_hdr hdr;
|
|
|
struct ocrdma_mbx_hdr req;
|
|
|
u32 id;
|
|
|
-} __packed;
|
|
|
+};
|
|
|
|
|
|
struct ocrdma_dealloc_pd_rsp {
|
|
|
struct ocrdma_mqe_hdr hdr;
|
|
|
struct ocrdma_mbx_rsp rsp;
|
|
|
-} __packed;
|
|
|
+};
|
|
|
|
|
|
enum {
|
|
|
OCRDMA_ADDR_CHECK_ENABLE = 1,
|
|
@@ -1206,7 +1207,7 @@ struct ocrdma_alloc_lkey {
|
|
|
|
|
|
u32 pdid;
|
|
|
u32 pbl_sz_flags;
|
|
|
-} __packed;
|
|
|
+};
|
|
|
|
|
|
struct ocrdma_alloc_lkey_rsp {
|
|
|
struct ocrdma_mqe_hdr hdr;
|
|
@@ -1214,7 +1215,7 @@ struct ocrdma_alloc_lkey_rsp {
|
|
|
|
|
|
u32 lrkey;
|
|
|
u32 num_pbl_rsvd;
|
|
|
-} __packed;
|
|
|
+};
|
|
|
|
|
|
struct ocrdma_dealloc_lkey {
|
|
|
struct ocrdma_mqe_hdr hdr;
|
|
@@ -1222,12 +1223,12 @@ struct ocrdma_dealloc_lkey {
|
|
|
|
|
|
u32 lkey;
|
|
|
u32 rsvd_frmr;
|
|
|
-} __packed;
|
|
|
+};
|
|
|
|
|
|
struct ocrdma_dealloc_lkey_rsp {
|
|
|
struct ocrdma_mqe_hdr hdr;
|
|
|
struct ocrdma_mbx_rsp rsp;
|
|
|
-} __packed;
|
|
|
+};
|
|
|
|
|
|
#define MAX_OCRDMA_NSMR_PBL (u32)22
|
|
|
#define MAX_OCRDMA_PBL_SIZE 65536
|
|
@@ -1283,7 +1284,7 @@ struct ocrdma_reg_nsmr {
|
|
|
u32 va_loaddr;
|
|
|
u32 va_hiaddr;
|
|
|
struct ocrdma_pa pbl[MAX_OCRDMA_NSMR_PBL];
|
|
|
-} __packed;
|
|
|
+};
|
|
|
|
|
|
enum {
|
|
|
OCRDMA_REG_NSMR_CONT_PBL_SHIFT = 0,
|
|
@@ -1310,7 +1311,7 @@ struct ocrdma_reg_nsmr_cont {
|
|
|
struct ocrdma_pbe {
|
|
|
u32 pa_hi;
|
|
|
u32 pa_lo;
|
|
|
-} __packed;
|
|
|
+};
|
|
|
|
|
|
enum {
|
|
|
OCRDMA_REG_NSMR_RSP_NUM_PBL_SHIFT = 16,
|
|
@@ -1322,7 +1323,7 @@ struct ocrdma_reg_nsmr_rsp {
|
|
|
|
|
|
u32 lrkey;
|
|
|
u32 num_pbl;
|
|
|
-} __packed;
|
|
|
+};
|
|
|
|
|
|
enum {
|
|
|
OCRDMA_REG_NSMR_CONT_RSP_LRKEY_INDEX_SHIFT = 0,
|
|
@@ -1342,7 +1343,7 @@ struct ocrdma_reg_nsmr_cont_rsp {
|
|
|
|
|
|
u32 lrkey_key_index;
|
|
|
u32 num_pbl;
|
|
|
-} __packed;
|
|
|
+};
|
|
|
|
|
|
enum {
|
|
|
OCRDMA_ALLOC_MW_PD_ID_SHIFT = 0,
|
|
@@ -1354,7 +1355,7 @@ struct ocrdma_alloc_mw {
|
|
|
struct ocrdma_mbx_hdr req;
|
|
|
|
|
|
u32 pdid;
|
|
|
-} __packed;
|
|
|
+};
|
|
|
|
|
|
enum {
|
|
|
OCRDMA_ALLOC_MW_RSP_LRKEY_INDEX_SHIFT = 0,
|
|
@@ -1366,7 +1367,7 @@ struct ocrdma_alloc_mw_rsp {
|
|
|
struct ocrdma_mbx_rsp rsp;
|
|
|
|
|
|
u32 lrkey_index;
|
|
|
-} __packed;
|
|
|
+};
|
|
|
|
|
|
struct ocrdma_attach_mcast {
|
|
|
struct ocrdma_mqe_hdr hdr;
|
|
@@ -1375,12 +1376,12 @@ struct ocrdma_attach_mcast {
|
|
|
u8 mgid[16];
|
|
|
u32 mac_b0_to_b3;
|
|
|
u32 vlan_mac_b4_to_b5;
|
|
|
-} __packed;
|
|
|
+};
|
|
|
|
|
|
struct ocrdma_attach_mcast_rsp {
|
|
|
struct ocrdma_mqe_hdr hdr;
|
|
|
struct ocrdma_mbx_rsp rsp;
|
|
|
-} __packed;
|
|
|
+};
|
|
|
|
|
|
struct ocrdma_detach_mcast {
|
|
|
struct ocrdma_mqe_hdr hdr;
|
|
@@ -1389,12 +1390,12 @@ struct ocrdma_detach_mcast {
|
|
|
u8 mgid[16];
|
|
|
u32 mac_b0_to_b3;
|
|
|
u32 vlan_mac_b4_to_b5;
|
|
|
-} __packed;
|
|
|
+};
|
|
|
|
|
|
struct ocrdma_detach_mcast_rsp {
|
|
|
struct ocrdma_mqe_hdr hdr;
|
|
|
struct ocrdma_mbx_rsp rsp;
|
|
|
-} __packed;
|
|
|
+};
|
|
|
|
|
|
enum {
|
|
|
OCRDMA_CREATE_AH_NUM_PAGES_SHIFT = 19,
|
|
@@ -1418,24 +1419,24 @@ struct ocrdma_create_ah_tbl {
|
|
|
|
|
|
u32 ah_conf;
|
|
|
struct ocrdma_pa tbl_addr[8];
|
|
|
-} __packed;
|
|
|
+};
|
|
|
|
|
|
struct ocrdma_create_ah_tbl_rsp {
|
|
|
struct ocrdma_mqe_hdr hdr;
|
|
|
struct ocrdma_mbx_rsp rsp;
|
|
|
u32 ahid;
|
|
|
-} __packed;
|
|
|
+};
|
|
|
|
|
|
struct ocrdma_delete_ah_tbl {
|
|
|
struct ocrdma_mqe_hdr hdr;
|
|
|
struct ocrdma_mbx_hdr req;
|
|
|
u32 ahid;
|
|
|
-} __packed;
|
|
|
+};
|
|
|
|
|
|
struct ocrdma_delete_ah_tbl_rsp {
|
|
|
struct ocrdma_mqe_hdr hdr;
|
|
|
struct ocrdma_mbx_rsp rsp;
|
|
|
-} __packed;
|
|
|
+};
|
|
|
|
|
|
enum {
|
|
|
OCRDMA_EQE_VALID_SHIFT = 0,
|
|
@@ -1448,7 +1449,7 @@ enum {
|
|
|
|
|
|
struct ocrdma_eqe {
|
|
|
u32 id_valid;
|
|
|
-} __packed;
|
|
|
+};
|
|
|
|
|
|
enum OCRDMA_CQE_STATUS {
|
|
|
OCRDMA_CQE_SUCCESS = 0,
|
|
@@ -1532,14 +1533,14 @@ struct ocrdma_cqe {
|
|
|
} cmn;
|
|
|
};
|
|
|
u32 flags_status_srcqpn; /* w3 */
|
|
|
-} __packed;
|
|
|
+};
|
|
|
|
|
|
struct ocrdma_sge {
|
|
|
u32 addr_hi;
|
|
|
u32 addr_lo;
|
|
|
u32 lrkey;
|
|
|
u32 len;
|
|
|
-} __packed;
|
|
|
+};
|
|
|
|
|
|
enum {
|
|
|
OCRDMA_FLAG_SIG = 0x1,
|
|
@@ -1600,14 +1601,14 @@ struct ocrdma_hdr_wqe {
|
|
|
u32 lkey;
|
|
|
};
|
|
|
u32 total_len;
|
|
|
-} __packed;
|
|
|
+};
|
|
|
|
|
|
struct ocrdma_ewqe_ud_hdr {
|
|
|
u32 rsvd_dest_qpn;
|
|
|
u32 qkey;
|
|
|
u32 rsvd_ahid;
|
|
|
u32 rsvd;
|
|
|
-} __packed;
|
|
|
+};
|
|
|
|
|
|
struct ocrdma_eth_basic {
|
|
|
u8 dmac[6];
|