igb_sgmii_uses_mdio_82575(9)
π
igb_sgmii_uses_mdio_82575 β from the Kernel API Manual, bestie π«Ά
okay so picture this: you're deep in kernel-land, snooping around this function called igb_sgmii_uses_mdio_82575, and you just need to know which way those I2C pins are leaning. That's literally the whole vibe of this page. Let's get into it π
β¨ NAME β¨
igb_sgmii_uses_mdio_82575 β the function that tells you whether those I2C pins are out here doing external MDIO duty. No cap, that's its whole job πΈ
π¦ SYNOPSIS π¦
bool igb_sgmii_uses_mdio_82575 (struct e1000_hw *hw );
likeβ¦ that's it. one function. one pointer. one bool at the end. iconic π
π ARGUMENTS π
hwβ pointer to the HW structure π«Ά that's the hardware struct, bestie, it's the thing you hand over so the function has something to look at.
π₯ DESCRIPTION π₯
So this function gets called to figure out what the I2C pins are actually up to: are they being used for I2C, or are they moonlighting as an external MDIO interface? π
and here's the tea β the two options are mutually exclusive, meaning it's one or the other, never both at once. it's giving "pick a lane." so yeah, the function's whole raison d'Γͺtre is answering that question. main character energy fr fr π§
π SEE ALSO π
the kernel file where the magic lives:
./drivers/net/ethernet/intel/igb/e1000_82575.c
and the whole extended friend group π«Ά β every single one of these cuties:
igb_write_vfta_i350(9)igb_check_for_link_media_swap(9)igb_init_phy_params_82575(9)igb_init_nvm_params_82575(9)igb_init_mac_params_82575(9)igb_set_sfp_media_type_82575(9)igb_acquire_phy_82575(9)igb_release_phy_82575(9)igb_read_phy_reg_sgmii_82575(9)igb_write_phy_reg_sgmii_82575(9)igb_get_phy_id_82575(9)igb_phy_hw_reset_sgmii_82575(9)igb_set_d0_lplu_state_82575(9)igb_set_d0_lplu_state_82580(9)igb_set_d3_lplu_state_82580(9)igb_acquire_nvm_82575(9)igb_release_nvm_82575(9)igb_acquire_swfw_sync_82575(9)igb_release_swfw_sync_82575(9)igb_get_cfg_done_82575(9)igb_get_link_up_info_82575(9)igb_check_for_link_82575(9)igb_power_up_serdes_link_82575(9)igb_get_pcs_speed_and_duplex_82575(9)igb_shutdown_serdes_link_82575(9)igb_reset_hw_82575(9)igb_init_hw_82575(9)igb_setup_copper_link_82575(9)igb_setup_serdes_link_82575(9)igb_sgmii_active_82575(9)igb_reset_init_script_82575(9)igb_read_mac_addr_82575(9)igb_power_down_phy_copper_82575(9)igb_clear_hw_cntrs_82575(9)igb_rx_fifo_flush_82575(9)igb_set_pcie_completion_timeout(9)igb_vmdq_set_anti_spoofing_pf(9)igb_vmdq_set_loopback_pf(9)igb_vmdq_set_replication_pf(9)igb_read_phy_reg_82580(9)igb_write_phy_reg_82580(9)igb_reset_mdicnfg_82580(9)igb_reset_hw_82580(9)igb_rxpbs_adjust_82580(9)igb_validate_nvm_checksum_with_offset(9)igb_update_nvm_checksum_with_offset(9)igb_validate_nvm_checksum_82580(9)igb_update_nvm_checksum_82580(9)igb_validate_nvm_checksum_i350(9)igb_update_nvm_checksum_i350(9)__igb_access_emi_reg(9)igb_read_emi_reg(9)igb_set_eee_i350(9)igb_set_eee_i354(9)igb_get_eee_status_i354(9)igb_get_thermal_sensor_data_generic(9)igb_init_thermal_sensor_thresh_generic(9)
like, that's the whole squad π go read them, iykyk π
and that's the page, bestie!! this one lives in the ./drivers/net/ethernet/intel/igb corner of the kernel, dated October 2026, and it slayed every second of it βππ
π¦ 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