]>
Commit | Line | Data |
---|---|---|
1 | /* | |
2 | * Copyright (C) 2013, Boundary Devices <info@boundarydevices.com> | |
3 | * | |
4 | * See file CREDITS for list of people who contributed to this | |
5 | * project. | |
6 | * | |
7 | * This program is free software; you can redistribute it and/or | |
8 | * modify it under the terms of the GNU General Public License as | |
9 | * published by the Free Software Foundation; either version 2 of | |
10 | * the License, or (at your option) any later version. | |
11 | * | |
12 | * This program is distributed in the hope that it will be useful, | |
13 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | |
14 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
15 | * GNU General Public License for more details. | |
16 | * | |
17 | * You should have received a copy of the GNU General Public License | |
18 | * along with this program; if not, write to the Free Software | |
19 | * Foundation, Inc., http://www.fsf.org/about/contact/ | |
20 | */ | |
21 | ||
22 | #ifndef _SPLASH_H_ | |
23 | #define _SPLASH_H_ | |
24 | ||
25 | #include <errno.h> | |
26 | ||
27 | enum splash_storage { | |
28 | SPLASH_STORAGE_NAND, | |
29 | SPLASH_STORAGE_SF, | |
30 | SPLASH_STORAGE_MMC, | |
31 | SPLASH_STORAGE_USB, | |
32 | SPLASH_STORAGE_SATA, | |
33 | }; | |
34 | ||
35 | enum splash_flags { | |
36 | SPLASH_STORAGE_RAW, /* Stored in raw memory */ | |
37 | SPLASH_STORAGE_FS, /* Stored within a file system */ | |
38 | SPLASH_STORAGE_FIT, /* Stored inside a FIT image */ | |
39 | }; | |
40 | ||
41 | struct splash_location { | |
42 | char *name; | |
43 | enum splash_storage storage; | |
44 | enum splash_flags flags; | |
45 | u32 offset; /* offset from start of storage */ | |
46 | char *devpart; /* Use the load command dev:part conventions */ | |
47 | char *mtdpart; /* MTD partition for ubi part */ | |
48 | char *ubivol; /* UBI volume-name for ubifsmount */ | |
49 | }; | |
50 | ||
51 | #ifdef CONFIG_SPLASH_SOURCE | |
52 | int splash_source_load(struct splash_location *locations, uint size); | |
53 | #else | |
54 | static inline int splash_source_load(struct splash_location *locations, | |
55 | uint size) | |
56 | { | |
57 | return 0; | |
58 | } | |
59 | #endif | |
60 | ||
61 | int splash_screen_prepare(void); | |
62 | ||
63 | #ifdef CONFIG_SPLASH_SCREEN_ALIGN | |
64 | void splash_get_pos(int *x, int *y); | |
65 | #else | |
66 | static inline void splash_get_pos(int *x, int *y) { } | |
67 | #endif | |
68 | ||
69 | #if defined(CONFIG_SPLASH_SCREEN) && defined(CONFIG_LCD) | |
70 | int lcd_splash(ulong addr); | |
71 | #else | |
72 | static inline int lcd_splash(ulong addr) | |
73 | { | |
74 | return -ENOSYS; | |
75 | } | |
76 | #endif | |
77 | ||
78 | #define BMP_ALIGN_CENTER 0x7FFF | |
79 | ||
80 | #endif |