From 60754b6fde12e559566c03a522c1199ae7d317aa Mon Sep 17 00:00:00 2001 From: bjorn3 <17426603+bjorn3@users.noreply.github.com> Date: Thu, 12 Mar 2026 20:50:40 +0100 Subject: [PATCH] drivers/graphics: Support detecting hardware cursors for DRM --- drivers/graphics/virtio-gpud/src/scheme.rs | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/drivers/graphics/virtio-gpud/src/scheme.rs b/drivers/graphics/virtio-gpud/src/scheme.rs index c8634a5e1e..74544b4958 100644 --- a/drivers/graphics/virtio-gpud/src/scheme.rs +++ b/drivers/graphics/virtio-gpud/src/scheme.rs @@ -7,7 +7,9 @@ use driver_graphics::{ modeinfo_for_size, CursorFramebuffer, CursorPlane, Framebuffer, GraphicsAdapter, GraphicsScheme, StandardProperties, }; -use drm_sys::{DRM_MODE_DPMS_ON, DRM_MODE_TYPE_PREFERRED}; +use drm_sys::{ + DRM_CAP_CURSOR_HEIGHT, DRM_CAP_CURSOR_WIDTH, DRM_MODE_DPMS_ON, DRM_MODE_TYPE_PREFERRED, +}; use graphics_ipc::v1::Damage; use graphics_ipc::v2::ipc::{DRM_CAP_DUMB_BUFFER, DRM_CLIENT_CAP_CURSOR_PLANE_HOTSPOT}; @@ -276,6 +278,8 @@ impl<'a> GraphicsAdapter for VirtGpuAdapter<'a> { fn get_cap(&self, cap: u32) -> syscall::Result { match cap { DRM_CAP_DUMB_BUFFER => Ok(1), + DRM_CAP_CURSOR_WIDTH => Ok(32), + DRM_CAP_CURSOR_HEIGHT => Ok(32), _ => Err(syscall::Error::new(EINVAL)), } }