mali_400_driver :
authorchenzhen <chenzhen@rock-chips.com>
Mon, 26 Jan 2015 08:10:22 +0000 (16:10 +0800)
committerchenzhen <chenzhen@rock-chips.com>
Mon, 26 Jan 2015 08:16:30 +0000 (16:16 +0800)
use mod_timer in mali_control_timer_callback_chain.
upgrade rk_ko_ver to 3.

drivers/gpu/arm/mali400/mali/common/mali_control_timer.c
drivers/gpu/arm/mali400/mali/common/mali_control_timer.h
drivers/gpu/arm/mali400/mali/platform/rk30/rk_ext.h
drivers/gpu/arm/mali400/rk_ver_info.txt

index 3dadecaac2c3dcc40fb29bdc8f043f24412fe8de..c7a9aaa6ae3a0cbdcbd2a4eaac3f3e7d3f036e13 100755 (executable)
 
 static u64 period_start_time = 0;
 
-static _mali_osk_timer_t *mali_control_timer = NULL;
+static _mali_osk_timer_t *mali_control_timer = NULL;    // .KP : mali_control_timer
 static mali_bool timer_running = MALI_FALSE;
 
 static u32 mali_control_timeout = 50;
 
-void mali_control_timer_add(u32 timeout)
+void mali_control_timer_add(u32 timeout)       // 'timeout' : 以 ms 为单位.
 {
        _mali_osk_timer_add(mali_control_timer, _mali_osk_time_mstoticks(timeout));
 }
 
-static void mali_control_timer_callback(void *arg)
+void mali_control_timer_mod(u32 timeout_in_ms)
+{
+       _mali_osk_timer_mod(mali_control_timer, _mali_osk_time_mstoticks(timeout_in_ms));
+}
+
+static void mali_control_timer_callback(void *arg)  // .KP : mali_control_timer_callback
 {
        if (mali_utilization_enabled()) {
                struct mali_gpu_utilization_data *util_data = NULL;
@@ -45,8 +50,9 @@ static void mali_control_timer_callback(void *arg)
 #endif
                }
 
-               if (MALI_TRUE == timer_running) {
-                       mali_control_timer_add(mali_control_timeout);
+               if (MALI_TRUE == timer_running) {   // .CP : 
+                       // mali_control_timer_add(mali_control_timeout);
+                       mali_control_timer_mod(mali_control_timeout);
                }
        }
 }
index 536d1a241f1f1bbf470cc8ba36e73aa874ce700e..73cc77f75ce7747b238c3cf640dc140480a0d546 100755 (executable)
@@ -23,5 +23,7 @@ void mali_control_timer_suspend(mali_bool suspend);
 
 void mali_control_timer_add(u32 timeout);
 
+void mali_control_timer_mod(u32 timeout_in_ms);
+
 #endif /* __MALI_CONTROL_TIMER_H__ */
 
index 81a5fba8a0d8a80d24f33a1b55fa386d7824029d..343c6a634e50a44ab5c97f51123483023986f100 100755 (executable)
@@ -34,7 +34,7 @@ extern "C" {
  */\r
 \r
 /** version of rk_ext on mali_ko, aka. rk_ko_ver. */\r
-#define RK_KO_VER   (2)\r
+#define RK_KO_VER   (3)\r
 \r
 /* ---------------------------------------------------------------------------------------------------------\r
  *  Types and Structures Definition\r
index f1c3df469535b1dce28936c9cdd628c99419c692..2a6cbbbb5a97712d939995de0479587ac8525adb 100644 (file)
@@ -5,3 +5,7 @@ r5p0-01rel0-1-x@0
 
 r5p0-01rel0-2-x@0
        支持 mali_so 来获取 rk_ko_ver.
+       
+r5p0-01rel0-3-x@0
+       在 mali_control_timer_callback_chain 中使用 mod_timer, 而不再是 add_timer.
+