[prev in list] [next in list] [prev in thread] [next in thread]
List: dpdk-dts
Subject: [dts][PATCH V5 1/2] test_plans/telemetry:add cases to check laser power in dpdk
From: Zhimin Huang <zhiminx.huang () intel ! com>
Date: 2022-09-28 14:35:50
Message-ID: 20220928225253.20539-1-zhiminx.huang () intel ! com
[Download RAW message or body]
the customer need to get the laser power values in dpdk.
so a new telemtry command '/ethdev/module_eeprom' to show module
EEPROM for each port in dpdk22.07.
we add new test cases to check laser power value.
1.check the laser power values same as that of 'ethtool -m'.
2.check different/same optical modules have different/same laser power values.
Signed-off-by: Zhimin Huang <zhiminx.huang@intel.com>
Acked-by: Peng, Yuan <yuan.peng@intel.com>
---
v5:
-add command '/ethdev/module_eeprom' output in testplan
v4:
-optimized code in testcase.
v3:
-detail subject and comments.
test_plans/telemetry_test_plan.rst | 107 ++++++++++++++++++++++++++++-
1 file changed, 106 insertions(+), 1 deletion(-)
diff --git a/test_plans/telemetry_test_plan.rst b/test_plans/telemetry_test_plan.rst
index 16568cd3..949280e0 100644
--- a/test_plans/telemetry_test_plan.rst
+++ b/test_plans/telemetry_test_plan.rst
@@ -200,4 +200,109 @@ Test case: Stats of 4 ports for testpmd and telemetry with \
different type nic a. Ensure # of ports stats being returned == # of ports
b. Ensure packet counts (eg rx_good_packets) is 0
c. Ensure extended NIC stats are shown (depends on PMD used for testing, refer to \
ixgbe/i40e tests for PMD xstats)
- d. Ensure extended NIC stats are 0 (eg: rx_q0_packets == 0)
\ No newline at end of file
+ d. Ensure extended NIC stats are 0 (eg: rx_q0_packets == 0)
+
+Test case: read nic Laser Power via dpdk
+========================================
+
+1.Bind ports to dpdk::
+
+ ./usertools/dpdk-devbind.py --bind=vfio-pci 18:00.0 18.00.1
+
+2.Launch the dpdk testpmd with teltmetry::
+
+ ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd --telemetry -- -i
+
+3.Launch the telemetry client::
+
+ python ./usertools/dpdk-telemetry.py
+
+4.Excute command in telemtry client::
+
+ --> /ethdev/module_eeprom,<port number>
+
+ take a example:/ethdev/module_eeprom,0
+ {"/ethdev/module_eeprom": {"Identifier": "0x03 (SFP)", "Extended identifier": \
"0x04 (GBIC/SFP defined by 2-wire + interface ID)", "Connector": "0x07 (LC)", \
"Transceiver codes": "0x10 0x00 0x00 0x01 0x00 0x00 0x00 0x00 0x00", + \
"Transceiver type": "10G Ethernet: 10G Base-SR; Ethernet: 1000BASE-SX", "Encoding": \
"0x06 (64B/66B)", "BR, + Nominal": "10300MBd", "Rate identifier": "0x00 \
(unspecified)", "Length (SMF,km)": "0km", "Length (SMF)": + "0m", "Length \
(50um)": "80m", "Length (62.5um)": "30m", "Length (Copper)": "0m", "Length (OM3)": \
"300m", + "Laser wavelength": "850nm", "Vendor name": "Intel Corp", "Vendor \
OUI": "00:1b:21", "Vendor PN": + "AFBR-703SDZ-IN2", "Vendor rev": "G2.3", \
"Option values": "0x00 0x3a", "Option": "RX_LOS implemented; + TX_FAULT \
implemented; TX_DISABLE implemented; RATE_SELECT implemented", "BR margin, max": \
"0%", "BR margin, + min": "0%", "Vendor SN": "AD1345A04JR", "Date code": \
"131108", "Optical diagnostics support": "Yes", "Laser + bias current": "5.942 \
mA", "Laser output power": "0.6703 mW / -1.74 dBm", "Receiver signal average optical \
+ power": "0.8002 mW / -0.97 dBm", "Module temperature": "38.50 degrees C / \
101.30 degrees F", "Module + voltage": "3.3960 V", "Alarm/warning flags \
implemented": "Yes", "Laser bias current high alarm": "Off", + "Laser bias \
current low alarm": "Off", "Laser bias current high warning": "Off", "Laser bias \
current low + warning": "Off", "Laser output power high alarm": "Off", "Laser \
output power low alarm": "Off", "Laser output + power high warning": "Off", \
"Laser output power low warning": "Off", "Module temperature high alarm": "Off", + \
"Module temperature low alarm": "Off", "Module temperature high warning": "Off", \
"Module temperature low + warning": "Off", "Module voltage high alarm": "Off", \
"Module voltage low alarm": "Off", "Module voltage + high warning": "Off", \
"Module voltage low warning": "Off", "Laser rx power high alarm": "Off", "Laser rx + \
power low alarm": "Off", "Laser rx power high warning": "On", "Laser rx power low \
warning": "Off", "Laser + bias current high alarm threshold": "10.500 mA", \
"Laser bias current low alarm threshold": "2.500 mA", + "Laser bias current \
high warning threshold": "10.500 mA", "Laser bias current low warning threshold": "2 \
+ .500 mA", "Laser output power high alarm threshold": "2.0000 mW / 3.01 dBm", \
"Laser output power low alarm + threshold": "0.0600 mW / -12.22 dBm", "Laser \
output power high warning threshold": "0.7900 mW / -1.02 dBm", + "Laser output \
power low warning threshold": "0.0850 mW / -10.71 dBm", "Module temperature high \
alarm + threshold": "85.00 degrees C / 185.00 degrees F", "Module temperature \
low alarm threshold": "-5.00 degrees + C / 23.00 degrees F", "Module \
temperature high warning threshold": "80.00 degrees C / 176.00 degrees F", + \
"Module temperature low warning threshold": "0.00 degrees C / 32.00 degrees F", \
"Module voltage high + alarm threshold": "3.6000 V", "Module voltage low alarm \
threshold": "3.1300 V", "Module voltage high + warning threshold": "3.4600 V", \
"Laser rx power high alarm threshold": "2.0000 mW / 3.01 dBm", "Laser rx + \
power low alarm threshold": "0.0000 mW / -inf dBm", "Laser rx power high warning \
threshold": "0.7900 mW / + -1.02 dBm", "Laser rx power low warning threshold": \
"0.0200 mW / -16.99 dBm"}} +
+5.check the testpmd and telemetry show info same as 'ethtool -m'::
+
+ ethtool -m ens25f1 | grep 'Laser output power'
+ Laser output power : 0.6703 mW / -1.74 dBm
+
+.. note::
+
+ refer to command 'ethtool -m' of ethtool v5.4
+
+Test case: check Laser Power in different optical modules
+=========================================================
+
+1.set port 0 and port 1 with diffent optical modules
+
+2.Launch the dpdk testpmd with teltmetry::
+
+ ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd --telemetry -- -i
+
+3.Launch the telemetry client::
+
+ python ./usertools/dpdk-telemetry.py
+
+4.Excute command in telemtry client::
+
+ --> /ethdev/module_eeprom,0
+ --> /ethdev/module_eeprom,1
+
+5.check port 0 and port 1 have different Laser Power
+
+Test case: check Laser Power in same optical modules
+====================================================
+
+1.set port 0 and port 1 with same optical modules
+
+2.Launch the dpdk testpmd with teltmetry::
+
+ ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd --telemetry -- -i
+
+3.Launch the telemetry client::
+
+ python ./usertools/dpdk-telemetry.py
+
+4.Excute command in telemtry client::
+
+ --> /ethdev/module_eeprom,0
+ --> /ethdev/module_eeprom,1
+
+5.check port 0 and port 1 have same Laser Power
+
+.. note::
+
+ the laser power will change slightly with the voltage and temperature
--
2.17.1
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic