phy_reset_after_clk_enable(9)
π phy_reset_after_clk_enable(9) π
okay so bestie, welcome to the Kernel API Manual β this one's a lil' function from the networking/PHY corner of the kernel and honestly it's giving "small but does exactly what it says on the tin" π
β¨ NAME β¨
phy_reset_after_clk_enable β perform a PHY reset if needed π«
π¦ SYNOPSIS π¦
int phy_reset_after_clk_enable (struct phy_device *phydev );
πΈ ARGUMENTS πΈ
phydevβ the targetphy_devicestruct, i.e. the PHY you're doing all this for π«Ά
π DESCRIPTION π
So, some PHYs are known to need a reset after their refclk was enabled β like, that's just their whole personality, no cap. This function evaluates the flags and performs the reset if it's needed. Periodt. β¨
It returns:
< 0on error π0if the phy wasn't reset π1if the phy was reset π₯
π SEE ALSO π
Kernel file ./drivers/net/phy/phy_device.c β and bestie, here's the whole squad, all of them, no skips:
phy_uses_state_machine(9)phy_register_fixup(9)genphy_match_phy_device(9)get_phy_c45_ids(9)get_phy_c22_id(9)get_phy_device(9)phy_device_register(9)phy_device_remove(9)phy_get_c45_ids(9)phy_find_next(9)phy_prepare_link(9)phy_connect_direct(9)phy_connect(9)phy_disconnect(9)phy_poll_reset(9)phy_sfp_connect_phy(9)phy_sfp_disconnect_phy(9)phy_sfp_attach(9)phy_sfp_detach(9)phy_sfp_probe(9)phy_attach_direct(9)phy_detach(9)genphy_config_advert(9)genphy_c37_config_advert(9)genphy_setup_forced(9)genphy_restart_aneg(9)genphy_check_and_restart_aneg(9)__genphy_config_aneg(9)genphy_c37_config_aneg(9)genphy_aneg_done(9)genphy_update_link(9)genphy_read_status_fixed(9)genphy_read_status(9)genphy_c37_read_status(9)genphy_soft_reset(9)genphy_read_abilities(9)phy_remove_link_mode(9)phy_advertise_supported(9)phy_advertise_eee_all(9)phy_support_eee(9)phy_disable_eee(9)phy_support_sym_pause(9)phy_support_asym_pause(9)phy_set_sym_pause(9)phy_set_asym_pause(9)phy_validate_pause(9)phy_get_pause(9)phy_get_internal_delay(9)phy_get_tx_amplitude_gain(9)phy_get_mac_termination(9)phy_get_sfp_port(9)fwnode_mdio_find_device(9)fwnode_phy_find_device(9)fwnode_get_phy_node(9)phy_probe(9)phy_driver_register(9)
π reminder babe: this is generated kernel-doc from ./drivers/net/phy, so the vibe is fun but the semantics are absolutely the real ones.
mwah π that's the whole page β sourced from ./drivers/net/phy, dated October 2026. go reset some PHYs, you've got this π§β¨
π¦ 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