diff options
author | Anatolij Gustschin <agust@denx.de> | 2019-12-04 15:48:54 +0100 |
---|---|---|
committer | Anatolij Gustschin <agust@denx.de> | 2019-12-06 16:38:51 +0100 |
commit | 2cc393f32fd9ffcf47f4877e8d1345a7981a0d02 (patch) | |
tree | 49565c0cfbcd5135553fd35cc588f92dadd4bc0e /drivers/video/console_normal.c | |
parent | ca5655d8006cfbaa4ff8ff450e4a5931e57fe050 (diff) |
video: make BPP and ANSI configs optional
Many boards do not use all selected framebuffer depth
configurations, for such boards there is some unused
code in video and console uclass routines. Make depth
specific code optional to avoid dead code and slightly
reduce binary size. Also make ANSI code optional for
the same reason. When i.e. using only VIDEO_BPP16 the
code size shrinks (below values when using gcc-7.3.0):
$ ./tools/buildman/buildman -b video-wip -sS wandboard
...
01: Merge git://git.denx.de/u-boot-sh
02: video: add guards around 16bpp/32bbp code
03: video: make BPP and ANSI configs optional
arm: (for 1/1 boards) all -776.0 bss -8.0 text -768.0
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>
Diffstat (limited to 'drivers/video/console_normal.c')
-rw-r--r-- | drivers/video/console_normal.c | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/drivers/video/console_normal.c b/drivers/video/console_normal.c index 7f01ee9424..2f25af7332 100644 --- a/drivers/video/console_normal.c +++ b/drivers/video/console_normal.c @@ -16,9 +16,9 @@ static int console_normal_set_row(struct udevice *dev, uint row, int clr) { struct video_priv *vid_priv = dev_get_uclass_priv(dev->parent); - void *line; - int pixels = VIDEO_FONT_HEIGHT * vid_priv->xsize; - int i; + void * __maybe_unused line; + int __maybe_unused pixels = VIDEO_FONT_HEIGHT * vid_priv->xsize; + int __maybe_unused i; line = vid_priv->fb + row * VIDEO_FONT_HEIGHT * vid_priv->line_length; switch (vid_priv->bpix) { @@ -76,7 +76,7 @@ static int console_normal_putc_xy(struct udevice *dev, uint x_frac, uint y, struct vidconsole_priv *vc_priv = dev_get_uclass_priv(dev); struct udevice *vid = dev->parent; struct video_priv *vid_priv = dev_get_uclass_priv(vid); - int i, row; + int __maybe_unused i, row; void *line = vid_priv->fb + y * vid_priv->line_length + VID_TO_PIXEL(x_frac) * VNBYTES(vid_priv->bpix); @@ -85,7 +85,7 @@ static int console_normal_putc_xy(struct udevice *dev, uint x_frac, uint y, for (row = 0; row < VIDEO_FONT_HEIGHT; row++) { unsigned int idx = (u8)ch * VIDEO_FONT_HEIGHT + row; - uchar bits = video_fontdata[idx]; + uchar __maybe_unused bits = video_fontdata[idx]; switch (vid_priv->bpix) { #ifdef CONFIG_VIDEO_BPP8 |