}
static Eina_Bool
-_e_hwc_windows_target_window_buffer_skip(E_Hwc *hwc, Eina_Bool tdm_set)
+_e_hwc_windows_target_window_buffer_skip(E_Hwc *hwc)
{
E_Hwc_Window_Target *target_hwc_window;
E_Hwc_Window *hwc_window = NULL;
}
e_hwc_window_buffer_set(&hwc_window->buffer, hwc_window->display.buffer.tsurface, hwc_window->display.buffer.queue);
- if (tdm_set)
- tdm_hwc_set_client_target_buffer(thwc, hwc_window->display.buffer.tsurface, fb_damage);
+ tdm_hwc_set_client_target_buffer(thwc, hwc_window->display.buffer.tsurface, fb_damage);
_e_hwc_windows_target_window_force_render(target_hwc_window);
}
* Returing EINA_FALSE means that there is no update for the target_window->tsurface.
**/
static Eina_Bool
-_e_hwc_windows_target_buffer_fetch(E_Hwc *hwc, Eina_Bool tdm_set)
+_e_hwc_windows_target_buffer_fetch(E_Hwc *hwc)
{
E_Hwc_Window_Target *target_hwc_window;
E_Hwc_Window *hwc_window, *hw;
/* the damage isn't supported by hwc extension yet */
CLEAR(fb_damage);
- /* If pp_set is true, tdm_hwc_set_client_target_buffer is done with the result buffer of the pp */
- if (tdm_set)
- tdm_hwc_set_client_target_buffer(thwc, hwc_window->buffer.tsurface, fb_damage);
+ tdm_hwc_set_client_target_buffer(thwc, hwc_window->buffer.tsurface, fb_damage);
if ((target_hwc_window->end_render_sync) && (e_hwc_windows_fence_enabled_get(hwc)))
{
}
static Eina_Bool
-_e_hwc_windows_accept(E_Hwc *hwc, Eina_Bool tdm_set)
+_e_hwc_windows_accept(E_Hwc *hwc)
{
E_Hwc_Window *hwc_window;
E_Hwc_Window_State state;
const Eina_List *l;
/* accept changes */
- if (tdm_set)
+ terror = tdm_hwc_accept_validation(hwc->thwc);
+ if (terror != TDM_ERROR_NONE)
{
- terror = tdm_hwc_accept_validation(hwc->thwc);
- if (terror != TDM_ERROR_NONE)
- {
- EHWSERR("failed to accept validation.", hwc);
- return EINA_FALSE;
- }
+ EHWSERR("failed to accept validation.", hwc);
+ return EINA_FALSE;
}
EINA_LIST_FOREACH(hwc->hwc_windows, l, hwc_window)
if (_e_hwc_windows_device_state_available_update(hwc))
update_changes = EINA_TRUE;
- /* if pp set enabled, buffer set to tdm after pp done */
- if (hwc->pp_set)
- {
- /* fetch the target buffer (try acquire) */
- if (_e_hwc_windows_target_buffer_fetch(hwc, EINA_FALSE))
- update_changes = EINA_TRUE;
-
- /* if pp set, need update once */
- if (hwc->pp_set_info)
- update_changes = EINA_TRUE;
- }
- else
- {
- /* fetch the target buffer (try acquire) */
- if (_e_hwc_windows_target_buffer_fetch(hwc, EINA_TRUE))
- update_changes = EINA_TRUE;
-
- if (hwc->pp_unset)
- update_changes = EINA_TRUE;
- }
+ /* fetch the target buffer (try acquire) */
+ if (_e_hwc_windows_target_buffer_fetch(hwc))
+ update_changes = EINA_TRUE;
EINA_LIST_FOREACH(hwc->hwc_windows, l, hwc_window)
{
const Eina_List *l;
uint32_t num_changes;
int num_client = 0, num_device = 0, num_video = 0, num_cursor = 0;
- Eina_Bool ret = EINA_FALSE;
/* validate the visible hwc_windows' states*/
if (!_e_hwc_windows_validate(hwc, &num_changes))
if (hwc_mode != E_HWC_MODE_FULL && _e_hwc_windows_transition_check(hwc))
{
/* if pp set enabled, buffer set to tdm after pp done */
- if (hwc->pp_set)
- _e_hwc_windows_target_window_buffer_skip(hwc, EINA_FALSE);
- else
- _e_hwc_windows_target_window_buffer_skip(hwc, EINA_TRUE);
+ _e_hwc_windows_target_window_buffer_skip(hwc);
if (!hwc->transition)
{
if (hwc_mode == E_HWC_MODE_FULL)
{
if (((E_Hwc_Window *)hwc->target_hwc_window)->buffer.tsurface)
- _e_hwc_windows_target_buffer_fetch(hwc, !hwc->pp_set);
+ _e_hwc_windows_target_buffer_fetch(hwc);
}
/* accept the result of the validation */
- if (hwc->pp_set)
- ret = _e_hwc_windows_accept(hwc, EINA_FALSE);
- else
- ret = _e_hwc_windows_accept(hwc, EINA_TRUE);
- if (!ret)
+ if (!_e_hwc_windows_accept(hwc))
{
EHWSERR("_e_hwc_windows_validated_changes_update failed.", hwc);
goto re_evaluate;
e_hwc_window_queue_buffer_enqueue(queue, queue_buffer);
/* fetch the buffer */
- _e_hwc_windows_target_buffer_fetch(hwc, EINA_TRUE);
+ _e_hwc_windows_target_buffer_fetch(hwc);
hwc->mirror_src_tsurface = src_target_tsurface;
e_hwc_window_queue_buffer_enqueue(queue, queue_buffer);
/* fetch the buffer */
- _e_hwc_windows_target_buffer_fetch(hwc, EINA_TRUE);
+ _e_hwc_windows_target_buffer_fetch(hwc);
return EINA_TRUE;
}
EHWSTRACE("!!!!!!!! HWC Ext PP Output Commit !!!!!!!!", NULL, hwc);
- if (!_e_hwc_windows_target_buffer_fetch(hwc, EINA_TRUE))
+ if (!_e_hwc_windows_target_buffer_fetch(hwc))
return EINA_FALSE;
if (!_e_hwc_windows_evaluate(hwc))