mirror of
https://gitlab.freedesktop.org/wayland/weston.git
synced 2026-05-09 08:18:09 +02:00
backend-drm: set DRM_MODE_ATOMIC_ALLOW_MODESET during head disable
A change in the connector state require a possible full modest depending on the hardware. The connector wasn't set to unconnect if the head was detached while the output is still enabled. Fix this by always checking the disable_head_link list during drm_output_apply_state_atomic(). Signed-off-by: Marco Felsch <m.felsch@pengutronix.de>
This commit is contained in:
parent
9c67c8c0d8
commit
4ba62103a6
1 changed files with 8 additions and 8 deletions
|
|
@ -1374,15 +1374,15 @@ drm_output_apply_state_atomic(struct drm_output_state *state,
|
|||
wl_list_for_each(head, &output->base.head_list, base.output_link)
|
||||
ret |= connector_add_prop(req, &head->connector,
|
||||
WDRM_CONNECTOR_CRTC_ID, 0);
|
||||
}
|
||||
|
||||
wl_list_for_each_safe(head, tmp, &output->disable_head,
|
||||
disable_head_link) {
|
||||
ret |= connector_add_prop(req, &head->connector,
|
||||
WDRM_CONNECTOR_CRTC_ID, 0);
|
||||
if (!(*flags & DRM_MODE_ATOMIC_TEST_ONLY)) {
|
||||
wl_list_remove(&head->disable_head_link);
|
||||
wl_list_init(&head->disable_head_link);
|
||||
}
|
||||
wl_list_for_each_safe(head, tmp, &output->disable_head, disable_head_link) {
|
||||
ret |= connector_add_prop(req, &head->connector,
|
||||
WDRM_CONNECTOR_CRTC_ID, 0);
|
||||
*flags |= DRM_MODE_ATOMIC_ALLOW_MODESET;
|
||||
if (!(*flags & DRM_MODE_ATOMIC_TEST_ONLY)) {
|
||||
wl_list_remove(&head->disable_head_link);
|
||||
wl_list_init(&head->disable_head_link);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue