@@ -1730,17 +1730,28 @@ Request contents:
1730
1730
1731
1731
Kernel response contents:
1732
1732
1733
- ====================================== ====== =============================
1734
- ``ETHTOOL_A_PSE_HEADER `` nested reply header
1735
- ``ETHTOOL_A_PODL_PSE_ADMIN_STATE `` u32 Operational state of the PoDL
1736
- PSE functions
1737
- ``ETHTOOL_A_PODL_PSE_PW_D_STATUS `` u32 power detection status of the
1738
- PoDL PSE.
1739
- ``ETHTOOL_A_C33_PSE_ADMIN_STATE `` u32 Operational state of the PoE
1740
- PSE functions.
1741
- ``ETHTOOL_A_C33_PSE_PW_D_STATUS `` u32 power detection status of the
1742
- PoE PSE.
1743
- ====================================== ====== =============================
1733
+ ========================================== ====== =============================
1734
+ ``ETHTOOL_A_PSE_HEADER `` nested reply header
1735
+ ``ETHTOOL_A_PODL_PSE_ADMIN_STATE `` u32 Operational state of the PoDL
1736
+ PSE functions
1737
+ ``ETHTOOL_A_PODL_PSE_PW_D_STATUS `` u32 power detection status of the
1738
+ PoDL PSE.
1739
+ ``ETHTOOL_A_C33_PSE_ADMIN_STATE `` u32 Operational state of the PoE
1740
+ PSE functions.
1741
+ ``ETHTOOL_A_C33_PSE_PW_D_STATUS `` u32 power detection status of the
1742
+ PoE PSE.
1743
+ ``ETHTOOL_A_C33_PSE_PW_CLASS `` u32 power class of the PoE PSE.
1744
+ ``ETHTOOL_A_C33_PSE_ACTUAL_PW `` u32 actual power drawn on the
1745
+ PoE PSE.
1746
+ ``ETHTOOL_A_C33_PSE_EXT_STATE `` u32 power extended state of the
1747
+ PoE PSE.
1748
+ ``ETHTOOL_A_C33_PSE_EXT_SUBSTATE `` u32 power extended substatus of
1749
+ the PoE PSE.
1750
+ ``ETHTOOL_A_C33_PSE_AVAIL_PW_LIMIT `` u32 currently configured power
1751
+ limit of the PoE PSE.
1752
+ ``ETHTOOL_A_C33_PSE_PW_LIMIT_RANGES `` nested Supported power limit
1753
+ configuration ranges.
1754
+ ========================================== ====== =============================
1744
1755
1745
1756
When set, the optional ``ETHTOOL_A_PODL_PSE_ADMIN_STATE `` attribute identifies
1746
1757
the operational state of the PoDL PSE functions. The operational state of the
@@ -1772,6 +1783,46 @@ The same goes for ``ETHTOOL_A_C33_PSE_ADMIN_PW_D_STATUS`` implementing
1772
1783
.. kernel-doc :: include/uapi/linux/ethtool.h
1773
1784
:identifiers: ethtool_c33_pse_pw_d_status
1774
1785
1786
+ When set, the optional ``ETHTOOL_A_C33_PSE_PW_CLASS `` attribute identifies
1787
+ the power class of the C33 PSE. It depends on the class negotiated between
1788
+ the PSE and the PD. This option is corresponding to ``IEEE 802.3-2022 ``
1789
+ 30.9.1.1.8 aPSEPowerClassification.
1790
+
1791
+ When set, the optional ``ETHTOOL_A_C33_PSE_ACTUAL_PW `` attribute identifies
1792
+ This option is corresponding to ``IEEE 802.3-2022 `` 30.9.1.1.23 aPSEActualPower.
1793
+ Actual power is reported in mW.
1794
+
1795
+ When set, the optional ``ETHTOOL_A_C33_PSE_EXT_STATE `` attribute identifies
1796
+ the extended error state of the C33 PSE. Possible values are:
1797
+
1798
+ .. kernel-doc :: include/uapi/linux/ethtool.h
1799
+ :identifiers: ethtool_c33_pse_ext_state
1800
+
1801
+ When set, the optional ``ETHTOOL_A_C33_PSE_EXT_SUBSTATE `` attribute identifies
1802
+ the extended error state of the C33 PSE. Possible values are:
1803
+ Possible values are:
1804
+
1805
+ .. kernel-doc :: include/uapi/linux/ethtool.h
1806
+ :identifiers: ethtool_c33_pse_ext_substate_class_num_events
1807
+ ethtool_c33_pse_ext_substate_error_condition
1808
+ ethtool_c33_pse_ext_substate_mr_pse_enable
1809
+ ethtool_c33_pse_ext_substate_option_detect_ted
1810
+ ethtool_c33_pse_ext_substate_option_vport_lim
1811
+ ethtool_c33_pse_ext_substate_ovld_detected
1812
+ ethtool_c33_pse_ext_substate_pd_dll_power_type
1813
+ ethtool_c33_pse_ext_substate_power_not_available
1814
+ ethtool_c33_pse_ext_substate_short_detected
1815
+
1816
+ When set, the optional ``ETHTOOL_A_C33_PSE_AVAIL_PW_LIMIT `` attribute
1817
+ identifies the C33 PSE power limit in mW.
1818
+
1819
+ When set the optional ``ETHTOOL_A_C33_PSE_PW_LIMIT_RANGES `` nested attribute
1820
+ identifies the C33 PSE power limit ranges through
1821
+ ``ETHTOOL_A_C33_PSE_PWR_VAL_LIMIT_RANGE_MIN `` and
1822
+ ``ETHTOOL_A_C33_PSE_PWR_VAL_LIMIT_RANGE_MAX ``.
1823
+ If the controller works with fixed classes, the min and max values will be
1824
+ equal.
1825
+
1775
1826
PSE_SET
1776
1827
=======
1777
1828
@@ -1783,6 +1834,8 @@ Request contents:
1783
1834
``ETHTOOL_A_PSE_HEADER `` nested request header
1784
1835
``ETHTOOL_A_PODL_PSE_ADMIN_CONTROL `` u32 Control PoDL PSE Admin state
1785
1836
``ETHTOOL_A_C33_PSE_ADMIN_CONTROL `` u32 Control PSE Admin state
1837
+ ``ETHTOOL_A_C33_PSE_AVAIL_PWR_LIMIT `` u32 Control PoE PSE available
1838
+ power limit
1786
1839
====================================== ====== =============================
1787
1840
1788
1841
When set, the optional ``ETHTOOL_A_PODL_PSE_ADMIN_CONTROL `` attribute is used
@@ -1793,6 +1846,18 @@ to control PoDL PSE Admin functions. This option is implementing
1793
1846
The same goes for ``ETHTOOL_A_C33_PSE_ADMIN_CONTROL `` implementing
1794
1847
``IEEE 802.3-2022 `` 30.9.1.2.1 acPSEAdminControl.
1795
1848
1849
+ When set, the optional ``ETHTOOL_A_C33_PSE_AVAIL_PWR_LIMIT `` attribute is
1850
+ used to control the available power value limit for C33 PSE in milliwatts.
1851
+ This attribute corresponds to the `pse_available_power ` variable described in
1852
+ ``IEEE 802.3-2022 `` 33.2.4.4 Variables and `pse_avail_pwr ` in 145.2.5.4
1853
+ Variables, which are described in power classes.
1854
+
1855
+ It was decided to use milliwatts for this interface to unify it with other
1856
+ power monitoring interfaces, which also use milliwatts, and to align with
1857
+ various existing products that document power consumption in watts rather than
1858
+ classes. If power limit configuration based on classes is needed, the
1859
+ conversion can be done in user space, for example by ethtool.
1860
+
1796
1861
RSS_GET
1797
1862
=======
1798
1863
0 commit comments