weston: fix direct display issue [1/1]
PD#SWPL-184181
Problem:
red screen is displayed after the HDMI is inserted or removed
Solution:
when output changed, resend modifier to GPU
Verify:
s7d
Change-Id: I480adb08e1f3b82021d49fe8fe17f2cfba347a8c
Signed-off-by: leng.fang <leng.fang@amlogic.com>
diff --git a/aml-weston/aml-backend.c b/aml-weston/aml-backend.c
index 4d8f8c9..7816ad7 100644
--- a/aml-weston/aml-backend.c
+++ b/aml-weston/aml-backend.c
@@ -1111,7 +1111,9 @@
if (output->base.repaint_status == REPAINT_NOT_SCHEDULED) {
output->base.repaint_status = REPAINT_AWAITING_COMPLETION;
output->base.start_repaint_loop(&output->base);
- }
+ } else if (output->base.repaint_status == REPAINT_AWAITING_COMPLETION)
+ weston_output_finish_frame(&output->base, NULL,
+ WP_PRESENTATION_FEEDBACK_INVALID);
}
}
} else if (enable == 0) {
diff --git a/aml-weston/aml-drm-config.c b/aml-weston/aml-drm-config.c
index de09715..78574d9 100644
--- a/aml-weston/aml-drm-config.c
+++ b/aml-weston/aml-drm-config.c
@@ -71,10 +71,7 @@
weston_log("\n %s %d video plane, continue\n",__FUNCTION__,__LINE__);
continue;
}
- if (plane->state_cur && plane->state_cur->fb) {
- weston_log("\n %s %d cur plane :%d is used, continue\n",__FUNCTION__,__LINE__, plane->plane_id);
- continue;
- }
+
struct weston_drm_format *fmt;
const uint64_t *modifiers;
unsigned int num_modifiers;