diff options
author | Nathan Chancellor <nathan@kernel.org> | 2022-02-22 08:20:46 -0700 |
---|---|---|
committer | Philippe Cornu <philippe.cornu@foss.st.com> | 2022-02-25 14:14:07 +0100 |
commit | 3b2f68f196a5b23c61777078f5c7d0d19626b5e4 (patch) | |
tree | 6209edc9d594deeaccbc951f8d8094d98e454b29 /drivers/gpu/drm/stm | |
parent | a2151490cc6c57b368d7974ffd447a8b36ade639 (diff) | |
download | linux-3b2f68f196a5b23c61777078f5c7d0d19626b5e4.tar.gz linux-3b2f68f196a5b23c61777078f5c7d0d19626b5e4.tar.bz2 linux-3b2f68f196a5b23c61777078f5c7d0d19626b5e4.zip |
drm/stm: Avoid using val uninitialized in ltdc_set_ycbcr_config()
Clang warns:
drivers/gpu/drm/stm/ltdc.c:625:2: warning: variable 'val' is used uninitialized whenever switch default is taken [-Wsometimes-uninitialized]
default:
^~~~~~~
drivers/gpu/drm/stm/ltdc.c:635:2: note: uninitialized use occurs here
val |= LxPCR_YCEN;
^~~
drivers/gpu/drm/stm/ltdc.c:600:9: note: initialize the variable 'val' to silence this warning
u32 val;
^
= 0
1 warning generated.
Use a return instead of break in the default case to fix the warning.
Add an error message so that this return is not silent, which could hide
issues in the future.
Fixes: 484e72d3146b ("drm/stm: ltdc: add support of ycbcr pixel formats")
Link: https://github.com/ClangBuiltLinux/linux/issues/1575
Acked-by: Yannick Fertre <yannick.fertre@foss.st.com>
Reviewed-by: Nick Desaulniers <ndesaulniers@google.com>
Reviewed-by: Raphael Gallais-Pou <raphael.gallais-pou@foss.st.com>
Signed-off-by: Nathan Chancellor <nathan@kernel.org>
Signed-off-by: Philippe Cornu <philippe.cornu@foss.st.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20220222152045.484610-1-nathan@kernel.org
Diffstat (limited to 'drivers/gpu/drm/stm')
-rw-r--r-- | drivers/gpu/drm/stm/ltdc.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/gpu/drm/stm/ltdc.c b/drivers/gpu/drm/stm/ltdc.c index 5eeb32c9c9ce..c9bc4ccb6d43 100644 --- a/drivers/gpu/drm/stm/ltdc.c +++ b/drivers/gpu/drm/stm/ltdc.c @@ -624,7 +624,8 @@ static inline void ltdc_set_ycbcr_config(struct drm_plane *plane, u32 drm_pix_fm break; default: /* RGB or not a YCbCr supported format */ - break; + DRM_ERROR("Unsupported pixel format: %u\n", drm_pix_fmt); + return; } /* Enable limited range */ |