1. 23 1月, 2018 1 次提交
  2. 18 1月, 2018 1 次提交
  3. 15 12月, 2017 1 次提交
  4. 05 12月, 2017 1 次提交
  5. 01 11月, 2017 1 次提交
  6. 23 10月, 2017 2 次提交
  7. 10 10月, 2017 2 次提交
  8. 04 10月, 2017 1 次提交
    • K
      ASoC: soc-core: add component lookup functions · 7dd5d0d9
      Kuninori Morimoto 提交于
      ALSA SoC platform/codec will be replaced to component soon.
      This means 1 device might have multiple components. But current
      unregister component function only checks "dev" to find it.
      This means, unexpected component might be unregistered by current
      function.
      But, it is no problem if driver registered only 1 component.
      
      To prepare avoid this issue, this patch adds new component
      lookup function. it finds component by "dev" and "driver name".
      
      Here, the reason why it uses "driver name" is that "component name"
      was created by fmt_single_name() and difficult to use it from driver.
      Driver of course knows its "driver name", thus, using it is more easy.
      Signed-off-by: NKuninori Morimoto <kuninori.morimoto.gx@renesas.com>
      Signed-off-by: NMark Brown <broonie@kernel.org>
      7dd5d0d9
  9. 28 9月, 2017 2 次提交
    • K
      ASoC: add Component level set_bias_level · 7ba236ce
      Kuninori Morimoto 提交于
      In current ALSA SoC, Codec only has set_bias_level feature.
      Codec will be merged into Component in next generation ALSA SoC,
      thus current Codec specific feature need to be merged into it.
      This is glue patch for it.
      
      Codec driver has .idle_bias_off for dapm bias. But Component
      driver doesn't have it, and dapm->idle_bias_off is set as "true".
      To keep compatibility, this patch adds "idle_bias_on" instead of
      ".idle_bias_off" on Component driver.
      dapm->idle_bias_off will be set by inverted idle_bias_on.
      
      When we replace Codec to Component, the driver which has
      ".idle_bias_off = true" is just remove it,
      and the driver which doesn't have it will have new
      ".idle_bias_on = true".
      Signed-off-by: NKuninori Morimoto <kuninori.morimoto.gx@renesas.com>
      Signed-off-by: NMark Brown <broonie@kernel.org>
      7ba236ce
    • K
      ASoC: add Component level pcm_new/pcm_free v2 · f523aceb
      Kuninori Morimoto 提交于
      In current ALSA SoC, Platform only has pcm_new/pcm_free feature,
      but it should be supported on Component level. This patch adds it.
      
      The v1 was added commit 99b04f4c ("ASoC: add Component level
      pcm_new/pcm_free") but it called all "card" connected component's
      pcm_new/free, it was wrong.
      This patch calls "rtd" connected component.
      Signed-off-by: NKuninori Morimoto <kuninori.morimoto.gx@renesas.com>
      Signed-off-by: NMark Brown <broonie@kernel.org>
      f523aceb
  10. 27 9月, 2017 1 次提交
  11. 26 9月, 2017 2 次提交
  12. 31 8月, 2017 4 次提交
  13. 25 8月, 2017 5 次提交
  14. 22 8月, 2017 1 次提交
  15. 16 8月, 2017 1 次提交
  16. 10 8月, 2017 2 次提交
  17. 07 8月, 2017 4 次提交
  18. 01 8月, 2017 1 次提交
    • T
      device property: Fix usecount for of_graph_get_port_parent() · c0a480d1
      Tony Lindgren 提交于
      Fix inconsistent use of of_graph_get_port_parent() where
      asoc_simple_card_parse_graph_dai() does of_node_get() before
      calling it while other callers do not. We can fix this by
      not trashing the node passed to of_graph_get_port_parent().
      
      Let's also make sure the callers have correct refcounts and remove
      related incorrect of_node_put() calls for of_for_each_phandle
      as that's done by of_phandle_iterator_next() except when
      we break out of the loop early.
      
      Let's fix both issues with a single patch to avoid kobject
      refcounts getting messed up more if two patches are merged
      separately.
      
      Otherwise strange issues can happen caused by memory corruption
      caused by too many kobject_del() calls such as:
      
      BUG: sleeping function called from invalid context at
      kernel/locking/mutex.c:747
      ...
      (___might_sleep)
      (__mutex_lock)
      (mutex_lock_nested)
      (kernfs_remove)
      (kobject_del)
      (kobject_put)
      (of_get_next_parent)
      (of_graph_get_port_parent)
      (asoc_simple_card_parse_graph_dai [snd_soc_simple_card_utils])
      (asoc_graph_card_probe [snd_soc_audio_graph_card])
      
      Fixes: 0ef472a9 ("of_graph: add of_graph_get_port_parent()")
      Fixes: 2692c1c6 ("ASoC: add audio-graph-card support")
      Fixes: 1689333f ("ASoC: simple-card-utils: add asoc_simple_card_parse_graph_dai()")
      Signed-off-by: NTony Lindgren <tony@atomide.com>
      Reviewed-by: NRob Herring <robh@kernel.org>
      Tested-by: NAntonio Borneo <borneo.antonio@gmail.com>
      Tested-by: NKuninori Morimoto <kuninori.morimoto.gx@renesas.com>
      Signed-off-by: NMark Brown <broonie@kernel.org>
      c0a480d1
  19. 17 7月, 2017 1 次提交
    • J
      ASoC: fix pcm-creation regression · c641e5b2
      Johan Hovold 提交于
      This reverts commit 99b04f4c ("ASoC: add Component level
      pcm_new/pcm_free"), which started calling the pcm_new callback for every
      component in a *card* when creating a new pcm, something which does not
      seem to make any sense.
      
      This specifically led to memory leaks in systems with more than one
      platform component and where DMA memory is allocated in the
      platform-driver callback. For example, when both mcasp devices are being
      used on an am335x board, DMA memory would be allocated twice for every
      DAI link during probe.
      
      When CONFIG_SND_VERBOSE_PROCFS was set this fortunately also led to
      warnings such as:
      
      WARNING: CPU: 0 PID: 565 at ../fs/proc/generic.c:346 proc_register+0x110/0x154
      proc_dir_entry 'sub0/prealloc' already registered
      
      Since there seems to be no users of the new component callbacks, and the
      current implementation introduced a regression, let's revert the
      offending commit for now.
      
      Fixes: 99b04f4c ("ASoC: add Component level pcm_new/pcm_free")
      Signed-off-by: NJohan Hovold <johan@kernel.org>
      Reviewed-by: NLinus Walleij <linus.walleij@linaro.org>
      Tested-by: NLinus Walleij <linus.walleij@linaro.org>
      Signed-off-by: NMark Brown <broonie@kernel.org>
      Cc: stable <stable@vger.kernel.org>	# 4.10
      c641e5b2
  20. 30 6月, 2017 1 次提交
  21. 29 6月, 2017 1 次提交
  22. 25 5月, 2017 2 次提交
    • K
      ASoC: add snd_soc_get_dai_id() function · a180e8b9
      Kuninori Morimoto 提交于
      ALSA SoC needs to know connected DAI ID for detecting.
      It is not a big problem if device/driver was only for sound,
      but getting DAI ID will be difficult if device includes both
      Video/Sound, like HDMI.
      To solve this issue, this patch adds new snd_soc_get_dai_id() and
      its related .of_xlate_dai_id callback on component driver.
      In below case, we can handle Sound port (= port@2) as ID = 0
      if .of_xlate_dai_id has its support.
      
      	hdmi {
      		port@0 { /* VIDEO */ };
      		port@1 { /* VIDEO */ };
      		port@2 { /* SOUND */ };
      	};
      Signed-off-by: NKuninori Morimoto <kuninori.morimoto.gx@renesas.com>
      Signed-off-by: NMark Brown <broonie@kernel.org>
      a180e8b9
    • T
      ASoC: Fix use-after-free at card unregistration · 4efda5f2
      Takashi Iwai 提交于
      soc_cleanup_card_resources() call snd_card_free() at the last of its
      procedure.  This turned out to lead to a use-after-free.
      PCM runtimes have been already removed via soc_remove_pcm_runtimes(),
      while it's dereferenced later in soc_pcm_free() called via
      snd_card_free().
      
      The fix is simple: just move the snd_card_free() call to the beginning
      of the whole procedure.  This also gives another benefit: it
      guarantees that all operations have been shut down before actually
      releasing the resources, which was racy until now.
      Reported-and-tested-by: NRobert Jarzmik <robert.jarzmik@free.fr>
      Signed-off-by: NTakashi Iwai <tiwai@suse.de>
      Signed-off-by: NMark Brown <broonie@kernel.org>
      Cc: <stable@vger.kernel.org>
      4efda5f2
  23. 17 5月, 2017 1 次提交
  24. 09 5月, 2017 1 次提交