egl/wayland-drm: Only announce formats via wl_drm which the driver supports.
Check if a pixel format is supported by the Wayland servers gpu driver before exposing it to the client via wl_drm, so we avoid reporting formats to the client which the server gpu can't handle. Restrict this reporting to the new color depth 30 formats for now, as the ARGB/XRGB8888 and RGB565 formats are probably supported by every gpu under the sun. Atm. this is mostly useful to allow proper PRIME renderoffload for depth 30 formats on the typical Intel iGPU + NVidia dGPU "NVidia Optimus" laptop combo. Tested on Intel, AMD, NVidia with single-gpu setup and on a Intel + NVidia Optimus setup. Signed-off-by:Mario Kleiner <mario.kleiner.de@gmail.com> Reviewed-by:
Adam Jackson <ajax@redhat.com> Reviewed-by:
Daniel Stone <daniels@collabora.com> (cherry picked from commit 820dfcea)
Showing
- src/egl/drivers/dri2/egl_dri2.c 2 additions, 1 deletionsrc/egl/drivers/dri2/egl_dri2.c
- src/egl/drivers/dri2/egl_dri2.h 2 additions, 0 deletionssrc/egl/drivers/dri2/egl_dri2.h
- src/egl/drivers/dri2/platform_wayland.c 18 additions, 0 deletionssrc/egl/drivers/dri2/platform_wayland.c
- src/egl/wayland/wayland-drm/wayland-drm.c 27 additions, 4 deletionssrc/egl/wayland/wayland-drm/wayland-drm.c
- src/egl/wayland/wayland-drm/wayland-drm.h 2 additions, 0 deletionssrc/egl/wayland/wayland-drm/wayland-drm.h
Loading
Please register or sign in to comment