net: ethtool: Add attributes for cable test reports
Add the attributes needed to report cable test results to userspace. The reports are expected to be per twisted pair. A nested property per pair can report the result of the cable test. A nested property can also report the length of the cable to any fault. v2: Grammar fixes Change length from u16 to u32 s/DEV/HEADER/g Add status attributes Rename pairs from numbers to letters. v3: Fixed example in document Add ETHTOOL_A_CABLE_NEST_* enum Add ETHTOOL_MSG_CABLE_TEST_NTF to documentation Signed-off-by: Andrew Lunn <andrew@lunn.ch> Reviewed-by: Florian Fainelli <f.fainelli@gmail.com> Reviewed-by: Michal Kubecek <mkubecek@suse.cz> Signed-off-by: Jakub Kicinski <kuba@kernel.org>
This commit is contained in:

committed by
Jakub Kicinski

parent
11ca3c4261
commit
b28efb930b
@@ -236,6 +236,7 @@ Kernel to userspace:
|
||||
``ETHTOOL_MSG_EEE_GET_REPLY`` EEE settings
|
||||
``ETHTOOL_MSG_EEE_NTF`` EEE settings
|
||||
``ETHTOOL_MSG_TSINFO_GET_REPLY`` timestamping info
|
||||
``ETHTOOL_MSG_CABLE_TEST_NTF`` Cable test results
|
||||
===================================== =================================
|
||||
|
||||
``GET`` requests are sent by userspace applications to retrieve device
|
||||
@@ -970,6 +971,46 @@ Request contents:
|
||||
``ETHTOOL_A_CABLE_TEST_HEADER`` nested request header
|
||||
==================================== ====== ==========================
|
||||
|
||||
Notification contents:
|
||||
|
||||
An Ethernet cable typically contains 1, 2 or 4 pairs. The length of
|
||||
the pair can only be measured when there is a fault in the pair and
|
||||
hence a reflection. Information about the fault may not be available,
|
||||
depending on the specific hardware. Hence the contents of the notify
|
||||
message are mostly optional. The attributes can be repeated an
|
||||
arbitrary number of times, in an arbitrary order, for an arbitrary
|
||||
number of pairs.
|
||||
|
||||
The example shows the notification sent when the test is completed for
|
||||
a T2 cable, i.e. two pairs. One pair is OK and hence has no length
|
||||
information. The second pair has a fault and does have length
|
||||
information.
|
||||
|
||||
+---------------------------------------------+--------+---------------------+
|
||||
| ``ETHTOOL_A_CABLE_TEST_HEADER`` | nested | reply header |
|
||||
+---------------------------------------------+--------+---------------------+
|
||||
| ``ETHTOOL_A_CABLE_TEST_STATUS`` | u8 | completed |
|
||||
+---------------------------------------------+--------+---------------------+
|
||||
| ``ETHTOOL_A_CABLE_TEST_NTF_NEST`` | nested | all the results |
|
||||
+-+-------------------------------------------+--------+---------------------+
|
||||
| | ``ETHTOOL_A_CABLE_NEST_RESULT`` | nested | cable test result |
|
||||
+-+-+-----------------------------------------+--------+---------------------+
|
||||
| | | ``ETHTOOL_A_CABLE_RESULTS_PAIR`` | u8 | pair number |
|
||||
+-+-+-----------------------------------------+--------+---------------------+
|
||||
| | | ``ETHTOOL_A_CABLE_RESULTS_CODE`` | u8 | result code |
|
||||
+-+-+-----------------------------------------+--------+---------------------+
|
||||
| | ``ETHTOOL_A_CABLE_NEST_RESULT`` | nested | cable test results |
|
||||
+-+-+-----------------------------------------+--------+---------------------+
|
||||
| | | ``ETHTOOL_A_CABLE_RESULTS_PAIR`` | u8 | pair number |
|
||||
+-+-+-----------------------------------------+--------+---------------------+
|
||||
| | | ``ETHTOOL_A_CABLE_RESULTS_CODE`` | u8 | result code |
|
||||
+-+-+-----------------------------------------+--------+---------------------+
|
||||
| | ``ETHTOOL_A_CABLE_NEST_FAULT_LENGTH`` | nested | cable length |
|
||||
+-+-+-----------------------------------------+--------+---------------------+
|
||||
| | | ``ETHTOOL_A_CABLE_FAULT_LENGTH_PAIR`` | u8 | pair number |
|
||||
+-+-+-----------------------------------------+--------+---------------------+
|
||||
| | | ``ETHTOOL_A_CABLE_FAULT_LENGTH_CM`` | u32 | length in cm |
|
||||
+-+-+-----------------------------------------+--------+---------------------+
|
||||
|
||||
Request translation
|
||||
===================
|
||||
|
Reference in New Issue
Block a user