mirror of
https://gitlab.freedesktop.org/wlroots/wlroots.git
synced 2025-10-31 22:25:21 -04:00
backend/drm: fix GBM format mismatch
We create the EGL config with GBM_FORMAT_ARGB8888, but then initialize GBM BOs with GBM_FORMAT_XRGB8888. This mismatch confuses Mesa. Instead, we can always use GBM_FORMAT_ARGB8888, and use DRM_FORMAT_XRGB8888 when calling drmModeAddFB2. Fixes https://github.com/swaywm/wlroots/issues/1438
This commit is contained in:
parent
018727b1fc
commit
ee293fab58
7 changed files with 46 additions and 15 deletions
|
|
@ -172,7 +172,8 @@ static bool atomic_crtc_set_cursor(struct wlr_drm_backend *drm,
|
|||
atomic_begin(crtc, &atom);
|
||||
|
||||
if (bo) {
|
||||
set_plane_props(&atom, plane, crtc->id, get_fb_for_bo(bo), false);
|
||||
uint32_t fb_id = get_fb_for_bo(bo, plane->drm_format);
|
||||
set_plane_props(&atom, plane, crtc->id, fb_id, false);
|
||||
} else {
|
||||
atomic_add(&atom, plane->id, plane->props.fb_id, 0);
|
||||
atomic_add(&atom, plane->id, plane->props.crtc_id, 0);
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue