phylink_rx_clk_stop_unblock(9)
πΈ NAME πΈ
phylink_rx_clk_stop_unblock β like, the function that unblocks the PHY's ability to stop the receive clock π
(this is the "okay bestie you can breathe again" of receive-clock-stopping permissions)
So real talk, the manual name here is phylink_rx_clk_stop_unblock(9), and it lives in the Kernel API Manual, which β yes β is exactly as iconic as it sounds π
β¨ SYNOPSIS β¨
void phylink_rx_clk_stop_unblock (struct phylink *pl );
That's it. That's the whole vibe. No return value, no drama, just a void queen doing her one job π«Ά
π ARGUMENTS π
plβ a pointer to astruct phylinkthat came back fromphylink_createπ± iykyk, don't just pass in some random pointer, she needs the real one
π DESCRIPTION π
okay so here's the tea β β every single call to phylink_rx_clk_stop_block has to be balanced with a matching call to phylink_rx_clk_stop_unblock. Balanced. Like, for real. No cap.
Why? Because this is the function that restores the PHY's ability to stop the receive clock when the receive path is in EEE LPI mode β Basically phylink_rx_clk_stop_block says "nope, clock stays on," and this one says "okay bestie, you may stop it again when the situation calls for it" π¦
Think of it as the ultimate pair β one blocks, one unblocks, and if you leave them unbalanced, that's giving unfinished business π
π SEE ALSO π
The main character lives right here in ./drivers/net/phy/phylink.c, and honestly the whole friend group is extensive:
- Structs & files:
struct phylink(9) - The whole phylink lore drop:
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_validate_mask_caps(9),phylink_pcs_neg_mode(9),phylink_set_fixed_link(9) - Lifecycle besties:
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) - The sibling:
phylink_rx_clk_stop_block(9)β the other half of this iconic duo π« - Sleep/wake era:
phylink_suspend(9),phylink_prepare_resume(9),phylink_resume(9) - ethtool zone:
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) - Misc icons:
phylink_mii_ioctl(9),phylink_speed_down(9),phylink_speed_up(9) - Decode girlies:
phylink_decode_usxgmii_word(9),phylink_decode_usgmii_word(9) - The c22 PCS crew:
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) - Replay duo:
phylink_replay_link_begin(9),phylink_replay_link_end(9)
π reminder bestie:phylink_rx_clk_stop_blockandphylink_rx_clk_stop_unblockare a matched set. Unbalanced calls = not the vibe. Keep the count even, periodt.
and that's the whole page, bestie π§π This one's brought to you from ./drivers/net/phy, dated October 2026, and it's phylink_rx_clk_stop_unblock(9) all the way down π Go balance those calls, ily, bye πβ¨
π¦ 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