e1000_power_up_phy_copper(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’– e1000_power_up_phy_copper(9) πŸ’–

okay so bestie, welcome to the Kernel API Manual β€” this is the page for e1000_power_up_phy_copper, and honestly? it's giving "the friend who fixes your hair after a rough night" energy. no cap. πŸŽ€


✨ NAME ✨

e1000_power_up_phy_copper β€” Restore copper link in case of PHY power down

like, the whole point: the copper link went to sleep and this function wakes it back up. 🌸


πŸ¦‹ SYNOPSIS πŸ¦‹

void e1000_power_up_phy_copper (struct e1000_hw *hw );

πŸ’… ARGUMENTS πŸ’…

  • hw β€” pointer to the HW structure. that's it. that's the whole vibe. one (1) pointer to the hardware struct and we're off 🫢

πŸ”₯ DESCRIPTION πŸ”₯

so here's the situation, bestie: sometimes the PHY gets powered down. why?

  • to save power 😴
  • to turn off the link during a driver unload πŸšͺ
  • or because wake on lan is not enabled πŸ’€

whatever the reason, this function restores the link to previous settings. it doesn't reinvent the link, it doesn't glow it up β€” it just puts it back the way it was. iconic behavior, tbh. ✨

lowkey the healthiest thing anyone's ever done in a driver: just restore the previous settings instead of making it weird.

🌈 SEE ALSO 🌈

the kernel file for all this lives at:

./drivers/net/ethernet/intel/e1000e/phy.c

and because we stay thorough in this house, here's the entire crew it rolls with (yes, all of them, I would never do you dirty by skipping the list) πŸ‘‘:

e1000e_check_reset_block_generic(9), e1000e_get_phy_id(9),
e1000e_phy_reset_dsp(9), e1000e_read_phy_reg_mdic(9),
e1000e_write_phy_reg_mdic(9), e1000e_read_phy_reg_m88(9),
e1000e_write_phy_reg_m88(9), e1000_set_page_igp(9),
__e1000e_read_phy_reg_igp(9), e1000e_read_phy_reg_igp(9),
e1000e_read_phy_reg_igp_locked(9), __e1000e_write_phy_reg_igp(9),
e1000e_write_phy_reg_igp(9), e1000e_write_phy_reg_igp_locked(9),
__e1000_read_kmrn_reg(9), e1000e_read_kmrn_reg(9),
e1000e_read_kmrn_reg_locked(9), __e1000_write_kmrn_reg(9),
e1000e_write_kmrn_reg(9), e1000e_write_kmrn_reg_locked(9),
e1000_set_master_slave_mode(9), e1000_copper_link_setup_82577(9),
e1000e_copper_link_setup_m88(9), e1000e_copper_link_setup_igp(9),
e1000_phy_setup_autoneg(9), e1000_copper_link_autoneg(9),
e1000e_setup_copper_link(9), e1000e_phy_force_speed_duplex_igp(9),
e1000e_phy_force_speed_duplex_m88(9),
e1000_phy_force_speed_duplex_ife(9),
e1000e_phy_force_speed_duplex_setup(9), e1000e_set_d3_lplu_state(9),
e1000e_check_downshift(9), e1000_check_polarity_m88(9),
e1000_check_polarity_igp(9), e1000_check_polarity_ife(9),
e1000_wait_autoneg(9), e1000e_phy_has_link_generic(9),
e1000e_get_cable_length_m88(9), e1000e_get_cable_length_igp_2(9),
e1000e_get_phy_info_m88(9), e1000e_get_phy_info_igp(9),
e1000_get_phy_info_ife(9), e1000e_phy_sw_reset(9),
e1000e_phy_hw_reset_generic(9), e1000e_get_cfg_done_generic(9),
e1000e_phy_init_script_igp3(9), e1000e_get_phy_type_from_id(9),
e1000e_determine_phy_address(9), e1000_get_phy_addr_for_bm_page(9),
e1000e_write_phy_reg_bm(9), e1000e_read_phy_reg_bm(9),
e1000e_read_phy_reg_bm2(9), e1000e_write_phy_reg_bm2(9),
e1000_enable_phy_wakeup_reg_access_bm(9),
e1000_disable_phy_wakeup_reg_access_bm(9),
e1000_access_phy_wakeup_reg_bm(9), e1000_power_down_phy_copper(9),
__e1000_read_phy_reg_hv(9), e1000_read_phy_reg_hv(9),
e1000_read_phy_reg_hv_locked(9), e1000_read_phy_reg_page_hv(9),
__e1000_write_phy_reg_hv(9), e1000_write_phy_reg_hv(9),
e1000_write_phy_reg_hv_locked(9), e1000_write_phy_reg_page_hv(9),
e1000_get_phy_addr_for_hv_page(9), e1000_access_phy_debug_regs_hv(9),
e1000_link_stall_workaround_hv(9), e1000_check_polarity_82577(9),
e1000_phy_force_speed_duplex_82577(9), e1000_get_phy_info_82577(9),
e1000_get_cable_length_82577(9)

ok and one tiny detail i'm obsessed with: e1000_power_down_phy_copper(9) is literally right there in the list β€” the down to this up. the duality. the narrative arc. πŸ˜­πŸ’œ


🧚 sign-off 🧚

this page came to you from the source ./drivers/net/ethernet/intel/e... and it's dated October 2026 β€” so yeah, future-dated manual page, main character energy fr fr. ⭐

go forth, restore that link, and remember: previous settings were probably fine the whole time. periodt. πŸ’…πŸ¦‹πŸŒΈ

πŸ“¦ where this page comes from