aboutsummaryrefslogtreecommitdiff
path: root/libqcdm/src
diff options
context:
space:
mode:
Diffstat (limited to 'libqcdm/src')
-rw-r--r--libqcdm/src/commands.c29
-rw-r--r--libqcdm/src/commands.h11
-rw-r--r--libqcdm/src/dm-commands.h14
3 files changed, 54 insertions, 0 deletions
diff --git a/libqcdm/src/commands.c b/libqcdm/src/commands.c
index db53fc7c..47b517de 100644
--- a/libqcdm/src/commands.c
+++ b/libqcdm/src/commands.c
@@ -1095,6 +1095,35 @@ qcmd_cmd_ext_logmask_result_get_item (QCDMResult *result,
/**********************************************************************/
gsize
+qcdm_cmd_event_report_new (char *buf, gsize len, gboolean start, GError **error)
+{
+ char cmdbuf[4];
+ DMCmdEventReport *cmd = (DMCmdEventReport *) &cmdbuf[0];
+
+ g_return_val_if_fail (buf != NULL, 0);
+ g_return_val_if_fail (len >= sizeof (*cmd) + DIAG_TRAILER_LEN, 0);
+
+ memset (cmd, 0, sizeof (*cmd));
+ cmd->code = DIAG_CMD_EVENT_REPORT;
+ cmd->on = start ? 1 : 0;
+
+ return dm_encapsulate_buffer (cmdbuf, sizeof (*cmd), sizeof (cmdbuf), buf, len);
+}
+
+QCDMResult *
+qcdm_cmd_event_report_result (const char *buf, gsize len, GError **error)
+{
+ g_return_val_if_fail (buf != NULL, NULL);
+
+ if (!check_command (buf, len, DIAG_CMD_EVENT_REPORT, sizeof (DMCmdEventReport), error))
+ return NULL;
+
+ return qcdm_result_new ();
+}
+
+/**********************************************************************/
+
+gsize
qcdm_cmd_zte_subsys_status_new (char *buf, gsize len, GError **error)
{
char cmdbuf[sizeof (DMCmdSubsysHeader) + 2];
diff --git a/libqcdm/src/commands.h b/libqcdm/src/commands.h
index 91997f3b..50a6f49a 100644
--- a/libqcdm/src/commands.h
+++ b/libqcdm/src/commands.h
@@ -459,6 +459,17 @@ gboolean qcmd_cmd_ext_logmask_result_get_item (QCDMResult *result,
/**********************************************************************/
+gsize qcdm_cmd_event_report_new (char *buf,
+ gsize len,
+ gboolean start,
+ GError **error);
+
+QCDMResult *qcdm_cmd_event_report_result (const char *buf,
+ gsize len,
+ GError **error);
+
+/**********************************************************************/
+
#define QCDM_CMD_ZTE_SUBSYS_STATUS_ITEM_SIGNAL_INDICATOR "signal-indicator"
gsize qcdm_cmd_zte_subsys_status_new (char *buf,
diff --git a/libqcdm/src/dm-commands.h b/libqcdm/src/dm-commands.h
index 8f995fef..6ce3c5da 100644
--- a/libqcdm/src/dm-commands.h
+++ b/libqcdm/src/dm-commands.h
@@ -377,6 +377,20 @@ struct DMCmdExtLogMask {
} __attribute__ ((packed));
typedef struct DMCmdExtLogMask DMCmdExtLogMask;
+struct DMCmdEventReport {
+ guint8 code;
+ guint8 on;
+} __attribute__ ((packed));
+typedef struct DMCmdEventReport DMCmdEventReport;
+
+struct DMCmdEventReportRsp {
+ guint8 code;
+ guint16 len;
+ guint16 event_id;
+ guint8 data[0];
+} __attribute__ ((packed));
+typedef struct DMCmdEventReportRsp DMCmdEventReportRsp;
+
/* DIAG_SUBSYS_NW_CONTROL_* subsys command */
struct DMCmdSubsysNwSnapshotReq {
DMCmdSubsysHeader hdr;