e1000_read_phy_reg_hv(9)
π e1000_read_phy_reg_hv β like, the HV PHY register reader, bestie
okay so this is a page from the Kernel API Manual, and it's about e1000_read_phy_reg_hv, which is a function. Not a command, not a vibe, a function. Sit with that for a sec. π«Ά
πΈ NAME πΈ
e1000_read_phy_reg_hv β literally just: read HV PHY register. that's the whole thing. that's the assignment. β¨
π SYNOPSIS π
s32 e1000_read_phy_reg_hv (struct e1000_hw *hw , u32 offset , u16 *data
);
she takes three things and returns an s32, and honestly? iconic of her. π
π¦ ARGUMENTS π¦
hwβ pointer to the HW structure. like, the hardware situation. she needs to know which hardware before she does anything, obviously. π₯οΈoffsetβ register offset to be read. the exact spot you wanna peek at. πdataβ pointer to the read data. this is where the good stuff lands when she's done. π
β¨ DESCRIPTION β¨
so here's the whole storyline, no cap:
First, she acquires semaphore β get you a function that locks the door behind her, fr fr. π
Then she reads the PHY register at offset and stores the retrieved information in data. so data comes back with the goods, periodt.
And then the part that matters most: she releases the acquired semaphore before exiting. she does NOT just dip. she cleans up. main character energy with manners. π
okay but for real, the release-before-exit bit is in the description for a reason β that's the whole "don't leave the door locked" situation. πΈ
π§ SEE ALSO π§
the friend group π β also, the kernel file lives at ./drivers/net/ethernet/intel/e1000e/phy.c
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_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)
π sign-off π
okay that's the whole page, bestie π this little slice of the Kernel API Manual comes from ./drivers/net/ethernet/intel/e... and it's dated October 2026 β so yeah, mark your calendar, screenshot it, tell your group chat. ππ¦ slay β
π¦ 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