forked from Minki/linux
drm/i915: Clean up intel_plane_atomic_check_with_state()
Rename some of the state variables in intel_plane_atomic_check_with_state() to make it less confusing. Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com> Link: https://patchwork.freedesktop.org/patch/msgid/20190111170823.4441-2-ville.syrjala@linux.intel.com Reviewed-by: Matt Roper <matthew.d.roper@intel.com> Reviewed-by: Uma Shankar <uma.shankar@intel.com>
This commit is contained in:
parent
0bb1ffe4ea
commit
790cc9941b
@ -110,41 +110,39 @@ intel_plane_destroy_state(struct drm_plane *plane,
|
||||
}
|
||||
|
||||
int intel_plane_atomic_check_with_state(const struct intel_crtc_state *old_crtc_state,
|
||||
struct intel_crtc_state *crtc_state,
|
||||
struct intel_crtc_state *new_crtc_state,
|
||||
const struct intel_plane_state *old_plane_state,
|
||||
struct intel_plane_state *intel_state)
|
||||
struct intel_plane_state *new_plane_state)
|
||||
{
|
||||
struct drm_plane *plane = intel_state->base.plane;
|
||||
struct drm_plane_state *state = &intel_state->base;
|
||||
struct intel_plane *intel_plane = to_intel_plane(plane);
|
||||
struct intel_plane *plane = to_intel_plane(new_plane_state->base.plane);
|
||||
int ret;
|
||||
|
||||
crtc_state->active_planes &= ~BIT(intel_plane->id);
|
||||
crtc_state->nv12_planes &= ~BIT(intel_plane->id);
|
||||
intel_state->base.visible = false;
|
||||
new_crtc_state->active_planes &= ~BIT(plane->id);
|
||||
new_crtc_state->nv12_planes &= ~BIT(plane->id);
|
||||
new_plane_state->base.visible = false;
|
||||
|
||||
/* If this is a cursor plane, no further checks are needed. */
|
||||
if (!intel_state->base.crtc && !old_plane_state->base.crtc)
|
||||
if (!new_plane_state->base.crtc && !old_plane_state->base.crtc)
|
||||
return 0;
|
||||
|
||||
ret = intel_plane->check_plane(crtc_state, intel_state);
|
||||
ret = plane->check_plane(new_crtc_state, new_plane_state);
|
||||
if (ret)
|
||||
return ret;
|
||||
|
||||
/* FIXME pre-g4x don't work like this */
|
||||
if (state->visible)
|
||||
crtc_state->active_planes |= BIT(intel_plane->id);
|
||||
if (new_plane_state->base.visible)
|
||||
new_crtc_state->active_planes |= BIT(plane->id);
|
||||
|
||||
if (state->visible && state->fb->format->format == DRM_FORMAT_NV12)
|
||||
crtc_state->nv12_planes |= BIT(intel_plane->id);
|
||||
if (new_plane_state->base.visible &&
|
||||
new_plane_state->base.fb->format->format == DRM_FORMAT_NV12)
|
||||
new_crtc_state->nv12_planes |= BIT(plane->id);
|
||||
|
||||
if (state->visible || old_plane_state->base.visible)
|
||||
crtc_state->update_planes |= BIT(intel_plane->id);
|
||||
if (new_plane_state->base.visible || old_plane_state->base.visible)
|
||||
new_crtc_state->update_planes |= BIT(plane->id);
|
||||
|
||||
return intel_plane_atomic_calc_changes(old_crtc_state,
|
||||
&crtc_state->base,
|
||||
&new_crtc_state->base,
|
||||
old_plane_state,
|
||||
state);
|
||||
&new_plane_state->base);
|
||||
}
|
||||
|
||||
static int intel_plane_atomic_check(struct drm_plane *plane,
|
||||
|
Loading…
Reference in New Issue
Block a user