[V1,2/3] framework/project_dpdk: replace i40evf with iavf

Message ID 20201211070828.24244-3-haiyangx.zhao@intel.com (mailing list archive)
State Accepted
Headers
Series replace i40evf with iavf in framework |

Commit Message

Zhao, HaiyangX Dec. 11, 2020, 7:08 a.m. UTC
  replace i40evf with iavf in both host and vm dut,
if the nic kernel driver is i40e.

Signed-off-by: Haiyang Zhao <haiyangx.zhao@intel.com>
---
 framework/project_dpdk.py | 11 +++++++++++
 1 file changed, 11 insertions(+)
  

Patch

diff --git a/framework/project_dpdk.py b/framework/project_dpdk.py
index 259282f4..a8a128ac 100644
--- a/framework/project_dpdk.py
+++ b/framework/project_dpdk.py
@@ -278,6 +278,17 @@  class DPDKdut(Dut):
         shared_lib_path = load_global_setting(HOST_SHARED_LIB_PATH)
         if use_shared_lib == 'true' and 'Virt' not in str(self):
             self.set_build_options({'RTE_BUILD_SHARED_LIB': 'y'})
+        kernel_driver = ''
+        if 'Virt' in str(self):
+            if self.host_dut.nic:
+                kernel_driver = self.host_dut.nic.default_driver
+        elif self.nic:
+            kernel_driver = self.nic.default_driver
+
+        if kernel_driver == 'i40e':
+            self.send_expect("sed -i '/{ RTE_PCI_DEVICE(IAVF_INTEL_VENDOR_ID, IAVF_DEV_ID_ADAPTIVE_VF) },/a { RTE_PCI_DEVICE(IAVF_INTEL_VENDOR_ID, IAVF_DEV_ID_VF) },' drivers/net/iavf/iavf_ethdev.c", "# ")
+            self.send_expect("sed -i -e '/I40E_DEV_ID_VF/s/0x154C/0x164C/g'  drivers/net/i40e/base/i40e_devids.h", "# ")
+
         build_type = load_global_setting(HOST_BUILD_TYPE_SETTING)
         build_install_dpdk = getattr(self, 'build_install_dpdk_%s_%s' % (self.get_os_type(), build_type))
         build_install_dpdk(target, extra_options)