Message ID | 20230202-mchp-spdifrx-fix-uninit-mr-v1-1-629a045d7a2f@kernel.org |
---|---|
State | Accepted |
Commit | 218674a45930c700486d27b765bf2f1b43f8cbf7 |
Headers | show |
Series | ASoC: mchp-spdifrx: Fix uninitialized use of mr in mchp_spdifrx_hw_params() | expand |
On 02.02.2023 18:34, Nathan Chancellor wrote: > EXTERNAL EMAIL: Do not click links or open attachments unless you know the content is safe > > Clang warns: > > ../sound/soc/atmel/mchp-spdifrx.c:455:3: error: variable 'mr' is uninitialized when used here [-Werror,-Wuninitialized] > mr |= SPDIFRX_MR_ENDIAN_BIG; > ^~ > ../sound/soc/atmel/mchp-spdifrx.c:432:8: note: initialize the variable 'mr' to silence this warning > u32 mr; > ^ > = 0 > 1 error generated. > > Zero initialize mr so that these bitwise OR and assignment operation > works unconditionally. > > Fixes: fa09fa60385a ("ASoC: mchp-spdifrx: fix controls which rely on rsr register") > Link: https://github.com/ClangBuiltLinux/linux/issues/1797 > Signed-off-by: Nathan Chancellor <nathan@kernel.org> Reviewed-by: Claudiu Beznea <claudiu.beznea@microchip.com> > --- > sound/soc/atmel/mchp-spdifrx.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/sound/soc/atmel/mchp-spdifrx.c b/sound/soc/atmel/mchp-spdifrx.c > index 526dd3a17471..eb0c0ef4541e 100644 > --- a/sound/soc/atmel/mchp-spdifrx.c > +++ b/sound/soc/atmel/mchp-spdifrx.c > @@ -429,7 +429,7 @@ static int mchp_spdifrx_hw_params(struct snd_pcm_substream *substream, > struct snd_soc_dai *dai) > { > struct mchp_spdifrx_dev *dev = snd_soc_dai_get_drvdata(dai); > - u32 mr; > + u32 mr = 0; > int ret; > > dev_dbg(dev->dev, "%s() rate=%u format=%#x width=%u channels=%u\n", > > --- > base-commit: 1d78f19d90d1932c83d8c96c6f86fbb06c05e29a > change-id: 20230202-mchp-spdifrx-fix-uninit-mr-80528f2024c9 > > Best regards, > -- > Nathan Chancellor <nathan@kernel.org> >
diff --git a/sound/soc/atmel/mchp-spdifrx.c b/sound/soc/atmel/mchp-spdifrx.c index 526dd3a17471..eb0c0ef4541e 100644 --- a/sound/soc/atmel/mchp-spdifrx.c +++ b/sound/soc/atmel/mchp-spdifrx.c @@ -429,7 +429,7 @@ static int mchp_spdifrx_hw_params(struct snd_pcm_substream *substream, struct snd_soc_dai *dai) { struct mchp_spdifrx_dev *dev = snd_soc_dai_get_drvdata(dai); - u32 mr; + u32 mr = 0; int ret; dev_dbg(dev->dev, "%s() rate=%u format=%#x width=%u channels=%u\n",
Clang warns: ../sound/soc/atmel/mchp-spdifrx.c:455:3: error: variable 'mr' is uninitialized when used here [-Werror,-Wuninitialized] mr |= SPDIFRX_MR_ENDIAN_BIG; ^~ ../sound/soc/atmel/mchp-spdifrx.c:432:8: note: initialize the variable 'mr' to silence this warning u32 mr; ^ = 0 1 error generated. Zero initialize mr so that these bitwise OR and assignment operation works unconditionally. Fixes: fa09fa60385a ("ASoC: mchp-spdifrx: fix controls which rely on rsr register") Link: https://github.com/ClangBuiltLinux/linux/issues/1797 Signed-off-by: Nathan Chancellor <nathan@kernel.org> --- sound/soc/atmel/mchp-spdifrx.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) --- base-commit: 1d78f19d90d1932c83d8c96c6f86fbb06c05e29a change-id: 20230202-mchp-spdifrx-fix-uninit-mr-80528f2024c9 Best regards,