aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/radeon/radeon_drv.h
diff options
context:
space:
mode:
authorDavid Miller <davem@davemloft.net>2009-02-14 04:51:07 -0500
committerDave Airlie <airlied@redhat.com>2009-03-13 00:24:02 -0400
commit6abf6bb0ff90bb77f9429bd0d90fc841c358daf3 (patch)
treebb291ce9a51dc8f8df33db5774d089ee8907ad33 /drivers/gpu/drm/radeon/radeon_drv.h
parente8a894372b4ea05dc266ba7d7a7634315b6230e8 (diff)
drm: radeon: Use surface for PCI GART table.
This allocates a physical surface for the PCI GART table, this way no matter what other surface configurations exist the GART table will always be seen by the hardware properly. We encode the file pointer of the virtual surface allocate using a special cookie value, called PCIGART_FILE_PRIV. On the last close, we release that surface. Just to be doubly safe, we run the pcigart table setup with the main surface control register clear. Based upon ideas from David Airlie and Ben Benjamin Herrenschmidt. Signed-off-by: David S. Miller <davem@davemloft.net> Signed-off-by: Dave Airlie <airlied@linux.ie>
Diffstat (limited to 'drivers/gpu/drm/radeon/radeon_drv.h')
-rw-r--r--drivers/gpu/drm/radeon/radeon_drv.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/gpu/drm/radeon/radeon_drv.h b/drivers/gpu/drm/radeon/radeon_drv.h
index 9b60a268dc7a..ecfd414bb99c 100644
--- a/drivers/gpu/drm/radeon/radeon_drv.h
+++ b/drivers/gpu/drm/radeon/radeon_drv.h
@@ -217,6 +217,7 @@ struct radeon_virt_surface {
217 u32 upper; 217 u32 upper;
218 u32 flags; 218 u32 flags;
219 struct drm_file *file_priv; 219 struct drm_file *file_priv;
220#define PCIGART_FILE_PRIV ((void *) -1L)
220}; 221};
221 222
222#define RADEON_FLUSH_EMITED (1 << 0) 223#define RADEON_FLUSH_EMITED (1 << 0)