usb4_dp_port...ed_bandwidth(9)
π usb4_dp_port_requested_bandwidth(9) β Kernel API Manual β¨
okay so bestie, you found the page for usb4_dp_port_requested_bandwidth(9) and honestly? it's a little cutie. it lives in the Kernel API Manual, it's a kernel function, and it does exactly one thing but it does it slayfully. let's get into it π
β¨ NAME β¨
usb4_dp_port_requested_bandwidth β Read requested bandwidth π
like, that's the whole job. reading the bandwidth that's been requested. no cap.
π¦ SYNOPSIS π¦
int usb4_dp_port_requested_bandwidth (struct tb_port *port );
that's it. that's the whole call. one arg, one int coming back at you. iconic behavior tbh.
πΈ ARGUMENTS πΈ
portβ the DP IN adapter. that's the thing you're asking about. hand it over and it'll tell you what's up π«Ά
π DESCRIPTION π
so here's the vibe: this function reads the DPCD (graphics driver) requested bandwidth and returns it in Mb/s. that's megabits per second, for the record, so don't go confusing it with megabytes or the whole thing falls apart π
and the important little detail β it takes the programmed granularity into account. meaning it's not just spitting raw numbers back at you, it's doing the math with the granularity setting so the answer actually means something.
highkey a thoughtful function. we stan.
π RETURN π
here's what you can get back, and literally every one of these matters, so pay attention bestie π§
- Requested bandwidth in Mb/s β On success. this is the good outcome, the main character ending π
-EOPNOTSUPPβ If the adapter does not support bandwidth allocation mode. like, it can't do the thing. respectfully decline energy πENODATAβ If there is no active bandwidth request from the graphics driver. nobody asked for anything, so there's nothing to report π- Negative errno β On failure. the classic catch-all for when stuff just goes wrong. not a slay, but it happens π
lowkey important: watch out for thatENODATAvs the negative errno situation β they're listed separately, andENODATAis written without the leading dash in this page. don't come for me, that's just how it's documented. π
π SEE ALSO π
okay this list is long long, so buckle up. also worth knowing: the kernel file this all lives in is ./drivers/thunderbolt/usb4.c β
the whole thunderbolt/usb4 extended family, in the order the page gives 'em:
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_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_pci_port_set_ext_encapsulation(9)usb4_pci_port_ltssm_state(9)
yeah. seventy-something friends. it's giving family reunion π
π and that's the whole page bestie π
shoutout to ./drivers/thunderbolt for the source, and to October 2026 for the date β this page is stamped and sealed and ready for you. go read some bandwidth. you got this. 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