[dts] [PATCH 1/6] framework: crb :add some parameters and check_Mellanox_pci function to identify mellanox device

Xu, HuilongX huilongx.xu at intel.com
Thu Oct 29 03:00:41 CET 2015


Hi darawsheh,
Pls see my comments as below., thanks  a lot
> -----Original Message-----
> From: dts [mailto:dts-bounces at dpdk.org] On Behalf Of Raslan Darawsheh
> Sent: Tuesday, October 27, 2015 2:08 PM
> To: dts at dpdk.org
> Cc: rdarawsheh at asaltech.com
> Subject: [dts] [PATCH 1/6] framework: crb :add some parameters and
> check_Mellanox_pci function to identify mellanox device
> 
> From: Raslsn Darawsheh <rdarawsheh at asaltech.com>
> 
> Signed-off-by: Raslsn Darawsheh <rdarawsheh at asaltech.com>
> ---
>  framework/crb.py | 23 ++++++++++++++++++++++-
>  1 file changed, 22 insertions(+), 1 deletion(-)
> 
> diff --git a/framework/crb.py b/framework/crb.py
> index fcbd7d9..0acec3b 100644
> --- a/framework/crb.py
> +++ b/framework/crb.py
> @@ -33,7 +33,7 @@ import time
>  import dts
>  import re
>  import os
> -from settings import TIMEOUT, IXIA
> +from settings import TIMEOUT, IXIA, NICS
> 
>  """
>  CRB (customer reference board) basic functions and handlers
> @@ -54,6 +54,9 @@ class Crb(object):
>          self.skip_setup = False
>          self.serializer = serializer
>          self.ports_info = None
> +        self.isMellanox = False
> +        self.mellanoxPortCount = 0
> +        self.mellanoxCardType = None
> 
>      def send_expect(self, cmds, expected, timeout=TIMEOUT,
>                      alt_session=False, verify=False):
> @@ -79,6 +82,19 @@ class Crb(object):
> 
>          return self.session.send_command(cmds, timeout)
> 
> +    def check_Mellanox_pci(self,pci_bus,pci_id):
> +        """
> +        check if the PCI is Mellanox device or not
> +        its used to set a flag to handle Mellanox ports differently
> +        """
> +        out = self.send_expect("lspci -nn | grep -i "  + pci_bus, "# ")
> +        if "Mell" in out:
> +            self.isMellanox =True
> +            if NICS['ConnectX_4'] in out:
> +                self.mellanoxCardType = "cx4"
> +            else:
> +                self.mellanoxCardType = "cx3"
> +
>      def get_session_output(self, timeout=TIMEOUT):
>          """
>          Get session output message before timeout
> @@ -196,6 +212,11 @@ class Crb(object):
>          rexp = r"([\da-f]{2}:[\da-f]{2}.\d{1}) .*Eth.*?ernet .*?([\da-
> f]{4}:[\da-f]{4})"
>          pattern = re.compile(rexp)
>          match = pattern.findall(out)
Could you not changed this function? because it not about dts feature
It only a ssh session function, when you exec "lspci" command, freebsd os not support.
So some  case will failed on freebesd.
> +        out = self.send_expect(
> +                        "lspci -nn ", "# ", alt_session=True)
> +        rexp = r"([\da-f]{2}:[\da-f]{2}.\d{1}) Network .*?([\da-
> f]{4}:[\da-f]{4})"
> +        pattern = re.compile(rexp)
> +        match += pattern.findall(out)
>          self.pci_devices_info = []
>          for i in range(len(match)):
>              self.pci_devices_info.append((match[i][0], match[i][1]))
> --
> 1.8.3.1



More information about the dts mailing list