/Linux-v6.1/drivers/net/wwan/t7xx/ |
D | t7xx_hif_dpmaif_rx.c | 119 struct dpmaif_rx_queue *rxq = &dpmaif_ctrl->rxq[q_num]; in t7xx_dpmaif_update_bat_wr_idx() local 120 struct dpmaif_bat_request *bat_req = rxq->bat_req; in t7xx_dpmaif_update_bat_wr_idx() 123 if (!rxq->que_started) { in t7xx_dpmaif_update_bat_wr_idx() 124 dev_err(dpmaif_ctrl->dev, "RX queue %d has not been started\n", rxq->index); in t7xx_dpmaif_update_bat_wr_idx() 271 static int t7xx_dpmaifq_release_pit_entry(struct dpmaif_rx_queue *rxq, in t7xx_dpmaifq_release_pit_entry() argument 274 struct dpmaif_hw_info *hw_info = &rxq->dpmaif_ctrl->hw_info; in t7xx_dpmaifq_release_pit_entry() 278 if (!rxq->que_started) in t7xx_dpmaifq_release_pit_entry() 281 if (rel_entry_num >= rxq->pit_size_cnt) { in t7xx_dpmaifq_release_pit_entry() 282 dev_err(rxq->dpmaif_ctrl->dev, "Invalid PIT release index\n"); in t7xx_dpmaifq_release_pit_entry() 286 old_rel_idx = rxq->pit_release_rd_idx; in t7xx_dpmaifq_release_pit_entry() [all …]
|
D | t7xx_hif_dpmaif.c | 218 rx_q = &dpmaif_ctrl->rxq[rx_idx]; in t7xx_dpmaif_rxtx_sw_allocs() 258 rx_q = &dpmaif_ctrl->rxq[i]; in t7xx_dpmaif_rxtx_sw_allocs() 285 rx_q = &dpmaif_ctrl->rxq[i]; in t7xx_dpmaif_sw_release() 294 struct dpmaif_rx_queue *rxq; in t7xx_dpmaif_start() local 305 rxq = &dpmaif_ctrl->rxq[i]; in t7xx_dpmaif_start() 306 rxq->que_started = true; in t7xx_dpmaif_start() 307 rxq->index = i; in t7xx_dpmaif_start() 308 rxq->budget = rxq->bat_req->bat_size_cnt - 1; in t7xx_dpmaif_start() 310 hw_init_para.pkt_bat_base_addr[i] = rxq->bat_req->bat_bus_addr; in t7xx_dpmaif_start() 311 hw_init_para.pkt_bat_size_cnt[i] = rxq->bat_req->bat_size_cnt; in t7xx_dpmaif_start() [all …]
|
/Linux-v6.1/drivers/net/ethernet/huawei/hinic/ |
D | hinic_rx.c | 53 static void hinic_rxq_clean_stats(struct hinic_rxq *rxq) in hinic_rxq_clean_stats() argument 55 struct hinic_rxq_stats *rxq_stats = &rxq->rxq_stats; in hinic_rxq_clean_stats() 71 void hinic_rxq_get_stats(struct hinic_rxq *rxq, struct hinic_rxq_stats *stats) in hinic_rxq_get_stats() argument 73 struct hinic_rxq_stats *rxq_stats = &rxq->rxq_stats; in hinic_rxq_get_stats() 91 static void rxq_stats_init(struct hinic_rxq *rxq) in rxq_stats_init() argument 93 struct hinic_rxq_stats *rxq_stats = &rxq->rxq_stats; in rxq_stats_init() 96 hinic_rxq_clean_stats(rxq); in rxq_stats_init() 99 static void rx_csum(struct hinic_rxq *rxq, u32 status, in rx_csum() argument 102 struct net_device *netdev = rxq->netdev; in rx_csum() 115 rxq->rxq_stats.csum_errors++; in rx_csum() [all …]
|
D | hinic_rx.h | 44 void hinic_rxq_get_stats(struct hinic_rxq *rxq, struct hinic_rxq_stats *stats); 46 int hinic_init_rxq(struct hinic_rxq *rxq, struct hinic_rq *rq, 49 void hinic_clean_rxq(struct hinic_rxq *rxq);
|
/Linux-v6.1/drivers/net/wireless/intel/iwlwifi/pcie/ |
D | rx.c | 119 static int iwl_rxq_space(const struct iwl_rxq *rxq) in iwl_rxq_space() argument 122 WARN_ON(rxq->queue_size & (rxq->queue_size - 1)); in iwl_rxq_space() 130 return (rxq->read - rxq->write - 1) & (rxq->queue_size - 1); in iwl_rxq_space() 167 struct iwl_rxq *rxq) in iwl_pcie_rxq_inc_wr_ptr() argument 171 lockdep_assert_held(&rxq->lock); in iwl_pcie_rxq_inc_wr_ptr() 187 rxq->need_update = true; in iwl_pcie_rxq_inc_wr_ptr() 192 rxq->write_actual = round_down(rxq->write, 8); in iwl_pcie_rxq_inc_wr_ptr() 194 iwl_write32(trans, FH_RSCSR_CHNL0_WPTR, rxq->write_actual); in iwl_pcie_rxq_inc_wr_ptr() 196 iwl_write32(trans, HBUS_TARG_WRPTR, rxq->write_actual | in iwl_pcie_rxq_inc_wr_ptr() 197 HBUS_TARG_WRPTR_RX_Q(rxq->id)); in iwl_pcie_rxq_inc_wr_ptr() [all …]
|
/Linux-v6.1/drivers/infiniband/hw/hfi1/ |
D | netdev_rx.c | 194 rx->rxq = kcalloc_node(rx->num_rx_q, sizeof(*rx->rxq), in hfi1_netdev_rxq_init() 197 if (!rx->rxq) { in hfi1_netdev_rxq_init() 203 struct hfi1_netdev_rxq *rxq = &rx->rxq[i]; in hfi1_netdev_rxq_init() local 205 rc = hfi1_netdev_allot_ctxt(rx, &rxq->rcd); in hfi1_netdev_rxq_init() 209 hfi1_rcd_get(rxq->rcd); in hfi1_netdev_rxq_init() 210 rxq->rx = rx; in hfi1_netdev_rxq_init() 211 rxq->rcd->napi = &rxq->napi; in hfi1_netdev_rxq_init() 213 i, rxq->rcd->ctxt); in hfi1_netdev_rxq_init() 218 set_bit(NAPI_STATE_NO_BUSY_POLL, &rxq->napi.state); in hfi1_netdev_rxq_init() 219 netif_napi_add_weight(dev, &rxq->napi, hfi1_netdev_rx_napi, 64); in hfi1_netdev_rxq_init() [all …]
|
D | vnic_main.c | 292 static inline int hfi1_vnic_decap_skb(struct hfi1_vnic_rx_queue *rxq, in hfi1_vnic_decap_skb() argument 295 struct hfi1_vnic_vport_info *vinfo = rxq->vinfo; in hfi1_vnic_decap_skb() 303 vinfo->stats[rxq->idx].rx_oversize++; in hfi1_vnic_decap_skb() 305 vinfo->stats[rxq->idx].rx_runt++; in hfi1_vnic_decap_skb() 336 struct hfi1_vnic_rx_queue *rxq; in hfi1_vnic_bypass_rcv() local 370 rxq = &vinfo->rxq[q_idx]; in hfi1_vnic_bypass_rcv() 389 rc = hfi1_vnic_decap_skb(rxq, skb); in hfi1_vnic_bypass_rcv() 392 hfi1_vnic_update_rx_counters(vinfo, rxq->idx, skb, rc); in hfi1_vnic_bypass_rcv() 399 skb->protocol = eth_type_trans(skb, rxq->netdev); in hfi1_vnic_bypass_rcv() 401 napi_gro_receive(&rxq->napi, skb); in hfi1_vnic_bypass_rcv() [all …]
|
/Linux-v6.1/drivers/net/ethernet/qlogic/qede/ |
D | qede_fp.c | 27 int qede_alloc_rx_buffer(struct qede_rx_queue *rxq, bool allow_lazy) in qede_alloc_rx_buffer() argument 38 if (allow_lazy && likely(rxq->filled_buffers > 12)) { in qede_alloc_rx_buffer() 39 rxq->filled_buffers--; in qede_alloc_rx_buffer() 50 mapping = dma_map_page(rxq->dev, data, 0, in qede_alloc_rx_buffer() 51 PAGE_SIZE, rxq->data_direction); in qede_alloc_rx_buffer() 52 if (unlikely(dma_mapping_error(rxq->dev, mapping))) { in qede_alloc_rx_buffer() 57 sw_rx_data = &rxq->sw_rx_ring[rxq->sw_rx_prod & NUM_RX_BDS_MAX]; in qede_alloc_rx_buffer() 63 rx_bd = (struct eth_rx_bd *)qed_chain_produce(&rxq->rx_bd_ring); in qede_alloc_rx_buffer() 67 rxq->rx_headroom); in qede_alloc_rx_buffer() 69 rxq->sw_rx_prod++; in qede_alloc_rx_buffer() [all …]
|
D | qede_main.c | 945 if (fp->rxq && xdp_rxq_info_is_reg(&fp->rxq->xdp_rxq)) in qede_free_fp_array() 946 xdp_rxq_info_unreg(&fp->rxq->xdp_rxq); in qede_free_fp_array() 947 kfree(fp->rxq); in qede_free_fp_array() 1016 fp->rxq = kzalloc(sizeof(*fp->rxq), GFP_KERNEL); in qede_alloc_fp_array() 1017 if (!fp->rxq) in qede_alloc_fp_array() 1484 struct qede_rx_queue *rxq) in qede_free_rx_buffers() argument 1488 for (i = rxq->sw_rx_cons; i != rxq->sw_rx_prod; i++) { in qede_free_rx_buffers() 1492 rx_buf = &rxq->sw_rx_ring[i & NUM_RX_BDS_MAX]; in qede_free_rx_buffers() 1496 rx_buf->mapping, PAGE_SIZE, rxq->data_direction); in qede_free_rx_buffers() 1503 static void qede_free_mem_rxq(struct qede_dev *edev, struct qede_rx_queue *rxq) in qede_free_mem_rxq() argument [all …]
|
/Linux-v6.1/drivers/net/ethernet/microsoft/mana/ |
D | mana_en.c | 871 static int mana_fence_rq(struct mana_port_context *apc, struct mana_rxq *rxq) in mana_fence_rq() argument 877 init_completion(&rxq->fence_event); in mana_fence_rq() 881 req.wq_obj_handle = rxq->rxobj; in mana_fence_rq() 887 rxq->rxq_idx, err); in mana_fence_rq() 894 rxq->rxq_idx, err, resp.hdr.status); in mana_fence_rq() 901 if (wait_for_completion_timeout(&rxq->fence_event, 10 * HZ) == 0) { in mana_fence_rq() 903 rxq->rxq_idx); in mana_fence_rq() 913 struct mana_rxq *rxq; in mana_fence_rqs() local 917 rxq = apc->rxqs[rxq_idx]; in mana_fence_rqs() 918 err = mana_fence_rq(apc, rxq); in mana_fence_rqs() [all …]
|
D | mana_bpf.c | 80 u32 mana_run_xdp(struct net_device *ndev, struct mana_rxq *rxq, in mana_run_xdp() argument 88 prog = rcu_dereference(rxq->bpf_prog); in mana_run_xdp() 93 xdp_init_buff(xdp, PAGE_SIZE, &rxq->xdp_rxq); in mana_run_xdp() 98 rx_stats = &rxq->stats; in mana_run_xdp() 107 rxq->xdp_rc = xdp_do_redirect(ndev, xdp, prog); in mana_run_xdp() 108 if (!rxq->xdp_rc) { in mana_run_xdp() 109 rxq->xdp_flush = true; in mana_run_xdp()
|
/Linux-v6.1/drivers/net/ethernet/marvell/ |
D | mvneta.c | 109 #define MVNETA_VLAN_PRIO_RXQ_MAP(prio, rxq) ((rxq) << ((prio) * 3)) argument 134 #define MVNETA_CPU_RXQ_ACCESS(rxq) BIT(rxq) argument 851 struct mvneta_rx_queue *rxq, in mvneta_rxq_non_occup_desc_add() argument 858 mvreg_write(pp, MVNETA_RXQ_STATUS_UPDATE_REG(rxq->id), in mvneta_rxq_non_occup_desc_add() 864 mvreg_write(pp, MVNETA_RXQ_STATUS_UPDATE_REG(rxq->id), in mvneta_rxq_non_occup_desc_add() 870 struct mvneta_rx_queue *rxq) in mvneta_rxq_busy_desc_num_get() argument 874 val = mvreg_read(pp, MVNETA_RXQ_STATUS_REG(rxq->id)); in mvneta_rxq_busy_desc_num_get() 882 struct mvneta_rx_queue *rxq, in mvneta_rxq_desc_num_update() argument 890 mvreg_write(pp, MVNETA_RXQ_STATUS_UPDATE_REG(rxq->id), val); in mvneta_rxq_desc_num_update() 910 mvreg_write(pp, MVNETA_RXQ_STATUS_UPDATE_REG(rxq->id), val); in mvneta_rxq_desc_num_update() [all …]
|
D | mv643xx_eth.c | 398 struct rx_queue rxq[8]; member 440 static struct mv643xx_eth_private *rxq_to_mp(struct rx_queue *rxq) in rxq_to_mp() argument 442 return container_of(rxq, struct mv643xx_eth_private, rxq[rxq->index]); in rxq_to_mp() 450 static void rxq_enable(struct rx_queue *rxq) in rxq_enable() argument 452 struct mv643xx_eth_private *mp = rxq_to_mp(rxq); in rxq_enable() 453 wrlp(mp, RXQ_COMMAND, 1 << rxq->index); in rxq_enable() 456 static void rxq_disable(struct rx_queue *rxq) in rxq_disable() argument 458 struct mv643xx_eth_private *mp = rxq_to_mp(rxq); in rxq_disable() 459 u8 mask = 1 << rxq->index; in rxq_disable() 505 static int rxq_process(struct rx_queue *rxq, int budget) in rxq_process() argument [all …]
|
/Linux-v6.1/drivers/net/ethernet/atheros/alx/ |
D | main.c | 74 struct alx_rx_queue *rxq = alx->qnapi[0]->rxq; in alx_refill_rx_ring() local 80 next = cur = rxq->write_idx; in alx_refill_rx_ring() 83 cur_buf = &rxq->bufs[cur]; in alx_refill_rx_ring() 85 while (!cur_buf->skb && next != rxq->read_idx) { in alx_refill_rx_ring() 86 struct alx_rfd *rfd = &rxq->rfd[cur]; in alx_refill_rx_ring() 128 cur_buf = &rxq->bufs[cur]; in alx_refill_rx_ring() 135 rxq->write_idx = cur; in alx_refill_rx_ring() 217 static int alx_clean_rx_irq(struct alx_rx_queue *rxq, int budget) in alx_clean_rx_irq() argument 226 alx = netdev_priv(rxq->netdev); in alx_clean_rx_irq() 229 rrd = &rxq->rrd[rxq->rrd_read_idx]; in alx_clean_rx_irq() [all …]
|
/Linux-v6.1/drivers/net/ethernet/hisilicon/ |
D | hisi_femac.c | 121 struct hisi_femac_queue rxq; member 212 struct hisi_femac_queue *rxq = &priv->rxq; in hisi_femac_rx_refill() local 218 pos = rxq->head; in hisi_femac_rx_refill() 220 if (!CIRC_SPACE(pos, rxq->tail, rxq->num)) in hisi_femac_rx_refill() 222 if (unlikely(rxq->skb[pos])) { in hisi_femac_rx_refill() 224 pos, rxq->skb[pos]); in hisi_femac_rx_refill() 237 rxq->dma_phys[pos] = addr; in hisi_femac_rx_refill() 238 rxq->skb[pos] = skb; in hisi_femac_rx_refill() 240 pos = (pos + 1) % rxq->num; in hisi_femac_rx_refill() 242 rxq->head = pos; in hisi_femac_rx_refill() [all …]
|
/Linux-v6.1/drivers/net/wireless/intel/iwlegacy/ |
D | 3945-mac.c | 929 struct il_rx_queue *rxq = &il->rxq; in il3945_rx_queue_restock() local 934 spin_lock_irqsave(&rxq->lock, flags); in il3945_rx_queue_restock() 935 while (il_rx_queue_space(rxq) > 0 && rxq->free_count) { in il3945_rx_queue_restock() 937 element = rxq->rx_free.next; in il3945_rx_queue_restock() 942 rxq->bd[rxq->write] = in il3945_rx_queue_restock() 944 rxq->queue[rxq->write] = rxb; in il3945_rx_queue_restock() 945 rxq->write = (rxq->write + 1) & RX_QUEUE_MASK; in il3945_rx_queue_restock() 946 rxq->free_count--; in il3945_rx_queue_restock() 948 spin_unlock_irqrestore(&rxq->lock, flags); in il3945_rx_queue_restock() 951 if (rxq->free_count <= RX_LOW_WATERMARK) in il3945_rx_queue_restock() [all …]
|
/Linux-v6.1/samples/bpf/ |
D | xdp_rxq_info_user.c | 203 struct record *rxq; member 243 rec->rxq = alloc_record_per_rxq(); in alloc_stats_record() 245 rec->rxq[i].cpu = alloc_record_per_cpu(); in alloc_stats_record() 257 free(r->rxq[i].cpu); in free_stats_record() 259 free(r->rxq); in free_stats_record() 303 map_collect_percpu(fd, i, &rec->rxq[i]); in stats_collect() 352 int rxq; in stats_print() local 392 for (rxq = 0; rxq < nr_rxqs; rxq++) { in stats_print() 396 int rxq_ = rxq; in stats_print() 402 rec = &stats_rec->rxq[rxq]; in stats_print() [all …]
|
/Linux-v6.1/drivers/net/ethernet/fungible/funeth/ |
D | funeth_trace.h | 75 TP_PROTO(const struct funeth_rxq *rxq, 81 TP_ARGS(rxq, num_rqes, pkt_len, hash, cls_vec), 90 __string(devname, rxq->netdev->name) 94 __entry->qidx = rxq->qidx; 95 __entry->cq_head = rxq->cq_head; 100 __assign_str(devname, rxq->netdev->name);
|
/Linux-v6.1/drivers/vhost/ |
D | net.c | 126 struct vhost_net_buf rxq; member 151 static void *vhost_net_buf_get_ptr(struct vhost_net_buf *rxq) in vhost_net_buf_get_ptr() argument 153 if (rxq->tail != rxq->head) in vhost_net_buf_get_ptr() 154 return rxq->queue[rxq->head]; in vhost_net_buf_get_ptr() 159 static int vhost_net_buf_get_size(struct vhost_net_buf *rxq) in vhost_net_buf_get_size() argument 161 return rxq->tail - rxq->head; in vhost_net_buf_get_size() 164 static int vhost_net_buf_is_empty(struct vhost_net_buf *rxq) in vhost_net_buf_is_empty() argument 166 return rxq->tail == rxq->head; in vhost_net_buf_is_empty() 169 static void *vhost_net_buf_consume(struct vhost_net_buf *rxq) in vhost_net_buf_consume() argument 171 void *ret = vhost_net_buf_get_ptr(rxq); in vhost_net_buf_consume() [all …]
|
/Linux-v6.1/drivers/net/ethernet/chelsio/cxgb4vf/ |
D | cxgb4vf_main.c | 383 int rxq, msi, err; in request_msix_queue_irqs() local 397 for_each_ethrxq(s, rxq) { in request_msix_queue_irqs() 401 &s->ethrxq[rxq].rspq); in request_msix_queue_irqs() 409 while (--rxq >= 0) in request_msix_queue_irqs() 410 free_irq(adapter->msix_info[--msi].vec, &s->ethrxq[rxq].rspq); in request_msix_queue_irqs() 421 int rxq, msi; in free_msix_queue_irqs() local 425 for_each_ethrxq(s, rxq) in free_msix_queue_irqs() 427 &s->ethrxq[rxq].rspq); in free_msix_queue_irqs() 452 int rxq; in enable_rx() local 455 for_each_ethrxq(s, rxq) in enable_rx() [all …]
|
D | sge.c | 1564 static void do_gro(struct sge_eth_rxq *rxq, const struct pkt_gl *gl, in do_gro() argument 1567 struct adapter *adapter = rxq->rspq.adapter; in do_gro() 1573 skb = napi_get_frags(&rxq->rspq.napi); in do_gro() 1576 rxq->stats.rx_drops++; in do_gro() 1585 skb_record_rx_queue(skb, rxq->rspq.idx); in do_gro() 1591 rxq->stats.vlan_ex++; in do_gro() 1593 ret = napi_gro_frags(&rxq->rspq.napi); in do_gro() 1596 rxq->stats.lro_pkts++; in do_gro() 1598 rxq->stats.lro_merged++; in do_gro() 1599 rxq->stats.pkts++; in do_gro() [all …]
|
/Linux-v6.1/drivers/vdpa/vdpa_sim/ |
D | vdpa_sim_net.c | 150 struct vdpasim_virtqueue *rxq = &vdpasim->vqs[0]; in vdpasim_net_work() local 165 if (!txq->ready || !rxq->ready) in vdpasim_net_work() 183 err = vringh_getdesc_iotlb(&rxq->vring, NULL, &rxq->in_iov, in vdpasim_net_work() 184 &rxq->head, GFP_ATOMIC); in vdpasim_net_work() 190 write = vringh_iov_push_iotlb(&rxq->vring, &rxq->in_iov, in vdpasim_net_work() 196 vdpasim_net_complete(rxq, write); in vdpasim_net_work()
|
/Linux-v6.1/drivers/net/ethernet/alacritech/ |
D | slicoss.c | 120 static unsigned int slic_get_free_rx_descs(struct slic_rx_queue *rxq) in slic_get_free_rx_descs() argument 122 return slic_get_free_queue_descs(rxq->put_idx, rxq->done_idx, rxq->len); in slic_get_free_rx_descs() 396 struct slic_rx_queue *rxq = &sdev->rxq; in slic_refill_rx_queue() local 405 while (slic_get_free_rx_descs(rxq) > SLIC_MAX_REQ_RX_DESCS) { in slic_refill_rx_queue() 437 buff = &rxq->rxbuffs[rxq->put_idx]; in slic_refill_rx_queue() 446 rxq->put_idx = slic_next_queue_idx(rxq->put_idx, rxq->len); in slic_refill_rx_queue() 549 struct slic_rx_queue *rxq = &sdev->rxq; in slic_handle_receive() local 559 while (todo && (rxq->done_idx != rxq->put_idx)) { in slic_handle_receive() 560 buff = &rxq->rxbuffs[rxq->done_idx]; in slic_handle_receive() 613 rxq->done_idx = slic_next_queue_idx(rxq->done_idx, rxq->len); in slic_handle_receive() [all …]
|
/Linux-v6.1/tools/testing/selftests/bpf/progs/ |
D | test_xdp_bpf2bpf.c | 29 struct xdp_rxq_info *rxq; member 51 meta.ifindex = xdp->rxq->dev->ifindex; in BPF_PROG() 58 test_result_fentry = xdp->rxq->dev->ifindex; in BPF_PROG()
|
/Linux-v6.1/drivers/net/ethernet/freescale/ |
D | fec_main.c | 429 struct fec_enet_priv_rx_q *rxq, int size) in fec_enet_create_page_pool() argument 443 rxq->page_pool = page_pool_create(&pp_params); in fec_enet_create_page_pool() 444 if (IS_ERR(rxq->page_pool)) { in fec_enet_create_page_pool() 445 err = PTR_ERR(rxq->page_pool); in fec_enet_create_page_pool() 446 rxq->page_pool = NULL; in fec_enet_create_page_pool() 450 err = xdp_rxq_info_reg(&rxq->xdp_rxq, fep->netdev, rxq->id, 0); in fec_enet_create_page_pool() 454 err = xdp_rxq_info_reg_mem_model(&rxq->xdp_rxq, MEM_TYPE_PAGE_POOL, in fec_enet_create_page_pool() 455 rxq->page_pool); in fec_enet_create_page_pool() 462 xdp_rxq_info_unreg(&rxq->xdp_rxq); in fec_enet_create_page_pool() 464 page_pool_destroy(rxq->page_pool); in fec_enet_create_page_pool() [all …]
|