diff options
author | Dave Airlie <airlied@linux.ie> | 2006-11-08 15:08:09 +1100 |
---|---|---|
committer | Dave Airlie <airlied@linux.ie> | 2006-11-08 15:08:09 +1100 |
commit | 79038751ffe47ed1ce82766e027d98fd2f0e2c6a (patch) | |
tree | 07856975ad8b13ed8586dab348c35650ac7fc84b /libdrm/xf86drm.h | |
parent | 584acab6d6103552711bd6b5596ee4ccad305bc2 (diff) |
libdrm: add support for server side functionality in libdrm
This adds APIs to allow the X server to use libdrm from the system
rather than its own in-built copy.
Diffstat (limited to 'libdrm/xf86drm.h')
-rw-r--r-- | libdrm/xf86drm.h | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/libdrm/xf86drm.h b/libdrm/xf86drm.h index 86ee7d30..4d9580c4 100644 --- a/libdrm/xf86drm.h +++ b/libdrm/xf86drm.h @@ -36,6 +36,8 @@ #ifndef _XF86DRM_H_ #define _XF86DRM_H_ +#include <stdarg.h> +#include <sys/types.h> #include <drm.h> /* Defaults, if nothing set in xf86config */ @@ -61,6 +63,21 @@ typedef unsigned int drmSize, *drmSizePtr; /**< For mapped regions */ typedef void *drmAddress, **drmAddressPtr; /**< For mapped regions */ +typedef struct _drmServerInfo { + int (*debug_print)(const char *format, va_list ap); + int (*load_module)(const char *name); + void (*get_perms)(gid_t *, mode_t *); +} drmServerInfo, *drmServerInfoPtr; + +typedef struct drmHashEntry { + int fd; + void (*f)(int, void *, void *); + void *tagTable; +} drmHashEntry; + +extern void *drmGetHashTable(void); +extern drmHashEntry *drmGetEntry(int fd); + /** * Driver version information. * @@ -604,6 +621,7 @@ extern int drmScatterGatherFree(int fd, drm_handle_t handle); extern int drmWaitVBlank(int fd, drmVBlankPtr vbl); /* Support routines */ +extern void drmSetServerInfo(drmServerInfoPtr info); extern int drmError(int err, const char *label); extern void *drmMalloc(int size); extern void drmFree(void *pt); |