summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFancy Fang <chen.fang@freescale.com>2015-07-13 15:11:36 +0800
committerFancy Fang <chen.fang@freescale.com>2015-07-13 16:22:01 +0800
commitf510aacbe9a2ee7d543240457a48cb924faa3c1d (patch)
tree33b6d544ae9fd7440aeecba3d90fdbc852c06f43
parentd1e680a0d20ac88e9bbcc7c4a7008999d79ca322 (diff)
MLK-11240 video: mxsfb: refine the lcdif driver code logic
Do some code logic refinement for lcdif driver to make it more reasonable and strong. set_par and enable_controller calling sequences should be more exact. Signed-off-by: Fancy Fang <chen.fang@freescale.com>
-rw-r--r--drivers/video/mxsfb.c11
1 files changed, 5 insertions, 6 deletions
diff --git a/drivers/video/mxsfb.c b/drivers/video/mxsfb.c
index 43f6058d68be..012e523ceca4 100644
--- a/drivers/video/mxsfb.c
+++ b/drivers/video/mxsfb.c
@@ -551,12 +551,6 @@ static void mxsfb_enable_controller(struct fb_info *fb_info)
}
clk_enable_pix(host);
- /* Clean soft reset and clock gate bit if it was enabled */
- writel(CTRL_SFTRST | CTRL_CLKGATE, host->base + LCDC_CTRL + REG_CLR);
-
- /* reconfigure the lcdif after */
- mxsfb_set_par(&host->fb_info);
-
writel(CTRL2_OUTSTANDING_REQS__REQ_16,
host->base + LCDC_V4_CTRL2 + REG_SET);
@@ -872,6 +866,11 @@ static int mxsfb_blank(int blank, struct fb_info *fb_info)
case FB_BLANK_UNBLANK:
if (!host->enabled) {
+ clk_enable_pix(host);
+ clk_enable_axi(host);
+ clk_enable_disp_axi(host);
+
+ writel(0, host->base + LCDC_CTRL);
mxsfb_set_par(&host->fb_info);
mxsfb_enable_controller(fb_info);
}