_pthread_mutex_unlock(&private_display->lock);
LIST_FOR_EACH_ENTRY_SAFE(v, vv, &clone_list, link) {
+ if (tdm_debug_module & TDM_DEBUG_COMMIT)
+ TDM_INFO("output(%d) got vblank: handler(%p)", private_output->pipe, v);
+
if (v->func)
v->func(v->private_output, sequence, tv_sec, tv_usec, v->user_data);
LIST_DEL(&v->link);
return TDM_ERROR_OUT_OF_MEMORY;
}
+ if (tdm_debug_module & TDM_DEBUG_COMMIT)
+ TDM_INFO("output(%d) wait_vblank: handler(%p)", private_output->pipe, vblank_handler);
+
LIST_FOR_EACH_ENTRY(v, &private_output->vblank_handler_list, link) {
if (v->interval == interval && v->sync == sync && v->owner_tid == tid) {
skip_request = 1;
ret = func_output->output_wait_vblank(private_output->output_backend, interval,
sync, vblank_handler);
TDM_GOTO_IF_FAIL(ret == TDM_ERROR_NONE, wait_failed);
+
+ if (tdm_debug_module & TDM_DEBUG_COMMIT)
+ TDM_INFO("output(%d) backend wait_vblank", private_output->pipe);
}
return ret;
}
LIST_FOR_EACH_ENTRY_SAFE(lm, lmm, &clone_list, link) {
+ if (tdm_debug_module & TDM_DEBUG_COMMIT)
+ TDM_INFO("layer(%p) committed. handle(%p)", lm->private_layer, (lm)?:NULL);
+
_tdm_layer_committed(lm->private_layer);
_pthread_mutex_unlock(&private_display->lock);
if (lm->func)
private_layer = layer_commit_handler->private_layer;
if (tdm_debug_module & TDM_DEBUG_COMMIT)
- TDM_INFO("layer(%p) commit: output(%d) committed", private_layer, private_output->pipe);
+ TDM_INFO("layer(%p) commit: output(%d) committed. handle(%p)",
+ private_layer, private_output->pipe, (layer_commit_handler)?:NULL);
_pthread_mutex_lock(&private_display->lock);
tdm_private_layer_commit_handler *layer_commit_handler;
LAYER_FUNC_ENTRY();
- if (private_layer->committing)
- TDM_WRN("layer(%d) too many commit", private_layer->index);
- else
- private_layer->committing = 1;
-
layer_commit_handler = calloc(1, sizeof(tdm_private_layer_commit_handler));
if (!layer_commit_handler) {
TDM_ERR("failed: alloc memory");
return TDM_ERROR_OUT_OF_MEMORY;
}
+ if (tdm_debug_module & TDM_DEBUG_COMMIT)
+ TDM_INFO("layer(%p) commit: handle(%p)", private_layer, layer_commit_handler);
+
LIST_INITHEAD(&layer_commit_handler->link);
layer_commit_handler->private_layer = private_layer;
layer_commit_handler->func = func;
} else {
TDM_GOTO_IF_FAIL(private_display->commit_type == TDM_COMMIT_TYPE_LAYER, commit_failed);
+ if (private_layer->committing)
+ TDM_WRN("layer(%d) too many commit", private_layer->index);
+ else
+ private_layer->committing = 1;
+
if (_tdm_layer_commit_possible(private_layer)) {
/* add to layer_commit_handler_list */
LIST_ADD(&layer_commit_handler->link, &private_output->layer_commit_handler_list);
return TDM_ERROR_DPMS_OFF;
}
- if (tdm_debug_module & TDM_DEBUG_COMMIT)
- TDM_INFO("layer(%p) commit", private_layer);
-
ret = _tdm_layer_commit(private_layer, func, user_data);
_pthread_mutex_unlock(&private_display->lock);