summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAleksander Morgado <aleksander@lanedo.com>2012-10-29 16:42:09 +0100
committerAleksander Morgado <aleksander@lanedo.com>2012-10-29 18:53:25 +0100
commit23eb154afdc0de627d62e53e7475dde222377c9e (patch)
tree56e6584917fd27472f49213dd19c4c6caffe31c0
parent996c343b90eb10de33646643d27762f463cd5309 (diff)
uim: integrate the UIM service, also implement "Reset" request/response
-rw-r--r--build-aux/qmi-codegen/utils.py8
-rw-r--r--data/Makefile.am3
-rw-r--r--data/qmi-service-uim.json23
-rw-r--r--docs/reference/libqmi-glib/Makefile.am3
-rw-r--r--docs/reference/libqmi-glib/libqmi-glib-docs.xml9
-rw-r--r--libqmi-glib/generated/Makefile.am24
-rw-r--r--libqmi-glib/libqmi-glib.h3
-rw-r--r--libqmi-glib/qmi-device.c5
-rw-r--r--libqmi-glib/qmi-message.c7
9 files changed, 74 insertions, 11 deletions
diff --git a/build-aux/qmi-codegen/utils.py b/build-aux/qmi-codegen/utils.py
index 9530f03..3d00fbc 100644
--- a/build-aux/qmi-codegen/utils.py
+++ b/build-aux/qmi-codegen/utils.py
@@ -70,15 +70,15 @@ def add_header_start(f, output_name, service):
"#include <gio/gio.h>\n"
"\n"
"#include \"qmi-enums.h\"\n")
- # CTL doesn't have enums
- if service != 'CTL':
+ # CTL, UIM don't have enums
+ if service != 'CTL' and service != 'UIM':
template += (
"#include \"qmi-enums-${service}.h\"\n")
else:
template += (
"#include \"qmi-enums-private.h\"\n")
- # CTL, WDS, WMS and PDS don't have flags64
- if service != 'CTL' and service != 'WDS' and service != 'WMS' and service != 'PDS':
+ # CTL, WDS, WMS, PDS and UIM don't have flags64
+ if service != 'CTL' and service != 'WDS' and service != 'WMS' and service != 'PDS' and service != 'UIM':
template += (
"#include \"qmi-flags64-${service}.h\"\n")
template += (
diff --git a/data/Makefile.am b/data/Makefile.am
index 458dda5..74a7e41 100644
--- a/data/Makefile.am
+++ b/data/Makefile.am
@@ -7,4 +7,5 @@ EXTRA_DIST = \
qmi-service-wds.json \
qmi-service-nas.json \
qmi-service-wms.json \
- qmi-service-pds.json
+ qmi-service-pds.json \
+ qmi-service-uim.json
diff --git a/data/qmi-service-uim.json b/data/qmi-service-uim.json
new file mode 100644
index 0000000..de2ef0d
--- /dev/null
+++ b/data/qmi-service-uim.json
@@ -0,0 +1,23 @@
+
+[
+ // *********************************************************************************
+ { "name" : "UIM",
+ "type" : "Service" },
+
+ // *********************************************************************************
+ { "name" : "QMI Client UIM",
+ "type" : "Client" },
+
+ // *********************************************************************************
+ { "name" : "QMI Message UIM",
+ "type" : "Message-ID-Enum" },
+
+ // *********************************************************************************
+ { "name" : "Reset",
+ "type" : "Message",
+ "service" : "UIM",
+ "id" : "0x0000",
+ "version" : "1.0",
+ "output" : [ { "common-ref" : "Operation Result" } ] }
+
+]
diff --git a/docs/reference/libqmi-glib/Makefile.am b/docs/reference/libqmi-glib/Makefile.am
index 136e3f5..f5e589f 100644
--- a/docs/reference/libqmi-glib/Makefile.am
+++ b/docs/reference/libqmi-glib/Makefile.am
@@ -12,7 +12,8 @@ ALL_SECTIONS = \
$(top_builddir)/libqmi-glib/generated/qmi-nas.sections \
$(top_builddir)/libqmi-glib/generated/qmi-wds.sections \
$(top_builddir)/libqmi-glib/generated/qmi-wms.sections \
- $(top_builddir)/libqmi-glib/generated/qmi-pds.sections
+ $(top_builddir)/libqmi-glib/generated/qmi-pds.sections \
+ $(top_builddir)/libqmi-glib/generated/qmi-uim.sections
$(DOC_MODULE)-sections.mstamp: $(ALL_SECTIONS)
$(AM_V_GEN) \
diff --git a/docs/reference/libqmi-glib/libqmi-glib-docs.xml b/docs/reference/libqmi-glib/libqmi-glib-docs.xml
index d3b5a4e..2da1b28 100644
--- a/docs/reference/libqmi-glib/libqmi-glib-docs.xml
+++ b/docs/reference/libqmi-glib/libqmi-glib-docs.xml
@@ -201,6 +201,15 @@
</section>
</chapter>
+ <chapter>
+ <title>User Identity Module (UIM) service</title>
+ <xi:include href="xml/qmi-client-uim.xml"/>
+ <section>
+ <title>UIM Requests</title>
+ <xi:include href="xml/qmi-message-uim-reset.xml"/>
+ </section>
+ </chapter>
+
<chapter id="object-tree">
<title>Object Hierarchy</title>
<xi:include href="xml/tree_index.sgml"/>
diff --git a/libqmi-glib/generated/Makefile.am b/libqmi-glib/generated/Makefile.am
index f7edabc..0477b89 100644
--- a/libqmi-glib/generated/Makefile.am
+++ b/libqmi-glib/generated/Makefile.am
@@ -11,7 +11,8 @@ GENERATED_H = \
qmi-nas.h \
qmi-wds.h \
qmi-wms.h \
- qmi-pds.h
+ qmi-pds.h \
+ qmi-uim.h
GENERATED_C = \
qmi-error-types.c \
@@ -24,7 +25,8 @@ GENERATED_C = \
qmi-nas.c \
qmi-wds.c \
qmi-wms.c \
- qmi-pds.c
+ qmi-pds.c \
+ qmi-uim.c
GENERATED_SECTIONS = \
qmi-ctl.sections \
@@ -32,7 +34,8 @@ GENERATED_SECTIONS = \
qmi-nas.sections \
qmi-wds.sections \
qmi-wms.sections \
- qmi-pds.sections
+ qmi-pds.sections \
+ qmi-uim.sections
# Error types
qmi-error-types.h: $(top_srcdir)/libqmi-glib/qmi-errors.h $(top_srcdir)/build-aux/templates/qmi-error-types-template.h
@@ -64,7 +67,7 @@ ENUMS = \
$(top_srcdir)/libqmi-glib/qmi-enums-pds.h
qmi-enum-types.h: $(ENUMS) $(top_srcdir)/build-aux/templates/qmi-enum-types-template.h
$(AM_V_GEN) $(GLIB_MKENUMS) \
- --fhead "#ifndef __LIBQMI_GLIB_ENUM_TYPES_H__\n#define __LIBQMI_GLIB_ENUM_TYPES_H__\n#include \"qmi-enums.h\"\n#include \"qmi-enums-wds.h\"\n#include \"qmi-enums-dms.h\"\n#include \"qmi-enums-nas.h\"\n#include \"qmi-enums-wms.h\"\n#include \"qmi-enums-pds.h\"\n" \
+ --fhead "#ifndef __LIBQMI_GLIB_ENUM_TYPES_H__\n#define __LIBQMI_GLIB_ENUM_TYPES_H__\n#include \"qmi-enums.h\"\n#include \"qmi-enums-wds.h\"\n#include \"qmi-enums-dms.h\"\n#include \"qmi-enums-nas.h\"\n#include \"qmi-enums-wms.h\"\n#include \"qmi-enums-pds.h\"\n\n" \
--template $(top_srcdir)/build-aux/templates/qmi-enum-types-template.h \
--ftail "#endif /* __LIBQMI_GLIB_ENUM_TYPES_H__ */\n" \
$(ENUMS) > $@
@@ -166,6 +169,16 @@ qmi-pds.h qmi-pds.c qmi-pds.sections: $(top_srcdir)/data/qmi-service-pds.json $(
--include $(top_srcdir)/data/qmi-common.json \
--output qmi-pds
+# UIM service
+qmi-uim.h qmi-uim.c qmi-uim.sections: $(top_srcdir)/data/qmi-service-uim.json $(top_srcdir)/build-aux/qmi-codegen/*.py $(top_srcdir)/build-aux/qmi-codegen/qmi-codegen
+ $(AM_V_GEN) \
+ rm -f qmi-uim.h && \
+ rm -f qmi-uim.c && \
+ $(top_srcdir)/build-aux/qmi-codegen/qmi-codegen \
+ --input $(top_srcdir)/data/qmi-service-uim.json \
+ --include $(top_srcdir)/data/qmi-common.json \
+ --output qmi-uim
+
BUILT_SOURCES = $(GENERATED_H) $(GENERATED_C)
nodist_libqmi_glib_generated_la_SOURCES = \
@@ -191,6 +204,7 @@ nodist_include_HEADERS = \
qmi-nas.h \
qmi-wds.h \
qmi-wms.h \
- qmi-pds.h
+ qmi-pds.h \
+ qmi-uim.h
CLEANFILES = $(GENERATED_H) $(GENERATED_C) $(GENERATED_SECTIONS)
diff --git a/libqmi-glib/libqmi-glib.h b/libqmi-glib/libqmi-glib.h
index bfdad67..fe9682b 100644
--- a/libqmi-glib/libqmi-glib.h
+++ b/libqmi-glib/libqmi-glib.h
@@ -51,6 +51,9 @@
#include "qmi-enums-pds.h"
#include "qmi-pds.h"
+#include "qmi-enums-uim.h"
+#include "qmi-uim.h"
+
/* generated */
#include "qmi-error-types.h"
#include "qmi-enum-types.h"
diff --git a/libqmi-glib/qmi-device.c b/libqmi-glib/qmi-device.c
index 04903c2..e9633cd 100644
--- a/libqmi-glib/qmi-device.c
+++ b/libqmi-glib/qmi-device.c
@@ -35,6 +35,7 @@
#include "qmi-nas.h"
#include "qmi-wms.h"
#include "qmi-pds.h"
+#include "qmi-uim.h"
#include "qmi-utils.h"
#include "qmi-error-types.h"
#include "qmi-enum-types.h"
@@ -739,6 +740,10 @@ qmi_device_allocate_client (QmiDevice *self,
ctx->client_type = QMI_TYPE_CLIENT_PDS;
break;
+ case QMI_SERVICE_UIM:
+ ctx->client_type = QMI_TYPE_CLIENT_UIM;
+ break;
+
default:
g_simple_async_result_set_error (ctx->result,
QMI_CORE_ERROR,
diff --git a/libqmi-glib/qmi-message.c b/libqmi-glib/qmi-message.c
index 2c2394e..54b4c03 100644
--- a/libqmi-glib/qmi-message.c
+++ b/libqmi-glib/qmi-message.c
@@ -46,6 +46,7 @@
#include "qmi-nas.h"
#include "qmi-wms.h"
#include "qmi-pds.h"
+#include "qmi-uim.h"
/**
* SECTION:qmi-message
@@ -856,6 +857,9 @@ qmi_message_get_printable (QmiMessage *self,
case QMI_SERVICE_PDS:
contents = __qmi_message_pds_get_printable (self, line_prefix);
break;
+ case QMI_SERVICE_UIM:
+ contents = __qmi_message_uim_get_printable (self, line_prefix);
+ break;
default:
break;
}
@@ -905,6 +909,9 @@ qmi_message_get_version_introduced (QmiMessage *self,
case QMI_SERVICE_PDS:
return __qmi_message_pds_get_version_introduced (self, major, minor);
+ case QMI_SERVICE_UIM:
+ return __qmi_message_uim_get_version_introduced (self, major, minor);
+
default:
/* For the still unsupported services, cannot do anything */
return FALSE;