delete mmu info break select
[firefly-linux-kernel-4.4.55.git] / drivers / video / rockchip / rga / rga_mmu_info.c
index 83458e3989754f4f8d03399e2d9b970c83ac2187..59474f3696b85526de10790c0c6b07cae8d5a7f7 100755 (executable)
@@ -297,6 +297,7 @@ static int rga_MapUserMemory(struct page **pages,
 \r
                 if (vma)//&& (vma->vm_flags & VM_PFNMAP) )\r
                 {\r
+                    #if 0\r
                     do\r
                     {\r
                         pte_t       * pte;\r
@@ -340,6 +341,29 @@ static int rga_MapUserMemory(struct page **pages,
                         pte_unmap_unlock(pte, ptl);                                                                        \r
                     }\r
                     while (0);\r
+                    \r
+                    #else\r
+                    \r
+                    do\r
+                    {\r
+                        pte_t       * pte;\r
+                        spinlock_t  * ptl;\r
+                        unsigned long pfn;                                                                        \r
+                        pgd_t * pgd;\r
+                        pud_t * pud;\r
+                        pmd_t * pmd;\r
+                        \r
+                        pgd = pgd_offset(current->mm, (Memory + i) << PAGE_SHIFT);                        \r
+                        pud = pud_offset(pgd, (Memory + i) << PAGE_SHIFT);\r
+                        pmd = pmd_offset(pud, (Memory + i) << PAGE_SHIFT);\r
+                        pte = pte_offset_map_lock(current->mm, pmd, (Memory + i) << PAGE_SHIFT, &ptl);\r
+                                                \r
+                        pfn = pte_pfn(*pte);\r
+                        Address = ((pfn << PAGE_SHIFT) | (((unsigned long)((Memory + i) << PAGE_SHIFT)) & ~PAGE_MASK));                        \r
+                        pte_unmap_unlock(pte, ptl);                                                                        \r
+                    }\r
+                    while (0);\r
+                    #endif\r
 \r
                     pageTable[i] = Address;\r
                 }\r