* [U-Boot] [PATCH 0/2] video: lcd: splash screen prepare changes
@ 2013-06-14 17:00 Robert Winkler
2013-06-14 17:00 ` [U-Boot] [PATCH 1/2] video: lcd: Add CONFIG_SPLASH_SCREEN_PREPARE support to CONFIG_VIDEO Robert Winkler
` (2 more replies)
0 siblings, 3 replies; 8+ messages in thread
From: Robert Winkler @ 2013-06-14 17:00 UTC (permalink / raw)
To: u-boot
These 2 patches are the result of discussion in these threads:
http://lists.denx.de/pipermail/u-boot/2013-May/155463.html
http://lists.denx.de/pipermail/u-boot/2013-June/155630.html
http://lists.denx.de/pipermail/u-boot/2013-June/155632.html
The upshot is, move splash_screen_prepare to a common location
so it can be used in cfb_console.c and (possibly) make it weak.
These 2 patches do that and the first can be accepted without the
second if we decide not to make it weak.
One other note, I'm submitting this based on Anatolij's tree since
it's video related but board/compulab/cm_t35 does not exist in his
tree. If the second patch is accepted, cm_t35 will have to change
since it uses the non-weak method. I will submit an optional 3rd
patch to Stefano's tree with the necessary changes.
Robert Winkler (2):
video: lcd: Add CONFIG_SPLASH_SCREEN_PREPARE support to CONFIG_VIDEO
video: lcd: Make splash_screen_prepare weak, remove config macro
README | 8 --------
common/Makefile | 1 +
common/lcd.c | 19 ++++++-------------
common/splash.c | 31 +++++++++++++++++++++++++++++++
doc/README.splashprepare | 8 ++++++++
drivers/video/cfb_console.c | 8 ++++++--
include/lcd.h | 1 -
include/splash.h | 30 ++++++++++++++++++++++++++++++
8 files changed, 82 insertions(+), 24 deletions(-)
create mode 100644 common/splash.c
create mode 100644 doc/README.splashprepare
create mode 100644 include/splash.h
--
1.8.3
^ permalink raw reply [flat|nested] 8+ messages in thread* [U-Boot] [PATCH 1/2] video: lcd: Add CONFIG_SPLASH_SCREEN_PREPARE support to CONFIG_VIDEO 2013-06-14 17:00 [U-Boot] [PATCH 0/2] video: lcd: splash screen prepare changes Robert Winkler @ 2013-06-14 17:00 ` Robert Winkler 2013-06-17 5:34 ` Igor Grinberg 2013-06-14 17:00 ` [U-Boot] [PATCH 2/2] video: lcd: Make splash_screen_prepare weak, remove config macro Robert Winkler 2013-06-17 5:48 ` [U-Boot] [PATCH 0/2] video: lcd: splash screen prepare changes Igor Grinberg 2 siblings, 1 reply; 8+ messages in thread From: Robert Winkler @ 2013-06-14 17:00 UTC (permalink / raw) To: u-boot 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> --- common/Makefile | 1 + common/lcd.c | 19 ++++++------------- common/splash.c | 37 +++++++++++++++++++++++++++++++++++++ drivers/video/cfb_console.c | 8 ++++++-- include/lcd.h | 1 - include/splash.h | 30 ++++++++++++++++++++++++++++++ 6 files changed, 80 insertions(+), 16 deletions(-) create mode 100644 common/splash.c create mode 100644 include/splash.h diff --git a/common/Makefile b/common/Makefile index 0e0fff1..1d70584 100644 --- a/common/Makefile +++ b/common/Makefile @@ -203,6 +203,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 diff --git a/common/lcd.c b/common/lcd.c index 3a60484..4a85ebb 100644 --- a/common/lcd.c +++ b/common/lcd.c @@ -43,6 +43,11 @@ #include <lcd.h> #include <watchdog.h> +/* + * Include splash.h for splash_screen_prepare() etc. + */ +#include <splash.h> + #if defined(CONFIG_CPU_PXA25X) || defined(CONFIG_CPU_PXA27X) || \ defined(CONFIG_CPU_MONAHANS) #define CONFIG_CPU_PXA @@ -1072,18 +1077,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 +1089,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 diff --git a/common/splash.c b/common/splash.c new file mode 100644 index 0000000..fe13c69 --- /dev/null +++ b/common/splash.c @@ -0,0 +1,37 @@ +/* + * 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., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + */ + +#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) +{ + printf("SPLASH_SCREEN_PREPARE not defined\n"); + return 0; +} +#endif diff --git a/drivers/video/cfb_console.c b/drivers/video/cfb_console.c index b769222..4543730 100644 --- a/drivers/video/cfb_console.c +++ b/drivers/video/cfb_console.c @@ -178,6 +178,11 @@ #include <video_fb.h> /* + * Include splash.h for splash_screen_prepare() etc. + */ +#include <splash.h> + +/* * some Macros */ #define VIDEO_VISIBLE_COLS (pGD->winSizeX) @@ -1991,10 +1996,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) { diff --git a/include/lcd.h b/include/lcd.h index 30225ed..79bf13e 100644 --- a/include/lcd.h +++ b/include/lcd.h @@ -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); diff --git a/include/splash.h b/include/splash.h new file mode 100644 index 0000000..478f864 --- /dev/null +++ b/include/splash.h @@ -0,0 +1,30 @@ +/* + * 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., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + */ + +#ifndef _SPLASH_H_ +#define _SPLASH_H_ + + +int splash_screen_prepare(void); + + +#endif -- 1.8.3 ^ permalink raw reply related [flat|nested] 8+ messages in thread
* [U-Boot] [PATCH 1/2] video: lcd: Add CONFIG_SPLASH_SCREEN_PREPARE support to CONFIG_VIDEO 2013-06-14 17:00 ` [U-Boot] [PATCH 1/2] video: lcd: Add CONFIG_SPLASH_SCREEN_PREPARE support to CONFIG_VIDEO Robert Winkler @ 2013-06-17 5:34 ` Igor Grinberg 2013-06-17 17:08 ` Robert Winkler 0 siblings, 1 reply; 8+ messages in thread From: Igor Grinberg @ 2013-06-17 5:34 UTC (permalink / raw) To: u-boot Hi Robert, On 06/14/13 20:00, Robert Winkler wrote: > 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> Thanks for the effort! Several comments below... > --- > common/Makefile | 1 + > common/lcd.c | 19 ++++++------------- > common/splash.c | 37 +++++++++++++++++++++++++++++++++++++ > drivers/video/cfb_console.c | 8 ++++++-- > include/lcd.h | 1 - > include/splash.h | 30 ++++++++++++++++++++++++++++++ > 6 files changed, 80 insertions(+), 16 deletions(-) > create mode 100644 common/splash.c > create mode 100644 include/splash.h > > diff --git a/common/Makefile b/common/Makefile > index 0e0fff1..1d70584 100644 > --- a/common/Makefile > +++ b/common/Makefile > @@ -203,6 +203,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 I think this should depend on CONFIG_SPLASH_SCREEN. > COBJS-$(CONFIG_LCD) += lcd.o > COBJS-$(CONFIG_LYNXKDI) += lynxkdi.o > COBJS-$(CONFIG_MENU) += menu.o > diff --git a/common/lcd.c b/common/lcd.c > index 3a60484..4a85ebb 100644 > --- a/common/lcd.c > +++ b/common/lcd.c > @@ -43,6 +43,11 @@ > #include <lcd.h> > #include <watchdog.h> > > +/* > + * Include splash.h for splash_screen_prepare() etc. > + */ I think this comment is meaningless, the below include is self explanatory. > +#include <splash.h> > + > #if defined(CONFIG_CPU_PXA25X) || defined(CONFIG_CPU_PXA27X) || \ > defined(CONFIG_CPU_MONAHANS) > #define CONFIG_CPU_PXA > @@ -1072,18 +1077,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 +1089,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 > diff --git a/common/splash.c b/common/splash.c > new file mode 100644 > index 0000000..fe13c69 > --- /dev/null > +++ b/common/splash.c > @@ -0,0 +1,37 @@ > +/* > + * 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., 59 Temple Place, Suite 330, Boston, > + * MA 02111-1307 USA I would drop the postal address, as it changed in the past and probably will change in the future and then we will have a bunch of files with wrong address... > + */ > + > +#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) > +{ > + printf("SPLASH_SCREEN_PREPARE not defined\n"); > + return 0; > +} > +#endif > diff --git a/drivers/video/cfb_console.c b/drivers/video/cfb_console.c > index b769222..4543730 100644 > --- a/drivers/video/cfb_console.c > +++ b/drivers/video/cfb_console.c > @@ -178,6 +178,11 @@ > #include <video_fb.h> > > /* > + * Include splash.h for splash_screen_prepare() etc. > + */ Same here, the below include does not need any comment. > +#include <splash.h> > + > +/* > * some Macros > */ > #define VIDEO_VISIBLE_COLS (pGD->winSizeX) > @@ -1991,10 +1996,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) { > diff --git a/include/lcd.h b/include/lcd.h > index 30225ed..79bf13e 100644 > --- a/include/lcd.h > +++ b/include/lcd.h > @@ -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); > diff --git a/include/splash.h b/include/splash.h > new file mode 100644 > index 0000000..478f864 > --- /dev/null > +++ b/include/splash.h > @@ -0,0 +1,30 @@ > +/* > + * 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., 59 Temple Place, Suite 330, Boston, > + * MA 02111-1307 USA If you decide to drop the postal address, then please do it also here. > + */ > + > +#ifndef _SPLASH_H_ > +#define _SPLASH_H_ > + > + > +int splash_screen_prepare(void); > + > + > +#endif > -- Regards, Igor. ^ permalink raw reply [flat|nested] 8+ messages in thread
* [U-Boot] [PATCH 1/2] video: lcd: Add CONFIG_SPLASH_SCREEN_PREPARE support to CONFIG_VIDEO 2013-06-17 5:34 ` Igor Grinberg @ 2013-06-17 17:08 ` Robert Winkler 2013-06-18 6:20 ` Igor Grinberg 0 siblings, 1 reply; 8+ messages in thread From: Robert Winkler @ 2013-06-17 17:08 UTC (permalink / raw) To: u-boot Hi Igor, On Sun, Jun 16, 2013 at 10:34 PM, Igor Grinberg <grinberg@compulab.co.il> wrote: > Hi Robert, > > On 06/14/13 20:00, Robert Winkler wrote: >> 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> > > Thanks for the effort! > Several comments below... > >> --- >> common/Makefile | 1 + >> common/lcd.c | 19 ++++++------------- >> common/splash.c | 37 +++++++++++++++++++++++++++++++++++++ >> drivers/video/cfb_console.c | 8 ++++++-- >> include/lcd.h | 1 - >> include/splash.h | 30 ++++++++++++++++++++++++++++++ >> 6 files changed, 80 insertions(+), 16 deletions(-) >> create mode 100644 common/splash.c >> create mode 100644 include/splash.h >> >> diff --git a/common/Makefile b/common/Makefile >> index 0e0fff1..1d70584 100644 >> --- a/common/Makefile >> +++ b/common/Makefile >> @@ -203,6 +203,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 > > I think this should depend on CONFIG_SPLASH_SCREEN. No it shouldn't. The function is always called so it always needs to be defined. It's the same behavior we had before, it was always compiled into lcd.h. Whether or not the CONFIG was defined just changed whether it actually called board_splash_screen_prepare or just returned 0. This is of course true for when it's a weak function as well. > >> COBJS-$(CONFIG_LCD) += lcd.o >> COBJS-$(CONFIG_LYNXKDI) += lynxkdi.o >> COBJS-$(CONFIG_MENU) += menu.o >> diff --git a/common/lcd.c b/common/lcd.c >> index 3a60484..4a85ebb 100644 >> --- a/common/lcd.c >> +++ b/common/lcd.c >> @@ -43,6 +43,11 @@ >> #include <lcd.h> >> #include <watchdog.h> >> >> +/* >> + * Include splash.h for splash_screen_prepare() etc. >> + */ > > I think this comment is meaningless, the below include is self explanatory. Agreed. I was just trying to match the other superfluous comments. > >> +#include <splash.h> >> + >> #if defined(CONFIG_CPU_PXA25X) || defined(CONFIG_CPU_PXA27X) || \ >> defined(CONFIG_CPU_MONAHANS) >> #define CONFIG_CPU_PXA >> @@ -1072,18 +1077,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 +1089,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 >> diff --git a/common/splash.c b/common/splash.c >> new file mode 100644 >> index 0000000..fe13c69 >> --- /dev/null >> +++ b/common/splash.c >> @@ -0,0 +1,37 @@ >> +/* >> + * 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., 59 Temple Place, Suite 330, Boston, >> + * MA 02111-1307 USA > > I would drop the postal address, as it changed in the past and > probably will change in the future and then we will have a bunch of > files with wrong address... Good point, will do. > >> + */ >> + >> +#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) >> +{ >> + printf("SPLASH_SCREEN_PREPARE not defined\n"); >> + return 0; >> +} >> +#endif >> diff --git a/drivers/video/cfb_console.c b/drivers/video/cfb_console.c >> index b769222..4543730 100644 >> --- a/drivers/video/cfb_console.c >> +++ b/drivers/video/cfb_console.c >> @@ -178,6 +178,11 @@ >> #include <video_fb.h> >> >> /* >> + * Include splash.h for splash_screen_prepare() etc. >> + */ > > Same here, the below include does not need any comment. > >> +#include <splash.h> >> + >> +/* >> * some Macros >> */ >> #define VIDEO_VISIBLE_COLS (pGD->winSizeX) >> @@ -1991,10 +1996,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) { >> diff --git a/include/lcd.h b/include/lcd.h >> index 30225ed..79bf13e 100644 >> --- a/include/lcd.h >> +++ b/include/lcd.h >> @@ -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); >> diff --git a/include/splash.h b/include/splash.h >> new file mode 100644 >> index 0000000..478f864 >> --- /dev/null >> +++ b/include/splash.h >> @@ -0,0 +1,30 @@ >> +/* >> + * 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., 59 Temple Place, Suite 330, Boston, >> + * MA 02111-1307 USA > > If you decide to drop the postal address, then please do it also here. > >> + */ >> + >> +#ifndef _SPLASH_H_ >> +#define _SPLASH_H_ >> + >> + >> +int splash_screen_prepare(void); >> + >> + >> +#endif >> > > -- > Regards, > Igor. ^ permalink raw reply [flat|nested] 8+ messages in thread
* [U-Boot] [PATCH 1/2] video: lcd: Add CONFIG_SPLASH_SCREEN_PREPARE support to CONFIG_VIDEO 2013-06-17 17:08 ` Robert Winkler @ 2013-06-18 6:20 ` Igor Grinberg 2013-06-18 16:50 ` Robert Winkler 0 siblings, 1 reply; 8+ messages in thread From: Igor Grinberg @ 2013-06-18 6:20 UTC (permalink / raw) To: u-boot On 06/17/13 20:08, Robert Winkler wrote: > Hi Igor, > > On Sun, Jun 16, 2013 at 10:34 PM, Igor Grinberg <grinberg@compulab.co.il> wrote: >> Hi Robert, >> >> On 06/14/13 20:00, Robert Winkler wrote: >>> 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> >> >> Thanks for the effort! >> Several comments below... >> >>> --- >>> common/Makefile | 1 + >>> common/lcd.c | 19 ++++++------------- >>> common/splash.c | 37 +++++++++++++++++++++++++++++++++++++ >>> drivers/video/cfb_console.c | 8 ++++++-- >>> include/lcd.h | 1 - >>> include/splash.h | 30 ++++++++++++++++++++++++++++++ >>> 6 files changed, 80 insertions(+), 16 deletions(-) >>> create mode 100644 common/splash.c >>> create mode 100644 include/splash.h >>> >>> diff --git a/common/Makefile b/common/Makefile >>> index 0e0fff1..1d70584 100644 >>> --- a/common/Makefile >>> +++ b/common/Makefile >>> @@ -203,6 +203,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 >> >> I think this should depend on CONFIG_SPLASH_SCREEN. > No it shouldn't. The function is always called so it always needs to > be defined. It's the > same behavior we had before, it was always compiled into lcd.h. > Whether or not the CONFIG > was defined just changed whether it actually called > board_splash_screen_prepare or just returned 0. > > This is of course true for when it's a weak function as well. Well, what I meant is, once you make it a separate file (named splash.c), it is rather strange that it should be always compiled. It is fine for me now, but once more splash screen specific code moves to this file, it surely should depend on CONFIG_SPLASH_SCREEN. In general, I think the construct of 1) having the .c file compiled conditionally (meaning depend on CONFIG_... option) 2) having the .h file to define the interface to the .c file and provide a default implementation (when the above CONFIG_... is not set), like in many cases Linux does, brings the benefit of clear yet robust (in regard to the CONFIG_... defined or not) code has proven itself. > >> >>> COBJS-$(CONFIG_LCD) += lcd.o >>> COBJS-$(CONFIG_LYNXKDI) += lynxkdi.o >>> COBJS-$(CONFIG_MENU) += menu.o >>> diff --git a/common/lcd.c b/common/lcd.c >>> index 3a60484..4a85ebb 100644 >>> --- a/common/lcd.c >>> +++ b/common/lcd.c >>> @@ -43,6 +43,11 @@ >>> #include <lcd.h> >>> #include <watchdog.h> >>> >>> +/* >>> + * Include splash.h for splash_screen_prepare() etc. >>> + */ >> >> I think this comment is meaningless, the below include is self explanatory. > Agreed. I was just trying to match the other superfluous comments. >> >>> +#include <splash.h> >>> + >>> #if defined(CONFIG_CPU_PXA25X) || defined(CONFIG_CPU_PXA27X) || \ >>> defined(CONFIG_CPU_MONAHANS) >>> #define CONFIG_CPU_PXA >>> @@ -1072,18 +1077,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 +1089,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 >>> diff --git a/common/splash.c b/common/splash.c >>> new file mode 100644 >>> index 0000000..fe13c69 >>> --- /dev/null >>> +++ b/common/splash.c >>> @@ -0,0 +1,37 @@ >>> +/* >>> + * 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., 59 Temple Place, Suite 330, Boston, >>> + * MA 02111-1307 USA >> >> I would drop the postal address, as it changed in the past and >> probably will change in the future and then we will have a bunch of >> files with wrong address... > Good point, will do. >> >>> + */ >>> + >>> +#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) >>> +{ >>> + printf("SPLASH_SCREEN_PREPARE not defined\n"); >>> + return 0; >>> +} >>> +#endif >>> diff --git a/drivers/video/cfb_console.c b/drivers/video/cfb_console.c >>> index b769222..4543730 100644 >>> --- a/drivers/video/cfb_console.c >>> +++ b/drivers/video/cfb_console.c >>> @@ -178,6 +178,11 @@ >>> #include <video_fb.h> >>> >>> /* >>> + * Include splash.h for splash_screen_prepare() etc. >>> + */ >> >> Same here, the below include does not need any comment. >> >>> +#include <splash.h> >>> + >>> +/* >>> * some Macros >>> */ >>> #define VIDEO_VISIBLE_COLS (pGD->winSizeX) >>> @@ -1991,10 +1996,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) { >>> diff --git a/include/lcd.h b/include/lcd.h >>> index 30225ed..79bf13e 100644 >>> --- a/include/lcd.h >>> +++ b/include/lcd.h >>> @@ -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); >>> diff --git a/include/splash.h b/include/splash.h >>> new file mode 100644 >>> index 0000000..478f864 >>> --- /dev/null >>> +++ b/include/splash.h >>> @@ -0,0 +1,30 @@ >>> +/* >>> + * 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., 59 Temple Place, Suite 330, Boston, >>> + * MA 02111-1307 USA >> >> If you decide to drop the postal address, then please do it also here. >> >>> + */ >>> + >>> +#ifndef _SPLASH_H_ >>> +#define _SPLASH_H_ >>> + >>> + >>> +int splash_screen_prepare(void); >>> + >>> + >>> +#endif >>> >> >> -- >> Regards, >> Igor. > -- Regards, Igor. ^ permalink raw reply [flat|nested] 8+ messages in thread
* [U-Boot] [PATCH 1/2] video: lcd: Add CONFIG_SPLASH_SCREEN_PREPARE support to CONFIG_VIDEO 2013-06-18 6:20 ` Igor Grinberg @ 2013-06-18 16:50 ` Robert Winkler 0 siblings, 0 replies; 8+ messages in thread From: Robert Winkler @ 2013-06-18 16:50 UTC (permalink / raw) To: u-boot On Mon, Jun 17, 2013 at 11:20 PM, Igor Grinberg <grinberg@compulab.co.il> wrote: > > > On 06/17/13 20:08, Robert Winkler wrote: >> Hi Igor, >> >> On Sun, Jun 16, 2013 at 10:34 PM, Igor Grinberg <grinberg@compulab.co.il> wrote: >>> Hi Robert, >>> >>> On 06/14/13 20:00, Robert Winkler wrote: >>>> 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> >>> >>> Thanks for the effort! >>> Several comments below... >>> >>>> --- >>>> common/Makefile | 1 + >>>> common/lcd.c | 19 ++++++------------- >>>> common/splash.c | 37 +++++++++++++++++++++++++++++++++++++ >>>> drivers/video/cfb_console.c | 8 ++++++-- >>>> include/lcd.h | 1 - >>>> include/splash.h | 30 ++++++++++++++++++++++++++++++ >>>> 6 files changed, 80 insertions(+), 16 deletions(-) >>>> create mode 100644 common/splash.c >>>> create mode 100644 include/splash.h >>>> >>>> diff --git a/common/Makefile b/common/Makefile >>>> index 0e0fff1..1d70584 100644 >>>> --- a/common/Makefile >>>> +++ b/common/Makefile >>>> @@ -203,6 +203,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 >>> >>> I think this should depend on CONFIG_SPLASH_SCREEN. >> No it shouldn't. The function is always called so it always needs to >> be defined. It's the >> same behavior we had before, it was always compiled into lcd.h. >> Whether or not the CONFIG >> was defined just changed whether it actually called >> board_splash_screen_prepare or just returned 0. >> >> This is of course true for when it's a weak function as well. > > Well, what I meant is, once you make it a separate file (named splash.c), > it is rather strange that it should be always compiled. > It is fine for me now, but once more splash screen specific code moves > to this file, it surely should depend on CONFIG_SPLASH_SCREEN. > > In general, I think the construct of > 1) having the .c file compiled conditionally > (meaning depend on CONFIG_... option) > 2) having the .h file to define the interface to the .c file > and provide a default implementation > (when the above CONFIG_... is not set), > > like in many cases Linux does, brings the benefit of clear yet robust > (in regard to the CONFIG_... defined or not) code has proven itself. > Ah, I'm sorry, I misread that as SPLASH_SCREEN_PREPARE, but that makes more sense. However I haven't noticed any function definitions in h files in U-Boot and as it stands it has to be this way. Since a lot of the common code in lcd.c and cfb_console is unrelated to (or at least, not only used) for splash screens, maybe splash.c/h should be called something else and thus always included. Not sure what to call it, but something to do with logos/bmp probably. The overlap between lcd_init -> lcd_clear -> lcd_logo -> bmp_display and video_init -> video_logo -> video_display_bitmap is as much related to general bmp/logo display as splash screen functionality and it would probably be more sensible to pull it all out that than try to snip out only the splash screen stuff for splash.c Just an idea. >> >>> >>>> COBJS-$(CONFIG_LCD) += lcd.o >>>> COBJS-$(CONFIG_LYNXKDI) += lynxkdi.o >>>> COBJS-$(CONFIG_MENU) += menu.o >>>> diff --git a/common/lcd.c b/common/lcd.c >>>> index 3a60484..4a85ebb 100644 >>>> --- a/common/lcd.c >>>> +++ b/common/lcd.c >>>> @@ -43,6 +43,11 @@ >>>> #include <lcd.h> >>>> #include <watchdog.h> >>>> >>>> +/* >>>> + * Include splash.h for splash_screen_prepare() etc. >>>> + */ >>> >>> I think this comment is meaningless, the below include is self explanatory. >> Agreed. I was just trying to match the other superfluous comments. >>> >>>> +#include <splash.h> >>>> + >>>> #if defined(CONFIG_CPU_PXA25X) || defined(CONFIG_CPU_PXA27X) || \ >>>> defined(CONFIG_CPU_MONAHANS) >>>> #define CONFIG_CPU_PXA >>>> @@ -1072,18 +1077,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 +1089,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 >>>> diff --git a/common/splash.c b/common/splash.c >>>> new file mode 100644 >>>> index 0000000..fe13c69 >>>> --- /dev/null >>>> +++ b/common/splash.c >>>> @@ -0,0 +1,37 @@ >>>> +/* >>>> + * 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., 59 Temple Place, Suite 330, Boston, >>>> + * MA 02111-1307 USA >>> >>> I would drop the postal address, as it changed in the past and >>> probably will change in the future and then we will have a bunch of >>> files with wrong address... >> Good point, will do. >>> >>>> + */ >>>> + >>>> +#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) >>>> +{ >>>> + printf("SPLASH_SCREEN_PREPARE not defined\n"); >>>> + return 0; >>>> +} >>>> +#endif >>>> diff --git a/drivers/video/cfb_console.c b/drivers/video/cfb_console.c >>>> index b769222..4543730 100644 >>>> --- a/drivers/video/cfb_console.c >>>> +++ b/drivers/video/cfb_console.c >>>> @@ -178,6 +178,11 @@ >>>> #include <video_fb.h> >>>> >>>> /* >>>> + * Include splash.h for splash_screen_prepare() etc. >>>> + */ >>> >>> Same here, the below include does not need any comment. >>> >>>> +#include <splash.h> >>>> + >>>> +/* >>>> * some Macros >>>> */ >>>> #define VIDEO_VISIBLE_COLS (pGD->winSizeX) >>>> @@ -1991,10 +1996,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) { >>>> diff --git a/include/lcd.h b/include/lcd.h >>>> index 30225ed..79bf13e 100644 >>>> --- a/include/lcd.h >>>> +++ b/include/lcd.h >>>> @@ -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); >>>> diff --git a/include/splash.h b/include/splash.h >>>> new file mode 100644 >>>> index 0000000..478f864 >>>> --- /dev/null >>>> +++ b/include/splash.h >>>> @@ -0,0 +1,30 @@ >>>> +/* >>>> + * 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., 59 Temple Place, Suite 330, Boston, >>>> + * MA 02111-1307 USA >>> >>> If you decide to drop the postal address, then please do it also here. >>> >>>> + */ >>>> + >>>> +#ifndef _SPLASH_H_ >>>> +#define _SPLASH_H_ >>>> + >>>> + >>>> +int splash_screen_prepare(void); >>>> + >>>> + >>>> +#endif >>>> >>> >>> -- >>> Regards, >>> Igor. >> > > -- > Regards, > Igor. ^ permalink raw reply [flat|nested] 8+ messages in thread
* [U-Boot] [PATCH 2/2] video: lcd: Make splash_screen_prepare weak, remove config macro 2013-06-14 17:00 [U-Boot] [PATCH 0/2] video: lcd: splash screen prepare changes Robert Winkler 2013-06-14 17:00 ` [U-Boot] [PATCH 1/2] video: lcd: Add CONFIG_SPLASH_SCREEN_PREPARE support to CONFIG_VIDEO Robert Winkler @ 2013-06-14 17:00 ` Robert Winkler 2013-06-17 5:48 ` [U-Boot] [PATCH 0/2] video: lcd: splash screen prepare changes Igor Grinberg 2 siblings, 0 replies; 8+ messages in thread From: Robert Winkler @ 2013-06-14 17:00 UTC (permalink / raw) To: u-boot Remove CONFIG_SPLASH_SCREEN_PREPARE from README Add doc/README.splashprepare to document functionality Signed-off-by: Robert Winkler <robert.winkler@boundarydevices.com> --- README | 8 -------- common/splash.c | 14 ++++---------- doc/README.splashprepare | 8 ++++++++ 3 files changed, 12 insertions(+), 18 deletions(-) create mode 100644 doc/README.splashprepare diff --git a/README b/README index 0d37d56..fd3d3a5 100644 --- a/README +++ b/README @@ -1604,14 +1604,6 @@ CBFS (Coreboot Filesystem) support => vertically centered image at x = dspWidth - bmpWidth - 9 - CONFIG_SPLASH_SCREEN_PREPARE - - If this option is set then the board_splash_screen_prepare() - function, which must be defined in your code, is called as part - of the splash screen display sequence. It gives the board an - opportunity to prepare the splash image data before it is - processed and sent to the frame buffer by U-Boot. - - Gzip compressed BMP image support: CONFIG_VIDEO_BMP_GZIP If this option is set, additionally to standard BMP diff --git a/common/splash.c b/common/splash.c index fe13c69..c40861a 100644 --- a/common/splash.c +++ b/common/splash.c @@ -21,17 +21,11 @@ */ #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) +int __splash_screen_prepare(void) { - printf("SPLASH_SCREEN_PREPARE not defined\n"); return 0; } -#endif + +int splash_screen_prepare(void) + __attribute__ ((weak, alias("__splash_screen_prepare"))); diff --git a/doc/README.splashprepare b/doc/README.splashprepare new file mode 100644 index 0000000..8d103bf --- /dev/null +++ b/doc/README.splashprepare @@ -0,0 +1,8 @@ +--------------------------------------------------------------------- +Splash Screen +--------------------------------------------------------------------- +The splash_screen_prepare() function is a weak function defined in +common/splash.c. It is called as part of the splash screen display +sequence. It gives the board an opportunity to prepare the splash +image data before it is processed and sent to the frame buffer by +U-Boot. Define your own version to use this feature. -- 1.8.3 ^ permalink raw reply related [flat|nested] 8+ messages in thread
* [U-Boot] [PATCH 0/2] video: lcd: splash screen prepare changes 2013-06-14 17:00 [U-Boot] [PATCH 0/2] video: lcd: splash screen prepare changes Robert Winkler 2013-06-14 17:00 ` [U-Boot] [PATCH 1/2] video: lcd: Add CONFIG_SPLASH_SCREEN_PREPARE support to CONFIG_VIDEO Robert Winkler 2013-06-14 17:00 ` [U-Boot] [PATCH 2/2] video: lcd: Make splash_screen_prepare weak, remove config macro Robert Winkler @ 2013-06-17 5:48 ` Igor Grinberg 2 siblings, 0 replies; 8+ messages in thread From: Igor Grinberg @ 2013-06-17 5:48 UTC (permalink / raw) To: u-boot On 06/14/13 20:00, Robert Winkler wrote: > These 2 patches are the result of discussion in these threads: > http://lists.denx.de/pipermail/u-boot/2013-May/155463.html > http://lists.denx.de/pipermail/u-boot/2013-June/155630.html > http://lists.denx.de/pipermail/u-boot/2013-June/155632.html > > The upshot is, move splash_screen_prepare to a common location > so it can be used in cfb_console.c and (possibly) make it weak. > > These 2 patches do that and the first can be accepted without the > second if we decide not to make it weak. > > One other note, I'm submitting this based on Anatolij's tree since > it's video related but board/compulab/cm_t35 does not exist in his > tree. That's because recently I've moved it from board/cm_t35 to board/compulab/cm_t35 and probably Anatolij has not updated his tree to the latest upstream. > If the second patch is accepted, cm_t35 will have to change > since it uses the non-weak method. I will submit an optional 3rd > patch to Stefano's tree with the necessary changes. > > > Robert Winkler (2): > video: lcd: Add CONFIG_SPLASH_SCREEN_PREPARE support to CONFIG_VIDEO > video: lcd: Make splash_screen_prepare weak, remove config macro > > README | 8 -------- > common/Makefile | 1 + > common/lcd.c | 19 ++++++------------- > common/splash.c | 31 +++++++++++++++++++++++++++++++ > doc/README.splashprepare | 8 ++++++++ > drivers/video/cfb_console.c | 8 ++++++-- > include/lcd.h | 1 - > include/splash.h | 30 ++++++++++++++++++++++++++++++ > 8 files changed, 82 insertions(+), 24 deletions(-) > create mode 100644 common/splash.c > create mode 100644 doc/README.splashprepare > create mode 100644 include/splash.h > -- Regards, Igor. ^ permalink raw reply [flat|nested] 8+ messages in thread
end of thread, other threads:[~2013-06-18 16:50 UTC | newest] Thread overview: 8+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2013-06-14 17:00 [U-Boot] [PATCH 0/2] video: lcd: splash screen prepare changes Robert Winkler 2013-06-14 17:00 ` [U-Boot] [PATCH 1/2] video: lcd: Add CONFIG_SPLASH_SCREEN_PREPARE support to CONFIG_VIDEO Robert Winkler 2013-06-17 5:34 ` Igor Grinberg 2013-06-17 17:08 ` Robert Winkler 2013-06-18 6:20 ` Igor Grinberg 2013-06-18 16:50 ` Robert Winkler 2013-06-14 17:00 ` [U-Boot] [PATCH 2/2] video: lcd: Make splash_screen_prepare weak, remove config macro Robert Winkler 2013-06-17 5:48 ` [U-Boot] [PATCH 0/2] video: lcd: splash screen prepare changes Igor Grinberg
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox