summaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/i915/i915_drv.h
diff options
context:
space:
mode:
authorKeith Packard <keithp@keithp.com>2008-10-30 19:38:48 -0700
committerIngo Molnar <mingo@elte.hu>2008-10-31 10:12:40 +0100
commit0839ccb8ac6a9e2d5e175a4ae9c82b5c574d510d (patch)
treec231d0492e4c03ae8d33f2101f21ff2928e56710 /drivers/gpu/drm/i915/i915_drv.h
parent9663f2e6a6cf3f82b06d8fb699b11b80f92553ba (diff)
downloadlinux-0839ccb8ac6a9e2d5e175a4ae9c82b5c574d510d.tar.gz
linux-0839ccb8ac6a9e2d5e175a4ae9c82b5c574d510d.tar.bz2
linux-0839ccb8ac6a9e2d5e175a4ae9c82b5c574d510d.zip
i915: use io-mapping interfaces instead of a variety of mapping kludges
Impact: optimize/clean-up the IO mapping implementation of the i915 DRM driver Switch the i915 device aperture mapping to the io-mapping interface, taking advantage of the cleaner API to extend it across all of the mapping uses, including both pwrite and relocation updates. This dramatically improves performance on 64-bit kernels which were using the same slow path as 32-bit non-HIGHMEM kernels prior to this patch. Signed-off-by: Keith Packard <keithp@keithp.com> Signed-off-by: Eric Anholt <eric@anholt.net> Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'drivers/gpu/drm/i915/i915_drv.h')
-rw-r--r--drivers/gpu/drm/i915/i915_drv.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h
index f20ffe17df71..126b2f13258c 100644
--- a/drivers/gpu/drm/i915/i915_drv.h
+++ b/drivers/gpu/drm/i915/i915_drv.h
@@ -31,6 +31,7 @@
#define _I915_DRV_H_
#include "i915_reg.h"
+#include <linux/io-mapping.h>
/* General customization:
*/
@@ -246,6 +247,8 @@ typedef struct drm_i915_private {
struct {
struct drm_mm gtt_space;
+ struct io_mapping *gtt_mapping;
+
/**
* List of objects currently involved in rendering from the
* ringbuffer.