Add Multiple AT channels supported for ril api v2
Change-Id: I53f574c85d07bd7b8e0dd15d2e596d23c8772907
diff --git a/mbtk/mbtk_rild_v2/src/ril_sms.c b/mbtk/mbtk_rild_v2/src/ril_sms.c
index c2c87d6..bb64f34 100755
--- a/mbtk/mbtk_rild_v2/src/ril_sms.c
+++ b/mbtk/mbtk_rild_v2/src/ril_sms.c
@@ -17,7 +17,7 @@
#include "mbtk_utils.h"
#include "ril_info.h"
-void ril_rsp_pack_send(int fd, int ril_id, int msg_index, const void* data, int data_len);
+void ril_rsp_pack_send(ATPortType_enum port, int fd, int ril_id, int msg_index, const void* data, int data_len);
/*
AT+CMGF?
@@ -26,11 +26,11 @@
OK
*/
-static int req_cmgf_get(int *state, int *cme_err)
+static int req_cmgf_get(ATPortType_enum port, int *state, int *cme_err)
{
ATResponse *response = NULL;
// char *tmp_ptr = NULL;
- int err = at_send_command_singleline("AT+CMGF?", "", &response);
+ int err = at_send_command_singleline(port, "AT+CMGF?", "", &response);
if (err < 0 || response->success == 0 || !response->p_intermediates){
*cme_err = at_get_cme_error(response);
@@ -61,7 +61,7 @@
OK
*/
-static int req_cmgf_set(int state, int *cme_err)
+static int req_cmgf_set(ATPortType_enum port, int state, int *cme_err)
{
LOGD("req_cmgf_set()-------------start");
LOGD("state:%d",state);
@@ -77,7 +77,7 @@
}
LOGD("req_cmgf_set()----cmd:%s", cmd);
- int err = at_send_command(cmd, &response);
+ int err = at_send_command(port, cmd, &response);
if (err < 0 || response->success == 0) {
*cme_err = at_get_cme_error(response);
@@ -91,7 +91,7 @@
}
/*set AT+CNMI=1,2*/
-static int req_cnmi_set(int *cme_err)
+static int req_cnmi_set(ATPortType_enum port, int *cme_err)
{
printf("req_cnmi_set()-------------start3\n");
ATResponse *response = NULL;
@@ -100,7 +100,7 @@
strcpy(cmd, "AT+CNMI=1,2");
printf("req_cnmi_set()----cmd:%s\n", cmd);
- int err = at_send_command(cmd, &response);
+ int err = at_send_command(port, cmd, &response);
if (err < 0 || response->success == 0) {
printf("err:%d, response->success:%d \n", err, response->success);
@@ -123,12 +123,12 @@
OK
*/
-static int req_cpms_get(char *reg, int *cme_err)
+static int req_cpms_get(ATPortType_enum port, char *reg, int *cme_err)
{
printf("req_cpms_get------------start(3)\n");
ATResponse *response = NULL;
// char *tmp_ptr = NULL;
- int err = at_send_command_singleline("AT+CPMS?", "", &response);
+ int err = at_send_command_singleline(port, "AT+CPMS?", "", &response);
if (err < 0 || response->success == 0 || !response->p_intermediates){
*cme_err = at_get_cme_error(response);
@@ -170,7 +170,7 @@
OK
*/
-static int req_cpms_set(const char *mem, char *reg, int len, int *cme_err)
+static int req_cpms_set(ATPortType_enum port, const char *mem, char *reg, int len, int *cme_err)
{
printf("req_cpms_set(2)----------------start\n");
printf("mem:%s\n", mem);
@@ -192,7 +192,7 @@
if(strlen(cmd) > 8)
{
- err = at_send_command_multiline(cmd, "+CPMS:", &response);
+ err = at_send_command_multiline(port, cmd, "+CPMS:", &response);
if (err < 0 || response->success == 0){
*cme_err = at_get_cme_error(response);
goto exit;
@@ -224,7 +224,7 @@
*/
-static int req_cmgs_set(char *cmgs, char *reg, int len, int *cme_err)
+static int req_cmgs_set(ATPortType_enum port, char *cmgs, char *reg, int len, int *cme_err)
{
LOGD("req_cmgs_set()----------------start");
LOGD("cmgs:%s", cmgs);
@@ -262,7 +262,7 @@
if(strlen(cmd) > 0)
{
- int err = at_send_command_sms(cmd, data, "+CMGS: ", &response);
+ int err = at_send_command_sms(port, cmd, data, "+CMGS: ", &response);
LOGD("err:%d, response:%d", err, response->success);
if (err < 0 || response->success == 0) {
@@ -281,7 +281,7 @@
return err;
}
-static int req_cmgw_set(char *cmgw,int len, int *cme_err)
+static int req_cmgw_set(ATPortType_enum port, char *cmgw,int len, int *cme_err)
{
printf("req_cmgw_set()----------------start\n");
printf("cmgw:%s\n", cmgw);
@@ -307,7 +307,7 @@
if(strlen(cmd) > 0)
{
- int err = at_send_command_sms(cmd, data, "+CMGW: ", &response);
+ int err = at_send_command_sms(port, cmd, data, "+CMGW: ", &response);
printf("err:%d, response:%d\n", err, response->success);
if (err < 0 || response->success == 0) {
@@ -330,7 +330,7 @@
+MMSG: 1, 0
*/
-static int req_cmgd_set(char *cmgd, int len, int *cme_err)
+static int req_cmgd_set(ATPortType_enum port, char *cmgd, int len, int *cme_err)
{
printf("0req_cmgd_set()--------------start\n");
printf("cmgd:%s\n", cmgd);
@@ -347,7 +347,7 @@
if(strlen(cmd) > 0)
{
- int err = at_send_command(cmd, &response);
+ int err = at_send_command(port, cmd, &response);
if (err < 0 || response->success == 0) {
*cme_err = at_get_cme_error(response);
goto exit;
@@ -372,11 +372,11 @@
OK
*/
-static int req_cmgd_get(char *reg, int *cme_err)
+static int req_cmgd_get(ATPortType_enum port, char *reg, int *cme_err)
{
ATResponse *response = NULL;
// char *tmp_ptr = NULL;
- int err = at_send_command_singleline("AT+CMGD=?", "+CMGD:", &response);
+ int err = at_send_command_singleline(port, "AT+CMGD=?", "+CMGD:", &response);
if (err < 0 || response->success == 0 || !response->p_intermediates){
*cme_err = at_get_cme_error(response);
@@ -420,7 +420,7 @@
*/
-static int req_cmgl_set(const char *cmgl, char *reg, int len, int *cme_err)
+static int req_cmgl_set(ATPortType_enum port, const char *cmgl, char *reg, int len, int *cme_err)
{
printf("req_cmgl_set(2)-----------------start\n");
printf("cmgl:%s\n", cmgl);
@@ -463,7 +463,7 @@
if(strlen(cmd) > 0)
{
- err = at_send_command_multiline(cmd, "", &response);
+ err = at_send_command_multiline(port, cmd, "", &response);
if (err < 0 || response->success == 0 || !response->p_intermediates){
*cme_err = at_get_cme_error(response);
printf("at_send_command_multiline() is err-----------------\n");
@@ -534,11 +534,11 @@
+CSCA: "+8613800280500",145
OK
*/
-static int req_csca_get(char *req, int *cme_err)
+static int req_csca_get(ATPortType_enum port, char *req, int *cme_err)
{
ATResponse *response = NULL;
// char *tmp_ptr = NULL;
- int err = at_send_command_singleline("AT+CSCA?", "", &response);
+ int err = at_send_command_singleline(port, "AT+CSCA?", "", &response);
if (err < 0 || response->success == 0 || !response->p_intermediates){
*cme_err = at_get_cme_error(response);
@@ -565,7 +565,7 @@
return err;
}
-static int req_csca_set(char *csca, int len, int *cme_err)
+static int req_csca_set(ATPortType_enum port, char *csca, int len, int *cme_err)
{
printf("req_csca_set()--------------start\n");
printf("csca:%s\n", csca);
@@ -582,7 +582,7 @@
if(strlen(cmd) > 0)
{
- int err = at_send_command(cmd, &response);
+ int err = at_send_command(port, cmd, &response);
if (err < 0 || response->success == 0) {
*cme_err = at_get_cme_error(response);
goto exit;
@@ -598,7 +598,7 @@
return err;
}
-static int req_csmp_set(char *csmp, int len, int *cme_err)
+static int req_csmp_set(ATPortType_enum port, char *csmp, int len, int *cme_err)
{
printf("req_csmp_set()-------------------start\n");
printf("csmp:%s\n", csmp);
@@ -615,7 +615,7 @@
if(strlen(cmd) > 0)
{
- int err = at_send_command(cmd, &response);
+ int err = at_send_command(port, cmd, &response);
if (err < 0 || response->success == 0) {
*cme_err = at_get_cme_error(response);
goto exit;
@@ -631,7 +631,7 @@
return err;
}
-static int req_cscb_set(char *cscb,int len, int *cme_err)
+static int req_cscb_set(ATPortType_enum port, char *cscb,int len, int *cme_err)
{
printf("req_cscb_set()----------------start\n");
printf("cscb:%s\n", cscb);
@@ -648,7 +648,7 @@
if(strlen(cmd) > 0)
{
- int err = at_send_command(cmd, &response);
+ int err = at_send_command(port, cmd, &response);
if (err < 0 || response->success == 0) {
*cme_err = at_get_cme_error(response);
goto exit;
@@ -669,7 +669,7 @@
+CMSS: 81
OK
*/
-static int req_cmss_set(const char *cmss, char *reg, int len, int *cme_err)
+static int req_cmss_set(ATPortType_enum port, const char *cmss, char *reg, int len, int *cme_err)
{
printf("req_cmss_set()----------------start\n");
printf("cmss:%s\n", cmss);
@@ -692,7 +692,7 @@
if(strlen(cmd) > 8)
{
- err = at_send_command_multiline(cmd, "+CMSS:", &response);
+ err = at_send_command_multiline(port, cmd, "+CMSS:", &response);
if (err < 0 || response->success == 0){
*cme_err = at_get_cme_error(response);
goto exit;
@@ -737,7 +737,7 @@
OK
*/
-static int req_cmgr_set(int index, char *reg, int *cme_err)
+static int req_cmgr_set(ATPortType_enum port, int index, char *reg, int *cme_err)
{
printf("0req_cmgr_set()-------------------start\n");
printf("index:%d\n", index);
@@ -750,7 +750,7 @@
if(strlen(cmd) > 0)
{
- err = at_send_command_multiline(cmd, "", &response);
+ err = at_send_command_multiline(port, cmd, "", &response);
if (err < 0 || response->success == 0 || !response->p_intermediates){
*cme_err = at_get_cme_error(response);
printf("at_send_command_multiline() is err-----------------\n");
@@ -802,7 +802,7 @@
if(pack->data_len == 0 || pack->data == NULL) // Get VoLTE state.
{
int state;
- if(req_cmgf_get(&state, &cme_err) || cme_err != MBTK_RIL_ERR_CME_NON)
+ if(req_cmgf_get(cli_info->port, &state, &cme_err) || cme_err != MBTK_RIL_ERR_CME_NON)
{
if(cme_err != MBTK_RIL_ERR_CME_NON) {
err = MBTK_RIL_ERR_CME + cme_err;
@@ -813,7 +813,7 @@
}
else
{
- ril_rsp_pack_send(cli_info->fd, pack->msg_id, pack->msg_index, &state, sizeof(uint8));
+ ril_rsp_pack_send(cli_info->port, cli_info->fd, pack->msg_id, pack->msg_index, &state, sizeof(uint8));
}
}
else // Set VoLTE state.
@@ -826,7 +826,7 @@
break;
}
- if(req_cmgf_set(mode, &cme_err) || cme_err != MBTK_RIL_ERR_CME_NON)
+ if(req_cmgf_set(cli_info->port, mode, &cme_err) || cme_err != MBTK_RIL_ERR_CME_NON)
{
if(cme_err != MBTK_RIL_ERR_CME_NON) {
err = MBTK_RIL_ERR_CME + cme_err;
@@ -837,7 +837,7 @@
}
else
{
- ril_rsp_pack_send(cli_info->fd, pack->msg_id, pack->msg_index, NULL, 0);
+ ril_rsp_pack_send(cli_info->port, cli_info->fd, pack->msg_id, pack->msg_index, NULL, 0);
}
}
break;
@@ -847,7 +847,7 @@
if(pack->data_len == 0 || pack->data == NULL) // SET at+cnmi=1,2.
{
// int state;
- if(req_cnmi_set(&cme_err) || cme_err != MBTK_RIL_ERR_CME_NON)
+ if(req_cnmi_set(cli_info->port, &cme_err) || cme_err != MBTK_RIL_ERR_CME_NON)
{
if(cme_err != MBTK_RIL_ERR_CME_NON) {
err = MBTK_RIL_ERR_CME + cme_err;
@@ -858,7 +858,7 @@
}
else
{
- ril_rsp_pack_send(cli_info->fd, pack->msg_id, pack->msg_index, NULL, 0);
+ ril_rsp_pack_send(cli_info->port, cli_info->fd, pack->msg_id, pack->msg_index, NULL, 0);
}
}
break;
@@ -868,7 +868,7 @@
if(pack->data_len == 0 || pack->data == NULL) // Get VoLTE state.
{
char reg[100] = {0};
- if(req_cpms_get(reg, &cme_err) || cme_err != MBTK_RIL_ERR_CME_NON)
+ if(req_cpms_get(cli_info->port, reg, &cme_err) || cme_err != MBTK_RIL_ERR_CME_NON)
{
if(cme_err != MBTK_RIL_ERR_CME_NON) {
err = MBTK_RIL_ERR_CME + cme_err;
@@ -879,7 +879,7 @@
}
else
{
- ril_rsp_pack_send(cli_info->fd, pack->msg_id, pack->msg_index, reg, strlen(reg));
+ ril_rsp_pack_send(cli_info->port, cli_info->fd, pack->msg_id, pack->msg_index, reg, strlen(reg));
}
}
else // Set VoLTE state.
@@ -889,7 +889,7 @@
char reg[100] = {0};
LOGD("mem:%s, len:%d", pack->data, pack->data_len);
- if(req_cpms_set(mem, reg, len, &cme_err) || cme_err != MBTK_RIL_ERR_CME_NON)
+ if(req_cpms_set(cli_info->port, mem, reg, len, &cme_err) || cme_err != MBTK_RIL_ERR_CME_NON)
{
if(cme_err != MBTK_RIL_ERR_CME_NON) {
err = MBTK_RIL_ERR_CME + cme_err;
@@ -901,7 +901,7 @@
else
{
LOGD("cpms_set success, reg:%s", reg);
- ril_rsp_pack_send(cli_info->fd, pack->msg_id, pack->msg_index, reg, strlen(reg));
+ ril_rsp_pack_send(cli_info->port, cli_info->fd, pack->msg_id, pack->msg_index, reg, strlen(reg));
}
}
break;
@@ -919,7 +919,7 @@
char reg[50] ={0};
LOGD("mbtk_sms,cmgs:%s,len:%d", cmgs, len);
- if(req_cmgs_set(cmgs,reg,len, &cme_err) || cme_err != MBTK_RIL_ERR_CME_NON)
+ if(req_cmgs_set(cli_info->port, cmgs,reg,len, &cme_err) || cme_err != MBTK_RIL_ERR_CME_NON)
{
if(cme_err != MBTK_RIL_ERR_CME_NON) {
err = MBTK_RIL_ERR_CME + cme_err;
@@ -930,7 +930,7 @@
}
else
{
- ril_rsp_pack_send(cli_info->fd, pack->msg_id, pack->msg_index, reg, strlen(reg));
+ ril_rsp_pack_send(cli_info->port, cli_info->fd, pack->msg_id, pack->msg_index, reg, strlen(reg));
}
}
break;
@@ -948,7 +948,7 @@
char reg[128] = {0};
LOGD("mbtk_sms,cmgs:%s, len:%d", cmss, len);
- if(req_cmss_set(cmss,reg, len, &cme_err) || cme_err != MBTK_RIL_ERR_CME_NON)
+ if(req_cmss_set(cli_info->port, cmss,reg, len, &cme_err) || cme_err != MBTK_RIL_ERR_CME_NON)
{
if(cme_err != MBTK_RIL_ERR_CME_NON) {
err = MBTK_RIL_ERR_CME + cme_err;
@@ -960,7 +960,7 @@
else
{
LOGD("req_cmss_set success, reg:%s", reg);
- ril_rsp_pack_send(cli_info->fd, pack->msg_id, pack->msg_index, NULL, 0);
+ ril_rsp_pack_send(cli_info->port, cli_info->fd, pack->msg_id, pack->msg_index, NULL, 0);
}
}
break;
@@ -982,7 +982,7 @@
break;
}
- if(req_cmgr_set(index, reg, &cme_err) || cme_err != MBTK_RIL_ERR_CME_NON)
+ if(req_cmgr_set(cli_info->port, index, reg, &cme_err) || cme_err != MBTK_RIL_ERR_CME_NON)
{
if(cme_err != MBTK_RIL_ERR_CME_NON) {
err = MBTK_RIL_ERR_CME + cme_err;
@@ -993,7 +993,7 @@
}
else
{
- ril_rsp_pack_send(cli_info->fd, pack->msg_id, pack->msg_index, reg, strlen(reg));
+ ril_rsp_pack_send(cli_info->port, cli_info->fd, pack->msg_id, pack->msg_index, reg, strlen(reg));
}
}
break;
@@ -1010,7 +1010,7 @@
int len = pack->data_len;
LOGD("mbtk_sms,cmgw:%s,len:%d", cmgw, len);
- if(req_cmgw_set(cmgw, len, &cme_err) || cme_err != MBTK_RIL_ERR_CME_NON)
+ if(req_cmgw_set(cli_info->port, cmgw, len, &cme_err) || cme_err != MBTK_RIL_ERR_CME_NON)
{
if(cme_err != MBTK_RIL_ERR_CME_NON) {
err = MBTK_RIL_ERR_CME + cme_err;
@@ -1021,7 +1021,7 @@
}
else
{
- ril_rsp_pack_send(cli_info->fd, pack->msg_id, pack->msg_index, NULL, 0);
+ ril_rsp_pack_send(cli_info->port, cli_info->fd, pack->msg_id, pack->msg_index, NULL, 0);
}
}
break;
@@ -1031,7 +1031,7 @@
if(pack->data_len == 0 || pack->data == NULL) // Get VoLTE state.
{
char reg[1024] = {0};
- if(req_cmgd_get(reg, &cme_err) || cme_err != MBTK_RIL_ERR_CME_NON)
+ if(req_cmgd_get(cli_info->port, reg, &cme_err) || cme_err != MBTK_RIL_ERR_CME_NON)
{
if(cme_err != MBTK_RIL_ERR_CME_NON) {
err = MBTK_RIL_ERR_CME + cme_err;
@@ -1042,7 +1042,7 @@
}
else
{
- ril_rsp_pack_send(cli_info->fd, pack->msg_id, pack->msg_index, reg, strlen(reg));
+ ril_rsp_pack_send(cli_info->port, cli_info->fd, pack->msg_id, pack->msg_index, reg, strlen(reg));
}
}
else // Set VoLTE state.
@@ -1051,7 +1051,7 @@
int len = pack->data_len;
LOGD("mbtk_sms,cmgs:%s,len:%d", cmgd, len);
- if(req_cmgd_set(cmgd,len, &cme_err) || cme_err != MBTK_RIL_ERR_CME_NON)
+ if(req_cmgd_set(cli_info->port, cmgd,len, &cme_err) || cme_err != MBTK_RIL_ERR_CME_NON)
{
if(cme_err != MBTK_RIL_ERR_CME_NON) {
err = MBTK_RIL_ERR_CME + cme_err;
@@ -1062,7 +1062,7 @@
}
else
{
- ril_rsp_pack_send(cli_info->fd, pack->msg_id, pack->msg_index, NULL, 0);
+ ril_rsp_pack_send(cli_info->port, cli_info->fd, pack->msg_id, pack->msg_index, NULL, 0);
}
}
@@ -1081,7 +1081,7 @@
char reg[5*1024] = {0};
char reg1[1024+1] = {0};
- if(req_cmgl_set(cmgl, reg, len, &cme_err) || cme_err != MBTK_RIL_ERR_CME_NON)
+ if(req_cmgl_set(cli_info->port, cmgl, reg, len, &cme_err) || cme_err != MBTK_RIL_ERR_CME_NON)
{
if(cme_err != MBTK_RIL_ERR_CME_NON) {
err = MBTK_RIL_ERR_CME + cme_err;
@@ -1093,7 +1093,7 @@
else
{
memcpy(reg1, reg, 1024);
- ril_rsp_pack_send(cli_info->fd, pack->msg_id, pack->msg_index, reg1, strlen(reg1));
+ ril_rsp_pack_send(cli_info->port, cli_info->fd, pack->msg_id, pack->msg_index, reg1, strlen(reg1));
}
}
break;
@@ -1103,7 +1103,7 @@
if(pack->data_len == 0 || pack->data == NULL) // Get VoLTE state.
{
char csca[50]={0};
- if(req_csca_get(csca, &cme_err) || cme_err != MBTK_RIL_ERR_CME_NON)
+ if(req_csca_get(cli_info->port, csca, &cme_err) || cme_err != MBTK_RIL_ERR_CME_NON)
{
if(cme_err != MBTK_RIL_ERR_CME_NON) {
err = MBTK_RIL_ERR_CME + cme_err;
@@ -1114,7 +1114,7 @@
}
else
{
- ril_rsp_pack_send(cli_info->fd, pack->msg_id, pack->msg_index, csca, strlen(csca));
+ ril_rsp_pack_send(cli_info->port, cli_info->fd, pack->msg_id, pack->msg_index, csca, strlen(csca));
}
err = MBTK_RIL_ERR_UNSUPPORTED;
}
@@ -1123,7 +1123,7 @@
char *csca = (char*)pack->data;
int len = pack->data_len;
- if(req_csca_set(csca, len, &cme_err) || cme_err != MBTK_RIL_ERR_CME_NON)
+ if(req_csca_set(cli_info->port, csca, len, &cme_err) || cme_err != MBTK_RIL_ERR_CME_NON)
{
if(cme_err != MBTK_RIL_ERR_CME_NON) {
err = MBTK_RIL_ERR_CME + cme_err;
@@ -1134,7 +1134,7 @@
}
else
{
- ril_rsp_pack_send(cli_info->fd, pack->msg_id, pack->msg_index, NULL, 0);
+ ril_rsp_pack_send(cli_info->port, cli_info->fd, pack->msg_id, pack->msg_index, NULL, 0);
}
}
break;
@@ -1150,7 +1150,7 @@
char *csmp = (char*)pack->data;
int len = pack->data_len;
- if(req_csmp_set(csmp,len, &cme_err) || cme_err != MBTK_RIL_ERR_CME_NON)
+ if(req_csmp_set(cli_info->port, csmp,len, &cme_err) || cme_err != MBTK_RIL_ERR_CME_NON)
{
if(cme_err != MBTK_RIL_ERR_CME_NON) {
err = MBTK_RIL_ERR_CME + cme_err;
@@ -1161,7 +1161,7 @@
}
else
{
- ril_rsp_pack_send(cli_info->fd, pack->msg_id, pack->msg_index, NULL, 0);
+ ril_rsp_pack_send(cli_info->port, cli_info->fd, pack->msg_id, pack->msg_index, NULL, 0);
}
}
break;
@@ -1177,7 +1177,7 @@
char *cscb = (char*)pack->data;
int len = pack->data_len;
- if(req_cscb_set(cscb,len, &cme_err) || cme_err != MBTK_RIL_ERR_CME_NON)
+ if(req_cscb_set(cli_info->port, cscb,len, &cme_err) || cme_err != MBTK_RIL_ERR_CME_NON)
{
if(cme_err != MBTK_RIL_ERR_CME_NON) {
err = MBTK_RIL_ERR_CME + cme_err;
@@ -1188,7 +1188,7 @@
}
else
{
- ril_rsp_pack_send(cli_info->fd, pack->msg_id, pack->msg_index, NULL, 0);
+ ril_rsp_pack_send(cli_info->port, cli_info->fd, pack->msg_id, pack->msg_index, NULL, 0);
}
}
break;