[dts] [PATCH 1/6] framework: crb :add some parameters and check_Mellanox_pci function to identify mellanox device
Raslan Darawsheh
rasland at mellanox.com
Tue Oct 27 07:07:50 CET 2015
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)
+ 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