dring 715 drivers/block/sunvdc.c void *dring; dring 722 drivers/block/sunvdc.c dring = ldc_alloc_exp_dring(port->vio.lp, len, dring 727 drivers/block/sunvdc.c if (IS_ERR(dring)) dring 728 drivers/block/sunvdc.c return PTR_ERR(dring); dring 730 drivers/block/sunvdc.c dr->base = dring; dring 606 drivers/net/ethernet/socionext/netsec.c struct netsec_desc_ring *dring, u16 idx, dring 609 drivers/net/ethernet/socionext/netsec.c struct netsec_de *de = dring->vaddr + DESC_SZ * idx; dring 623 drivers/net/ethernet/socionext/netsec.c dring->desc[idx].dma_addr = desc->dma_addr; dring 624 drivers/net/ethernet/socionext/netsec.c dring->desc[idx].addr = desc->addr; dring 625 drivers/net/ethernet/socionext/netsec.c dring->desc[idx].len = desc->len; dring 630 drivers/net/ethernet/socionext/netsec.c struct netsec_desc_ring *dring = &priv->desc_ring[NETSEC_RING_TX]; dring 632 drivers/net/ethernet/socionext/netsec.c int tail = dring->tail; dring 636 drivers/net/ethernet/socionext/netsec.c spin_lock(&dring->lock); dring 639 drivers/net/ethernet/socionext/netsec.c entry = dring->vaddr + DESC_SZ * tail; dring 646 drivers/net/ethernet/socionext/netsec.c desc = &dring->desc[tail]; dring 677 drivers/net/ethernet/socionext/netsec.c dring->tail = (tail + 1) % DESC_NUM; dring 679 drivers/net/ethernet/socionext/netsec.c tail = dring->tail; dring 680 drivers/net/ethernet/socionext/netsec.c entry = dring->vaddr + DESC_SZ * tail; dring 684 drivers/net/ethernet/socionext/netsec.c spin_unlock(&dring->lock); dring 721 drivers/net/ethernet/socionext/netsec.c struct netsec_desc_ring *dring = &priv->desc_ring[NETSEC_RING_RX]; dring 725 drivers/net/ethernet/socionext/netsec.c page = page_pool_dev_alloc_pages(dring->page_pool); dring 738 drivers/net/ethernet/socionext/netsec.c dma_dir = page_pool_get_dma_dir(dring->page_pool); dring 746 drivers/net/ethernet/socionext/netsec.c struct netsec_desc_ring *dring = &priv->desc_ring[NETSEC_RING_RX]; dring 750 drivers/net/ethernet/socionext/netsec.c netsec_set_rx_de(priv, dring, idx, &dring->desc[idx]); dring 775 drivers/net/ethernet/socionext/netsec.c struct netsec_desc_ring *dring, dring 779 drivers/net/ethernet/socionext/netsec.c int idx = dring->head; dring 783 drivers/net/ethernet/socionext/netsec.c de = dring->vaddr + (DESC_SZ * idx); dring 801 drivers/net/ethernet/socionext/netsec.c dring->desc[idx] = *desc; dring 803 drivers/net/ethernet/socionext/netsec.c dring->desc[idx].skb = buf; dring 806 drivers/net/ethernet/socionext/netsec.c dring->desc[idx].xdpf = buf; dring 809 drivers/net/ethernet/socionext/netsec.c dring->head = (dring->head + 1) % DESC_NUM; dring 926 drivers/net/ethernet/socionext/netsec.c struct netsec_desc_ring *dring = &priv->desc_ring[NETSEC_RING_RX]; dring 937 drivers/net/ethernet/socionext/netsec.c dma_dir = page_pool_get_dma_dir(dring->page_pool); dring 940 drivers/net/ethernet/socionext/netsec.c u16 idx = dring->tail; dring 941 drivers/net/ethernet/socionext/netsec.c struct netsec_de *de = dring->vaddr + (DESC_SZ * idx); dring 942 drivers/net/ethernet/socionext/netsec.c struct netsec_desc *desc = &dring->desc[idx]; dring 973 drivers/net/ethernet/socionext/netsec.c dring->tail = (dring->tail + 1) % DESC_NUM; dring 997 drivers/net/ethernet/socionext/netsec.c xdp.rxq = &dring->xdp_rxq; dring 1016 drivers/net/ethernet/socionext/netsec.c page_pool_recycle_direct(dring->page_pool, page); dring 1021 drivers/net/ethernet/socionext/netsec.c page_pool_release_page(dring->page_pool, page); dring 1044 drivers/net/ethernet/socionext/netsec.c dring->tail = (dring->tail + 1) % DESC_NUM; dring 1076 drivers/net/ethernet/socionext/netsec.c static int netsec_desc_used(struct netsec_desc_ring *dring) dring 1080 drivers/net/ethernet/socionext/netsec.c if (dring->head >= dring->tail) dring 1081 drivers/net/ethernet/socionext/netsec.c used = dring->head - dring->tail; dring 1083 drivers/net/ethernet/socionext/netsec.c used = dring->head + DESC_NUM - dring->tail; dring 1090 drivers/net/ethernet/socionext/netsec.c struct netsec_desc_ring *dring = &priv->desc_ring[NETSEC_RING_TX]; dring 1101 drivers/net/ethernet/socionext/netsec.c used = netsec_desc_used(dring); dring 1115 drivers/net/ethernet/socionext/netsec.c struct netsec_desc_ring *dring = &priv->desc_ring[NETSEC_RING_TX]; dring 1121 drivers/net/ethernet/socionext/netsec.c spin_lock_bh(&dring->lock); dring 1122 drivers/net/ethernet/socionext/netsec.c filled = netsec_desc_used(dring); dring 1124 drivers/net/ethernet/socionext/netsec.c spin_unlock_bh(&dring->lock); dring 1157 drivers/net/ethernet/socionext/netsec.c spin_unlock_bh(&dring->lock); dring 1171 drivers/net/ethernet/socionext/netsec.c netsec_set_tx_de(priv, dring, &tx_ctrl, &tx_desc, skb); dring 1172 drivers/net/ethernet/socionext/netsec.c spin_unlock_bh(&dring->lock); dring 1180 drivers/net/ethernet/socionext/netsec.c struct netsec_desc_ring *dring = &priv->desc_ring[id]; dring 1184 drivers/net/ethernet/socionext/netsec.c if (!dring->vaddr || !dring->desc) dring 1187 drivers/net/ethernet/socionext/netsec.c desc = &dring->desc[idx]; dring 1194 drivers/net/ethernet/socionext/netsec.c page_pool_put_page(dring->page_pool, page, false); dring 1204 drivers/net/ethernet/socionext/netsec.c if (xdp_rxq_info_is_reg(&dring->xdp_rxq)) dring 1205 drivers/net/ethernet/socionext/netsec.c xdp_rxq_info_unreg(&dring->xdp_rxq); dring 1206 drivers/net/ethernet/socionext/netsec.c page_pool_destroy(dring->page_pool); dring 1209 drivers/net/ethernet/socionext/netsec.c memset(dring->desc, 0, sizeof(struct netsec_desc) * DESC_NUM); dring 1210 drivers/net/ethernet/socionext/netsec.c memset(dring->vaddr, 0, DESC_SZ * DESC_NUM); dring 1212 drivers/net/ethernet/socionext/netsec.c dring->head = 0; dring 1213 drivers/net/ethernet/socionext/netsec.c dring->tail = 0; dring 1221 drivers/net/ethernet/socionext/netsec.c struct netsec_desc_ring *dring = &priv->desc_ring[id]; dring 1223 drivers/net/ethernet/socionext/netsec.c if (dring->vaddr) { dring 1225 drivers/net/ethernet/socionext/netsec.c dring->vaddr, dring->desc_dma); dring 1226 drivers/net/ethernet/socionext/netsec.c dring->vaddr = NULL; dring 1229 drivers/net/ethernet/socionext/netsec.c kfree(dring->desc); dring 1230 drivers/net/ethernet/socionext/netsec.c dring->desc = NULL; dring 1235 drivers/net/ethernet/socionext/netsec.c struct netsec_desc_ring *dring = &priv->desc_ring[id]; dring 1237 drivers/net/ethernet/socionext/netsec.c dring->vaddr = dma_alloc_coherent(priv->dev, DESC_SZ * DESC_NUM, dring 1238 drivers/net/ethernet/socionext/netsec.c &dring->desc_dma, GFP_KERNEL); dring 1239 drivers/net/ethernet/socionext/netsec.c if (!dring->vaddr) dring 1242 drivers/net/ethernet/socionext/netsec.c dring->desc = kcalloc(DESC_NUM, sizeof(*dring->desc), GFP_KERNEL); dring 1243 drivers/net/ethernet/socionext/netsec.c if (!dring->desc) dring 1255 drivers/net/ethernet/socionext/netsec.c struct netsec_desc_ring *dring = &priv->desc_ring[NETSEC_RING_TX]; dring 1261 drivers/net/ethernet/socionext/netsec.c de = dring->vaddr + (DESC_SZ * i); dring 1272 drivers/net/ethernet/socionext/netsec.c struct netsec_desc_ring *dring = &priv->desc_ring[NETSEC_RING_RX]; dring 1285 drivers/net/ethernet/socionext/netsec.c dring->page_pool = page_pool_create(&pp_params); dring 1286 drivers/net/ethernet/socionext/netsec.c if (IS_ERR(dring->page_pool)) { dring 1287 drivers/net/ethernet/socionext/netsec.c err = PTR_ERR(dring->page_pool); dring 1288 drivers/net/ethernet/socionext/netsec.c dring->page_pool = NULL; dring 1292 drivers/net/ethernet/socionext/netsec.c err = xdp_rxq_info_reg(&dring->xdp_rxq, priv->ndev, 0); dring 1296 drivers/net/ethernet/socionext/netsec.c err = xdp_rxq_info_reg_mem_model(&dring->xdp_rxq, MEM_TYPE_PAGE_POOL, dring 1297 drivers/net/ethernet/socionext/netsec.c dring->page_pool); dring 1302 drivers/net/ethernet/socionext/netsec.c struct netsec_desc *desc = &dring->desc[i]; dring 2297 drivers/net/ethernet/sun/cassini.c int i, dring; dring 2359 drivers/net/ethernet/sun/cassini.c dring = CAS_VAL(RX_INDEX_RING, i); dring 2361 drivers/net/ethernet/sun/cassini.c cas_post_page(cp, dring, i); dring 2366 drivers/net/ethernet/sun/cassini.c dring = CAS_VAL(RX_INDEX_RING, i); dring 2368 drivers/net/ethernet/sun/cassini.c cas_post_page(cp, dring, i); dring 2373 drivers/net/ethernet/sun/cassini.c dring = CAS_VAL(RX_INDEX_RING, i); dring 2375 drivers/net/ethernet/sun/cassini.c cas_post_page(cp, dring, i); dring 1740 drivers/net/ethernet/sun/sunvnet_common.c void *dring; dring 1751 drivers/net/ethernet/sun/sunvnet_common.c dring = ldc_alloc_exp_dring(port->vio.lp, len, dring 1756 drivers/net/ethernet/sun/sunvnet_common.c if (IS_ERR(dring)) { dring 1757 drivers/net/ethernet/sun/sunvnet_common.c err = PTR_ERR(dring); dring 1761 drivers/net/ethernet/sun/sunvnet_common.c dr->base = dring;