Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1721473 > unrolled thread

[PATCH 0/3] Fix capture devices functionality on TM2

Started byJaechul Lee <jcsing.lee@samsung.com>
First post2017-08-28 12:10 +0200
Last post2017-08-28 12:10 +0200
Articles 2 — 1 participant

Back to article view | Back to linux.kernel

This discussion starts older than the indexed window; earlier articles aren't shown. The article labeled Started by below is the oldest one visible, not the original post.


Contents

  [PATCH 0/3] Fix capture devices functionality on TM2 Jaechul Lee <jcsing.lee@samsung.com> - 2017-08-28 12:10 +0200
    [PATCH 2/3] ASoC: samsung: Use 'samsung-i2s' cpu_dai for dai_links Jaechul Lee <jcsing.lee@samsung.com> - 2017-08-28 12:10 +0200

#1721473 — [PATCH 0/3] Fix capture devices functionality on TM2

FromJaechul Lee <jcsing.lee@samsung.com>
Date2017-08-28 12:10 +0200
Subject[PATCH 0/3] Fix capture devices functionality on TM2
Message-ID<ujp9w-4iA-9@gated-at.bofh.it>
Hello,                                                                         

This patchset makes capture functionality working on TM2.                      
                                                                               
Capture devices can't be detected because I2S doesn't have appropriate dai
name. Therefore, TM2 will select unexpected cpu dai which is named
"i2s-samsung-sec" that doesn't have a capture functionality.

In samsung I2S driver, it tries to register two components without
specific name. The driver finally has components having same name: dai
name as well. As a result, dai_link doesn't have enough information to
select cpu_dai properly. 

Jaechul Lee (3):
  ASoC: samsung: i2s: Use specific name for i2s dais
  ASoC: samsung: Use 'samsung-i2s' cpu_dai for dai_links
  ASoC: samsung: Fix invalid argument when devm_gpiod_get is called

 sound/soc/samsung/i2s.c        | 6 ++++++
 sound/soc/samsung/tm2_wm5110.c | 7 ++++---
 2 files changed, 10 insertions(+), 3 deletions(-)

-- 
2.14.1

[toc] | [next] | [standalone]


#1721477 — [PATCH 2/3] ASoC: samsung: Use 'samsung-i2s' cpu_dai for dai_links

FromJaechul Lee <jcsing.lee@samsung.com>
Date2017-08-28 12:10 +0200
Subject[PATCH 2/3] ASoC: samsung: Use 'samsung-i2s' cpu_dai for dai_links
Message-ID<ujp9z-4iA-117@gated-at.bofh.it>
In reply to#1721473
Add specific cpu_dai_name to dai_link because samsung i2s driver registers
two dais and components. Selecting one of them clearly is needed more
information like cpu_dai_name, of_node. The reason why the dai_links have
to use 'samsung-i2s' for cpu_dai is that 'samsung-i2s-sec' doesn't have a
capture functionality.

Without this code, cpu_dai will be selected the first one of the
component_list. For example, if I describe nothing to cpu_dai_name,
'samsung-i2s-sec' might be selected to HiFi Primay.

Signed-off-by: Jaechul Lee <jcsing.lee@samsung.com>
---
 sound/soc/samsung/tm2_wm5110.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/sound/soc/samsung/tm2_wm5110.c b/sound/soc/samsung/tm2_wm5110.c
index 24cc9d63ce87..f467ad06e827 100644
--- a/sound/soc/samsung/tm2_wm5110.c
+++ b/sound/soc/samsung/tm2_wm5110.c
@@ -383,6 +383,7 @@ static struct snd_soc_dai_link tm2_dai_links[] = {
 	{
 		.name		= "WM5110 AIF1",
 		.stream_name	= "HiFi Primary",
+		.cpu_dai_name   = "samsung-i2s",
 		.codec_dai_name = "wm5110-aif1",
 		.ops		= &tm2_aif1_ops,
 		.dai_fmt	= SND_SOC_DAIFMT_I2S | SND_SOC_DAIFMT_NB_NF |
@@ -390,6 +391,7 @@ static struct snd_soc_dai_link tm2_dai_links[] = {
 	}, {
 		.name		= "WM5110 Voice",
 		.stream_name	= "Voice call",
+		.cpu_dai_name   = "samsung-i2s",
 		.codec_dai_name = "wm5110-aif2",
 		.ops		= &tm2_aif2_ops,
 		.dai_fmt	= SND_SOC_DAIFMT_I2S | SND_SOC_DAIFMT_NB_NF |
@@ -398,6 +400,7 @@ static struct snd_soc_dai_link tm2_dai_links[] = {
 	}, {
 		.name		= "WM5110 BT",
 		.stream_name	= "Bluetooth",
+		.cpu_dai_name   = "samsung-i2s",
 		.codec_dai_name = "wm5110-aif3",
 		.dai_fmt	= SND_SOC_DAIFMT_I2S | SND_SOC_DAIFMT_NB_NF |
 				  SND_SOC_DAIFMT_CBM_CFM,
@@ -477,7 +480,6 @@ static int tm2_probe(struct platform_device *pdev)
 	}
 
 	for (i = 0; i < card->num_links; i++) {
-		card->dai_link[i].cpu_dai_name = NULL;
 		card->dai_link[i].cpu_name = NULL;
 		card->dai_link[i].platform_name = NULL;
 		card->dai_link[i].codec_of_node = codec_dai_node;
-- 
2.14.1

[toc] | [prev] | [standalone]


Back to top | Article view | linux.kernel


csiph-web