aboutsummaryrefslogtreecommitdiff
path: root/plugins/mm-plugin-anydata.c
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/mm-plugin-anydata.c')
-rw-r--r--plugins/mm-plugin-anydata.c19
1 files changed, 12 insertions, 7 deletions
diff --git a/plugins/mm-plugin-anydata.c b/plugins/mm-plugin-anydata.c
index e4517140..fb6f84c6 100644
--- a/plugins/mm-plugin-anydata.c
+++ b/plugins/mm-plugin-anydata.c
@@ -42,9 +42,11 @@ mm_plugin_create (void)
static guint32
get_level_for_capabilities (guint32 capabilities)
{
- /* Only CDMA for now */
+ /* Only CDMA and QCDM for now */
if (capabilities & CAP_CDMA)
return 10;
+ if (capabilities & MM_PLUGIN_BASE_PORT_CAP_QCDM)
+ return 10;
return 0;
}
@@ -150,12 +152,15 @@ grab_port (MMPluginBase *base,
return NULL;
}
}
- } else {
- if (caps & CAP_CDMA) {
- modem = existing;
- if (!mm_modem_grab_port (modem, subsys, name, MM_PORT_TYPE_UNKNOWN, NULL, error))
- return NULL;
- }
+ } else if (get_level_for_capabilities (caps)) {
+ MMPortType ptype = MM_PORT_TYPE_UNKNOWN;
+
+ if (caps & MM_PLUGIN_BASE_PORT_CAP_QCDM)
+ ptype = MM_PORT_TYPE_QCDM;
+
+ modem = existing;
+ if (!mm_modem_grab_port (modem, subsys, name, ptype, NULL, error))
+ return NULL;
}
return modem;