drm/i915/uapi: implement object placement extension
[linux-2.6-microblaze.git] / drivers / gpu / drm / i915 / intel_memory_region.h
index 942fc4f..d24ce5a 100644 (file)
@@ -11,6 +11,7 @@
 #include <linux/mutex.h>
 #include <linux/io-mapping.h>
 #include <drm/drm_mm.h>
+#include <drm/i915_drm.h>
 
 #include "i915_buddy.h"
 
@@ -19,12 +20,9 @@ struct drm_i915_gem_object;
 struct intel_memory_region;
 struct sg_table;
 
-/**
- *  Base memory type
- */
 enum intel_memory_type {
-       INTEL_MEMORY_SYSTEM = 0,
-       INTEL_MEMORY_LOCAL,
+       INTEL_MEMORY_SYSTEM = I915_MEMORY_CLASS_SYSTEM,
+       INTEL_MEMORY_LOCAL = I915_MEMORY_CLASS_DEVICE,
        INTEL_MEMORY_STOLEN_SYSTEM,
        INTEL_MEMORY_STOLEN_LOCAL,
 };
@@ -99,6 +97,10 @@ struct intel_memory_region {
        } objects;
 };
 
+struct intel_memory_region *
+intel_memory_region_lookup(struct drm_i915_private *i915,
+                          u16 class, u16 instance);
+
 int intel_memory_region_init_buddy(struct intel_memory_region *mem);
 void intel_memory_region_release_buddy(struct intel_memory_region *mem);