weston/libweston
Daniel Stone 87fab1ca4e compositor-drm: Only assign planes with atomic
Without atomic modesetting, we have no way to know whether or not our
desired configuration is usable. It might fail for a number of reasons:
scaling limits, bandwidth limits, global resource (e.g. decompression)
unit contention, or really just anything.

Not only this, but there is no good way to ensure that our configuration
actually lands together in the same refresh cycle - hence the 'atomic'
in atomic modesetting. Some drivers implement a synchronously blocking
drmModeSetPlane, whereas others return immediately. Using overlay planes
can thus decimate your framerate.

The pre-atomic API is not extensible either, so we need numerous out
clauses: fail if we're cropping or scaling (sometimes), or changing
formats, or fencing, or ...

Now we've had atomic support stable for a couple of releases, just
remove support for doing anything more fancy than displaying our
composited output and a cursor with drivers which don't support atomic
modesetting.

Support for using overlay planes was already disabled by default when
using the legacy API, and required a debug key combination to toggle it
on by flipping the sprites_are_broken variable. We can ensure that we
never try to use it on legacy by simply ignoring the hotkey when in
legacy mode.

Signed-off-by: Daniel Stone <daniels@collabora.com>
2019-06-25 14:00:57 +01:00
..
backend-drm compositor-drm: Only assign planes with atomic 2019-06-25 14:00:57 +01:00
backend-fbdev backend-fbdev: more into new subdir 2019-05-16 13:32:34 +01:00
backend-headless backend-headless: move into new subdir 2019-05-16 13:32:34 +01:00
backend-rdp backend-rdp: allow to force compression off 2019-06-20 16:39:13 +02:00
backend-wayland backend-wayland: move into new subdir 2019-05-16 13:32:34 +01:00
backend-x11 backend-x11: move into new subdir 2019-05-16 13:32:34 +01:00
renderer-gl libweston: move gl-renderer into a subdir 2019-04-18 12:52:41 +03:00
animation.c Rename compositor.h to libweston/libweston.h 2019-04-18 12:31:46 +03:00
bindings.c Rename compositor.h to libweston/libweston.h 2019-04-18 12:31:46 +03:00
clipboard.c Rename compositor.h to libweston/libweston.h 2019-04-18 12:31:46 +03:00
compositor.c libweston: Add weston-debug header to libweston 2019-05-10 12:02:00 +00:00
data-device.c data-device: send INVALID_FINISH when operation != dnd 2019-04-19 22:06:37 +05:30
dbus.c dbus: Don't return value from void function 2019-06-11 11:31:04 +01:00
dbus.h Rename compositor.h to libweston/libweston.h 2019-04-18 12:31:46 +03:00
git-version.h.meson Add Meson build system 2018-12-09 14:50:54 +02:00
input.c log: remove "%m" from format strings by using strerror(errno) 2019-05-02 22:10:30 +02:00
launcher-direct.c log: remove "%m" from format strings by using strerror(errno) 2019-05-02 22:10:30 +02:00
launcher-impl.h Rename compositor.h to libweston/libweston.h 2019-04-18 12:31:46 +03:00
launcher-logind.c backend-drm: handle multiple drm nodes with logind 2019-06-13 18:40:56 +01:00
launcher-util.c Rename compositor.h to libweston/libweston.h 2019-04-18 12:31:46 +03:00
launcher-util.h Rename compositor.h to libweston/libweston.h 2019-04-18 12:31:46 +03:00
launcher-weston-launch.c log: remove "%m" from format strings by using strerror(errno) 2019-05-02 22:10:30 +02:00
libinput-device.c Rename compositor.h to libweston/libweston.h 2019-04-18 12:31:46 +03:00
libinput-device.h Rename compositor.h to libweston/libweston.h 2019-04-18 12:31:46 +03:00
libinput-seat.c Rename compositor.h to libweston/libweston.h 2019-04-18 12:31:46 +03:00
libinput-seat.h Rename compositor.h to libweston/libweston.h 2019-04-18 12:31:46 +03:00
linux-dmabuf.c Rename compositor.h to libweston/libweston.h 2019-04-18 12:31:46 +03:00
linux-dmabuf.h linux-dmabuf: send deprecated format events 2018-01-18 11:24:19 +00:00
linux-explicit-synchronization.c Rename compositor.h to libweston/libweston.h 2019-04-18 12:31:46 +03:00
linux-explicit-synchronization.h libweston: Support zwp_surface_synchronization_v1.set_acquire_fence 2019-02-06 12:21:56 +00:00
linux-sync-file-uapi.h libweston: Introduce an internal linux sync file API 2019-02-06 12:21:56 +00:00
linux-sync-file.c libweston: export weston_linux_sync_file_read_timestamp() 2019-04-18 12:50:55 +03:00
linux-sync-file.h libweston: export weston_linux_sync_file_read_timestamp() 2019-04-18 12:50:55 +03:00
log.c Rename compositor.h to libweston/libweston.h 2019-04-18 12:31:46 +03:00
meson.build backend-fbdev: more into new subdir 2019-05-16 13:32:34 +01:00
noop-renderer.c Rename compositor.h to libweston/libweston.h 2019-04-18 12:31:46 +03:00
pixel-formats.c Fix typos all around (thanks codespell!) 2019-02-20 16:47:35 +01:00
pixel-formats.h pixel-formats: Added pixel_format_get_info_shm() helper for printing SHM buffers 2018-11-20 18:00:09 +02:00
pixman-renderer.c libweston: Support zwp_surface_synchronization_v1.get_release 2019-02-06 12:21:56 +00:00
pixman-renderer.h Rename compositor.h to libweston/libweston.h 2019-04-18 12:31:46 +03:00
plugin-registry.c Rename plugin-registry.h to libweston/plugin-registry.h 2019-04-18 12:31:46 +03:00
screenshooter.c log: remove "%m" from format strings by using strerror(errno) 2019-05-02 22:10:30 +02:00
spring-tool.c Rename compositor.h to libweston/libweston.h 2019-04-18 12:31:46 +03:00
timeline.c Rename compositor.h to libweston/libweston.h 2019-04-18 12:31:46 +03:00
timeline.h timeline: Add GPU timestamp timepoint argument 2017-09-29 10:20:42 +03:00
touch-calibration.c Rename zalloc.h to libweston/zalloc.h 2019-04-18 12:31:46 +03:00
vertex-clipping.c Rename src/ to libweston/ 2016-06-23 17:44:54 +03:00
vertex-clipping.h Rename src/ to libweston/ 2016-06-23 17:44:54 +03:00
weston-debug.c libweston: Add weston-debug header to libweston 2019-05-10 12:02:00 +00:00
weston-launch.c log: remove "%m" from format strings by using strerror(errno) 2019-05-02 22:10:30 +02:00
weston-launch.h Rename src/ to libweston/ 2016-06-23 17:44:54 +03:00
zoom.c Rename compositor.h to libweston/libweston.h 2019-04-18 12:31:46 +03:00