1. 15 Jun, 2021 3 commits
  2. 14 Jun, 2021 25 commits
  3. 10 Jun, 2021 2 commits
  4. 08 Jun, 2021 6 commits
  5. 07 Jun, 2021 4 commits
    • Mark Brown's avatar
      Merge series "ASoC: adds new .auto_selectable_formats support" from Kuninori... · d08c5b76
      Mark Brown authored
      Merge series "ASoC: adds new .auto_selectable_formats support" from Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>:
      
      Hi Mark
      
      These are v3 of "ASoC: adds new .get_fmt support",
      but renamed Subject.
      
      This is a little bit challenging patch-set.
      The idea/code is almost same as v1 / v2.
      v3 has "priority" support.
      
      We need to set dai_link->dai_fmt to select CPU/Codec settings,
      and it is selected by Sound Card Driver, today.
      
      Because of it, Sound Card user need to know both CPU / Codec
      available dai_fmt, and needs to select it.
      For example simple-card / audio-graph case, it is selected by
      "format" and "bitclock/frame-master/inversion" on DT.
      
      But, it can be automatically selected if both CPU and Codec drivers
      indicate it to ALSA SoC Framework, somehow.
      
      By this patch, dai_fmt can be automatically selected from each
      driver if both CPU / Codec driver had .auto_selectable_formats.
      Automatically selectable *field* is depends on each drivers.
      
      For example, some driver want to select format "automatically",
      but want to select other fields "manually", because of complex limitation.
      Or other example, in case of both CPU and Codec are possible to be
      clock provider, but the quality was different.
      In these case, user need/want to *manually* select each fields
      from Sound Card driver.
      
      It uses Sound Card specified fields preferentially, and try to select
      non-specific fields from CPU and Codec driver settings if driver had
      .auto_selectable_formats.
      In other words, we can select all dai_fmt via Sound Card driver
      same as before.
      
      Select dai_fmt 100% automatically is very difficult and will be very complex,
      but select automatically some fields only is very easy, I guess.
      This patch-set is based on such assumption.
      
      v1 -> v2
      	- Add more detail explanation on git-log, code, comment.
      	- Possible to be Clock/Frame provider is depends on driver's situation.
      
      v2 -> v3
      	- has priority
      	- tidyup function explanation for snd_soc_dai_get_fmt()
      	- Each driver don't try to have SND_SOC_DAIFMT_CBx_CFx to avoid confusion
      
      Link: https://lore.kernel.org/r/871rb3hypy.wl-kuninori.morimoto.gx@renesas.com
      Link: https://lore.kernel.org/r/871racbx0w.wl-kuninori.morimoto.gx@renesas.com
      
      Kuninori Morimoto (7):
        ASoC: soc-core: move snd_soc_runtime_set_dai_fmt() to upside
        ASoC: soc-core: add snd_soc_runtime_get_dai_fmt()
        ASoC: ak4613: add .auto_selectable_formats support
        ASoC: pcm3168a: add .auto_selectable_formats support
        ASoC: rsnd: add .auto_selectable_formats support
        ASoC: fsi: add .auto_selectable_formats support
        ASoC: hdmi-codec: add .auto_selectable_formats support
      
       include/sound/soc-dai.h       |  55 +++++++
       sound/soc/codecs/ak4613.c     |  11 ++
       sound/soc/codecs/hdmi-codec.c |  21 +++
       sound/soc/codecs/pcm3168a.c   |  26 +++
       sound/soc/sh/fsi.c            |  15 ++
       sound/soc/sh/rcar/core.c      |  31 +++-
       sound/soc/soc-core.c          | 288 ++++++++++++++++++++++++++--------
       sound/soc/soc-dai.c           |  63 ++++++++
       sound/soc/soc-utils.c         |  29 ++++
       9 files changed, 475 insertions(+), 64 deletions(-)
      
      --
      2.25.1
      d08c5b76
    • Colin Ian King's avatar
      ASoC: rk817: remove redundant assignment to pointer node, add missing of_node_put · d50b86b3
      Colin Ian King authored
      The pointer node is being initialized with a value that is never read and
      it is being updated later with a new value.  The initialization is
      redundant and can be removed.
      
      The function is missing a of_node_put on node, fix this by adding the call
      before returning.
      
      Addresses-Coverity: ("Unused value")
      Fixes: 0d6a04da ("ASoC: Add Rockchip rk817 audio CODEC support")
      Signed-off-by: default avatarColin Ian King <colin.king@canonical.com>
      Tested-by: default avatarChris Morgan <macromorgan@hotmail.com>
      Link: https://lore.kernel.org/r/20210603113659.82031-1-colin.king@canonical.comSigned-off-by: default avatarMark Brown <broonie@kernel.org>
      d50b86b3
    • Jiapeng Chong's avatar
      ASoC: rk817: Remove unneeded semicolon · 54f67313
      Jiapeng Chong authored
      Fix the following coccicheck warnings:
      
      ./sound/soc/codecs/rk817_codec.c:49:2-3: Unneeded semicolon.
      Reported-by: default avatarAbaci Robot <abaci@linux.alibaba.com>
      Signed-off-by: default avatarJiapeng Chong <jiapeng.chong@linux.alibaba.com>
      Link: https://lore.kernel.org/r/1622802209-45031-1-git-send-email-jiapeng.chong@linux.alibaba.comSigned-off-by: default avatarMark Brown <broonie@kernel.org>
      54f67313
    • Mark Brown's avatar
      Merge tag 'tb-mfd-asoc-v5.14-1' of... · b9de77d0
      Mark Brown authored
      Merge tag 'tb-mfd-asoc-v5.14-1' of https://git.kernel.org/pub/scm/linux/kernel/git/lee/mfd into asoc-5.14
      
      Immutable branch between MFD and ASoC due for the v5.14 merge window
      b9de77d0