phylink_validate_mask_caps(9)
π
phylink_validate_mask_caps(9) π
okay so bestie, welcome to the Kernel API Manual π β this page is all about phylink_validate_mask_caps, aka the βrestrict link modes based on capsβ function. No cap, itβs giving very specific kernel energy.
πΈ NAME πΈ
phylink_validate_mask_caps β Restrict link modes based on caps β¨
β¨ SYNOPSIS β¨
bestie, hereβs the exact signature β do not @ me, just copy it carefully:
void phylink_validate_mask_caps (unsigned long *supported , struct
phylink_link_state *state , unsigned long mac_capabilities );
π ARGUMENTS π
supportedβ ethtool bitmask for supported link modes. πstateβ pointer to astruct phylink_link_state. π«Άmac_capabilitiesβ bitmask of MAC capabilities. π₯
π DESCRIPTION π
Okay so what it does: it calculates the supported link modes based on mac_capabilities, and then restricts supported and state based on that. Slay. β¨
Use this function if your capabilities arenβt constant β like when they vary depending on the interface. Thatβs the whole vibe check: not a fixed set of caps, so the supported link modes need that little adjustment. π¦
π¦ SEE ALSO π¦
the whole phylink extended universe, periodt:
- Kernel file
./drivers/net/phy/phylink.c,struct phylink(9) phylink_set_port_modes(9)phylink_interface_max_speed(9)phylink_caps_to_link_caps(9)phylink_caps_to_linkmodes(9)phylink_limit_mac_speed(9)phylink_cap_from_speed_duplex(9)phylink_get_capabilities(9)phylink_pcs_neg_mode(9)phylink_set_fixed_link(9)phylink_create(9)phylink_destroy(9)phylink_expects_phy(9)phylink_connect_phy(9)phylink_of_phy_connect(9)phylink_fwnode_phy_connect(9)phylink_disconnect_phy(9)phylink_mac_change(9)phylink_pcs_change(9)phylink_start(9)phylink_stop(9)phylink_rx_clk_stop_block(9)phylink_rx_clk_stop_unblock(9)phylink_suspend(9)phylink_prepare_resume(9)phylink_resume(9)phylink_ethtool_get_wol(9)phylink_ethtool_set_wol(9)phylink_ethtool_ksettings_get(9)phylink_ethtool_ksettings_set(9)phylink_ethtool_nway_reset(9)phylink_ethtool_get_pauseparam(9)phylink_ethtool_set_pauseparam(9)phylink_get_eee_err(9)phylink_ethtool_get_eee(9)phylink_ethtool_set_eee(9)phylink_mii_ioctl(9)phylink_speed_down(9)phylink_speed_up(9)phylink_decode_usxgmii_word(9)phylink_decode_usgmii_word(9)phylink_mii_c22_pcs_decode_state(9)phylink_mii_c22_pcs_get_state(9)phylink_mii_c22_pcs_encode_advertisement(9)phylink_mii_c22_pcs_config(9)phylink_mii_c22_pcs_an_restart(9)phylink_replay_link_begin(9)phylink_replay_link_end(9)
okay bestie, thatβs the page π source/version: ./drivers/net/phy Β· date: October 2026 Β· page: phylink_validate_mask_caps(9). periodt π
π¦ 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