genphy_c37_config_advert(9)
π genphy_c37_config_advert
okay bestie, real talk: this one is a lil kernel function from the Kernel API Manual, and honestly? it's giving "quietly doing the most." β¨
π NAME
genphy_c37_config_advert β sanitize and advertise auto-negotiation parameters π«Ά
β¨ SYNOPSIS
int genphy_c37_config_advert (struct phy_device *phydev );
πΈ ARGUMENTS
phydevβ targetphy_devicestruct. that's the PHY you're doing this to, no cap π
π¦ DESCRIPTION
So here's the tea β: this function writes MII_ADVERTISE with the appropriate values β but first it sanitizes those values so you only ever advertise what's actually supported. like, it does a lil vibe check on your advertisement before letting it out the door π
it returns:
< 0on error π0if the PHY's advertisement hasn't changed> 0if it has changed π₯
β¨ important detail, bestie: this function is intended for Clause 37 1000Base-X mode. not your average everyday mode, iykyk.
π SEE ALSO
Kernel file ./drivers/net/phy/phy_device.c β and honestly the whole friend group:
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)phy_reset_after_clk_enable(9)genphy_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)
like okay, go off, entire subsystem π
and that's the whole page, bestie π it lives over in ./drivers/net/phy, the Kernel API Manual version is dated October 2026, and the page title is genphy_c37_config_advert(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