From: Nikita Kiryanov <nik...@compulab.co.il> Simplify lcd_logo by extracting bmp unzip into its own function.
Signed-off-by: Nikita Kiryanov <nik...@compulab.co.il> Signed-off-by: Igor Grinberg <grinb...@compulab.co.il> --- common/lcd.c | 30 ++++++++++++++++++++---------- 1 files changed, 20 insertions(+), 10 deletions(-) diff --git a/common/lcd.c b/common/lcd.c index 448e0f0..855d3df 100644 --- a/common/lcd.c +++ b/common/lcd.c @@ -810,6 +810,25 @@ int lcd_display_bitmap(ulong bmp_image, int x, int y) } #endif +#ifdef CONFIG_VIDEO_BMP_GZIP +static inline ulong __gunzip_bmp(ulong addr) +{ + bmp_image_t *bmp = (bmp_image_t *)addr; + unsigned long len; + + if (!((bmp->header.signature[0] == 'B') && + (bmp->header.signature[1] == 'M'))) + addr = (ulong)gunzip_bmp(addr, &len); + + return addr; +} +#else +static inline ulong __gunzip_bmp(ulong addr) +{ + return addr; +} +#endif + static void *lcd_logo(void) { #ifdef CONFIG_SPLASH_SCREEN @@ -840,16 +859,7 @@ static void *lcd_logo(void) } #endif /* CONFIG_SPLASH_SCREEN_ALIGN */ -#ifdef CONFIG_VIDEO_BMP_GZIP - bmp_image_t *bmp = (bmp_image_t *)addr; - unsigned long len; - - if (!((bmp->header.signature[0] == 'B') && - (bmp->header.signature[1] == 'M'))) { - addr = (ulong)gunzip_bmp(addr, &len); - } -#endif - + addr = __gunzip_bmp(addr); if (lcd_display_bitmap(addr, x, y) == 0) return (void *)lcd_base; } -- 1.7.1 _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot