Lines Matching refs:pp
14 * @pp: &page_pool_params of the netdev to calculate the size for
21 static u32 libeth_rx_hw_len_mtu(const struct page_pool_params *pp, u32 max_len)
25 len = READ_ONCE(pp->netdev->mtu) + LIBETH_RX_LL_LEN;
28 pp->max_len);
35 * @pp: &page_pool_params of the netdev to calculate the size for
43 static u32 libeth_rx_hw_len_truesize(const struct page_pool_params *pp,
48 min = SKB_HEAD_ALIGN(pp->offset + LIBETH_RX_BUF_STRIDE);
52 len = SKB_WITH_OVERHEAD(truesize - pp->offset);
55 pp->max_len);
63 * @pp: &page_pool_params of the netdev
73 struct page_pool_params *pp)
75 pp->offset = fq->xdp ? LIBETH_XDP_HEADROOM : LIBETH_SKB_HEADROOM;
77 pp->max_len = LIBETH_RX_PAGE_LEN(pp->offset);
82 fq->buf_len = libeth_rx_hw_len_mtu(pp, fq->buf_len);
85 fq->buf_len = libeth_rx_hw_len_truesize(pp, fq->buf_len,
96 fq->truesize = roundup_pow_of_two(SKB_HEAD_ALIGN(pp->offset +
105 * @pp: &page_pool_params of the netdev
117 struct page_pool_params *pp)
121 pp->offset = 0;
122 pp->max_len = PAGE_SIZE << LIBETH_RX_PAGE_ORDER;
126 mtu = READ_ONCE(pp->netdev->mtu);
137 pp->max_len);
154 struct page_pool_params pp = {
167 pp.dma_dir = fq->xdp ? DMA_BIDIRECTIONAL : DMA_FROM_DEVICE;
170 ret = libeth_rx_page_pool_params(fq, &pp);
172 ret = libeth_rx_page_pool_params_zc(fq, &pp);
176 pool = page_pool_create(&pp);
191 fq->pp = pool;
210 xdp_unreg_page_pool(fq->pp);
212 page_pool_destroy(fq->pp);