i40e_aq_que...mp_bw_config(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

✨ NAME ✨

okay so bestie, this page is from the Kernel API Manual and it's all about one very specific little function:

i40e_aq_query_switch_comp_bw_config β€” which is literally "Query Switch comp BW configuration" πŸ’…

no cap, that's the whole job. it goes and asks the switching component what its bandwidth config looks like. that's it. that's the vibe. πŸŽ€


🌸 SYNOPSIS 🌸

int i40e_aq_query_switch_comp_bw_config (struct i40e_hw *hw , u16 seid ,
struct i40e_aqc_query_switching_comp_bw_config_resp *bw_data , struct
i40e_asq_cmd_details *cmd_details );

like, yes, it returns an int, and yes, the line breaks are ugly, i don't make the rules πŸ™ˆ


πŸ¦‹ ARGUMENTS πŸ¦‹

four args, all of them serving looks, all of them mandatory to know about:

  • hw β€” pointer to the hw struct. the main character, honestly πŸ‘‘ everything starts here.
  • seid β€” the seid of the switching component. it's a u16 and it's how you tell the function which switching component you're being nosy about πŸ•΅οΈβ€β™€οΈ
  • bw_data β€” Buffer to hold switching component's BW configuration. it's a struct i40e_aqc_query_switching_comp_bw_config_resp * and it's literally the container for the tea you're asking for πŸ“
  • cmd_details β€” pointer to command details structure or NULL. NULL is fully valid here, she's flexible πŸ’…

πŸ’– SEE ALSO πŸ’–

first up, the source of truth, the mothership:

Kernel file ./drivers/net/ethernet/intel/i40e/i40e_common.c

and now... the friend group. it's a lot of friends. like an entire group chat you got added to and never muted. every single one of them, no cuts, no skips πŸ”₯

i40e_set_mac_type(9)
i40e_debug_aq(9)
i40e_check_asq_alive(9)
i40e_aq_queue_shutdown(9)
i40e_aq_get_set_rss_lut(9)
i40e_aq_get_rss_lut(9)
i40e_aq_set_rss_lut(9)
i40e_aq_get_set_rss_key(9)
i40e_aq_get_rss_key(9)
i40e_aq_set_rss_key(9)
i40e_init_shared_code(9)
i40e_aq_mac_address_read(9)
i40e_aq_mac_address_write(9)
i40e_get_mac_addr(9)
i40e_get_port_mac_addr(9)
i40e_pre_tx_queue_cfg(9)
i40e_get_pba_string(9)
i40e_get_media_type(9)
i40e_poll_globr(9)
i40e_pf_reset(9)
i40e_clear_hw(9)
i40e_clear_pxe_mode(9)
i40e_led_is_mine(9)
i40e_led_get(9)
i40e_led_set(9)
i40e_aq_get_phy_capabilities(9)
i40e_aq_set_phy_config(9)
i40e_set_fc(9)
i40e_aq_set_mac_config(9)
i40e_aq_clear_pxe_mode(9)
i40e_aq_set_link_restart_an(9)
i40e_aq_get_link_info(9)
i40e_aq_set_phy_int_mask(9)
i40e_aq_set_mac_loopback(9)
i40e_aq_set_phy_debug(9)
i40e_aq_add_vsi(9)
i40e_aq_set_default_vsi(9)
i40e_aq_clear_default_vsi(9)
i40e_aq_set_vsi_unicast_promiscuous(9)
i40e_aq_set_vsi_multicast_promiscuous(9)
i40e_aq_set_vsi_mc_promisc_on_vlan(9)
i40e_aq_set_vsi_uc_promisc_on_vlan(9)
i40e_aq_set_vsi_bc_promisc_on_vlan(9)
i40e_aq_set_vsi_broadcast(9)
i40e_aq_get_vsi_params(9)
i40e_aq_update_vsi_params(9)
i40e_aq_get_switch_config(9)
i40e_aq_set_switch_config(9)
i40e_aq_get_firmware_version(9)
i40e_aq_send_driver_version(9)
i40e_get_link_status(9)
i40e_update_link_info(9)
i40e_aq_add_veb(9)
i40e_aq_get_veb_parameters(9)
i40e_prepare_add_macvlan(9)
i40e_aq_add_macvlan(9)
i40e_aq_add_macvlan_v2(9)
i40e_aq_remove_macvlan(9)
i40e_aq_remove_macvlan_v2(9)
i40e_aq_send_msg_to_vf(9)
i40e_aq_debug_read_register(9)
i40e_aq_debug_write_register(9)
i40e_aq_request_resource(9)
i40e_aq_release_resource(9)
i40e_aq_read_nvm(9)
i40e_aq_erase_nvm(9)
i40e_parse_discover_capabilities(9)
i40e_aq_discover_capabilities(9)
i40e_aq_update_nvm(9)
i40e_aq_get_lldp_mib(9)
i40e_aq_set_lldp_mib(9)
i40e_aq_cfg_lldp_mib_change_event(9)
i40e_aq_stop_lldp(9)
i40e_aq_start_lldp(9)
i40e_aq_set_dcb_parameters(9)
i40e_aq_get_cee_dcb_config(9)
i40e_aq_add_udp_tunnel(9)
i40e_aq_del_udp_tunnel(9)
i40e_aq_delete_element(9)
i40e_aq_dcb_updated(9)
i40e_aq_tx_sched_cmd(9)
i40e_aq_config_vsi_bw_limit(9)
i40e_aq_config_vsi_tc_bw(9)
i40e_aq_config_switch_comp_ets(9)
i40e_aq_config_switch_comp_bw_config(9)
i40e_aq_query_vsi_bw_config(9)
i40e_aq_query_vsi_ets_sla_config(9)
i40e_aq_query_switch_comp_ets_config(9)
i40e_aq_query_port_ets_config(9)
i40e_validate_filter_settings(9)
i40e_set_filter_control(9)
i40e_aq_add_rem_control_packet_filter(9)
i40e_add_filter_to_drop_tx_flow_control_frames(9)
i40e_aq_alternate_read(9)
i40e_aq_suspend_port_tx(9)
i40e_aq_resume_port_tx(9)
i40e_set_pci_config_data(9)
i40e_aq_debug_dump(9)
i40e_read_bw_from_alt_ram(9)
i40e_aq_configure_partition_bw(9)
i40e_read_phy_register_clause22(9)
i40e_write_phy_register_clause22(9)
i40e_read_phy_register_clause45(9)
i40e_write_phy_register_clause45(9)
i40e_get_phy_address(9)
i40e_led_get_reg(9)
i40e_led_set_reg(9)
i40e_led_get_phy(9)
i40e_led_set_phy(9)
i40e_aq_rx_ctl_read_register(9)
i40e_read_rx_ctl(9)
i40e_aq_rx_ctl_write_register(9)
i40e_write_rx_ctl(9)
i40e_mdio_if_number_selection(9)
i40e_aq_set_phy_register_ext(9)
i40e_aq_get_phy_register_ext(9)
i40e_aq_write_ddp(9)
i40e_aq_get_ddp_list(9)
i40e_find_segment_in_package(9)
i40e_ddp_exec_aq_section(9)
i40e_validate_profile(9)
i40e_write_profile(9)
i40e_rollback_profile(9)
i40e_aq_add_cloud_filters(9)
i40e_aq_add_cloud_filters_bb(9)
i40e_aq_rem_cloud_filters(9)
i40e_aq_rem_cloud_filters_bb(9)

like i said. a lot. but they're all iconic in their own way, iykyk πŸ’œ


and that's the whole page, bestie 🫢 this little gem lives in ./drivers/net/ethernet/intel/i40e, it's dated October 2026, and it's living rent-free in section 9 of the Kernel API Manual. go query some bandwidth. slay. πŸ’…βœ¨

πŸ“¦ where this page comes from