From: Sandor Yu Date: Wed, 13 Nov 2013 02:13:14 +0000 (+0800) Subject: ENGR00287579 mxsfb: i.MX6SL clean master bit before enter suspend X-Git-Tag: KARO-TX6-2014-07-10~151 X-Git-Url: https://git.karo-electronics.de/?a=commitdiff_plain;h=3e55fdba51e9063f64c1dfedf877caa3722686ab;p=karo-tx-linux.git ENGR00287579 mxsfb: i.MX6SL clean master bit before enter suspend Clean lcdif bus master bit when lcdif enter low power mode. Restore the master bit when lcdif back to work mode. Signed-off-by: Sandor Yu --- diff --git a/drivers/video/fbdev/mxsfb.c b/drivers/video/fbdev/mxsfb.c index ef4e750578fc..09bfd79748f9 100644 --- a/drivers/video/fbdev/mxsfb.c +++ b/drivers/video/fbdev/mxsfb.c @@ -366,6 +366,7 @@ static void mxsfb_enable_controller(struct fb_info *fb_info) reg |= VDCTRL4_SYNC_SIGNALS_ON; writel(reg, host->base + LCDC_VDCTRL4); + writel(CTRL_MASTER, host->base + LCDC_CTRL + REG_SET); writel(CTRL_RUN, host->base + LCDC_CTRL + REG_SET); host->enabled = 1; @@ -395,6 +396,8 @@ static void mxsfb_disable_controller(struct fb_info *fb_info) loop--; } + writel(CTRL_MASTER, host->base + LCDC_CTRL + REG_CLR); + reg = readl(host->base + LCDC_VDCTRL4); writel(reg & ~VDCTRL4_SYNC_SIGNALS_ON, host->base + LCDC_VDCTRL4); @@ -980,6 +983,7 @@ static void mxsfb_shutdown(struct platform_device *pdev) * might interfere with the BootROM's boot mode pads sampling. */ writel(CTRL_RUN, host->base + LCDC_CTRL + REG_CLR); + writel(CTRL_MASTER, host->base + LCDC_CTRL + REG_CLR); clk_disable_axi(host); }