diff options
author | Maarten Lankhorst <maarten.lankhorst@linux.intel.com> | 2015-06-01 09:59:53 +0300 |
---|---|---|
committer | Dave Airlie <airlied@redhat.com> | 2015-06-04 02:20:31 +0300 |
commit | 9b5edbf7a462b7c846e9d4675b9b72b7a4e84de9 (patch) | |
tree | 68ec413e34ecaceca947f929779e2bec268418de | |
parent | 531e63e163072e325d9cc82acc095a009f07b6ef (diff) | |
download | linux-9b5edbf7a462b7c846e9d4675b9b72b7a4e84de9.tar.xz |
drm/atomic: Clear crtc_state->active in drm_atomic_helper_set_config.
This fixes some regressions in i915 when converting to atomic.
set_config failed with -EINVAL, and I received the following warning
in dmesg:
[drm:drm_atomic_crtc_check] [CRTC:20] active without enabled
Solve this by clearing active when a crtc is disabled.
Because crtc_state->enable implies that connectors are active the
change from disabled->enabled can only happen for the crtc that's
being set_config'd, and checking for !crtc_state->enable is sufficient
here.
Cc: dri-devel@lists.freedesktop.org
Reviewed-by: Rob Clark <robdclark@gmail.com>
Signed-off-by: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
Signed-off-by: Dave Airlie <airlied@redhat.com>
-rw-r--r-- | drivers/gpu/drm/drm_atomic_helper.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/gpu/drm/drm_atomic_helper.c b/drivers/gpu/drm/drm_atomic_helper.c index a900858fa265..536ae4da4665 100644 --- a/drivers/gpu/drm/drm_atomic_helper.c +++ b/drivers/gpu/drm/drm_atomic_helper.c @@ -1563,6 +1563,8 @@ static int update_output_state(struct drm_atomic_state *state, crtc_state->enable = drm_atomic_connectors_for_crtc(state, crtc); + if (!crtc_state->enable) + crtc_state->active = false; } return 0; |