X-Git-Url: https://git.sur5r.net/?a=blobdiff_plain;f=include%2Flcd.h;h=cb6b6a4d12a76f839ad9ab8466a88fca0fd64ef1;hb=ff32245bb3b57689cd7b1699ae29ff8fc0edc0d8;hp=b0423205bfa50c172198d3fa3b1473cbe95f1ccc;hpb=c8d2febcc7e328d1c4bb11131ecd0b9cbab2f4fb;p=u-boot diff --git a/include/lcd.h b/include/lcd.h index b0423205bf..cb6b6a4d12 100644 --- a/include/lcd.h +++ b/include/lcd.h @@ -1,3 +1,4 @@ +/* SPDX-License-Identifier: GPL-2.0+ */ /* * MPC823 and PXA LCD Controller * @@ -6,8 +7,6 @@ * * (C) Copyright 2001 * Wolfgang Denk, DENX Software Engineering, wd@denx.de. - * - * SPDX-License-Identifier: GPL-2.0+ */ #ifndef _LCD_H_ @@ -18,6 +17,12 @@ #include #endif +int bmp_display(ulong addr, int x, int y); +struct bmp_image *gunzip_bmp(unsigned long addr, unsigned long *lenp, + void **alloc_addr); + +#ifndef CONFIG_DM_VIDEO + extern char lcd_is_enabled; extern int lcd_line_length; extern struct vidinfo panel_info; @@ -26,10 +31,6 @@ void lcd_ctrl_init(void *lcdbase); void lcd_enable(void); void lcd_setcolreg(ushort regno, ushort red, ushort green, ushort blue); -struct bmp_image *gunzip_bmp(unsigned long addr, unsigned long *lenp, - void **alloc_addr); -int bmp_display(ulong addr, int x, int y); - /** * Set whether we need to flush the dcache when changing the LCD image. This * defaults to off. @@ -38,9 +39,7 @@ int bmp_display(ulong addr, int x, int y); */ void lcd_set_flush_dcache(int flush); -#if defined CONFIG_MPC823 -#include -#elif defined(CONFIG_CPU_PXA25X) || defined(CONFIG_CPU_PXA27X) || \ +#if defined(CONFIG_CPU_PXA25X) || defined(CONFIG_CPU_PXA27X) || \ defined CONFIG_CPU_MONAHANS #include #elif defined(CONFIG_ATMEL_LCD) || defined(CONFIG_ATMEL_HLCD) @@ -51,6 +50,7 @@ void lcd_set_flush_dcache(int flush); typedef struct vidinfo { ushort vl_col; /* Number of columns (i.e. 160) */ ushort vl_row; /* Number of rows (i.e. 100) */ + ushort vl_rot; /* Rotation of Display (0, 1, 2, 3) */ u_char vl_bpix; /* Bits per pixel, 0 = 1 */ ushort *cmap; /* Pointer to the colormap */ void *priv; /* Pointer to driver-specific data */ @@ -128,9 +128,6 @@ 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); - /* Update the LCD / flush the cache */ void lcd_sync(void); @@ -195,12 +192,29 @@ void lcd_sync(void); #define CONSOLE_COLOR_WHITE 0x00ffffff /* Must remain last / highest */ #define NBYTES(bit_code) (NBITS(bit_code) >> 3) #else /* 16bpp color definitions */ -#define CONSOLE_COLOR_BLACK 0x0000 -#define CONSOLE_COLOR_WHITE 0xffff /* Must remain last / highest */ +# 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 0xC618 +# define CONSOLE_COLOR_WHITE 0xffff /* Must remain last / highest */ #endif /* color definitions */ +#if LCD_BPP == LCD_COLOR16 +#define fbptr_t ushort +#elif LCD_BPP == LCD_COLOR32 +#define fbptr_t u32 +#else +#define fbptr_t uchar +#endif + #ifndef PAGE_SIZE #define PAGE_SIZE 4096 #endif +#endif /* !CONFIG_DM_VIDEO */ + #endif /* _LCD_H_ */