summaryrefslogtreecommitdiffstats
path: root/commands
diff options
context:
space:
mode:
authorSascha Hauer <s.hauer@pengutronix.de>2015-09-01 09:43:53 +0200
committerSascha Hauer <s.hauer@pengutronix.de>2015-09-01 09:43:53 +0200
commitb6b7203acaaf56c02aeadcdc677152b750481cdc (patch)
treea2e7a1b90fb059f0250caacc5f5bca0ed9ef4d60 /commands
parent2df4ac1f8d209af7fa0cab1caac16dad03663c6f (diff)
parent2b7e24c1e967dce9672800bf64afa15e6090bbb8 (diff)
downloadbarebox-b6b7203acaaf56c02aeadcdc677152b750481cdc.tar.gz
barebox-b6b7203acaaf56c02aeadcdc677152b750481cdc.tar.xz
Merge branch 'for-next/fb'
Diffstat (limited to 'commands')
-rw-r--r--commands/Kconfig1
-rw-r--r--commands/splash.c21
2 files changed, 8 insertions, 14 deletions
diff --git a/commands/Kconfig b/commands/Kconfig
index 133dcbf22c..25ed9ddafb 100644
--- a/commands/Kconfig
+++ b/commands/Kconfig
@@ -1458,6 +1458,7 @@ endif
config CMD_SPLASH
bool
select IMAGE_RENDERER
+ depends on VIDEO
prompt "splash"
help
Display a BMP image on a framebuffer device
diff --git a/commands/splash.c b/commands/splash.c
index 90f0a0cdf2..15b296b680 100644
--- a/commands/splash.c
+++ b/commands/splash.c
@@ -15,9 +15,9 @@ static int do_splash(int argc, char *argv[])
int opt;
char *fbdev = "/dev/fb0";
char *image_file;
- int offscreen = 0;
u32 bg_color = 0x00000000;
bool do_bg = false;
+ void *buf;
memset(&s, 0, sizeof(s));
@@ -41,8 +41,6 @@ static int do_splash(int argc, char *argv[])
case 'y':
s.y = simple_strtoul(optarg, NULL, 0);
break;
- case 'o':
- offscreen = 1;
}
}
@@ -52,21 +50,17 @@ static int do_splash(int argc, char *argv[])
}
image_file = argv[optind];
- sc = fb_open(fbdev, offscreen);
+ sc = fb_open(fbdev);
if (IS_ERR(sc)) {
perror("fd_open");
return PTR_ERR(sc);
}
- if (sc->offscreenbuf) {
- if (do_bg)
- gu_memset_pixel(sc->info, sc->offscreenbuf, bg_color,
- sc->s.width * sc->s.height);
- else
- memcpy(sc->offscreenbuf, sc->fb, sc->fbsize);
- } else if (do_bg) {
- gu_memset_pixel(sc->info, sc->fb, bg_color, sc->s.width * sc->s.height);
- }
+ buf = gui_screen_render_buffer(sc);
+
+ if (do_bg)
+ gu_memset_pixel(sc->info, buf, bg_color,
+ sc->s.width * sc->s.height);
ret = image_renderer_file(sc, &s, image_file);
if (ret > 0)
@@ -89,7 +83,6 @@ BAREBOX_CMD_HELP_OPT ("-f FB\t", "framebuffer device (default /dev/fb0)")
BAREBOX_CMD_HELP_OPT ("-x XOFFS", "x offset (default center)")
BAREBOX_CMD_HELP_OPT ("-y YOFFS", "y offset (default center)")
BAREBOX_CMD_HELP_OPT ("-b COLOR", "background color in 0xttrrggbb")
-BAREBOX_CMD_HELP_OPT ("-o\t", "render offscreen")
BAREBOX_CMD_HELP_END
BAREBOX_CMD_START(splash)