xref: /openbmc/linux/include/linux/linux_logo.h (revision 5a86bf34)
1 #ifndef _LINUX_LINUX_LOGO_H
2 #define _LINUX_LINUX_LOGO_H
3 
4 /*
5  *  Linux logo to be displayed on boot
6  *
7  *  Copyright (C) 1996 Larry Ewing (lewing@isc.tamu.edu)
8  *  Copyright (C) 1996,1998 Jakub Jelinek (jj@sunsite.mff.cuni.cz)
9  *  Copyright (C) 2001 Greg Banks <gnb@alphalink.com.au>
10  *  Copyright (C) 2001 Jan-Benedict Glaw <jbglaw@lug-owl.de>
11  *  Copyright (C) 2003 Geert Uytterhoeven <geert@linux-m68k.org>
12  *
13  *  Serial_console ascii image can be any size,
14  *  but should contain %s to display the version
15  */
16 
17 #include <linux/init.h>
18 
19 
20 #define LINUX_LOGO_MONO		1	/* monochrome black/white */
21 #define LINUX_LOGO_VGA16	2	/* 16 colors VGA text palette */
22 #define LINUX_LOGO_CLUT224	3	/* 224 colors */
23 #define LINUX_LOGO_GRAY256	4	/* 256 levels grayscale */
24 
25 
26 struct linux_logo {
27 	int type;			/* one of LINUX_LOGO_* */
28 	unsigned int width;
29 	unsigned int height;
30 	unsigned int clutsize;		/* LINUX_LOGO_CLUT224 only */
31 	const unsigned char *clut;	/* LINUX_LOGO_CLUT224 only */
32 	const unsigned char *data;
33 };
34 
35 extern const struct linux_logo logo_linux_mono;
36 extern const struct linux_logo logo_linux_vga16;
37 extern const struct linux_logo logo_linux_clut224;
38 extern const struct linux_logo logo_blackfin_vga16;
39 extern const struct linux_logo logo_blackfin_clut224;
40 extern const struct linux_logo logo_dec_clut224;
41 extern const struct linux_logo logo_mac_clut224;
42 extern const struct linux_logo logo_parisc_clut224;
43 extern const struct linux_logo logo_sgi_clut224;
44 extern const struct linux_logo logo_sun_clut224;
45 extern const struct linux_logo logo_superh_mono;
46 extern const struct linux_logo logo_superh_vga16;
47 extern const struct linux_logo logo_superh_clut224;
48 extern const struct linux_logo logo_m32r_clut224;
49 extern const struct linux_logo logo_spe_clut224;
50 
51 extern const struct linux_logo *fb_find_logo(int depth);
52 #ifdef CONFIG_FB_LOGO_EXTRA
53 extern void fb_append_extra_logo(const struct linux_logo *logo,
54 				 unsigned int n);
55 #else
56 static inline void fb_append_extra_logo(const struct linux_logo *logo,
57 					unsigned int n)
58 {}
59 #endif
60 
61 #endif /* _LINUX_LINUX_LOGO_H */
62