mirror of
https://xff.cz/git/u-boot/
synced 2025-09-29 22:41:17 +02:00
video, cfb_console: make background and foreground color configurable
make CONSOLE_BG_COL/CONSOLE_FG_COL configurable through board config file. Clear video screen in video_init(). Signed-off-by: Heiko Schocher <hs@denx.de> Cc: Anatolij Gustschin <agust@denx.de>
This commit is contained in:
committed by
Anatolij Gustschin
parent
2740e5de4f
commit
45ae2546ef
5
README
5
README
@@ -705,6 +705,11 @@ The following options need to be configured:
|
|||||||
the "silent" environment variable. See
|
the "silent" environment variable. See
|
||||||
doc/README.silent for more information.
|
doc/README.silent for more information.
|
||||||
|
|
||||||
|
CONFIG_SYS_CONSOLE_BG_COL: define the backgroundcolor, default
|
||||||
|
is 0x00.
|
||||||
|
CONFIG_SYS_CONSOLE_FG_COL: define the foregroundcolor, default
|
||||||
|
is 0xa0.
|
||||||
|
|
||||||
- Console Baudrate:
|
- Console Baudrate:
|
||||||
CONFIG_BAUDRATE - in bps
|
CONFIG_BAUDRATE - in bps
|
||||||
Select one of the baudrates listed in
|
Select one of the baudrates listed in
|
||||||
|
@@ -2108,6 +2108,24 @@ defined(CONFIG_SANDBOX) || defined(CONFIG_X86)
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void video_clear(void)
|
||||||
|
{
|
||||||
|
if (!video_fb_address)
|
||||||
|
return;
|
||||||
|
#ifdef VIDEO_HW_RECTFILL
|
||||||
|
video_hw_rectfill(VIDEO_PIXEL_SIZE, /* bytes per pixel */
|
||||||
|
0, /* dest pos x */
|
||||||
|
0, /* dest pos y */
|
||||||
|
VIDEO_VISIBLE_COLS, /* frame width */
|
||||||
|
VIDEO_VISIBLE_ROWS, /* frame height */
|
||||||
|
bgx /* fill color */
|
||||||
|
);
|
||||||
|
#else
|
||||||
|
memsetl(video_fb_address,
|
||||||
|
(VIDEO_VISIBLE_ROWS * VIDEO_LINE_LEN) / sizeof(int), bgx);
|
||||||
|
#endif
|
||||||
|
}
|
||||||
|
|
||||||
static int video_init(void)
|
static int video_init(void)
|
||||||
{
|
{
|
||||||
unsigned char color8;
|
unsigned char color8;
|
||||||
@@ -2194,6 +2212,8 @@ static int video_init(void)
|
|||||||
}
|
}
|
||||||
eorx = fgx ^ bgx;
|
eorx = fgx ^ bgx;
|
||||||
|
|
||||||
|
video_clear();
|
||||||
|
|
||||||
#ifdef CONFIG_VIDEO_LOGO
|
#ifdef CONFIG_VIDEO_LOGO
|
||||||
/* Plot the logo and get start point of console */
|
/* Plot the logo and get start point of console */
|
||||||
debug("Video: Drawing the logo ...\n");
|
debug("Video: Drawing the logo ...\n");
|
||||||
@@ -2297,21 +2317,3 @@ int video_get_screen_columns(void)
|
|||||||
{
|
{
|
||||||
return CONSOLE_COLS;
|
return CONSOLE_COLS;
|
||||||
}
|
}
|
||||||
|
|
||||||
void video_clear(void)
|
|
||||||
{
|
|
||||||
if (!video_fb_address)
|
|
||||||
return;
|
|
||||||
#ifdef VIDEO_HW_RECTFILL
|
|
||||||
video_hw_rectfill(VIDEO_PIXEL_SIZE, /* bytes per pixel */
|
|
||||||
0, /* dest pos x */
|
|
||||||
0, /* dest pos y */
|
|
||||||
VIDEO_VISIBLE_COLS, /* frame width */
|
|
||||||
VIDEO_VISIBLE_ROWS, /* frame height */
|
|
||||||
bgx /* fill color */
|
|
||||||
);
|
|
||||||
#else
|
|
||||||
memsetl(video_fb_address,
|
|
||||||
(VIDEO_VISIBLE_ROWS * VIDEO_LINE_LEN) / sizeof(int), bgx);
|
|
||||||
#endif
|
|
||||||
}
|
|
||||||
|
@@ -18,8 +18,13 @@
|
|||||||
#ifndef _VIDEO_FB_H_
|
#ifndef _VIDEO_FB_H_
|
||||||
#define _VIDEO_FB_H_
|
#define _VIDEO_FB_H_
|
||||||
|
|
||||||
|
#if defined(CONFIG_SYS_CONSOLE_FG_COL) && defined(CONFIG_SYS_CONSOLE_BG_COL)
|
||||||
|
#define CONSOLE_BG_COL CONFIG_SYS_CONSOLE_BG_COL
|
||||||
|
#define CONSOLE_FG_COL CONFIG_SYS_CONSOLE_FG_COL
|
||||||
|
#else
|
||||||
#define CONSOLE_BG_COL 0x00
|
#define CONSOLE_BG_COL 0x00
|
||||||
#define CONSOLE_FG_COL 0xa0
|
#define CONSOLE_FG_COL 0xa0
|
||||||
|
#endif
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Graphic Data Format (GDF) bits for VIDEO_DATA_FORMAT
|
* Graphic Data Format (GDF) bits for VIDEO_DATA_FORMAT
|
||||||
|
Reference in New Issue
Block a user