ENUM ETHTOOL_C33_PSE_EXT_SUBSTATE_POWER_NOT_AVAILABLE(9)
π enum ethtool_c33_pse_ext_substate_power_not_available(9) π
okay so bestie, welcome to the Kernel API Manual β yes that's the manual name, and yes we're doing this π This whole page is about the power_not_available states functions, straight out of IEEE 802.3-2022 33.2.4.4 Variables. It's giving very niche, very specific, very slay π
β¨ NAME β¨
enum ethtool_c33_pse_ext_substate_power_not_available β the power_not_available states functions, fr fr. Ground truth: IEEE 802.3-2022 33.2.4.4 Variables. π¦
πΈ SYNOPSIS πΈ
enum ethtool_c33_pse_ext_substate_power_not_available {
ETHTOOL_C33_PSE_EXT_SUBSTATE_POWER_NOT_AVAILABLE_BUDGET_EXCEEDED,
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
};
like, that's the whole enum, no cap. Four members, all of them icΓ³nica π
π Constants π
ETHTOOL_C33_PSE_EXT_SUBSTATE_POWER_NOT_AVAILABLE_BUDGET_EXCEEDEDβ power budget exceeded for the controller πΈ (it simply ran out of money, metaphorically, for power)ETHTOOL_C33_PSE_EXT_SUBSTATE_POWER_NOT_AVAILABLE_PORT_PW_LIMIT_EXCEEDS_CONTROLLER_BUDGETβ the configured port power limit exceeded the controller power budget π the port is asking for more than the controller's whole bag can holdETHTOOL_C33_PSE_EXT_SUBSTATE_POWER_NOT_AVAILABLE_PD_REQUEST_EXCEEDS_PORT_LIMITβ the power request from the PD exceeds the port limit π the device wanted more than the port was ever gonna give itETHTOOL_C33_PSE_EXT_SUBSTATE_POWER_NOT_AVAILABLE_HW_PW_LIMITβ power denied due to Hardware power limit π like the silicon itself said "no ma'am"
π¦ Description π¦
okay so here's the vibe: power_not_available is a variable, and it gets asserted in an implementation-dependent manner when the PSE is no longer capable of sourcing sufficient power to support the attached PD. π«Ά
and what counts as "sufficient power"? it's defined by classification β see 33.2.6 β¨ (iykyk). That last bit is the important part; don't @ me, @ the spec.
β οΈ quick vibe check: the manner in which this gets asserted is implementation-dependent, so it's not one-size-fits-all behaviour across implementations. Not me putting that on blast, it's literally in the description π
π SEE ALSO π
literally the entire extended universe, bestie. Kernel file ./include/uapi/linux/ethtool.h plus all of these icons:
struct ethtool_cmd(9)struct ethtool_drvinfo(9)struct ethtool_wolinfo(9)struct ethtool_regs(9)struct ethtool_eeprom(9)struct ethtool_eee(9)struct ethtool_modinfo(9)struct ethtool_coalesce(9)struct ethtool_ringparam(9)struct ethtool_channels(9)struct ethtool_pauseparam(9)enum ethtool_stringset(9)enum ethtool_mac_stats_src(9)enum ethtool_module_power_mode_policy(9)enum ethtool_module_power_mode(9)enum ethtool_c33_pse_ext_state(9)enum ethtool_c33_pse_ext_substate_mr_mps_valid(9)enum ethtool_c33_pse_ext_substate_error_condition(9)enum ethtool_c33_pse_ext_substate_mr_pse_enable(9)enum ethtool_c33_pse_ext_substate_option_detect_ted(9)enum ethtool_c33_pse_ext_substate_option_vport_lim(9)enum ethtool_c33_pse_ext_substate_ovld_detected(9)enum ethtool_c33_pse_ext_substate_short_detected(9)enum ethtool_pse_types(9)enum ethtool_c33_pse_admin_state(9)enum ethtool_c33_pse_pw_d_status(9)enum ethtool_podl_pse_admin_state(9)enum ethtool_podl_pse_pw_d_status(9)enum ethtool_mm_verify_status(9)enum ethtool_module_fw_flash_status(9)struct ethtool_gstrings(9)struct ethtool_sset_info(9)enum ethtool_test_flags(9)struct ethtool_test(9)struct ethtool_stats(9)struct ethtool_perm_addr(9)struct ethtool_tcpip4_spec(9)struct ethtool_ah_espip4_spec(9)struct ethtool_usrip4_spec(9)struct ethtool_tcpip6_spec(9)struct ethtool_ah_espip6_spec(9)struct ethtool_usrip6_spec(9)struct ethtool_flow_ext(9)struct ethtool_rx_flow_spec(9)struct ethtool_rxnfc(9)struct ethtool_rxfh_indir(9)struct ethtool_rxfh(9)struct ethtool_rx_ntuple_flow_spec(9)struct ethtool_rx_ntuple(9)struct ethtool_dump(9)struct ethtool_get_features_block(9)struct ethtool_gfeatures(9)struct ethtool_set_features_block(9)struct ethtool_sfeatures(9)struct ethtool_ts_info(9)struct ethtool_per_queue_op(9)struct ethtool_fecparam(9)enum ethtool_fec_config_bits(9)struct ethtool_link_settings(9)enum phy_upstream(9)
and that's the whole page, bestie, we ate and left no crumbs π
signing off from ./include/uapi/linux, dated October 2026 β this came from the Kernel API Manual, and honestly? iconic. πβ¨π
π¦ where this page comes from
- nixpkgs unstable: linux-manual 7.3.1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms