[Bugfix][API-679]channel 228 wakeup source because mipc
Change-Id: I6248bfe03ae7bcc18f98b4a8d90a9813b50d5ecf
(cherry picked from commit e4e29ff9d531dc2443b004b531e70794954846f1)
diff --git a/src/telephonyware/3.0/hardware/ril/fusion/libril/rilmipc/telephony/ims/RpImsController.h b/src/telephonyware/3.0/hardware/ril/fusion/libril/rilmipc/telephony/ims/RpImsController.h
index 97efabc..5b081b9 100644
--- a/src/telephonyware/3.0/hardware/ril/fusion/libril/rilmipc/telephony/ims/RpImsController.h
+++ b/src/telephonyware/3.0/hardware/ril/fusion/libril/rilmipc/telephony/ims/RpImsController.h
@@ -43,7 +43,11 @@
#include "RfxTimer.h"
#include <utils/Vector.h>
-
+/*jb.qi change for channel 228 resume on 2022.11.18 start*/
+#include "mipc_msg_host.h"
+#include "mipc_msg_tlv_const.h"
+#include "mipc_msg_tlv_api.h"
+/*jb.qi change for channel 228 resume on 2022.11.18 end */
/*****************************************************************************
* Class RpDataController
*****************************************************************************/
@@ -67,5 +71,6 @@
virtual void handleImsRegistrationState(const sp<RfxMessage>& request);
};
+void mipc_ims_state_ind_cb(mipc_msg_t *msg_ptr, void *priv_ptr); //jb.qi change for channel 228 resume on 2022.11.18
#endif /* __RP_SYS_CONTROLLER_H__ */
diff --git a/src/telephonyware/3.0/hardware/ril/fusion/libril/rilmipc/telephony/network/RpNwController.cpp b/src/telephonyware/3.0/hardware/ril/fusion/libril/rilmipc/telephony/network/RpNwController.cpp
index 0d02dd2..7efb045 100755
--- a/src/telephonyware/3.0/hardware/ril/fusion/libril/rilmipc/telephony/network/RpNwController.cpp
+++ b/src/telephonyware/3.0/hardware/ril/fusion/libril/rilmipc/telephony/network/RpNwController.cpp
@@ -39,7 +39,7 @@
*****************************************************************************/
#include "RpNwController.h"
-
+#include "../ims/RpImsController.h"
#include <sys/un.h>
#include <errno.h>
#include <unistd.h>
@@ -2111,7 +2111,7 @@
void RpNwController::handleScreenStateRequest(const sp<RfxMessage>& request)
{
Parcel* p = request->getParcel();
-
+ int ret; //jb.qi change for channel 228 resume on 2022.11.18
int32_t count = 0;
android::status_t status = android::NO_ERROR;
int32_t screen_state = -1;
@@ -2135,12 +2135,18 @@
mipc_nw_ps_register(slot_id_to_mipc_sim_id(getSlotId()),mipc_unsol_nw_ps_ind_cb,NULL);
mipc_nw_cs_register(slot_id_to_mipc_sim_id(getSlotId()),mipc_unsol_nw_cs_ind_cb,NULL);
mipc_nw_psbearer_ind_register(slot_id_to_mipc_sim_id(getSlotId()),mipc_unsol_nw_psbearer_ind_cb,NULL);
+ /*jb.qi change for channel 228 resume on 2022.11.18 start*/
+ ret = mipc_msg_register_ind_api((mipc_msg_sim_ps_id_enum)slot_id_to_mipc_sim_id(getSlotId()), MIPC_IMS_STATE_IND, (void*)mipc_ims_state_ind_cb, NULL, NULL);
+ /*jb.qi change for channel 228 resume on 2022.11.18 end*/
}else {
mipc_nw_nitz_register(slot_id_to_mipc_sim_id(getSlotId()),NULL,NULL);
mipc_nw_signal_state_register(slot_id_to_mipc_sim_id(getSlotId()),NULL,NULL);
mipc_nw_ps_register(slot_id_to_mipc_sim_id(getSlotId()),NULL,NULL);
mipc_nw_cs_register(slot_id_to_mipc_sim_id(getSlotId()),NULL,NULL);
mipc_nw_psbearer_ind_register(slot_id_to_mipc_sim_id(getSlotId()),NULL,NULL);
+ /*jb.qi change for channel 228 resume on 2022.11.18 start*/
+ ret = mipc_msg_register_ind_api((mipc_msg_sim_ps_id_enum)slot_id_to_mipc_sim_id(getSlotId()), MIPC_IMS_STATE_IND, NULL, NULL, NULL);
+ /*jb.qi change for channel 228 resume on 2022.11.18 end*/
}
rfx_enqueue_response_message(NULL,request->getRilToken(),(RIL_SOCKET_ID)request->getSlotId(),RIL_E_SUCCESS);
return;