Documentation: networking: ethtool-netlink: Add link extended state
Add link extended state attributes. Signed-off-by: Amit Cohen <amitc@mellanox.com> Reviewed-by: Jiri Pirko <jiri@mellanox.com> Reviewed-by: Jacob Keller <jacob.e.keller@intel.com> Reviewed-by: Petr Machata <petrm@mellanox.com> Signed-off-by: Ido Schimmel <idosch@mellanox.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
Родитель
2be5c8a963
Коммит
e120c801b8
|
@ -443,10 +443,11 @@ supports.
|
|||
LINKSTATE_GET
|
||||
=============
|
||||
|
||||
Requests link state information. At the moment, only link up/down flag (as
|
||||
provided by ``ETHTOOL_GLINK`` ioctl command) is provided but some future
|
||||
extensions are planned (e.g. link down reason). This request does not have any
|
||||
attributes.
|
||||
Requests link state information. Link up/down flag (as provided by
|
||||
``ETHTOOL_GLINK`` ioctl command) is provided. Optionally, extended state might
|
||||
be provided as well. In general, extended state describes reasons for why a port
|
||||
is down, or why it operates in some non-obvious mode. This request does not have
|
||||
any attributes.
|
||||
|
||||
Request contents:
|
||||
|
||||
|
@ -461,16 +462,135 @@ Kernel response contents:
|
|||
``ETHTOOL_A_LINKSTATE_LINK`` bool link state (up/down)
|
||||
``ETHTOOL_A_LINKSTATE_SQI`` u32 Current Signal Quality Index
|
||||
``ETHTOOL_A_LINKSTATE_SQI_MAX`` u32 Max support SQI value
|
||||
``ETHTOOL_A_LINKSTATE_EXT_STATE`` u8 link extended state
|
||||
``ETHTOOL_A_LINKSTATE_EXT_SUBSTATE`` u8 link extended substate
|
||||
==================================== ====== ============================
|
||||
|
||||
For most NIC drivers, the value of ``ETHTOOL_A_LINKSTATE_LINK`` returns
|
||||
carrier flag provided by ``netif_carrier_ok()`` but there are drivers which
|
||||
define their own handler.
|
||||
|
||||
``ETHTOOL_A_LINKSTATE_EXT_STATE`` and ``ETHTOOL_A_LINKSTATE_EXT_SUBSTATE`` are
|
||||
optional values. ethtool core can provide either both
|
||||
``ETHTOOL_A_LINKSTATE_EXT_STATE`` and ``ETHTOOL_A_LINKSTATE_EXT_SUBSTATE``,
|
||||
or only ``ETHTOOL_A_LINKSTATE_EXT_STATE``, or none of them.
|
||||
|
||||
``LINKSTATE_GET`` allows dump requests (kernel returns reply messages for all
|
||||
devices supporting the request).
|
||||
|
||||
|
||||
Link extended states:
|
||||
|
||||
================================================ ============================================
|
||||
``ETHTOOL_LINK_EXT_STATE_AUTONEG`` States relating to the autonegotiation or
|
||||
issues therein
|
||||
|
||||
``ETHTOOL_LINK_EXT_STATE_LINK_TRAINING_FAILURE`` Failure during link training
|
||||
|
||||
``ETHTOOL_LINK_EXT_STATE_LINK_LOGICAL_MISMATCH`` Logical mismatch in physical coding sublayer
|
||||
or forward error correction sublayer
|
||||
|
||||
``ETHTOOL_LINK_EXT_STATE_BAD_SIGNAL_INTEGRITY`` Signal integrity issues
|
||||
|
||||
``ETHTOOL_LINK_EXT_STATE_NO_CABLE`` No cable connected
|
||||
|
||||
``ETHTOOL_LINK_EXT_STATE_CABLE_ISSUE`` Failure is related to cable,
|
||||
e.g., unsupported cable
|
||||
|
||||
``ETHTOOL_LINK_EXT_STATE_EEPROM_ISSUE`` Failure is related to EEPROM, e.g., failure
|
||||
during reading or parsing the data
|
||||
|
||||
``ETHTOOL_LINK_EXT_STATE_CALIBRATION_FAILURE`` Failure during calibration algorithm
|
||||
|
||||
``ETHTOOL_LINK_EXT_STATE_POWER_BUDGET_EXCEEDED`` The hardware is not able to provide the
|
||||
power required from cable or module
|
||||
|
||||
``ETHTOOL_LINK_EXT_STATE_OVERHEAT`` The module is overheated
|
||||
================================================= ============================================
|
||||
|
||||
Link extended substates:
|
||||
|
||||
Autoneg substates:
|
||||
|
||||
============================================================== ================================
|
||||
``ETHTOOL_LINK_EXT_SUBSTATE_AN_NO_PARTNER_DETECTED`` Peer side is down
|
||||
|
||||
``ETHTOOL_LINK_EXT_SUBSTATE_AN_ACK_NOT_RECEIVED`` Ack not received from peer side
|
||||
|
||||
``ETHTOOL_LINK_EXT_SUBSTATE_AN_NEXT_PAGE_EXCHANGE_FAILED`` Next page exchange failed
|
||||
|
||||
``ETHTOOL_LINK_EXT_SUBSTATE_AN_NO_PARTNER_DETECTED_FORCE_MODE`` Peer side is down during force
|
||||
mode or there is no agreement of
|
||||
speed
|
||||
|
||||
``ETHTOOL_LINK_EXT_SUBSTATE_AN_FEC_MISMATCH_DURING_OVERRIDE`` Forward error correction modes
|
||||
in both sides are mismatched
|
||||
|
||||
``ETHTOOL_LINK_EXT_SUBSTATE_AN_NO_HCD`` No Highest Common Denominator
|
||||
============================================================== ================================
|
||||
|
||||
Link training substates:
|
||||
|
||||
========================================================================== ====================
|
||||
``ETHTOOL_LINK_EXT_SUBSTATE_LT_KR_FRAME_LOCK_NOT_ACQUIRED`` Frames were not
|
||||
recognized, the
|
||||
lock failed
|
||||
|
||||
``ETHTOOL_LINK_EXT_SUBSTATE_LT_KR_LINK_INHIBIT_TIMEOUT`` The lock did not
|
||||
occur before
|
||||
timeout
|
||||
|
||||
``ETHTOOL_LINK_EXT_SUBSTATE_LT_KR_LINK_PARTNER_DID_NOT_SET_RECEIVER_READY`` Peer side did not
|
||||
send ready signal
|
||||
after training
|
||||
process
|
||||
|
||||
``ETHTOOL_LINK_EXT_SUBSTATE_LT_REMOTE_FAULT`` Remote side is not
|
||||
ready yet
|
||||
========================================================================== ====================
|
||||
|
||||
Link logical mismatch substates:
|
||||
|
||||
=============================================================== ===============================
|
||||
``ETHTOOL_LINK_EXT_SUBSTATE_LLM_PCS_DID_NOT_ACQUIRE_BLOCK_LOCK`` Physical coding sublayer was
|
||||
not locked in first phase -
|
||||
block lock
|
||||
|
||||
``ETHTOOL_LINK_EXT_SUBSTATE_LLM_PCS_DID_NOT_ACQUIRE_AM_LOCK`` Physical coding sublayer was
|
||||
not locked in second phase -
|
||||
alignment markers lock
|
||||
|
||||
``ETHTOOL_LINK_EXT_SUBSTATE_LLM_PCS_DID_NOT_GET_ALIGN_STATUS`` Physical coding sublayer did
|
||||
not get align status
|
||||
|
||||
``ETHTOOL_LINK_EXT_SUBSTATE_LLM_FC_FEC_IS_NOT_LOCKED`` FC forward error correction is
|
||||
not locked
|
||||
|
||||
``ETHTOOL_LINK_EXT_SUBSTATE_LLM_RS_FEC_IS_NOT_LOCKED`` RS forward error correction is
|
||||
not locked
|
||||
=============================================================== ===============================
|
||||
|
||||
Bad signal integrity substates:
|
||||
|
||||
================================================================= =============================
|
||||
``ETHTOOL_LINK_EXT_SUBSTATE_BSI_LARGE_NUMBER_OF_PHYSICAL_ERRORS`` Large number of physical
|
||||
errors
|
||||
|
||||
``ETHTOOL_LINK_EXT_SUBSTATE_BSI_UNSUPPORTED_RATE`` The system attempted to
|
||||
operate the cable at a rate
|
||||
that is not formally
|
||||
supported, which led to
|
||||
signal integrity issues
|
||||
================================================================= =============================
|
||||
|
||||
Cable issue substates:
|
||||
|
||||
================================================== ============================================
|
||||
``ETHTOOL_LINK_EXT_SUBSTATE_CI_UNSUPPORTED_CABLE`` Unsupported cable
|
||||
|
||||
``ETHTOOL_LINK_EXT_SUBSTATE_CI_CABLE_TEST_FAILURE`` Cable test failure
|
||||
================================================== ============================================
|
||||
|
||||
DEBUG_GET
|
||||
=========
|
||||
|
||||
|
|
Загрузка…
Ссылка в новой задаче