summaryrefslogtreecommitdiff
path: root/sys/dev/pci/drm/i915_dma.c
diff options
context:
space:
mode:
authorOwain Ainsworth <oga@cvs.openbsd.org>2010-04-29 15:23:29 +0000
committerOwain Ainsworth <oga@cvs.openbsd.org>2010-04-29 15:23:29 +0000
commit398eaca004223f0f2bf8d34801cc18081da10576 (patch)
tree87aeb41b4963d9869af9e4ae2c66e36cb5e485a7 /sys/dev/pci/drm/i915_dma.c
parentc7b050978fab8c91a1bde44d92174f74e6ac7121 (diff)
use BUS_SPACE_MAP_PREFETCHABLE on maps that should be WC (soon this will
actually do so).
Diffstat (limited to 'sys/dev/pci/drm/i915_dma.c')
-rw-r--r--sys/dev/pci/drm/i915_dma.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/sys/dev/pci/drm/i915_dma.c b/sys/dev/pci/drm/i915_dma.c
index a221dfb4768..5e80c387bce 100644
--- a/sys/dev/pci/drm/i915_dma.c
+++ b/sys/dev/pci/drm/i915_dma.c
@@ -131,7 +131,8 @@ static int i915_initialize(struct drm_device * dev, drm_i915_init_t * init)
dev_priv->ring.size = init->ring_size;
if ((ret = bus_space_map(dev_priv->bst, init->ring_start,
- init->ring_size, 0, &dev_priv->ring.bsh)) != 0) {
+ init->ring_size, BUS_SPACE_MAP_PREFETCHABLE,
+ &dev_priv->ring.bsh)) != 0) {
DRM_INFO("can't map ringbuffer\n");
i915_dma_cleanup(dev);
return (ret);
@@ -678,8 +679,8 @@ int i915_set_status_page(struct drm_device *dev, void *data,
dev_priv->hws_map.size = 4*1024;
if ((ret = bus_space_map(dev_priv->bst, dev_priv->hws_map.offset,
- dev_priv->hws_map.size, BUS_SPACE_MAP_LINEAR,
- &dev_priv->hws_map.bsh)) != 0) {
+ dev_priv->hws_map.size, BUS_SPACE_MAP_LINEAR |
+ BUS_SPACE_MAP_PREFETCHABLE, &dev_priv->hws_map.bsh)) != 0) {
DRM_INFO("can't hws page\n");
i915_dma_cleanup(dev);
dev_priv->status_gfx_addr = 0;