diff mbox

[RFC,05/15] ASoC: qcom: ipq806x: add error in dma allocation.

Message ID 1454347723-10550-1-git-send-email-srinivas.kandagatla@linaro.org (mailing list archive)
State RFC
Delegated to: Andy Gross
Headers show

Commit Message

Srinivas Kandagatla Feb. 1, 2016, 5:28 p.m. UTC
ipq806x is only ever tested for playback so return error in dma allocation
if the stream direction is capture.

Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
---
 sound/soc/qcom/lpass-ipq806x.c | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

Comments

Kenneth Westfield Feb. 3, 2016, 12:36 a.m. UTC | #1
On Mon, Feb 01, 2016 at 09:28:43AM -0800, Srinivas Kandagatla wrote:
> diff --git a/sound/soc/qcom/lpass-ipq806x.c
> b/sound/soc/qcom/lpass-ipq806x.c
> index 119048c..8bdcdcb 100644
> --- a/sound/soc/qcom/lpass-ipq806x.c
> +++ b/sound/soc/qcom/lpass-ipq806x.c
> @@ -65,7 +65,10 @@ static struct snd_soc_dai_driver
> ipq806x_lpass_cpu_dai_driver = {
>  
>  static int ipq806x_lpass_alloc_dma_channel(struct lpass_data *drvdata,
> int dir)
>  {
> -	return IPQ806X_LPAIF_RDMA_CHAN_MI2S;
> +	if (dir == SNDRV_PCM_STREAM_PLAYBACK)
> +		return IPQ806X_LPAIF_RDMA_CHAN_MI2S;
> +	else	/* Capture not supported */
> +		return -EINVAL;
>  }

The comment could be read as "Capture not supported by hardware", which
isn't true.  Maybe "Capture currently not implemented"?
Srinivas Kandagatla Feb. 3, 2016, 8:48 a.m. UTC | #2
On 03/02/16 00:36, Kenneth Westfield wrote:
> On Mon, Feb 01, 2016 at 09:28:43AM -0800, Srinivas Kandagatla wrote:
>> diff --git a/sound/soc/qcom/lpass-ipq806x.c
>> b/sound/soc/qcom/lpass-ipq806x.c
>> index 119048c..8bdcdcb 100644
>> --- a/sound/soc/qcom/lpass-ipq806x.c
>> +++ b/sound/soc/qcom/lpass-ipq806x.c
>> @@ -65,7 +65,10 @@ static struct snd_soc_dai_driver
>> ipq806x_lpass_cpu_dai_driver = {
>>
>>   static int ipq806x_lpass_alloc_dma_channel(struct lpass_data *drvdata,
>> int dir)
>>   {
>> -	return IPQ806X_LPAIF_RDMA_CHAN_MI2S;
>> +	if (dir == SNDRV_PCM_STREAM_PLAYBACK)
>> +		return IPQ806X_LPAIF_RDMA_CHAN_MI2S;
>> +	else	/* Capture not supported */
>> +		return -EINVAL;
>>   }
>
> The comment could be read as "Capture not supported by hardware", which
> isn't true.  Maybe "Capture currently not implemented"?
Agreed, I will change this in next version.
>
--
To unsubscribe from this list: send the line "unsubscribe linux-arm-msm" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
diff mbox

Patch

diff --git a/sound/soc/qcom/lpass-ipq806x.c b/sound/soc/qcom/lpass-ipq806x.c
index 119048c..8bdcdcb 100644
--- a/sound/soc/qcom/lpass-ipq806x.c
+++ b/sound/soc/qcom/lpass-ipq806x.c
@@ -65,7 +65,10 @@  static struct snd_soc_dai_driver ipq806x_lpass_cpu_dai_driver = {
 
 static int ipq806x_lpass_alloc_dma_channel(struct lpass_data *drvdata, int dir)
 {
-	return IPQ806X_LPAIF_RDMA_CHAN_MI2S;
+	if (dir == SNDRV_PCM_STREAM_PLAYBACK)
+		return IPQ806X_LPAIF_RDMA_CHAN_MI2S;
+	else	/* Capture not supported */
+		return -EINVAL;
 }
 
 static int ipq806x_lpass_free_dma_channel(struct lpass_data *drvdata, int chan)