Commit 7a0078775fb8681c4e12e434e8a4aba15e467e42
1 parent
6c6c6d774a
Exists in
smarc_8mm_imx_4.14.98_2.0.0_ga
and in
4 other branches
MLK-21380 video: fbdev: mxsfb: fix resume timing for overlay fb
The overlay fb can only be enabled when the LCDIF is not in running, otherwise overlay display may look like image shift. So during the system resume procedure, the overlay fb should be resumed before mxsfb unblank. Signed-off-by: Fancy Fang <chen.fang@nxp.com> (cherry picked from commit f39662a3a38a2da082d55a006e634766cc85e347)
Showing 1 changed file with 5 additions and 2 deletions Side-by-side Diff
drivers/video/fbdev/mxsfb.c
... | ... | @@ -4,7 +4,7 @@ |
4 | 4 | * This code is based on: |
5 | 5 | * Author: Vitaly Wool <vital@embeddedalley.com> |
6 | 6 | * |
7 | - * Copyright 2017 NXP | |
7 | + * Copyright 2017-2019 NXP | |
8 | 8 | * Copyright 2008-2015 Freescale Semiconductor, Inc. All Rights Reserved. |
9 | 9 | * Copyright 2008 Embedded Alley Solutions, Inc All Rights Reserved. |
10 | 10 | * |
... | ... | @@ -2149,6 +2149,9 @@ |
2149 | 2149 | clk_enable_disp_axi(fbi); |
2150 | 2150 | } |
2151 | 2151 | |
2152 | + /* Pull LCDIF out of reset */ | |
2153 | + writel(0xc0000000, fbi->base + LCDC_CTRL + REG_CLR); | |
2154 | + | |
2152 | 2155 | writel(saved_as_ctrl, fbi->base + LCDC_AS_CTRL); |
2153 | 2156 | writel(saved_as_next_buf, fbi->base + LCDC_AS_NEXT_BUF); |
2154 | 2157 | |
2155 | 2158 | |
... | ... | @@ -2462,9 +2465,9 @@ |
2462 | 2465 | pinctrl_pm_select_default_state(pdev); |
2463 | 2466 | |
2464 | 2467 | console_lock(); |
2468 | + mxsfb_overlay_resume(host); | |
2465 | 2469 | mxsfb_blank(host->restore_blank, fb_info); |
2466 | 2470 | fb_set_suspend(fb_info, 0); |
2467 | - mxsfb_overlay_resume(host); | |
2468 | 2471 | console_unlock(); |
2469 | 2472 | |
2470 | 2473 | return 0; |