[U-Boot] [PATCH V2 3/4] common lcd: simplify core functions

Wolfgang Denk wd at denx.de
Mon Jun 25 09:23:37 CEST 2012


Dear Nikita Kiryanov,

In message <1340607844-8718-4-git-send-email-nikita at compulab.co.il> you wrote:
> Move highly platform dependant code into its own function to reduce the
> number of #ifdefs in the bigger functions
> 
> Signed-off-by: Nikita Kiryanov <nikita at compulab.co.il>
> Signed-off-by: Igor Grinberg <grinberg at compulab.co.il>
> ---
>  common/lcd.c |   58 ++++++++++++++++++++++++++++------------------------------
>  1 files changed, 28 insertions(+), 30 deletions(-)
> 
> diff --git a/common/lcd.c b/common/lcd.c
> index 4a5c8d5..3c0f1b1 100644
> --- a/common/lcd.c
> +++ b/common/lcd.c
> @@ -498,21 +498,35 @@ static int lcd_getbgcolor(void)
>  /************************************************************************/
>  /* ** Chipset depending Bitmap / Logo stuff...                          */
>  /************************************************************************/
> +static inline ushort *configuration_get_cmap(void)
> +{
> +#if defined CONFIG_CPU_PXA
> +	struct pxafb_info *fbi = &panel_info.pxa;
> +	return (ushort *)fbi->palette;
> +#elif defined(CONFIG_MPC823)
> +	volatile immap_t *immr = (immap_t *) CONFIG_SYS_IMMR;
> +	volatile cpm8xx_t *cp = &(immr->im_cpm);
> +	return (ushort *)&(cp->lcd_cmap[255 * sizeof(ushort)]);
> +#elif defined(CONFIG_ATMEL_LCD)
> +	return (ushort *)(panel_info.mmio + ATMEL_LCDC_LUT(0));
> +#else
> +	return (ushort *)panel_info.cmap;
> +#endif
> +}

Please fix and use I/O accessors instead of volatile pointers.

Best regards,

Wolfgang Denk

-- 
DENX Software Engineering GmbH,     MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de
Program maintenance is an entropy-increasing process,  and  even  its
most skilfull execution only delays the subsidence of the system into
unfixable obsolescence.       - Fred Brooks, "The Mythical Man Month"


More information about the U-Boot mailing list