Lines Matching full:dd

334 	struct rvt_dev_info *rdi = &ppd->dd->verbs_dev.rdi;  in hfi1_kdeth_eager_rcv()
350 trace_input_ibhdr(rcd->dd, packet, !!(rhf_dc_info(packet->rhf))); in hfi1_kdeth_eager_rcv()
388 struct rvt_dev_info *rdi = &ppd->dd->verbs_dev.rdi; in hfi1_kdeth_expected_rcv()
404 trace_input_ibhdr(rcd->dd, packet, !!(rhf_dc_info(packet->rhf))); in hfi1_kdeth_expected_rcv()
460 struct rvt_dev_info *rdi = &ppd->dd->verbs_dev.rdi; in hfi1_handle_packet()
539 trace_input_ibhdr(rcd->dd, packet, !!(rhf_dc_info(packet->rhf))); in hfi1_ib_rcv()
547 trace_input_ibhdr(rcd->dd, packet, false); in hfi1_16B_rcv()
670 sde->dd, in build_verbs_ulp_payload()
701 struct hfi1_devdata *dd = dd_from_ibdev(qp->ibqp.device); in update_tx_opstats() local
702 struct hfi1_opcode_stats_perctx *s = get_cpu_ptr(dd->tx_opstats); in update_tx_opstats()
753 sde->dd, in build_verbs_tx_desc()
781 ret = sdma_txadd_daddr(sde->dd, &tx->txreq, sde->dd->sdma_pad_phys, in build_verbs_tx_desc()
887 struct hfi1_devdata *dd = sc->dd; in pio_wait() local
903 struct hfi1_ibdev *dev = &dd->verbs_dev; in pio_wait()
1034 pio_copy(ppd->dd, pbuf, pbc, hdr, hdrwords); in hfi1_verbs_send_pio()
1050 seg_pio_copy_mid(pbuf, ppd->dd->sdma_pad_dma, in hfi1_verbs_send_pio()
1119 struct hfi1_devdata *dd; in egress_pkey_check() local
1155 dd = ppd->dd; in egress_pkey_check()
1156 if (!(dd->err_info_xmit_constraint.status & in egress_pkey_check()
1158 dd->err_info_xmit_constraint.status |= in egress_pkey_check()
1160 dd->err_info_xmit_constraint.slid = slid; in egress_pkey_check()
1161 dd->err_info_xmit_constraint.pkey = pkey; in egress_pkey_check()
1176 struct hfi1_devdata *dd = dd_from_ibdev(qp->ibqp.device); in get_send_routine() local
1180 if (unlikely(!(dd->flags & HFI1_HAS_SEND_DMA))) in get_send_routine()
1181 return dd->process_pio_send; in get_send_routine()
1184 return dd->process_pio_send; in get_send_routine()
1197 return dd->process_pio_send; in get_send_routine()
1202 return dd->process_dma_send; in get_send_routine()
1215 struct hfi1_devdata *dd = dd_from_ibdev(qp->ibqp.device); in hfi1_verbs_send() local
1254 ret = egress_pkey_check(dd->pport, slid, pkey, in hfi1_verbs_send()
1265 if (sr == dd->process_pio_send) { in hfi1_verbs_send()
1276 if (sr == dd->process_dma_send && iowait_pio_pending(&priv->s_iowait)) in hfi1_verbs_send()
1286 * @dd: the device data structure
1288 static void hfi1_fill_device_attr(struct hfi1_devdata *dd) in hfi1_fill_device_attr() argument
1290 struct rvt_dev_info *rdi = &dd->verbs_dev.rdi; in hfi1_fill_device_attr()
1291 u32 ver = dd->dc8051_ver; in hfi1_fill_device_attr()
1306 rdi->dparms.props.vendor_id = dd->oui1 << 16 | dd->oui2 << 8 | dd->oui3; in hfi1_fill_device_attr()
1307 rdi->dparms.props.vendor_part_id = dd->pcidev->device; in hfi1_fill_device_attr()
1308 rdi->dparms.props.hw_ver = dd->minrev; in hfi1_fill_device_attr()
1329 rdi->dparms.props.max_pkeys = hfi1_get_npkeys(dd); in hfi1_fill_device_attr()
1372 struct hfi1_devdata *dd = dd_from_dev(verbs_dev); in query_port() local
1373 struct hfi1_pportdata *ppd = &dd->pport[port_num - 1]; in query_port()
1409 struct hfi1_devdata *dd = dd_from_ibdev(device); in modify_device() local
1422 for (i = 0; i < dd->num_pports; i++) { in modify_device()
1423 struct hfi1_ibport *ibp = &dd->pport[i].ibport_data; in modify_device()
1432 for (i = 0; i < dd->num_pports; i++) { in modify_device()
1433 struct hfi1_ibport *ibp = &dd->pport[i].ibport_data; in modify_device()
1448 struct hfi1_devdata *dd = dd_from_dev(verbs_dev); in shut_down_port() local
1449 struct hfi1_pportdata *ppd = &dd->pport[port_num - 1]; in shut_down_port()
1482 struct hfi1_devdata *dd; in hfi1_check_ah() local
1493 dd = dd_from_ppd(ppd); in hfi1_check_ah()
1501 if (sc_to_vlt(dd, sc5) > num_vls && sc_to_vlt(dd, sc5) != 0xf) in hfi1_check_ah()
1512 struct hfi1_devdata *dd; in hfi1_notify_new_ah() local
1526 dd = dd_from_ppd(ppd); in hfi1_notify_new_ah()
1527 ah->vl = sc_to_vlt(dd, sc5); in hfi1_notify_new_ah()
1529 ah->log_pmtu = ilog2(dd->vld[ah->vl].mtu); in hfi1_notify_new_ah()
1534 * @dd: the hfi1_ib device
1536 unsigned hfi1_get_npkeys(struct hfi1_devdata *dd) in hfi1_get_npkeys() argument
1538 return ARRAY_SIZE(dd->pport[0].pkeys); in hfi1_get_npkeys()
1651 struct hfi1_devdata *dd = dd_from_ibdev(ibdev); in hfi1_alloc_hw_device_stats() local
1654 err = init_cntr_names(dd->cntrnames, dd->cntrnameslen, in hfi1_alloc_hw_device_stats()
1673 struct hfi1_devdata *dd = dd_from_ibdev(ibdev); in hfi_alloc_hw_port_stats() local
1676 err = init_cntr_names(dd->portcntrnames, dd->portcntrnameslen, in hfi_alloc_hw_port_stats()
1689 struct hfi1_devdata *dd; in hfi1_sps_ints() local
1693 xa_for_each(&hfi1_dev_table, index, dd) { in hfi1_sps_ints()
1694 sps_ints += get_all_cpu_total(dd->int_counter); in hfi1_sps_ints()
1745 * @dd: the device data structure
1748 int hfi1_register_ib_device(struct hfi1_devdata *dd) in hfi1_register_ib_device() argument
1750 struct hfi1_ibdev *dev = &dd->verbs_dev; in hfi1_register_ib_device()
1752 struct hfi1_pportdata *ppd = dd->pport; in hfi1_register_ib_device()
1757 for (i = 0; i < dd->num_pports; i++) in hfi1_register_ib_device()
1783 ibdev->phys_port_cnt = dd->num_pports; in hfi1_register_ib_device()
1784 ibdev->dev.parent = &dd->pcidev->dev; in hfi1_register_ib_device()
1794 dd->verbs_dev.rdi.driver_f.get_pci_dev = get_pci_dev; in hfi1_register_ib_device()
1795 dd->verbs_dev.rdi.driver_f.check_ah = hfi1_check_ah; in hfi1_register_ib_device()
1796 dd->verbs_dev.rdi.driver_f.notify_new_ah = hfi1_notify_new_ah; in hfi1_register_ib_device()
1797 dd->verbs_dev.rdi.driver_f.get_guid_be = hfi1_get_guid_be; in hfi1_register_ib_device()
1798 dd->verbs_dev.rdi.driver_f.query_port_state = query_port; in hfi1_register_ib_device()
1799 dd->verbs_dev.rdi.driver_f.shut_down_port = shut_down_port; in hfi1_register_ib_device()
1800 dd->verbs_dev.rdi.driver_f.cap_mask_chg = hfi1_cap_mask_chg; in hfi1_register_ib_device()
1804 hfi1_fill_device_attr(dd); in hfi1_register_ib_device()
1807 dd->verbs_dev.rdi.dparms.qp_table_size = hfi1_qp_table_size; in hfi1_register_ib_device()
1808 dd->verbs_dev.rdi.dparms.qpn_start = 0; in hfi1_register_ib_device()
1809 dd->verbs_dev.rdi.dparms.qpn_inc = 1; in hfi1_register_ib_device()
1810 dd->verbs_dev.rdi.dparms.qos_shift = dd->qos_shift; in hfi1_register_ib_device()
1811 dd->verbs_dev.rdi.dparms.qpn_res_start = RVT_KDETH_QP_BASE; in hfi1_register_ib_device()
1812 dd->verbs_dev.rdi.dparms.qpn_res_end = RVT_AIP_QP_MAX; in hfi1_register_ib_device()
1813 dd->verbs_dev.rdi.dparms.max_rdma_atomic = HFI1_MAX_RDMA_ATOMIC; in hfi1_register_ib_device()
1814 dd->verbs_dev.rdi.dparms.psn_mask = PSN_MASK; in hfi1_register_ib_device()
1815 dd->verbs_dev.rdi.dparms.psn_shift = PSN_SHIFT; in hfi1_register_ib_device()
1816 dd->verbs_dev.rdi.dparms.psn_modify_mask = PSN_MODIFY_MASK; in hfi1_register_ib_device()
1817 dd->verbs_dev.rdi.dparms.core_cap_flags = RDMA_CORE_PORT_INTEL_OPA | in hfi1_register_ib_device()
1819 dd->verbs_dev.rdi.dparms.max_mad_size = OPA_MGMT_MAD_SIZE; in hfi1_register_ib_device()
1821 dd->verbs_dev.rdi.driver_f.qp_priv_alloc = qp_priv_alloc; in hfi1_register_ib_device()
1822 dd->verbs_dev.rdi.driver_f.qp_priv_init = hfi1_qp_priv_init; in hfi1_register_ib_device()
1823 dd->verbs_dev.rdi.driver_f.qp_priv_free = qp_priv_free; in hfi1_register_ib_device()
1824 dd->verbs_dev.rdi.driver_f.free_all_qps = free_all_qps; in hfi1_register_ib_device()
1825 dd->verbs_dev.rdi.driver_f.notify_qp_reset = notify_qp_reset; in hfi1_register_ib_device()
1826 dd->verbs_dev.rdi.driver_f.do_send = hfi1_do_send_from_rvt; in hfi1_register_ib_device()
1827 dd->verbs_dev.rdi.driver_f.schedule_send = hfi1_schedule_send; in hfi1_register_ib_device()
1828 dd->verbs_dev.rdi.driver_f.schedule_send_no_lock = _hfi1_schedule_send; in hfi1_register_ib_device()
1829 dd->verbs_dev.rdi.driver_f.get_pmtu_from_attr = get_pmtu_from_attr; in hfi1_register_ib_device()
1830 dd->verbs_dev.rdi.driver_f.notify_error_qp = notify_error_qp; in hfi1_register_ib_device()
1831 dd->verbs_dev.rdi.driver_f.flush_qp_waiters = flush_qp_waiters; in hfi1_register_ib_device()
1832 dd->verbs_dev.rdi.driver_f.stop_send_queue = stop_send_queue; in hfi1_register_ib_device()
1833 dd->verbs_dev.rdi.driver_f.quiesce_qp = quiesce_qp; in hfi1_register_ib_device()
1834 dd->verbs_dev.rdi.driver_f.notify_error_qp = notify_error_qp; in hfi1_register_ib_device()
1835 dd->verbs_dev.rdi.driver_f.mtu_from_qp = mtu_from_qp; in hfi1_register_ib_device()
1836 dd->verbs_dev.rdi.driver_f.mtu_to_path_mtu = mtu_to_path_mtu; in hfi1_register_ib_device()
1837 dd->verbs_dev.rdi.driver_f.check_modify_qp = hfi1_check_modify_qp; in hfi1_register_ib_device()
1838 dd->verbs_dev.rdi.driver_f.modify_qp = hfi1_modify_qp; in hfi1_register_ib_device()
1839 dd->verbs_dev.rdi.driver_f.notify_restart_rc = hfi1_restart_rc; in hfi1_register_ib_device()
1840 dd->verbs_dev.rdi.driver_f.setup_wqe = hfi1_setup_wqe; in hfi1_register_ib_device()
1841 dd->verbs_dev.rdi.driver_f.comp_vect_cpu_lookup = in hfi1_register_ib_device()
1845 dd->verbs_dev.rdi.ibdev.num_comp_vectors = dd->comp_vect_possible_cpus; in hfi1_register_ib_device()
1846 dd->verbs_dev.rdi.dparms.node = dd->node; in hfi1_register_ib_device()
1849 dd->verbs_dev.rdi.flags = 0; /* Let rdmavt handle it all */ in hfi1_register_ib_device()
1850 dd->verbs_dev.rdi.dparms.lkey_table_size = hfi1_lkey_table_size; in hfi1_register_ib_device()
1851 dd->verbs_dev.rdi.dparms.nports = dd->num_pports; in hfi1_register_ib_device()
1852 dd->verbs_dev.rdi.dparms.npkeys = hfi1_get_npkeys(dd); in hfi1_register_ib_device()
1853 dd->verbs_dev.rdi.dparms.sge_copy_mode = sge_copy_mode; in hfi1_register_ib_device()
1854 dd->verbs_dev.rdi.dparms.wss_threshold = wss_threshold; in hfi1_register_ib_device()
1855 dd->verbs_dev.rdi.dparms.wss_clean_period = wss_clean_period; in hfi1_register_ib_device()
1856 dd->verbs_dev.rdi.dparms.reserved_operations = 1; in hfi1_register_ib_device()
1857 dd->verbs_dev.rdi.dparms.extra_rdma_atomic = HFI1_TID_RDMA_WRITE_CNT; in hfi1_register_ib_device()
1860 dd->verbs_dev.rdi.post_parms = hfi1_post_parms; in hfi1_register_ib_device()
1863 dd->verbs_dev.rdi.wc_opcode = ib_hfi1_wc_opcode; in hfi1_register_ib_device()
1865 ppd = dd->pport; in hfi1_register_ib_device()
1866 for (i = 0; i < dd->num_pports; i++, ppd++) in hfi1_register_ib_device()
1867 rvt_init_port(&dd->verbs_dev.rdi, in hfi1_register_ib_device()
1872 ret = rvt_register_device(&dd->verbs_dev.rdi); in hfi1_register_ib_device()
1876 ret = hfi1_verbs_register_sysfs(dd); in hfi1_register_ib_device()
1883 rvt_unregister_device(&dd->verbs_dev.rdi); in hfi1_register_ib_device()
1886 dd_dev_err(dd, "cannot register verbs: %d!\n", -ret); in hfi1_register_ib_device()
1890 void hfi1_unregister_ib_device(struct hfi1_devdata *dd) in hfi1_unregister_ib_device() argument
1892 struct hfi1_ibdev *dev = &dd->verbs_dev; in hfi1_unregister_ib_device()
1894 hfi1_verbs_unregister_sysfs(dd); in hfi1_unregister_ib_device()
1896 rvt_unregister_device(&dd->verbs_dev.rdi); in hfi1_unregister_ib_device()
1899 dd_dev_err(dd, "txwait list not empty!\n"); in hfi1_unregister_ib_device()
1901 dd_dev_err(dd, "memwait list not empty!\n"); in hfi1_unregister_ib_device()