drm/atomic: check mode_changed *after* atomic_check
The intention is that drivers can set crtc_state->mode_changed in their atomic_check() fxns if they encounter a scenario that requires full modeset. Signed-off-by: Rob Clark <robdclark@gmail.com> Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch>
This commit is contained in:
parent
4dd14fe6fb
commit
934ce1c236
|
@ -331,7 +331,7 @@ mode_fixup(struct drm_atomic_state *state)
|
||||||
}
|
}
|
||||||
|
|
||||||
static int
|
static int
|
||||||
drm_atomic_helper_check_prepare(struct drm_device *dev,
|
drm_atomic_helper_check_modeset(struct drm_device *dev,
|
||||||
struct drm_atomic_state *state)
|
struct drm_atomic_state *state)
|
||||||
{
|
{
|
||||||
int ncrtcs = dev->mode_config.num_crtc;
|
int ncrtcs = dev->mode_config.num_crtc;
|
||||||
|
@ -428,10 +428,6 @@ int drm_atomic_helper_check(struct drm_device *dev,
|
||||||
int ncrtcs = dev->mode_config.num_crtc;
|
int ncrtcs = dev->mode_config.num_crtc;
|
||||||
int i, ret = 0;
|
int i, ret = 0;
|
||||||
|
|
||||||
ret = drm_atomic_helper_check_prepare(dev, state);
|
|
||||||
if (ret)
|
|
||||||
return ret;
|
|
||||||
|
|
||||||
for (i = 0; i < nplanes; i++) {
|
for (i = 0; i < nplanes; i++) {
|
||||||
struct drm_plane_helper_funcs *funcs;
|
struct drm_plane_helper_funcs *funcs;
|
||||||
struct drm_plane *plane = state->planes[i];
|
struct drm_plane *plane = state->planes[i];
|
||||||
|
@ -475,6 +471,10 @@ int drm_atomic_helper_check(struct drm_device *dev,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
ret = drm_atomic_helper_check_modeset(dev, state);
|
||||||
|
if (ret)
|
||||||
|
return ret;
|
||||||
|
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
EXPORT_SYMBOL(drm_atomic_helper_check);
|
EXPORT_SYMBOL(drm_atomic_helper_check);
|
||||||
|
|
Loading…
Reference in New Issue