crypto/octeontx2: support security session create
[dpdk.git] / drivers / bus / fslmc / fslmc_bus.c
index 4116552..beb3dd0 100644 (file)
@@ -21,8 +21,6 @@
 
 #include <dpaax_iova_table.h>
 
-int dpaa2_logtype_bus;
-
 #define VFIO_IOMMU_GROUP_PATH "/sys/kernel/iommu_groups"
 #define FSLMC_BUS_NAME fslmc
 
@@ -37,8 +35,6 @@ rte_fslmc_get_device_count(enum rte_dpaa2_dev_type device_type)
        return rte_fslmc_bus.device_count[device_type];
 }
 
-RTE_DEFINE_PER_LCORE(struct dpaa2_portal_dqrr, dpaa2_held_bufs);
-
 static void
 cleanup_fslmc_device_list(void)
 {
@@ -115,14 +111,9 @@ static void
 dump_device_list(void)
 {
        struct rte_dpaa2_device *dev;
-       uint32_t global_log_level;
-       int local_log_level;
 
        /* Only if the log level has been set to Debugging, print list */
-       global_log_level = rte_log_get_global_level();
-       local_log_level = rte_log_get_level(dpaa2_logtype_bus);
-       if (global_log_level == RTE_LOG_DEBUG ||
-           local_log_level == RTE_LOG_DEBUG) {
+       if (rte_log_can_log(dpaa2_logtype_bus, RTE_LOG_DEBUG)) {
                DPAA2_BUS_LOG(DEBUG, "List of devices scanned on bus:");
                TAILQ_FOREACH(dev, &rte_fslmc_bus.device_list, next) {
                        DPAA2_BUS_LOG(DEBUG, "\t\t%s", dev->device.name);
@@ -235,8 +226,9 @@ rte_fslmc_parse(const char *name, void *addr)
 {
        uint16_t dev_id;
        char *t_ptr;
-       char *sep = NULL;
+       const char *sep;
        uint8_t sep_exists = 0;
+       int ret = -1;
 
        DPAA2_BUS_DEBUG("Parsing dev=(%s)", name);
 
@@ -266,10 +258,11 @@ rte_fslmc_parse(const char *name, void *addr)
                } else {
                        DPAA2_BUS_DEBUG("Invalid device for matching (%s).",
                                        name);
+                       ret = -EINVAL;
                        goto err_out;
                }
        } else
-               sep = strdup(name);
+               sep = name;
 
 jump_out:
        /* Validate device name */
@@ -283,23 +276,23 @@ jump_out:
            strncmp("dpdmai", sep, 6) &&
            strncmp("dpdmux", sep, 6)) {
                DPAA2_BUS_DEBUG("Unknown or unsupported device (%s)", sep);
+               ret = -EINVAL;
                goto err_out;
        }
 
        t_ptr = strchr(sep, '.');
        if (!t_ptr || sscanf(t_ptr + 1, "%hu", &dev_id) != 1) {
                DPAA2_BUS_ERR("Missing device id in device name (%s)", sep);
+               ret = -EINVAL;
                goto err_out;
        }
 
        if (addr)
                strcpy(addr, sep);
 
-       return 0;
+       ret = 0;
 err_out:
-       if (!sep_exists && sep)
-               free(sep);
-       return -EINVAL;
+       return ret;
 }
 
 static int
@@ -606,6 +599,11 @@ fslmc_bus_dev_iterate(const void *start, const char *str,
        struct rte_dpaa2_device *dev;
        char *dup, *dev_name = NULL;
 
+       if (str == NULL) {
+               DPAA2_BUS_DEBUG("No device string");
+               return NULL;
+       }
+
        /* Expectation is that device would be name=device_name */
        if (strncmp(str, "name=", 5) != 0) {
                DPAA2_BUS_DEBUG("Invalid device string (%s)\n", str);
@@ -652,11 +650,4 @@ struct rte_fslmc_bus rte_fslmc_bus = {
 };
 
 RTE_REGISTER_BUS(FSLMC_BUS_NAME, rte_fslmc_bus.bus);
-
-RTE_INIT(fslmc_init_log)
-{
-       /* Bus level logs */
-       dpaa2_logtype_bus = rte_log_register("bus.fslmc");
-       if (dpaa2_logtype_bus >= 0)
-               rte_log_set_level(dpaa2_logtype_bus, RTE_LOG_NOTICE);
-}
+RTE_LOG_REGISTER(dpaa2_logtype_bus, bus.fslmc, NOTICE);