aboutsummaryrefslogtreecommitdiff
path: root/plugins
diff options
context:
space:
mode:
authorDaniele Palmas <dnlplm@gmail.com>2016-10-05 16:43:37 +0200
committerAleksander Morgado <aleksander@aleksander.es>2016-10-06 11:37:09 +0200
commitd5cfad49d879a21f5f05eaa14fa5d19f12241dda (patch)
tree083d43c1925ad142c21c4f4e972a1f56dfa3a5bb /plugins
parent30bcf5605cf661cdc884fcc83adf7c2304bd072d (diff)
telit: add GE910 #PORTCFG layouts
GE910 family supports #PORTCFG layouts different than HE910 family ones. This patch properly tags GE910 ports according to Telit document "GE910 Family Ports Arrangements, 1vv0301049"
Diffstat (limited to 'plugins')
-rw-r--r--plugins/telit/mm-common-telit.c19
1 files changed, 16 insertions, 3 deletions
diff --git a/plugins/telit/mm-common-telit.c b/plugins/telit/mm-common-telit.c
index 14bf599b..78530c42 100644
--- a/plugins/telit/mm-common-telit.c
+++ b/plugins/telit/mm-common-telit.c
@@ -26,6 +26,8 @@
#define TAG_TELIT_AUX_PORT "ID_MM_TELIT_PORT_TYPE_AUX"
#define TAG_TELIT_NMEA_PORT "ID_MM_TELIT_PORT_TYPE_NMEA"
+#define TELIT_GE910_FAMILY_PID 0x0022
+
gboolean
telit_grab_port (MMPlugin *self,
MMBaseModem *modem,
@@ -143,6 +145,7 @@ cache_port_mode (MMDevice *device,
/* Reference for port configurations:
* HE910/UE910/UL865 Families Ports Arrangements User Guide
+ * GE910 Family Ports Arrangements User Guide
*/
switch (portcfg_current) {
case 0:
@@ -154,7 +157,11 @@ cache_port_mode (MMDevice *device,
case 10:
case 11:
g_object_set_data (G_OBJECT (device), TAG_TELIT_MODEM_PORT, "00");
- g_object_set_data (G_OBJECT (device), TAG_TELIT_AUX_PORT, "06");
+
+ if (mm_device_get_product (device) == TELIT_GE910_FAMILY_PID)
+ g_object_set_data (G_OBJECT (device), TAG_TELIT_AUX_PORT, "02");
+ else
+ g_object_set_data (G_OBJECT (device), TAG_TELIT_AUX_PORT, "06");
break;
case 2:
case 3:
@@ -164,8 +171,14 @@ cache_port_mode (MMDevice *device,
case 8:
case 12:
g_object_set_data (G_OBJECT (device), TAG_TELIT_MODEM_PORT, "00");
- g_object_set_data (G_OBJECT (device), TAG_TELIT_AUX_PORT, "06");
- g_object_set_data (G_OBJECT (device), TAG_TELIT_NMEA_PORT, "0a");
+
+ if (mm_device_get_product (device) == TELIT_GE910_FAMILY_PID) {
+ g_object_set_data (G_OBJECT (device), TAG_TELIT_AUX_PORT, "02");
+ g_object_set_data (G_OBJECT (device), TAG_TELIT_NMEA_PORT, "04");
+ } else {
+ g_object_set_data (G_OBJECT (device), TAG_TELIT_AUX_PORT, "06");
+ g_object_set_data (G_OBJECT (device), TAG_TELIT_NMEA_PORT, "0a");
+ }
break;
default:
/* portcfg value not supported */