diff options
author | rnoland <rnoland@FreeBSD.org> | 2010-01-31 14:25:29 +0000 |
---|---|---|
committer | rnoland <rnoland@FreeBSD.org> | 2010-01-31 14:25:29 +0000 |
commit | 04aaff5298149d2d2df6b4d11d782ff989614101 (patch) | |
tree | af15e53b9e0b6885d552ebd68a1fe78b560b474d /sys/dev/drm/drmP.h | |
parent | 23c4d0d9ded24602d1bba680bedba3b21d81cdc1 (diff) | |
download | FreeBSD-src-04aaff5298149d2d2df6b4d11d782ff989614101.zip FreeBSD-src-04aaff5298149d2d2df6b4d11d782ff989614101.tar.gz |
Import simple drm memory manager.
This is required for the VIA driver and at least some parts are needed
for GEM.
MFC after: 2 weeks
Diffstat (limited to 'sys/dev/drm/drmP.h')
-rw-r--r-- | sys/dev/drm/drmP.h | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/sys/dev/drm/drmP.h b/sys/dev/drm/drmP.h index 25e272e..63444f8 100644 --- a/sys/dev/drm/drmP.h +++ b/sys/dev/drm/drmP.h @@ -91,9 +91,9 @@ struct drm_file; #include <sys/bus.h> #include "dev/drm/drm.h" -#include "dev/drm/drm_linux_list.h" #include "dev/drm/drm_atomic.h" #include "dev/drm/drm_internal.h" +#include "dev/drm/drm_linux_list.h" #include <opt_drm.h> #ifdef DRM_DEBUG @@ -147,6 +147,8 @@ MALLOC_DECLARE(DRM_MEM_AGPLISTS); MALLOC_DECLARE(DRM_MEM_CTXBITMAP); MALLOC_DECLARE(DRM_MEM_SGLISTS); MALLOC_DECLARE(DRM_MEM_DRAWABLE); +MALLOC_DECLARE(DRM_MEM_MM); +MALLOC_DECLARE(DRM_MEM_HASHTAB); SYSCTL_DECL(_hw_drm); @@ -193,6 +195,11 @@ typedef void irqreturn_t; #define IRQ_HANDLED /* nothing */ #define IRQ_NONE /* nothing */ +#define unlikely(x) __builtin_expect(!!(x), 0) +#define container_of(ptr, type, member) ({ \ + __typeof( ((type *)0)->member ) *__mptr = (ptr); \ + (type *)( (char *)__mptr - offsetof(type,member) );}) + enum { DRM_IS_NOT_AGP, DRM_IS_AGP, |