[Feature][ZXW-65]merged P49 base code

Change-Id: I3e09c0c3d47483bc645f02310380ecb7fc6f4041
diff --git a/cp/ps/driver/inc/misc/drvs_voiceprocess.h b/cp/ps/driver/inc/misc/drvs_voiceprocess.h
index 3b6795f..db2104e 100755
--- a/cp/ps/driver/inc/misc/drvs_voiceprocess.h
+++ b/cp/ps/driver/inc/misc/drvs_voiceprocess.h
@@ -245,7 +245,8 @@
     UINT32 sample_rate;//20

     UINT8 useDtmfLoop;//21

     SINT32 muteCount;//22 mute_count

-	BOOL rxMuteEn; //23

+    BOOL vpLoopBkRunning;//23 

+	BOOL rxMuteEn; //24

 } T_zDrvVoice_GbVar; //T_zDrvVoice_GbVar

 

 typedef struct

diff --git a/cp/ps/driver/src/chipsets/src/audio_base/audio_lib/amr/lib/armv7-a/GCC/amr.a b/cp/ps/driver/src/chipsets/src/audio_base/audio_lib/amr/lib/armv7-a/GCC/amr.a
index fb294e6..0af6537 100644
--- a/cp/ps/driver/src/chipsets/src/audio_base/audio_lib/amr/lib/armv7-a/GCC/amr.a
+++ b/cp/ps/driver/src/chipsets/src/audio_base/audio_lib/amr/lib/armv7-a/GCC/amr.a
Binary files differ
diff --git a/cp/ps/driver/src/chipsets/src/audio_base/audiointf/hal_audextintf.c b/cp/ps/driver/src/chipsets/src/audio_base/audiointf/hal_audextintf.c
index a1899f0..f8869d2 100755
--- a/cp/ps/driver/src/chipsets/src/audio_base/audiointf/hal_audextintf.c
+++ b/cp/ps/driver/src/chipsets/src/audio_base/audiointf/hal_audextintf.c
@@ -177,6 +177,16 @@
 {

 	return zDrvVp_ToneMixerStart(toneNum);

 }

+SINT32 zDrvVp_SetVpLoop_Wrap(int path)

+{

+	return zDrvVp_Loop(path);

+}

+SINT32 zDrvVp_GetVpLoop_Wrap(VOID)

+{

+	zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "%s:vpLoopBkRunning=%d.\n", __func__, g_voiceVar.vpLoopBkRunning);

+    zOss_Printf(SUBMDL_HAL, PRINT_LEVEL_NORMAL,  "%s:vpLoopBkRunning=%d.\n", __func__, g_voiceVar.vpLoopBkRunning);

+	return g_voiceVar.vpLoopBkRunning;

+}

 

 SINT32 zDrvVp_GetSlicFlag(VOID)

 {

diff --git a/cp/ps/driver/src/chipsets/src/audio_base/voiceprocess/hal_voiceprocess.c b/cp/ps/driver/src/chipsets/src/audio_base/voiceprocess/hal_voiceprocess.c
index 81e683d..95f6404 100755
--- a/cp/ps/driver/src/chipsets/src/audio_base/voiceprocess/hal_voiceprocess.c
+++ b/cp/ps/driver/src/chipsets/src/audio_base/voiceprocess/hal_voiceprocess.c
@@ -104,7 +104,8 @@
     0, //sample_rate 20 

 	0, //useDtmfLoop; 21

 	0, //muteCount;//mute_count 22	

-	FALSE,              //rxMuteEn 23

+    FALSE,				//23 vpLoopBkRunning

+	FALSE,              //24 rxMuteEn

 };

 

 static T_zDrvVp_State s_vpState =

@@ -3323,7 +3324,9 @@
 

 	while (1)

 	{

+	    zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO,  "%s: wait vpLoopSemaphore!\n",__FUNCTION__);

 		zOss_GetSemaphore(s_vpState.vpLoopSemaphore, ZOSS_WAIT_FOREVER);

+	    zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO,  "%s: get vpLoopSemaphore, start loop!\n",__FUNCTION__);

 		s_speechState.pVpTempRxInBuffer = s_vpState.pVpRxInBuffer;

 		s_speechState.pVpTempTxInBuffer = s_vpState.pVpTxInBuffer;

 		s_speechState.pVpTempRxOutPutBuffer = s_vpState.pVpRxOutPutBuffer;

@@ -3344,6 +3347,8 @@
 			zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "zDrvVp_LoopStartDo err! \r\n");

 			continue;

 		}

+		zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "zDrvVp_Loop thread start! \r\n");

+		g_voiceVar.vpLoopBkRunning = TRUE;			

 

 		while (g_voiceVar.vpI2sStatus == VP_LOOP_ON)

 		{

@@ -3541,6 +3546,7 @@
 			zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "zDrvI2S_Close I2S1 Stop wrong  ret=%d", ret);

 		}

 		zDrvRamlog_PRINTF(RAMLOG_MOD_AUDIO, "vp_LoopProcessThreadEntry work end.\n");

+		g_voiceVar.vpLoopBkRunning = FALSE;	

 	}

 }