net/txgbe: add multi-speed link setup
[dpdk.git] / drivers / bus / fslmc / fslmc_bus.c
index ac46eb4..db93669 100644 (file)
@@ -14,6 +14,7 @@
 #include <rte_devargs.h>
 #include <rte_memcpy.h>
 #include <rte_ethdev_driver.h>
+#include <rte_mbuf_dyn.h>
 
 #include <rte_fslmc.h>
 #include <fslmc_vfio.h>
 
 #include <dpaax_iova_table.h>
 
-int dpaa2_logtype_bus;
-
 #define VFIO_IOMMU_GROUP_PATH "/sys/kernel/iommu_groups"
 #define FSLMC_BUS_NAME fslmc
 
 struct rte_fslmc_bus rte_fslmc_bus;
 uint8_t dpaa2_virt_mode;
 
+#define DPAA2_SEQN_DYNFIELD_NAME "dpaa2_seqn_dynfield"
+int dpaa2_seqn_dynfield_offset = -1;
+
 uint32_t
 rte_fslmc_get_device_count(enum rte_dpaa2_dev_type device_type)
 {
@@ -37,8 +39,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)
 {
@@ -378,9 +378,22 @@ rte_fslmc_probe(void)
        struct rte_dpaa2_device *dev;
        struct rte_dpaa2_driver *drv;
 
+       static const struct rte_mbuf_dynfield dpaa2_seqn_dynfield_desc = {
+               .name = DPAA2_SEQN_DYNFIELD_NAME,
+               .size = sizeof(dpaa2_seqn_t),
+               .align = __alignof__(dpaa2_seqn_t),
+       };
+
        if (TAILQ_EMPTY(&rte_fslmc_bus.device_list))
                return 0;
 
+       dpaa2_seqn_dynfield_offset =
+               rte_mbuf_dynfield_register(&dpaa2_seqn_dynfield_desc);
+       if (dpaa2_seqn_dynfield_offset < 0) {
+               DPAA2_BUS_ERR("Failed to register mbuf field for dpaa sequence number");
+               return 0;
+       }
+
        ret = fslmc_vfio_setup_group();
        if (ret) {
                DPAA2_BUS_ERR("Unable to setup VFIO %d", ret);
@@ -654,11 +667,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);