1*b2441318SGreg Kroah-Hartman /* SPDX-License-Identifier: GPL-2.0 */ 21da177e4SLinus Torvalds #ifndef _LINUX_LINUX_LOGO_H 31da177e4SLinus Torvalds #define _LINUX_LINUX_LOGO_H 41da177e4SLinus Torvalds 51da177e4SLinus Torvalds /* 61da177e4SLinus Torvalds * Linux logo to be displayed on boot 71da177e4SLinus Torvalds * 81da177e4SLinus Torvalds * Copyright (C) 1996 Larry Ewing ([email protected]) 91da177e4SLinus Torvalds * Copyright (C) 1996,1998 Jakub Jelinek ([email protected]) 101da177e4SLinus Torvalds * Copyright (C) 2001 Greg Banks <[email protected]> 111da177e4SLinus Torvalds * Copyright (C) 2001 Jan-Benedict Glaw <[email protected]> 121da177e4SLinus Torvalds * Copyright (C) 2003 Geert Uytterhoeven <[email protected]> 131da177e4SLinus Torvalds */ 141da177e4SLinus Torvalds 151da177e4SLinus Torvalds #include <linux/init.h> 161da177e4SLinus Torvalds 171da177e4SLinus Torvalds 181da177e4SLinus Torvalds #define LINUX_LOGO_MONO 1 /* monochrome black/white */ 191da177e4SLinus Torvalds #define LINUX_LOGO_VGA16 2 /* 16 colors VGA text palette */ 201da177e4SLinus Torvalds #define LINUX_LOGO_CLUT224 3 /* 224 colors */ 211da177e4SLinus Torvalds #define LINUX_LOGO_GRAY256 4 /* 256 levels grayscale */ 221da177e4SLinus Torvalds 231da177e4SLinus Torvalds 241da177e4SLinus Torvalds struct linux_logo { 251da177e4SLinus Torvalds int type; /* one of LINUX_LOGO_* */ 261da177e4SLinus Torvalds unsigned int width; 271da177e4SLinus Torvalds unsigned int height; 281da177e4SLinus Torvalds unsigned int clutsize; /* LINUX_LOGO_CLUT224 only */ 291da177e4SLinus Torvalds const unsigned char *clut; /* LINUX_LOGO_CLUT224 only */ 301da177e4SLinus Torvalds const unsigned char *data; 311da177e4SLinus Torvalds }; 321da177e4SLinus Torvalds 33ae52bb23SGeert Uytterhoeven extern const struct linux_logo logo_linux_mono; 34ae52bb23SGeert Uytterhoeven extern const struct linux_logo logo_linux_vga16; 35ae52bb23SGeert Uytterhoeven extern const struct linux_logo logo_linux_clut224; 36ae52bb23SGeert Uytterhoeven extern const struct linux_logo logo_dec_clut224; 37ae52bb23SGeert Uytterhoeven extern const struct linux_logo logo_mac_clut224; 38ae52bb23SGeert Uytterhoeven extern const struct linux_logo logo_parisc_clut224; 39ae52bb23SGeert Uytterhoeven extern const struct linux_logo logo_sgi_clut224; 40ae52bb23SGeert Uytterhoeven extern const struct linux_logo logo_sun_clut224; 41ae52bb23SGeert Uytterhoeven extern const struct linux_logo logo_superh_mono; 42ae52bb23SGeert Uytterhoeven extern const struct linux_logo logo_superh_vga16; 43ae52bb23SGeert Uytterhoeven extern const struct linux_logo logo_superh_clut224; 44ae52bb23SGeert Uytterhoeven extern const struct linux_logo logo_spe_clut224; 45ae52bb23SGeert Uytterhoeven 461da177e4SLinus Torvalds extern const struct linux_logo *fb_find_logo(int depth); 479900abfbSGeert Uytterhoeven #ifdef CONFIG_FB_LOGO_EXTRA 489900abfbSGeert Uytterhoeven extern void fb_append_extra_logo(const struct linux_logo *logo, 499900abfbSGeert Uytterhoeven unsigned int n); 509900abfbSGeert Uytterhoeven #else fb_append_extra_logo(const struct linux_logo * logo,unsigned int n)519900abfbSGeert Uytterhoevenstatic inline void fb_append_extra_logo(const struct linux_logo *logo, 529900abfbSGeert Uytterhoeven unsigned int n) 539900abfbSGeert Uytterhoeven {} 549900abfbSGeert Uytterhoeven #endif 551da177e4SLinus Torvalds 561da177e4SLinus Torvalds #endif /* _LINUX_LINUX_LOGO_H */ 57