]> git.karo-electronics.de Git - mv-sheeva.git/blobdiff - drivers/gpu/drm/drm_memory.c
Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wirel...
[mv-sheeva.git] / drivers / gpu / drm / drm_memory.c
index 0a436184dd88bbbba72d789f5bd693b936c8e2ee..e4865f99989c717faf84c6d5488d788c87cee4ed 100644 (file)
@@ -59,10 +59,11 @@ int drm_mem_info(char *buf, char **start, off_t offset,
 static void *agp_remap(unsigned long offset, unsigned long size,
                       struct drm_device * dev)
 {
-       unsigned long *phys_addr_map, i, num_pages =
+       unsigned long i, num_pages =
            PAGE_ALIGN(size) / PAGE_SIZE;
        struct drm_agp_mem *agpmem;
        struct page **page_map;
+       struct page **phys_page_map;
        void *addr;
 
        size = PAGE_ALIGN(size);
@@ -89,10 +90,9 @@ static void *agp_remap(unsigned long offset, unsigned long size,
        if (!page_map)
                return NULL;
 
-       phys_addr_map =
-           agpmem->memory->memory + (offset - agpmem->bound) / PAGE_SIZE;
+       phys_page_map = (agpmem->memory->pages + (offset - agpmem->bound) / PAGE_SIZE);
        for (i = 0; i < num_pages; ++i)
-               page_map[i] = pfn_to_page(phys_addr_map[i] >> PAGE_SHIFT);
+               page_map[i] = phys_page_map[i];
        addr = vmap(page_map, num_pages, VM_IOREMAP, PAGE_AGP);
        vfree(page_map);