ethdev: add namespace
[dpdk.git] / drivers / net / mvpp2 / mrvl_tm.c
index e98f576..9fac80b 100644 (file)
@@ -57,7 +57,7 @@ mrvl_get_max_rate(struct rte_eth_dev *dev, uint64_t *rate)
 
        close(fd);
 
-       *rate = ethtool_cmd_speed(&edata) * 1000 * 1000 / 8;
+       *rate = (uint64_t)ethtool_cmd_speed(&edata) * 1000 * 1000 / 8;
 
        return 0;
 }
@@ -146,6 +146,11 @@ mrvl_node_type_get(struct rte_eth_dev *dev, uint32_t node_id, int *is_leaf,
        struct mrvl_priv *priv = dev->data->dev_private;
        struct mrvl_tm_node *node;
 
+       if (!priv->configured)
+               return -rte_tm_error_set(error, ENODEV,
+                                        RTE_TM_ERROR_TYPE_UNSPECIFIED,
+                                        NULL, "Port didn't configured\n");
+
        if (!is_leaf)
                return -rte_tm_error_set(error, EINVAL,
                                         RTE_TM_ERROR_TYPE_UNSPECIFIED,
@@ -177,6 +182,11 @@ mrvl_capabilities_get(struct rte_eth_dev *dev,
 {
        struct mrvl_priv *priv = dev->data->dev_private;
 
+       if (!priv->configured)
+               return -rte_tm_error_set(error, ENODEV,
+                                        RTE_TM_ERROR_TYPE_UNSPECIFIED,
+                                        NULL, "Port didn't configured\n");
+
        if (!cap)
                return -rte_tm_error_set(error, EINVAL,
                                         RTE_TM_ERROR_TYPE_UNSPECIFIED,
@@ -228,6 +238,11 @@ mrvl_level_capabilities_get(struct rte_eth_dev *dev,
 {
        struct mrvl_priv *priv = dev->data->dev_private;
 
+       if (!priv->configured)
+               return -rte_tm_error_set(error, ENODEV,
+                                        RTE_TM_ERROR_TYPE_UNSPECIFIED,
+                                        NULL, "Port didn't configured\n");
+
        if (!cap)
                return -rte_tm_error_set(error, EINVAL,
                                         RTE_TM_ERROR_TYPE_UNSPECIFIED,
@@ -294,6 +309,11 @@ mrvl_node_capabilities_get(struct rte_eth_dev *dev, uint32_t node_id,
        struct mrvl_priv *priv = dev->data->dev_private;
        struct mrvl_tm_node *node;
 
+       if (!priv->configured)
+               return -rte_tm_error_set(error, ENODEV,
+                                        RTE_TM_ERROR_TYPE_UNSPECIFIED,
+                                        NULL, "Port didn't configured\n");
+
        if (!cap)
                return -rte_tm_error_set(error, EINVAL,
                                         RTE_TM_ERROR_TYPE_UNSPECIFIED,
@@ -366,6 +386,11 @@ mrvl_shaper_profile_add(struct rte_eth_dev *dev, uint32_t shaper_profile_id,
        struct mrvl_priv *priv = dev->data->dev_private;
        struct mrvl_tm_shaper_profile *profile;
 
+       if (!priv->configured)
+               return -rte_tm_error_set(error, ENODEV,
+                                        RTE_TM_ERROR_TYPE_UNSPECIFIED,
+                                        NULL, "Port didn't configured\n");
+
        if (!params)
                return -rte_tm_error_set(error, EINVAL,
                                         RTE_TM_ERROR_TYPE_UNSPECIFIED,
@@ -434,6 +459,11 @@ mrvl_shaper_profile_delete(struct rte_eth_dev *dev, uint32_t shaper_profile_id,
        struct mrvl_priv *priv = dev->data->dev_private;
        struct mrvl_tm_shaper_profile *profile;
 
+       if (!priv->configured)
+               return -rte_tm_error_set(error, ENODEV,
+                                        RTE_TM_ERROR_TYPE_UNSPECIFIED,
+                                        NULL, "Port didn't configured\n");
+
        profile = mrvl_shaper_profile_from_id(priv, shaper_profile_id);
        if (!profile)
                return -rte_tm_error_set(error, ENODEV,
@@ -580,6 +610,11 @@ mrvl_node_add(struct rte_eth_dev *dev, uint32_t node_id,
        struct mrvl_tm_node *node, *parent = NULL;
        int ret;
 
+       if (!priv->configured)
+               return -rte_tm_error_set(error, ENODEV,
+                                        RTE_TM_ERROR_TYPE_UNSPECIFIED,
+                                        NULL, "Port didn't configured\n");
+
        if (priv->ppio)
                return -rte_tm_error_set(error, EPERM,
                                         RTE_TM_ERROR_TYPE_UNSPECIFIED,
@@ -665,6 +700,11 @@ mrvl_node_delete(struct rte_eth_dev *dev, uint32_t node_id,
        struct mrvl_priv *priv = dev->data->dev_private;
        struct mrvl_tm_node *node;
 
+       if (!priv->configured)
+               return -rte_tm_error_set(error, ENODEV,
+                                        RTE_TM_ERROR_TYPE_UNSPECIFIED,
+                                        NULL, "Port didn't configured\n");
+
        if (priv->ppio) {
                return -rte_tm_error_set(error, EPERM,
                                         RTE_TM_ERROR_TYPE_UNSPECIFIED,
@@ -729,6 +769,11 @@ mrvl_node_suspend(struct rte_eth_dev *dev, uint32_t node_id,
        struct mrvl_tm_node *node, *tmp;
        int ret;
 
+       if (!priv->configured)
+               return -rte_tm_error_set(error, ENODEV,
+                                        RTE_TM_ERROR_TYPE_UNSPECIFIED,
+                                        NULL, "Port didn't configured\n");
+
        node = mrvl_node_from_id(priv, node_id);
        if (!node)
                return -rte_tm_error_set(error, ENODEV,
@@ -770,6 +815,11 @@ mrvl_node_resume(struct rte_eth_dev *dev, uint32_t node_id,
        struct mrvl_tm_node *node;
        int ret;
 
+       if (!priv->configured)
+               return -rte_tm_error_set(error, ENODEV,
+                                        RTE_TM_ERROR_TYPE_UNSPECIFIED,
+                                        NULL, "Port didn't configured\n");
+
        node = mrvl_node_from_id(priv, node_id);
        if (!node)
                return -rte_tm_error_set(error, ENODEV,
@@ -806,6 +856,11 @@ mrvl_hierarchy_commit(struct rte_eth_dev *dev, int clear_on_fail,
        struct mrvl_tm_node *node;
        int ret;
 
+       if (!priv->configured)
+               return -rte_tm_error_set(error, ENODEV,
+                                        RTE_TM_ERROR_TYPE_UNSPECIFIED,
+                                        NULL, "Port didn't configured\n");
+
        if (priv->ppio) {
                ret = -rte_tm_error_set(error, EPERM,
                                        RTE_TM_ERROR_TYPE_UNSPECIFIED,
@@ -912,6 +967,11 @@ mrvl_node_stats_read(struct rte_eth_dev *dev, uint32_t node_id,
        struct mrvl_tm_node *node;
        int ret;
 
+       if (!priv->configured)
+               return -rte_tm_error_set(error, ENODEV,
+                                        RTE_TM_ERROR_TYPE_UNSPECIFIED,
+                                        NULL, "Port didn't configured\n");
+
        if (!priv->ppio) {
                return -rte_tm_error_set(error, EPERM,
                                         RTE_TM_ERROR_TYPE_UNSPECIFIED,
@@ -981,6 +1041,11 @@ mrvl_node_stats_update(struct rte_eth_dev *dev, uint32_t node_id,
        struct mrvl_priv *priv = dev->data->dev_private;
        struct mrvl_tm_node *node;
 
+       if (!priv->configured)
+               return -rte_tm_error_set(error, ENODEV,
+                                        RTE_TM_ERROR_TYPE_UNSPECIFIED,
+                                        NULL, "Port didn't configured\n");
+
        node = mrvl_node_from_id(priv, node_id);
        if (!node)
                return -rte_tm_error_set(error, ENODEV,