summaryrefslogtreecommitdiff
path: root/src/gallium/winsys/i915
diff options
context:
space:
mode:
Diffstat (limited to 'src/gallium/winsys/i915')
-rw-r--r--src/gallium/winsys/i915/drm/i915_drm_buffer.c2
-rw-r--r--src/gallium/winsys/i915/drm/i915_drm_winsys.c22
-rw-r--r--src/gallium/winsys/i915/drm/meson.build1
3 files changed, 15 insertions, 10 deletions
diff --git a/src/gallium/winsys/i915/drm/i915_drm_buffer.c b/src/gallium/winsys/i915/drm/i915_drm_buffer.c
index de8f0a8ccd8..9c0086e9f8a 100644
--- a/src/gallium/winsys/i915/drm/i915_drm_buffer.c
+++ b/src/gallium/winsys/i915/drm/i915_drm_buffer.c
@@ -225,7 +225,7 @@ i915_drm_buffer_destroy(struct i915_winsys *iws,
{
drm_intel_bo_unreference(intel_bo(buffer));
-#ifdef DEBUG
+#if MESA_DEBUG
i915_drm_buffer(buffer)->magic = 0;
i915_drm_buffer(buffer)->bo = NULL;
#endif
diff --git a/src/gallium/winsys/i915/drm/i915_drm_winsys.c b/src/gallium/winsys/i915/drm/i915_drm_winsys.c
index 3baccb48989..1011a16d4bb 100644
--- a/src/gallium/winsys/i915/drm/i915_drm_winsys.c
+++ b/src/gallium/winsys/i915/drm/i915_drm_winsys.c
@@ -9,6 +9,7 @@
#include "i915_drm_public.h"
#include "util/u_memory.h"
+#include "intel/common/intel_gem.h"
/*
* Helper functions
@@ -18,14 +19,8 @@
static void
i915_drm_get_device_id(int fd, unsigned int *device_id)
{
- int ret;
- struct drm_i915_getparam gp;
-
- gp.param = I915_PARAM_CHIPSET_ID;
- gp.value = (int *)device_id;
-
- ret = ioctl(fd, DRM_IOCTL_I915_GETPARAM, &gp, sizeof(gp));
- assert(ret == 0);
+ ASSERTED bool ret = intel_gem_get_param(fd, I915_PARAM_CHIPSET_ID, (int *)device_id);
+ assert(ret);
}
static int
@@ -49,11 +44,19 @@ i915_drm_winsys_destroy(struct i915_winsys *iws)
FREE(idws);
}
+static int
+i915_drm_winsys_get_fd(struct i915_winsys *iws)
+{
+ struct i915_drm_winsys *idws = i915_drm_winsys(iws);
+
+ return idws->fd;
+}
+
struct i915_winsys *
i915_drm_winsys_create(int drmFD)
{
struct i915_drm_winsys *idws;
- unsigned int deviceID;
+ unsigned int deviceID = 0;
idws = CALLOC_STRUCT(i915_drm_winsys);
if (!idws)
@@ -71,6 +74,7 @@ i915_drm_winsys_create(int drmFD)
idws->base.aperture_size = i915_drm_aperture_size;
idws->base.destroy = i915_drm_winsys_destroy;
+ idws->base.get_fd = i915_drm_winsys_get_fd;
idws->gem_manager = drm_intel_bufmgr_gem_init(idws->fd, idws->max_batch_size);
drm_intel_bufmgr_gem_enable_reuse(idws->gem_manager);
diff --git a/src/gallium/winsys/i915/drm/meson.build b/src/gallium/winsys/i915/drm/meson.build
index 01300ad4c91..57597972417 100644
--- a/src/gallium/winsys/i915/drm/meson.build
+++ b/src/gallium/winsys/i915/drm/meson.build
@@ -27,5 +27,6 @@ libi915drm = static_library(
include_directories : [
inc_include, inc_src, inc_gallium, inc_gallium_aux, inc_gallium_drivers
],
+ link_with : [libintel_common],
dependencies : [dep_libdrm, dep_libdrm_intel],
)