drm/cirrus: add create_handle support.
authorLepton Wu <ytht.net@gmail.com>
Wed, 8 Nov 2017 18:55:37 +0000 (10:55 -0800)
committerGerd Hoffmann <kraxel@redhat.com>
Fri, 10 Nov 2017 11:45:34 +0000 (12:45 +0100)
Add create_handle support to cirrus fb. Without this, screenshot tool
in chromium OS can't work.

Signed-off-by: Lepton Wu <ytht.net@gmail.com>
Link: http://patchwork.freedesktop.org/patch/msgid/20171108185537.56167-1-ytht.net@gmail.com
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
drivers/gpu/drm/cirrus/cirrus_main.c

index b5f52854395627e1e6ac0dc0807fcb0b23d7cb8b..26df1e8cd490d57f9fd3af3624f484a588114735 100644 (file)
 
 #include "cirrus_drv.h"
 
+static int cirrus_create_handle(struct drm_framebuffer *fb,
+                               struct drm_file* file_priv,
+                               unsigned int* handle)
+{
+       struct cirrus_framebuffer *cirrus_fb = to_cirrus_framebuffer(fb);
+
+       return drm_gem_handle_create(file_priv, cirrus_fb->obj, handle);
+}
 
 static void cirrus_user_framebuffer_destroy(struct drm_framebuffer *fb)
 {
@@ -24,6 +32,7 @@ static void cirrus_user_framebuffer_destroy(struct drm_framebuffer *fb)
 }
 
 static const struct drm_framebuffer_funcs cirrus_fb_funcs = {
+       .create_handle = cirrus_create_handle,
        .destroy = cirrus_user_framebuffer_destroy,
 };