weston/compositor
Pekka Paalanen 1394ac303e weston: migrate DRM to head-based output API
Migrate the DRM frontend to use the simple head-based output
configurator, maintaining the exact same features and semantics as
before.

This is an intermediate step. It is unoptimal to create a weston_output
just to turn it off, but the libweston implementation and the DRM
backend require it for now. In the future, the DRM frontend will get its
own configurator that does not create useless weston_outputs and
supports clone mode by attaching multiple heads to the same
weston_output. Clone mode is not yet supported by libweston/DRM.

Until we remove the need to create a weston_output just to turn it
"off", that is, disable it, we will hit simple_head_enable() for heads
we have already disabled. As long as the DRM-backend conversion to the
head-based API is not complete, attempting to create an output for a
head again would lead to a crash. This problem does not exist right now,
but it will after the patch "compositor-drm: start migration to
head-based output API". Therefore, check if the head we are about to
process is already attached, and do nothing if so. DRM outputs set to
"off" are the only ones legitimately hitting this condition.

This is the last frontend migrated, wet_set_pending_output_handler() is
deleted as dead code.

v9:
- Add the workaround in simple_head_enable().

Signed-off-by: Pekka Paalanen <pekka.paalanen@collabora.co.uk>
v6 Reviewed-by: Ian Ray <ian.ray@ge.com>
v7 Reviewed-by: Daniel Stone <daniels@collabora.com>
Acked-by: Derek Foreman <derekf@osg.samsung.com>
2018-04-17 15:19:57 +03:00
..
cms-colord.c cms-colord: find a good head 2018-04-12 14:26:17 +03:00
cms-helper.c include stdint.h for int32_t/uint32_t 2016-07-26 16:26:08 -07:00
cms-helper.h Move weston source to compositor/ 2016-06-23 17:44:54 +03:00
cms-static.c weston: Properly namespace modules entrypoint 2017-01-17 18:24:56 +01:00
main.c weston: migrate DRM to head-based output API 2018-04-17 15:19:57 +03:00
screen-share.c libweston: Use struct timespec for key events 2017-11-27 11:42:07 +02:00
systemd-notify.c systemd: fix Wincompatible-pointer-type 2017-01-27 17:25:11 +02:00
text-backend.c libweston: Make weston_seat release safe 2018-02-15 13:14:14 +02:00
weston-screenshooter.c libweston: make wl_output point to weston_head 2018-04-10 14:33:59 +03:00
weston.desktop Remove dbus-launch from weston.desktop 2017-01-18 12:21:57 +00:00
weston.h weston: Make the shell entrypoint specific 2017-01-17 18:24:58 +01:00
weston.pc.in libweston: use new versioning scheme 2016-08-02 13:52:58 +03:00
xwayland.c xwayland: Cleanup error message on spawn failure Signed-off-by: Bryce Harrington <bryce@osg.samsung.com> 2016-07-07 10:48:34 -07:00