drm: powerpc can use a simpler drm_io_prot()
[deliverable/linux.git] / drivers / gpu / drm / drm_vm.c
index 352e3399d18f9429d762630cdf3fed69fa85d731..b2b231cda1395e871927ba1942c4c055a8bb2ba7 100644 (file)
@@ -40,6 +40,8 @@
 #include <linux/efi.h>
 #include <linux/slab.h>
 #endif
+#include <asm/pgtable.h>
+#include "drm_legacy.h"
 
 struct drm_vma_entry {
        struct list_head head;
@@ -55,15 +57,11 @@ static pgprot_t drm_io_prot(struct drm_local_map *map,
 {
        pgprot_t tmp = vm_get_page_prot(vma->vm_flags);
 
-#if defined(__i386__) || defined(__x86_64__)
+#if defined(__i386__) || defined(__x86_64__) || defined(__powerpc__)
        if (map->type == _DRM_REGISTERS && !(map->flags & _DRM_WRITE_COMBINING))
                tmp = pgprot_noncached(tmp);
        else
                tmp = pgprot_writecombine(tmp);
-#elif defined(__powerpc__)
-       pgprot_val(tmp) |= _PAGE_NO_CACHE;
-       if (map->type == _DRM_REGISTERS)
-               pgprot_val(tmp) |= _PAGE_GUARDED;
 #elif defined(__ia64__)
        if (efi_range_is_wc(vma->vm_start, vma->vm_end -
                                    vma->vm_start))
@@ -270,7 +268,7 @@ static void drm_vm_shm_close(struct vm_area_struct *vma)
                                dmah.vaddr = map->handle;
                                dmah.busaddr = map->offset;
                                dmah.size = map->size;
-                               __drm_pci_free(dev, &dmah);
+                               __drm_legacy_pci_free(dev, &dmah);
                                break;
                        }
                        kfree(map);
@@ -681,8 +679,6 @@ void drm_legacy_vma_flush(struct drm_device *dev)
        }
 }
 
-#if DRM_DEBUG_CODE
-
 int drm_vma_info(struct seq_file *m, void *data)
 {
        struct drm_info_node *node = (struct drm_info_node *) m->private;
@@ -736,5 +732,3 @@ int drm_vma_info(struct seq_file *m, void *data)
        mutex_unlock(&dev->struct_mutex);
        return 0;
 }
-
-#endif
This page took 0.026727 seconds and 5 git commands to generate.