usb4_usb3_po...ax_link_rate(9)
β¨ usb4_usb3_port_max_link_rate(9) β¨
okay so bestie, we're deep in the Kernel API Manual today β this is a (9) page, which literally means kernel-internals territory, so put on your reading glasses π. This one's all about usb4_usb3_port_max_link_rate, and ngl it's a short one but it's iconic.
π NAME π
usb4_usb3_port_max_link_rate β Maximum supported USB3 link rate
like, it tells you the fastest that USB3 adapter can vibe at. no cap.
πΈ SYNOPSIS πΈ
int usb4_usb3_port_max_link_rate (struct tb_port *port );
mmhm. one function, one argument, returns an int. clean. minimal. main character energy π
π¦ ARGUMENTS π¦
portβ the USB3 adapter port, bestie. that's the one you're asking about π«Ά
π₯ RETURN π₯
So here's the tea: you get back the maximum supported link rate of a USB3 adapter in Mb/s. megabit-per-second, not megabyte, don't come for me π
And if something goes sideways? You get a negative errno instead. it's giving "error, but make it an integer" π
π SEE ALSO π
okay this is the part where the page just absolutely GOES OFF β the kernel file ./drivers/thunderbolt/usb4.c is the home of all of this, and there are so many siblings it's basically a whole family reunion. scroll responsibly π
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_port_index(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_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)
π lowkey a whole ecosystem in here. every one of those is a real (9) page β go read them, i'll wait π§
okay that's the whole page bestie, we ate and left no crumbs π this absolute gem lives in ./drivers/thunderbolt, and the source/version tag is October 2026 β so like, future vibes fr fr. bye pookie, go forth and query those link rates π
β¨π
π¦ 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