[dts] [ PATCH V2] update framework for support fortville NIC test.

Xu, HuilongX huilongx.xu at intel.com
Tue Jan 27 07:53:50 CET 2015


Hi Michael,
Thanks  a lot for your comments.
You can check my V2 patch.

> +                elif pci_id in ('8086:1583','8086:1584','8086:1572'):
> +                    if not os.path.exists("/sys/bus/pci/drivers/i40e/"+"0000:"+pci_bus):

This code is only support check the driver in tester, can't check dut, so it's a bug for check the driver status.
Maybe we can send a new patch for fix check  driver stats. It need include all driver eg, ixgeb, igb,i40e,e1000...

Thanks  a lot

-----Original Message-----
From: Qiu, Michael 
Sent: Tuesday, January 27, 2015 2:41 PM
To: Xu, HuilongX; dts at dpdk.org
Subject: Re: [dts] [ PATCH V2] update framework for support fortville NIC test.

Hi, huilong

Have you seen my comments with your v1 patch?

Also you'd better to make update patch within the original thread.

Thanks,
Michael
On 1/27/2015 1:54 PM, huilongx.xu wrote:
> execution_fortville.cfg is the test case list for fortville NIC
>
> crb.py, add fortville NIC kernel driver(i40e) in dts
>
> settings.py, add fortville NIC info in dts
>
> test_case.py, insmod and used i40e for fortvill NIC
>
> Signed-off-by: huilongx.xu <huilongx.xu at intel.com>
> ---
>  execution_fortville.cfg |   21 +++++++++++++++++++++
>  framework/crb.py        |    9 ++++++++-
>  framework/settings.py   |    6 ++++++
>  framework/test_case.py  |    4 ++++
>  4 files changed, 39 insertions(+), 1 deletions(-)
>  create mode 100644 execution_fortville.cfg
>
> diff --git a/execution_fortville.cfg b/execution_fortville.cfg
> new file mode 100644
> index 0000000..15f2ccf
> --- /dev/null
> +++ b/execution_fortville.cfg
> @@ -0,0 +1,21 @@
> +[Execution1]
> +crbs=<CRB IP Address>
> +drivername=<driver name igb_uio or vfio-pci>
> +test_suites=
> +    cmdline,
> +    hello_world,
> +    multiprocess,
> +    blacklist
> +targets=
> +    x86_64-native-linuxapp-gcc
> +parameters=nic_type=fortville_eagle:func=true
> +
> +[Execution2]
> +crbs=<Performance CRB IP Address>
> +drivername=<driver name igb_uio or vfio-pci>
> +test_suites=
> +    l2fwd,
> +    l3fwd
> +targets=
> +    x86_64-native-linuxapp-gcc
> +parameters=nic_type=fortville_eagle:perf=true
> diff --git a/framework/crb.py b/framework/crb.py
> index d41f51b..efd23b2 100644
> --- a/framework/crb.py
> +++ b/framework/crb.py
> @@ -150,7 +150,11 @@ class Crb(object):
>          self.send_expect("modprobe e1000e", "# ", 20)
>          self.send_expect("modprobe e1000", "# ", 20)
>          self.send_expect("modprobe virtio_net", "# ", 20)
> -
> + 
> +        self.send_expect("modprobe i40e", "# ", 60)
> +        out = self.send_expect("lsmod |grep i40e", "# ", 30)
> +        if "i40e" not in out:
> +           self.logger.error("please check the os install i40e driver already.");
>          try:
>              for (pci_bus, pci_id) in self.pci_devices_info:
>                  """
> @@ -173,6 +177,9 @@ class Crb(object):
>                          self.send_expect("echo -n 0000:%s > /sys/bus/pci/drivers/e1000/bind" % pci_bus, "# ")
>                  elif pci_id in ('1af4:1000'):
>                      self.send_expect("echo 0000%s > /sys/bus/pci/drivers/virtio-pci/bind" % pci_bus, "# ")
> +                elif pci_id in ('8086:1583','8086:1584','8086:1572'):
> +                    if not os.path.exists("/sys/bus/pci/drivers/i40e/"+"0000:"+pci_bus):
> +                        self.send_expect("echo 0000:%s > /sys/bus/pci/drivers/i40e/bind" % pci_bus, "# ")
>                  else:
>                      continue
>  
> diff --git a/framework/settings.py b/framework/settings.py
> index 2ef8db8..40b81fb 100644
> --- a/framework/settings.py
> +++ b/framework/settings.py
> @@ -55,6 +55,9 @@ NICS = {
>      'I217LM': '8086:153a',
>      'I218V': '8086:1559',
>      'I218LM': '8086:155a',
> +    'fortville_eagle': '8086:1572',
> +    'fortville_spirit': '8086:1583',
> +    'fortville_spirit_single': '8086:1584',
>  }
>  
>  DRIVERS = {
> @@ -80,6 +83,9 @@ DRIVERS = {
>      'I217LM': 'igb',
>      'I218V': 'igb',
>      'I218LM': 'igb',
> +    'fortville_eagle': 'i40e',
> +    'fortville_spirit': 'i40e',
> +    'fortville_spirit_single':'i40e'
>  }
>  
>  """
> diff --git a/framework/test_case.py b/framework/test_case.py
> index 706003f..07fdc36 100644
> --- a/framework/test_case.py
> +++ b/framework/test_case.py
> @@ -76,5 +76,9 @@ class TestCase(object):
>              bitrate *= 10  # 10 Gb NICs
>          elif self.nic == "avoton2c5":
>              bitrate *= 2.5  # 2.5 Gb NICs
> +        elif self.nic in ["fortville_spirit", "fortville_spirit_single"]:
> +            bitrate *= 40
> +        elif self.nic == 'fortville_eagle':
> +		    bitrate *= 10
>  
>          return bitrate * num_ports / 8 / (frame_size + 20)



More information about the dts mailing list