Add LTE network for neighbor cell information 93/105093/3 accepted/tizen/common/20161221.183409 accepted/tizen/ivi/20161222.020306 accepted/tizen/mobile/20161222.020212 accepted/tizen/tv/20161222.020216 accepted/tizen/wearable/20161222.020242 submit/tizen/20161221.051927
authorSuresh Kumar N <suresh.n@samsung.com>
Thu, 15 Dec 2016 10:58:32 +0000 (16:28 +0530)
committerSuresh Kumar N <suresh.n@samsung.com>
Tue, 20 Dec 2016 10:34:24 +0000 (16:04 +0530)
 - Fix minor issues of gvariants

Change-Id: I002dd11ad19ca2657e17734daf4030821f86dd50
Signed-off-by: Suresh Kumar N <suresh.n@samsung.com>
include/TelCall.h
include/TelNetwork.h
include/TelSim.h
src/tapi_common.c
src/tapi_network.c
src/tapi_oem.c
src/tapi_sat.c
src/tapi_sms.c

index cc50dfc..c16a0cd 100644 (file)
@@ -41,7 +41,7 @@ extern "C" {
  * @brief Definition for the maximum length of the string for the calling party name.
  * @since_tizen 2.3
  */
-#define TAPI_CALLING_NAME_SIZE_MAX     80
+#define TAPI_CALLING_NAME_SIZE_MAX     97
 
 /**
  * @brief Definition for the maximum length of the user to user signalling data string.
index b6a024c..6d4316b 100644 (file)
@@ -136,6 +136,12 @@ extern "C"
  */
 #define TAPI_NETWORK_UMTS_NEIGHBORING_CELL_LIST_MAX 24
 
+/**
+ * @brief Definition for the maximum LTE neighboring cell list.
+ * @since_tizen 3.0
+ */
+#define TAPI_NETWORK_LTE_NEIGHBORING_CELL_LIST_MAX 24
+
 /* This value defines the network mode */
 /**
  * @brief Definition for the "set network mode to automatic" value.
@@ -639,6 +645,7 @@ typedef struct {
 typedef struct {
        int cell_id;    /**< Cell ID (@c -1 indicates that cell ID information is not present) */
        int lac;        /**< Location area code (this field is ignored when @a cell_id is not present) */
+       int pcid;       /**< Physical cell id */
        int earfcn;     /**< E-UTRA Absolute RF Channel Number */
        int tac;        /**< Tracking area code */
        int rssi;       /**< RSSI in dBm(signed) */
@@ -684,6 +691,8 @@ typedef struct {
        TelNetworkGeranCellInfo_t geran_list[TAPI_NETWORK_GERAN_NEIGHBORING_CELL_LIST_MAX];/**< GERAN cell info list */
        int umts_list_count;/**< UMTS cell info list count */
        TelNetworkUmtsCellInfo_t umts_list[TAPI_NETWORK_UMTS_NEIGHBORING_CELL_LIST_MAX];/**< UMTS cell info list */
+       int lte_list_count;/**<LTE cell info list count*/
+       TelNetworkLteCellInfo_t lte_list[TAPI_NETWORK_LTE_NEIGHBORING_CELL_LIST_MAX];/**<LTE cell info list*/
 } TelNetworkNeighboringCellInfo_t;
 
 /**
index f2ddda6..101ea00 100644 (file)
@@ -79,10 +79,10 @@ extern "C"
 
 /**
  * @brief Definition for the maximum length of SAP APDU.
- * @details 4096 is for QMI definition.
+ * @details 5120 is for QMI definition.
  * @since_tizen 2.3
  */
-#define TAPI_SIM_APDU_MAX_LEN 4096
+#define TAPI_SIM_APDU_MAX_LEN 5120
 
 /**
  * @brief Definition for the maximum length of the SIM 3G Phone book EF.
index 6d62677..ff12e1c 100644 (file)
@@ -942,7 +942,6 @@ EXIT:
                g_variant_get(param, "(isisiisi)", &command_type, &confirm_text,
                        &confirm_text_len, &text, &text_len, &call_type, &call_number, &duration);
 
-
                setup_call_data.commandId = command_type;
                setup_call_data.calltype = call_type;
                memcpy(&setup_call_data.dispText.string, text, strlen(text));
@@ -1045,8 +1044,6 @@ static void _process_modem_event(const gchar *sig, GVariant *param,
        } else {
                dbg("not handled Modem noti[%s]", sig);
        }
-
-       return;
 }
 
 static void _process_ss_event(const gchar *sig, GVariant *param,
index 651a0db..68a122b 100644 (file)
@@ -708,7 +708,7 @@ static void on_response_get_network_serving(GObject *source_object,
        GVariant *dbus_result;
        char *plmn;
        int v0, v4, v5;
-       char v1, v2, v3, v6, v7;
+       guint v1, v2, v3, v6, v7;
 
        memset(&data, 0, sizeof(TelNetworkServing_t));
 
@@ -754,7 +754,7 @@ static void on_response_get_neighboring_cell_info(GObject *source_object,
        GError *error = NULL;
        struct tapi_resp_data *evt_cb_data = user_data;
        int result = -1;
-       int geran_index = 0, umts_index = 0;
+       int geran_index = 0, umts_index = 0, lte_index = 0;
 
        TelNetworkNeighboringCellInfo_t list;
 
@@ -824,15 +824,34 @@ static void on_response_get_neighboring_cell_info(GObject *source_object,
                                list.umts_list[umts_index].psc = v3;
                                list.umts_list[umts_index].rscp = v4;
                                umts_index++;
+                       } else if (!g_strcmp0(key, "lte")) {
+                               g_variant_get(value, "(iiiii)", &v0, &v1, &v2, &v3, &v4);
+                               list.lte_list[lte_index].cell_id = v0;
+                               list.lte_list[lte_index].pcid = v1;
+                               list.lte_list[lte_index].earfcn = v2;
+                               list.lte_list[lte_index].tac = v3;
+                               list.lte_list[lte_index].rssi = v4;
+                               lte_index++;
                        }
                }
+
+               if (umts_index == TAPI_NETWORK_UMTS_NEIGHBORING_CELL_LIST_MAX)
+                       break;
+
+               if (lte_index == TAPI_NETWORK_LTE_NEIGHBORING_CELL_LIST_MAX)
+                       break;
+
+               if (geran_index == TAPI_NETWORK_GERAN_NEIGHBORING_CELL_LIST_MAX)
+                       break;
+
                g_variant_iter_free(iter_row);
        }
        g_variant_iter_free(iter);
 
        list.geran_list_count = geran_index;
        list.umts_list_count = umts_index;
-       dbg("act=%d, count(geran:%d, umts:%d)", list.serving.act, geran_index, umts_index);
+       list.lte_list_count = lte_index;
+       dbg("act=%d, count(geran:%d, umts:%d, lte:%d)", list.serving.act, geran_index, umts_index, lte_index);
 
        TAPI_INVOKE_RESP_CALLBACK(evt_cb_data, result, &list);
 
index bfe7079..b6144ce 100644 (file)
@@ -74,7 +74,7 @@ static void on_response_oem_data_async(GObject *source_object,
        if (oem_data.data) {
                result = TAPI_API_SUCCESS;
 
-               dbg("id:[0x%d] len:[%d]", oem_data.oem_id, oem_data.data_len);
+               dbg("id:[0x%x] len:[%d]", oem_data.oem_id, oem_data.data_len);
 
                TAPI_INVOKE_RESP_CALLBACK(evt_cb_data, result, &oem_data);
 
@@ -103,7 +103,7 @@ EXPORT_API int tel_send_oem_data(TapiHandle *handle, int oem_id,
        TAPI_RET_ERR_NUM_IF_FAIL(handle->dbus_connection, TAPI_API_INVALID_PTR);
        TAPI_RET_ERR_NUM_IF_FAIL(data, TAPI_API_INVALID_PTR);
 
-       dbg("[%s] oem_id(0x%x) data(%p) data len(%d)", handle->path, oem_id, data, data_len);
+       dbg("oem_id(0x%x) data(%p) data len(%d)", oem_id, data, data_len);
 
        if (data_len > OEM_DATA_LEN_MAX)
                return TAPI_API_INVALID_INPUT;
@@ -147,7 +147,7 @@ EXPORT_API int tel_send_oem_data_sync(TapiHandle *handle, int oem_id,
        TAPI_RET_ERR_NUM_IF_FAIL(handle->dbus_connection, TAPI_API_INVALID_PTR);
        TAPI_RET_ERR_NUM_IF_FAIL(data, TAPI_API_INVALID_PTR);
 
-       dbg("[%s] oem_id(0x%x) data(%p) data len(%d)", handle->path, oem_id, data, data_len);
+       dbg("oem_id(0x%x) data(%p) data len(%d)", oem_id, data, data_len);
 
        if (data_len > OEM_DATA_LEN_MAX)
                return TAPI_API_INVALID_INPUT;
@@ -191,8 +191,6 @@ EXPORT_API int tel_send_oem_data_async(TapiHandle *handle, int oem_id,
        TAPI_RET_ERR_NUM_IF_FAIL(handle->dbus_connection, TAPI_API_INVALID_PTR);
        TAPI_RET_ERR_NUM_IF_FAIL(data, TAPI_API_INVALID_PTR);
 
-       dbg("[%s] oem_id(0x%x) data(%p) data len(%d)", handle->path, oem_id, data, data_len);
-
        if (data_len > OEM_DATA_LEN_MAX)
                return TAPI_API_INVALID_INPUT;
 
index ae1f6ae..0fedeee 100644 (file)
@@ -231,8 +231,21 @@ static GVariant *_tapi_sat_gen_event_download_data(const TelSatEventDownloadReqI
        }
        break;
 
-       case TAPI_EVENT_SAT_DW_TYPE_DATA_AVAILABLE:
-       case TAPI_EVENT_SAT_DW_TYPE_CHANNEL_STATUS:
+       case TAPI_EVENT_SAT_DW_TYPE_DATA_AVAILABLE: {
+               result = g_variant_new("(yiiy)",
+                       pEventData->u.dataAvailableEventReqInfo.channelStatus.channelId,
+                       pEventData->u.dataAvailableEventReqInfo.channelStatus.status,
+                       pEventData->u.dataAvailableEventReqInfo.channelStatus.channelInfo,
+                       pEventData->u.dataAvailableEventReqInfo.channelDataLen.channelDataLen);
+       }
+       break;
+       case TAPI_EVENT_SAT_DW_TYPE_CHANNEL_STATUS: {
+               result = g_variant_new("(yii)",
+                       pEventData->u.dataAvailableEventReqInfo.channelStatus.channelId,
+                       pEventData->u.dataAvailableEventReqInfo.channelStatus.status,
+                       pEventData->u.dataAvailableEventReqInfo.channelStatus.channelInfo);
+       }
+       break;
        default:
                dbg("not support download event (%d)", pEventData->eventDownloadType);
                result = g_variant_new("()");
@@ -364,8 +377,10 @@ EXPORT_API int tel_download_sat_event(TapiHandle *handle, const TelSatEventDownl
        /* LCOV_EXCL_START */
        for (g_index = 0; g_event_list[g_index] > 0; g_index++) {
                if (pEventData->eventDownloadType == TAPI_EVENT_SAT_DW_TYPE_BROWSER_TERMINATION
-                               || g_event_list[g_index] == pEventData->eventDownloadType) {
-                       dbg("event (%d) shoud be passed to sim");
+                       || pEventData->eventDownloadType == TAPI_EVENT_SAT_DW_TYPE_DATA_AVAILABLE
+                       || pEventData->eventDownloadType == TAPI_EVENT_SAT_DW_TYPE_CHANNEL_STATUS
+                       || g_event_list[g_index] == pEventData->eventDownloadType) {
+                       dbg("event (%d) shoud be passed to sim", pEventData->eventDownloadType);
                        evt_check = TRUE;
                }
        }
index fcea5b9..60103de 100644 (file)
@@ -979,7 +979,7 @@ EXPORT_API int tel_check_sms_device_status(struct tapi_handle *handle, int *pRea
 
        dbg("get SMS ready_status type_format(%s)", g_variant_get_type_string(smsReady));
 
-       g_variant_get(smsReady, "(b)", pReadyStatus);
+       g_variant_get(smsReady, "(i)", pReadyStatus);
        g_variant_unref(smsReady);
 
        msg("************SMS_device_status (%d)", *pReadyStatus);