igb_write_i2c_byte(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… igb_write_i2c_byte(9) β€” from the Kernel API Manual, bestie

okay so this is a page straight out of the Kernel API Manual, and it's about one (1) tiny little function that sends one (1) tiny little byte over I2C. lowkey obsessed with how much lore surrounds one byte. πŸŽ€


✨ NAME ✨

igb_write_i2c_byte β€” Writes 8 bit word over I2C

like, that's the whole job. one byte. over I2C. she's doing her little thing. πŸ¦‹


🌸 SYNOPSIS 🌸

s32 igb_write_i2c_byte (struct e1000_hw *hw , u8 byte_offset , u8
dev_addr , u8 data );

the way she returns an s32 and takes exactly four things β€” no more, no less, main character energy fr fr. πŸ’…


πŸŽ€ ARGUMENTS πŸŽ€

  • hw β€” pointer to hardware structure. yes queen, hand over the hardware, we're going in 🫢
  • byte_offset β€” byte offset to write. literally the where of it all.
  • dev_addr β€” device address. the who, iykyk
  • data β€” value to write. the actual byte itself, the star of the show ⭐

πŸ’– DESCRIPTION πŸ’–

Performs byte write operation over I2C interface at a specified device address.

that's it. that's the vibe. she does a byte write, over the I2C interface, at a device address you specified. no cap, it's giving "small function, big responsibility." 🧚


πŸ‘‘ SEE ALSO πŸ‘‘

the kernel file this whole saga lives in:

./drivers/net/ethernet/intel/igb/igb_main.c

and now the entire extended friend group β€” every single one of these, not skipping a single bestie 😭:

igb_get_i2c_data(9), igb_set_i2c_data(9), igb_set_i2c_clk(9),
igb_get_i2c_clk(9), igb_get_hw_dev(9), igb_init_module(9),
igb_exit_module(9), igb_cache_ring_register(9), igb_write_ivar(9),
igb_configure_msix(9), igb_request_msix(9), igb_free_q_vector(9),
igb_reset_q_vector(9), igb_free_q_vectors(9),
igb_clear_interrupt_scheme(9), igb_set_interrupt_capability(9),
igb_alloc_q_vector(9), igb_alloc_q_vectors(9),
igb_init_interrupt_scheme(9), igb_request_irq(9), igb_irq_disable(9),
igb_irq_enable(9), igb_release_hw_control(9), igb_get_hw_control(9),
igb_config_tx_modes(9), igb_setup_tx_mode(9), igb_configure(9),
igb_power_up_link(9), igb_power_down_link(9), igb_check_swap_media(9),
igb_up(9), igb_set_i2c_bb(9), igb_set_fw_version(9), igb_init_mas(9),
igb_init_i2c(9), igb_probe(9), igb_remove_i2c(9), igb_remove(9),
igb_probe_vfs(9), igb_sw_init(9), __igb_open(9), __igb_close(9),
igb_setup_tx_resources(9), igb_setup_all_tx_resources(9),
igb_setup_tctl(9), igb_configure_tx_ring(9), igb_configure_tx(9),
igb_setup_rx_resources(9), igb_setup_all_rx_resources(9),
igb_setup_mrqc(9), igb_setup_rctl(9), igb_setup_srrctl(9),
igb_configure_rx_ring(9), igb_configure_rx(9), igb_free_tx_resources(9),
igb_free_all_tx_resources(9), igb_clean_tx_ring(9),
igb_clean_all_tx_rings(9), igb_free_rx_resources(9),
igb_free_all_rx_resources(9), igb_clean_rx_ring(9),
igb_clean_all_rx_rings(9), igb_set_mac(9), igb_write_mc_addr_list(9),
igb_set_rx_mode(9), igb_has_link(9), igb_check_lvmmc(9),
igb_watchdog(9), igb_update_ring_itr(9), igb_update_itr(9),
igb_tx_timeout(9), igb_get_stats64(9), igb_change_mtu(9),
igb_update_stats(9), igb_set_uta(9), igb_intr_msi(9), igb_intr(9),
igb_poll(9), igb_clean_tx_irq(9), igb_reuse_rx_page(9),
igb_add_rx_frag(9), igb_is_non_eop(9), igb_cleanup_headers(9),
igb_process_skb_fields(9), igb_alloc_rx_buffers(9), igb_mii_ioctl(9),
igb_ioctl(9), igb_io_error_detected(9), igb_io_slot_reset(9),
igb_io_resume(9), igb_rar_set_index(9), igb_read_i2c_byte(9)

and yeah β€” she's from ./drivers/net/ethernet/intel/igb, dated October 2026, and she's page igb_write_i2c_byte(9) of the Kernel API Manual. go off, byte-writing icon πŸ’œβœ¨
πŸ“¦ where this page comes from