/linux/drivers/infiniband/hw/qib/ |
H A D | qib_sdma.c | 101 static void clear_sdma_activelist(struct qib_pportdata *ppd) in clear_sdma_activelist() argument 105 list_for_each_entry_safe(txp, txp_next, &ppd->sdma_activelist, list) { in clear_sdma_activelist() 112 unmap_desc(ppd, idx); in clear_sdma_activelist() 113 if (++idx == ppd->sdma_descq_cnt) in clear_sdma_activelist() 124 struct qib_pportdata *ppd = from_tasklet(ppd, t, in sdma_sw_clean_up_task() local 128 spin_lock_irqsave(&ppd->sdma_lock, flags); in sdma_sw_clean_up_task() 140 qib_sdma_make_progress(ppd); in sdma_sw_clean_up_task() 142 clear_sdma_activelist(ppd); in sdma_sw_clean_up_task() 148 ppd->sdma_descq_removed = ppd->sdma_descq_added; in sdma_sw_clean_up_task() 155 ppd->sdma_descq_tail = 0; in sdma_sw_clean_up_task() [all …]
|
H A D | qib_intr.c | 72 static void signal_ib_event(struct qib_pportdata *ppd, enum ib_event_type ev) in signal_ib_event() argument 75 struct qib_devdata *dd = ppd->dd; in signal_ib_event() 78 event.element.port_num = ppd->port; in signal_ib_event() 83 void qib_handle_e_ibstatuschanged(struct qib_pportdata *ppd, u64 ibcs) in qib_handle_e_ibstatuschanged() argument 85 struct qib_devdata *dd = ppd->dd; in qib_handle_e_ibstatuschanged() 104 (!ppd->lflags || (ppd->lflags & QIBL_LINKDOWN)) && in qib_handle_e_ibstatuschanged() 107 if (dd->f_ib_updown(ppd, 1, ibcs)) in qib_handle_e_ibstatuschanged() 109 } else if (ppd->lflags & (QIBL_LINKINIT | QIBL_LINKARMED | in qib_handle_e_ibstatuschanged() 113 dd->f_ib_updown(ppd, 0, ibcs)) in qib_handle_e_ibstatuschanged() 115 qib_set_uevent_bits(ppd, _QIB_EVENT_LINKDOWN_BIT); in qib_handle_e_ibstatuschanged() [all …]
|
H A D | qib_mad.c | 326 struct qib_pportdata *ppd = dd->pport + pidx; in subn_get_guidinfo() local 327 struct qib_ibport *ibp = &ppd->ibport_data; in subn_get_guidinfo() 328 __be64 g = ppd->guid; in subn_get_guidinfo() 346 static void set_link_width_enabled(struct qib_pportdata *ppd, u32 w) in set_link_width_enabled() argument 348 (void) ppd->dd->f_set_ib_cfg(ppd, QIB_IB_CFG_LWID_ENB, w); in set_link_width_enabled() 351 static void set_link_speed_enabled(struct qib_pportdata *ppd, u32 s) in set_link_speed_enabled() argument 353 (void) ppd->dd->f_set_ib_cfg(ppd, QIB_IB_CFG_SPD_ENB, s); in set_link_speed_enabled() 356 static int get_overrunthreshold(struct qib_pportdata *ppd) in get_overrunthreshold() argument 358 return ppd->dd->f_get_ib_cfg(ppd, QIB_IB_CFG_OVERRUN_THRESH); in get_overrunthreshold() 368 static int set_overrunthreshold(struct qib_pportdata *ppd, unsigned n) in set_overrunthreshold() argument [all …]
|
H A D | qib_qsfp.c | 47 static int qsfp_read(struct qib_pportdata *ppd, int addr, void *bp, int len) in qsfp_read() argument 49 struct qib_devdata *dd = ppd->dd; in qsfp_read() 73 if (ppd->hw_pidx) { in qsfp_read() 89 qib_dev_porterr(dd, ppd->port, in qsfp_read() 139 qib_dev_porterr(dd, ppd->port, "QSFP failed even retrying\n"); in qsfp_read() 141 qib_dev_porterr(dd, ppd->port, "QSFP retries: %d\n", pass); in qsfp_read() 157 static int qib_qsfp_write(struct qib_pportdata *ppd, int addr, void *bp, in qib_qsfp_write() argument 160 struct qib_devdata *dd = ppd->dd; in qib_qsfp_write() 183 if (ppd->hw_pidx) { in qib_qsfp_write() 198 qib_dev_porterr(dd, ppd->port, in qib_qsfp_write() [all …]
|
H A D | qib_init.c | 140 struct qib_pportdata *ppd; in qib_create_ctxts() local 146 ppd = dd->pport + (i % dd->num_pports); in qib_create_ctxts() 148 rcd = qib_create_ctxtdata(ppd, i, dd->assigned_node_id); in qib_create_ctxts() 165 struct qib_ctxtdata *qib_create_ctxtdata(struct qib_pportdata *ppd, u32 ctxt, in qib_create_ctxtdata() argument 168 struct qib_devdata *dd = ppd->dd; in qib_create_ctxtdata() 175 rcd->ppd = ppd; in qib_create_ctxtdata() 220 int qib_init_pportdata(struct qib_pportdata *ppd, struct qib_devdata *dd, in qib_init_pportdata() argument 225 ppd->dd = dd; in qib_init_pportdata() 226 ppd->hw_pidx = hw_pidx; in qib_init_pportdata() 227 ppd->port = port; /* IB port number, not index */ in qib_init_pportdata() [all …]
|
H A D | qib_verbs.c | 225 struct qib_ibport *ibp = &rcd->ppd->ibport_data; in qib_qp_rcv() 273 struct qib_pportdata *ppd = rcd->ppd; in qib_ib_rcv() local 274 struct qib_ibport *ibp = &ppd->ibport_data; in qib_ib_rcv() 276 struct qib_devdata *dd = ppd->dd; in qib_ib_rcv() 292 lid &= ~((1 << ppd->lmc) - 1); in qib_ib_rcv() 293 if (unlikely(lid != ppd->lid)) in qib_ib_rcv() 667 void qib_verbs_sdma_desc_avail(struct qib_pportdata *ppd, unsigned avail) in qib_verbs_sdma_desc_avail() argument 676 dev = &ppd->dd->verbs_dev; in qib_verbs_sdma_desc_avail() 682 if (qp->port_num != ppd->port) in qib_verbs_sdma_desc_avail() 778 struct qib_pportdata *ppd = ppd_from_ibp(ibp); in qib_verbs_send_dma() local [all …]
|
H A D | qib_tx.c | 105 dd->f_sendctrl(rcd->ppd, QIB_SENDCTRL_DISARM_BUF(i)); in qib_disarm_piobufs_ifneeded() 113 struct qib_pportdata *ppd; in is_sdma_buf() local 117 ppd = dd->pport + pidx; in is_sdma_buf() 118 if (i >= ppd->sdma_state.first_sendbuf && in is_sdma_buf() 119 i < ppd->sdma_state.last_sendbuf) in is_sdma_buf() 120 return ppd; in is_sdma_buf() 171 struct qib_pportdata *ppd, *pppd[QIB_MAX_IB_PORTS]; in qib_disarm_piobufs_set() local 185 ppd = is_sdma_buf(dd, i); in qib_disarm_piobufs_set() 186 if (ppd) { in qib_disarm_piobufs_set() 187 pppd[ppd->port] = ppd; in qib_disarm_piobufs_set() [all …]
|
H A D | qib_user_sdma.c | 798 struct qib_pportdata *ppd, in qib_user_sdma_queue_pkts() argument 900 ppd->ibmaxlen) { in qib_user_sdma_queue_pkts() 1055 static int qib_user_sdma_queue_clean(struct qib_pportdata *ppd, in qib_user_sdma_queue_clean() argument 1058 struct qib_devdata *dd = ppd->dd; in qib_user_sdma_queue_clean() 1077 s64 descd = ppd->sdma_descq_removed - pkt->added; in qib_user_sdma_queue_clean() 1120 static int qib_user_sdma_hwqueue_clean(struct qib_pportdata *ppd) in qib_user_sdma_hwqueue_clean() argument 1125 spin_lock_irqsave(&ppd->sdma_lock, flags); in qib_user_sdma_hwqueue_clean() 1126 ret = qib_sdma_make_progress(ppd); in qib_user_sdma_hwqueue_clean() 1127 spin_unlock_irqrestore(&ppd->sdma_lock, flags); in qib_user_sdma_hwqueue_clean() 1133 void qib_user_sdma_queue_drain(struct qib_pportdata *ppd, in qib_user_sdma_queue_drain() argument [all …]
|
H A D | qib_iba6120.c | 49 static void sendctrl_6120_mod(struct qib_pportdata *ppd, u32 op); 268 struct qib_pportdata *ppd; member 959 static void qib_disarm_6120_senderrbufs(struct qib_pportdata *ppd) in qib_disarm_6120_senderrbufs() argument 962 struct qib_devdata *dd = ppd->dd; in qib_disarm_6120_senderrbufs() 999 struct qib_pportdata *ppd = dd->pport; in handle_6120_errors() local 1016 qib_disarm_6120_senderrbufs(ppd); in handle_6120_errors() 1018 !(ppd->lflags & QIBL_LINKACTIVE)) { in handle_6120_errors() 1029 !(ppd->lflags & QIBL_LINKACTIVE)) { in handle_6120_errors() 1079 qib_handle_e_ibstatuschanged(ppd, ibcs); in handle_6120_errors() 1092 qib_dev_porterr(dd, ppd->port, "%s error\n", msg); in handle_6120_errors() [all …]
|
H A D | qib_file_ops.c | 105 struct qib_pportdata *ppd = rcd->ppd; in qib_get_base_info() local 161 kinfo->spi_port = ppd->port; in qib_get_base_info() 191 (char *) ppd->statusp - in qib_get_base_info() 241 kinfo->spi_mtu = ppd->ibmaxlen; /* maxlen, not ibmtu */ in qib_get_base_info() 574 struct qib_pportdata *ppd = rcd->ppd; in qib_set_part_key() local 602 for (i = 0; i < ARRAY_SIZE(ppd->pkeys); i++) { in qib_set_part_key() 603 if (!ppd->pkeys[i]) { in qib_set_part_key() 607 if (ppd->pkeys[i] == key) { in qib_set_part_key() 608 atomic_t *pkrefs = &ppd->pkeyrefs[i]; in qib_set_part_key() 620 if ((ppd->pkeys[i] & 0x7FFF) == lkey) in qib_set_part_key() [all …]
|
H A D | qib_ud.c | 54 struct qib_pportdata *ppd = ppd_from_ibp(ibp); in qib_ud_loopback() local 55 struct qib_devdata *dd = ppd->dd; in qib_ud_loopback() 85 ppd = ppd_from_ibp(ibp); in qib_ud_loopback() 95 lid = ppd->lid | (rdma_ah_get_path_bits(ah_attr) & in qib_ud_loopback() 96 ((1 << ppd->lmc) - 1)); in qib_ud_loopback() 208 wc.slid = ppd->lid | (rdma_ah_get_path_bits(ah_attr) & in qib_ud_loopback() 209 ((1 << ppd->lmc) - 1)); in qib_ud_loopback() 211 wc.dlid_path_bits = rdma_ah_get_dlid(ah_attr) & ((1 << ppd->lmc) - 1); in qib_ud_loopback() 236 struct qib_pportdata *ppd; in qib_make_ud_req() local 274 ppd = ppd_from_ibp(ibp); in qib_make_ud_req() [all …]
|
H A D | qib_qsfp.h | 177 struct qib_pportdata *ppd; member 184 extern int qib_refresh_qsfp_cache(struct qib_pportdata *ppd, 186 extern int qib_qsfp_mod_present(struct qib_pportdata *ppd);
|
/linux/drivers/infiniband/hw/hfi1/ |
H A D | platform.c | 61 struct hfi1_pportdata *ppd = dd->pport; in save_platform_config_fields() local 69 ppd->port_type = temp_dest >> in save_platform_config_fields() 76 ppd->local_atten = temp_dest >> in save_platform_config_fields() 83 ppd->remote_atten = temp_dest >> in save_platform_config_fields() 90 ppd->default_atten = temp_dest >> in save_platform_config_fields() 97 ppd->tx_preset_eq = (temp_scratch & TX_EQ_SMASK) >> TX_EQ_SHIFT; in save_platform_config_fields() 98 ppd->tx_preset_noeq = (temp_scratch & TX_NO_EQ_SMASK) >> TX_NO_EQ_SHIFT; in save_platform_config_fields() 99 ppd->rx_preset = (temp_scratch & RX_SMASK) >> RX_SHIFT; in save_platform_config_fields() 101 ppd->max_power_class = (temp_scratch & QSFP_MAX_POWER_SMASK) >> in save_platform_config_fields() 104 ppd->config_from_scratch = true; in save_platform_config_fields() [all …]
|
H A D | qsfp.c | 274 static int __i2c_write(struct hfi1_pportdata *ppd, u32 target, int i2c_addr, in __i2c_write() argument 277 struct hfi1_devdata *dd = ppd->dd; in __i2c_write() 293 int i2c_write(struct hfi1_pportdata *ppd, u32 target, int i2c_addr, int offset, in i2c_write() argument 298 if (!check_chip_resource(ppd->dd, i2c_target(target), __func__)) in i2c_write() 301 ret = __i2c_write(ppd, target, i2c_addr, offset, bp, len); in i2c_write() 313 static int __i2c_read(struct hfi1_pportdata *ppd, u32 target, int i2c_addr, in __i2c_read() argument 316 struct hfi1_devdata *dd = ppd->dd; in __i2c_read() 332 int i2c_read(struct hfi1_pportdata *ppd, u32 target, int i2c_addr, int offset, in i2c_read() argument 337 if (!check_chip_resource(ppd->dd, i2c_target(target), __func__)) in i2c_read() 340 ret = __i2c_read(ppd, target, i2c_addr, offset, bp, len); in i2c_read() [all …]
|
H A D | init.c | 86 struct hfi1_pportdata *ppd) in hfi1_create_kctxt() argument 94 ret = hfi1_create_ctxtdata(ppd, dd->node, &rcd); in hfi1_create_kctxt() 304 int hfi1_create_ctxtdata(struct hfi1_pportdata *ppd, int numa, in hfi1_create_ctxtdata() argument 307 struct hfi1_devdata *dd = ppd->dd; in hfi1_create_ctxtdata() 331 rcd->ppd = ppd; in hfi1_create_ctxtdata() 483 void set_link_ipg(struct hfi1_pportdata *ppd) in set_link_ipg() argument 485 struct hfi1_devdata *dd = ppd->dd; in set_link_ipg() 498 cc_state = get_cc_state(ppd); in set_link_ipg() 509 u16 ccti = ppd->cca_timer[i].ccti; in set_link_ipg() 523 current_egress_rate = active_egress_rate(ppd); in set_link_ipg() [all …]
|
H A D | mad.c | 61 struct hfi1_pportdata *ppd = ppd_from_ibp(ibp); in hfi1_lookup_pkey_value() local 63 if (pkey_idx < ARRAY_SIZE(ppd->pkeys)) in hfi1_lookup_pkey_value() 64 return ppd->pkeys[pkey_idx]; in hfi1_lookup_pkey_value() 256 struct hfi1_pportdata *ppd = ppd_from_ibp(ibp); in hfi1_create_qp0_ah() local 257 struct hfi1_devdata *dd = dd_from_ppd(ppd); in hfi1_create_qp0_ah() 258 u32 port_num = ppd->port; in hfi1_create_qp0_ah() 635 static void set_link_width_enabled(struct hfi1_pportdata *ppd, u32 w) in set_link_width_enabled() argument 637 (void)hfi1_set_ib_cfg(ppd, HFI1_IB_CFG_LWID_ENB, w); in set_link_width_enabled() 640 static void set_link_width_downgrade_enabled(struct hfi1_pportdata *ppd, u32 w) in set_link_width_downgrade_enabled() argument 642 (void)hfi1_set_ib_cfg(ppd, HFI1_IB_CFG_LWID_DG_ENB, w); in set_link_width_downgrade_enabled() [all …]
|
H A D | ud.c | 34 struct hfi1_pportdata *ppd; in ud_loopback() local 67 ppd = ppd_from_ibp(ibp); in ud_loopback() 75 slid = ppd->lid | (rdma_ah_get_path_bits(ah_attr) & in ud_loopback() 76 ((1 << ppd->lmc) - 1)); in ud_loopback() 77 if (unlikely(ingress_pkey_check(ppd, pkey, sc5, in ud_loopback() 168 cpu_to_be64(ppd->guids[HFI1_PORT_GUID_INDEX]); in ud_loopback() 207 wc.slid = (ppd->lid | (rdma_ah_get_path_bits(ah_attr) & in ud_loopback() 208 ((1 << ppd->lmc) - 1))) & U16_MAX; in ud_loopback() 213 wc.dlid_path_bits = rdma_ah_get_dlid(ah_attr) & ((1 << ppd->lmc) - 1); in ud_loopback() 271 struct hfi1_pportdata *ppd; in hfi1_make_ud_req_9B() local [all …]
|
H A D | driver.c | 132 struct hfi1_pportdata *ppd; in hfi1_count_active_units() local 141 ppd = dd->pport + pidx; in hfi1_count_active_units() 142 if (ppd->lid && ppd->linkup) { in hfi1_count_active_units() 207 static void rcv_hdrerr(struct hfi1_ctxtdata *rcd, struct hfi1_pportdata *ppd, in rcv_hdrerr() argument 214 struct hfi1_devdata *dd = ppd->dd; in rcv_hdrerr() 353 process_becn(ppd, sl, rlid, lqpn, rqpn, svc_type); in rcv_hdrerr() 405 struct hfi1_pportdata *ppd = ppd_from_ibp(ibp); in hfi1_process_ecn_slowpath() local 430 ppd->lid; in hfi1_process_ecn_slowpath() 487 process_becn(ppd, sl, rlid, lqpn, rqpn, svc_type); in hfi1_process_ecn_slowpath() 567 if (rcd->ppd->cc_prescan) \ [all …]
|
H A D | debugfs.c | 477 struct hfi1_pportdata *ppd; in portcntrs_debugfs_read() local 480 ppd = private2ppd(file); in portcntrs_debugfs_read() 481 avail = hfi1_read_portcntrs(ppd, NULL, &counters); in portcntrs_debugfs_read() 503 struct hfi1_pportdata *ppd; in asic_flags_read() local 512 ppd = private2ppd(file); in asic_flags_read() 513 dd = ppd->dd; in asic_flags_read() 552 struct hfi1_pportdata *ppd; in asic_flags_write() local 560 ppd = private2ppd(file); in asic_flags_write() 561 dd = ppd->dd; in asic_flags_write() 598 struct hfi1_pportdata *ppd = private2ppd(file); in dc8051_memory_read() local [all …]
|
H A D | qsfp.h | 171 struct hfi1_pportdata *ppd; member 183 int refresh_qsfp_cache(struct hfi1_pportdata *ppd, 186 int qsfp_mod_present(struct hfi1_pportdata *ppd); 190 int i2c_write(struct hfi1_pportdata *ppd, u32 target, int i2c_addr, 192 int i2c_read(struct hfi1_pportdata *ppd, u32 target, int i2c_addr, 194 int qsfp_write(struct hfi1_pportdata *ppd, u32 target, int addr, void *bp, 196 int qsfp_read(struct hfi1_pportdata *ppd, u32 target, int addr, void *bp, 198 int one_qsfp_write(struct hfi1_pportdata *ppd, u32 target, int addr, void *bp, 200 int one_qsfp_read(struct hfi1_pportdata *ppd, u32 target, int addr, void *bp,
|
H A D | verbs.c | 332 struct hfi1_pportdata *ppd = rcd->ppd; in hfi1_kdeth_eager_rcv() local 333 struct hfi1_ibport *ibp = &ppd->ibport_data; in hfi1_kdeth_eager_rcv() 334 struct rvt_dev_info *rdi = &ppd->dd->verbs_dev.rdi; in hfi1_kdeth_eager_rcv() 386 struct hfi1_pportdata *ppd = rcd->ppd; in hfi1_kdeth_expected_rcv() local 387 struct hfi1_ibport *ibp = &ppd->ibport_data; in hfi1_kdeth_expected_rcv() 388 struct rvt_dev_info *rdi = &ppd->dd->verbs_dev.rdi; in hfi1_kdeth_expected_rcv() 438 struct hfi1_pportdata *ppd = rcd->ppd; in hfi1_do_pkey_check() local 448 return ingress_pkey_check(ppd, pkey, packet->sc, in hfi1_do_pkey_check() 458 struct hfi1_pportdata *ppd = rcd->ppd; in hfi1_handle_packet() local 460 struct rvt_dev_info *rdi = &ppd->dd->verbs_dev.rdi; in hfi1_handle_packet() [all …]
|
H A D | ruc.c | 239 struct hfi1_pportdata *ppd = ppd_from_ibp(ibp); in hfi1_make_ruc_header_16B() local 290 if (!ppd->lid) in hfi1_make_ruc_header_16B() 293 slid = ppd->lid | in hfi1_make_ruc_header_16B() 295 ((1 << ppd->lmc) - 1)); in hfi1_make_ruc_header_16B() 436 workqueue_congested(ps->cpu, ps->ppd->hfi1_wq)) { in hfi1_schedule_send_yield() 457 this_cpu_inc(*ps->ppd->dd->send_schedule); in hfi1_schedule_send_yield() 463 this_cpu_inc(*ps->ppd->dd->send_schedule); in hfi1_schedule_send_yield() 501 ps.ppd = ppd_from_ibp(ps.ibp); in hfi1_do_send() 510 ~((1 << ps.ppd->lmc) - 1)) == in hfi1_do_send() 511 ps.ppd->lid)) { in hfi1_do_send() [all …]
|
H A D | qp.c | 204 struct hfi1_pportdata *ppd; in qp_set_16b() local 218 ppd = ppd_from_ibp(ibp); in qp_set_16b() 219 priv->hdr_type = hfi1_get_hdr_type(ppd->lid, &qp->remote_ah_attr); in qp_set_16b() 267 struct hfi1_pportdata *ppd; in hfi1_setup_wqe() local 288 ppd = ppd_from_ibp(ibp); in hfi1_setup_wqe() 289 dd = dd_from_ppd(ppd); in hfi1_setup_wqe() 328 struct hfi1_pportdata *ppd = ppd_from_ibp(ibp); in _hfi1_schedule_send() local 329 struct hfi1_devdata *dd = ppd->dd; in _hfi1_schedule_send() 334 return iowait_schedule(&priv->s_iowait, ppd->hfi1_wq, in _hfi1_schedule_send() 885 struct hfi1_pportdata *ppd = ppd_from_ibp(ibp); in hfi1_qp_iter_cb() local [all …]
|
/linux/tools/testing/selftests/net/ |
H A D | psock_tpacket.c | 224 union frame_map ppd; in walk_v1_v2_rx() local 241 ppd.raw = ring->rd[frame_num].iov_base; in walk_v1_v2_rx() 245 test_payload((uint8_t *) ppd.raw + ppd.v1->tp_h.tp_mac, in walk_v1_v2_rx() 246 ppd.v1->tp_h.tp_snaplen); in walk_v1_v2_rx() 247 total_bytes += ppd.v1->tp_h.tp_snaplen; in walk_v1_v2_rx() 251 test_payload((uint8_t *) ppd.raw + ppd.v2->tp_h.tp_mac, in walk_v1_v2_rx() 252 ppd.v2->tp_h.tp_snaplen); in walk_v1_v2_rx() 253 total_bytes += ppd.v2->tp_h.tp_snaplen; in walk_v1_v2_rx() 260 __v1_v2_rx_user_ready(ppd.raw, ring->version); in walk_v1_v2_rx() 374 union frame_map ppd; in walk_tx() local [all …]
|
/linux/drivers/net/ethernet/broadcom/genet/ |
H A D | bcmmii.c | 435 struct unimac_mdio_pdata *ppd) in bcmgenet_mii_pdata_init() argument 445 ppd->phy_mask = 1 << pd->phy_address; in bcmgenet_mii_pdata_init() 447 ppd->phy_mask = 0; in bcmgenet_mii_pdata_init() 467 struct unimac_mdio_pdata ppd; in bcmgenet_mii_register() local 478 memset(&ppd, 0, sizeof(ppd)); in bcmgenet_mii_register() 480 ppd.wait_func = bcmgenet_mii_wait; in bcmgenet_mii_register() 481 ppd.wait_func_data = priv; in bcmgenet_mii_register() 482 ppd.bus_name = "bcmgenet MII bus"; in bcmgenet_mii_register() 486 ppd.clk = priv->clk; in bcmgenet_mii_register() 510 bcmgenet_mii_pdata_init(priv, &ppd); in bcmgenet_mii_register() [all …]
|