1. 08 May, 2020 1 commit
    • Gustavo A. R. Silva's avatar
      ALSA: fireworks: Replace zero-length array with flexible-array · 89ebe49a
      Gustavo A. R. Silva authored
      The current codebase makes use of the zero-length array language
      extension to the C90 standard, but the preferred mechanism to declare
      variable-length types such as these ones is a flexible array member[1][2],
      introduced in C99:
      
      struct foo {
              int stuff;
              struct boo array[];
      };
      
      By making use of the mechanism above, we will get a compiler warning
      in case the flexible array does not occur last in the structure, which
      will help us prevent some kind of undefined behavior bugs from being
      inadvertently introduced[3] to the codebase from now on.
      
      Also, notice that, dynamic memory allocations won't be affected by
      this change:
      
      "Flexible array members have incomplete type, and so the sizeof operator
      may not be applied. As a quirk of the original implementation of
      zero-length arrays, sizeof evaluates to zero."[1]
      
      sizeof(flexible-array-member) triggers a warning because flexible array
      members have incomplete type[1]. There are some instances of code in
      which the sizeof operator is being incorrectly/erroneously applied to
      zero-length arrays and the result is zero. Such instances may be hiding
      some bugs. So, this work (flexible-array member conversions) will also
      help to get completely rid of those sorts of issues.
      
      This issue was found with the help of Coccinelle.
      
      [1] https://gcc.gnu.org/onlinedocs/gcc/Zero-Length.html
      [2] https://github.com/KSPP/linux/issues/21
      [3] commit 76497732 ("cxgb3/l2t: Fix undefined behaviour")
      Signed-off-by: default avatarGustavo A. R. Silva <gustavoars@kernel.org>
      Acked-by: default avatarTakashi Sakamoto <o-takashi@sakamocchi.jp>
      Link: https://lore.kernel.org/r/20200507185245.GA14270@embeddedorSigned-off-by: default avatarTakashi Iwai <tiwai@suse.de>
      89ebe49a
  2. 07 May, 2020 4 commits
  3. 06 May, 2020 1 commit
  4. 05 May, 2020 2 commits
  5. 04 May, 2020 3 commits
  6. 02 May, 2020 2 commits
  7. 01 May, 2020 2 commits
  8. 30 Apr, 2020 3 commits
  9. 29 Apr, 2020 1 commit
  10. 24 Apr, 2020 7 commits
  11. 23 Apr, 2020 3 commits
  12. 22 Apr, 2020 3 commits
  13. 21 Apr, 2020 5 commits
  14. 20 Apr, 2020 3 commits
    • YueHaibing's avatar
      ASoC: wm89xx: Add missing dependency · 9bff3d30
      YueHaibing authored
      sound/soc/codecs/wm8900.o: In function `wm8900_i2c_probe':
      wm8900.c:(.text+0xa36): undefined reference to `__devm_regmap_init_i2c'
      sound/soc/codecs/wm8900.o: In function `wm8900_modinit':
      wm8900.c:(.init.text+0xb): undefined reference to `i2c_register_driver'
      sound/soc/codecs/wm8900.o: In function `wm8900_exit':
      wm8900.c:(.exit.text+0x8): undefined reference to `i2c_del_driver'
      sound/soc/codecs/wm8988.o: In function `wm8988_i2c_probe':
      wm8988.c:(.text+0x857): undefined reference to `__devm_regmap_init_i2c'
      sound/soc/codecs/wm8988.o: In function `wm8988_modinit':
      wm8988.c:(.init.text+0xb): undefined reference to `i2c_register_driver'
      sound/soc/codecs/wm8988.o: In function `wm8988_exit':
      wm8988.c:(.exit.text+0x8): undefined reference to `i2c_del_driver'
      sound/soc/codecs/wm8995.o: In function `wm8995_i2c_probe':
      wm8995.c:(.text+0x1c4f): undefined reference to `__devm_regmap_init_i2c'
      sound/soc/codecs/wm8995.o: In function `wm8995_modinit':
      wm8995.c:(.init.text+0xb): undefined reference to `i2c_register_driver'
      sound/soc/codecs/wm8995.o: In function `wm8995_exit':
      wm8995.c:(.exit.text+0x8): undefined reference to `i2c_del_driver'
      
      Add SND_SOC_I2C_AND_SPI dependency to fix this.
      
      Fixes: ea00d952 ("ASoC: Use imply for SND_SOC_ALL_CODECS")
      Reported-by: default avatarHulk Robot <hulkci@huawei.com>
      Signed-off-by: default avatarYueHaibing <yuehaibing@huawei.com>
      Acked-by: default avatarCharles Keepax <ckeepax@opensource.cirrus.com>
      Link: https://lore.kernel.org/r/20200420125343.20920-1-yuehaibing@huawei.comSigned-off-by: default avatarMark Brown <broonie@kernel.org>
      9bff3d30
    • Mark Brown's avatar
      Merge series "ASoC: rsnd: multi-SSI setup fixes" from Matthias Blankertz... · bce32169
      Mark Brown authored
      Merge series "ASoC: rsnd: multi-SSI setup fixes" from Matthias Blankertz <matthias.blankertz@cetitec.com>:
      
      Fix rsnd_dai_call() operations being performed twice for the master SSI
      in multi-SSI setups, and fix the rsnd_ssi_stop operation for multi-SSI
      setups.
      The only visible effect of these issues was some "status check failed"
      spam when the rsnd_ssi_stop was called, but overall the code is cleaner
      now, and some questionable writes to the SSICR register which did not
      lead to any observable misbehaviour but were contrary to the datasheet
      are fixed.
      
      Mark:
      The first patch kind of reverts my "ASoC: rsnd: Fix parent SSI
      start/stop in multi-SSI mode" from a few days ago and achieves the same
      effect in a simpler fashion, if you would prefer a clean patch series
      based on v5.6 drop me a note.
      
      Greetings,
      	Matthias
      
      Matthias Blankertz (2):
        ASoC: rsnd: Don't treat master SSI in multi SSI setup as parent
        ASoC: rsnd: Fix "status check failed" spam for multi-SSI
      
       sound/soc/sh/rcar/ssi.c | 18 +++++++++++++-----
       1 file changed, 13 insertions(+), 5 deletions(-)
      
      base-commit: 15a5760c
      --
      2.26.1
      bce32169
    • Mark Brown's avatar
      Merge series "ASoC: meson: fix codec-to-codec link setup" from Jerome Brunet... · 036889b2
      Mark Brown authored
      Merge series "ASoC: meson: fix codec-to-codec link setup" from Jerome Brunet <jbrunet@baylibre.com>:
      
      This patchset fixes the problem reported by Marc in this thread [0]
      The problem was due to an error in the meson card drivers which had
      the "no_pcm" dai_link property set on codec-to-codec links
      
      [0]: https://lore.kernel.org/r/20200417122732.GC5315@sirena.org.uk
      
      Jerome Brunet (2):
        ASoC: meson: axg-card: fix codec-to-codec link setup
        ASoC: meson: gx-card: fix codec-to-codec link setup
      
       sound/soc/meson/axg-card.c | 4 +++-
       sound/soc/meson/gx-card.c  | 4 +++-
       2 files changed, 6 insertions(+), 2 deletions(-)
      
      --
      2.25.2
      036889b2