ethdev: change promiscuous callbacks to return status
[dpdk.git] / drivers / net / mvpp2 / mrvl_ethdev.c
index 345c244..7babc89 100644 (file)
@@ -994,22 +994,29 @@ mrvl_link_update(struct rte_eth_dev *dev, int wait_to_complete __rte_unused)
  *
  * @param dev
  *   Pointer to Ethernet device structure.
+ *
+ * @return
+ *   0 on success, negative error value otherwise.
  */
-static void
+static int
 mrvl_promiscuous_enable(struct rte_eth_dev *dev)
 {
        struct mrvl_priv *priv = dev->data->dev_private;
        int ret;
 
        if (!priv->ppio)
-               return;
+               return 0;
 
        if (priv->isolated)
-               return;
+               return 0;
 
        ret = pp2_ppio_set_promisc(priv->ppio, 1);
-       if (ret)
+       if (ret) {
                MRVL_LOG(ERR, "Failed to enable promiscuous mode");
+               return -EAGAIN;
+       }
+
+       return 0;
 }
 
 /**
@@ -1040,19 +1047,26 @@ mrvl_allmulticast_enable(struct rte_eth_dev *dev)
  *
  * @param dev
  *   Pointer to Ethernet device structure.
+ *
+ * @return
+ *   0 on success, negative error value otherwise.
  */
-static void
+static int
 mrvl_promiscuous_disable(struct rte_eth_dev *dev)
 {
        struct mrvl_priv *priv = dev->data->dev_private;
        int ret;
 
        if (!priv->ppio)
-               return;
+               return 0;
 
        ret = pp2_ppio_set_promisc(priv->ppio, 0);
-       if (ret)
+       if (ret) {
                MRVL_LOG(ERR, "Failed to disable promiscuous mode");
+               return -EAGAIN;
+       }
+
+       return 0;
 }
 
 /**