aboutsummaryrefslogtreecommitdiff
path: root/backend/drm/drm.c
diff options
context:
space:
mode:
authorScott Anderson <scott@anderso.nz>2019-03-06 10:49:59 +1300
committeremersion <contact@emersion.fr>2019-03-05 23:15:20 +0100
commit6a8f17b5f636a0ce90a4ed8342803baee30de1b3 (patch)
tree46e5a6abea3aa11620e53d645de14e6e787fe013 /backend/drm/drm.c
parent680c4c573c1de67446c392a7ab59cf97f72a6604 (diff)
backend/drm: Don't fail on failing to find overlay format
Some hardware exists which doesn't support XRGB/ARGB overlays, and we aren't even using overlay planes, so don't fail on trying to find a format.
Diffstat (limited to 'backend/drm/drm.c')
-rw-r--r--backend/drm/drm.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/backend/drm/drm.c b/backend/drm/drm.c
index 40a1fdbf..7fd36794 100644
--- a/backend/drm/drm.c
+++ b/backend/drm/drm.c
@@ -133,7 +133,10 @@ static bool init_planes(struct wlr_drm_backend *drm) {
rgb_format = fmt;
}
}
- if (rgb_format == DRM_FORMAT_INVALID) {
+ // Some overlays exist which don't support XRGB8888/ARGB8888
+ // We aren't even using overlay planes currently, so don't fail
+ // on something unnecessary.
+ if (type != DRM_PLANE_TYPE_OVERLAY && rgb_format == DRM_FORMAT_INVALID) {
wlr_log(WLR_ERROR, "Failed to find an RGB format for plane %zu", i);
drmModeFreePlane(plane);
goto error_planes;