FREESYNC_VIDEO (UINT)(9)
β¨ freesync_video (uint) β¨
okay so this is a page straight out of the Kernel API Manual β ninth section, kernel API vibes, we love that for us π
and today's main character is freesync_video (uint).
π¦ NAME π¦
freesync_video (uint) β the little knob that turns on the optimization for adjusting front porch timing so your mode changes feel seamless π«
πΈ DESCRIPTION πΈ
So basically, bestie: this one enables the optimization that tweaks front porch timing so you get a seamless mode change experience when you're setting a freesync supported mode β the kind of mode where a full modeset isn't even needed π no cap.
Here's the tea π β when users enable this feature, the Display Core goes ahead and adds a whole set of modes into the corresponding connector's mode list. Where do those modes come from? They're derived from the base FreeSync video mode, and the set is based on commonly used refresh rates plus the VRR range of the connected display. Iconic behavior honestly.
From the userspace perspective? They get to see a seamless mode change experience when switching between different refresh rates under the same resolution. π And there's more β userspace applications like Video playback can read this modeset list and change the refresh rate based on the video frame rate. Obsessed. π₯
And finally, the userspace can also derive an appropriate mode for a particular refresh rate based on the FreeSync Mode and add it to the connector's mode list. DIY queen behavior π
β οΈ Note: this is an experimental feature. Baby it, don't trust it with your whole heart yet π
The default value: 0 (off) β so it's just chilling, minding its own business, until you say otherwise π€
π§ SEE ALSO π§
the whole squad, fr fr β all these live in the kernel file ./drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c:
vramlimit (int)(9)vis_vramlimit (int)(9)gartsize (uint)(9)gttsize (int)(9)moverate (int)(9)audio (int)(9)disp_priority (int)(9)hw_i2c (int)(9)pcie_gen2 (int)(9)msi (int)(9)svm_default_granularity (uint)(9)lockup_timeout (string)(9)dpm (int)(9)fw_load_type (int)(9)aspm (int)(9)runpm (int)(9)ip_block_mask (uint)(9)bapm (int)(9)deep_color (int)(9)vm_size (int)(9)vm_fragment_size (int)(9)vm_block_size (int)(9)vm_fault_stop (int)(9)vm_update_mode (int)(9)exp_hw_support (int)(9)dc (int)(9)sched_jobs (int)(9)sched_hw_submission (int)(9)ppfeaturemask (hexint)(9)forcelongtraining (uint)(9)pcie_gen_cap (uint)(9)pcie_lane_cap (uint)(9)cg_mask (ullong)(9)pg_mask (uint)(9)sdma_phase_quantum (uint)(9)disable_cu (charp)(9)virtual_display (charp)(9)lbpw (int)(9)gpu_recovery (int)(9)emu_mode (int)(9)ras_enable (int)(9)ras_mask (uint)(9)timeout_fatal_disable (bool)(9)timeout_period (uint)(9)si_support (int)(9)cik_support (int)(9)smu_memory_pool_size (uint)(9)async_gfx_ring (int)(9)mcbp (int)(9)discovery (int)(9)mes_log_enable (int)(9)uni_mes (int)(9)noretry (int)(9)force_asic_type (int)(9)use_xgmi_p2p (int)(9)sched_policy (int)(9)hws_max_conc_proc (int)(9)cwsr_enable (int)(9)max_num_of_queues_per_device (int)(9)send_sigterm (int)(9)halt_if_hws_hang (int)(9)hws_gws_support(bool)(9)queue_preemption_timeout_ms (int)(9)debug_evictions(bool)(9)no_system_mem_limit(bool)(9)no_queue_eviction_on_vm_fault (int)(9)mtype_local (int)(9)pcie_p2p (bool)(9)dcfeaturemask (uint)(9)dcdebugmask (uint)(9)abmlevel (uint)(9)damageclips (int)(9)tmz (int)(9)reset_method (int)(9)bad_page_threshold (int) Bad page threshold is specifies the(9)vcnfw_log (int)(9)sg_display (int)(9)umsch_mm (int)(9)umsch_mm_fwlog (int)(9)smu_pptable_id (int)(9)partition_mode (int)(9)enforce_isolation (int)(9)modeset (int)(9)seamless (int)(9)debug_mask (uint)(9)agp (int)(9)wbrf (int)(9)rebar (int)(9)user_queue (int)(9)ptl (int)(9)
π the sign-off π
that's the whole page, bestie π«Ά brought to you by ./drivers/gpu/drm/amd/amdgpu, dated October 2026 β go forth and mode-change seamlessly β¨π
π¦ 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