Merge branch 'tty-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh...
[pandora-kernel.git] / drivers / gpu / drm / i915 / intel_ringbuffer.h
index 9e81ff3..3126c26 100644 (file)
@@ -46,9 +46,9 @@ struct  intel_ring_buffer {
        int             (*init)(struct drm_device *dev,
                        struct intel_ring_buffer *ring);
 
-       void            (*set_tail)(struct drm_device *dev,
-                                   struct intel_ring_buffer *ring,
-                                   u32 value);
+       void            (*write_tail)(struct drm_device *dev,
+                                     struct intel_ring_buffer *ring,
+                                     u32 value);
        void            (*flush)(struct drm_device *dev,
                        struct intel_ring_buffer *ring,
                        u32     invalidate_domains,
@@ -63,6 +63,7 @@ struct  intel_ring_buffer {
                        struct drm_i915_gem_execbuffer2 *exec,
                        struct drm_clip_rect *cliprects,
                        uint64_t exec_offset);
+       void            (*cleanup)(struct intel_ring_buffer *ring);
 
        /**
         * List of objects currently involved in rendering from the
@@ -82,6 +83,15 @@ struct  intel_ring_buffer {
         */
        struct list_head request_list;
 
+       /**
+        * List of objects currently pending a GPU write flush.
+        *
+        * All elements on this list will belong to either the
+        * active_list or flushing_list, last_rendering_seqno can
+        * be used to differentiate between the two elements.
+        */
+       struct list_head gpu_write_list;
+
        /**
         * Do we have some not yet emitted requests outstanding?
         */
@@ -89,6 +99,8 @@ struct  intel_ring_buffer {
 
        wait_queue_head_t irq_queue;
        drm_local_map_t map;
+
+       void *private;
 };
 
 static inline u32