From 18d9630471ec55a359e41706f0c817caac3392d0 Mon Sep 17 00:00:00 2001
From: Kamal Negi <kamaln@codeaurora.org>
Date: Fri, 3 Mar 2017 11:46:36 +0530
Subject: [PATCH] FM: Reset slimbus port on AUDIOFOCUS_LOSS_TRANSIENT_CAN_DUCK

On Audio focus loss, slave device, FM, keeps on sending packets to
master device, audio manager, even master is disconnected to slave
and slave's buffer overflowed after some time. Due to this, on Audio
focus gain, slave don't send packets to master. Hence no audio for
FM. Reset slimbus data port to overcome this situation.

Change-Id: I4751988149863be0af60fc5cfd268b91afbb685f
---
 fmapp2/src/com/caf/fmradio/FMRadioService.java | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/fmapp2/src/com/caf/fmradio/FMRadioService.java b/fmapp2/src/com/caf/fmradio/FMRadioService.java
index 52f9f77..7c89709 100644
--- a/fmapp2/src/com/caf/fmradio/FMRadioService.java
+++ b/fmapp2/src/com/caf/fmradio/FMRadioService.java
@@ -1590,6 +1590,8 @@ public class FMRadioService extends Service
                           stopRecording();
                   case AudioManager.AUDIOFOCUS_LOSS_TRANSIENT_CAN_DUCK:
                       Log.v(LOGTAG, "AudioFocus: received AUDIOFOCUS_LOSS_TRANSIENT_CAN_DUCK");
+                      if (mReceiver != null)
+                          mReceiver.EnableSlimbus(RESET_SLIMBUS_DATA_PORT);
                       if (true == mPlaybackInProgress) {
                           stopFM();
                       }
-- 
GitLab