mirror of
git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2025-09-18 22:14:16 +00:00
ethtool: Extend cable testing interface with result source information
Extend the ethtool netlink cable testing interface by adding support for specifying the source of cable testing results. This allows users to differentiate between results obtained through different diagnostic methods. For example, some TI 10BaseT1L PHYs provide two variants of cable diagnostics: Time Domain Reflectometry (TDR) and Active Link Cable Diagnostic (ALCD). By introducing `ETHTOOL_A_CABLE_RESULT_SRC` and `ETHTOOL_A_CABLE_FAULT_LENGTH_SRC` attributes, this update enables drivers to indicate whether the result was derived from TDR or ALCD, improving the clarity and utility of diagnostic information. Signed-off-by: Oleksij Rempel <o.rempel@pengutronix.de> Reviewed-by: Andrew Lunn <andrew@lunn.ch> Link: https://patch.msgid.link/20240822120703.1393130-2-o.rempel@pengutronix.de Signed-off-by: Jakub Kicinski <kuba@kernel.org>
This commit is contained in:
parent
b494b16738
commit
abcd3026dd
3 changed files with 22 additions and 0 deletions
|
|
@ -667,6 +667,9 @@ attribute-sets:
|
|||
-
|
||||
name: code
|
||||
type: u8
|
||||
-
|
||||
name: src
|
||||
type: u32
|
||||
-
|
||||
name: cable-fault-length
|
||||
attributes:
|
||||
|
|
@ -676,6 +679,9 @@ attribute-sets:
|
|||
-
|
||||
name: cm
|
||||
type: u32
|
||||
-
|
||||
name: src
|
||||
type: u32
|
||||
-
|
||||
name: cable-nest
|
||||
attributes:
|
||||
|
|
|
|||
|
|
@ -1314,12 +1314,17 @@ information.
|
|||
+-+-+-----------------------------------------+--------+---------------------+
|
||||
| | | ``ETHTOOL_A_CABLE_RESULTS_CODE`` | u8 | result code |
|
||||
+-+-+-----------------------------------------+--------+---------------------+
|
||||
| | | ``ETHTOOL_A_CABLE_RESULT_SRC`` | u32 | information source |
|
||||
+-+-+-----------------------------------------+--------+---------------------+
|
||||
| | ``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 |
|
||||
+-+-+-----------------------------------------+--------+---------------------+
|
||||
| | | ``ETHTOOL_A_CABLE_FAULT_LENGTH_SRC`` | u32 | information source |
|
||||
+-+-+-----------------------------------------+--------+---------------------+
|
||||
|
||||
|
||||
CABLE_TEST TDR
|
||||
==============
|
||||
|
|
|
|||
|
|
@ -573,10 +573,20 @@ enum {
|
|||
ETHTOOL_A_CABLE_PAIR_D,
|
||||
};
|
||||
|
||||
/* Information source for specific results. */
|
||||
enum {
|
||||
ETHTOOL_A_CABLE_INF_SRC_UNSPEC,
|
||||
/* Results provided by the Time Domain Reflectometry (TDR) */
|
||||
ETHTOOL_A_CABLE_INF_SRC_TDR,
|
||||
/* Results provided by the Active Link Cable Diagnostic (ALCD) */
|
||||
ETHTOOL_A_CABLE_INF_SRC_ALCD,
|
||||
};
|
||||
|
||||
enum {
|
||||
ETHTOOL_A_CABLE_RESULT_UNSPEC,
|
||||
ETHTOOL_A_CABLE_RESULT_PAIR, /* u8 ETHTOOL_A_CABLE_PAIR_ */
|
||||
ETHTOOL_A_CABLE_RESULT_CODE, /* u8 ETHTOOL_A_CABLE_RESULT_CODE_ */
|
||||
ETHTOOL_A_CABLE_RESULT_SRC, /* u32 ETHTOOL_A_CABLE_INF_SRC_ */
|
||||
|
||||
__ETHTOOL_A_CABLE_RESULT_CNT,
|
||||
ETHTOOL_A_CABLE_RESULT_MAX = (__ETHTOOL_A_CABLE_RESULT_CNT - 1)
|
||||
|
|
@ -586,6 +596,7 @@ enum {
|
|||
ETHTOOL_A_CABLE_FAULT_LENGTH_UNSPEC,
|
||||
ETHTOOL_A_CABLE_FAULT_LENGTH_PAIR, /* u8 ETHTOOL_A_CABLE_PAIR_ */
|
||||
ETHTOOL_A_CABLE_FAULT_LENGTH_CM, /* u32 */
|
||||
ETHTOOL_A_CABLE_FAULT_LENGTH_SRC, /* u32 ETHTOOL_A_CABLE_INF_SRC_ */
|
||||
|
||||
__ETHTOOL_A_CABLE_FAULT_LENGTH_CNT,
|
||||
ETHTOOL_A_CABLE_FAULT_LENGTH_MAX = (__ETHTOOL_A_CABLE_FAULT_LENGTH_CNT - 1)
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue