video: lcd: Add CONFIG_SPLASH_SCREEN_PREPARE support to CONFIG_VIDEO

Create splash.c/h to put the function and any future common splash
screen code in.

Signed-off-by: Robert Winkler <robert.winkler@boundarydevices.com>
Acked-by: Igor Grinberg <grinberg@compulab.co.il>
master
Robert Winkler 11 years ago committed by Anatolij Gustschin
parent f7ef9d610c
commit dd4425e852
  1. 1
      common/Makefile
  2. 16
      common/lcd.c
  3. 36
      common/splash.c
  4. 5
      drivers/video/cfb_console.c
  5. 1
      include/lcd.h
  6. 29
      include/splash.h

@ -196,6 +196,7 @@ COBJS-y += flash.o
COBJS-$(CONFIG_CMD_KGDB) += kgdb.o kgdb_stubs.o
COBJS-$(CONFIG_I2C_EDID) += edid.o
COBJS-$(CONFIG_KALLSYMS) += kallsyms.o
COBJS-y += splash.o
COBJS-$(CONFIG_LCD) += lcd.o
COBJS-$(CONFIG_LYNXKDI) += lynxkdi.o
COBJS-$(CONFIG_MENU) += menu.o

@ -43,6 +43,8 @@
#include <lcd.h>
#include <watchdog.h>
#include <splash.h>
#if defined(CONFIG_CPU_PXA25X) || defined(CONFIG_CPU_PXA27X) || \
defined(CONFIG_CPU_MONAHANS)
#define CONFIG_CPU_PXA
@ -1072,18 +1074,6 @@ int lcd_display_bitmap(ulong bmp_image, int x, int y)
}
#endif
#ifdef CONFIG_SPLASH_SCREEN_PREPARE
static inline int splash_screen_prepare(void)
{
return board_splash_screen_prepare();
}
#else
static inline int splash_screen_prepare(void)
{
return 0;
}
#endif
static void *lcd_logo(void)
{
#ifdef CONFIG_SPLASH_SCREEN
@ -1096,7 +1086,7 @@ static void *lcd_logo(void)
do_splash = 0;
if (splash_screen_prepare())
return (void *)gd->fb_base;
return (void *)lcd_base;
addr = simple_strtoul (s, NULL, 16);
#ifdef CONFIG_SPLASH_SCREEN_ALIGN

@ -0,0 +1,36 @@
/*
* Copyright (C) 2013, Boundary Devices <info@boundarydevices.com>
*
* See file CREDITS for list of people who contributed to this
* project.
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License as
* published by the Free Software Foundation; either version 2 of
* the License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., http://www.fsf.org/about/contact/
*
*/
#include <splash.h>
#include <config.h>
#ifdef CONFIG_SPLASH_SCREEN_PREPARE
int splash_screen_prepare(void)
{
return board_splash_screen_prepare();
}
#else
int splash_screen_prepare(void)
{
return 0;
}
#endif

@ -181,6 +181,8 @@
*/
#include <video_fb.h>
#include <splash.h>
/*
* some Macros
*/
@ -1995,10 +1997,9 @@ static void *video_logo(void)
#ifdef CONFIG_SPLASH_SCREEN
s = getenv("splashimage");
if (s != NULL) {
splash_screen_prepare();
addr = simple_strtoul(s, NULL, 16);
if (video_display_bitmap(addr,
video_logo_xpos,
video_logo_ypos) == 0) {

@ -37,7 +37,6 @@ extern struct vidinfo panel_info;
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 */
void lcd_setcolreg(ushort regno, ushort red, ushort green, ushort blue);

@ -0,0 +1,29 @@
/*
* Copyright (C) 2013, Boundary Devices <info@boundarydevices.com>
*
* See file CREDITS for list of people who contributed to this
* project.
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License as
* published by the Free Software Foundation; either version 2 of
* the License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., http://www.fsf.org/about/contact/
*/
#ifndef _SPLASH_H_
#define _SPLASH_H_
int splash_screen_prepare(void);
#endif
Loading…
Cancel
Save