tdm_exynos_hwc_window_data *hw = NULL;
LIST_FOR_EACH_ENTRY(hw, hwc_wnds, link) {
- if (hw->client_type == TDM_COMPOSITION_NONE)
- continue;
+ /* do not skip hwc_wnds with NONE composition type
+ * 'cause it may lead to dead lock state (we won't be
+ * able to exit from 'device to client transition' state);
+ *
+ * sometimes e20's wm marks ec as an invisible before it's
+ * been composited to the target buffer, so to face with
+ * such situation we don't skip NONE hwcs */
if (hw->is_device_to_client_transition)
goto work;
return 0;
work:
+
+ /* as we reset ALL hwc_wnds to CLIENT when we encountered with a need to
+ * make the smooth transition we have to wait till ALL they being composited
+ * (being presented on the target window) */
LIST_FOR_EACH_ENTRY(hw, hwc_wnds, link) {
if (hw->client_type == TDM_COMPOSITION_NONE)
continue;