]> git.karo-electronics.de Git - karo-tx-linux.git/commitdiff
drm/radeon: add define for flags used in R600+ GTT
authorChristian König <christian.koenig@amd.com>
Tue, 27 May 2014 14:47:37 +0000 (16:47 +0200)
committerAlex Deucher <alexander.deucher@amd.com>
Mon, 2 Jun 2014 14:25:13 +0000 (10:25 -0400)
Signed-off-by: Christian König <christian.koenig@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
drivers/gpu/drm/radeon/radeon.h
drivers/gpu/drm/radeon/rs600.c

index 736bfa2c75289c5c6c6f3cfaaa785682ef983b07..dd4da88b3ab18ddc2e50e603b4078fc125725d37 100644 (file)
@@ -855,6 +855,10 @@ struct radeon_mec {
 #define R600_PTE_FRAG_64KB     (4 << 7)
 #define R600_PTE_FRAG_256KB    (6 << 7)
 
+/* flags used for GART page table entries on R600+ */
+#define R600_PTE_GART  ( R600_PTE_VALID | R600_PTE_SYSTEM | R600_PTE_SNOOPED \
+                       | R600_PTE_READABLE | R600_PTE_WRITEABLE)
+
 struct radeon_vm_pt {
        struct radeon_bo                *bo;
        uint64_t                        addr;
index dd12dc2a010492bfc676f2bef59f6030045846ca..0a8be63926d8dd9e078127ae4581a05cb1a584fa 100644 (file)
@@ -626,12 +626,6 @@ static void rs600_gart_fini(struct radeon_device *rdev)
        radeon_gart_table_vram_free(rdev);
 }
 
-#define R600_PTE_VALID     (1 << 0)
-#define R600_PTE_SYSTEM    (1 << 1)
-#define R600_PTE_SNOOPED   (1 << 2)
-#define R600_PTE_READABLE  (1 << 5)
-#define R600_PTE_WRITEABLE (1 << 6)
-
 int rs600_gart_set_page(struct radeon_device *rdev, int i, uint64_t addr)
 {
        void __iomem *ptr = (void *)rdev->gart.ptr;
@@ -640,8 +634,7 @@ int rs600_gart_set_page(struct radeon_device *rdev, int i, uint64_t addr)
                return -EINVAL;
        }
        addr = addr & 0xFFFFFFFFFFFFF000ULL;
-       addr |= R600_PTE_VALID | R600_PTE_SYSTEM | R600_PTE_SNOOPED;
-       addr |= R600_PTE_READABLE | R600_PTE_WRITEABLE;
+       addr |= R600_PTE_GART;
        writeq(addr, ptr + (i * 8));
        return 0;
 }