]> git.karo-electronics.de Git - karo-tx-linux.git/blobdiff - drivers/staging/fsl-dpaa2/ethernet/dpaa2-eth.c
Merge tag 'libnvdimm-for-4.13' of git://git.kernel.org/pub/scm/linux/kernel/git/nvdim...
[karo-tx-linux.git] / drivers / staging / fsl-dpaa2 / ethernet / dpaa2-eth.c
index e674a01ce09db60cd67d5196c7e065778331b788..b9a0a315e6fb31fc0804d146f1c9797220aa7669 100644 (file)
@@ -40,7 +40,6 @@
 #include <linux/iommu.h>
 
 #include "../../fsl-mc/include/mc.h"
-#include "../../fsl-mc/include/mc-sys.h"
 #include "dpaa2-eth.h"
 
 /* CREATE_TRACE_POINTS only needs to be defined once. Other dpa files
@@ -2232,6 +2231,7 @@ static int netdev_init(struct net_device *net_dev)
        struct device *dev = net_dev->dev.parent;
        struct dpaa2_eth_priv *priv = netdev_priv(net_dev);
        u8 bcast_addr[ETH_ALEN];
+       u8 num_queues;
        int err;
 
        net_dev->netdev_ops = &dpaa2_eth_ops;
@@ -2257,6 +2257,19 @@ static int netdev_init(struct net_device *net_dev)
        net_dev->min_mtu = 68;
        net_dev->max_mtu = DPAA2_ETH_MAX_MTU;
 
+       /* Set actual number of queues in the net device */
+       num_queues = dpaa2_eth_queue_count(priv);
+       err = netif_set_real_num_tx_queues(net_dev, num_queues);
+       if (err) {
+               dev_err(dev, "netif_set_real_num_tx_queues() failed\n");
+               return err;
+       }
+       err = netif_set_real_num_rx_queues(net_dev, num_queues);
+       if (err) {
+               dev_err(dev, "netif_set_real_num_rx_queues() failed\n");
+               return err;
+       }
+
        /* Our .ndo_init will be called herein */
        err = register_netdev(net_dev);
        if (err < 0) {