|
@@ -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;
|
|
|
|