All planes being displayed have a framebuffer. What makes 'fb_plane' special is that it's being displayed as the primary plane by KMS.
Previous patchsets renamed this to 'primary_plane' to match the KMS terminology, namely the CRTC's base plane, which is controlled by drmModeSetCrtc in the legacy API, and identified by PLANE_TYPE == "Primary" in the universal-plane API. However, Weston uses 'primary_plane' internally to refer to the case where client content is _not_ directly displayed on a plane, but composited via the renderer, with the result of the compositing then shown. Rename to 'scanout_plane' as our least-ambiguous name, and document it a bit. Signed-off-by: Daniel Stone <dani...@collabora.com> Differential Revision: https://phabricator.freedesktop.org/D1415 --- libweston/compositor-drm.c | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/libweston/compositor-drm.c b/libweston/compositor-drm.c index 9a27f03..e4d6743 100644 --- a/libweston/compositor-drm.c +++ b/libweston/compositor-drm.c @@ -225,7 +225,8 @@ struct drm_output { struct weston_view *cursor_view; int current_cursor; - struct weston_plane fb_plane; + /* Plane currently being directly displayed by KMS */ + struct weston_plane scanout_plane; struct drm_fb *fb_current, *fb_pending, *fb_last; struct backlight *backlight; @@ -623,7 +624,7 @@ drm_output_prepare_scanout_view(struct drm_output *output, drm_fb_set_buffer(output->fb_pending, buffer); - return &output->fb_plane; + return &output->scanout_plane; } static struct drm_fb * @@ -2656,10 +2657,10 @@ drm_output_enable(struct weston_output *base) weston_plane_init(&output->cursor_plane, b->compositor, INT32_MIN, INT32_MIN); - weston_plane_init(&output->fb_plane, b->compositor, 0, 0); + weston_plane_init(&output->scanout_plane, b->compositor, 0, 0); weston_compositor_stack_plane(b->compositor, &output->cursor_plane, NULL); - weston_compositor_stack_plane(b->compositor, &output->fb_plane, + weston_compositor_stack_plane(b->compositor, &output->scanout_plane, &b->compositor->primary_plane); weston_log("Output %s, (connector %d, crtc %d)\n", @@ -2693,7 +2694,7 @@ drm_output_deinit(struct weston_output *base) else drm_output_fini_egl(output); - weston_plane_release(&output->fb_plane); + weston_plane_release(&output->scanout_plane); weston_plane_release(&output->cursor_plane); drmModeFreeProperty(output->dpms_prop); -- 2.9.3 _______________________________________________ wayland-devel mailing list wayland-devel@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/wayland-devel