kms/device: Advertise texture_formats instead of render_formats
This commit is contained in:
parent
ca00df0b37
commit
2eff4607bd
1 changed files with 9 additions and 3 deletions
|
|
@ -244,7 +244,7 @@ impl State {
|
||||||
|
|
||||||
let gbm = GbmDevice::new(fd)
|
let gbm = GbmDevice::new(fd)
|
||||||
.with_context(|| format!("Failed to initialize GBM device for {}", path.display()))?;
|
.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 egl = init_egl(&gbm)?;
|
||||||
|
|
||||||
let render_node = egl
|
let render_node = egl
|
||||||
|
|
@ -254,8 +254,14 @@ impl State {
|
||||||
.and_then(std::convert::identity)
|
.and_then(std::convert::identity)
|
||||||
.unwrap_or(drm_node);
|
.unwrap_or(drm_node);
|
||||||
let render_formats = egl.context.dmabuf_render_formats().clone();
|
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
|
let token = self
|
||||||
|
|
@ -279,7 +285,7 @@ impl State {
|
||||||
.with_context(|| format!("Failed to add drm device to event loop: {}", dev))?;
|
.with_context(|| format!("Failed to add drm device to event loop: {}", dev))?;
|
||||||
|
|
||||||
let socket = match (!is_software)
|
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()
|
.transpose()
|
||||||
{
|
{
|
||||||
Ok(socket) => socket,
|
Ok(socket) => socket,
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue