ixgbe_sw_init(9)
π ixgbe_sw_init(9) β Kernel API Manual π
okay so this is one of those kernel API pages, bestie β it's from the Kernel API Manual, and the star of the show is ixgbe_sw_init. She sets up the software side of an Intel ixgbe adapter, and honestly? it's giving "first day of school for a struct." β¨
πΈ NAME πΈ
ixgbe_sw_init β initialize the general software structures (the struct ixgbe_adapter, iykyk) π
β¨ SYNOPSIS β¨
int ixgbe_sw_init (struct ixgbe_adapter *adapter , const struct
ixgbe_info *ii );
π«Ά ARGUMENTS π«Ά
adapterβ the board's private structure, like the one you're about to initialize. this is her moment πiiβ pointer to theixgbe_infofor this device. she's literally the device's little info card π
π¦ DESCRIPTION π¦
so ixgbe_sw_init initializes the Adapter private data structure. that's the whole vibe. π
the fields get initialized based on PCI device information and OS network device settings (the MTU size, specifically) β so it's not pulling stuff out of thin air, it's reading the actual device and the actual network settings. no cap. β
π SEE ALSO π
the kernel file lives at ./drivers/net/ethernet/intel/ixgbe/ixgbe_main.c β that's the mothership π and here's the entire friend group, in order, every single one of them:
ixgbe_pcie_from_parent(9)ixgbe_read_reg(9)ixgbe_set_ivar(9)ixgbe_get_vf_idx(9)ixgbe_tx_timeout_reset(9)ixgbe_tx_maxrate(9)ixgbe_update_tx_ring_stats(9)ixgbe_update_rx_ring_stats(9)ixgbe_pf_handle_tx_hang(9)ixgbe_vf_handle_tx_hang(9)ixgbe_check_illegal_queue(9)ixgbe_handle_mdd_event(9)ixgbe_clean_tx_irq(9)ixgbe_rx_is_fcoe(9)ixgbe_rx_checksum(9)ixgbe_alloc_rx_buffers(9)ixgbe_process_skb_fields(9)ixgbe_is_non_eop(9)ixgbe_pull_tail(9)ixgbe_dma_sync_frag(9)ixgbe_cleanup_headers(9)ixgbe_reuse_rx_page(9)ixgbe_add_rx_frag(9)ixgbe_clean_rx_irq(9)ixgbe_configure_msix(9)ixgbe_update_itr(9)ixgbe_write_eitr(9)ixgbe_check_overtemp_subtask(9)ixgbe_check_phy_fw_load(9)ixgbe_check_module_power(9)ixgbe_check_link_cfg_err(9)ixgbe_process_link_status_event(9)ixgbe_handle_link_status_event(9)ixgbe_schedule_fw_event(9)ixgbe_aci_event_cleanup(9)ixgbe_handle_fw_event(9)ixgbe_irq_enable(9)ixgbe_poll(9)ixgbe_request_msix_irqs(9)ixgbe_intr(9)ixgbe_request_irq(9)ixgbe_irq_disable(9)ixgbe_configure_msi_and_legacy(9)ixgbe_configure_tx_ring(9)ixgbe_configure_tx(9)ixgbe_rss_indir_tbl_entries(9)ixgbe_store_key(9)ixgbe_init_rss_key(9)ixgbe_store_reta(9)ixgbe_store_vfreta(9)ixgbe_configure_rscctl(9)ixgbe_configure_rx(9)ixgbe_vlan_strip_disable(9)ixgbe_vlan_strip_enable(9)ixgbe_write_mc_addr_list(9)ixgbe_set_rx_mode(9)ixgbe_configure_dcb(9)ixgbe_hpbthresh(9)ixgbe_lpbthresh(9)ixgbe_clean_rx_ring(9)ixgbe_enable_link_status_events(9)ixgbe_disable_link_status_events(9)ixgbe_sfp_link_config(9)ixgbe_non_sfp_link_config(9)ixgbe_check_media_subtask(9)ixgbe_clear_vf_stats_counters(9)ixgbe_clean_tx_ring(9)ixgbe_clean_all_rx_rings(9)ixgbe_clean_all_tx_rings(9)ixgbe_set_eee_capable(9)ixgbe_tx_timeout(9)ixgbe_setup_tx_resources(9)ixgbe_setup_all_tx_resources(9)ixgbe_setup_rx_resources(9)ixgbe_setup_all_rx_resources(9)ixgbe_free_tx_resources(9)ixgbe_free_all_tx_resources(9)ixgbe_free_rx_resources(9)ixgbe_free_all_rx_resources(9)ixgbe_max_xdp_frame_size(9)ixgbe_change_mtu(9)ixgbe_open(9)ixgbe_close(9)ixgbe_update_stats(9)ixgbe_fdir_reinit_subtask(9)ixgbe_check_hang_subtask(9)ixgbe_watchdog_update_link(9)ixgbe_watchdog_link_is_up(9)ixgbe_watchdog_link_is_down(9)ixgbe_watchdog_flush_tx(9)ixgbe_watchdog_subtask(9)ixgbe_sfp_detection_subtask(9)ixgbe_sfp_link_config_subtask(9)ixgbe_service_timer(9)ixgbe_check_fw_error(9)ixgbe_service_task(9)ixgbe_set_mac(9)ixgbe_add_sanmac_netdev(9)ixgbe_del_sanmac_netdev(9)ixgbe_validate_rtr(9)ixgbe_set_prio_tc_map(9)ixgbe_setup_tc(9)ixgbe_configure_bridge_mode(9)ixgbe_irq_disable_single(9)ixgbe_txrx_ring_disable(9)ixgbe_txrx_ring_enable(9)ixgbe_enumerate_functions(9)ixgbe_wol_supported(9)ixgbe_set_fw_version_e610(9)ixgbe_set_fw_version(9)ixgbe_recovery_probe(9)ixgbe_probe(9)ixgbe_remove(9)ixgbe_io_error_detected(9)ixgbe_io_slot_reset(9)ixgbe_io_resume(9)ixgbe_init_module(9)ixgbe_exit_module(9)
and that's the whole thing!! mwah π this page came from the source/version tag ./drivers/net/ethernet/intel/i... and it's dated October 2026, brought to you under the ixgbe_sw_init(9) name β so go forth, initialize that private structure, and slay π
β¨π¦
π¦ 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