lcd: various cleanups

This cleanup mostly focuses on removing unnecessary whitespace and comments
which are superfluous and/or do not conform to the coding style.

Signed-off-by: Nikita Kiryanov <nikita@compulab.co.il>
Reviewed-by: Simon Glass <sjg@chromium.org>
Tested-by: Bo Shen <voice.shen@atmel.com>
Tested-by: Josh Wu <josh.wu@atmel.com>
Cc: Simon Glass <sjg@chromium.org>
Cc: Anatolij Gustschin <agust@denx.de>
master
Nikita Kiryanov 9 years ago committed by Anatolij Gustschin
parent 8ddfe2fad8
commit c8d2febcc7
  1. 90
      common/lcd.c
  2. 102
      include/lcd.h

@ -1,5 +1,5 @@
/*
* Common LCD routines for supported CPUs
* Common LCD routines
*
* (C) Copyright 2001-2002
* Wolfgang Denk, DENX Software Engineering -- wd@denx.de
@ -7,12 +7,7 @@
* SPDX-License-Identifier: GPL-2.0+
*/
/************************************************************************/
/* ** HEADER FILES */
/************************************************************************/
/* #define DEBUG */
#include <config.h>
#include <common.h>
#include <command.h>
@ -26,25 +21,18 @@
#include <asm/io.h>
#include <asm/unaligned.h>
#include <fdt_support.h>
#include <video_font.h>
#if defined(CONFIG_LCD_DT_SIMPLEFB)
#include <libfdt.h>
#endif
/************************************************************************/
/* ** FONT DATA */
/************************************************************************/
#include <video_font.h> /* Get font data, width and height */
/************************************************************************/
/* ** LOGO DATA */
/************************************************************************/
#ifdef CONFIG_LCD_LOGO
# include <bmp_logo.h> /* Get logo data, width and height */
# include <bmp_logo_data.h>
# if (CONSOLE_COLOR_WHITE >= BMP_LOGO_OFFSET) && (LCD_BPP != LCD_COLOR16)
# error Default Color Map overlaps with Logo Color Map
# endif
#include <bmp_logo.h>
#include <bmp_logo_data.h>
#if (CONSOLE_COLOR_WHITE >= BMP_LOGO_OFFSET) && (LCD_BPP != LCD_COLOR16)
#error Default Color Map overlaps with Logo Color Map
#endif
#endif
#ifdef CONFIG_SANDBOX
@ -57,30 +45,23 @@
#if (LCD_BPP != LCD_COLOR8) && (LCD_BPP != LCD_COLOR16) && \
(LCD_BPP != LCD_COLOR32)
# error Unsupported LCD BPP.
#error Unsupported LCD BPP.
#endif
DECLARE_GLOBAL_DATA_PTR;
static int lcd_init(void *lcdbase);
static void *lcd_logo(void);
static void lcd_setfgcolor(int color);
static void lcd_setbgcolor(int color);
static int lcd_color_fg;
static int lcd_color_bg;
int lcd_line_length;
char lcd_is_enabled = 0;
static void *lcd_base; /* Start of framebuffer memory */
static char lcd_flush_dcache; /* 1 to flush dcache after each lcd update */
/************************************************************************/
/* Flush LCD activity to the caches */
void lcd_sync(void)
{
@ -110,8 +91,6 @@ void lcd_set_flush_dcache(int flush)
lcd_flush_dcache = (flush != 0);
}
/*----------------------------------------------------------------------*/
static void lcd_stub_putc(struct stdio_dev *dev, const char c)
{
lcd_putc(c);
@ -122,9 +101,7 @@ static void lcd_stub_puts(struct stdio_dev *dev, const char *s)
lcd_puts(s);
}
/************************************************************************/
/** Small utility to check that you got the colours right */
/************************************************************************/
/* Small utility to check that you got the colours right */
#ifdef LCD_TEST_PATTERN
#define N_BLK_VERT 2
@ -158,10 +135,6 @@ static void test_pattern(void)
}
#endif /* LCD_TEST_PATTERN */
/************************************************************************/
/* ** GENERIC Initialization Routines */
/************************************************************************/
/*
* With most lcd drivers the line length is set up
* by calculating it from panel_info parameters. Some
@ -181,7 +154,7 @@ int drv_lcd_init(void)
lcd_base = map_sysmem(gd->fb_base, 0);
lcd_init(lcd_base); /* LCD initialization */
lcd_init(lcd_base);
/* Device initialization */
memset(&lcddev, 0, sizeof(lcddev));
@ -197,7 +170,6 @@ int drv_lcd_init(void)
return (rc == 0) ? 1 : rc;
}
/*----------------------------------------------------------------------*/
void lcd_clear(void)
{
short console_rows, console_cols;
@ -261,20 +233,11 @@ static int do_lcd_clear(cmd_tbl_t *cmdtp, int flag, int argc,
lcd_clear();
return 0;
}
U_BOOT_CMD(
cls, 1, 1, do_lcd_clear,
"clear screen",
""
);
/*----------------------------------------------------------------------*/
U_BOOT_CMD(cls, 1, 1, do_lcd_clear, "clear screen", "");
static int lcd_init(void *lcdbase)
{
/* Initialize the lcd controller */
debug("[LCD] Initializing LCD frambuffer at %p\n", lcdbase);
lcd_ctrl_init(lcdbase);
/*
@ -304,10 +267,6 @@ static int lcd_init(void *lcdbase)
return 0;
}
/************************************************************************/
/* ** ROM capable initialization part - needed to reserve FB memory */
/************************************************************************/
/*
* This is called early in the system initialization to grab memory
* for the LCD controller.
@ -338,8 +297,6 @@ ulong lcd_setmem(ulong addr)
return addr;
}
/*----------------------------------------------------------------------*/
static void lcd_setfgcolor(int color)
{
lcd_color_fg = color;
@ -350,8 +307,6 @@ int lcd_getfgcolor(void)
return lcd_color_fg;
}
/*----------------------------------------------------------------------*/
static void lcd_setbgcolor(int color)
{
lcd_color_bg = color;
@ -362,10 +317,6 @@ int lcd_getbgcolor(void)
return lcd_color_bg;
}
/************************************************************************/
/* ** Chipset depending Bitmap / Logo stuff... */
/************************************************************************/
#ifdef CONFIG_LCD_LOGO
__weak void lcd_logo_set_cmap(void)
{
@ -379,17 +330,14 @@ __weak void lcd_logo_set_cmap(void)
void bitmap_plot(int x, int y)
{
ushort i, j;
uchar *bmap;
uchar *fb;
ushort *fb16;
uchar *bmap = &bmp_logo_bitmap[0];
unsigned bpix = NBITS(panel_info.vl_bpix);
uchar *fb = (uchar *)(lcd_base + y * lcd_line_length + x * bpix / 8);
ushort *fb16;
debug("Logo: width %d height %d colors %d\n",
BMP_LOGO_WIDTH, BMP_LOGO_HEIGHT, BMP_LOGO_COLORS);
bmap = &bmp_logo_bitmap[0];
fb = (uchar *)(lcd_base + y * lcd_line_length + x * bpix / 8);
if (bpix < 12) {
WATCHDOG_RESET();
lcd_logo_set_cmap();
@ -424,13 +372,7 @@ void bitmap_plot(int x, int y)
static inline void bitmap_plot(int x, int y) {}
#endif /* CONFIG_LCD_LOGO */
/*----------------------------------------------------------------------*/
#if defined(CONFIG_CMD_BMP) || defined(CONFIG_SPLASH_SCREEN)
/*
* Display the BMP file located at address bmp_image.
* Only uncompressed.
*/
#ifdef CONFIG_SPLASH_SCREEN_ALIGN
#define BMP_ALIGN_CENTER 0x7FFF
@ -451,9 +393,7 @@ static void splash_align_axis(int *axis, unsigned long panel_size,
}
#endif
#ifdef CONFIG_LCD_BMP_RLE8
#define BMP_RLE8_ESCAPE 0
#define BMP_RLE8_EOL 0
#define BMP_RLE8_EOBMP 1
@ -683,7 +623,7 @@ int lcd_display_bitmap(ulong bmp_image, int x, int y)
(y + height - 1) * lcd_line_length + x * bpix / 8);
switch (bmp_bpix) {
case 1: /* pass through */
case 1:
case 8: {
cmap_base = configuration_get_cmap();
#ifdef CONFIG_LCD_BMP_RLE8

@ -13,21 +13,19 @@
#ifndef _LCD_H_
#define _LCD_H_
#include <lcd_console.h>
#if defined(CONFIG_CMD_BMP) || defined(CONFIG_SPLASH_SCREEN)
#include <bmp_layout.h>
#include <asm/byteorder.h>
#endif
extern char lcd_is_enabled;
extern int lcd_line_length;
extern struct vidinfo panel_info;
void lcd_ctrl_init(void *lcdbase);
void lcd_enable(void);
/* setcolreg used in 8bpp/16bpp; initcolregs used in monochrome */
void lcd_setcolreg(ushort regno, ushort red, ushort green, ushort blue);
void lcd_initcolregs(void);
/* gunzip_bmp used if CONFIG_VIDEO_BMP_GZIP */
struct bmp_image *gunzip_bmp(unsigned long addr, unsigned long *lenp,
void **alloc_addr);
int bmp_display(ulong addr, int x, int y);
@ -53,11 +51,8 @@ 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) */
u_char vl_bpix; /* Bits per pixel, 0 = 1 */
ushort *cmap; /* Pointer to the colormap */
void *priv; /* Pointer to driver-specific data */
} vidinfo_t;
@ -71,13 +66,11 @@ ushort *configuration_get_cmap(void);
extern vidinfo_t panel_info;
/* Video functions */
void lcd_putc(const char c);
void lcd_puts(const char *s);
void lcd_printf(const char *fmt, ...);
void lcd_clear(void);
int lcd_display_bitmap(ulong bmp_image, int x, int y);
void lcd_putc(const char c);
void lcd_puts(const char *s);
void lcd_printf(const char *fmt, ...);
void lcd_clear(void);
int lcd_display_bitmap(ulong bmp_image, int x, int y);
/**
* Get the width of the LCD in pixels
@ -141,14 +134,6 @@ int lcd_dt_simplefb_enable_existing_node(void *blob);
/* Update the LCD / flush the cache */
void lcd_sync(void);
/************************************************************************/
/* ** BITMAP DISPLAY SUPPORT */
/************************************************************************/
#if defined(CONFIG_CMD_BMP) || defined(CONFIG_SPLASH_SCREEN)
# include <bmp_layout.h>
# include <asm/byteorder.h>
#endif
/*
* Information about displays we are using. This is for configuring
* the LCD controller and memory allocation. Someone has to know what
@ -163,38 +148,32 @@ void lcd_sync(void);
#define LCD_COLOR8 3
#define LCD_COLOR16 4
#define LCD_COLOR32 5
/*----------------------------------------------------------------------*/
#if defined(CONFIG_LCD_INFO_BELOW_LOGO)
# define LCD_INFO_X 0
# define LCD_INFO_Y (BMP_LOGO_HEIGHT + VIDEO_FONT_HEIGHT)
#define LCD_INFO_X 0
#define LCD_INFO_Y (BMP_LOGO_HEIGHT + VIDEO_FONT_HEIGHT)
#elif defined(CONFIG_LCD_LOGO)
# define LCD_INFO_X (BMP_LOGO_WIDTH + 4 * VIDEO_FONT_WIDTH)
# define LCD_INFO_Y VIDEO_FONT_HEIGHT
#define LCD_INFO_X (BMP_LOGO_WIDTH + 4 * VIDEO_FONT_WIDTH)
#define LCD_INFO_Y VIDEO_FONT_HEIGHT
#else
# define LCD_INFO_X VIDEO_FONT_WIDTH
# define LCD_INFO_Y VIDEO_FONT_HEIGHT
#define LCD_INFO_X VIDEO_FONT_WIDTH
#define LCD_INFO_Y VIDEO_FONT_HEIGHT
#endif
/* Default to 8bpp if bit depth not specified */
#ifndef LCD_BPP
# define LCD_BPP LCD_COLOR8
#define LCD_BPP LCD_COLOR8
#endif
#ifndef LCD_DF
# define LCD_DF 1
#define LCD_DF 1
#endif
/* Calculate nr. of bits per pixel and nr. of colors */
#define NBITS(bit_code) (1 << (bit_code))
#define NCOLORS(bit_code) (1 << NBITS(bit_code))
/************************************************************************/
/* ** CONSOLE CONSTANTS */
/************************************************************************/
#if LCD_BPP == LCD_COLOR8
/*
* 8bpp color definitions
*/
# define CONSOLE_COLOR_BLACK 0
# define CONSOLE_COLOR_RED 1
# define CONSOLE_COLOR_GREEN 2
@ -203,38 +182,25 @@ void lcd_sync(void);
# define CONSOLE_COLOR_MAGENTA 5
# define CONSOLE_COLOR_CYAN 6
# define CONSOLE_COLOR_GREY 14
# define CONSOLE_COLOR_WHITE 15 /* Must remain last / highest */
# define CONSOLE_COLOR_WHITE 15 /* Must remain last / highest */
#elif LCD_BPP == LCD_COLOR32
/*
* 32bpp color definitions
*/
# 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 0x00aaaaaa
# define CONSOLE_COLOR_BLACK 0x00000000
# 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_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 0x00aaaaaa
#define CONSOLE_COLOR_BLACK 0x00000000
#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 */
#endif /* color definitions */
/************************************************************************/
#ifndef PAGE_SIZE
# define PAGE_SIZE 4096
#define PAGE_SIZE 4096
#endif
/************************************************************************/
#endif /* _LCD_H_ */

Loading…
Cancel
Save