igb_mii_ioctl(9)
π igb_mii_ioctl(9) β the manual page, but make it make sense
okay so bestie, we're in section 9 of the kernel API manual today (that's the igb_mii_ioctl(9) page, if you're keeping track π), and honestly? this one is short. like, suspiciously short. but we're gonna cover every crumb, no cap.
Heads up: the NAME line is literally just igb_mii_ioctl - with nothing after the dash. not me staring at the void π that's just how the page is. no description was given, so no description we shall invent. lowkey iconic of it.
β¨ SYNOPSIS β¨
the whole function, delivered fresh:
int igb_mii_ioctl (struct net_device *netdev , struct ifreq *ifr , int cmd );
yeah that's it. three args, returns an int. she's compact π¦
πΈ ARGUMENTS πΈ
okay so here's the trio, one by one, exactly as the page spells them:
netdevβ pointer to netdev struct. yeah. that's the description. a pointer tonetdev. thank u king πifrβ interface structure. theifreqsituation. it's giving "you know what that is."cmdβ ioctl command to execute. the actual thing you're asking for. the main character of the call, honestly π
ngl these one-liners are doing the absolute bare minimum. but we keep every word, bc that's the rule. no detail left behind fr fr π
π¦ SEE ALSO π¦
okay so THIS is where the page goes feral. it's not a "see also", it's a whole family reunion. the kernel file itself is at ./drivers/net/ethernet/intel/igb/igb_main.c, and then there's the entire extended cast, all in section 9, in exactly this order:
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_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), igb_write_i2c_byte(9).
like. ninety of them. she said "you want context? have ALL the context." and we respect it π«Ά
and that's the whole page!! short, sweet, and absolutely committed to the bit. π
cute little sign-off: this one lives under ./drivers/net/ethernet/intel/igb, dated October 2026, and it's filed as igb_mii_ioctl(9). go read the source, bestie, it's all in igb_main.c πβ¨
π¦ 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