dpdk: code preparation for bumping to DPDK 22.11
[vpp.git] / src / plugins / dpdk / device / dpdk.h
index 6f3680c..3f02f20 100644 (file)
 #include <rte_ethdev.h>
 #include <rte_version.h>
 #include <rte_net.h>
+#if RTE_VERSION >= RTE_VERSION_NUM(22, 11, 0, 0)
+#include <rte_bus.h>
+#include <rte_pci.h>
+#include <ctype.h>
+
+#include <bus_driver.h>
+#include <bus_pci_driver.h>
+#include <bus_vmbus_driver.h>
+#endif
 
 #include <vnet/devices/devices.h>
 
@@ -94,6 +103,7 @@ typedef struct
 {
   CLIB_CACHE_LINE_ALIGN_MARK (cacheline0);
   clib_spinlock_t lock;
+  u32 queue_index;
 } dpdk_tx_queue_t;
 
 typedef struct
@@ -201,7 +211,7 @@ typedef struct
   u8 *default_mac_address;
 
   /* maximum supported max frame size */
-  u16 max_supported_frame_size;
+  u32 max_supported_frame_size;
 
   /* due to lack of API to get ethernet max_frame_size we store information
    * deducted from device info */
@@ -242,6 +252,7 @@ typedef struct
   };
   dpdk_device_addr_type_t dev_addr_type;
   u8 *name;
+  u8 *tag;
   u8 is_blacklisted;
 
 #define _(x) uword x;
@@ -264,6 +275,7 @@ typedef struct
   u8 **eal_init_args;
   u8 *eal_init_args_str;
   u8 *uio_driver_name;
+  u8 uio_bind_force;
   u8 enable_telemetry;
   u16 max_simd_bitwidth;