summaryrefslogtreecommitdiff
path: root/shared-core/i915_drm.h
diff options
context:
space:
mode:
authorZou Nan hai <nanhai.zou@intel.com>2006-12-04 15:48:04 +0800
committerKeith Packard <keithp@neko.keithp.com>2007-01-06 16:22:08 -0800
commitf7180349fde6947e229ecde17215c2984e6e883b (patch)
tree0f889732ee7728b5a7de62b1a4352e811c9a0cd2 /shared-core/i915_drm.h
parent1f1714cf3dd24ea4109722ea2b47bcf4725f27ea (diff)
i915: ARB_Occlusion_query(MMIO ioctl) support.
This adds a new ioctl for passing counter information from the chip back to applications, these counters include the data needed to perform OC.
Diffstat (limited to 'shared-core/i915_drm.h')
-rw-r--r--shared-core/i915_drm.h29
1 files changed, 29 insertions, 0 deletions
diff --git a/shared-core/i915_drm.h b/shared-core/i915_drm.h
index 9eec109e..22a81d14 100644
--- a/shared-core/i915_drm.h
+++ b/shared-core/i915_drm.h
@@ -152,6 +152,7 @@ typedef struct _drm_i915_sarea {
#define DRM_I915_SET_VBLANK_PIPE 0x0d
#define DRM_I915_GET_VBLANK_PIPE 0x0e
#define DRM_I915_VBLANK_SWAP 0x0f
+#define DRM_I915_MMIO 0x10
#define DRM_IOCTL_I915_INIT DRM_IOW( DRM_COMMAND_BASE + DRM_I915_INIT, drm_i915_init_t)
#define DRM_IOCTL_I915_FLUSH DRM_IO ( DRM_COMMAND_BASE + DRM_I915_FLUSH)
@@ -273,4 +274,32 @@ typedef struct drm_i915_vblank_swap {
unsigned int sequence;
} drm_i915_vblank_swap_t;
+#define I915_MMIO_READ 0
+#define I915_MMIO_WRITE 1
+
+#define I915_MMIO_MAY_READ 0x1
+#define I915_MMIO_MAY_WRITE 0x2
+
+#define MMIO_REGS_IA_PRIMATIVES_COUNT 0
+#define MMIO_REGS_IA_VERTICES_COUNT 1
+#define MMIO_REGS_VS_INVOCATION_COUNT 2
+#define MMIO_REGS_GS_PRIMITIVES_COUNT 3
+#define MMIO_REGS_GS_INVOCATION_COUNT 4
+#define MMIO_REGS_CL_PRIMITIVES_COUNT 5
+#define MMIO_REGS_CL_INVOCATION_COUNT 6
+#define MMIO_REGS_PS_INVOCATION_COUNT 7
+#define MMIO_REGS_PS_DEPTH_COUNT 8
+
+typedef struct drm_i915_mmio_entry {
+ unsigned int flag;
+ unsigned int offset;
+ unsigned int size;
+}drm_i915_mmio_entry_t;
+
+typedef struct drm_i915_mmio {
+ unsigned int read_write:1;
+ unsigned int reg:31;
+ void __user *data;
+} drm_i915_mmio_t;
+
#endif /* _I915_DRM_H_ */