|
@@ -752,6 +752,197 @@ enum ethtool_module_power_mode {
|
|
ETHTOOL_MODULE_POWER_MODE_HIGH,
|
|
ETHTOOL_MODULE_POWER_MODE_HIGH,
|
|
};
|
|
};
|
|
|
|
|
|
|
|
+/**
|
|
|
|
+ * enum ethtool_c33_pse_ext_state - groups of PSE extended states
|
|
|
|
+ * functions. IEEE 802.3-2022 33.2.4.4 Variables
|
|
|
|
+ *
|
|
|
|
+ * @ETHTOOL_C33_PSE_EXT_STATE_ERROR_CONDITION: Group of error_condition states
|
|
|
|
+ * @ETHTOOL_C33_PSE_EXT_STATE_MR_MPS_VALID: Group of mr_mps_valid states
|
|
|
|
+ * @ETHTOOL_C33_PSE_EXT_STATE_MR_PSE_ENABLE: Group of mr_pse_enable states
|
|
|
|
+ * @ETHTOOL_C33_PSE_EXT_STATE_OPTION_DETECT_TED: Group of option_detect_ted
|
|
|
|
+ * states
|
|
|
|
+ * @ETHTOOL_C33_PSE_EXT_STATE_OPTION_VPORT_LIM: Group of option_vport_lim states
|
|
|
|
+ * @ETHTOOL_C33_PSE_EXT_STATE_OVLD_DETECTED: Group of ovld_detected states
|
|
|
|
+ * @ETHTOOL_C33_PSE_EXT_STATE_PD_DLL_POWER_TYPE: Group of pd_dll_power_type
|
|
|
|
+ * states
|
|
|
|
+ * @ETHTOOL_C33_PSE_EXT_STATE_POWER_NOT_AVAILABLE: Group of power_not_available
|
|
|
|
+ * states
|
|
|
|
+ * @ETHTOOL_C33_PSE_EXT_STATE_SHORT_DETECTED: Group of short_detected states
|
|
|
|
+ */
|
|
|
|
+enum ethtool_c33_pse_ext_state {
|
|
|
|
+ ETHTOOL_C33_PSE_EXT_STATE_ERROR_CONDITION = 1,
|
|
|
|
+ ETHTOOL_C33_PSE_EXT_STATE_MR_MPS_VALID,
|
|
|
|
+ ETHTOOL_C33_PSE_EXT_STATE_MR_PSE_ENABLE,
|
|
|
|
+ ETHTOOL_C33_PSE_EXT_STATE_OPTION_DETECT_TED,
|
|
|
|
+ ETHTOOL_C33_PSE_EXT_STATE_OPTION_VPORT_LIM,
|
|
|
|
+ ETHTOOL_C33_PSE_EXT_STATE_OVLD_DETECTED,
|
|
|
|
+ ETHTOOL_C33_PSE_EXT_STATE_PD_DLL_POWER_TYPE,
|
|
|
|
+ ETHTOOL_C33_PSE_EXT_STATE_POWER_NOT_AVAILABLE,
|
|
|
|
+ ETHTOOL_C33_PSE_EXT_STATE_SHORT_DETECTED,
|
|
|
|
+};
|
|
|
|
+
|
|
|
|
+/**
|
|
|
|
+ * enum ethtool_c33_pse_ext_substate_mr_mps_valid - mr_mps_valid states
|
|
|
|
+ * functions. IEEE 802.3-2022 33.2.4.4 Variables
|
|
|
|
+ *
|
|
|
|
+ * @ETHTOOL_C33_PSE_EXT_SUBSTATE_MR_MPS_VALID_DETECTED_UNDERLOAD: Underload
|
|
|
|
+ * state
|
|
|
|
+ * @ETHTOOL_C33_PSE_EXT_SUBSTATE_MR_MPS_VALID_CONNECTION_OPEN: Port is not
|
|
|
|
+ * connected
|
|
|
|
+ *
|
|
|
|
+ * The PSE monitors either the DC or AC Maintain Power Signature
|
|
|
|
+ * (MPS, see 33.2.9.1). This variable indicates the presence or absence of
|
|
|
|
+ * a valid MPS.
|
|
|
|
+ */
|
|
|
|
+enum ethtool_c33_pse_ext_substate_mr_mps_valid {
|
|
|
|
+ ETHTOOL_C33_PSE_EXT_SUBSTATE_MR_MPS_VALID_DETECTED_UNDERLOAD = 1,
|
|
|
|
+ ETHTOOL_C33_PSE_EXT_SUBSTATE_MR_MPS_VALID_CONNECTION_OPEN,
|
|
|
|
+};
|
|
|
|
+
|
|
|
|
+/**
|
|
|
|
+ * enum ethtool_c33_pse_ext_substate_error_condition - error_condition states
|
|
|
|
+ * functions. IEEE 802.3-2022 33.2.4.4 Variables
|
|
|
|
+ *
|
|
|
|
+ * @ETHTOOL_C33_PSE_EXT_SUBSTATE_ERROR_CONDITION_NON_EXISTING_PORT: Non-existing
|
|
|
|
+ * port number
|
|
|
|
+ * @ETHTOOL_C33_PSE_EXT_SUBSTATE_ERROR_CONDITION_UNDEFINED_PORT: Undefined port
|
|
|
|
+ * @ETHTOOL_C33_PSE_EXT_SUBSTATE_ERROR_CONDITION_INTERNAL_HW_FAULT: Internal
|
|
|
|
+ * hardware fault
|
|
|
|
+ * @ETHTOOL_C33_PSE_EXT_SUBSTATE_ERROR_CONDITION_COMM_ERROR_AFTER_FORCE_ON:
|
|
|
|
+ * Communication error after force on
|
|
|
|
+ * @ETHTOOL_C33_PSE_EXT_SUBSTATE_ERROR_CONDITION_UNKNOWN_PORT_STATUS: Unknown
|
|
|
|
+ * port status
|
|
|
|
+ * @ETHTOOL_C33_PSE_EXT_SUBSTATE_ERROR_CONDITION_HOST_CRASH_TURN_OFF: Host
|
|
|
|
+ * crash turn off
|
|
|
|
+ * @ETHTOOL_C33_PSE_EXT_SUBSTATE_ERROR_CONDITION_HOST_CRASH_FORCE_SHUTDOWN:
|
|
|
|
+ * Host crash force shutdown
|
|
|
|
+ * @ETHTOOL_C33_PSE_EXT_SUBSTATE_ERROR_CONDITION_CONFIG_CHANGE: Configuration
|
|
|
|
+ * change
|
|
|
|
+ * @ETHTOOL_C33_PSE_EXT_SUBSTATE_ERROR_CONDITION_DETECTED_OVER_TEMP: Over
|
|
|
|
+ * temperature detected
|
|
|
|
+ *
|
|
|
|
+ * error_condition is a variable indicating the status of
|
|
|
|
+ * implementation-specific fault conditions or optionally other system faults
|
|
|
|
+ * that prevent the PSE from meeting the specifications in Table 33–11 and that
|
|
|
|
+ * require the PSE not to source power. These error conditions are different
|
|
|
|
+ * from those monitored by the state diagrams in Figure 33–10.
|
|
|
|
+ */
|
|
|
|
+enum ethtool_c33_pse_ext_substate_error_condition {
|
|
|
|
+ ETHTOOL_C33_PSE_EXT_SUBSTATE_ERROR_CONDITION_NON_EXISTING_PORT = 1,
|
|
|
|
+ ETHTOOL_C33_PSE_EXT_SUBSTATE_ERROR_CONDITION_UNDEFINED_PORT,
|
|
|
|
+ ETHTOOL_C33_PSE_EXT_SUBSTATE_ERROR_CONDITION_INTERNAL_HW_FAULT,
|
|
|
|
+ ETHTOOL_C33_PSE_EXT_SUBSTATE_ERROR_CONDITION_COMM_ERROR_AFTER_FORCE_ON,
|
|
|
|
+ ETHTOOL_C33_PSE_EXT_SUBSTATE_ERROR_CONDITION_UNKNOWN_PORT_STATUS,
|
|
|
|
+ ETHTOOL_C33_PSE_EXT_SUBSTATE_ERROR_CONDITION_HOST_CRASH_TURN_OFF,
|
|
|
|
+ ETHTOOL_C33_PSE_EXT_SUBSTATE_ERROR_CONDITION_HOST_CRASH_FORCE_SHUTDOWN,
|
|
|
|
+ ETHTOOL_C33_PSE_EXT_SUBSTATE_ERROR_CONDITION_CONFIG_CHANGE,
|
|
|
|
+ ETHTOOL_C33_PSE_EXT_SUBSTATE_ERROR_CONDITION_DETECTED_OVER_TEMP,
|
|
|
|
+};
|
|
|
|
+
|
|
|
|
+/**
|
|
|
|
+ * enum ethtool_c33_pse_ext_substate_mr_pse_enable - mr_pse_enable states
|
|
|
|
+ * functions. IEEE 802.3-2022 33.2.4.4 Variables
|
|
|
|
+ *
|
|
|
|
+ * @ETHTOOL_C33_PSE_EXT_SUBSTATE_MR_PSE_ENABLE_DISABLE_PIN_ACTIVE: Disable
|
|
|
|
+ * pin active
|
|
|
|
+ *
|
|
|
|
+ * mr_pse_enable is control variable that selects PSE operation and test
|
|
|
|
+ * functions.
|
|
|
|
+ */
|
|
|
|
+enum ethtool_c33_pse_ext_substate_mr_pse_enable {
|
|
|
|
+ ETHTOOL_C33_PSE_EXT_SUBSTATE_MR_PSE_ENABLE_DISABLE_PIN_ACTIVE = 1,
|
|
|
|
+};
|
|
|
|
+
|
|
|
|
+/**
|
|
|
|
+ * enum ethtool_c33_pse_ext_substate_option_detect_ted - option_detect_ted
|
|
|
|
+ * states functions. IEEE 802.3-2022 33.2.4.4 Variables
|
|
|
|
+ *
|
|
|
|
+ * @ETHTOOL_C33_PSE_EXT_SUBSTATE_OPTION_DETECT_TED_DET_IN_PROCESS: Detection
|
|
|
|
+ * in process
|
|
|
|
+ * @ETHTOOL_C33_PSE_EXT_SUBSTATE_OPTION_DETECT_TED_CONNECTION_CHECK_ERROR:
|
|
|
|
+ * Connection check error
|
|
|
|
+ *
|
|
|
|
+ * option_detect_ted is a variable indicating if detection can be performed
|
|
|
|
+ * by the PSE during the ted_timer interval.
|
|
|
|
+ */
|
|
|
|
+enum ethtool_c33_pse_ext_substate_option_detect_ted {
|
|
|
|
+ ETHTOOL_C33_PSE_EXT_SUBSTATE_OPTION_DETECT_TED_DET_IN_PROCESS = 1,
|
|
|
|
+ ETHTOOL_C33_PSE_EXT_SUBSTATE_OPTION_DETECT_TED_CONNECTION_CHECK_ERROR,
|
|
|
|
+};
|
|
|
|
+
|
|
|
|
+/**
|
|
|
|
+ * enum ethtool_c33_pse_ext_substate_option_vport_lim - option_vport_lim states
|
|
|
|
+ * functions. IEEE 802.3-2022 33.2.4.4 Variables
|
|
|
|
+ *
|
|
|
|
+ * @ETHTOOL_C33_PSE_EXT_SUBSTATE_OPTION_VPORT_LIM_HIGH_VOLTAGE: Main supply
|
|
|
|
+ * voltage is high
|
|
|
|
+ * @ETHTOOL_C33_PSE_EXT_SUBSTATE_OPTION_VPORT_LIM_LOW_VOLTAGE: Main supply
|
|
|
|
+ * voltage is low
|
|
|
|
+ * @ETHTOOL_C33_PSE_EXT_SUBSTATE_OPTION_VPORT_LIM_VOLTAGE_INJECTION: Voltage
|
|
|
|
+ * injection into the port
|
|
|
|
+ *
|
|
|
|
+ * option_vport_lim is an optional variable indicates if VPSE is out of the
|
|
|
|
+ * operating range during normal operating state.
|
|
|
|
+ */
|
|
|
|
+enum ethtool_c33_pse_ext_substate_option_vport_lim {
|
|
|
|
+ ETHTOOL_C33_PSE_EXT_SUBSTATE_OPTION_VPORT_LIM_HIGH_VOLTAGE = 1,
|
|
|
|
+ ETHTOOL_C33_PSE_EXT_SUBSTATE_OPTION_VPORT_LIM_LOW_VOLTAGE,
|
|
|
|
+ ETHTOOL_C33_PSE_EXT_SUBSTATE_OPTION_VPORT_LIM_VOLTAGE_INJECTION,
|
|
|
|
+};
|
|
|
|
+
|
|
|
|
+/**
|
|
|
|
+ * enum ethtool_c33_pse_ext_substate_ovld_detected - ovld_detected states
|
|
|
|
+ * functions. IEEE 802.3-2022 33.2.4.4 Variables
|
|
|
|
+ *
|
|
|
|
+ * @ETHTOOL_C33_PSE_EXT_SUBSTATE_OVLD_DETECTED_OVERLOAD: Overload state
|
|
|
|
+ *
|
|
|
|
+ * ovld_detected is a variable indicating if the PSE output current has been
|
|
|
|
+ * in an overload condition (see 33.2.7.6) for at least TCUT of a one-second
|
|
|
|
+ * sliding time.
|
|
|
|
+ */
|
|
|
|
+enum ethtool_c33_pse_ext_substate_ovld_detected {
|
|
|
|
+ ETHTOOL_C33_PSE_EXT_SUBSTATE_OVLD_DETECTED_OVERLOAD = 1,
|
|
|
|
+};
|
|
|
|
+
|
|
|
|
+/**
|
|
|
|
+ * enum ethtool_c33_pse_ext_substate_power_not_available - power_not_available
|
|
|
|
+ * states functions. IEEE 802.3-2022 33.2.4.4 Variables
|
|
|
|
+ *
|
|
|
|
+ * @ETHTOOL_C33_PSE_EXT_SUBSTATE_POWER_NOT_AVAILABLE_BUDGET_EXCEEDED: Power
|
|
|
|
+ * budget exceeded for the controller
|
|
|
|
+ * @ETHTOOL_C33_PSE_EXT_SUBSTATE_POWER_NOT_AVAILABLE_PORT_PW_LIMIT_EXCEEDS_CONTROLLER_BUDGET:
|
|
|
|
+ * Configured port power limit exceeded controller power budget
|
|
|
|
+ * @ETHTOOL_C33_PSE_EXT_SUBSTATE_POWER_NOT_AVAILABLE_PD_REQUEST_EXCEEDS_PORT_LIMIT:
|
|
|
|
+ * Power request from PD exceeds port limit
|
|
|
|
+ * @ETHTOOL_C33_PSE_EXT_SUBSTATE_POWER_NOT_AVAILABLE_HW_PW_LIMIT: Power
|
|
|
|
+ * denied due to Hardware power limit
|
|
|
|
+ *
|
|
|
|
+ * power_not_available is a variable that is asserted in an
|
|
|
|
+ * implementation-dependent manner when the PSE is no longer capable of
|
|
|
|
+ * sourcing sufficient power to support the attached PD. Sufficient power
|
|
|
|
+ * is defined by classification; see 33.2.6.
|
|
|
|
+ */
|
|
|
|
+enum ethtool_c33_pse_ext_substate_power_not_available {
|
|
|
|
+ ETHTOOL_C33_PSE_EXT_SUBSTATE_POWER_NOT_AVAILABLE_BUDGET_EXCEEDED = 1,
|
|
|
|
+ ETHTOOL_C33_PSE_EXT_SUBSTATE_POWER_NOT_AVAILABLE_PORT_PW_LIMIT_EXCEEDS_CONTROLLER_BUDGET,
|
|
|
|
+ ETHTOOL_C33_PSE_EXT_SUBSTATE_POWER_NOT_AVAILABLE_PD_REQUEST_EXCEEDS_PORT_LIMIT,
|
|
|
|
+ ETHTOOL_C33_PSE_EXT_SUBSTATE_POWER_NOT_AVAILABLE_HW_PW_LIMIT,
|
|
|
|
+};
|
|
|
|
+
|
|
|
|
+/**
|
|
|
|
+ * enum ethtool_c33_pse_ext_substate_short_detected - short_detected states
|
|
|
|
+ * functions. IEEE 802.3-2022 33.2.4.4 Variables
|
|
|
|
+ *
|
|
|
|
+ * @ETHTOOL_C33_PSE_EXT_SUBSTATE_SHORT_DETECTED_SHORT_CONDITION: Short
|
|
|
|
+ * condition was detected
|
|
|
|
+ *
|
|
|
|
+ * short_detected is a variable indicating if the PSE output current has been
|
|
|
|
+ * in a short circuit condition for TLIM within a sliding window (see 33.2.7.7).
|
|
|
|
+ */
|
|
|
|
+enum ethtool_c33_pse_ext_substate_short_detected {
|
|
|
|
+ ETHTOOL_C33_PSE_EXT_SUBSTATE_SHORT_DETECTED_SHORT_CONDITION = 1,
|
|
|
|
+};
|
|
|
|
+
|
|
/**
|
|
/**
|
|
* enum ethtool_pse_types - Types of PSE controller.
|
|
* enum ethtool_pse_types - Types of PSE controller.
|
|
* @ETHTOOL_PSE_UNKNOWN: Type of PSE controller is unknown
|
|
* @ETHTOOL_PSE_UNKNOWN: Type of PSE controller is unknown
|
|
@@ -877,6 +1068,24 @@ enum ethtool_mm_verify_status {
|
|
ETHTOOL_MM_VERIFY_STATUS_DISABLED,
|
|
ETHTOOL_MM_VERIFY_STATUS_DISABLED,
|
|
};
|
|
};
|
|
|
|
|
|
|
|
+/**
|
|
|
|
+ * enum ethtool_module_fw_flash_status - plug-in module firmware flashing status
|
|
|
|
+ * @ETHTOOL_MODULE_FW_FLASH_STATUS_STARTED: The firmware flashing process has
|
|
|
|
+ * started.
|
|
|
|
+ * @ETHTOOL_MODULE_FW_FLASH_STATUS_IN_PROGRESS: The firmware flashing process
|
|
|
|
+ * is in progress.
|
|
|
|
+ * @ETHTOOL_MODULE_FW_FLASH_STATUS_COMPLETED: The firmware flashing process was
|
|
|
|
+ * completed successfully.
|
|
|
|
+ * @ETHTOOL_MODULE_FW_FLASH_STATUS_ERROR: The firmware flashing process was
|
|
|
|
+ * stopped due to an error.
|
|
|
|
+ */
|
|
|
|
+enum ethtool_module_fw_flash_status {
|
|
|
|
+ ETHTOOL_MODULE_FW_FLASH_STATUS_STARTED = 1,
|
|
|
|
+ ETHTOOL_MODULE_FW_FLASH_STATUS_IN_PROGRESS,
|
|
|
|
+ ETHTOOL_MODULE_FW_FLASH_STATUS_COMPLETED,
|
|
|
|
+ ETHTOOL_MODULE_FW_FLASH_STATUS_ERROR,
|
|
|
|
+};
|
|
|
|
+
|
|
/**
|
|
/**
|
|
* struct ethtool_gstrings - string set for data tagging
|
|
* struct ethtool_gstrings - string set for data tagging
|
|
* @cmd: Command number = %ETHTOOL_GSTRINGS
|
|
* @cmd: Command number = %ETHTOOL_GSTRINGS
|
|
@@ -1845,6 +2054,7 @@ enum ethtool_link_mode_bit_indices {
|
|
ETHTOOL_LINK_MODE_10baseT1S_Full_BIT = 99,
|
|
ETHTOOL_LINK_MODE_10baseT1S_Full_BIT = 99,
|
|
ETHTOOL_LINK_MODE_10baseT1S_Half_BIT = 100,
|
|
ETHTOOL_LINK_MODE_10baseT1S_Half_BIT = 100,
|
|
ETHTOOL_LINK_MODE_10baseT1S_P2MP_Half_BIT = 101,
|
|
ETHTOOL_LINK_MODE_10baseT1S_P2MP_Half_BIT = 101,
|
|
|
|
+ ETHTOOL_LINK_MODE_10baseT1BRR_Full_BIT = 102,
|
|
|
|
|
|
/* must be last entry */
|
|
/* must be last entry */
|
|
__ETHTOOL_LINK_MODE_MASK_NBITS
|
|
__ETHTOOL_LINK_MODE_MASK_NBITS
|
|
@@ -2323,4 +2533,20 @@ struct ethtool_link_settings {
|
|
* uint32_t map_lp_advertising[link_mode_masks_nwords];
|
|
* uint32_t map_lp_advertising[link_mode_masks_nwords];
|
|
*/
|
|
*/
|
|
};
|
|
};
|
|
|
|
+
|
|
|
|
+/**
|
|
|
|
+ * enum phy_upstream - Represents the upstream component a given PHY device
|
|
|
|
+ * is connected to, as in what is on the other end of the MII bus. Most PHYs
|
|
|
|
+ * will be attached to an Ethernet MAC controller, but in some cases, there's
|
|
|
|
+ * an intermediate PHY used as a media-converter, which will driver another
|
|
|
|
+ * MII interface as its output.
|
|
|
|
+ * @PHY_UPSTREAM_MAC: Upstream component is a MAC (a switch port,
|
|
|
|
+ * or ethernet controller)
|
|
|
|
+ * @PHY_UPSTREAM_PHY: Upstream component is a PHY (likely a media converter)
|
|
|
|
+ */
|
|
|
|
+enum phy_upstream {
|
|
|
|
+ PHY_UPSTREAM_MAC,
|
|
|
|
+ PHY_UPSTREAM_PHY,
|
|
|
|
+};
|
|
|
|
+
|
|
#endif /* _LINUX_ETHTOOL_H */
|
|
#endif /* _LINUX_ETHTOOL_H */
|