Skip to contentSkip to conversation

au1100fb: Fix startup sequence

PATCH In review Antonino A. Daplas 1 participant 1 message Jul 31, 2006 Framebuffer layer

lore
Share & tools
lore
#0 lore raw

PATCH 4/13 au1100fb: Fix startup sequence

From: Rodolfo Giometti <[email protected]>

- fix up the start up sequence.

This new sequence allow you to correctly enable the LCD controller even if the bootloader has already did it.

- fix up a wrong indentation issue.

---

 drivers/video/au1100fb.c |   13 +++++--------
 1 files changed, 5 insertions(+), 8 deletions(-)
drivers/video/au1100fb.c +5 -8
index ef221cc..ef5c16f 100644
@@ -161,7 +161,7 @@ int au1100fb_setmode(struct au1100fb_dev
 
 			info->fix.visual = FB_VISUAL_TRUECOLOR;
 			info->fix.line_length = info->var.xres_virtual << 1; /* depth=16 */
-	}
+		}
 	} else {
 		/* mono */
 		info->fix.visual = FB_VISUAL_MONO10;
@@ -174,16 +174,11 @@ int au1100fb_setmode(struct au1100fb_dev
 
 	/* Determine BPP mode and format */
 	fbdev->regs->lcd_control = fbdev->panel->control_base;
-
-	fbdev->regs->lcd_intenable = 0;
-	fbdev->regs->lcd_intstatus = 0;
-
 	fbdev->regs->lcd_horztiming = fbdev->panel->horztiming;
-
 	fbdev->regs->lcd_verttiming = fbdev->panel->verttiming;
-
 	fbdev->regs->lcd_clkcontrol = fbdev->panel->clkcontrol_base;
-
+	fbdev->regs->lcd_intenable = 0;
+	fbdev->regs->lcd_intstatus = 0;
 	fbdev->regs->lcd_dmaaddr0 = LCD_DMA_SA_N(fbdev->fb_phys);
 
 	if (panel_is_dual(fbdev->panel)) {
@@ -212,6 +207,8 @@ int au1100fb_setmode(struct au1100fb_dev
 
 	/* Resume controller */
 	fbdev->regs->lcd_control |= LCD_CONTROL_GO;
+	mdelay(10);
+	au1100fb_fb_blank(VESA_NO_BLANKING, info);
 
 	return 0;
 }

-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT & business topics through brief surveys -- and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV