diff options
author | Ameer Mahagneh | 2018-03-20 16:55:04 +0100 |
---|---|---|
committer | Michael Brown | 2018-03-20 16:55:04 +0100 |
commit | d5d4bf8870ccb68b3b897d2ee88079dc06e9dd48 (patch) | |
tree | 4f0e6b971f08531209391214ddf1bfae72e586ce | |
parent | [time] Add support for the ACPI power management timer (diff) | |
download | ipxe-d5d4bf8870ccb68b3b897d2ee88079dc06e9dd48.tar.gz ipxe-d5d4bf8870ccb68b3b897d2ee88079dc06e9dd48.tar.xz ipxe-d5d4bf8870ccb68b3b897d2ee88079dc06e9dd48.zip |
[golan] Set log_max_qp to 1
This is required to work around a bug in some firmware versions.
Signed-off-by: Ameer Mahagneh <ameerm@mellanox.com>
Signed-off-by: Michael Brown <mcb30@ipxe.org>
-rwxr-xr-x | src/drivers/infiniband/CIB_PRM.h | 5 | ||||
-rwxr-xr-x | src/drivers/infiniband/golan.c | 2 |
2 files changed, 3 insertions, 4 deletions
diff --git a/src/drivers/infiniband/CIB_PRM.h b/src/drivers/infiniband/CIB_PRM.h index 6d07c015..d578f9b0 100755 --- a/src/drivers/infiniband/CIB_PRM.h +++ b/src/drivers/infiniband/CIB_PRM.h @@ -33,7 +33,7 @@ typedef uint16_t __be16; #define GOLAN_PCI_CMD_XPORT 7 #define CMD_OWNER_HW 0x1 - +#define GOLAN_LOG_MAX_QP 0x1 #define IB_NUM_PKEYS 0x20 struct health_buffer { @@ -229,8 +229,7 @@ struct golan_hca_cap { u8 rsvd1[16]; u8 log_max_srq_sz; u8 log_max_qp_sz; - u8 rsvd2; - u8 log_max_qp; + __be16 log_max_qp; u8 log_max_strq_sz; u8 log_max_srqs; u8 rsvd4[2]; diff --git a/src/drivers/infiniband/golan.c b/src/drivers/infiniband/golan.c index 1858da7c..18ebfb1e 100755 --- a/src/drivers/infiniband/golan.c +++ b/src/drivers/infiniband/golan.c @@ -363,7 +363,7 @@ static inline int golan_set_hca_cap(struct golan *golan) DBGC( golan , "%s caps.log_pg_sz = %d\n", __FUNCTION__, golan->caps.log_pg_sz); DBGC( golan , "%s caps.log_uar_sz = %d\n", __FUNCTION__, be32_to_cpu(golan->caps.uar_page_sz)); golan->caps.uar_page_sz = 0; - + golan->caps.log_max_qp = GOLAN_LOG_MAX_QP; memcpy(((struct golan_hca_cap *)GET_INBOX(golan, GEN_MBOX)), &(golan->caps), |