pci: add option to force uio binding
[vpp.git] / src / plugins / dpdk / device / init.c
index 23a26a4..83ce2dc 100644 (file)
@@ -626,7 +626,8 @@ dpdk_bind_devices_to_uio (dpdk_config_main_t * conf)
             d->device_class == PCI_CLASS_PROCESSOR_CO &&
             (d->device_id == 0x0443 || d->device_id == 0x18a1 ||
              d->device_id == 0x19e3 || d->device_id == 0x37c9 ||
-             d->device_id == 0x6f55 || d->device_id == 0x4941))
+             d->device_id == 0x6f55 || d->device_id == 0x18ef ||
+             d->device_id == 0x4941))
       ;
     /* Cisco VIC */
     else if (d->vendor_id == 0x1137 &&
@@ -680,7 +681,8 @@ dpdk_bind_devices_to_uio (dpdk_config_main_t * conf)
         continue;
       }
 
-    error = vlib_pci_bind_to_uio (vm, addr, (char *) conf->uio_driver_name);
+    error = vlib_pci_bind_to_uio (vm, addr, (char *) conf->uio_driver_name,
+                                 conf->uio_bind_force);
 
     if (error)
       {
@@ -1088,6 +1090,8 @@ dpdk_config (vlib_main_t * vm, unformat_input_t * input)
        }
       else if (unformat (input, "uio-driver %s", &conf->uio_driver_name))
        ;
+      else if (unformat (input, "uio-bind-force"))
+       conf->uio_bind_force = 1;
       else if (unformat (input, "socket-mem %s", &socket_mem))
        ;
       else if (unformat (input, "no-pci"))