From be5470b608a80266aa464e707918f0e23ea1cafb Mon Sep 17 00:00:00 2001 From: SooChan Lim Date: Fri, 2 Feb 2018 19:54:44 +0900 Subject: [PATCH] hwc: follow the new hwc apis modify the apis to prevent the build break due to the tdm api changes Change-Id: I6c56a1c81abb5233f5f7dce447dfad3fd2c37076 --- src/tdm_sprd.c | 1 - src/tdm_sprd.h | 8 +++---- src/tdm_sprd_display.c | 61 ++++---------------------------------------------- 3 files changed, 7 insertions(+), 63 deletions(-) diff --git a/src/tdm_sprd.c b/src/tdm_sprd.c index 3c1f4dd..68d58a6 100755 --- a/src/tdm_sprd.c +++ b/src/tdm_sprd.c @@ -192,7 +192,6 @@ tdm_sprd_init(tdm_display *dpy, tdm_error *error) sprd_func_hwc_window.hwc_window_set_composition_type = sprd_hwc_window_set_composition_type; sprd_func_hwc_window.hwc_window_set_info = sprd_hwc_window_set_info; sprd_func_hwc_window.hwc_window_set_buffer_damage = sprd_hwc_window_set_buffer_damage; - sprd_func_hwc_window.hwc_window_set_zpos = sprd_hwc_window_set_zpos; sprd_func_hwc_window.hwc_window_set_flags = sprd_hwc_window_set_flags; sprd_func_hwc_window.hwc_window_unset_flags = sprd_hwc_window_unset_flags; sprd_func_hwc_window.hwc_window_video_get_capability = sprd_hwc_window_video_get_capability; diff --git a/src/tdm_sprd.h b/src/tdm_sprd.h index 0937735..30432e0 100644 --- a/src/tdm_sprd.h +++ b/src/tdm_sprd.h @@ -42,15 +42,14 @@ tdm_error sprd_output_set_mode(tdm_output *output, const tdm_output_mode *mod tdm_error sprd_output_get_mode(tdm_output *output, const tdm_output_mode **mode); tdm_hwc_window * sprd_output_hwc_window_create(tdm_output *output, tdm_error *error); tdm_error sprd_output_hwc_window_destroy(tdm_output *output, tdm_hwc_window *hwc_window); -tdm_error sprd_output_hwc_validate(tdm_output *output, uint32_t *num_types); +tdm_error sprd_output_hwc_validate(tdm_output *output, tdm_hwc_window **composited_wnds, + uint32_t num_wnds, uint32_t *num_types); tdm_error sprd_output_hwc_get_changed_composition_types(tdm_output *output, uint32_t *num_elements, tdm_hwc_window **hwc_window, tdm_hwc_window_composition *composition_types); tdm_error sprd_output_hwc_accept_changes(tdm_output *output); tbm_surface_queue_h sprd_output_hwc_get_target_buffer_queue(tdm_output *output, tdm_error *error); -tdm_error sprd_output_hwc_set_client_target_buffer(tdm_output *output, tbm_surface_h buffer, - tdm_hwc_region damage, tdm_hwc_window **composited_wnds, - uint32_t num_wnds); +tdm_error sprd_output_hwc_set_client_target_buffer(tdm_output *output, tbm_surface_h buffer, tdm_hwc_region damage); tdm_error sprd_output_hwc_get_video_supported_formats(tdm_output *output, const tbm_format **formats, int *count); tdm_hwc_window *sprd_output_hwc_create_video_window(tdm_output *output, tdm_error *error); @@ -66,7 +65,6 @@ tdm_error sprd_layer_get_buffer_flags(tdm_layer *layer, unsigned int *flags); tdm_error sprd_hwc_window_video_get_capability(tdm_hwc_window *hwc_window, tdm_hwc_window_video_capability *video_capability); tbm_surface_queue_h sprd_hwc_window_get_tbm_buffer_queue(tdm_hwc_window *hwc_window, tdm_error *error); -tdm_error sprd_hwc_window_set_zpos(tdm_hwc_window *hwc_window, int32_t zpos); tdm_error sprd_hwc_window_set_composition_type(tdm_hwc_window *hwc_window, tdm_hwc_window_composition composition_type); tdm_error sprd_hwc_window_set_buffer_damage(tdm_hwc_window *hwc_window, tdm_hwc_region damage); diff --git a/src/tdm_sprd_display.c b/src/tdm_sprd_display.c index 2ecf66f..3705f6e 100644 --- a/src/tdm_sprd_display.c +++ b/src/tdm_sprd_display.c @@ -136,8 +136,6 @@ struct _tdm_sprd_hwc_window_data { tdm_sprd_output_data *output_data; /* not fixed data below */ - int zpos; - tdm_hwc_window_info info; int info_changed; @@ -1783,28 +1781,6 @@ _sprd_hwc_window_is_reserved_buffer(tdm_sprd_hwc_window_data *hwc_window_data) { } #endif -tdm_error -_sprd_output_insert_hwc_window(tdm_sprd_output_data *output, tdm_sprd_hwc_window_data *hwc_window_data) -{ - tdm_sprd_hwc_window_data *item = NULL; - - RETURN_VAL_IF_FAIL(output, TDM_ERROR_INVALID_PARAMETER); - RETURN_VAL_IF_FAIL(hwc_window_data, TDM_ERROR_INVALID_PARAMETER); - - LIST_FOR_EACH_ENTRY_REV(item, &output->hwc_window_list, link) { - - if (item == hwc_window_data) - return TDM_ERROR_OPERATION_FAILED; - - if (item->zpos <= hwc_window_data->zpos) - break; - } - - LIST_INSERT_AFTER(&item->link, &hwc_window_data->link); - - return TDM_ERROR_NONE; -} - int _sprd_output_get_changed_number(tdm_sprd_output_data *output_data) { @@ -1855,7 +1831,6 @@ _sprd_output_hwc_window_create(tdm_output *output, tdm_hwc_window_info *info, td } hwc_window_data->output_data = output; - hwc_window_data->zpos = 0; if (info) memcpy(&hwc_window_data->info, info, sizeof(tdm_hwc_window_info)); @@ -1880,7 +1855,7 @@ sprd_output_hwc_window_create(tdm_output *output, tdm_error *error) hwc_window_data = _sprd_output_hwc_window_create(output_data, NULL, error); RETURN_VAL_IF_FAIL(hwc_window_data, NULL); - _sprd_output_insert_hwc_window(output_data, hwc_window_data); + LIST_ADDTAIL(&hwc_window_data->link, &output_data->hwc_window_list); TDM_DBG("hwc_window(%p) create", hwc_window_data); if (error) @@ -1922,7 +1897,8 @@ _comp_to_str(tdm_hwc_window_composition composition_type) } tdm_error -sprd_output_hwc_validate(tdm_output *output, uint32_t *num_types) +sprd_output_hwc_validate(tdm_output *output, tdm_hwc_window **composited_wnds, + uint32_t num_wnds, uint32_t *num_types) { tdm_sprd_output_data *output_data = output; tdm_sprd_data *sprd_data = NULL; @@ -2059,9 +2035,7 @@ sprd_output_hwc_get_target_buffer_queue(tdm_output *output, tdm_error *error) } tdm_error -sprd_output_hwc_set_client_target_buffer(tdm_output *output, tbm_surface_h buffer, - tdm_hwc_region damage, tdm_hwc_window **composited_wnds, - uint32_t num_wnds) +sprd_output_hwc_set_client_target_buffer(tdm_output *output, tbm_surface_h buffer, tdm_hwc_region damage) { tdm_sprd_output_data *output_data = output; tdm_error err; @@ -2158,33 +2132,6 @@ sprd_hwc_window_get_tbm_buffer_queue(tdm_hwc_window *hwc_window, tdm_error *erro } tdm_error -sprd_hwc_window_set_zpos(tdm_hwc_window *hwc_window, int32_t zpos) -{ - tdm_sprd_hwc_window_data *hwc_window_data = hwc_window; - tdm_sprd_output_data *output_data; - - RETURN_VAL_IF_FAIL(hwc_window_data != NULL, TDM_ERROR_INVALID_PARAMETER); - RETURN_VAL_IF_FAIL(zpos < 256, TDM_ERROR_INVALID_PARAMETER); - - output_data = hwc_window_data->output_data; - RETURN_VAL_IF_FAIL(output_data != NULL, TDM_ERROR_INVALID_PARAMETER); - - if (hwc_window_data->zpos == zpos) - return TDM_ERROR_NONE; - - LIST_DEL(&hwc_window_data->link); - - hwc_window_data->zpos = zpos; - - _sprd_output_insert_hwc_window(output_data, hwc_window_data); - - output_data->need_validate = 1; - - return TDM_ERROR_NONE; - -} - -tdm_error sprd_hwc_window_set_composition_type(tdm_hwc_window *hwc_window, tdm_hwc_window_composition comp_type) { -- 2.7.4