e1000_write_phy_reg_page_hv(9)
π e1000_write_phy_reg_page_hv(9) π
okay so bestie, welcome to the Kernel API Manual β yes we're literally in the kernel docs rn and it's giving elite hacker girlie energy β¨ This one's about e1000_write_phy_reg_page_hv, and ngl it does exactly what it says on the tin.
β¨ NAME β¨
e1000_write_phy_reg_page_hv β write an HV PHY register π¦
πΈ SYNOPSIS πΈ
s32 e1000_write_phy_reg_page_hv (struct e1000_hw *hw , u32 offset , u16
data );
like yes she's small, she's cute, she takes hw, offset, and data, and she returns an s32. periodt π
π ARGUMENTS π
hwβ pointer to the HW structure π (the whole hardware vibe lives in here)offsetβ register offset to write to π― like, which slot are we pokingdataβ data to write at register offset π the actual payload, the main character
π§ DESCRIPTION π§
So what she does: writes the data to the PHY register at the offset. that's it, that's the whole job, and she ate π₯
β οΈ but listen β she assumes the semaphore is already acquired and the page is already set. she does NOT do that for you, bestie. you gotta handle that yourself or it's gonna be a whole situation π no cap.
π SEE ALSO π
Kernel file ./drivers/net/ethernet/intel/e1000e/phy.c β go read the source, iykyk π
and here's the full friend group, every single one, fr fr:
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_up_phy_copper(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_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)
π« and that's the whole page, bestie π«
this came from ./drivers/net/ethernet/intel/e... and it's dated October 2026 β so like, future vibes, we love a timestamp that's ahead of schedule π°οΈβ¨ mwah, go write some registers responsibly π«Άπ
π¦ 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