dc_stream_adjust_vmin_vmax(9)
π dc_stream_adjust_vmin_vmax(9)
okay so bestie, welcome to the Kernel API Manual β¨ this one's about dc_stream_adjust_vmin_vmax and honestly it's giving "small function, big power-savings energy" ππ
πΈ NAME πΈ
dc_stream_adjust_vmin_vmax β look up the pipe context and update parts of DRR π
β¨ SYNOPSIS β¨
bool dc_stream_adjust_vmin_vmax (struct dc *dc , struct dc_stream_state
*stream , struct dc_crtc_timing_adjust *adjust );
literally the whole signature, copy-pasted with love π«Ά returns a bool, takes three pointers, we move π
π¦ ARGUMENTS π¦
dcβ yourdcreference, the main character of the whole display subsystem πstreamβ the initialdc_stream_state, aka the stream we're about to poke at πadjustβ the updated parameters forvertical_total_minandvertical_total_max, the actual new numbers going in π₯
π DESCRIPTION π
So what it does, fr fr: it looks up the pipe context of the dc_stream_state π§ and then updates the vertical_total_min and vertical_total_max of the DRR β that's Dynamic Refresh Rate, no cap β which is a power-saving feature π the whole point of DRR is targeting a lower panel refresh rate while the screen is static, so your battery doesn't get absolutely drained for no reason πβ¨
it's giving "quietly iconic efficiency move" honestly π
β RETURN β
trueβ the pipe context was found and adjusted, slay βfalseβ the pipe context was not found, and it returnsfalseπ (nothing adjusted, bestie, vibe check failed π)
π₯ SEE ALSO π₯
- Kernel file
./drivers/gpu/drm/amd/display/dc/core/dc.cOverview(9) dc_stream_get_last_used_drr_vtotal(9)dc_stream_configure_crc(9)dc_stream_get_crc(9)dc_commit_state_no_check(9)dc_commit_streams(9)dc_check_state_update(9)dc_check_update_surfaces_for_stream(9)update_seamless_boot_flags(9)update_planes_and_stream_state(9)dc_check_address_only_update(9)build_dmub_cmd_list(9)could_mpcc_tree_change_for_active_pipes(9)commit_minimal_transition_state_in_dc_update(9)commit_minimal_transition_state(9)dc_update_state(9)dc_update_planes_and_stream(9)dc_enable_dcmode_clk_limit(9)dc_is_dmub_outbox_supported(9)dc_enable_dmub_notifications(9)dc_enable_dmub_outbox(9)dc_process_dmub_aux_transfer_async(9)dc_process_dmub_set_config_async(9)dc_process_dmub_set_mst_slots(9)dc_process_dmub_dpia_set_tps_notification(9)dc_process_dmub_dpia_hpd_int_enable(9)dc_print_dmub_diagnostic_data(9)dc_disable_accelerated_mode(9)dc_notify_vsync_int_state(9)dc_set_edp_power(9)dc_get_power_profile_for_dc_state(9)dc_get_det_buffer_size_from_state(9)dc_get_host_router_index(9)should_commit_intermediate_context(9)dc_update_probes_prepare(9)dc_update_probes_execute(9)
like, that's a whole friend group right there π go read them too iykyk π
and that's the page! πΈ source: ./drivers/gpu/drm/amd/display/..., dated October 2026, and it's dc_stream_adjust_vmin_vmax(9) β love that for us, 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