Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
[firefly-linux-kernel-4.4.55.git] / drivers / net / ethernet / xilinx / xilinx_axienet_main.c
index 397d4a6a1f30a89223d9543893c9eb5e99218d74..24748e8367a1ad346a245bc890eb27bc8b659b0a 100644 (file)
@@ -204,31 +204,23 @@ static int axienet_dma_bd_init(struct net_device *ndev)
        lp->tx_bd_v = dma_alloc_coherent(ndev->dev.parent,
                                         sizeof(*lp->tx_bd_v) * TX_BD_NUM,
                                         &lp->tx_bd_p,
-                                        GFP_KERNEL);
-       if (!lp->tx_bd_v) {
-               dev_err(&ndev->dev, "unable to allocate DMA Tx buffer "
-                       "descriptors");
+                                        GFP_KERNEL | __GFP_ZERO);
+       if (!lp->tx_bd_v)
                goto out;
-       }
 
        lp->rx_bd_v = dma_alloc_coherent(ndev->dev.parent,
                                         sizeof(*lp->rx_bd_v) * RX_BD_NUM,
                                         &lp->rx_bd_p,
-                                        GFP_KERNEL);
-       if (!lp->rx_bd_v) {
-               dev_err(&ndev->dev, "unable to allocate DMA Rx buffer "
-                       "descriptors");
+                                        GFP_KERNEL | __GFP_ZERO);
+       if (!lp->rx_bd_v)
                goto out;
-       }
 
-       memset(lp->tx_bd_v, 0, sizeof(*lp->tx_bd_v) * TX_BD_NUM);
        for (i = 0; i < TX_BD_NUM; i++) {
                lp->tx_bd_v[i].next = lp->tx_bd_p +
                                      sizeof(*lp->tx_bd_v) *
                                      ((i + 1) % TX_BD_NUM);
        }
 
-       memset(lp->rx_bd_v, 0, sizeof(*lp->rx_bd_v) * RX_BD_NUM);
        for (i = 0; i < RX_BD_NUM; i++) {
                lp->rx_bd_v[i].next = lp->rx_bd_p +
                                      sizeof(*lp->rx_bd_v) *