aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAleksander Morgado <aleksander@aleksander.es>2014-02-06 14:28:30 +0100
committerAleksander Morgado <aleksander@aleksander.es>2014-09-05 11:50:50 +0200
commite050c27185e0032dfb222877954490188e4345cf (patch)
tree749697255fad37e0c241963dce9b7aacb375dc2f
parentdb0c2a54a8dc526a9d5115cbea5f0eae2820b646 (diff)
downloadexternal_libqmi-e050c27185e0032dfb222877954490188e4345cf.zip
external_libqmi-e050c27185e0032dfb222877954490188e4345cf.tar.gz
external_libqmi-e050c27185e0032dfb222877954490188e4345cf.tar.bz2
pds: implement "PDS Set/Get AGPS Config"
-rw-r--r--data/qmi-service-pds.json64
-rw-r--r--docs/reference/libqmi-glib/libqmi-glib-common.sections5
-rw-r--r--docs/reference/libqmi-glib/libqmi-glib-docs.xml2
-rw-r--r--src/libqmi-glib/qmi-enums-pds.h15
4 files changed, 86 insertions, 0 deletions
diff --git a/data/qmi-service-pds.json b/data/qmi-service-pds.json
index 564eb4b..b2e3cb8 100644
--- a/data/qmi-service-pds.json
+++ b/data/qmi-service-pds.json
@@ -340,6 +340,70 @@
"output" : [ { "common-ref" : "Operation Result" } ] },
// *********************************************************************************
+ { "name" : "Get AGPS Config",
+ "type" : "Message",
+ "service" : "PDS",
+ "id" : "0x002E",
+ "version" : "1.0",
+ "input" : [ { "name" : "Network Mode",
+ "id" : "0x12",
+ "mandatory" : "no",
+ "type" : "TLV",
+ "format" : "guint8",
+ "public-format" : "QmiPdsNetworkMode" } ],
+ "output" : [ { "common-ref" : "Operation Result" },
+ { "name" : "Location Server Address",
+ "id" : "0x10",
+ "mandatory" : "no",
+ "type" : "TLV",
+ "format" : "sequence",
+ "contents" : [ { "name" : "IP",
+ "format" : "guint32",
+ "endian" : "little" },
+ { "name" : "Port",
+ "format" : "guint32" } ],
+ "prerequisites" : [ { "common-ref" : "Success" } ] },
+ { "name" : "Location Server URL",
+ "id" : "0x11",
+ "mandatory" : "no",
+ "type" : "TLV",
+ "format" : "array",
+ "size-prefix-format" : "guint8",
+ "array-element" : { "format" : "guint8" },
+ "prerequisites" : [ { "common-ref" : "Success" } ] } ] },
+
+ // *********************************************************************************
+ { "name" : "Set AGPS Config",
+ "type" : "Message",
+ "service" : "PDS",
+ "id" : "0x002F",
+ "version" : "1.0",
+ "input" : [ { "name" : "Location Server Address",
+ "id" : "0x10",
+ "mandatory" : "no",
+ "type" : "TLV",
+ "format" : "sequence",
+ "contents" : [ { "name" : "IP",
+ "format" : "guint32",
+ "format" : "guint32" },
+ { "name" : "Port",
+ "format" : "guint32" } ] },
+ { "name" : "Location Server URL",
+ "id" : "0x11",
+ "mandatory" : "no",
+ "type" : "TLV",
+ "format" : "array",
+ "size-prefix-format" : "guint8",
+ "array-element" : { "format" : "guint8" } },
+ { "name" : "Network Mode",
+ "id" : "0x14",
+ "mandatory" : "no",
+ "type" : "TLV",
+ "format" : "guint8",
+ "public-format" : "QmiPdsNetworkMode" } ],
+ "output" : [ { "common-ref" : "Operation Result" } ] },
+
+ // *********************************************************************************
{ "name" : "Get Auto Tracking State",
"type" : "Message",
"service" : "PDS",
diff --git a/docs/reference/libqmi-glib/libqmi-glib-common.sections b/docs/reference/libqmi-glib/libqmi-glib-common.sections
index 316e65f..db324aa 100644
--- a/docs/reference/libqmi-glib/libqmi-glib-common.sections
+++ b/docs/reference/libqmi-glib/libqmi-glib-common.sections
@@ -644,29 +644,34 @@ QmiPdsPositionSessionStatus
QmiPdsDataValid
QmiPdsTrackingSessionState
QmiPdsOperatingMode
+QmiPdsNetworkMode
<SUBSECTION Methods>
qmi_pds_operation_mode_get_string
qmi_pds_position_session_status_get_string
qmi_pds_data_valid_build_string_from_mask
qmi_pds_tracking_session_state_get_string
qmi_pds_operating_mode_get_string
+qmi_pds_network_mode_get_string
<SUBSECTION Private>
qmi_pds_operation_mode_build_string_from_mask
qmi_pds_position_session_status_build_string_from_mask
qmi_pds_data_valid_get_string
qmi_pds_tracking_session_state_build_string_from_mask
qmi_pds_operating_mode_build_string_from_mask
+qmi_pds_network_mode_build_string_from_mask
<SUBSECTION Standard>
QMI_TYPE_PDS_DATA_VALID
QMI_TYPE_PDS_OPERATION_MODE
QMI_TYPE_PDS_POSITION_SESSION_STATUS
QMI_TYPE_PDS_TRACKING_SESSION_STATE
QMI_TYPE_PDS_OPERATING_MODE
+QMI_TYPE_PDS_NETWORK_MODE
qmi_pds_data_valid_get_type
qmi_pds_operation_mode_get_type
qmi_pds_position_session_status_get_type
qmi_pds_tracking_session_state_get_type
qmi_pds_operating_mode_get_type
+qmi_pds_network_mode_get_type
</SECTION>
<SECTION>
diff --git a/docs/reference/libqmi-glib/libqmi-glib-docs.xml b/docs/reference/libqmi-glib/libqmi-glib-docs.xml
index 8b877fc..3051597 100644
--- a/docs/reference/libqmi-glib/libqmi-glib-docs.xml
+++ b/docs/reference/libqmi-glib/libqmi-glib-docs.xml
@@ -210,6 +210,8 @@
<xi:include href="xml/qmi-message-pds-set-auto-tracking-state.xml"/>
<xi:include href="xml/qmi-message-pds-get-default-tracking-session.xml"/>
<xi:include href="xml/qmi-message-pds-set-default-tracking-session.xml"/>
+ <xi:include href="xml/qmi-message-pds-get-agps-config.xml"/>
+ <xi:include href="xml/qmi-message-pds-set-agps-config.xml"/>
</section>
</chapter>
diff --git a/src/libqmi-glib/qmi-enums-pds.h b/src/libqmi-glib/qmi-enums-pds.h
index eec9932..d9ced54 100644
--- a/src/libqmi-glib/qmi-enums-pds.h
+++ b/src/libqmi-glib/qmi-enums-pds.h
@@ -168,4 +168,19 @@ typedef enum {
QMI_PDS_OPERATING_MODE_MS_ASSISTED = 2,
} QmiPdsOperatingMode;
+/*****************************************************************************/
+/* Helper enums for the 'QMI PDS Get AGPS Config' request/response */
+
+/**
+ * QmiPdsNetworkMode:
+ * @QMI_PDS_NETWORK_MODE_UMTS: UMTS.
+ * @QMI_PDS_NETWORK_MODE_CDMA: CDMA.
+ *
+ * Network mode used during the A-GPS setup.
+ */
+typedef enum {
+ QMI_PDS_NETWORK_MODE_UMTS = 0,
+ QMI_PDS_NETWORK_MODE_CDMA = 1,
+} QmiPdsNetworkMode;
+
#endif /* _LIBQMI_GLIB_QMI_ENUMS_PDS_H_ */