From: Pekka Paalanen <pekka.paala...@collabora.co.uk> Hi all,
this is v5 (to match the numbering of my public branches) of the libweston user facing API and infrastructure for supporting shared-CRTC clone mode. Previous submission with rationale: https://lists.freedesktop.org/archives/wayland-devel/2017-October/035604.html Design document: https://phabricator.freedesktop.org/w/wayland/weston/atomic-output-config/ The goal: https://phabricator.freedesktop.org/T7727 Changes in v5 compared to v3 are minor: - "libweston: properly orphan wl_output resources" is new. - Removal of wl_output global, when a head is detached from an enabled output. - Print "Detected a monitor change" only for enabled heads. You can find this series in the branch: https://gitlab.collabora.com/pq/weston/commits/clonemode-user-API-5 I went through the same testing procedure as with v3, the previous submission. However, the interesting bits are in the branch: https://gitlab.collabora.com/pq/weston/commits/clonemode-4 As new things compared to clonemode-user-API-2, that one contains: - support for configuring clone mode in weston.ini - main.c implementation to configure a clode using the new API - desktop-shell enhancements to avoid redundant panel and background surfaces in clone mode - hooking up custom data to weston_output via a new user-side destroy signal - naming outputs freely - DRM-backend support for shared-CRTC clone mode - video mode list merging in the DRM-backend The shared-CRTC clone mode has been tested to work on an i.MX6 device. Unfortunately it seems that PC hardware that would support it is becoming scarce AFAIU. Most of the patches in clonemode-4 depend on the atomic modesetting series and can therefore be submitted only after that one. Thanks, pq Pekka Paalanen (36): libweston: introduce weston_head libweston: move wl_output to weston_head libweston: use head in wl_output global libweston: make wl_output point to weston_head libweston: refactor weston_mode_switch_finish libweston: introduce weston_output::head_list libweston: properly orphan wl_output resources libweston: strdup head make, model, serial_number cms-colord: find a good head libweston: add name to weston_head libweston: add weston_head::connected libweston: add compositor list of heads libweston: add heads_changed hook libweston: new head-based output management API libweston: add weston_head destroy signal libweston: add weston_head_is_device_changed() API weston: move weston_output_enable() into callers weston: migrate headless to head-based output API weston: migrate x11 to head-based output API weston: migrate wayland to head-based output API weston: migrate fbdev to head-based output API weston: migrate RDP to head-based output API weston: migrate DRM to head-based output API libweston: change windowed_output_api output_create to create_head libweston: remove output_pending_signal libweston: stop auto-adding the implicit head libweston: assert make/model in weston_output_enable() libweston: assert current_mode in weston_output_enable() libweston: cancel idle_repaint on output destroy compositor-headless: migrate to head-based output API compositor-rdp: migrate to head-based output API compositor-fbdev: make re-enable less drastic compositor-fbdev: migrate to head-based output API compositor-x11: migrate to head-based output API compositor-wayland: strict surface create/destroy compositor-wayland: migrate to head-based output API compositor/cms-colord.c | 38 +- compositor/main.c | 304 +++++++++--- compositor/weston-screenshooter.c | 2 +- desktop-shell/input-panel.c | 4 +- desktop-shell/shell.c | 4 +- fullscreen-shell/fullscreen-shell.c | 4 +- ivi-shell/input-panel-ivi.c | 4 +- libweston-desktop/wl-shell.c | 2 +- libweston-desktop/xdg-shell-v5.c | 2 +- libweston-desktop/xdg-shell-v6.c | 2 +- libweston/compositor-drm.c | 15 +- libweston/compositor-fbdev.c | 206 +++++--- libweston/compositor-headless.c | 75 ++- libweston/compositor-rdp.c | 64 ++- libweston/compositor-wayland.c | 254 +++++++--- libweston/compositor-x11.c | 71 ++- libweston/compositor.c | 948 +++++++++++++++++++++++++++++++++--- libweston/compositor.h | 182 ++++++- libweston/windowed-output-api.h | 23 +- tests/weston-test.c | 2 +- 20 files changed, 1832 insertions(+), 374 deletions(-) -- 2.13.6 _______________________________________________ wayland-devel mailing list wayland-devel@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/wayland-devel