X-Git-Url: https://git.kernelconcepts.de/?a=blobdiff_plain;f=include%2Flcd.h;h=c167946eb222d23b963d262aa303319d972a888d;hb=8ec346e17b5bf6897f038b8ecc3ecd073e097a22;hp=267915219cf32a9616d1515914712815778f6ab6;hpb=d0f34f10f14853ebe3f75371533708aa0639d830;p=karo-tx-uboot.git diff --git a/include/lcd.h b/include/lcd.h index 267915219c..c167946eb2 100644 --- a/include/lcd.h +++ b/include/lcd.h @@ -1,4 +1,6 @@ /* + * Copyright (C) 2004-2010 Freescale Semiconductor, Inc. + * * MPC823 and PXA LCD Controller * * Modeled after video interface by Paolo Scaffardi @@ -7,23 +9,7 @@ * (C) Copyright 2001 * Wolfgang Denk, DENX Software Engineering, wd@denx.de. * - * See file CREDITS for list of people who contributed to this - * project. - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public License as - * published by the Free Software Foundation; either version 2 of - * the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, - * MA 02111-1307 USA + * SPDX-License-Identifier: GPL-2.0+ */ #ifndef _LCD_H_ @@ -37,7 +23,6 @@ extern struct vidinfo panel_info; void lcd_ctrl_init(void *lcdbase); void lcd_enable(void); -int board_splash_screen_prepare(void); /* setcolreg used in 8bpp/16bpp; initcolregs used in monochrome */ void lcd_setcolreg(ushort regno, ushort red, ushort green, ushort blue); @@ -46,7 +31,8 @@ void lcd_initcolregs(void); int lcd_getfgcolor(void); /* gunzip_bmp used if CONFIG_VIDEO_BMP_GZIP */ -struct bmp_image *gunzip_bmp(unsigned long addr, unsigned long *lenp); +struct bmp_image *gunzip_bmp(unsigned long addr, unsigned long *lenp, + void **alloc_addr); int bmp_display(ulong addr, int x, int y); /** @@ -225,15 +211,6 @@ typedef struct vidinfo { u_char vl_vbpd; /* Wait end of frame */ u_char vl_cmd_allow_len; /* Wait end of frame */ - void (*cfg_gpio)(void); - void (*backlight_on)(unsigned int onoff); - void (*reset_lcd)(void); - void (*lcd_power_on)(void); - void (*cfg_ldo)(void); - void (*enable_ldo)(unsigned int onoff); - void (*mipi_power)(void); - void (*backlight_reset)(void); - unsigned int win_id; unsigned int init_delay; unsigned int power_on_delay; @@ -281,9 +258,8 @@ extern vidinfo_t panel_info; /* Video functions */ -#if defined(CONFIG_RBC823) void lcd_disable(void); -#endif +void lcd_panel_disable(void); void lcd_putc(const char c); void lcd_puts(const char *s); @@ -333,6 +309,9 @@ void lcd_show_board_info(void); /* Return the size of the LCD frame buffer, and the line length */ int lcd_get_size(int *line_length); +int lcd_dt_simplefb_add_node(void *blob); +int lcd_dt_simplefb_enable_existing_node(void *blob); + /************************************************************************/ /* ** BITMAP DISPLAY SUPPORT */ /************************************************************************/ @@ -354,6 +333,7 @@ int lcd_get_size(int *line_length); #define LCD_COLOR4 2 #define LCD_COLOR8 3 #define LCD_COLOR16 4 +#define LCD_COLOR24 5 /*----------------------------------------------------------------------*/ #if defined(CONFIG_LCD_INFO_BELOW_LOGO) @@ -405,14 +385,36 @@ int lcd_get_size(int *line_length); # define CONSOLE_COLOR_GREY 14 # define CONSOLE_COLOR_WHITE 15 /* Must remain last / highest */ -#else +#elif LCD_BPP == LCD_COLOR16 /* * 16bpp color definitions */ # define CONSOLE_COLOR_BLACK 0x0000 +# define CONSOLE_COLOR_RED 0xf800 +# define CONSOLE_COLOR_GREEN 0x07e0 +# define CONSOLE_COLOR_YELLOW 0xffe0 +# define CONSOLE_COLOR_BLUE 0x001f +# define CONSOLE_COLOR_MAGENTA 0xf81f +# define CONSOLE_COLOR_CYAN 0x07ff +# define CONSOLE_COLOR_GREY 0xcccc # define CONSOLE_COLOR_WHITE 0xffff /* Must remain last / highest */ +#elif LCD_BPP == LCD_COLOR24 +/* + * 16bpp color definitions + */ +# define CONSOLE_COLOR_BLACK 0x00000000 +# define CONSOLE_COLOR_RED 0x00ff0000 +# define CONSOLE_COLOR_GREEN 0x0000ff00 +# define CONSOLE_COLOR_YELLOW 0x00ffff00 +# define CONSOLE_COLOR_BLUE 0x000000ff +# define CONSOLE_COLOR_MAGENTA 0x00ff00ff +# define CONSOLE_COLOR_CYAN 0x0000ffff +# define CONSOLE_COLOR_GREY 0x00cccccc +# define CONSOLE_COLOR_WHITE 0x00ffffff /* Must remain last / highest */ +#else +#error Invalid LCD_BPP setting #endif /* color definitions */ /************************************************************************/