phy_sfp_disconnect_phy(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… phy_sfp_disconnect_phy(9) πŸ’…

🌸 NAME 🌸

okay bestie, this is the Kernel API Manual page for phy_sfp_disconnect_phy, and its whole personality is: Disconnect the SFP module's PHY from the upstream PHY. periodt. πŸ’–

✨ SYNOPSIS ✨

void phy_sfp_disconnect_phy (void *upstream , struct phy_device *phy );

πŸŽ€ ARGUMENTS πŸŽ€

two little params, no cap:

  • upstream β€” pointer to the upstream phy device
  • phy β€” pointer to the SFP module's phy device

πŸ¦‹ DESCRIPTION πŸ¦‹

This helper is literally here to keep track of PHY devices on the link. 🫢 It's the one that removes the SFP module's phy to the phy namespace of the upstream phy.

yes, that's the original wording β€” we're keeping it, iykyk πŸ’€

And because the module phy will be destroyed, re-inserting the same module will add a new phy with a new index. πŸ¦‹ That's the whole vibe: same module goes back in, new phy, new index, main character energy. ✨

πŸ’– SEE ALSO πŸ’–

go peek at Kernel file ./drivers/net/phy/phy_device.c and the whole squad:

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_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_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).


mwah πŸ’‹ this page's source/version is ./drivers/net/phy, dated October 2026, and yes bestie, it's the phy_sfp_disconnect_phy(9) manual page. bye, go disconnect that SFP module's PHY from the upstream PHY 🫢✨

πŸ“¦ where this page comes from