*/
#define TDM_CONFIG_KEY_GENERAL_VIRTUAL_OUTPUT_HWC_TARGET_BO_DEFAULT "general:virtual_output_hwc_target_bo_default"
+/* use the global fps to commit. [0(disable), 1(enable)]
+ * default: 0
+ * ex) 1
+ */
+#define TDM_CONFIG_KEY_GENERAL_HWC_COMMIT_USE_GLOBAL_FPS "general:hwc_commit_use_global_fps"
/*** debug keys **************************************************************/
static struct list_head create_handler_list;
static unsigned int vblank_list_inited;
static unsigned int vblank_global_fps;
+static unsigned int hwc_commit_use_global_fps;
static double stamp = 0;
static void _tdm_vblank_cb_vblank_SW(tdm_private_display *private_display, void *object, tdm_thread_cb_base *cb_base, void *user_data);
v->check_HW_or_SW = 1;
}
+
+ if (hwc_commit_use_global_fps) {
+ if (enable)
+ tdm_hwc_set_vblank(fps);
+ else
+ tdm_hwc_unset_vblank();
+ }
+
pthread_mutex_unlock(&valid_list_lock);
return TDM_ERROR_NONE;
tdm_thread_cb_set_find_func(TDM_THREAD_CB_VBLANK_SW, _tdm_vblank_find_object);
tdm_thread_cb_set_find_func(TDM_THREAD_CB_VBLANK_CREATE, _tdm_vblank_find_display);
+ hwc_commit_use_global_fps = tdm_config_get_int(TDM_CONFIG_KEY_GENERAL_HWC_COMMIT_USE_GLOBAL_FPS, 0);
+
vblank_list_inited = 1;
return TDM_ERROR_NONE;