aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--libqcdm/src/commands.h9
-rw-r--r--libqcdm/src/dm-commands.h11
-rw-r--r--libqcdm/tests/test-qcdm-com.c35
3 files changed, 45 insertions, 10 deletions
diff --git a/libqcdm/src/commands.h b/libqcdm/src/commands.h
index 56dc036d..ceb4a4cc 100644
--- a/libqcdm/src/commands.h
+++ b/libqcdm/src/commands.h
@@ -319,7 +319,14 @@ QcdmResult *qcdm_cmd_nv_set_hdr_rev_pref_result (const char *buf,
/* Values for QCDM_CMD_CM_SUBSYS_STATE_INFO_ITEM_OPERATING_MODE */
enum {
- QCDM_CMD_CM_SUBSYS_STATE_INFO_OPERATING_MODE_ONLINE = 5
+ QCDM_CMD_CM_SUBSYS_STATE_INFO_OPERATING_MODE_POWER_OFF = 0,
+ QCDM_CMD_CM_SUBSYS_STATE_INFO_OPERATING_MODE_FIELD_TEST_MODE = 1,
+ QCDM_CMD_CM_SUBSYS_STATE_INFO_OPERATING_MODE_OFFLINE = 2,
+ QCDM_CMD_CM_SUBSYS_STATE_INFO_OPERATING_MODE_OFFLINE_AMPS = 3,
+ QCDM_CMD_CM_SUBSYS_STATE_INFO_OPERATING_MODE_OFFLINE_CDMA = 4,
+ QCDM_CMD_CM_SUBSYS_STATE_INFO_OPERATING_MODE_ONLINE = 5,
+ QCDM_CMD_CM_SUBSYS_STATE_INFO_OPERATING_MODE_LOW_POWER_MODE = 6,
+ QCDM_CMD_CM_SUBSYS_STATE_INFO_OPERATING_MODE_RESET = 7
};
/* Values for QCDM_CMD_CM_SUBSYS_STATE_INFO_ITEM_SYSTEM_MODE */
diff --git a/libqcdm/src/dm-commands.h b/libqcdm/src/dm-commands.h
index e4bbc6ee..7592d125 100644
--- a/libqcdm/src/dm-commands.h
+++ b/libqcdm/src/dm-commands.h
@@ -294,6 +294,17 @@ struct DMCmdSwVersionRsp {
} __attribute__ ((packed));
typedef struct DMCmdSwVersionRsp DMCmdSwVersionRsp;
+typedef enum {
+ DM_OPER_MODE_POWER_OFF = 0,
+ DM_OPER_MODE_FIELD_TEST_MODE = 1,
+ DM_OPER_MODE_OFFLINE = 2,
+ DM_OPER_MODE_OFFLINE_AMPS = 3,
+ DM_OPER_MODE_OFFLINE_CDMA = 4,
+ DM_OPER_MODE_ONLINE = 5,
+ DM_OPER_MODE_LOW_POWER_MODE = 6,
+ DM_OPER_MODE_RESETTING = 7,
+} DMOperMode;
+
/* DIAG_CMD_STATUS_SNAPSHOT */
struct DMCmdStatusSnapshotRsp {
u_int8_t code;
diff --git a/libqcdm/tests/test-qcdm-com.c b/libqcdm/tests/test-qcdm-com.c
index 4d99cda4..acb03f6d 100644
--- a/libqcdm/tests/test-qcdm-com.c
+++ b/libqcdm/tests/test-qcdm-com.c
@@ -909,6 +909,31 @@ test_com_pilot_sets (void *f, void *data)
qcdm_result_unref (result);
}
+static const char *
+operating_mode_to_string (guint32 mode)
+{
+ switch (mode) {
+ case QCDM_CMD_CM_SUBSYS_STATE_INFO_OPERATING_MODE_POWER_OFF:
+ return "powering off";
+ case QCDM_CMD_CM_SUBSYS_STATE_INFO_OPERATING_MODE_FIELD_TEST_MODE:
+ return "field test mode";
+ case QCDM_CMD_CM_SUBSYS_STATE_INFO_OPERATING_MODE_OFFLINE:
+ return "offline";
+ case QCDM_CMD_CM_SUBSYS_STATE_INFO_OPERATING_MODE_OFFLINE_AMPS:
+ return "online (AMPS)";
+ case QCDM_CMD_CM_SUBSYS_STATE_INFO_OPERATING_MODE_OFFLINE_CDMA:
+ return "online (CDMA)";
+ case QCDM_CMD_CM_SUBSYS_STATE_INFO_OPERATING_MODE_ONLINE:
+ return "online";
+ case QCDM_CMD_CM_SUBSYS_STATE_INFO_OPERATING_MODE_LOW_POWER_MODE:
+ return "low power mode";
+ case QCDM_CMD_CM_SUBSYS_STATE_INFO_OPERATING_MODE_RESET:
+ return "reset";
+ default:
+ return "unknown";
+ }
+}
+
void
test_com_cm_subsys_state_info (void *f, void *data)
{
@@ -945,15 +970,7 @@ test_com_cm_subsys_state_info (void *f, void *data)
n32 = 0;
detail = NULL;
qcdm_result_get_u32 (result, QCDM_CMD_CM_SUBSYS_STATE_INFO_ITEM_OPERATING_MODE, &n32);
- switch (n32) {
- case QCDM_CMD_CM_SUBSYS_STATE_INFO_OPERATING_MODE_ONLINE:
- detail = "online";
- break;
- default:
- detail = "unknown";
- break;
- }
- g_message ("%s: Operating Mode: %u (%s)", __func__, n32, detail);
+ g_message ("%s: Operating Mode: %u (%s)", __func__, n32, operating_mode_to_string (n32));
n32 = 0;
detail = NULL;