kms/device: Advertise texture_formats instead of render_formats

This commit is contained in:
Victoria Brekenfeld 2025-12-19 18:49:58 +01:00 committed by Victoria Brekenfeld
parent ca00df0b37
commit 2eff4607bd

View file

@ -244,7 +244,7 @@ impl State {
let gbm = GbmDevice::new(fd)
.with_context(|| format!("Failed to initialize GBM device for {}", path.display()))?;
let (render_node, render_formats, is_software) = {
let (render_node, render_formats, texture_formats, is_software) = {
let egl = init_egl(&gbm)?;
let render_node = egl
@ -254,8 +254,14 @@ impl State {
.and_then(std::convert::identity)
.unwrap_or(drm_node);
let render_formats = egl.context.dmabuf_render_formats().clone();
let texture_formats = egl.context.dmabuf_texture_formats().clone();
(render_node, render_formats, egl.device.is_software())
(
render_node,
render_formats,
texture_formats,
egl.device.is_software(),
)
};
let token = self
@ -279,7 +285,7 @@ impl State {
.with_context(|| format!("Failed to add drm device to event loop: {}", dev))?;
let socket = match (!is_software)
.then(|| self.create_socket(dh, render_node, render_formats.clone()))
.then(|| self.create_socket(dh, render_node, texture_formats))
.transpose()
{
Ok(socket) => socket,