* Patch by Detlev Zundel, 30 Jun 2005:

Fix LCD logo for lwmon board which got lost in the merge of 8xx and PXA LCD code
master
wdenk 19 years ago
parent 3c71f3e8aa
commit 88804d19e2
  1. 3
      CHANGELOG
  2. 2
      MAINTAINERS
  3. 33
      common/lcd.c
  4. 11
      cpu/mpc8xx/lcd.c
  5. 2
      include/configs/lwmon.h
  6. 15
      include/lcd.h

@ -9,6 +9,9 @@ Changes for U-Boot 1.1.3:
Fix PHY addresses for PPChameleon and CATcenter boards Fix PHY addresses for PPChameleon and CATcenter boards
Change MAINTAINER for most esd boards Change MAINTAINER for most esd boards
* Patch by Detlev Zundel, 30 Jun 2005:
Fix LCD logo for lwmon board which got lost in the merge of 8xx and PXA LCD code
* Fix baudrate calculation problem on MPC5200 systems * Fix baudrate calculation problem on MPC5200 systems
* Add EEPROM and RTC support for HMI1001 board * Add EEPROM and RTC support for HMI1001 board

@ -298,6 +298,8 @@ Jon Loeliger <jdl@freescale.com>
MPC8540ADS MPC8540 MPC8540ADS MPC8540
MPC8560ADS MPC8560 MPC8560ADS MPC8560
MPC8541CDS MPC8541
MPC8555CDS MPC8555
Dan Malek <dan@embeddededge.com> Dan Malek <dan@embeddededge.com>

@ -58,6 +58,15 @@
/************************************************************************/ /************************************************************************/
#include <video_font.h> /* Get font data, width and height */ #include <video_font.h> /* Get font data, width and height */
/************************************************************************/
/* ** LOGO DATA */
/************************************************************************/
#ifdef CONFIG_LCD_LOGO
# include <bmp_logo.h> /* Get logo data, width and height */
# if (CONSOLE_COLOR_WHITE >= BMP_LOGO_OFFSET)
# error Default Color Map overlaps with Logo Color Map
# endif
#endif
ulong lcd_setmem (ulong addr); ulong lcd_setmem (ulong addr);
@ -269,7 +278,7 @@ 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_puts_xy (ushort x, ushort y, uchar *s)
{ {
#if defined(CONFIG_LCD_LOGO) && !defined(LCD_INFO_BELOW_LOGO) #if defined(CONFIG_LCD_LOGO) && !defined(CONFIG_LCD_INFO_BELOW_LOGO)
lcd_drawchars (x, y+BMP_LOGO_HEIGHT, s, strlen (s)); lcd_drawchars (x, y+BMP_LOGO_HEIGHT, s, strlen (s));
#else #else
lcd_drawchars (x, y, s, strlen (s)); lcd_drawchars (x, y, s, strlen (s));
@ -280,7 +289,7 @@ 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 inline void lcd_putc_xy (ushort x, ushort y, uchar c)
{ {
#if defined(CONFIG_LCD_LOGO) && !defined(LCD_INFO_BELOW_LOGO) #if defined(CONFIG_LCD_LOGO) && !defined(CONFIG_LCD_INFO_BELOW_LOGO)
lcd_drawchars (x, y+BMP_LOGO_HEIGHT, &c, 1); lcd_drawchars (x, y+BMP_LOGO_HEIGHT, &c, 1);
#else #else
lcd_drawchars (x, y, &c, 1); lcd_drawchars (x, y, &c, 1);
@ -420,7 +429,7 @@ static int lcd_init (void *lcdbase)
/* Initialize the console */ /* Initialize the console */
console_col = 0; console_col = 0;
#ifdef LCD_INFO_BELOW_LOGO #ifdef CONFIG_LCD_INFO_BELOW_LOGO
console_row = 7 + BMP_LOGO_HEIGHT / VIDEO_FONT_HEIGHT; console_row = 7 + BMP_LOGO_HEIGHT / VIDEO_FONT_HEIGHT;
#else #else
console_row = 1; /* leave 1 blank line below logo */ console_row = 1; /* leave 1 blank line below logo */
@ -673,12 +682,12 @@ int lcd_display_bitmap(ulong bmp_image, int x, int y)
static void *lcd_logo (void) static void *lcd_logo (void)
{ {
#ifdef LCD_INFO #ifdef CONFIG_LCD_INFO
DECLARE_GLOBAL_DATA_PTR; DECLARE_GLOBAL_DATA_PTR;
char info[80]; char info[80];
char temp[32]; char temp[32];
#endif /* LCD_INFO */ #endif /* CONFIG_LCD_INFO */
#ifdef CONFIG_SPLASH_SCREEN #ifdef CONFIG_SPLASH_SCREEN
char *s; char *s;
@ -700,7 +709,7 @@ static void *lcd_logo (void)
#endif /* CONFIG_LCD_LOGO */ #endif /* CONFIG_LCD_LOGO */
#ifdef CONFIG_MPC823 #ifdef CONFIG_MPC823
#ifdef LCD_INFO # ifdef CONFIG_LCD_INFO
sprintf (info, "%s (%s - %s) ", U_BOOT_VERSION, __DATE__, __TIME__); sprintf (info, "%s (%s - %s) ", U_BOOT_VERSION, __DATE__, __TIME__);
lcd_drawchars (LCD_INFO_X, LCD_INFO_Y, info, strlen(info)); lcd_drawchars (LCD_INFO_X, LCD_INFO_Y, info, strlen(info));
@ -711,7 +720,7 @@ static void *lcd_logo (void)
sprintf (info, " Wolfgang DENK, wd@denx.de"); sprintf (info, " Wolfgang DENK, wd@denx.de");
lcd_drawchars (LCD_INFO_X, LCD_INFO_Y + VIDEO_FONT_HEIGHT * 2, lcd_drawchars (LCD_INFO_X, LCD_INFO_Y + VIDEO_FONT_HEIGHT * 2,
info, strlen(info)); info, strlen(info));
#ifdef LCD_INFO_BELOW_LOGO # ifdef CONFIG_LCD_INFO_BELOW_LOGO
sprintf (info, "MPC823 CPU at %s MHz", sprintf (info, "MPC823 CPU at %s MHz",
strmhz(temp, gd->cpu_clk)); strmhz(temp, gd->cpu_clk));
lcd_drawchars (LCD_INFO_X, LCD_INFO_Y + VIDEO_FONT_HEIGHT * 3, lcd_drawchars (LCD_INFO_X, LCD_INFO_Y + VIDEO_FONT_HEIGHT * 3,
@ -721,7 +730,7 @@ static void *lcd_logo (void)
gd->bd->bi_flashsize >> 20 ); gd->bd->bi_flashsize >> 20 );
lcd_drawchars (LCD_INFO_X, LCD_INFO_Y + VIDEO_FONT_HEIGHT * 4, lcd_drawchars (LCD_INFO_X, LCD_INFO_Y + VIDEO_FONT_HEIGHT * 4,
info, strlen(info)); info, strlen(info));
#else # else
/* leave one blank line */ /* leave one blank line */
sprintf (info, "MPC823 CPU at %s MHz, %ld MB RAM, %ld MB Flash", sprintf (info, "MPC823 CPU at %s MHz, %ld MB RAM, %ld MB Flash",
@ -731,15 +740,15 @@ static void *lcd_logo (void)
lcd_drawchars (LCD_INFO_X, LCD_INFO_Y + VIDEO_FONT_HEIGHT * 4, lcd_drawchars (LCD_INFO_X, LCD_INFO_Y + VIDEO_FONT_HEIGHT * 4,
info, strlen(info)); info, strlen(info));
# endif /* CONFIG_LCD_INFO_BELOW_LOGO */
# endif /* CONFIG_LCD_INFO */
#endif /* CONFIG_MPC823 */ #endif /* CONFIG_MPC823 */
#endif /* LCD_INFO_BELOW_LOGO */
#endif /* LCD_INFO */
#if defined(CONFIG_LCD_LOGO) && !defined(LCD_INFO_BELOW_LOGO) #if defined(CONFIG_LCD_LOGO) && !defined(CONFIG_LCD_INFO_BELOW_LOGO)
return ((void *)((ulong)lcd_base + BMP_LOGO_HEIGHT * lcd_line_length)); return ((void *)((ulong)lcd_base + BMP_LOGO_HEIGHT * lcd_line_length));
#else #else
return ((void *)lcd_base); return ((void *)lcd_base);
#endif /* CONFIG_LCD_LOGO */ #endif /* CONFIG_LCD_LOGO && !CONFIG_LCD_INFO_BELOW_LOGO */
} }
/************************************************************************/ /************************************************************************/

@ -46,12 +46,13 @@
/************************************************************************/ /************************************************************************/
/* ** CONFIG STUFF -- should be moved to board config file */ /* ** CONFIG STUFF -- should be moved to board config file */
/************************************************************************/ /************************************************************************/
#define CONFIG_LCD_LOGO #ifndef CONFIG_LCD_INFO
#define LCD_INFO /* Display Logo, (C) and system info */ #define CONFIG_LCD_INFO /* Display Logo, (C) and system info */
#endif
#if defined(CONFIG_V37) || defined(CONFIG_EDT32F10) #if defined(CONFIG_V37) || defined(CONFIG_EDT32F10)
#undef CONFIG_LCD_LOGO #undef CONFIG_LCD_LOGO
#undef LCD_INFO #undef CONFIG_LCD_INFO
#endif #endif
/*----------------------------------------------------------------------*/ /*----------------------------------------------------------------------*/
@ -155,7 +156,7 @@ vidinfo_t panel_info = {
3, 0, 0, 1, 1, 15, 4, 0, 3 3, 0, 0, 1, 1, 15, 4, 0, 3
/* wbl, vpw, lcdac, wbf */ /* wbl, vpw, lcdac, wbf */
}; };
#define LCD_INFO_BELOW_LOGO #define CONFIG_LCD_INFO_BELOW_LOGO
#endif /* CONFIG_SHARP_LQ057Q3DC02 */ #endif /* CONFIG_SHARP_LQ057Q3DC02 */
/*----------------------------------------------------------------------*/ /*----------------------------------------------------------------------*/
@ -179,7 +180,7 @@ vidinfo_t panel_info = {
3, 0, 0, 1, 1, 248, 4, 0, 35 3, 0, 0, 1, 1, 248, 4, 0, 35
/* wbl, vpw, lcdac, wbf */ /* wbl, vpw, lcdac, wbf */
}; };
#define LCD_INFO_BELOW_LOGO #define CONFIG_LCD_INFO_BELOW_LOGO
#endif /* CONFIG_SHARP_LQ065T9DR51U */ #endif /* CONFIG_SHARP_LQ065T9DR51U */
#ifdef CONFIG_SHARP_LQ084V1DG21 #ifdef CONFIG_SHARP_LQ084V1DG21

@ -53,6 +53,8 @@
#define CONFIG_LCD 1 /* use LCD controller ... */ #define CONFIG_LCD 1 /* use LCD controller ... */
#define CONFIG_HLD1045 1 /* ... with a HLD1045 display */ #define CONFIG_HLD1045 1 /* ... with a HLD1045 display */
#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*/ #define CONFIG_SPLASH_SCREEN /* ... with splashscreen support*/
#define CONFIG_SERIAL_MULTI 1 #define CONFIG_SERIAL_MULTI 1

@ -171,13 +171,6 @@ void lcd_printf (const char *fmt, ...);
# include <asm/byteorder.h> # include <asm/byteorder.h>
#endif /* (CONFIG_COMMANDS & CFG_CMD_BMP) || CONFIG_SPLASH_SCREEN */ #endif /* (CONFIG_COMMANDS & CFG_CMD_BMP) || CONFIG_SPLASH_SCREEN */
/************************************************************************/
/* ** LOGO DATA */
/************************************************************************/
#ifdef CONFIG_LCD_LOGO
# include <bmp_logo.h> /* Get logo data, width and height */
#endif
/* /*
* Information about displays we are using. This is for configuring * Information about displays we are using. This is for configuring
* the LCD controller and memory allocation. Someone has to know what * the LCD controller and memory allocation. Someone has to know what
@ -193,7 +186,7 @@ void lcd_printf (const char *fmt, ...);
#define LCD_COLOR16 4 #define LCD_COLOR16 4
/*----------------------------------------------------------------------*/ /*----------------------------------------------------------------------*/
#if defined(LCD_INFO_BELOW_LOGO) #if defined(CONFIG_LCD_INFO_BELOW_LOGO)
# define LCD_INFO_X 0 # define LCD_INFO_X 0
# define LCD_INFO_Y (BMP_LOGO_HEIGHT + VIDEO_FONT_HEIGHT) # define LCD_INFO_Y (BMP_LOGO_HEIGHT + VIDEO_FONT_HEIGHT)
#elif defined(CONFIG_LCD_LOGO) #elif defined(CONFIG_LCD_LOGO)
@ -252,10 +245,6 @@ void lcd_printf (const char *fmt, ...);
#endif /* color definitions */ #endif /* color definitions */
#if defined(CONFIG_LCD_LOGO) && (CONSOLE_COLOR_WHITE >= BMP_LOGO_OFFSET)
# error Default Color Map overlaps with Logo Color Map
#endif
/************************************************************************/ /************************************************************************/
#ifndef PAGE_SIZE #ifndef PAGE_SIZE
# define PAGE_SIZE 4096 # define PAGE_SIZE 4096
@ -264,7 +253,7 @@ void lcd_printf (const char *fmt, ...);
/************************************************************************/ /************************************************************************/
/* ** CONSOLE DEFINITIONS & FUNCTIONS */ /* ** CONSOLE DEFINITIONS & FUNCTIONS */
/************************************************************************/ /************************************************************************/
#if defined(CONFIG_LCD_LOGO) && !defined(LCD_INFO_BELOW_LOGO) #if defined(CONFIG_LCD_LOGO) && !defined(CONFIG_LCD_INFO_BELOW_LOGO)
# define CONSOLE_ROWS ((panel_info.vl_row-BMP_LOGO_HEIGHT) \ # define CONSOLE_ROWS ((panel_info.vl_row-BMP_LOGO_HEIGHT) \
/ VIDEO_FONT_HEIGHT) / VIDEO_FONT_HEIGHT)
#else #else

Loading…
Cancel
Save