From: Erik Gilling <konk...@android.com>

Add fill_driver_data support to export fence data to ioctl

Cc: Maarten Lankhorst <maarten.lankho...@canonical.com>
Cc: Erik Gilling <konk...@android.com>
Cc: Daniel Vetter <daniel.vet...@ffwll.ch>
Cc: Rob Clark <robcl...@gmail.com>
Cc: Sumit Semwal <sumit.sem...@linaro.org>
Cc: Greg KH <gre...@linuxfoundation.org>
Cc: dri-devel@lists.freedesktop.org
Cc: Android Kernel Team <kernel-t...@android.com>
Signed-off-by: Erik Gilling <konk...@android.com>
[jstultz: Add commit message]
Signed-off-by: John Stultz <john.stu...@linaro.org>
---
 drivers/staging/android/sw_sync.c |   14 ++++++++++++++
 1 file changed, 14 insertions(+)

diff --git a/drivers/staging/android/sw_sync.c 
b/drivers/staging/android/sw_sync.c
index 64c5ebb..081e4d1 100644
--- a/drivers/staging/android/sw_sync.c
+++ b/drivers/staging/android/sw_sync.c
@@ -87,6 +87,19 @@ static void sw_sync_print_pt(struct seq_file *s, struct 
sync_pt *sync_pt)
        seq_printf(s, "%d / %d", pt->value, obj->value);
 }
 
+static int sw_sync_fill_driver_data(struct sync_pt *sync_pt,
+                                   void *data, int size)
+{
+       struct sw_sync_pt *pt = (struct sw_sync_pt *)sync_pt;
+
+       if (size < sizeof(pt->value))
+               return -ENOMEM;
+
+       memcpy(data, &pt->value, sizeof(pt->value));
+
+       return sizeof(pt->value);
+}
+
 struct sync_timeline_ops sw_sync_timeline_ops = {
        .driver_name = "sw_sync",
        .dup = sw_sync_pt_dup,
@@ -94,6 +107,7 @@ struct sync_timeline_ops sw_sync_timeline_ops = {
        .compare = sw_sync_pt_compare,
        .print_obj = sw_sync_print_obj,
        .print_pt = sw_sync_print_pt,
+       .fill_driver_data = sw_sync_fill_driver_data,
 };
 
 
-- 
1.7.10.4

_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/dri-devel

Reply via email to