diff options
author | Midas Chien <midaschieh@google.com> | 2024-01-15 08:45:46 +0000 |
---|---|---|
committer | Midas Chien <midaschieh@google.com> | 2024-01-15 08:45:46 +0000 |
commit | 498e7f9827e69e539e1cc94ff162264dc6f776ec (patch) | |
tree | 13eead4e94abd6201c9823fb614e586fe2fefefa | |
parent | 391228726184fb8eea50f71cc1cf86e66428b990 (diff) | |
download | felix-498e7f9827e69e539e1cc94ff162264dc6f776ec.tar.gz |
panel: ana6707: support wake up during notify state change
When transitioning to hibernation in AOD, a panel mode state update is
triggered. However, timely updates might be compromised if user space
processes are frozen during notification. Implement a mechanism to
awaken the system during notifications if we need to guarantee timely
update.
Bug: 311495944
Test: check refresh rate indicator is correct
Change-Id: I73426d67767a8f91d0f65608ecb9e05984c53c46
Signed-off-by: Midas Chien <midaschieh@google.com>
-rw-r--r-- | display/panel-samsung-ana6707-f10.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/display/panel-samsung-ana6707-f10.c b/display/panel-samsung-ana6707-f10.c index 2dc7fc2..5150c19 100644 --- a/display/panel-samsung-ana6707-f10.c +++ b/display/panel-samsung-ana6707-f10.c @@ -914,7 +914,7 @@ static bool ana6707_f10_set_self_refresh(struct exynos_panel *ctx, bool enable) if (pmode->exynos_mode.is_lp_mode) { /* set 1Hz while self refresh is active, otherwise clear it */ ctx->panel_idle_vrefresh = enable ? 1 : 0; - notify_panel_mode_changed(ctx); + notify_panel_mode_changed(ctx, true); return false; } @@ -940,7 +940,7 @@ static bool ana6707_f10_set_self_refresh(struct exynos_panel *ctx, bool enable) } ctx->panel_idle_vrefresh = ctx->self_refresh_active ? spanel->hw_idle_vrefresh : 0; - notify_panel_mode_changed(ctx); + notify_panel_mode_changed(ctx, false); return false; } @@ -1011,7 +1011,7 @@ static bool ana6707_f10_set_self_refresh(struct exynos_panel *ctx, bool enable) } EXYNOS_DCS_WRITE_TABLE(ctx, lock_cmd_f0); - notify_panel_mode_changed(ctx); + notify_panel_mode_changed(ctx, false); DPU_ATRACE_END(__func__); |