summaryrefslogtreecommitdiff
path: root/linux-core/drm_objects.h
diff options
context:
space:
mode:
authorThomas Hellstrom <thomas-at-tungstengraphics-dot-com>2007-04-18 16:33:28 +0200
committerThomas Hellstrom <thomas-at-tungstengraphics-dot-com>2007-04-18 16:33:28 +0200
commit2df2c70e20caa3d6d1a1ac12da6fe3cc0689d51f (patch)
treea3114b12be8f860e88d0b72b8ab844a3d93ed38e /linux-core/drm_objects.h
parent5a96d59ce9d9ad5816e2d0e195afa9902445f594 (diff)
Simplify the ttm backend interface and the agp ttm backend.
Diffstat (limited to 'linux-core/drm_objects.h')
-rw-r--r--linux-core/drm_objects.h13
1 files changed, 9 insertions, 4 deletions
diff --git a/linux-core/drm_objects.h b/linux-core/drm_objects.h
index b3155af1..fa26e915 100644
--- a/linux-core/drm_objects.h
+++ b/linux-core/drm_objects.h
@@ -234,10 +234,8 @@ extern int drm_fence_ioctl(DRM_IOCTL_ARGS);
#define DRM_BE_FLAG_NEEDS_FREE 0x00000001
#define DRM_BE_FLAG_BOUND_CACHED 0x00000002
-typedef struct drm_ttm_backend {
- void *private;
- uint32_t flags;
- uint32_t drm_map_type;
+struct drm_ttm_backend;
+typedef struct drm_ttm_backend_func {
int (*needs_ub_cache_adjust) (struct drm_ttm_backend * backend);
int (*populate) (struct drm_ttm_backend * backend,
unsigned long num_pages, struct page ** pages);
@@ -246,6 +244,13 @@ typedef struct drm_ttm_backend {
unsigned long offset, int cached);
int (*unbind) (struct drm_ttm_backend * backend);
void (*destroy) (struct drm_ttm_backend * backend);
+} drm_ttm_backend_func_t;
+
+
+typedef struct drm_ttm_backend {
+ uint32_t flags;
+ int mem_type;
+ drm_ttm_backend_func_t *func;
} drm_ttm_backend_t;
typedef struct drm_ttm {