net: thunderx: Cleanup receive buffer allocation

Get rid of unnecessary double pointer references and type casting
in receive buffer allocation code.

Signed-off-by: Sunil Goutham <sgoutham@cavium.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
Sunil Goutham 2017-05-02 18:36:53 +05:30 committed by David S. Miller
parent 0dada88b8c
commit 927987f39f

View File

@ -145,7 +145,7 @@ static struct pgcache *nicvf_alloc_page(struct nicvf *nic,
/* Allocate buffer for packet reception */ /* Allocate buffer for packet reception */
static inline int nicvf_alloc_rcv_buffer(struct nicvf *nic, struct rbdr *rbdr, static inline int nicvf_alloc_rcv_buffer(struct nicvf *nic, struct rbdr *rbdr,
gfp_t gfp, u32 buf_len, u64 **rbuf) gfp_t gfp, u32 buf_len, u64 *rbuf)
{ {
struct pgcache *pgcache = NULL; struct pgcache *pgcache = NULL;
@ -172,10 +172,10 @@ static inline int nicvf_alloc_rcv_buffer(struct nicvf *nic, struct rbdr *rbdr,
nic->rb_page = pgcache->page; nic->rb_page = pgcache->page;
ret: ret:
/* HW will ensure data coherency, CPU sync not required */ /* HW will ensure data coherency, CPU sync not required */
*rbuf = (u64 *)((u64)dma_map_page_attrs(&nic->pdev->dev, nic->rb_page, *rbuf = (u64)dma_map_page_attrs(&nic->pdev->dev, nic->rb_page,
nic->rb_page_offset, buf_len, nic->rb_page_offset, buf_len,
DMA_FROM_DEVICE, DMA_FROM_DEVICE,
DMA_ATTR_SKIP_CPU_SYNC)); DMA_ATTR_SKIP_CPU_SYNC);
if (dma_mapping_error(&nic->pdev->dev, (dma_addr_t)*rbuf)) { if (dma_mapping_error(&nic->pdev->dev, (dma_addr_t)*rbuf)) {
if (!nic->rb_page_offset) if (!nic->rb_page_offset)
__free_pages(nic->rb_page, 0); __free_pages(nic->rb_page, 0);
@ -212,7 +212,7 @@ static int nicvf_init_rbdr(struct nicvf *nic, struct rbdr *rbdr,
int ring_len, int buf_size) int ring_len, int buf_size)
{ {
int idx; int idx;
u64 *rbuf; u64 rbuf;
struct rbdr_entry_t *desc; struct rbdr_entry_t *desc;
int err; int err;
@ -257,7 +257,7 @@ static int nicvf_init_rbdr(struct nicvf *nic, struct rbdr *rbdr,
} }
desc = GET_RBDR_DESC(rbdr, idx); desc = GET_RBDR_DESC(rbdr, idx);
desc->buf_addr = (u64)rbuf & ~(NICVF_RCV_BUF_ALIGN_BYTES - 1); desc->buf_addr = rbuf & ~(NICVF_RCV_BUF_ALIGN_BYTES - 1);
} }
nicvf_get_page(nic); nicvf_get_page(nic);
@ -330,7 +330,7 @@ static void nicvf_refill_rbdr(struct nicvf *nic, gfp_t gfp)
int refill_rb_cnt; int refill_rb_cnt;
struct rbdr *rbdr; struct rbdr *rbdr;
struct rbdr_entry_t *desc; struct rbdr_entry_t *desc;
u64 *rbuf; u64 rbuf;
int new_rb = 0; int new_rb = 0;
refill: refill:
@ -364,7 +364,7 @@ static void nicvf_refill_rbdr(struct nicvf *nic, gfp_t gfp)
break; break;
desc = GET_RBDR_DESC(rbdr, tail); desc = GET_RBDR_DESC(rbdr, tail);
desc->buf_addr = (u64)rbuf & ~(NICVF_RCV_BUF_ALIGN_BYTES - 1); desc->buf_addr = rbuf & ~(NICVF_RCV_BUF_ALIGN_BYTES - 1);
refill_rb_cnt--; refill_rb_cnt--;
new_rb++; new_rb++;
} }