@@ -547,14 +547,27 @@ int mana_ib_query_device(struct ib_device *ibdev, struct ib_device_attr *props,
547547 struct mana_ib_dev * dev = container_of (ibdev ,
548548 struct mana_ib_dev , ib_dev );
549549
550+ memset (props , 0 , sizeof (* props ));
551+ props -> max_mr_size = MANA_IB_MAX_MR_SIZE ;
552+ props -> page_size_cap = PAGE_SZ_BM ;
550553 props -> max_qp = dev -> adapter_caps .max_qp_count ;
551554 props -> max_qp_wr = dev -> adapter_caps .max_qp_wr ;
555+ props -> device_cap_flags = IB_DEVICE_RC_RNR_NAK_GEN ;
556+ props -> max_send_sge = dev -> adapter_caps .max_send_sge_count ;
557+ props -> max_recv_sge = dev -> adapter_caps .max_recv_sge_count ;
558+ props -> max_sge_rd = dev -> adapter_caps .max_recv_sge_count ;
552559 props -> max_cq = dev -> adapter_caps .max_cq_count ;
553560 props -> max_cqe = dev -> adapter_caps .max_qp_wr ;
554561 props -> max_mr = dev -> adapter_caps .max_mr_count ;
555- props -> max_mr_size = MANA_IB_MAX_MR_SIZE ;
556- props -> max_send_sge = dev -> adapter_caps .max_send_sge_count ;
557- props -> max_recv_sge = dev -> adapter_caps .max_recv_sge_count ;
562+ props -> max_pd = dev -> adapter_caps .max_pd_count ;
563+ props -> max_qp_rd_atom = dev -> adapter_caps .max_inbound_read_limit ;
564+ props -> max_res_rd_atom = props -> max_qp_rd_atom * props -> max_qp ;
565+ props -> max_qp_init_rd_atom = dev -> adapter_caps .max_outbound_read_limit ;
566+ props -> atomic_cap = IB_ATOMIC_NONE ;
567+ props -> masked_atomic_cap = IB_ATOMIC_NONE ;
568+ props -> max_ah = INT_MAX ;
569+ props -> max_pkeys = 1 ;
570+ props -> local_ca_ack_delay = MANA_CA_ACK_DELAY ;
558571
559572 return 0 ;
560573}
0 commit comments