igb_init_mas(9)
πΈ NAME πΈ
igb_init_mas β init Media Autosense feature if enabled in the NVM π
okay so real quick, this is page igb_init_mas(9) from the Kernel API Manual, and honestly? she's a little one-job icon. her whole thing is setting up the Media Autosense feature β but ONLY if it's enabled in the NVM, bestie. no NVM flag, no party. that's the whole vibe check. β¨
π SYNOPSIS π
void igb_init_mas (struct igb_adapter *adapter );
returns nothing (void), takes exactly one thing, and that thing is an adapter. slay, minimal. π
π¦ ARGUMENTS π¦
adapterβ the adapter struct π«Ά like, that's it, that's the argument. hand her youradapterand she does her little NVM-checking moment.
π SEE ALSO π
first up, the actual source file this whole situation lives in β go read it, iykyk:
- Kernel file
./drivers/net/ethernet/intel/igb/igb_main.c
and now, the iconic extended universe π« (yes, all of them, no skipping, I would NEVER):
- the i2c girlies πΈ β
igb_get_i2c_data(9),igb_set_i2c_data(9),igb_set_i2c_clk(9),igb_get_i2c_clk(9) - hw device + module life cycle π₯ β
igb_get_hw_dev(9),igb_init_module(9),igb_exit_module(9) - ring register + ivar β β
igb_cache_ring_register(9),igb_write_ivar(9) - msix main characters π
β
igb_configure_msix(9),igb_request_msix(9) - q vector crew π β
igb_free_q_vector(9),igb_reset_q_vector(9),igb_free_q_vectors(9) - interrupt scheme setup π§ β
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) - hw control handoff π¦ β
igb_release_hw_control(9),igb_get_hw_control(9) - tx modes + config + link power π β
igb_config_tx_modes(9),igb_setup_tx_mode(9),igb_configure(9),igb_power_up_link(9),igb_power_down_link(9) - media swap check + up π β
igb_check_swap_media(9),igb_up(9) - more i2c + fw version π β
igb_set_i2c_bb(9),igb_set_fw_version(9),igb_init_i2c(9) - probe & remove era β¨ β
igb_probe(9),igb_remove_i2c(9),igb_remove(9),igb_probe_vfs(9),igb_sw_init(9) - open/close (the double-underscore ones, fancy) π β
__igb_open(9),__igb_close(9) - tx resources + tctl + tx rings π₯ β
igb_setup_tx_resources(9),igb_setup_all_tx_resources(9),igb_setup_tctl(9),igb_configure_tx_ring(9),igb_configure_tx(9) - rx resources + filters + rx rings πΈ β
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) - freeing the tx stuff π β
igb_free_tx_resources(9),igb_free_all_tx_resources(9),igb_clean_tx_ring(9),igb_clean_all_tx_rings(9) - freeing the rx stuff π¦ β
igb_free_rx_resources(9),igb_free_all_rx_resources(9),igb_clean_rx_ring(9),igb_clean_all_rx_rings(9) - mac + multicast + rx mode π β
igb_set_mac(9),igb_write_mc_addr_list(9),igb_set_rx_mode(9) - link + lvmmc + watchdog + itr β β
igb_has_link(9),igb_check_lvmmc(9),igb_watchdog(9),igb_update_ring_itr(9),igb_update_itr(9) - timeouts, stats, mtu, uta π β
igb_tx_timeout(9),igb_get_stats64(9),igb_change_mtu(9),igb_update_stats(9),igb_set_uta(9) - interrupt handlers + polling π β
igb_intr_msi(9),igb_intr(9),igb_poll(9) - cleanup hot path besties π β
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) - ioctl + pci error handling π§ β
igb_mii_ioctl(9),igb_ioctl(9),igb_io_error_detected(9),igb_io_slot_reset(9),igb_io_resume(9) - last but never least π β
igb_rar_set_index(9),igb_read_i2c_byte(9),igb_write_i2c_byte(9)
ngl bestie, that's the whole page. one function, one argument, and a SEE ALSO list longer than my screen time report π but every single one of them is up there, fr fr. π
okay that's a wrap!! this lil page came from ./drivers/net/ethernet/intel/igb and it's dated October 2026 β so like, go forth and autosense those media (only if the NVM says so). mwah π«Άπβ¨
π¦ 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