[Bugfix][T106][task-view-151] sync ecall clear conflict call code from
T800 to T106

        Only Configure: No
        Affected branch: unknown
        Affected module: call
        Is it affected on both ZXIC and MTK: only ZXIC
        Self-test: yes
        Doc Update: no

Change-Id: I043677df5da7f85a134ec18b1603a9e1c990e3bb
diff --git a/cap/zx297520v3/src/lynq/framework/lynq-ril-service/src/ecall/eCall.cpp b/cap/zx297520v3/src/lynq/framework/lynq-ril-service/src/ecall/eCall.cpp
index dd0b7ff..fa901f9 100755
--- a/cap/zx297520v3/src/lynq/framework/lynq-ril-service/src/ecall/eCall.cpp
+++ b/cap/zx297520v3/src/lynq/framework/lynq-ril-service/src/ecall/eCall.cpp
@@ -424,8 +424,7 @@
     }
     else if(sig.sival_int == redial_sig_value) {
         redial_tag = REDIAL_EXPIRES;
-        RequestInfo* pRI = creatRILInfoAndInit(RIL_REQUEST_ECALL_RESET_IVS, UDP,RIL_SOCKET_ID(fast_ecall_socket_id));
-        resetIVS(0, NULL, RIL_SOCKET_ID(fast_ecall_socket_id), pRI);
+        resetEcallIVSandAudio(UDP, RIL_SOCKET_ID(fast_ecall_socket_id));      
         fast_argc = 0;
         fast_argv.clear();
      
@@ -632,7 +631,7 @@
         stop_ecall_timer(sRedialTimer, redial_sig_value);
 		
         redial_tag = REDIAL_SUCCESS;
-        resetEcallIVSandAudio(RSPD, soc_id);
+        resetEcallIVSandAudio(RSPD, RIL_SOCKET_ID(fast_ecall_socket_id));
         saveEcallRecord(p_cur->ind);
 
         act_fecall_socid = soc_id;
@@ -724,8 +723,7 @@
             stop_ecall_timer(sT6,sT6_sig_value);
             stop_ecall_timer(sT7,sT7_sig_value);
             ecall_test_sub_recover();
-            RequestInfo* pRI = creatRILInfoAndInit(RIL_REQUEST_ECALL_RESET_IVS, UDP, soc_id);
-            resetIVS(0, NULL, soc_id, pRI);
+            resetEcallIVSandAudio(UDP, soc_id);                 
             redialFastEcall(soc_id);
         }
         else {   /* redial_tag == REDIAL_SUCCESS || redial_tag == REDIAL_EXPIRES */
@@ -1012,7 +1010,7 @@
 //RIL_REQUEST_ECALL_RESET_IVS
 int resetIVS(int argc, char **argv, RIL_SOCKET_ID socket_id, RequestInfo *pRI) {
   android::Parcel p;
-
+/*
   if (getSpeechStatus() == SPEECH_OFF) {
     if (get_audio_path() == 0) {
       setSpeechAndStatus(1);
@@ -1020,7 +1018,7 @@
       setSpeechAndStatus(2);
     }
   }
-
+*/
   //paramter none
   pRI->pCI->dispatchFunction(p, pRI);
   return 0;
diff --git a/cap/zx297520v3/src/lynq/lib/liblynq-call/lynq_call_ecall.cpp b/cap/zx297520v3/src/lynq/lib/liblynq-call/lynq_call_ecall.cpp
index d2efd14..23a3b45 100755
--- a/cap/zx297520v3/src/lynq/lib/liblynq-call/lynq_call_ecall.cpp
+++ b/cap/zx297520v3/src/lynq/lib/liblynq-call/lynq_call_ecall.cpp
@@ -52,7 +52,7 @@
 static LYNQ_ECall_Indication s_IncomingEcallIndication;

 int s_IncomingEcallId=INVALID_ID;

 LYNQ_ECall_Variant s_EcallVariant=LYNQ_ECALL_VAR_NONE;

-int s_ecall_whether_preempt=0;

+int s_ecall_whether_preempt=0x02;

 

 void sendSignalIncomingECallEvent()

 {

@@ -180,7 +180,7 @@
     {

         return true;

     }

-    else if(old_variant==LYNQ_ECALL_DAILING_STATE_NONE)

+    else if(old_variant==LYNQ_ECALL_TYPE_TEST)

     {

         return true;

     }        

@@ -235,6 +235,10 @@
             ret=lynq_clear_current_call();

             LYERRLOG("ecall clear conflict call, relase current normal call ret is %d",ret);                         

         }

+    else 

+    {

+            LYINFLOG("ecall clear conflict call, exits conflict normal call, let lower platform release them");

+    }

         return RESULT_OK;          

     }

 

@@ -479,7 +483,7 @@
     }

     if(enable<0)

     {

-       if(enable >-200)

+       if(enable >-300)

        {

            goto set_ivs_end;

 //         lynq_set_common_request(RIL_REQUEST_ECALL_SET_IVS,1,"%d",enable);

@@ -490,7 +494,7 @@
        } 

        else

        {

-           s_ecall_whether_preempt= ((-200-enable) & 0x11);           

+           s_ecall_whether_preempt= ((-300-enable) & 0x11);           

        }

        return RESULT_OK;   

     }

@@ -602,12 +606,15 @@
            {

                LYINFLOG("ecall is dialing, recv suc indication");

                s_module_is_ecall_dial = LYNQ_ECALL_DAILING_STATE_NONE;

-               if(ecallId >0 && find_call_id_with_call_id(ecallId)==INVALID_ID)

+               if(ecallId >0)

                {

-                     LYINFLOG("add ecall in loacl list");

-                     s_ecallId = ecallId;

-                     addAddr("ecall",s_ecallId);               

-               } 

+                   if(find_call_id_with_call_id(ecallId)==INVALID_ID)

+                   {

+                        LYINFLOG("add ecall in loacl list");                             	 

+                        addAddr("ecall",ecallId);               

+                   }	

+                   s_ecallId = ecallId; //API-871 ecall id maybe exists in local list as noraml call to be replaced

+               }     	       	   

                send_signal_to_wait_call_state=true;                             

            }        

            else if(ecallId >0 && (find_call_id_with_call_id(ecallId)==INVALID_ID) &&  (s_EcallVariant != LYNQ_ECALL_CALLBACK))