colibri_imx6: fix video stdout in default environment
[oweals/u-boot.git] / include / splash.h
index 89ee7b22ec2b324f4c29f37018242a91a42259a7..7fd2de8fea1dd582f5b6f9e936d86b764bde6ec4 100644 (file)
 #ifndef _SPLASH_H_
 #define _SPLASH_H_
 
+#include <errno.h>
+
+enum splash_storage {
+       SPLASH_STORAGE_NAND,
+       SPLASH_STORAGE_SF,
+       SPLASH_STORAGE_MMC,
+       SPLASH_STORAGE_USB,
+       SPLASH_STORAGE_SATA,
+};
+
+enum splash_flags {
+       SPLASH_STORAGE_RAW, /* Stored in raw memory */
+       SPLASH_STORAGE_FS,  /* Stored within a file system */
+       SPLASH_STORAGE_FIT, /* Stored inside a FIT image */
+};
+
+struct splash_location {
+       char *name;
+       enum splash_storage storage;
+       enum splash_flags flags;
+       u32 offset;     /* offset from start of storage */
+       char *devpart;  /* Use the load command dev:part conventions */
+       char *mtdpart;  /* MTD partition for ubi part */
+       char *ubivol;   /* UBI volume-name for ubifsmount */
+};
+
+#ifdef CONFIG_SPLASH_SOURCE
+int splash_source_load(struct splash_location *locations, uint size);
+#else
+static inline int splash_source_load(struct splash_location *locations,
+                                    uint size)
+{
+       return 0;
+}
+#endif
 
 int splash_screen_prepare(void);
 
@@ -31,6 +66,15 @@ void splash_get_pos(int *x, int *y);
 static inline void splash_get_pos(int *x, int *y) { }
 #endif
 
+#if defined(CONFIG_SPLASH_SCREEN) && defined(CONFIG_CMD_BMP)
+int splash_display(void);
+#else
+static inline int splash_display(void)
+{
+       return -ENOSYS;
+}
+#endif
+
 #define BMP_ALIGN_CENTER       0x7FFF
 
 #endif