e1000_set_d3_lplu_state(9)
π NAME π
okay so bestie, this is the Kernel API Manual page for e1000_set_d3_lplu_state(9) β the function that sets the d3 link power state. π
β¨
β¨ SYNOPSIS β¨
s32 e1000_set_d3_lplu_state (struct e1000_hw *hw , bool active );
π ARGUMENTS π
hwβ the struct containing variables accessed by shared code. So yeah, all the shared-code variables are living in there. π«Άactiveβtrueenables lplu,falsedisables lplu. Simple as that, no cap. π
π¦ DESCRIPTION π¦
This function sets the lplu state according to the active flag. When it's activating lplu, it also disables smart speed, and vice versa β the way these two are linked is lowkey iconic. π₯
lplu will not be activated unless the device's autonegotiation advertisement meets the standards of either 10 or 10/100 or 10/100/1000 at all duplexes. That's the gatekeeping rule, periodt. πͺβ¨
π₯ RETURN π₯
E1000_ERR_PHYβ if it fails to read/write the PHY.E1000_SUCCESSβ at any other case.
π SEE ALSO π
Kernel file: ./drivers/net/ethernet/intel/e1000/e1000_hw.c β that's where this lives, iykyk. π π«
The linked-man-page besties, in order, are literally this whole squad:
e1000_set_phy_type(9),e1000_phy_init_script(9),e1000_set_mac_type(9),e1000_set_media_type(9),e1000_reset_hw(9),e1000_init_hw(9),e1000_adjust_serdes_amplitude(9),e1000_setup_link(9),e1000_setup_fiber_serdes_link(9),e1000_copper_link_rtl_setup(9),e1000_copper_link_preconfig(9),e1000_copper_link_igp_setup(9),e1000_copper_link_mgp_setup(9),e1000_copper_link_autoneg(9),e1000_copper_link_postconfig(9),e1000_setup_copper_link(9),e1000_phy_setup_autoneg(9),e1000_phy_force_speed_duplex(9),e1000_config_collision_dist(9),e1000_config_mac_to_phy(9),e1000_force_mac_fc(9),e1000_config_fc_after_link_up(9),e1000_check_for_serdes_link_generic(9),e1000_check_for_link(9),e1000_get_speed_and_duplex(9),e1000_wait_autoneg(9)e1000_raise_mdi_clk(9),e1000_lower_mdi_clk(9),e1000_shift_out_mdi_bits(9),e1000_shift_in_mdi_bits(9),e1000_read_phy_reg(9),e1000_write_phy_reg(9),e1000_phy_hw_reset(9),e1000_phy_reset(9),e1000_detect_gig_phy(9),e1000_phy_reset_dsp(9),e1000_phy_igp_get_info(9),e1000_phy_m88_get_info(9),e1000_phy_get_info(9),e1000_init_eeprom_params(9),e1000_raise_ee_clk(9),e1000_lower_ee_clk(9),e1000_shift_out_ee_bits(9),e1000_shift_in_ee_bits(9),e1000_acquire_eeprom(9),e1000_standby_eeprom(9),e1000_release_eeprom(9),e1000_spi_eeprom_ready(9),e1000_read_eeprom(9),e1000_validate_eeprom_checksum(9),e1000_update_eeprom_checksum(9),e1000_write_eeprom(9),e1000_write_eeprom_spi(9),e1000_write_eeprom_microwire(9)e1000_read_mac_addr(9),e1000_init_rx_addrs(9),e1000_hash_mc_addr(9),e1000_rar_set(9),e1000_write_vfta(9),e1000_clear_vfta(9),e1000_setup_led(9),e1000_cleanup_led(9),e1000_led_on(9),e1000_led_off(9),e1000_clear_hw_cntrs(9),e1000_reset_adaptive(9),e1000_update_adaptive(9),e1000_get_bus_info(9),e1000_write_reg_io(9),e1000_get_cable_length(9),e1000_check_polarity(9),e1000_check_downshift(9),e1000_config_dsp_after_link_change(9),e1000_set_phy_mode(9),e1000_set_vco_speed(9),e1000_enable_mng_pass_thru(9),e1000_get_auto_rd_done(9),e1000_get_phy_cfg_done(9)
okay that's the whole page, bestie π«Ά β cute little sign-off: the source/version is ./drivers/net/ethernet/intel/e... and the date is October 2026. Now go forth and set that d3 link power state π
β¨
π¦ 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