dc_capture_r...ftware_state(9)
β¨ dc_capture_register_software_state(9) β bestie edition β¨
okay so this is from the Kernel API Manual, page dc_capture_r...ftware_state(9) (yes the title got truncated, she's mysterious like that π
). Buckle up, we're grabbing a whole snapshot of software state.
πΈ NAME πΈ
dc_capture_register_software_state β capture software state so we can program registers, no cap.
π¦ SYNOPSIS π¦
bool dc_capture_register_software_state (struct dc *dc , struct
dc_register_software_state *state );
π ARGUMENTS π
dcβ the DC context, and it's holding the current display configuration. main character energy fr.stateβ a pointer to thestruct dc_register_software_statestructure that we're gonna populate. she starts empty, she leaves iconic β¨
π DESCRIPTION π
So what this does is extract literally all the software state variables that get used to program hardware register fields across the display driver pipeline. It's giving "complete snapshot of the software config that drives hardware register programming." Obsessed.
The function goes on a little tour through the DC context and pulls values from:
- Stream configurations (timing, format, DSC settings) π
- Plane states (surface format, rotation, scaling, cursor) π±οΈ
- Pipe contexts (resource allocation, blending, viewport) π§
- Clock manager (display clocks, DPP clocks, pixel clocks) β°
- Resource context (DET buffer allocation, ODM configuration) π«Ά
And why do we care?? Because this is essential for underflow debugging π β it captures the exact software state that determines how registers get programmed. That means you can actually analyze whether the underflow is caused by incorrect register programming or by timing issues. iykyk, that's the whole vibe check.
π RETURN π
trueβ state was successfully captured, slay πfalseβ error, we don't talk about it π
π SEE ALSO π
Kernel file ./drivers/gpu/drm/amd/display/dc/dc.h plus all these besties:
MAX_SURFACES(9)MAX_PLANES(9)color-management-caps(9)struct rom_curve_caps(9)struct dpp_color_caps(9)struct mpc_color_caps(9)struct dc_color_caps(9)enum pipe_split_policy(9)dc_check_state_update(9)dc_update_state(9)dc_update_state_init(9)dc_update_state_prepare(9)dc_update_state_execute(9)dc_update_state_cleanup(9)struct dc_probe_latencies(9)struct dc_probe_status(9)enum dc_get_status_type(9)struct dc_get_status_options(9)struct dc_state_status(9)dc_state_get_status(9)struct dc_validation_stream(9)struct dc_validation_set(9)dc_get_underflow_debug_data_for_otg(9)dc_get_qos_info(9)dc_override_memory_bandwidth_request(9)
lowkey the whole point: grab the state, debug the underflow, don't touch anything you didn't read about here π
Sign-off time π«Ά β this page lives over in ./drivers/gpu/drm/amd/display/dc, stamped October 2026, and the page name is dc_capture_r...ftware_state(9) in case you forgot already. bye bestie, go capture some state β¨π
π¦ 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