All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] ASoC: rockchip: i2s: Support mono capture
@ 2018-01-05 22:12 ` Matthias Kaehlcke
  0 siblings, 0 replies; 11+ messages in thread
From: Matthias Kaehlcke @ 2018-01-05 22:12 UTC (permalink / raw)
  To: Liam Girdwood, Mark Brown, Jaroslav Kysela, Takashi Iwai, Heiko Stuebner
  Cc: alsa-devel, linux-arm-kernel, linux-rockchip, linux-kernel,
	Brian Norris, Dylan Reid, Matthias Kaehlcke

The Rockchip I2S controller only allows to configure even numbers of
capture channels. It is still possible to capture monophonic audio by
using dual-channel mode and ignoring the 'data' from the second
channel.

Signed-off-by: Matthias Kaehlcke <mka@chromium.org>
---
 sound/soc/rockchip/rockchip_i2s.c | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/sound/soc/rockchip/rockchip_i2s.c b/sound/soc/rockchip/rockchip_i2s.c
index 908211e1d6fc..cc22ab3d10dd 100644
--- a/sound/soc/rockchip/rockchip_i2s.c
+++ b/sound/soc/rockchip/rockchip_i2s.c
@@ -328,6 +328,7 @@ static int rockchip_i2s_hw_params(struct snd_pcm_substream *substream,
 		val |= I2S_CHN_4;
 		break;
 	case 2:
+	case 1:
 		val |= I2S_CHN_2;
 		break;
 	default:
@@ -460,7 +461,7 @@ static struct snd_soc_dai_driver rockchip_i2s_dai = {
 	},
 	.capture = {
 		.stream_name = "Capture",
-		.channels_min = 2,
+		.channels_min = 1,
 		.channels_max = 2,
 		.rates = SNDRV_PCM_RATE_8000_192000,
 		.formats = (SNDRV_PCM_FMTBIT_S8 |
@@ -654,7 +655,7 @@ static int rockchip_i2s_probe(struct platform_device *pdev)
 	}
 
 	if (!of_property_read_u32(node, "rockchip,capture-channels", &val)) {
-		if (val >= 2 && val <= 8)
+		if (val >= 1 && val <= 8)
 			soc_dai->capture.channels_max = val;
 	}
 
-- 
2.16.0.rc0.223.g4a4ac83678-goog

^ permalink raw reply related	[flat|nested] 11+ messages in thread

end of thread, other threads:[~2018-01-09 16:40 UTC | newest]

Thread overview: 11+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-01-05 22:12 [PATCH] ASoC: rockchip: i2s: Support mono capture Matthias Kaehlcke
2018-01-05 22:12 ` Matthias Kaehlcke
2018-01-08 12:35 ` Applied "ASoC: rockchip: i2s: Support mono capture" to the asoc tree Mark Brown
2018-01-08 12:35   ` Mark Brown
2018-01-08 12:35   ` Mark Brown
2018-01-08 12:35   ` Mark Brown
2018-01-09  0:01 ` [PATCH] ASoC: rockchip: i2s: Support mono capture Matthias Kaehlcke
2018-01-09  0:01   ` Matthias Kaehlcke
2018-01-09 16:39   ` Mark Brown
2018-01-09 16:39     ` Mark Brown
2018-01-09 16:39     ` Mark Brown

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.