summaryrefslogtreecommitdiff
path: root/common/splash.c
diff options
context:
space:
mode:
authorAnatolij Gustschin <agust@denx.de>2013-07-01 22:04:05 (GMT)
committerAnatolij Gustschin <agust@denx.de>2013-07-08 18:21:24 (GMT)
commitff8fb56b6f7edafc1bcba8ef008b3f368cabe60d (patch)
tree2db117f992892120bab9ab04b212700642adf0e7 /common/splash.c
parent327598945b13000065ca6ba3fe96c9bd45320999 (diff)
downloadu-boot-ff8fb56b6f7edafc1bcba8ef008b3f368cabe60d.tar.xz
video: consolidate splash screen alignment code
Code for checking "splashpos" environment variable is duplicated in drivers, move it to the common function. Call this function also in the bmp display command to consider "splashpos" settings. Signed-off-by: Anatolij Gustschin <agust@denx.de> Acked-by: Otavio Salvador <otavio@ossystems.com.br>
Diffstat (limited to 'common/splash.c')
-rw-r--r--common/splash.c25
1 files changed, 25 insertions, 0 deletions
diff --git a/common/splash.c b/common/splash.c
index c744497..18885f1 100644
--- a/common/splash.c
+++ b/common/splash.c
@@ -20,6 +20,7 @@
*
*/
+#include <common.h>
#include <splash.h>
int __splash_screen_prepare(void)
@@ -29,3 +30,27 @@ int __splash_screen_prepare(void)
int splash_screen_prepare(void)
__attribute__ ((weak, alias("__splash_screen_prepare")));
+
+
+#ifdef CONFIG_SPLASH_SCREEN_ALIGN
+void splash_get_pos(int *x, int *y)
+{
+ char *s = getenv("splashpos");
+
+ if (!s)
+ return;
+
+ if (s[0] == 'm')
+ *x = BMP_ALIGN_CENTER;
+ else
+ *x = simple_strtol(s, NULL, 0);
+
+ s = strchr(s + 1, ',');
+ if (s != NULL) {
+ if (s[1] == 'm')
+ *y = BMP_ALIGN_CENTER;
+ else
+ *y = simple_strtol(s + 1, NULL, 0);
+ }
+}
+#endif /* CONFIG_SPLASH_SCREEN_ALIGN */