提交 c5dfb000 编写于 作者: H Hariprasad S 提交者: Doug Ledford

iw_cxgb4: Pass qid range to user space driver

Enhances the t4_dev_status_page to pass the qid start and size
attributes from iw_cxgb4 to libcxgb4.
Bump the ABI Version to 3 -> To allow libcxgb4 to detect old drivers and
revert to the old way of computing the qid ranges.
Signed-off-by: NHariprasad Shenai <hariprasad@chelsio.com>
Signed-off-by: NSteve Wise <swise@opengridcomputing.com>
Signed-off-by: NDoug Ledford <dledford@redhat.com>
上级 0d6ed314
...@@ -850,6 +850,10 @@ static int c4iw_rdev_open(struct c4iw_rdev *rdev) ...@@ -850,6 +850,10 @@ static int c4iw_rdev_open(struct c4iw_rdev *rdev)
} }
rdev->status_page = (struct t4_dev_status_page *) rdev->status_page = (struct t4_dev_status_page *)
__get_free_page(GFP_KERNEL); __get_free_page(GFP_KERNEL);
rdev->status_page->qp_start = rdev->lldi.vr->qp.start;
rdev->status_page->qp_size = rdev->lldi.vr->qp.size;
rdev->status_page->cq_start = rdev->lldi.vr->cq.start;
rdev->status_page->cq_size = rdev->lldi.vr->cq.size;
if (!rdev->status_page) { if (!rdev->status_page) {
pr_err(MOD "error allocating status page\n"); pr_err(MOD "error allocating status page\n");
goto err4; goto err4;
......
...@@ -699,4 +699,11 @@ static inline void t4_set_cq_in_error(struct t4_cq *cq) ...@@ -699,4 +699,11 @@ static inline void t4_set_cq_in_error(struct t4_cq *cq)
struct t4_dev_status_page { struct t4_dev_status_page {
u8 db_off; u8 db_off;
u8 pad1;
u16 pad2;
u32 pad3;
u64 qp_start;
u64 qp_size;
u64 cq_start;
u64 cq_size;
}; };
...@@ -32,7 +32,7 @@ ...@@ -32,7 +32,7 @@
#ifndef __C4IW_USER_H__ #ifndef __C4IW_USER_H__
#define __C4IW_USER_H__ #define __C4IW_USER_H__
#define C4IW_UVERBS_ABI_VERSION 2 #define C4IW_UVERBS_ABI_VERSION 3
/* /*
* Make sure that all structs defined in this file remain laid out so * Make sure that all structs defined in this file remain laid out so
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册