diff options
author | Frank Li <Frank.Li@freescale.com> | 2010-04-16 15:00:25 +0800 |
---|---|---|
committer | Frank Li <Frank.Li@freescale.com> | 2010-04-16 17:27:55 +0800 |
commit | 9232b710bbd342564850c3e241b42e304349a93c (patch) | |
tree | 90404a1471be91a7f0f08c0a5fb0b7beccb166ef | |
parent | a037d9e754d5578e7de71a2e7b7a757cc3f37857 (diff) |
ENGR00122612-2 iMX23 Lower the suspend current to 9mA.
Fix LCDIF suspend issue and improve suspend flow,now
suspend current can low to 9mA with LCD panel.
Signed-off-by: Frank Li <Frank.Li@freescale.com>
-rw-r--r-- | drivers/video/mxs/lcd_lms430.c | 6 | ||||
-rw-r--r-- | drivers/video/mxs/lcdif.c | 3 |
2 files changed, 6 insertions, 3 deletions
diff --git a/drivers/video/mxs/lcd_lms430.c b/drivers/video/mxs/lcd_lms430.c index 00273b73158..c167774d578 100644 --- a/drivers/video/mxs/lcd_lms430.c +++ b/drivers/video/mxs/lcd_lms430.c @@ -113,11 +113,17 @@ out: static void release_panel(struct device *dev, struct mxs_platform_fb_entry *pentry) { + /* Reset LCD panel signel. */ + __raw_writel(BM_LCDIF_CTRL1_RESET, + REGS_LCDIF_BASE + HW_LCDIF_CTRL1_CLR); + mdelay(100); mxs_lcdif_notify_clients(MXS_LCDIF_PANEL_RELEASE, pentry); release_dotclk_panel(); mxs_lcdif_dma_release(); clk_disable(lcd_clk); clk_put(lcd_clk); + __raw_writel(BM_LCDIF_CTRL_CLKGATE, + REGS_LCDIF_BASE + HW_LCDIF_CTRL_SET); } static int blank_panel(int blank) diff --git a/drivers/video/mxs/lcdif.c b/drivers/video/mxs/lcdif.c index 03d4abd8b85..f7d48a6fb3e 100644 --- a/drivers/video/mxs/lcdif.c +++ b/drivers/video/mxs/lcdif.c @@ -101,9 +101,6 @@ void mxs_lcdif_stop(void) __raw_writel(BM_LCDIF_CTRL_LCDIF_MASTER, REGS_LCDIF_BASE + HW_LCDIF_CTRL_CLR); udelay(100); - - __raw_writel(BM_LCDIF_CTRL_CLKGATE, - REGS_LCDIF_BASE + HW_LCDIF_CTRL_SET); } EXPORT_SYMBOL(mxs_lcdif_stop); |