Lines Matching refs:bm_pool
1278 unsigned long *bm_pool[MVPP2_BM_POOLS_NUM]; member
2575 struct mvpp2_bm_pool *bm_pool, int size) in mvpp2_bm_pool_create() argument
2585 bm_pool->virt_addr = buffer_loc.bm_pool[bm_pool->id]; in mvpp2_bm_pool_create()
2586 bm_pool->dma_addr = (dma_addr_t)buffer_loc.bm_pool[bm_pool->id]; in mvpp2_bm_pool_create()
2587 if (!bm_pool->virt_addr) in mvpp2_bm_pool_create()
2590 if (!IS_ALIGNED((unsigned long)bm_pool->virt_addr, in mvpp2_bm_pool_create()
2593 bm_pool->id, MVPP2_BM_POOL_PTR_ALIGN); in mvpp2_bm_pool_create()
2597 mvpp2_write(priv, MVPP2_BM_POOL_BASE_REG(bm_pool->id), in mvpp2_bm_pool_create()
2598 lower_32_bits(bm_pool->dma_addr)); in mvpp2_bm_pool_create()
2601 (upper_32_bits(bm_pool->dma_addr) & in mvpp2_bm_pool_create()
2603 mvpp2_write(priv, MVPP2_BM_POOL_SIZE_REG(bm_pool->id), size); in mvpp2_bm_pool_create()
2605 val = mvpp2_read(priv, MVPP2_BM_POOL_CTRL_REG(bm_pool->id)); in mvpp2_bm_pool_create()
2607 mvpp2_write(priv, MVPP2_BM_POOL_CTRL_REG(bm_pool->id), val); in mvpp2_bm_pool_create()
2609 bm_pool->type = MVPP2_BM_FREE; in mvpp2_bm_pool_create()
2610 bm_pool->size = size; in mvpp2_bm_pool_create()
2611 bm_pool->pkt_size = 0; in mvpp2_bm_pool_create()
2612 bm_pool->buf_num = 0; in mvpp2_bm_pool_create()
2619 struct mvpp2_bm_pool *bm_pool, in mvpp2_bm_pool_bufsize_set() argument
2624 bm_pool->buf_size = buf_size; in mvpp2_bm_pool_bufsize_set()
2627 mvpp2_write(priv, MVPP2_POOL_BUF_SIZE_REG(bm_pool->id), val); in mvpp2_bm_pool_bufsize_set()
2632 struct mvpp2_bm_pool *bm_pool) in mvpp2_bm_bufs_free() argument
2636 for (i = 0; i < bm_pool->buf_num; i++) { in mvpp2_bm_bufs_free()
2638 mvpp2_read(priv, MVPP2_BM_PHY_ALLOC_REG(bm_pool->id)); in mvpp2_bm_bufs_free()
2641 bm_pool->buf_num = 0; in mvpp2_bm_bufs_free()
2647 struct mvpp2_bm_pool *bm_pool) in mvpp2_bm_pool_destroy() argument
2651 mvpp2_bm_bufs_free(dev, priv, bm_pool); in mvpp2_bm_pool_destroy()
2652 if (bm_pool->buf_num) { in mvpp2_bm_pool_destroy()
2653 dev_err(dev, "cannot free all buffers in pool %d\n", bm_pool->id); in mvpp2_bm_pool_destroy()
2657 val = mvpp2_read(priv, MVPP2_BM_POOL_CTRL_REG(bm_pool->id)); in mvpp2_bm_pool_destroy()
2659 mvpp2_write(priv, MVPP2_BM_POOL_CTRL_REG(bm_pool->id), val); in mvpp2_bm_pool_destroy()
2668 struct mvpp2_bm_pool *bm_pool; in mvpp2_bm_pools_init() local
2673 bm_pool = &priv->bm_pools[i]; in mvpp2_bm_pools_init()
2674 bm_pool->id = i; in mvpp2_bm_pools_init()
2675 err = mvpp2_bm_pool_create(dev, priv, bm_pool, size); in mvpp2_bm_pools_init()
2678 mvpp2_bm_pool_bufsize_set(priv, bm_pool, RX_BUFFER_SIZE); in mvpp2_bm_pools_init()
2791 struct mvpp2_bm_pool *bm_pool, int buf_num) in mvpp2_bm_bufs_add() argument
2796 (buf_num + bm_pool->buf_num > bm_pool->size)) { in mvpp2_bm_bufs_add()
2799 buf_num, bm_pool->id); in mvpp2_bm_bufs_add()
2804 mvpp2_bm_pool_put(port, bm_pool->id, in mvpp2_bm_bufs_add()
2811 bm_pool->buf_num += i; in mvpp2_bm_bufs_add()
4470 struct mvpp2_bm_pool *bm_pool, in mvpp2_rx_refill() argument
5189 struct mvpp2_bm_pool *bm_pool; in mvpp2_recv() local
5215 bm_pool = &port->priv->bm_pools[pool]; in mvpp2_recv()
5229 err = mvpp2_rx_refill(port, bm_pool, bm, dma_addr); in mvpp2_recv()
5387 buffer_loc.bm_pool[i] = in mvpp2_base_probe()