igb_read_mac_addr(9)
π igb_read_mac_addr(9) β the Kernel API Manual, bestie edition π
okay so we're in the igb section of the Kernel API Manual and today's main character is igb_read_mac_addr β the little function that goes and gets your device's MAC address. it's giving "who am I really" but for a network card. slay. π
β¨ NAME β¨
igb_read_mac_addr β Read device MAC address π«Ά
β¨ SYNOPSIS β¨
s32 igb_read_mac_addr (struct e1000_hw *hw );
β¨ ARGUMENTS β¨
hwβ pointer to the HW structure πΈ (like, the whole hardware vibe in one struct, iykyk)
β¨ DESCRIPTION β¨
So here's the tea β: this function reads the device MAC address from the EEPROM and stores the value. No cap, that's the whole job. π
And because devices with two ports use the same EEPROM, we increment the last bit in the MAC address for the second port. Two ports, one EEPROM, last bit gets a little +1 glow-up so they don't twin too hard. β¨π
π SEE ALSO π
Kernel file ./drivers/net/ethernet/intel/igb/e1000_nvm.c β literally the file, go read it bestie π
igb_raise_eec_clk(9)igb_lower_eec_clk(9)igb_shift_out_eec_bits(9)igb_shift_in_eec_bits(9)igb_poll_eerd_eewr_done(9)igb_acquire_nvm(9)igb_standby_nvm(9)e1000_stop_nvm(9)igb_release_nvm(9)igb_ready_nvm_eeprom(9)igb_read_nvm_spi(9)igb_read_nvm_eerd(9)igb_write_nvm_spi(9)igb_read_part_string(9)igb_validate_nvm_checksum(9)igb_update_nvm_checksum(9)igb_get_fw_version(9)
the whole NVM friend group fr fr π§π
okay that's the whole page, hope it ate π this gem lives in ./drivers/net/ethernet/intel/igb, dated October 2026, under the title igb_read_mac_addr(9) β mwah, bye bestie! π¦π
π¦ 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