mirror of
git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2025-11-17 20:26:49 +00:00
net: mvpp2: Simplify BM pool buffers freeing
Now that all the users of mvpp2_bm_bufs_free() have been fixed, we can safely clean the function prototype. The function is always called to release all the buffers in a BM pool, and the number of buffers freed is not needed. Therefore, we change the return to a void, and remove the "num" parameter. This is a cosmetic change, to make the code slightly cleaner. Signed-off-by: Ezequiel Garcia <ezequiel.garcia@free-electrons.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
d74c96c10c
commit
7861f12bfd
1 changed files with 6 additions and 13 deletions
|
|
@ -3385,17 +3385,12 @@ static void mvpp2_bm_pool_bufsize_set(struct mvpp2 *priv,
|
||||||
mvpp2_write(priv, MVPP2_POOL_BUF_SIZE_REG(bm_pool->id), val);
|
mvpp2_write(priv, MVPP2_POOL_BUF_SIZE_REG(bm_pool->id), val);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Free "num" buffers from the pool */
|
/* Free all buffers from the pool */
|
||||||
static int mvpp2_bm_bufs_free(struct mvpp2 *priv,
|
static void mvpp2_bm_bufs_free(struct mvpp2 *priv, struct mvpp2_bm_pool *bm_pool)
|
||||||
struct mvpp2_bm_pool *bm_pool, int num)
|
|
||||||
{
|
{
|
||||||
int i;
|
int i;
|
||||||
|
|
||||||
if (num >= bm_pool->buf_num)
|
for (i = 0; i < bm_pool->buf_num; i++) {
|
||||||
/* Free all buffers from the pool */
|
|
||||||
num = bm_pool->buf_num;
|
|
||||||
|
|
||||||
for (i = 0; i < num; i++) {
|
|
||||||
u32 vaddr;
|
u32 vaddr;
|
||||||
|
|
||||||
/* Get buffer virtual adress (indirect access) */
|
/* Get buffer virtual adress (indirect access) */
|
||||||
|
|
@ -3408,7 +3403,6 @@ static int mvpp2_bm_bufs_free(struct mvpp2 *priv,
|
||||||
|
|
||||||
/* Update BM driver with number of buffers removed from pool */
|
/* Update BM driver with number of buffers removed from pool */
|
||||||
bm_pool->buf_num -= i;
|
bm_pool->buf_num -= i;
|
||||||
return i;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Cleanup pool */
|
/* Cleanup pool */
|
||||||
|
|
@ -3416,10 +3410,9 @@ static int mvpp2_bm_pool_destroy(struct platform_device *pdev,
|
||||||
struct mvpp2 *priv,
|
struct mvpp2 *priv,
|
||||||
struct mvpp2_bm_pool *bm_pool)
|
struct mvpp2_bm_pool *bm_pool)
|
||||||
{
|
{
|
||||||
int num;
|
|
||||||
u32 val;
|
u32 val;
|
||||||
|
|
||||||
num = mvpp2_bm_bufs_free(priv, bm_pool, bm_pool->buf_num);
|
mvpp2_bm_bufs_free(priv, bm_pool);
|
||||||
if (bm_pool->buf_num) {
|
if (bm_pool->buf_num) {
|
||||||
WARN(1, "cannot free all buffers in pool %d\n", bm_pool->id);
|
WARN(1, "cannot free all buffers in pool %d\n", bm_pool->id);
|
||||||
return 0;
|
return 0;
|
||||||
|
|
@ -3675,7 +3668,7 @@ mvpp2_bm_pool_use(struct mvpp2_port *port, int pool, enum mvpp2_bm_type type,
|
||||||
MVPP2_BM_LONG_BUF_NUM :
|
MVPP2_BM_LONG_BUF_NUM :
|
||||||
MVPP2_BM_SHORT_BUF_NUM;
|
MVPP2_BM_SHORT_BUF_NUM;
|
||||||
else
|
else
|
||||||
mvpp2_bm_bufs_free(port->priv, new_pool, pkts_num);
|
mvpp2_bm_bufs_free(port->priv, new_pool);
|
||||||
|
|
||||||
new_pool->pkt_size = pkt_size;
|
new_pool->pkt_size = pkt_size;
|
||||||
|
|
||||||
|
|
@ -3748,7 +3741,7 @@ static int mvpp2_bm_update_mtu(struct net_device *dev, int mtu)
|
||||||
int pkt_size = MVPP2_RX_PKT_SIZE(mtu);
|
int pkt_size = MVPP2_RX_PKT_SIZE(mtu);
|
||||||
|
|
||||||
/* Update BM pool with new buffer size */
|
/* Update BM pool with new buffer size */
|
||||||
mvpp2_bm_bufs_free(port->priv, port_pool, pkts_num);
|
mvpp2_bm_bufs_free(port->priv, port_pool);
|
||||||
if (port_pool->buf_num) {
|
if (port_pool->buf_num) {
|
||||||
WARN(1, "cannot free all buffers in pool %d\n", port_pool->id);
|
WARN(1, "cannot free all buffers in pool %d\n", port_pool->id);
|
||||||
return -EIO;
|
return -EIO;
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue