[PATCH] ASoC: qcom: SC7280: Update machine driver startup, shutdown callbacks
Srinivasa Rao Mandadapu
quic_srivasam at quicinc.com
Tue Apr 19 11:39:10 CEST 2022
On 4/19/2022 2:49 PM, Srinivas Kandagatla wrote:
Thanks for your time Srini!!
>
>
> On 19/04/2022 08:16, Srinivasa Rao Mandadapu wrote:
>> Update machine driver startup, shutdown callback functions to support
>> codec DMA paths. Without this change, platforms with WCD codec is
>> failing
>> to register sound card.
>>
>> Signed-off-by: Srinivasa Rao Mandadapu <quic_srivasam at quicinc.com>
>> Co-developed-by: Venkata Prasad Potturu <quic_potturu at quicinc.com>
>> Signed-off-by: Venkata Prasad Potturu <quic_potturu at quicinc.com>
>> ---
>> sound/soc/qcom/sc7280.c | 8 ++++++++
>> 1 file changed, 8 insertions(+)
>>
>> diff --git a/sound/soc/qcom/sc7280.c b/sound/soc/qcom/sc7280.c
>> index 4ef4034..d64df11 100644
>> --- a/sound/soc/qcom/sc7280.c
>> +++ b/sound/soc/qcom/sc7280.c
>> @@ -295,6 +295,10 @@ static void sc7280_snd_shutdown(struct
>> snd_pcm_substream *substream)
>> break;
>> case LPASS_DP_RX:
>> break;
>> + case LPASS_CDC_DMA_RX0 ... LPASS_CDC_DMA_RX9:
>> + case LPASS_CDC_DMA_TX0 ... LPASS_CDC_DMA_TX8:
>> + case LPASS_CDC_DMA_VA_TX0 ... LPASS_CDC_DMA_VA_TX8:
>> + break;
>> default:
>> dev_err(rtd->dev, "%s: invalid dai id 0x%x\n", __func__,
>> cpu_dai->id);
>
> Why not just make sc7280_snd_startup code like this:
>
> static int sc7280_snd_startup(struct snd_pcm_substream *substream)
> {
> struct snd_soc_pcm_runtime *rtd = substream->private_data;
> struct snd_soc_dai *cpu_dai = asoc_rtd_to_cpu(rtd, 0);
> int ret = 0;
>
> switch (cpu_dai->id) {
> case MI2S_PRIMARY:
> ret = sc7280_rt5682_init(rtd);
> break;
> default:
> break;
> }
> return ret;
> }
>
> and sc7280_snd_shutdown with something similar
Yes. we can do as you suggested. Then Shall I do it as fix to a commit?
i.e. c5198db ASoC: qcom: Add driver support for ALC5682I-VS
>
> --srini
>> @@ -316,6 +320,10 @@ static int sc7280_snd_startup(struct
>> snd_pcm_substream *substream)
>> break;
>> case LPASS_DP_RX:
>> break;
>> + case LPASS_CDC_DMA_RX0 ... LPASS_CDC_DMA_RX9:
>> + case LPASS_CDC_DMA_TX0 ... LPASS_CDC_DMA_TX8:
>> + case LPASS_CDC_DMA_VA_TX0 ... LPASS_CDC_DMA_VA_TX8:
>> + break;
>> default:
>> dev_err(rtd->dev, "%s: invalid dai id 0x%x\n", __func__,
>> cpu_dai->id);
More information about the Alsa-devel
mailing list