From ea077662dad16d7493a2f1842119de8aea3f5c4e Mon Sep 17 00:00:00 2001 From: Huang Jiachai Date: Wed, 13 Jul 2016 15:58:54 +0800 Subject: [PATCH] video: rockchip: fb: no need close all win when hdmi switch screen at first time Change-Id: I6dff985f3c2b44c6b461e0ee039823e59839b52c Signed-off-by: Huang Jiachai --- drivers/video/rockchip/rk_fb.c | 15 +++++++-------- 1 file changed, 7 insertions(+), 8 deletions(-) diff --git a/drivers/video/rockchip/rk_fb.c b/drivers/video/rockchip/rk_fb.c index ee0140cec71e..c8393580a059 100644 --- a/drivers/video/rockchip/rk_fb.c +++ b/drivers/video/rockchip/rk_fb.c @@ -3645,6 +3645,13 @@ int rk_fb_switch_screen(struct rk_screen *screen, int enable, int lcdc_id) mutex_unlock(&dev_drv->switch_screen); return 0; } else { + if (load_screen || (rk_fb->disp_policy != DISPLAY_POLICY_BOX)) { + for (i = 0; i < dev_drv->lcdc_win_num; i++) { + if (dev_drv->win[i] && dev_drv->win[i]->state && + dev_drv->ops->win_direct_en) + dev_drv->ops->win_direct_en(dev_drv, i, 0); + } + } if (dev_drv->uboot_logo) { if (dev_drv->cur_screen->mode.xres != screen->mode.xres || @@ -3662,14 +3669,6 @@ int rk_fb_switch_screen(struct rk_screen *screen, int enable, int lcdc_id) dev_drv->cur_screen->y_mirror = dev_drv->rotate_mode & Y_MIRROR; } - if (load_screen || (rk_fb->disp_policy != DISPLAY_POLICY_BOX)) { - for (i = 0; i < dev_drv->lcdc_win_num; i++) { - if (dev_drv->win[i] && dev_drv->win[i]->state && - dev_drv->ops->win_direct_en) - dev_drv->ops->win_direct_en(dev_drv, i, 0); - } - } - if (!dev_drv->uboot_logo || load_screen || (rk_fb->disp_policy != DISPLAY_POLICY_BOX)) { for (i = 0; i < dev_drv->lcdc_win_num; i++) { -- 2.34.1