diff options
| -rw-r--r-- | common/lcd.c | 84 | ||||
| -rw-r--r-- | include/lcd.h | 38 | 
2 files changed, 49 insertions, 73 deletions
| diff --git a/common/lcd.c b/common/lcd.c index eceb8ada0..bd7155fcb 100644 --- a/common/lcd.c +++ b/common/lcd.c @@ -85,15 +85,13 @@  DECLARE_GLOBAL_DATA_PTR; -ulong lcd_setmem (ulong addr); -  static void lcd_drawchars(ushort x, ushort y, uchar *str, int count);  static inline void lcd_puts_xy(ushort x, ushort y, uchar *s);  static inline void lcd_putc_xy(ushort x, ushort y, uchar  c);  static int lcd_init(void *lcdbase); -static void *lcd_logo (void); +static void *lcd_logo(void);  static int lcd_getbgcolor(void);  static void lcd_setfgcolor(int color); @@ -113,13 +111,6 @@ static void *lcd_base;			/* Start of framebuffer memory	*/  static char lcd_flush_dcache;	/* 1 to flush dcache after each lcd update */ - -#ifdef	NOT_USED_SO_FAR -static void lcd_getcolreg(ushort regno, -				ushort *red, ushort *green, ushort *blue); -static int lcd_getfgcolor(void); -#endif	/* NOT_USED_SO_FAR */ -  /************************************************************************/  /* Flush LCD activity to the caches */ @@ -158,7 +149,7 @@ static void console_scrollup(void)  	/* Clear the last rows */  	memset(lcd_console_address + CONSOLE_SIZE - CONSOLE_ROW_SIZE * rows,  		COLOR_MASK(lcd_color_bg), -	       CONSOLE_ROW_SIZE * rows); +		CONSOLE_ROW_SIZE * rows);  	lcd_sync();  	console_row -= rows; @@ -170,9 +161,8 @@ static inline void console_back(void)  {  	if (--console_col < 0) {  		console_col = CONSOLE_COLS-1 ; -		if (--console_row < 0) { +		if (--console_row < 0)  			console_row = 0; -		}  	}  	lcd_putc_xy(console_col * VIDEO_FONT_WIDTH, @@ -183,16 +173,13 @@ static inline void console_back(void)  static inline void console_newline(void)  { -	++console_row;  	console_col = 0;  	/* Check if we need to scroll the terminal */ -	if (console_row >= CONSOLE_ROWS) { -		/* Scroll everything up */ +	if (++console_row >= CONSOLE_ROWS)  		console_scrollup(); -	} else { +	else  		lcd_sync(); -	}  }  /*----------------------------------------------------------------------*/ @@ -244,9 +231,9 @@ void lcd_puts(const char *s)  		return;  	} -	while (*s) { +	while (*s)  		lcd_putc(*s++); -	} +  	lcd_sync();  } @@ -293,7 +280,7 @@ static void lcd_drawchars(ushort x, ushort y, uchar *str, int count)  #endif  #if LCD_BPP == LCD_MONOCHROME -		uchar rest = *d & -(1 << (8-off)); +		uchar rest = *d & -(1 << (8 - off));  		uchar sym;  #endif  		for (i = 0; i < count; ++i) { @@ -323,7 +310,7 @@ static void lcd_drawchars(ushort x, ushort y, uchar *str, int count)  #endif  		}  #if LCD_BPP == LCD_MONOCHROME -		*d  = rest | (*d & ((1 << (8-off)) - 1)); +		*d  = rest | (*d & ((1 << (8 - off)) - 1));  #endif  	}  } @@ -350,7 +337,7 @@ static inline void lcd_putc_xy(ushort x, ushort y, uchar c)  #define	N_BLK_VERT	2  #define	N_BLK_HOR	3 -static int test_colors[N_BLK_HOR*N_BLK_VERT] = { +static int test_colors[N_BLK_HOR * N_BLK_VERT] = {  	CONSOLE_COLOR_RED,	CONSOLE_COLOR_GREEN,	CONSOLE_COLOR_YELLOW,  	CONSOLE_COLOR_BLUE,	CONSOLE_COLOR_MAGENTA,	CONSOLE_COLOR_CYAN,  }; @@ -371,7 +358,7 @@ static void test_pattern(void)  	for (v = 0; v < v_max; ++v) {  		uchar iy = v / v_step;  		for (h = 0; h < h_max; ++h) { -			uchar ix = N_BLK_HOR * iy + (h/h_step); +			uchar ix = N_BLK_HOR * iy + h / h_step;  			*pix++ = test_colors[ix];  		}  	} @@ -389,12 +376,12 @@ int lcd_get_size(int *line_length)  	return *line_length * panel_info.vl_row;  } -int drv_lcd_init (void) +int drv_lcd_init(void)  {  	struct stdio_dev lcddev;  	int rc; -	lcd_base = (void *)(gd->fb_base); +	lcd_base = (void *) gd->fb_base;  	lcd_get_size(&lcd_line_length); @@ -409,7 +396,7 @@ int drv_lcd_init (void)  	lcddev.putc  = lcd_putc;		/* 'putc' function */  	lcddev.puts  = lcd_puts;		/* 'puts' function */ -	rc = stdio_register (&lcddev); +	rc = stdio_register(&lcddev);  	return (rc == 0) ? 1 : rc;  } @@ -448,11 +435,11 @@ void lcd_clear(void)  	/* set framebuffer to background color */  	memset((char *)lcd_base,  		COLOR_MASK(lcd_getbgcolor()), -		lcd_line_length*panel_info.vl_row); +		lcd_line_length * panel_info.vl_row);  #endif  	/* Paint the logo and retrieve LCD base address */  	debug("[LCD] Drawing the logo...\n"); -	lcd_console_address = lcd_logo (); +	lcd_console_address = lcd_logo();  	console_col = 0;  	console_row = 0; @@ -482,7 +469,7 @@ static int lcd_init(void *lcdbase)  	lcd_ctrl_init(lcdbase);  	lcd_is_enabled = 1;  	lcd_clear(); -	lcd_enable (); +	lcd_enable();  	/* Initialize the console */  	console_col = 0; @@ -523,7 +510,8 @@ ulong lcd_setmem(ulong addr)  	/* Allocate pages for the frame buffer. */  	addr -= size; -	debug("Reserving %ldk for LCD Framebuffer at: %08lx\n", size>>10, addr); +	debug("Reserving %ldk for LCD Framebuffer at: %08lx\n", +	      size >> 10, addr);  	return addr;  } @@ -556,8 +544,6 @@ static int lcd_getbgcolor(void)  	return lcd_color_bg;  } -/*----------------------------------------------------------------------*/ -  /************************************************************************/  /* ** Chipset depending Bitmap / Logo stuff...                          */  /************************************************************************/ @@ -574,13 +560,11 @@ static inline ushort *configuration_get_cmap(void)  	return (ushort *)(panel_info.mmio + ATMEL_LCDC_LUT(0));  #elif !defined(CONFIG_ATMEL_HLCD) && !defined(CONFIG_EXYNOS_FB)  	return panel_info.cmap; -#else -#if defined(CONFIG_LCD_LOGO) +#elif defined(CONFIG_LCD_LOGO)  	return bmp_logo_palette;  #else  	return NULL;  #endif -#endif  }  #ifdef CONFIG_LCD_LOGO @@ -653,7 +637,7 @@ void bitmap_plot(int x, int y)  		for (i = 0; i < BMP_LOGO_HEIGHT; ++i) {  			memcpy(fb, bmap, BMP_LOGO_WIDTH);  			bmap += BMP_LOGO_WIDTH; -			fb   += panel_info.vl_col; +			fb += panel_info.vl_col;  		}  	}  	else { /* true color mode */ @@ -744,12 +728,11 @@ static void draw_encoded_bitmap(ushort **fbp, ushort c, int cnt)  		*fb++ = c;  		cnt--;  	} -	(*fbp) = fb; +	*fbp = fb;  }  /* - * Do not call this function directly, must be called from - * lcd_display_bitmap. + * Do not call this function directly, must be called from lcd_display_bitmap.   */  static void lcd_display_rle8_bitmap(bmp_image_t *bmp, ushort *cmap, uchar *fb,  				    int x_off, int y_off) @@ -876,8 +859,8 @@ int lcd_display_bitmap(ulong bmp_image, int x, int y)  	unsigned long pwidth = panel_info.vl_col;  	unsigned colors, bpix, bmp_bpix; -	if (!bmp || !((bmp->header.signature[0] == 'B') && -		(bmp->header.signature[1] == 'M'))) { +	if (!bmp || !(bmp->header.signature[0] == 'B' && +		bmp->header.signature[1] == 'M')) {  		printf("Error: no valid bmp image at %lx\n", bmp_image);  		return 1; @@ -890,7 +873,7 @@ int lcd_display_bitmap(ulong bmp_image, int x, int y)  	bpix = NBITS(panel_info.vl_bpix); -	if ((bpix != 1) && (bpix != 8) && (bpix != 16) && (bpix != 32)) { +	if (bpix != 1 && bpix != 8 && bpix != 16 && bpix != 32) {  		printf ("Error: %d bit/pixel mode, but BMP has %d bit/pixel\n",  			bpix, bmp_bpix); @@ -958,7 +941,7 @@ int lcd_display_bitmap(ulong bmp_image, int x, int y)  	}  #endif -	padded_width = (width&0x3) ? ((width&~0x3)+4) : (width); +	padded_width = (width & 0x3 ? (width & ~0x3) + 4 : width);  #ifdef CONFIG_SPLASH_SCREEN_ALIGN  	splash_align_axis(&x, pwidth, width); @@ -970,7 +953,7 @@ int lcd_display_bitmap(ulong bmp_image, int x, int y)  	if ((y + height) > panel_info.vl_row)  		height = panel_info.vl_row - y; -	bmap = (uchar *)bmp + le32_to_cpu(bmp->header.data_offset); +	bmap = (uchar *) bmp + le32_to_cpu(bmp->header.data_offset);  	fb   = (uchar *) (lcd_base +  		(y + height - 1) * lcd_line_length + x * bpix / 8); @@ -1005,7 +988,7 @@ int lcd_display_bitmap(ulong bmp_image, int x, int y)  				}  			}  			bmap += (padded_width - width); -			fb   -= (byte_width + lcd_line_length); +			fb -= byte_width + lcd_line_length;  		}  		break; @@ -1017,7 +1000,7 @@ int lcd_display_bitmap(ulong bmp_image, int x, int y)  				fb_put_word(&fb, &bmap);  			bmap += (padded_width - width) * 2; -			fb   -= (width * 2 + lcd_line_length); +			fb -= width * 2 + lcd_line_length;  		}  		break;  #endif /* CONFIG_BMP_16BPP */ @@ -1031,7 +1014,7 @@ int lcd_display_bitmap(ulong bmp_image, int x, int y)  				*(fb++) = *(bmap++);  				*(fb++) = *(bmap++);  			} -			fb  -= (lcd_line_length + width * (bpix / 8)); +			fb -= lcd_line_length + width * (bpix / 8);  		}  		break;  #endif /* CONFIG_BMP_32BPP */ @@ -1106,7 +1089,7 @@ static void *lcd_logo(void)  	return (void *)((ulong)lcd_base + BMP_LOGO_HEIGHT * lcd_line_length);  #else  	return (void *)lcd_base; -#endif /* CONFIG_LCD_LOGO && !CONFIG_LCD_INFO_BELOW_LOGO */ +#endif /* CONFIG_LCD_LOGO && !defined(CONFIG_LCD_INFO_BELOW_LOGO) */  }  #ifdef CONFIG_SPLASHIMAGE_GUARD @@ -1158,6 +1141,3 @@ int lcd_get_screen_columns(void)  {  	return CONSOLE_COLS;  } - -/************************************************************************/ -/************************************************************************/ diff --git a/include/lcd.h b/include/lcd.h index f88b7e95c..eadbb993f 100644 --- a/include/lcd.h +++ b/include/lcd.h @@ -35,20 +35,19 @@ extern int lcd_line_length;  extern struct vidinfo panel_info; -extern void lcd_ctrl_init (void *lcdbase); -extern void lcd_enable (void); -extern int board_splash_screen_prepare(void); +void lcd_ctrl_init(void *lcdbase); +void lcd_enable(void); +int board_splash_screen_prepare(void);  /* setcolreg used in 8bpp/16bpp; initcolregs used in monochrome */ -extern void lcd_setcolreg (ushort regno, -				ushort red, ushort green, ushort blue); -extern void lcd_initcolregs (void); +void lcd_setcolreg(ushort regno, ushort red, ushort green, ushort blue); +void lcd_initcolregs(void); -extern int lcd_getfgcolor(void); +int lcd_getfgcolor(void);  /* gunzip_bmp used if CONFIG_VIDEO_BMP_GZIP */ -extern struct bmp_image *gunzip_bmp(unsigned long addr, unsigned long *lenp); -extern int bmp_display(ulong addr, int x, int y); +struct bmp_image *gunzip_bmp(unsigned long addr, unsigned long *lenp); +int bmp_display(ulong addr, int x, int y);  /**   * Set whether we need to flush the dcache when changing the LCD image. This @@ -259,7 +258,6 @@ typedef struct vidinfo {  	unsigned int sclk_div;  	unsigned int dual_lcd_enabled; -  } vidinfo_t;  void init_panel_info(vidinfo_t *vid); @@ -284,14 +282,12 @@ extern vidinfo_t panel_info;  /* Video functions */  #if defined(CONFIG_RBC823) -void	lcd_disable	(void); +void	lcd_disable(void);  #endif - -/* int	lcd_init	(void *lcdbase); */ -void	lcd_putc	(const char c); -void	lcd_puts	(const char *s); -void	lcd_printf	(const char *fmt, ...); +void	lcd_putc(const char c); +void	lcd_puts(const char *s); +void	lcd_printf(const char *fmt, ...);  void	lcd_clear(void);  int	lcd_display_bitmap(ulong bmp_image, int x, int y); @@ -351,7 +347,7 @@ int lcd_get_size(int *line_length);   *  is connected, as we can't autodetect anything.   */  #define CONFIG_SYS_HIGH	0	/* Pins are active high			*/ -#define CONFIG_SYS_LOW		1	/* Pins are active low			*/ +#define CONFIG_SYS_LOW	1	/* Pins are active low			*/  #define LCD_MONOCHROME	0  #define LCD_COLOR2	1 @@ -365,10 +361,10 @@ int lcd_get_size(int *line_length);  # define LCD_INFO_Y		(BMP_LOGO_HEIGHT + VIDEO_FONT_HEIGHT)  #elif defined(CONFIG_LCD_LOGO)  # define LCD_INFO_X		(BMP_LOGO_WIDTH + 4 * VIDEO_FONT_WIDTH) -# define LCD_INFO_Y		(VIDEO_FONT_HEIGHT) +# define LCD_INFO_Y		VIDEO_FONT_HEIGHT  #else -# define LCD_INFO_X		(VIDEO_FONT_WIDTH) -# define LCD_INFO_Y		(VIDEO_FONT_HEIGHT) +# define LCD_INFO_X		VIDEO_FONT_WIDTH +# define LCD_INFO_Y		VIDEO_FONT_HEIGHT  #endif  /* Default to 8bpp if bit depth not specified */ @@ -436,7 +432,7 @@ int lcd_get_size(int *line_length);  #define CONSOLE_COLS		(panel_info.vl_col / VIDEO_FONT_WIDTH)  #define CONSOLE_ROW_SIZE	(VIDEO_FONT_HEIGHT * lcd_line_length) -#define CONSOLE_ROW_FIRST	(lcd_console_address) +#define CONSOLE_ROW_FIRST	lcd_console_address  #define CONSOLE_ROW_SECOND	(lcd_console_address + CONSOLE_ROW_SIZE)  #define CONSOLE_ROW_LAST	(lcd_console_address + CONSOLE_SIZE \  					- CONSOLE_ROW_SIZE) |