video: add guards around 16bpp/32bbp code
Many boards use only single depth configuration, for such boards there is some unused code in video and console uclass routines. Add guards to avoid dead code. Signed-off-by: Anatolij Gustschin <agust@denx.de> Tested-by: Eugen Hristev <eugen.hristev@microchip.com> Tested-by: Patrice Chotard <patrice.chotard@st.com> Tested-by: Steffen Dirkwinkel <s.dirkwinkel@beckhoff.com>
This commit is contained in:
parent
ca2c6945b9
commit
ca5655d800
@ -116,6 +116,7 @@ static void vidconsole_newline(struct udevice *dev)
|
|||||||
video_sync(dev->parent, false);
|
video_sync(dev->parent, false);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#if CONFIG_IS_ENABLED(VIDEO_BPP16) || CONFIG_IS_ENABLED(VIDEO_BPP32)
|
||||||
static const struct vid_rgb colors[VID_COLOR_COUNT] = {
|
static const struct vid_rgb colors[VID_COLOR_COUNT] = {
|
||||||
{ 0x00, 0x00, 0x00 }, /* black */
|
{ 0x00, 0x00, 0x00 }, /* black */
|
||||||
{ 0xc0, 0x00, 0x00 }, /* red */
|
{ 0xc0, 0x00, 0x00 }, /* red */
|
||||||
@ -134,18 +135,23 @@ static const struct vid_rgb colors[VID_COLOR_COUNT] = {
|
|||||||
{ 0x00, 0xff, 0xff }, /* bright cyan */
|
{ 0x00, 0xff, 0xff }, /* bright cyan */
|
||||||
{ 0xff, 0xff, 0xff }, /* white */
|
{ 0xff, 0xff, 0xff }, /* white */
|
||||||
};
|
};
|
||||||
|
#endif
|
||||||
|
|
||||||
u32 vid_console_color(struct video_priv *priv, unsigned int idx)
|
u32 vid_console_color(struct video_priv *priv, unsigned int idx)
|
||||||
{
|
{
|
||||||
switch (priv->bpix) {
|
switch (priv->bpix) {
|
||||||
|
#if CONFIG_IS_ENABLED(VIDEO_BPP16)
|
||||||
case VIDEO_BPP16:
|
case VIDEO_BPP16:
|
||||||
return ((colors[idx].r >> 3) << 11) |
|
return ((colors[idx].r >> 3) << 11) |
|
||||||
((colors[idx].g >> 2) << 5) |
|
((colors[idx].g >> 2) << 5) |
|
||||||
((colors[idx].b >> 3) << 0);
|
((colors[idx].b >> 3) << 0);
|
||||||
|
#endif
|
||||||
|
#if CONFIG_IS_ENABLED(VIDEO_BPP32)
|
||||||
case VIDEO_BPP32:
|
case VIDEO_BPP32:
|
||||||
return (colors[idx].r << 16) |
|
return (colors[idx].r << 16) |
|
||||||
(colors[idx].g << 8) |
|
(colors[idx].g << 8) |
|
||||||
(colors[idx].b << 0);
|
(colors[idx].b << 0);
|
||||||
|
#endif
|
||||||
default:
|
default:
|
||||||
/*
|
/*
|
||||||
* For unknown bit arrangements just support
|
* For unknown bit arrangements just support
|
||||||
|
@ -92,6 +92,7 @@ int video_clear(struct udevice *dev)
|
|||||||
struct video_priv *priv = dev_get_uclass_priv(dev);
|
struct video_priv *priv = dev_get_uclass_priv(dev);
|
||||||
|
|
||||||
switch (priv->bpix) {
|
switch (priv->bpix) {
|
||||||
|
#ifdef CONFIG_VIDEO_BPP16
|
||||||
case VIDEO_BPP16: {
|
case VIDEO_BPP16: {
|
||||||
u16 *ppix = priv->fb;
|
u16 *ppix = priv->fb;
|
||||||
u16 *end = priv->fb + priv->fb_size;
|
u16 *end = priv->fb + priv->fb_size;
|
||||||
@ -100,6 +101,8 @@ int video_clear(struct udevice *dev)
|
|||||||
*ppix++ = priv->colour_bg;
|
*ppix++ = priv->colour_bg;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
#endif
|
||||||
|
#ifdef CONFIG_VIDEO_BPP32
|
||||||
case VIDEO_BPP32: {
|
case VIDEO_BPP32: {
|
||||||
u32 *ppix = priv->fb;
|
u32 *ppix = priv->fb;
|
||||||
u32 *end = priv->fb + priv->fb_size;
|
u32 *end = priv->fb + priv->fb_size;
|
||||||
@ -108,6 +111,7 @@ int video_clear(struct udevice *dev)
|
|||||||
*ppix++ = priv->colour_bg;
|
*ppix++ = priv->colour_bg;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
#endif
|
||||||
default:
|
default:
|
||||||
memset(priv->fb, priv->colour_bg, priv->fb_size);
|
memset(priv->fb, priv->colour_bg, priv->fb_size);
|
||||||
break;
|
break;
|
||||||
|
Loading…
Reference in New Issue
Block a user