Message ID | 1571432760-3008-5-git-send-email-Vishnuvardhanrao.Ravulapati@amd.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | [1/7] ASoC: amd: Create multiple I2S platform device endpoints. | expand |
Hi Mark, Any updates on this patch. Regards, Vishnu On 19/10/19 2:35 AM, Ravulapati Vishnu vardhan rao wrote: > whenever audio data equal to I2S-SP fifo watermark level is > produced/consumed, interrupt is generated. > > Signed-off-by: Ravulapati Vishnu vardhan rao <Vishnuvardhanrao.Ravulapati@amd.com> > --- > sound/soc/amd/raven/acp3x-pcm-dma.c | 14 ++++++++++++++ > 1 file changed, 14 insertions(+) > > diff --git a/sound/soc/amd/raven/acp3x-pcm-dma.c b/sound/soc/amd/raven/acp3x-pcm-dma.c > index 4fcef3f..a000ac4 100644 > --- a/sound/soc/amd/raven/acp3x-pcm-dma.c > +++ b/sound/soc/amd/raven/acp3x-pcm-dma.c > @@ -176,6 +176,13 @@ static irqreturn_t i2s_irq_handler(int irq, void *dev_id) > snd_pcm_period_elapsed(rv_i2s_data->play_stream); > play_flag = 1; > } > + if ((val & BIT(I2S_TX_THRESHOLD)) && > + rv_i2s_data->i2ssp_play_stream) { > + rv_writel(BIT(I2S_TX_THRESHOLD), > + rv_i2s_data->acp3x_base + mmACP_EXTERNAL_INTR_STAT); > + snd_pcm_period_elapsed(rv_i2s_data->i2ssp_play_stream); > + play_flag = 1; > + } > > if ((val & BIT(BT_RX_THRESHOLD)) && rv_i2s_data->capture_stream) { > rv_writel(BIT(BT_RX_THRESHOLD), rv_i2s_data->acp3x_base + > @@ -183,6 +190,13 @@ static irqreturn_t i2s_irq_handler(int irq, void *dev_id) > snd_pcm_period_elapsed(rv_i2s_data->capture_stream); > cap_flag = 1; > } > + if ((val & BIT(I2S_RX_THRESHOLD)) && > + rv_i2s_data->i2ssp_capture_stream) { > + rv_writel(BIT(I2S_RX_THRESHOLD), > + rv_i2s_data->acp3x_base + mmACP_EXTERNAL_INTR_STAT); > + snd_pcm_period_elapsed(rv_i2s_data->i2ssp_capture_stream); > + cap_flag = 1; > + } > > if (play_flag | cap_flag) > return IRQ_HANDLED; >
diff --git a/sound/soc/amd/raven/acp3x-pcm-dma.c b/sound/soc/amd/raven/acp3x-pcm-dma.c index 4fcef3f..a000ac4 100644 --- a/sound/soc/amd/raven/acp3x-pcm-dma.c +++ b/sound/soc/amd/raven/acp3x-pcm-dma.c @@ -176,6 +176,13 @@ static irqreturn_t i2s_irq_handler(int irq, void *dev_id) snd_pcm_period_elapsed(rv_i2s_data->play_stream); play_flag = 1; } + if ((val & BIT(I2S_TX_THRESHOLD)) && + rv_i2s_data->i2ssp_play_stream) { + rv_writel(BIT(I2S_TX_THRESHOLD), + rv_i2s_data->acp3x_base + mmACP_EXTERNAL_INTR_STAT); + snd_pcm_period_elapsed(rv_i2s_data->i2ssp_play_stream); + play_flag = 1; + } if ((val & BIT(BT_RX_THRESHOLD)) && rv_i2s_data->capture_stream) { rv_writel(BIT(BT_RX_THRESHOLD), rv_i2s_data->acp3x_base + @@ -183,6 +190,13 @@ static irqreturn_t i2s_irq_handler(int irq, void *dev_id) snd_pcm_period_elapsed(rv_i2s_data->capture_stream); cap_flag = 1; } + if ((val & BIT(I2S_RX_THRESHOLD)) && + rv_i2s_data->i2ssp_capture_stream) { + rv_writel(BIT(I2S_RX_THRESHOLD), + rv_i2s_data->acp3x_base + mmACP_EXTERNAL_INTR_STAT); + snd_pcm_period_elapsed(rv_i2s_data->i2ssp_capture_stream); + cap_flag = 1; + } if (play_flag | cap_flag) return IRQ_HANDLED;
whenever audio data equal to I2S-SP fifo watermark level is produced/consumed, interrupt is generated. Signed-off-by: Ravulapati Vishnu vardhan rao <Vishnuvardhanrao.Ravulapati@amd.com> --- sound/soc/amd/raven/acp3x-pcm-dma.c | 14 ++++++++++++++ 1 file changed, 14 insertions(+)