From 46d1d5dd43e4d7c78f1fd6a5ee958d7b8a8626eb Mon Sep 17 00:00:00 2001 From: Wolfgang Denk Date: Sat, 5 Jan 2013 09:45:48 +0000 Subject: common/lcd.c: cleanup use of global variables lcd_color_fg and lcd_color_bg had to be declared in board specific code, but were not actually used there; in addition, we have getter / setter functions for these, which were not used either. Get rid of the global variables, and use the getter function where needed (so far no setter calls are needed). Signed-off-by: Wolfgang Denk Cc: Alessandro Rubini Cc: Anatolij Gustschin Cc: Bo Shen Cc: Haavard Skinnemoen Cc: Kyungmin Park Cc: Marek Vasut Cc: Minkyu Kang Cc: Nikita Kiryanov Cc: Simon Glass Cc: Stelian Pop Cc: Tom Warren Acked-by: Simon Glass Acked-by: Jeroen Hofstee [agust: also fixed cm_t35 board while rebasing] Signed-off-by: Anatolij Gustschin --- include/lcd.h | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'include') diff --git a/include/lcd.h b/include/lcd.h index 4ac4ddd1e0..e8c6c96f5c 100644 --- a/include/lcd.h +++ b/include/lcd.h @@ -32,13 +32,11 @@ extern char lcd_is_enabled; extern int lcd_line_length; -extern int lcd_color_fg; -extern int lcd_color_bg; /* * Frame buffer memory information */ -extern void *lcd_base; /* Start of framebuffer memory */ +extern void *lcd_base; /* Start of framebuffer memory */ extern void *lcd_console_address; /* Start of console buffer */ extern short console_col; @@ -54,6 +52,8 @@ extern void lcd_setcolreg (ushort regno, ushort red, ushort green, ushort blue); extern void lcd_initcolregs (void); +extern 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); -- cgit From 59155f4c502ff1045a702d3fda79a17aeda63240 Mon Sep 17 00:00:00 2001 From: Jeroen Hofstee Date: Tue, 22 Jan 2013 10:44:09 +0000 Subject: lcd, mpc8xx: move the mpc8xx driver to drivers/video Since the lcd code was compiled unconditionally in arch also add CONFIG_MPC8XX_LCD to the boards using this driver. cc: Anatolij Gustschin cc: Wolfgang Denk Signed-off-by: Jeroen Hofstee --- include/configs/R360MPI.h | 1 + include/configs/RBC823.h | 1 + include/configs/RPXlite_DW.h | 1 + include/configs/RRvision.h | 4 +++- include/configs/TQM823L.h | 1 + include/configs/TQM823M.h | 1 + include/configs/lwmon.h | 1 + include/configs/svm_sc8xx.h | 1 + include/configs/v37.h | 1 + 9 files changed, 11 insertions(+), 1 deletion(-) (limited to 'include') diff --git a/include/configs/R360MPI.h b/include/configs/R360MPI.h index 868a0b8044..60cccffc45 100644 --- a/include/configs/R360MPI.h +++ b/include/configs/R360MPI.h @@ -39,6 +39,7 @@ #define CONFIG_SYS_TEXT_BASE 0x40000000 #define CONFIG_LCD +#define CONFIG_MPC8XX_LCD #undef CONFIG_EDT32F10 #define CONFIG_SHARP_LQ057Q3DC02 diff --git a/include/configs/RBC823.h b/include/configs/RBC823.h index b042c67020..d4bcc62e45 100644 --- a/include/configs/RBC823.h +++ b/include/configs/RBC823.h @@ -47,6 +47,7 @@ #endif #define CONFIG_KEYBOARD 1 /* This board has a custom keybpard */ #define CONFIG_LCD 1 /* use LCD controller ... */ +#define CONFIG_MPC8XX_LCD #define CONFIG_HITACHI_SP19X001_Z1A /* The LCD type we use */ #define CONFIG_8xx_CONS_SMC2 1 /* Console is on SMC2 */ diff --git a/include/configs/RPXlite_DW.h b/include/configs/RPXlite_DW.h index 67ab1e962b..d8e28d5ea9 100644 --- a/include/configs/RPXlite_DW.h +++ b/include/configs/RPXlite_DW.h @@ -54,6 +54,7 @@ #define CONFIG_SYS_TEXT_BASE 0xff000000 #ifdef CONFIG_LCD /* with LCD controller ? */ +#define CONFIG_MPC8XX_LCD #define CONFIG_SPLASH_SCREEN /* ... with splashscreen support*/ #endif diff --git a/include/configs/RRvision.h b/include/configs/RRvision.h index e2b22f0bae..e2ea016387 100644 --- a/include/configs/RRvision.h +++ b/include/configs/RRvision.h @@ -110,7 +110,9 @@ #define CONFIG_RTC_MPC8xx /* use internal RTC of MPC8xx */ -#ifndef CONFIG_LCD +#ifdef CONFIG_LCD +#define CONFIG_MPC8XX_LCD +#else #define CONFIG_VIDEO 1 /* To enable the video initialization */ /* Video related */ diff --git a/include/configs/TQM823L.h b/include/configs/TQM823L.h index 9fac5d15c7..cccf3afb62 100644 --- a/include/configs/TQM823L.h +++ b/include/configs/TQM823L.h @@ -39,6 +39,7 @@ #define CONFIG_SYS_TEXT_BASE 0x40000000 #ifdef CONFIG_LCD /* with LCD controller ? */ +#define CONFIG_MPC8XX_LCD #define CONFIG_LCD_LOGO 1 /* print our logo on the LCD */ #define CONFIG_LCD_INFO 1 /* ... and some board info */ #define CONFIG_SPLASH_SCREEN /* ... with splashscreen support*/ diff --git a/include/configs/TQM823M.h b/include/configs/TQM823M.h index 932f158b2c..b2d1af0dd1 100644 --- a/include/configs/TQM823M.h +++ b/include/configs/TQM823M.h @@ -39,6 +39,7 @@ #define CONFIG_SYS_TEXT_BASE 0x40000000 #ifdef CONFIG_LCD /* with LCD controller ? */ +#define CONFIG_MPC8XX_LCD /* #define CONFIG_NEC_NL6448BC20 1 / * use NEC NL6448BC20 display */ #endif diff --git a/include/configs/lwmon.h b/include/configs/lwmon.h index df4978161e..3c02b73d8b 100644 --- a/include/configs/lwmon.h +++ b/include/configs/lwmon.h @@ -54,6 +54,7 @@ #define CONFIG_MISC_INIT_R 1 /* Call misc_init_r() */ #define CONFIG_LCD 1 /* use LCD controller ... */ +#define CONFIG_MPC8XX_LCD #define CONFIG_HLD1045 1 /* ... with a HLD1045 display */ #define CONFIG_LCD_LOGO 1 /* print our logo on the LCD */ diff --git a/include/configs/svm_sc8xx.h b/include/configs/svm_sc8xx.h index 2b24997f80..3c8c74d59a 100644 --- a/include/configs/svm_sc8xx.h +++ b/include/configs/svm_sc8xx.h @@ -38,6 +38,7 @@ /* SC85T,SC860T, FEL8xx-AT(855T/860T) */ /*#define CONFIG_FEL8xx_AT */ /*#define CONFIG_LCD */ +/*#define CONFIG_MPC8XX_LCD*/ /* if core > 50MHz , un-comment CONFIG_BUS_DIV2 */ /* #define CONFIG_50MHz */ /* #define CONFIG_66MHz */ diff --git a/include/configs/v37.h b/include/configs/v37.h index e36d2491cc..f9965db3cb 100644 --- a/include/configs/v37.h +++ b/include/configs/v37.h @@ -39,6 +39,7 @@ #define CONFIG_SYS_TEXT_BASE 0x40000000 #define CONFIG_LCD +#define CONFIG_MPC8XX_LCD #define CONFIG_SHARP_LQ084V1DG21 #undef CONFIG_LCD_LOGO -- cgit From 0698095af6a019c6ded35673a6b96af3fbf24286 Mon Sep 17 00:00:00 2001 From: Jeroen Hofstee Date: Tue, 22 Jan 2013 10:44:10 +0000 Subject: lcd, pxafb: move the pxafb to drivers/video Since the lcd code was compiled unconditionally for pxa also add CONFIG_PXA_LCD to the boards using this framebuffer. Since driver/video contains video and lcd drivers, add lcd to the name to make clear it belongs to common/lcd.c. cc: Anatolij Gustschin cc: Cliff Brake cc: Marek Vasut Acked-by: Marek Vasut Signed-off-by: Jeroen Hofstee --- include/configs/lubbock.h | 1 + include/configs/palmld.h | 1 + include/configs/palmtc.h | 1 + include/configs/pxa255_idp.h | 1 + include/configs/zipitz2.h | 1 + 5 files changed, 5 insertions(+) (limited to 'include') diff --git a/include/configs/lubbock.h b/include/configs/lubbock.h index 5886a155dc..b99a05690e 100644 --- a/include/configs/lubbock.h +++ b/include/configs/lubbock.h @@ -38,6 +38,7 @@ #define CONFIG_LUBBOCK 1 /* on an LUBBOCK Board */ #define CONFIG_LCD 1 #ifdef CONFIG_LCD +#define CONFIG_PXA_LCD #define CONFIG_SHARP_LM8V31 #endif #define CONFIG_MMC diff --git a/include/configs/palmld.h b/include/configs/palmld.h index 3f9802ca0f..4ee2e46cd2 100644 --- a/include/configs/palmld.h +++ b/include/configs/palmld.h @@ -72,6 +72,7 @@ #define CONFIG_CMD_MMC #define CONFIG_CMD_IDE #define CONFIG_LCD +#define CONFIG_PXA_LCD /* * MMC Card Configuration diff --git a/include/configs/palmtc.h b/include/configs/palmtc.h index 64771e7e8d..70fe05c519 100644 --- a/include/configs/palmtc.h +++ b/include/configs/palmtc.h @@ -74,6 +74,7 @@ #define CONFIG_CMD_ENV #define CONFIG_CMD_MMC #define CONFIG_LCD +#define CONFIG_PXA_LCD /* * MMC Card Configuration diff --git a/include/configs/pxa255_idp.h b/include/configs/pxa255_idp.h index 5a15af6b6a..39c167fc6f 100644 --- a/include/configs/pxa255_idp.h +++ b/include/configs/pxa255_idp.h @@ -59,6 +59,7 @@ #undef CONFIG_LCD #ifdef CONFIG_LCD +#define CONFIG_PXA_LCD #define CONFIG_SHARP_LM8V31 #endif diff --git a/include/configs/zipitz2.h b/include/configs/zipitz2.h index b92f70b538..f79dd3bbd8 100644 --- a/include/configs/zipitz2.h +++ b/include/configs/zipitz2.h @@ -103,6 +103,7 @@ #ifdef CONFIG_CMD_SPI #define CONFIG_SOFT_SPI #define CONFIG_LCD +#define CONFIG_PXA_LCD #define CONFIG_LMS283GF05 #define CONFIG_VIDEO_LOGO #define CONFIG_CMD_BMP -- cgit From f1d205a19cc89ae5a840cd45115201847dd5b73a Mon Sep 17 00:00:00 2001 From: Jeroen Hofstee Date: Tue, 22 Jan 2013 10:44:11 +0000 Subject: common/lcd.c: cleanup use of global variables console_col, console_row, lcd_line_length, lcd_console_address had to be declared in board / driver specific code, but were not actually used there on many boards. Get rid of the global variables. for completeness, the ack of Bo Shen is for the atmel part Cc: Alessandro Rubini Cc: Anatolij Gustschin Cc: Bo Shen Cc: Kyungmin Park Cc: Marek Vasut Cc: Minkyu Kang Cc: Nikita Kiryanov Cc: Simon Glass Cc: Stelian Pop Cc: Tom Warren Acked-by: Bo Shen Signed-off-by: Jeroen Hofstee [agust: rebased and fixed cm_t35 board] Signed-off-by: Anatolij Gustschin --- include/lcd.h | 3 --- 1 file changed, 3 deletions(-) (limited to 'include') diff --git a/include/lcd.h b/include/lcd.h index e8c6c96f5c..9b8ffeb99d 100644 --- a/include/lcd.h +++ b/include/lcd.h @@ -37,10 +37,7 @@ extern int lcd_line_length; * Frame buffer memory information */ extern void *lcd_base; /* Start of framebuffer memory */ -extern void *lcd_console_address; /* Start of console buffer */ -extern short console_col; -extern short console_row; extern struct vidinfo panel_info; extern void lcd_ctrl_init (void *lcdbase); -- cgit From 00a0ca5986c13d24ebbc5000cc1b7a1cdac0ba4b Mon Sep 17 00:00:00 2001 From: Jeroen Hofstee Date: Tue, 22 Jan 2013 10:44:12 +0000 Subject: common/lcd.c: remove global lcd_base lcd_base is available as gd->fb_base as well, there is no need to keep a seperate copy. For completeness the ack of Bo Shen is for the atmel part. Cc: Alessandro Rubini Cc: Anatolij Gustschin Cc: Bo Shen Cc: Haavard Skinnemoen Cc: Kyungmin Park Cc: Marek Vasut Cc: Minkyu Kang Cc: Nikita Kiryanov Cc: Simon Glass Cc: Stelian Pop Cc: Tom Warren Acked-by: Bo Shen Signed-off-by: Jeroen Hofstee [agust: also fix cm_t35 board while rebasing] Signed-off-by: Anatolij Gustschin --- include/lcd.h | 5 ----- 1 file changed, 5 deletions(-) (limited to 'include') diff --git a/include/lcd.h b/include/lcd.h index 9b8ffeb99d..f88b7e95c2 100644 --- a/include/lcd.h +++ b/include/lcd.h @@ -33,11 +33,6 @@ extern char lcd_is_enabled; extern int lcd_line_length; -/* - * Frame buffer memory information - */ -extern void *lcd_base; /* Start of framebuffer memory */ - extern struct vidinfo panel_info; extern void lcd_ctrl_init (void *lcdbase); -- cgit From 6b035141f6459df01065f455cbf9c1928f2db16a Mon Sep 17 00:00:00 2001 From: Jeroen Hofstee Date: Sat, 12 Jan 2013 12:07:56 +0000 Subject: common/lcd: cosmetic: clean up a bit - Make the brackets of the function calls more consistent - Remove really unnecessary brackets - Removes the extern from the function definitions - Remove curly brackets from single line statements - Remove lcd_setmem proto since it is already in common.h - Cleanup comments, remove useless comments - Remove NOT_USED_SO_FAR ifdef - Cleanup coding style cc: Anatolij Gustschin Signed-off-by: Jeroen Hofstee [agust: rebased the original patch] Signed-off-by: Anatolij Gustschin --- include/lcd.h | 38 +++++++++++++++++--------------------- 1 file changed, 17 insertions(+), 21 deletions(-) (limited to 'include') diff --git a/include/lcd.h b/include/lcd.h index f88b7e95c2..eadbb993fd 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) -- cgit From a5796c51ce87870cde39c0b9cd29ac775d0fb514 Mon Sep 17 00:00:00 2001 From: Jeroen Hofstee Date: Sat, 12 Jan 2013 12:07:59 +0000 Subject: common/lcd.c: move the macro's to the c file Hide the console macros since some reference global data which is no longer present. cc: Anatolij Gustschin Signed-off-by: Jeroen Hofstee --- include/lcd.h | 28 ---------------------------- 1 file changed, 28 deletions(-) (limited to 'include') diff --git a/include/lcd.h b/include/lcd.h index eadbb993fd..267915219c 100644 --- a/include/lcd.h +++ b/include/lcd.h @@ -420,34 +420,6 @@ int lcd_get_size(int *line_length); # define PAGE_SIZE 4096 #endif -/************************************************************************/ -/* ** CONSOLE DEFINITIONS & FUNCTIONS */ -/************************************************************************/ -#if defined(CONFIG_LCD_LOGO) && !defined(CONFIG_LCD_INFO_BELOW_LOGO) -# define CONSOLE_ROWS ((panel_info.vl_row-BMP_LOGO_HEIGHT) \ - / VIDEO_FONT_HEIGHT) -#else -# define CONSOLE_ROWS (panel_info.vl_row / VIDEO_FONT_HEIGHT) -#endif - -#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_SECOND (lcd_console_address + CONSOLE_ROW_SIZE) -#define CONSOLE_ROW_LAST (lcd_console_address + CONSOLE_SIZE \ - - CONSOLE_ROW_SIZE) -#define CONSOLE_SIZE (CONSOLE_ROW_SIZE * CONSOLE_ROWS) -#define CONSOLE_SCROLL_SIZE (CONSOLE_SIZE - CONSOLE_ROW_SIZE) - -#if LCD_BPP == LCD_MONOCHROME -# define COLOR_MASK(c) ((c) | (c) << 1 | (c) << 2 | (c) << 3 | \ - (c) << 4 | (c) << 5 | (c) << 6 | (c) << 7) -#elif (LCD_BPP == LCD_COLOR8) || (LCD_BPP == LCD_COLOR16) -# define COLOR_MASK(c) (c) -#else -# error Unsupported LCD BPP. -#endif - /************************************************************************/ #endif /* _LCD_H_ */ -- cgit