ixgbe_read_i2c_phy_82598(9)
π ixgbe_read_i2c_phy_82598 β a Kernel API Manual moment
okay so bestie, we're in the Kernel API Manual today and the star of the show is ixgbe_read_i2c_phy_82598 π
β¨ NAME β¨
ixgbe_read_i2c_phy_82598 β Reads 8 bit word over I2C interface.
like, that's the whole vibe. it reads a thing. over I2C. we love a function with a clear purpose π
πΈ SYNOPSIS πΈ
int ixgbe_read_i2c_phy_82598 (struct ixgbe_hw *hw , u8 dev_addr , u8
byte_offset , u8 *eeprom_data );
it returns an int, it takes four args, and yes the line break in the middle of the signature is just how it's printed, don't come for it π«Ά
π¦ ARGUMENTS π¦
hwβ pointer to hardware structure. your hardware bestie. the whole device, basically πdev_addrβ address to read frombyte_offsetβ byte offset to read fromdev_addreeprom_dataβ value read. this is where the good stuff lands, it's a pointer so it writes back out to you π«
π DESCRIPTION π
so what does it actually do? it performs an 8 byte read operation to the SFP module's data over the I2C interface β¨
yes β the NAME says 8 bit word and the DESCRIPTION says 8 byte read, and we are reporting both exactly as the page says them because that is not my business to fix, that is the source's business π (iykyk β go read the C file if you're curious, the SEE ALSO has the path below π)
π₯ SEE ALSO π₯
the kernel file lives right here, go off:
./drivers/net/ethernet/intel/ixgbe/ixgbe_82598.c
and the whole friend group, alphabetically-ish, all present and accounted for:
ixgbe_set_pcie_completion_timeout(9)ixgbe_init_phy_ops_82598(9)ixgbe_start_hw_82598(9)ixgbe_get_link_capabilities_82598(9)ixgbe_get_media_type_82598(9)ixgbe_fc_enable_82598(9)ixgbe_start_mac_link_82598(9)ixgbe_validate_link_ready(9)ixgbe_check_mac_link_82598(9)ixgbe_setup_mac_link_82598(9)ixgbe_setup_copper_link_82598(9)ixgbe_reset_hw_82598(9)ixgbe_set_vmdq_82598(9)ixgbe_clear_vmdq_82598(9)ixgbe_set_vfta_82598(9)ixgbe_clear_vfta_82598(9)ixgbe_read_analog_reg8_82598(9)ixgbe_write_analog_reg8_82598(9)ixgbe_read_i2c_eeprom_82598(9)ixgbe_read_i2c_sff8472_82598(9)ixgbe_set_lan_id_multi_port_pcie_82598(9)ixgbe_set_rxpba_82598(9)
twenty-two besties. a whole group chat. the _82598 suffix is iconic and they all committed to it π
lowkey, if you're poking at the 82598 driver, read the siblings above before you go changing anything β some of them set up state that this one assumes exists. no cap, don't skip the setup calls π
that's the page!! it's from the Kernel API Manual, source path got truncated to ./drivers/net/ethernet/intel/i... in the footer, and the date stamp is October 2026 β so when you cite it, cite it with the right month girlie ποΈπ slay, bye! π§β¨
π¦ 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