Hello Gary,

some comments/questions below:

Gary Jennejohn wrote:
>  Note that the LOGO_X/LOG_Y macros are defined in RRvision.h to center
>  the logo on the screen and might be useful for other boards.
>  Signed-off-by: Gary Jennejohn <[EMAIL PROTECTED]>

add empty line between commit message and Signed-off-by line.

> ---
>  common/lcd.c       |    9 +++-
>  cpu/mpc8xx/lcd.c   |  138 
> +++++++++++++++++++++++++++++++++++++++++++++++++---
>  cpu/mpc8xx/video.c |   22 ++++++++-
>  3 files changed, 159 insertions(+), 10 deletions(-)
> 
> diff --git a/common/lcd.c b/common/lcd.c
> index ebf377a..e54d4f5 100644
> --- a/common/lcd.c
> +++ b/common/lcd.c
> @@ -70,6 +70,13 @@
>  # if (CONSOLE_COLOR_WHITE >= BMP_LOGO_OFFSET)
>  #  error Default Color Map overlaps with Logo Color Map
>  # endif
> +
> +# ifndef CONFIG_LCD_LOGO_X
> +# define CONFIG_LCD_LOGO_X      0
-----------------------------^^^^^^
please, use TAB here.
  
> +# endif
> +# ifndef CONFIG_LCD_LOGO_Y
> +# define CONFIG_LCD_LOGO_Y      0
-----------------------------^^^^^^
Ditto.

> +# endif
>  #endif
>  
>  DECLARE_GLOBAL_DATA_PTR;
> @@ -768,7 +775,7 @@ static void *lcd_logo (void)
>  #endif /* CONFIG_SPLASH_SCREEN */
>  
>  #ifdef CONFIG_LCD_LOGO
> -     bitmap_plot (0, 0);
> +     bitmap_plot (CONFIG_LCD_LOGO_X, CONFIG_LCD_LOGO_Y);
>  #endif /* CONFIG_LCD_LOGO */
>  
>  #ifdef CONFIG_MPC823
> diff --git a/cpu/mpc8xx/lcd.c b/cpu/mpc8xx/lcd.c
> index 3c64a9b..aff5465 100644
> --- a/cpu/mpc8xx/lcd.c
> +++ b/cpu/mpc8xx/lcd.c
> @@ -55,6 +55,10 @@
>  #undef CONFIG_LCD_INFO
>  #endif
>  
> +#if defined(CONFIG_RRVISION) && defined(TTTECH_NO_SCREEN_INFO)
> +#undef CONFIG_LCD_INFO
> +#endif
> +
>  /*----------------------------------------------------------------------*/
>  #ifdef CONFIG_KYOCERA_KCS057QV1AJ
>  /*
> @@ -114,7 +118,7 @@ vidinfo_t panel_info = {
>   */
>  vidinfo_t panel_info = {
>      640, 480, 212, 158, CFG_HIGH, CFG_HIGH, CFG_LOW, CFG_LOW, CFG_HIGH,
> -    3, 0, 0, 1, 1, 144, 2, 0, 33
> +    3, 0, 0, 1, 1, 88, 2, 0, 33
>               /* wbl, vpw, lcdac, wbf */
>  };
>  #endif /* CONFIG_NEC_NL6448BC33_54 */
> @@ -122,16 +126,83 @@ vidinfo_t panel_info = {
>  
>  #ifdef CONFIG_SHARP_LQ104V7DS01
>  /*
> - *  SHARP LQ104V7DS01. 6.5", 640x480. Active, color, single scan.
> + *  SHARP LQ104V7DS01. 10", 640x480. Active, color, single scan.
>   */
>  vidinfo_t panel_info = {
> -    640, 480, 132, 99, CFG_HIGH, CFG_HIGH, CFG_LOW, CFG_LOW, CFG_LOW,
> -    3, 0, 0, 1, 1, 25, 1, 0, 33
> +    660, 480, 0, 0, CFG_HIGH, CFG_HIGH, CFG_LOW, CFG_LOW, CFG_HIGH,
-------^^^
is this intentional or a typo?

> +    3, 0, 0, 1, 1, 99, 30, 0, 20
>               /* wbl, vpw, lcdac, wbf */
>  };
>  #endif /* CONFIG_SHARP_LQ104V7DS01 */
>  /*----------------------------------------------------------------------*/
>  
> +/*----------------------------------------------------------------------*/
> +
> +#ifdef CONFIG_SHARP_LQ104V1DG61
> +/*
> + *  SHARP LQ104V1DG61. 10", 640x480. Active, color, single scan.
> + */
> +vidinfo_t panel_info = {
> +    640, 480, 0, 0, CFG_HIGH, CFG_HIGH, CFG_LOW, CFG_LOW, CFG_HIGH,
> +    3, 0, 0, 1, 1, 80, 30, 0, 20
> +
> +};
> +#endif /* CONFIG_SHARP_LQ104V1DG61 */
> +/*----------------------------------------------------------------------*/
> +
> +/*----------------------------------------------------------------------*/
> +
> +#ifdef CONFIG_NEC_NL8060BC26
> +#undef LCD_DF
> +#define LCD_DF 4
> +/*
> + *  NEC_NL8060BC26. 10.4"", 800x600. Active, color, single scan.
> + */
> +vidinfo_t panel_info = {
> +    800, 600, 211, 158, CFG_HIGH, CFG_HIGH, CFG_LOW, CFG_LOW, CFG_HIGH,
> +    3, 0, 0, 1, 1, 80, 30, 0, 20
> +};
> +#endif /* CONFIG_NEC_NL8060BC26 */
> +/*----------------------------------------------------------------------*/
> +
> +/*----------------------------------------------------------------------*/
> +
> +#ifdef CONFIG_PM070WL3
> +#undef LCD_DF
> +#define LCD_DF 4
> +/*
> + *  PM070-WL3. 7"", 800x480. Active, color, single scan.
> + */
> +vidinfo_t panel_info = {
> +    800, 480, 153, 92, CFG_HIGH, CFG_HIGH, CFG_LOW, CFG_LOW, CFG_HIGH,
> +    3, 0, 0, 1, 1, 80, 30, 0, 20
> +};
> +#endif /* CONFIG_PM070WL3 */
> +/*----------------------------------------------------------------------*/
> +
> +
remove one empty line above.

> +#ifdef CONFIG_HLD1045AE1
> +vidinfo_t panel_info = {
> +    640, 480, 0, 0, CFG_HIGH, CFG_HIGH, CFG_LOW, CFG_LOW, CFG_HIGH,
> +    3, 0, 0, 1, 1, 80, 3, 0, 33
> +        /* wbl, vpw, lcdac, wbf */
> +};
> +#endif /* CONFIG_HLD1045AE1 */
> +/*----------------------------------------------------------------------*/
> +
> +#ifdef CONFIG_AUO_T070W1D1
> +#undef LCD_DF
> +#define LCD_DF 12
> +
> +vidinfo_t panel_info = {
> +    480, 240, 0, 0, CFG_HIGH, CFG_HIGH, CFG_LOW, CFG_LOW, CFG_HIGH,
> +    3, 1, 0, 1, 1, 80, 4, 0, 16
> +        /* wbl, vpw, lcdac, wbf */
> +};
> +#define CONFIG_LCD_INFO_BELOW_LOGO
> +#endif /* CONFIG_AUO_T070W1D1 */
> +/*----------------------------------------------------------------------*/
> +
>  #ifdef CONFIG_SHARP_16x9
>  /*
>   * Sharp 320x240. Active, color, single scan.  It isn't 16x9, and I am
> @@ -144,6 +215,44 @@ vidinfo_t panel_info = {
>  #endif /* CONFIG_SHARP_16x9 */
>  /*----------------------------------------------------------------------*/
>  
> +#ifdef CONFIG_SHARP_LQ050Q5DR01
> +/*
> + * Sharp LQ050Q5DR01 display. Active, color, single scan.
> + */
> +#undef LCD_DF
> +#define LCD_DF 12
> +
> +vidinfo_t panel_info = {
> +    320, 241, 0, 0, CFG_HIGH, CFG_HIGH, CFG_HIGH, CFG_HIGH, CFG_HIGH,
------------^^^
is this intentional or a typo?

> +    3, 1, 0, 1, 1, 15, 4, 0, 3
> +        /* wbl, vpw, lcdac, wbf */
> +};
> +#define CONFIG_LCD_INFO_BELOW_LOGO
> +#endif /* CONFIG_SHARP_LQ050Q5DR01 */
> +/*----------------------------------------------------------------------*/
> +
> +#ifdef CONFIG_SHARP_LQ070Q5TR01
> +/*
> + * Sharp LQ070Q5DR01 display. Active, color, single scan.
> + * !!! The actual screen size is only 480x240, but the HSYNC period has to
> + * be at least 680 pixels. The HSYNC period is given by 4 + vl_width + wbl.
> + * Changing wbl moves the picture on the screen. The only parameter to change
> + * is the screen width. Therefore we need a bitplane wider than the screen.
> + * The same holds for the VSYNC period. This is given byx VPW + WBF + 
> vl_height.
> + * Changing VPW or WBF moves the picture up/down. Therefore we can only
> + * change vl_height.  As a consequence the bitplane needs to be higher
> + * than the screen as well.
> + */
> +
> +vidinfo_t panel_info = {
> +    680, 246, 0, 0, CFG_HIGH, CFG_HIGH, CFG_HIGH, CFG_HIGH, CFG_HIGH,
> +    3, 0, 0, 1, 1, 7, 4, 0, 3
> +        /* wbl, vpw, lcdac, wbf */
> +};
> +#define CONFIG_LCD_INFO_BELOW_LOGO
> +#endif /* CONFIG_SHARP_LQ070Q5TR01 */
> +/*----------------------------------------------------------------------*/
> +
>  #ifdef CONFIG_SHARP_LQ057Q3DC02
>  /*
>   * Sharp LQ057Q3DC02 display. Active, color, single scan.
> @@ -170,6 +279,7 @@ vidinfo_t panel_info = {
>               /* wbl, vpw, lcdac, wbf */
>  };
>  #endif /* CONFIG_SHARP_LQ64D341 */
> +/*-----------------------------------------------------------------*/
>  
>  #ifdef CONFIG_SHARP_LQ065T9DR51U
>  /*
> @@ -396,6 +506,23 @@ void lcd_ctrl_init (void *lcdbase)
>       immr->im_ioport.iop_pddat |= 0x0200;
>  #endif
>  
> +/*
> + * Workaround for RRVision with 10" LCD Display. see issue26199.
> + * This Workaround works with the Displays SHARP LQ104V7DS01 and SHARP
> + * LQ104V1DG61
> + */
> +#if defined(CONFIG_RRVISION) && (defined(CONFIG_SHARP_LQ104V7DS01) || \
> + defined(CONFIG_SHARP_LQ104V1DG61))
> +     /* PDPAR Bit 6 - DD6 => 0 */
> +     immr->im_ioport.iop_pdpar &= ~0x0200;
> +
> +     /* PDDIR Bit 6 - DR6 => 1 */
> +     immr->im_ioport.iop_pddir |= 0x0200;
> +
> +     /* PDDAT Bit 6 - D6 => 0 */
> +     immr->im_ioport.iop_pddat &= ~0x0200;
> +#endif /* CONFIG_SHARP_LQ104V7DS01 */
> +
>       /* Load the physical address of the linear frame buffer
>        * into the LCD controller.
>        * BIG NOTE:  This has to be modified to load A and B depending
> @@ -483,7 +610,6 @@ lcd_setcolreg (ushort regno, ushort red, ushort green, 
> ushort blue)
>  /*----------------------------------------------------------------------*/
>  
>  #if LCD_BPP == LCD_MONOCHROME
> -static
>  void lcd_initcolregs (void)
>  {
>       volatile immap_t *immr = (immap_t *) CFG_IMMR;
> @@ -564,12 +690,10 @@ void lcd_enable (void)
>  #endif
>  #ifdef CONFIG_RRVISION
>       debug ("PC4->Output(1): enable LVDS\n");
> -     debug ("PC5->Output(0): disable PAL clock\n");
>       immr->im_ioport.iop_pddir |=  0x1000;
>       immr->im_ioport.iop_pcpar &= ~(0x0C00);
>       immr->im_ioport.iop_pcdir |=   0x0C00 ;
>       immr->im_ioport.iop_pcdat |=   0x0800 ;
> -     immr->im_ioport.iop_pcdat &= ~(0x0400);
>       debug ("PDPAR=0x%04X PDDIR=0x%04X PDDAT=0x%04X\n",
>              immr->im_ioport.iop_pdpar,
>              immr->im_ioport.iop_pddir,
> diff --git a/cpu/mpc8xx/video.c b/cpu/mpc8xx/video.c
> index 8bf8e46..5bbd693 100644
> --- a/cpu/mpc8xx/video.c
> +++ b/cpu/mpc8xx/video.c
> @@ -68,6 +68,10 @@ DECLARE_GLOBAL_DATA_PTR;
>  #define VIDEO_INFO_X         VIDEO_LOGO_WIDTH+8
>  #define VIDEO_INFO_Y         16
>  
> +#if defined(CONFIG_RRVISION) && defined(TTTECH_NO_SCREEN_INFO)
> +#undef VIDEO_INFO
> +#endif
> +
>  /************************************************************************/
>  /* ** VIDEO ENCODER CONSTANTS                                                
> */
>  /************************************************************************/
> @@ -115,10 +119,15 @@ DECLARE_GLOBAL_DATA_PTR;
>  #define VIDEO_BURST_LEN              (VIDEO_COLS/8)
>  
>  #ifdef VIDEO_MODE_YUYV
> +
> +#if defined(CONFIG_RRVISION)
> +#define VIDEO_BG_COL         0x80108010      /* Background color in YUYV 
> format */
> +#else
>  #define VIDEO_BG_COL 0x80D880D8      /* Background color in YUYV format */
> +#endif /* CONFIG_RRVISION */
>  #else
>  #define VIDEO_BG_COL 0xF8F8F8F8      /* Background color in RGB format */
> -#endif
> +#endif /* VIDEO_MODE_YUYV */
>  
>  /************************************************************************/
>  /* ** FONT AND LOGO DATA                                             */
> @@ -132,6 +141,14 @@ DECLARE_GLOBAL_DATA_PTR;
>  #define VIDEO_LOGO_WIDTH     DEF_U_BOOT_LOGO_WIDTH
>  #define VIDEO_LOGO_HEIGHT    DEF_U_BOOT_LOGO_HEIGHT
>  #define VIDEO_LOGO_ADDR              &u_boot_logo
> +
> +#ifndef CONFIG_VIDEO_LOGO_X
> +#define CONFIG_VIDEO_LOGO_X          0
------------------------------^^
remove one TAB.

> +#endif
> +#ifndef CONFIG_VIDEO_LOGO_Y
> +#define CONFIG_VIDEO_LOGO_Y          0
------------------------------^^
Ditto.

> +#endif
> +
>  #endif
>  
>  /************************************************************************/
> @@ -1171,7 +1188,8 @@ static void *video_logo (void)
>       char info[80];
>  #endif /* VIDEO_INFO */
>  
> -     easylogo_plot (VIDEO_LOGO_ADDR, screen, width, 0, 0);
> +     easylogo_plot (VIDEO_LOGO_ADDR, screen, width, CONFIG_VIDEO_LOGO_X,
> +             CONFIG_VIDEO_LOGO_Y);
----------------^^^^^^^^^^^^^^^^^^^^^
align this with left parenthesis in above line, please.

>  
>  #ifdef VIDEO_INFO
>       sprintf (info, "%s (%s - %s) ", U_BOOT_VERSION, __DATE__, __TIME__);

Another question: are you also going to update README file by
describing new LOGO_X/LOG_Y macros?

Best regargs,
Anatolij

--
DENX Software Engineering GmbH,     MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: +49-8142-66989-0 Fax: +49-8142-66989-80  Email: [EMAIL PROTECTED]

-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
_______________________________________________
U-Boot-Users mailing list
U-Boot-Users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/u-boot-users

Reply via email to