LIST_FOR_EACH_ENTRY(hw, hwc_wnds, link) {
- if (hw->flags & TDM_HWC_WINDOW_FLAG_SKIP)
+ if (hw->client_type == TDM_COMPOSITION_NONE)
continue;
if (hw->validated_type == TDM_COMPOSITION_CLIENT_CANDIDATE)
/* set hwc windows */
LIST_FOR_EACH_ENTRY_REV(hw, &output_data->hwc_window_list, link) {
- if (hw->flags & TDM_HWC_WINDOW_FLAG_SKIP)
+ if (hw->client_type == TDM_COMPOSITION_NONE)
continue;
if (hw->client_type != TDM_COMPOSITION_DEVICE && hw->client_type != TDM_COMPOSITION_VIDEO)
continue;
RETURN_VAL_IF_FAIL(sprd_output, TDM_ERROR_INVALID_PARAMETER);
LIST_FOR_EACH_ENTRY(hw, &sprd_output->hwc_window_list, link) {
- if (hw->flags & TDM_HWC_WINDOW_FLAG_SKIP)
+ if (hw->client_type == TDM_COMPOSITION_NONE)
continue;
if (hw->client_type != hw->validated_type)
sprd_hwc_window->output_data = output;
sprd_hwc_window->zpos = 0;
- sprd_hwc_window->prev_validated_type = TDM_COMPOSITION_CLIENT;
+ sprd_hwc_window->prev_validated_type = TDM_COMPOSITION_NONE;
if (info)
memcpy(&sprd_hwc_window->info, info, sizeof(tdm_hwc_window_info));
return "CURSOR";
else if (composition_type == TDM_COMPOSITION_VIDEO)
return "VIDEO";
+ else if (composition_type == TDM_COMPOSITION_NONE)
+ return "NONE";
return "unknown";
}
RETURN_VAL_IF_FAIL(sprd_output, 0);
LIST_FOR_EACH_ENTRY(window, &sprd_output->hwc_window_list, link) {
- if (window->flags & TDM_HWC_WINDOW_FLAG_SKIP)
+ if (window->client_type == TDM_COMPOSITION_NONE)
continue;
number++;
RETURN_VOID_IF_FAIL(hwc_wnds);
LIST_FOR_EACH_ENTRY(hw, hwc_wnds, link) {
- if (hw->flags & TDM_HWC_WINDOW_FLAG_SKIP) {
- hw->prev_validated_type = TDM_COMPOSITION_CLIENT;
- continue;
- }
-
hw->prev_validated_type = hw->validated_type;
}
}
LIST_FOR_EACH_ENTRY(hw, hwc_wnds, link) {
- if (hw->flags & TDM_HWC_WINDOW_FLAG_SKIP)
+ if (hw->client_type == TDM_COMPOSITION_NONE)
continue;
if (hw->prev_validated_type == TDM_COMPOSITION_DEVICE_CANDIDATE)
LIST_FOR_EACH_ENTRY(hw, hwc_wnds, link) {
- if (hw->flags & TDM_HWC_WINDOW_FLAG_SKIP)
+ if (hw->client_type == TDM_COMPOSITION_NONE)
continue;
/* client_type is kept, as a TDM_COMPOSITION_CLIENT_CANDIDATE, by the client(e20)
is_client_detected = 0;
/* check client_type */
LIST_FOR_EACH_ENTRY(hw, &sprd_output->hwc_window_list, link) {
- if (hw->flags & TDM_HWC_WINDOW_FLAG_SKIP)
+ if (hw->client_type == TDM_COMPOSITION_NONE)
continue;
if ((hw->client_type == TDM_COMPOSITION_DEVICE || hw->client_type == TDM_COMPOSITION_VIDEO)
is_client_detected = 0;
/* check format and flags for DEVICE_CANDIDATE */
LIST_FOR_EACH_ENTRY(hw, &sprd_output->hwc_window_list, link) {
- if (hw->flags & TDM_HWC_WINDOW_FLAG_SKIP)
+ if (hw->client_type == TDM_COMPOSITION_NONE)
continue;
if (hw->validated_type == TDM_COMPOSITION_DEVICE_CANDIDATE) {
_update_windows_previous_type(&sprd_output->hwc_window_list);
LIST_FOR_EACH_ENTRY(hw, &sprd_output->hwc_window_list, link) {
- if (hw->flags & TDM_HWC_WINDOW_FLAG_SKIP)
+ if (hw->client_type == TDM_COMPOSITION_NONE)
continue;
TDM_DBG(" window(%p) type: %s -> %s", hw,
tdm_sprd_hwc_window_data *hw = NULL;
LIST_FOR_EACH_ENTRY_REV(hw, &sprd_output->hwc_window_list, link) {
- if (hw->flags & TDM_HWC_WINDOW_FLAG_SKIP)
+ if (hw->client_type == TDM_COMPOSITION_NONE)
continue;
if (num >= *num_elements)
tdm_sprd_hwc_window_data *hw = NULL;
LIST_FOR_EACH_ENTRY_REV(hw, &sprd_output->hwc_window_list, link) {
- if (hw->flags & TDM_HWC_WINDOW_FLAG_SKIP)
+ if (hw->client_type == TDM_COMPOSITION_NONE)
continue;
hw->client_type = hw->validated_type;
return TDM_ERROR_NONE;
sprd_hwc_window->client_type = comp_type;
+ if (comp_type == TDM_COMPOSITION_NONE)
+ sprd_hwc_window->validated_type = comp_type;
sprd_output->need_validate = 1;
return TDM_ERROR_NONE;