diff --git a/redox-ioctl/src/drm.rs b/redox-ioctl/src/drm.rs index 2f83646bdf..9437dfcc64 100644 --- a/redox-ioctl/src/drm.rs +++ b/redox-ioctl/src/drm.rs @@ -7,7 +7,7 @@ use core::{ pub use drm_sys::{ __kernel_size_t, DRM_PROP_NAME_LEN, drm_clip_rect, drm_get_cap, drm_mode_card_res, - drm_mode_connector_set_property, drm_mode_create_dumb, drm_mode_crtc, + drm_mode_closefb, drm_mode_connector_set_property, drm_mode_create_dumb, drm_mode_crtc, drm_mode_crtc_page_flip_target, drm_mode_cursor, drm_mode_cursor2, drm_mode_destroy_dumb, drm_mode_fb_cmd, drm_mode_fb_cmd2, drm_mode_fb_dirty_cmd, drm_mode_get_blob, drm_mode_get_connector, drm_mode_get_encoder, drm_mode_get_plane, drm_mode_get_plane_res, @@ -337,3 +337,11 @@ define_ioctl_data! { modifier: [u64; 4], } } + +pub const MODE_CLOSE_FB: u64 = 0xD0; +define_ioctl_data! { + struct drm_mode_closefb, DrmModeClosefb { + fb_id: u32, + pad: u32, + } +} diff --git a/src/header/sys_ioctl/redox/drm.rs b/src/header/sys_ioctl/redox/drm.rs index 662b3ab233..6f9f8dcf80 100644 --- a/src/header/sys_ioctl/redox/drm.rs +++ b/src/header/sys_ioctl/redox/drm.rs @@ -125,6 +125,7 @@ pub(super) unsafe fn ioctl(fd: c_int, func: u8, buf: IoctlBuffer) -> Result unsafe { dev.write_ioctl::(buf, MODE_CURSOR2) }, 0xCE => unsafe { dev.read_write_ioctl::(buf, MODE_GET_FB2) }, + 0xD0 => unsafe { dev.read_write_ioctl::(buf, MODE_CLOSE_FB) }, _ => { todo_skip!( 0,