diff options
Diffstat (limited to 'libdrm')
| -rw-r--r-- | libdrm/xf86drm.c | 12 | 
1 files changed, 9 insertions, 3 deletions
| diff --git a/libdrm/xf86drm.c b/libdrm/xf86drm.c index 6d5f4a6f..773c6d24 100644 --- a/libdrm/xf86drm.c +++ b/libdrm/xf86drm.c @@ -94,6 +94,10 @@ extern unsigned long _bus_base(void);  #define DRM_MAJOR 34  #endif +# ifdef __OpenBSD__ +#  define DRM_MAJOR 81 +# endif +  #ifndef DRM_MAJOR  #define DRM_MAJOR 226		/* Linux */  #endif @@ -321,8 +325,10 @@ int drmAvailable(void)      int           fd;      if ((fd = drmOpenMinor(0, 1)) < 0) { +#ifdef __linux__  				/* Try proc for backward Linux compatibility */  	if (!access("/proc/dri/0", R_OK)) return 1; +#endif  	return 0;      } @@ -598,6 +604,7 @@ drmVersionPtr drmGetVersion(int fd)  	version->desc    = drmMalloc(version->desc_len + 1);      if (ioctl(fd, DRM_IOCTL_VERSION, version)) { +	drmMsg("DRM_IOCTL_VERSION: %s\n", strerror(errno));  	drmFreeKernelVersion(version);  	return NULL;      } @@ -1167,8 +1174,6 @@ int drmGetLock(int fd, drmContext context, drmLockFlags flags)      return 0;  } -static void (*drm_unlock_callback)( void ) = 0; -  /**   * Release the hardware lock.   * @@ -1412,7 +1417,8 @@ int drmAgpAlloc(int fd, unsigned long size, unsigned long type,  		unsigned long *address, unsigned long *handle)  {      drm_agp_buffer_t b; -    *handle = 0; + +    *handle = DRM_AGP_NO_HANDLE;      b.size   = size;      b.handle = 0;      b.type   = type; | 
