aboutsummaryrefslogtreecommitdiff
path: root/plugins/cinterion/mm-modem-helpers-cinterion.h
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/cinterion/mm-modem-helpers-cinterion.h')
-rw-r--r--plugins/cinterion/mm-modem-helpers-cinterion.h67
1 files changed, 46 insertions, 21 deletions
diff --git a/plugins/cinterion/mm-modem-helpers-cinterion.h b/plugins/cinterion/mm-modem-helpers-cinterion.h
index a939e499..c35c5b3c 100644
--- a/plugins/cinterion/mm-modem-helpers-cinterion.h
+++ b/plugins/cinterion/mm-modem-helpers-cinterion.h
@@ -26,21 +26,51 @@
#define _LIBMM_INSIDE_MM
#include <libmm-glib.h>
+typedef enum {
+ MM_CINTERION_MODEM_FAMILY_DEFAULT = 0,
+ MM_CINTERION_MODEM_FAMILY_IMT = 1,
+} MMCinterionModemFamily;
+
+typedef enum {
+ MM_CINTERION_RADIO_BAND_FORMAT_SINGLE = 0,
+ MM_CINTERION_RADIO_BAND_FORMAT_MULTIPLE = 1,
+} MMCinterionRadioBandFormat;
+
+typedef enum {
+ MM_CINTERION_RB_BLOCK_LEGACY = 0,
+ MM_CINTERION_RB_BLOCK_GSM = 0,
+ MM_CINTERION_RB_BLOCK_UMTS = 1,
+ MM_CINTERION_RB_BLOCK_LTE_LOW = 2,
+ MM_CINTERION_RB_BLOCK_LTE_HIGH = 3,
+ MM_CINTERION_RB_BLOCK_N = 4
+} MMCinterionRbBlock;
+
+typedef enum {
+ MM_CINTERION_RADIO_GEN_NONE = 0,
+ MM_CINTERION_RADIO_GEN_2G = 2,
+ MM_CINTERION_RADIO_GEN_3G = 3,
+ MM_CINTERION_RADIO_GEN_4G = 4,
+} MMCinterionRadioGen;
+
/*****************************************************************************/
/* ^SCFG test parser */
-gboolean mm_cinterion_parse_scfg_test (const gchar *response,
- MMModemCharset charset,
- GArray **supported_bands,
- GError **error);
+gboolean mm_cinterion_parse_scfg_test (const gchar *response,
+ MMCinterionModemFamily modem_family,
+ MMModemCharset charset,
+ GArray **supported_bands,
+ MMCinterionRadioBandFormat *format,
+ GError **error);
/*****************************************************************************/
/* ^SCFG response parser */
-gboolean mm_cinterion_parse_scfg_response (const gchar *response,
- MMModemCharset charset,
- GArray **bands,
- GError **error);
+gboolean mm_cinterion_parse_scfg_response (const gchar *response,
+ MMCinterionModemFamily modem_family,
+ MMModemCharset charset,
+ GArray **bands,
+ MMCinterionRadioBandFormat format,
+ GError **error);
/*****************************************************************************/
/* +CNMI test parser */
@@ -56,11 +86,13 @@ gboolean mm_cinterion_parse_cnmi_test (const gchar *response,
/*****************************************************************************/
/* Build Cinterion-specific band value */
-gboolean mm_cinterion_build_band (GArray *bands,
- guint supported,
- gboolean only_2g,
- guint *out_band,
- GError **error);
+gboolean mm_cinterion_build_band (GArray *bands,
+ guint *supported,
+ gboolean only_2g,
+ MMCinterionRadioBandFormat format,
+ MMCinterionModemFamily modem_family,
+ guint *out_band,
+ GError **error);
/*****************************************************************************/
/* Single ^SIND response parser */
@@ -116,15 +148,8 @@ gboolean mm_cinterion_parse_ctzu_urc (GMatchInfo *match_info,
/*****************************************************************************/
/* ^SMONI helper */
-typedef enum { /*< underscore_name=mm_modem_port_type >*/
- MM_CINTERION_SMONI_NO_TECH = 0,
- MM_CINTERION_SMONI_2G = 2,
- MM_CINTERION_SMONI_3G = 3,
- MM_CINTERION_SMONI_4G = 4,
-} MMCinterionSmoniTech;
-
gboolean mm_cinterion_parse_smoni_query_response (const gchar *response,
- MMCinterionSmoniTech *out_tech,
+ MMCinterionRadioGen *out_tech,
gdouble *out_rssi,
gdouble *out_ecn0,
gdouble *out_rscp,