上库irq模块和dtmf和ims的api接口

Change-Id: I6dfbdb0b8ed0dd6543474d3fc10eef91ca1a2f2f
diff --git a/mbtk/libmbtk_ril/mbtk_info.c b/mbtk/libmbtk_ril/mbtk_info.c
index ce870c8..c2479eb 100755
--- a/mbtk/libmbtk_ril/mbtk_info.c
+++ b/mbtk/libmbtk_ril/mbtk_info.c
@@ -281,6 +281,10 @@
         case MBTK_INFO_ID_NET_DATA_CALL_REQ:
         case MBTK_INFO_ID_NET_DATA_CALL_RSP:
             return "DATA_CALL";
+        //ims
+        case MBTK_INFO_ID_NET_IMS_REQ:
+        case MBTK_INFO_ID_NET_IMS_RSP:
+            return "IMS";
         // Call Information
         case MBTK_INFO_ID_CALL_STATE_REQ:
         case MBTK_INFO_ID_CALL_STATE_RSP:
diff --git a/mbtk/libmbtk_ril/mbtk_info.h b/mbtk/libmbtk_ril/mbtk_info.h
index 2f3b491..a8a2b91 100755
--- a/mbtk/libmbtk_ril/mbtk_info.h
+++ b/mbtk/libmbtk_ril/mbtk_info.h
@@ -141,8 +141,14 @@
     MBTK_INFO_ID_NET_DATA_CALL_REQ,
     MBTK_INFO_ID_NET_DATA_CALL_RSP,
 
+    // mbtk_net_ims
+    MBTK_INFO_ID_NET_IMS_REQ,
+    MBTK_INFO_ID_NET_IMS_RSP,
+    
+
     MBTK_INFO_ID_NET_END,
 
+
     // Call Information
     MBTK_INFO_ID_CALL_BEGIN = 3000,
     MBTK_INFO_ID_CALL_STATE_REQ,
diff --git a/mbtk/libmbtk_ril/mbtk_info_api.c b/mbtk/libmbtk_ril/mbtk_info_api.c
index ef7ee1c..d471c3b 100755
--- a/mbtk/libmbtk_ril/mbtk_info_api.c
+++ b/mbtk/libmbtk_ril/mbtk_info_api.c
@@ -1382,6 +1382,42 @@
     }
 }
 
+/*
+* Get current network IMS information.
+*/
+int mbtk_net_ims_get(mbtk_info_handle_t* handle, int* reg)
+{
+    uint8 state;
+    if(handle == NULL)
+    {
+        LOGE("ARG error.");
+        return -1;
+    }
+    if(info_item_process(handle, MBTK_INFO_ID_NET_IMS_REQ, NULL, 0, &state) > 0) {
+        LOG("reg type : %d", state);
+        *reg = state;
+        return 0;
+    } else {
+        return handle->info_err;
+    }
+
+}
+
+/*
+* Set current network IMS information.
+*/
+int mbtk_net_ims_set(mbtk_info_handle_t* handle, int reg)
+{
+    if(handle == NULL)
+    {
+        LOGE("ARG error.");
+        return -1;
+    }
+
+    return info_item_process(handle, MBTK_INFO_ID_NET_IMS_REQ, (uint8*)&reg, sizeof(uint8), NULL) ? handle->info_err : 0;
+
+}
+
 
 /*
 * Get radio state.