video: add guards around 16bpp/32bbp code
authorAnatolij Gustschin <agust@denx.de>
Wed, 4 Dec 2019 15:18:39 +0000 (16:18 +0100)
committerAnatolij Gustschin <agust@denx.de>
Fri, 6 Dec 2019 15:37:45 +0000 (16:37 +0100)
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>
drivers/video/vidconsole-uclass.c
drivers/video/video-uclass.c

index af88588904464ad3c4506ecc587e97bdcc908eda..c690eceeaa7f7b70205dc1efdb77756ce0f9f178 100644 (file)
@@ -116,6 +116,7 @@ static void vidconsole_newline(struct udevice *dev)
        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] = {
        { 0x00, 0x00, 0x00 },  /* black */
        { 0xc0, 0x00, 0x00 },  /* red */
@@ -134,18 +135,23 @@ static const struct vid_rgb colors[VID_COLOR_COUNT] = {
        { 0x00, 0xff, 0xff },  /* bright cyan */
        { 0xff, 0xff, 0xff },  /* white */
 };
+#endif
 
 u32 vid_console_color(struct video_priv *priv, unsigned int idx)
 {
        switch (priv->bpix) {
+#if CONFIG_IS_ENABLED(VIDEO_BPP16)
        case VIDEO_BPP16:
                return ((colors[idx].r >> 3) << 11) |
                       ((colors[idx].g >> 2) <<  5) |
                       ((colors[idx].b >> 3) <<  0);
+#endif
+#if CONFIG_IS_ENABLED(VIDEO_BPP32)
        case VIDEO_BPP32:
                return (colors[idx].r << 16) |
                       (colors[idx].g <<  8) |
                       (colors[idx].b <<  0);
+#endif
        default:
                /*
                 * For unknown bit arrangements just support
index f660c5205ed3e7d3d69b7a74aaade4f0e060fc5b..5ea7568fa4c8f1c0b70dbcd944675edc570e85ce 100644 (file)
@@ -92,6 +92,7 @@ int video_clear(struct udevice *dev)
        struct video_priv *priv = dev_get_uclass_priv(dev);
 
        switch (priv->bpix) {
+#ifdef CONFIG_VIDEO_BPP16
        case VIDEO_BPP16: {
                u16 *ppix = priv->fb;
                u16 *end = priv->fb + priv->fb_size;
@@ -100,6 +101,8 @@ int video_clear(struct udevice *dev)
                        *ppix++ = priv->colour_bg;
                break;
        }
+#endif
+#ifdef CONFIG_VIDEO_BPP32
        case VIDEO_BPP32: {
                u32 *ppix = priv->fb;
                u32 *end = priv->fb + priv->fb_size;
@@ -108,6 +111,7 @@ int video_clear(struct udevice *dev)
                        *ppix++ = priv->colour_bg;
                break;
        }
+#endif
        default:
                memset(priv->fb, priv->colour_bg, priv->fb_size);
                break;