if (!found)
return;
+ LIST_DEL(&layer_commit_handler->link);
+
private_layer = layer_commit_handler->private_layer;
if (tdm_debug_module & TDM_DEBUG_COMMIT)
_pthread_mutex_lock(&private_display->lock);
}
- LIST_DEL(&layer_commit_handler->link);
free(layer_commit_handler);
_pthread_mutex_unlock(&private_display->lock);
_tdm_layer_commit_possible(tdm_private_layer *private_layer)
{
tdm_private_output *private_output = private_layer->private_output;
- tdm_private_display *private_display = private_output->private_display;
- TDM_RETURN_VAL_IF_FAIL(private_display->commit_per_vblank > 0, 1);
+ TDM_RETURN_VAL_IF_FAIL(private_output->commit_per_vblank > 0, 1);
/* There is a previous commit request which is not done and displayed on screen yet.
* We can't commit at this time.
return 0;
}
- if (private_display->commit_per_vblank == 1 && _tdm_lauer_get_output_used_layer_count(private_output) > 1) {
+ if (private_output->commit_per_vblank == 1 && _tdm_lauer_get_output_used_layer_count(private_output) > 1) {
if (tdm_debug_module & TDM_DEBUG_COMMIT)
TDM_INFO("layer(%p) commit: not possible(more than 2 layers)", private_layer);
return 0;
private_layer, private_layer->waiting_buffer,
(layer_commit_handler->committed_buffer) ? layer_commit_handler->committed_buffer->buffer : NULL);
- if (!private_display->commit_per_vblank) {
- TDM_GOTO_IF_FAIL(private_display->commit_type == TDM_COMMIT_TYPE_OUTPUT, commit_failed);
+ if (!private_output->commit_per_vblank) {
+ TDM_GOTO_IF_FAIL(private_output->commit_type == TDM_COMMIT_TYPE_OUTPUT, commit_failed);
LIST_ADDTAIL(&layer_commit_handler->link, &private_output->layer_commit_handler_list);
ret = tdm_output_commit_internal(private_layer->private_output, 0, _tdm_layer_cb_output_commit, layer_commit_handler);
if (tdm_debug_module & TDM_DEBUG_COMMIT)
TDM_INFO("layer(%p) commit: no commit-per-vblank", private_layer);
} else {
- TDM_GOTO_IF_FAIL(private_display->commit_type == TDM_COMMIT_TYPE_LAYER, commit_failed);
+ TDM_GOTO_IF_FAIL(private_output->commit_type == TDM_COMMIT_TYPE_LAYER, commit_failed);
if (private_layer->committing)
TDM_WRN("layer(%d) too many commit", private_layer->index);
_pthread_mutex_lock(&private_display->lock);
- if (private_display->commit_type == TDM_COMMIT_TYPE_NONE) {
- if (!private_display->commit_per_vblank)
- private_display->commit_type = TDM_COMMIT_TYPE_OUTPUT;
+ if (private_output->commit_type == TDM_COMMIT_TYPE_NONE) {
+ if (!private_output->commit_per_vblank)
+ private_output->commit_type = TDM_COMMIT_TYPE_OUTPUT;
else
- private_display->commit_type = TDM_COMMIT_TYPE_LAYER;
+ private_output->commit_type = TDM_COMMIT_TYPE_LAYER;
}
if (private_output->current_dpms_value > TDM_OUTPUT_DPMS_ON) {
TDM_INFO("layer(%p) waiting_buffer(%p)",
private_layer, private_layer->waiting_buffer->buffer);
- if (private_display->commit_type == TDM_COMMIT_TYPE_OUTPUT) {
+ if (private_output->commit_type == TDM_COMMIT_TYPE_OUTPUT) {
ret = tdm_output_commit_internal(private_layer->private_output, 0, NULL, NULL);
if (ret != TDM_ERROR_NONE)
TDM_ERR("tdm_output_commit_internal() is fail");
- } else if (private_display->commit_type == TDM_COMMIT_TYPE_LAYER) {
+ } else if (private_output->commit_type == TDM_COMMIT_TYPE_LAYER) {
ret = _tdm_layer_commit(private_layer, NULL, NULL);
if (ret != TDM_ERROR_NONE)
TDM_ERR("layer(%p) _tdm_layer_commit() is fail", private_layer);