wan/fsl_ucc_hdlc: use dma_zalloc_coherent instead of allocator/memset

Use dma_zalloc_coherent instead of dma_alloc_coherent
followed by memset 0.

Signed-off-by: YueHaibing <yuehaibing@huawei.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
YueHaibing 2018-06-04 21:07:59 +08:00 committed by David S. Miller
parent 828da43224
commit 1f55c2865c
1 changed files with 4 additions and 7 deletions

View File

@ -270,10 +270,10 @@ static int uhdlc_init(struct ucc_hdlc_private *priv)
iowrite16be(DEFAULT_HDLC_ADDR, &priv->ucc_pram->haddr4);
/* Get BD buffer */
bd_buffer = dma_alloc_coherent(priv->dev,
(RX_BD_RING_LEN + TX_BD_RING_LEN) *
MAX_RX_BUF_LENGTH,
&bd_dma_addr, GFP_KERNEL);
bd_buffer = dma_zalloc_coherent(priv->dev,
(RX_BD_RING_LEN + TX_BD_RING_LEN) *
MAX_RX_BUF_LENGTH,
&bd_dma_addr, GFP_KERNEL);
if (!bd_buffer) {
dev_err(priv->dev, "Could not allocate buffer descriptors\n");
@ -281,9 +281,6 @@ static int uhdlc_init(struct ucc_hdlc_private *priv)
goto free_tiptr;
}
memset(bd_buffer, 0, (RX_BD_RING_LEN + TX_BD_RING_LEN)
* MAX_RX_BUF_LENGTH);
priv->rx_buffer = bd_buffer;
priv->tx_buffer = bd_buffer + RX_BD_RING_LEN * MAX_RX_BUF_LENGTH;