drm_dp_tunnel_available_bw(9)
π drm_dp_tunnel_available_bw(9) β the "how much bandwidth do we actually have" girlie π
okay so bestie, welcome to the Kernel API Manual β¨ this one lives in section 9 and honestly it's giving "small function, big feelings" π
πΈ NAME πΈ
drm_dp_tunnel_available_bw β query the estimated total available BW of the tunnel π¦
like, "hey tunnel, how much room do you got?" energy. periodt.
β¨ SYNOPSIS β¨
int drm_dp_tunnel_available_bw (const struct drm_dp_tunnel *tunnel );
π«Ά ARGUMENTS π«Ά
tunnelβ the tunnel object π like, the actual tunnel we're asking about. that's her. that's the main character.
π DESCRIPTION π
So this function is literally here to query the estimated total available BW of the tunnel. and when we say "total," we mean it β it includes the currently allocated BW and the free BW for all the tunnels in tunnel's group π₯ no gatekeeping, no hidden fees, we're counting everybody's bag.
β οΈ but bestie, the available BW is valid only after the BW allocation mode has been enabled for the tunnel and its state got updated by calling drm_dp_tunnel_update_state. skip either of those and the number is giving nothing. π
It returns the tunnel group's estimated total available bandwidth in kB/s units β or -1 if the available BW isn't valid β which happens when the BW allocation mode is not enabled, or when the tunnel's state hasn't been updated π
so yeah: cute little int, tiny little units label, one (1) -1 for the vibes-not-valid situation.
π¦ SEE ALSO π¦
Kernel file ./drivers/gpu/drm/display/drm_dp_tunnel.c π§
and the whole tunnel friend group, no cap:
drm_dp_tunnel_get(9)drm_dp_tunnel_put(9)drm_dp_tunnel_set_io_error(9)drm_dp_tunnel_detect(9)drm_dp_tunnel_destroy(9)drm_dp_tunnel_enable_bw_alloc(9)drm_dp_tunnel_disable_bw_alloc(9)drm_dp_tunnel_bw_alloc_is_enabled(9)drm_dp_tunnel_pr_optimization_supported(9)drm_dp_tunnel_alloc_bw(9)drm_dp_tunnel_get_allocated_bw(9)drm_dp_tunnel_update_state(9)drm_dp_tunnel_128b132b_supported(9)drm_dp_tunnel_128b132b_lane0_mapping_supported(9)drm_dp_tunnel_128b132b_dprx_rates(9)drm_dp_tunnel_max_dprx_rate(9)drm_dp_tunnel_max_dprx_lane_count(9)drm_dp_tunnel_atomic_get_state(9)drm_dp_tunnel_atomic_get_old_state(9)drm_dp_tunnel_atomic_get_new_state(9)drm_dp_tunnel_atomic_set_stream_bw(9)drm_dp_tunnel_atomic_get_required_bw(9)drm_dp_tunnel_atomic_get_group_streams_in_state(9)drm_dp_tunnel_atomic_check_stream_bws(9)drm_dp_tunnel_mgr_create(9)drm_dp_tunnel_mgr_destroy(9)
okay that's the whole page, you ate that π this one shipped from ./drivers/gpu/drm/display, dated October 2026 β and that's the tea, bestie, ily, go query your BW ππ
π¦ 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