Commit cd3c5ddf authored by Konstantin Taranov's avatar Konstantin Taranov Committed by Leon Romanovsky
Browse files

RDMA/mana_ib: request error CQEs when supported

parent bad44809
Loading
Loading
Loading
Loading
+3 −0
Original line number Diff line number Diff line
@@ -794,6 +794,9 @@ int mana_ib_gd_create_rnic_adapter(struct mana_ib_dev *mdev)
	req.hdr.dev_id = gc->mana_ib.dev_id;
	req.notify_eq_id = mdev->fatal_err_eq->id;

	if (mdev->adapter_caps.feature_flags & MANA_IB_FEATURE_CLIENT_ERROR_CQE_SUPPORT)
		req.feature_flags |= MANA_IB_FEATURE_CLIENT_ERROR_CQE_REQUEST;

	err = mana_gd_send_request(gc, sizeof(req), &req, sizeof(resp), &resp);
	if (err) {
		ibdev_err(&mdev->ib_dev, "Failed to create RNIC adapter err %d", err);
+8 −0
Original line number Diff line number Diff line
@@ -211,6 +211,10 @@ struct mana_ib_query_adapter_caps_req {
	struct gdma_req_hdr hdr;
}; /*HW Data */

enum mana_ib_adapter_features {
	MANA_IB_FEATURE_CLIENT_ERROR_CQE_SUPPORT = BIT(4),
};

struct mana_ib_query_adapter_caps_resp {
	struct gdma_resp_hdr hdr;
	u32 max_sq_id;
@@ -234,6 +238,10 @@ struct mana_ib_query_adapter_caps_resp {
	u64 feature_flags;
}; /* HW Data */

enum mana_ib_adapter_features_request {
	MANA_IB_FEATURE_CLIENT_ERROR_CQE_REQUEST = BIT(1),
}; /*HW Data */

struct mana_rnic_create_adapter_req {
	struct gdma_req_hdr hdr;
	u32 notify_eq_id;