ret = clock_gettime(CLOCK_MONOTONIC, &timeout);
if (ret < 0)
{
- TDM_ERR("clock_gettime failed: %s", strerror(errno));
- goto out;
+ TDM_ERR("clock_gettime failed: %s", strerror(errno));
+ goto out;
}
timeout.tv_sec++;
vbl->request.type &= ~DRM_VBLANK_RELATIVE;
if (ret && errno == EINTR)
{
- clock_gettime(CLOCK_MONOTONIC, &cur);
- /* Timeout after 1s */
- if (cur.tv_sec > timeout.tv_sec + 1 ||
- (cur.tv_sec == timeout.tv_sec && cur.tv_nsec >=
- timeout.tv_nsec))
+ clock_gettime(CLOCK_MONOTONIC, &cur);
+ /* Timeout after 1s */
+ if (cur.tv_sec > timeout.tv_sec + 1 ||
+ (cur.tv_sec == timeout.tv_sec && cur.tv_nsec >=
+ timeout.tv_nsec))
{
- errno = EBUSY;
- ret = -1;
- break;
- }
+ errno = EBUSY;
+ ret = -1;
+ break;
+ }
}
} while (ret && errno == EINTR);
_tdm_sprd_display_output_enable(tdm_sprd_output_data *output_data)
{
TDM_DBG ("FB_BLANK_UNBLANK\n");
+ tdm_sprd_layer_data *layer_data = NULL;
+ LIST_FOR_EACH_ENTRY(layer_data, &output_data->layer_list, link)
+ {
+ memset(&layer_data->ovi, 0, sizeof(overlay_info));
+ }
if (ioctl (output_data->fb_fd, FBIOBLANK, FB_BLANK_UNBLANK) < 0)
{
TDM_ERR ("FB_BLANK_UNBLANK is failed: %s\n", strerror (errno));
int layer_index = 0;
RETURN_VAL_IF_FAIL(output_data, TDM_ERROR_OPERATION_FAILED);
-
- if (output_data->dpms_value == TDM_OUTPUT_DPMS_OFF)
+#if 0
+ if (output_data->dpms_value != TDM_OUTPUT_DPMS_ON)
{
output_data->dpms_value = TDM_OUTPUT_DPMS_ON;
_tdm_sprd_display_output_enable(output_data);
}
-
+#endif
LIST_FOR_EACH_ENTRY(layer_data, &output_data->layer_list, link)
{
if(!layer_data->display_buffer_changed && !layer_data->info_changed)
output_data->dpms_value = dpms_value;
- if (dpms_value == TDM_OUTPUT_DPMS_OFF)
+ if (dpms_value != TDM_OUTPUT_DPMS_ON)
{
ret = _tdm_sprd_display_output_disable(output_data);
}