mirror of
https://github.com/AsahiLinux/u-boot
synced 2024-11-10 15:14:43 +00: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:
parent
2740e5de4f
commit
45ae2546ef
3 changed files with 30 additions and 18 deletions
5
README
5
README
|
@ -705,6 +705,11 @@ The following options need to be configured:
|
|||
the "silent" environment variable. See
|
||||
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:
|
||||
CONFIG_BAUDRATE - in bps
|
||||
Select one of the baudrates listed in
|
||||
|
|
|
@ -2108,6 +2108,24 @@ defined(CONFIG_SANDBOX) || defined(CONFIG_X86)
|
|||
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)
|
||||
{
|
||||
unsigned char color8;
|
||||
|
@ -2194,6 +2212,8 @@ static int video_init(void)
|
|||
}
|
||||
eorx = fgx ^ bgx;
|
||||
|
||||
video_clear();
|
||||
|
||||
#ifdef CONFIG_VIDEO_LOGO
|
||||
/* Plot the logo and get start point of console */
|
||||
debug("Video: Drawing the logo ...\n");
|
||||
|
@ -2297,21 +2317,3 @@ int video_get_screen_columns(void)
|
|||
{
|
||||
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_
|
||||
#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_FG_COL 0xa0
|
||||
#endif
|
||||
|
||||
/*
|
||||
* Graphic Data Format (GDF) bits for VIDEO_DATA_FORMAT
|
||||
|
|
Loading…
Reference in a new issue