delete mmu info break select
authorzsq <zsq@rock-chips.com>
Fri, 1 Feb 2013 00:43:31 +0000 (08:43 +0800)
committerzsq <zsq@rock-chips.com>
Fri, 1 Feb 2013 00:43:31 +0000 (08:43 +0800)
drivers/video/rockchip/rga/rga_mmu_info.c
drivers/video/rockchip/rga/rga_reg_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
index 10d63e7669f5d5ad15bcb77609cd33fb94483861..b2674975a6da2ee0276a290ca81c4e64d7b36994 100755 (executable)
@@ -1091,7 +1091,7 @@ RGA_set_bitblt_reg_info(u8 *base, const struct rga_req * msg, TILE_INFO *tile)
     stride = (msg->dst.vir_w * pixel_width + 3) & (~3);\r
     *bRGA_DST_MST = (u32)msg->dst.yrgb_addr + (tile->dst_ctrl.y_off * stride) + (tile->dst_ctrl.x_off * pixel_width);\r
     *bRGA_DST_CTR_INFO = (tile->dst_ctrl.w) | ((tile->dst_ctrl.h) << 16);\r
-\r
+    \r
     *bRGA_DST_CTR_INFO |= (1<<29) | (1<<28);\r
 }\r
 \r