gpu : Reduce the reserved memory to 16M; Set gcdPAGE_ALLOC_LIMIT to 0;
author杜坤明 <dkm@rockchip.com>
Tue, 20 Sep 2011 01:17:04 +0000 (09:17 +0800)
committer杜坤明 <dkm@rockchip.com>
Tue, 20 Sep 2011 01:17:04 +0000 (09:17 +0800)
arch/arm/mach-rk29/board-rk29-ddr3sdk.c
drivers/staging/rk29/vivante/hal/inc/gc_hal_options.h
drivers/staging/rk29/vivante/hal/kernel/gc_hal_kernel.c
drivers/staging/rk29/vivante/hal/os/linux/kernel/gc_hal_kernel_os.c

index b385a7df0bb1bc680b71869ea67c8affd9effd83..7e8c3ce90ed8747dbd847c6b510a8924f63138f2 100755 (executable)
 #else
 #define SDRAM_SIZE          SZ_512M
 #endif
-#define PMEM_GPU_SIZE       SZ_64M
+#define PMEM_GPU_SIZE       SZ_16M
 #define PMEM_UI_SIZE        (48 * SZ_1M) /* 1280x800: 64M 1024x768: 48M ... */
 #define PMEM_VPU_SIZE       SZ_64M
 #define PMEM_SKYPE_SIZE     0
index be464ed867fd8bbdf943a59cc4152ae8a980f165..d6baf688680ad13d64644ac3af2e155fb9ced858 100644 (file)
     gcdPAGE_ALLOC_LIMIT         ÏÞÖÆPageÉêÇë
     gcdPAGE_ALLOC_LIMIT_SIZE    ÏÞÖÆPageÉêÇëµÄ´óС,µ¥Î»ÎªM
 */
-#define gcdPAGE_ALLOC_LIMIT                 1
+#define gcdPAGE_ALLOC_LIMIT                 0
 #define gcdPAGE_ALLOC_LIMIT_SIZE            0
 
 
index 56d72c81126ce29c7215d91d9fa8af00ffb7cc0d..f76834c6d5ed7fd81514c2d754854921336bd63a 100755 (executable)
@@ -388,12 +388,15 @@ _AllocateMemory(
     while ((*Pool == gcvPOOL_DEFAULT)
     ||     (*Pool == gcvPOOL_LOCAL)
     ||     (*Pool == gcvPOOL_UNIFIED)
+    ||     ((*Pool == gcvPOOL_SYSTEM) && (pool==gcvPOOL_CONTIGUOUS))
     );
 
     if (gcmIS_SUCCESS(status))
     {
         /* Return pool used for allocation. */
         *Pool = pool;
+    } else {
+        printk("_AllocateMemory fail! pool=%d, Bytes=%d, Type=%d\n", pool, (int)Bytes, Type);
     }
 
     /* Return status. */
index 96fc28b6993022011df1509b789517dcc80e89d6..d5bf1f83cea90476ba4e73ecd4c8ce6994e97931 100755 (executable)
@@ -3032,7 +3032,7 @@ gceSTATUS gckOS_AllocatePagedMemoryEx(
             }
         }
 #else
-        addr = (char *)__get_free_pages(GFP_ATOMIC | GFP_DMA | __GFP_NOWARN, GetOrder(numPages));
+        addr = (char *)__get_free_pages(GFP_ATOMIC | GFP_DMA | __GFP_NOWARN | __GFP_NO_KSWAPD, GetOrder(numPages));
 #endif
     }
     else