diff mbox

[1/1] ASoC: davinci-mcasp: Only disable inactive serializer

Message ID 20180227145104.5868-2-vishalthanki@gmail.com (mailing list archive)
State Accepted
Commit 096a8f835e7d19f0402386353586d285566eee06
Headers show

Commit Message

Vishal Thanki Feb. 27, 2018, 2:51 p.m. UTC
As a side effect of the following commit, the active TX
serializer may get disabled which may result in distorted
audio output.

ASoC: davinci-mcasp: Add support for multichannel playback
(2952b27e2e463b28d5c0f04000f96b968137ca42)

For example, if a 4 channel I2S playback with two TX serializers
is activated. Later on, if a recording of 2 channels, with only 1 RX
serializer is started, which will also disable one of the TX
serializer because max_active_serializers is only calculated for
RX (recording) stream. This patch fixes this issue.

Signed-off-by: Vishal Thanki <vishalthanki@gmail.com>
---
 sound/soc/davinci/davinci-mcasp.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

Peter Ujfalusi March 5, 2018, 12:42 p.m. UTC | #1
On 2018-02-27 16:51, Vishal Thanki wrote:
> As a side effect of the following commit, the active TX
> serializer may get disabled which may result in distorted
> audio output.
> 
> ASoC: davinci-mcasp: Add support for multichannel playback
> (2952b27e2e463b28d5c0f04000f96b968137ca42)
> 
> For example, if a 4 channel I2S playback with two TX serializers
> is activated. Later on, if a recording of 2 channels, with only 1 RX
> serializer is started, which will also disable one of the TX
> serializer because max_active_serializers is only calculated for
> RX (recording) stream. This patch fixes this issue.

Acked-by: Peter Ujfalusi <peter.ujfalusi@ti.com>

> Signed-off-by: Vishal Thanki <vishalthanki@gmail.com>
> ---
>  sound/soc/davinci/davinci-mcasp.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/sound/soc/davinci/davinci-mcasp.c b/sound/soc/davinci/davinci-mcasp.c
> index 03ba218160ca..f382dd55cae0 100644
> --- a/sound/soc/davinci/davinci-mcasp.c
> +++ b/sound/soc/davinci/davinci-mcasp.c
> @@ -789,7 +789,7 @@ static int mcasp_common_hw_param(struct davinci_mcasp *mcasp, int stream,
>  					rx_ser < max_active_serializers) {
>  			mcasp_clr_bits(mcasp, DAVINCI_MCASP_PDIR_REG, AXR(i));
>  			rx_ser++;
> -		} else {
> +		} else if (mcasp->serial_dir[i] == INACTIVE_MODE) {
>  			mcasp_mod_bits(mcasp, DAVINCI_MCASP_XRSRCTL_REG(i),
>  				       SRMOD_INACTIVE, SRMOD_MASK);
>  		}
> 

- Péter

Texas Instruments Finland Oy, Porkkalankatu 22, 00180 Helsinki.
Y-tunnus/Business ID: 0615521-4. Kotipaikka/Domicile: Helsinki
Vishal Thanki March 27, 2018, 11:34 a.m. UTC | #2
Hi Mark,

On Mon, Mar 5, 2018 at 1:42 PM, Peter Ujfalusi <peter.ujfalusi@ti.com> wrote:
>
>
> On 2018-02-27 16:51, Vishal Thanki wrote:
>> As a side effect of the following commit, the active TX
>> serializer may get disabled which may result in distorted
>> audio output.
>>
>> ASoC: davinci-mcasp: Add support for multichannel playback
>> (2952b27e2e463b28d5c0f04000f96b968137ca42)
>>
>> For example, if a 4 channel I2S playback with two TX serializers
>> is activated. Later on, if a recording of 2 channels, with only 1 RX
>> serializer is started, which will also disable one of the TX
>> serializer because max_active_serializers is only calculated for
>> RX (recording) stream. This patch fixes this issue.
>
> Acked-by: Peter Ujfalusi <peter.ujfalusi@ti.com>
>
>> Signed-off-by: Vishal Thanki <vishalthanki@gmail.com>

Just a gentle reminder, can this patch be accepted for the next release?

Regards,
Vishal
Mark Brown March 27, 2018, 11:57 a.m. UTC | #3
On Tue, Mar 27, 2018 at 01:34:55PM +0200, Vishal Thanki wrote:

> Just a gentle reminder, can this patch be accepted for the next release?

Please don't send content free pings and please allow a reasonable time
for review.  People get busy, go on holiday, attend conferences and so 
on so unless there is some reason for urgency (like critical bug fixes)
please allow at least a couple of weeks for review.  If there have been
review comments then people may be waiting for those to be addressed.
Sending content free pings just adds to the mail volume (if they are
seen at all) and if something has gone wrong you'll have to resend the
patches anyway.
Mark Brown March 27, 2018, 11:58 a.m. UTC | #4
On Tue, Mar 27, 2018 at 01:34:55PM +0200, Vishal Thanki wrote:
> On Mon, Mar 5, 2018 at 1:42 PM, Peter Ujfalusi <peter.ujfalusi@ti.com> wrote:

> > Acked-by: Peter Ujfalusi <peter.ujfalusi@ti.com>

> >> Signed-off-by: Vishal Thanki <vishalthanki@gmail.com>

> Just a gentle reminder, can this patch be accepted for the next release?

Oh, and it was just pointed out to me:

As documented in SubmittingPatches please send patches to the 
maintainers for the code you would like to change.  The normal kernel
workflow is that people apply patches from their inboxes, if they aren't
copied they are likely to not see the patch at all and it is much more
difficult to apply patches.
diff mbox

Patch

diff --git a/sound/soc/davinci/davinci-mcasp.c b/sound/soc/davinci/davinci-mcasp.c
index 03ba218160ca..f382dd55cae0 100644
--- a/sound/soc/davinci/davinci-mcasp.c
+++ b/sound/soc/davinci/davinci-mcasp.c
@@ -789,7 +789,7 @@  static int mcasp_common_hw_param(struct davinci_mcasp *mcasp, int stream,
 					rx_ser < max_active_serializers) {
 			mcasp_clr_bits(mcasp, DAVINCI_MCASP_PDIR_REG, AXR(i));
 			rx_ser++;
-		} else {
+		} else if (mcasp->serial_dir[i] == INACTIVE_MODE) {
 			mcasp_mod_bits(mcasp, DAVINCI_MCASP_XRSRCTL_REG(i),
 				       SRMOD_INACTIVE, SRMOD_MASK);
 		}