usb4_port_index(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… usb4_port_index β€” Kernel API Manual energy ✨

Okay bestie, welcome to the kernel API manual for usb4_port_index(9) β€” yes that's the manual name, we're in the Kernel API Manual section, and honestly? iconic. πŸŽ€


🌸 NAME 🌸

usb4_port_index β€” finds the matching USB4 port index, no cap πŸ’…


✨ SYNOPSIS ✨

int usb4_port_index (const struct tb_switch *sw , const struct tb_port
*port );

πŸ¦‹ ARGUMENTS πŸ¦‹

  • sw β€” the USB4 router 🫢 like, the switch itself, your main character
  • port β€” a USB4 protocol adapter or a lane adapter, either one works, we don't gatekeep πŸ’–

πŸ‘‘ DESCRIPTION πŸ‘‘

So the way this works is: usb4_port_index finds the matching USB4 port index β€” and yes, that count starts from 0, bestie, zero-indexed as always β€” for the port you handed it, aka the one that your given port goes through. That's the whole vibe. Find the index, match the port, slay. ✨


πŸ”₯ SEE ALSO πŸ”₯

Lowkey the biggest friend group in the kernel, fr fr. Go say hi to the kernel file ./drivers/thunderbolt/usb4.c and also to: usb4_switch_check_wakes(9), usb4_switch_setup(9), usb4_switch_configuration_valid(9), usb4_switch_read_uid(9), usb4_switch_drom_read(9), usb4_switch_lane_bonding_possible(9), usb4_switch_set_wake(9), usb4_switch_set_sleep(9), usb4_switch_nvm_sector_size(9), usb4_switch_nvm_read(9), usb4_switch_nvm_set_offset(9), usb4_switch_nvm_write(9), usb4_switch_nvm_authenticate(9), usb4_switch_nvm_authenticate_status(9), usb4_switch_credits_init(9), usb4_switch_query_dp_resource(9), usb4_switch_alloc_dp_resource(9), usb4_switch_dealloc_dp_resource(9), usb4_switch_map_pcie_down(9), usb4_switch_map_usb3_down(9), usb4_switch_add_ports(9), usb4_switch_remove_ports(9), usb4_port_unlock(9), usb4_port_hotplug_enable(9), usb4_port_reset(9), usb4_port_configure(9), usb4_port_unconfigure(9), usb4_port_configure_xdomain(9), usb4_port_unconfigure_xdomain(9), usb4_port_sb_read(9), usb4_port_sb_write(9), usb4_port_router_offline(9), usb4_port_router_online(9), usb4_port_enumerate_retimers(9), usb4_port_clx_supported(9), usb4_port_asym_supported(9), usb4_port_asym_set_link_width(9), usb4_port_asym_start(9), usb4_port_margining_caps(9), usb4_port_hw_margin(9), usb4_port_sw_margin(9), usb4_port_sw_margin_errors(9), usb4_port_retimer_set_inbound_sbtx(9), usb4_port_retimer_unset_inbound_sbtx(9), usb4_port_retimer_is_last(9), usb4_port_retimer_is_cable(9), usb4_port_retimer_nvm_sector_size(9), usb4_port_retimer_nvm_set_offset(9), usb4_port_retimer_nvm_write(9), usb4_port_retimer_nvm_authenticate(9), usb4_port_retimer_nvm_authenticate_status(9), usb4_port_retimer_nvm_read(9), usb4_usb3_port_max_link_rate(9), usb4_usb3_port_allocated_bandwidth(9), usb4_usb3_port_allocate_bandwidth(9), usb4_usb3_port_release_bandwidth(9), usb4_dp_port_set_cm_id(9), usb4_dp_port_bandwidth_mode_supported(9), usb4_dp_port_bandwidth_mode_enabled(9), usb4_dp_port_set_cm_bandwidth_mode_supported(9), usb4_dp_port_group_id(9), usb4_dp_port_set_group_id(9), usb4_dp_port_nrd(9), usb4_dp_port_set_nrd(9), usb4_dp_port_granularity(9), usb4_dp_port_set_granularity(9), usb4_dp_port_set_estimated_bandwidth(9), usb4_dp_port_allocated_bandwidth(9), usb4_dp_port_allocate_bandwidth(9), usb4_dp_port_requested_bandwidth(9), usb4_pci_port_set_ext_encapsulation(9), usb4_pci_port_ltssm_state(9) πŸ¦‹πŸ’œ


Okay that's the whole page, you ate that honestly πŸ’…βœ¨. Cute little sign-off: this one lives in ./drivers/thunderbolt, dated October 2026, and it's filed under the Kernel API Manual. Byeee πŸŽ€πŸŒ·

πŸ“¦ where this page comes from