mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2026-05-13 07:08:21 -04:00
drm/i915: Flag even inactive crtcs as "inherited"
I want to use the crtc_state->inherited flag to clean up some of the early SAGV handling. To make that work nicely I need to flag even the inactive crtcs as "inherited". Since we can't expect user space to perform any real commits on inactive crtcs we'll clear the flag already during initial_commit(). Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com> Link: https://patchwork.freedesktop.org/patch/msgid/20250326162544.3642-8-ville.syrjala@linux.intel.com Reviewed-by: Jani Nikula <jani.nikula@intel.com>
This commit is contained in:
@@ -8100,6 +8100,9 @@ int intel_initial_commit(struct intel_display *display)
|
||||
goto out;
|
||||
}
|
||||
|
||||
if (!crtc_state->hw.active)
|
||||
crtc_state->inherited = false;
|
||||
|
||||
if (crtc_state->hw.active) {
|
||||
struct intel_encoder *encoder;
|
||||
|
||||
|
||||
@@ -821,18 +821,18 @@ static void intel_modeset_readout_hw_state(struct drm_i915_private *i915)
|
||||
to_intel_crtc_state(crtc->base.state);
|
||||
struct intel_plane *plane;
|
||||
|
||||
if (crtc_state->hw.active) {
|
||||
/*
|
||||
* The initial mode needs to be set in order to keep
|
||||
* the atomic core happy. It wants a valid mode if the
|
||||
* crtc's enabled, so we do the above call.
|
||||
*
|
||||
* But we don't set all the derived state fully, hence
|
||||
* set a flag to indicate that a full recalculation is
|
||||
* needed on the next commit.
|
||||
*/
|
||||
crtc_state->inherited = true;
|
||||
/*
|
||||
* The initial mode needs to be set in order to keep
|
||||
* the atomic core happy. It wants a valid mode if the
|
||||
* crtc's enabled, so we do the above call.
|
||||
*
|
||||
* But we don't set all the derived state fully, hence
|
||||
* set a flag to indicate that a full recalculation is
|
||||
* needed on the next commit.
|
||||
*/
|
||||
crtc_state->inherited = true;
|
||||
|
||||
if (crtc_state->hw.active) {
|
||||
intel_crtc_update_active_timings(crtc_state,
|
||||
crtc_state->vrr.enable);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user