aboutsummaryrefslogtreecommitdiff
path: root/src/mm-port-probe.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/mm-port-probe.c')
-rw-r--r--src/mm-port-probe.c14
1 files changed, 14 insertions, 0 deletions
diff --git a/src/mm-port-probe.c b/src/mm-port-probe.c
index c02f0b23..c0b5b455 100644
--- a/src/mm-port-probe.c
+++ b/src/mm-port-probe.c
@@ -93,6 +93,7 @@ struct _MMPortProbePrivate {
/* From udev tags */
gboolean is_ignored;
gboolean is_gps;
+ gboolean is_audio;
gboolean maybe_at_primary;
gboolean maybe_at_secondary;
gboolean maybe_at_ppp;
@@ -1477,6 +1478,15 @@ mm_port_probe_run (MMPortProbe *self,
mm_port_probe_set_result_qcdm (self, FALSE);
}
+ /* If this is a port flagged as an audio port, don't do any AT or QCDM probing */
+ if (self->priv->is_audio) {
+ mm_dbg ("(%s/%s) audio port detected",
+ mm_kernel_device_get_subsystem (self->priv->port),
+ mm_kernel_device_get_name (self->priv->port));
+ mm_port_probe_set_result_at (self, FALSE);
+ mm_port_probe_set_result_qcdm (self, FALSE);
+ }
+
/* If this is a port flagged as being an AT port, don't do any QCDM probing */
if (self->priv->maybe_at_primary || self->priv->maybe_at_secondary || self->priv->maybe_at_ppp) {
mm_dbg ("(%s/%s) no QCDM probing in possible AT port",
@@ -1711,6 +1721,9 @@ mm_port_probe_get_port_type (MMPortProbe *self)
if (self->priv->is_gps)
return MM_PORT_TYPE_GPS;
+ if (self->priv->is_audio)
+ return MM_PORT_TYPE_AUDIO;
+
return MM_PORT_TYPE_UNKNOWN;
}
@@ -1900,6 +1913,7 @@ set_property (GObject *object,
self->priv->port = g_value_dup_object (value);
self->priv->is_ignored = mm_kernel_device_get_property_as_boolean (self->priv->port, ID_MM_PORT_IGNORE);
self->priv->is_gps = mm_kernel_device_get_property_as_boolean (self->priv->port, ID_MM_PORT_TYPE_GPS);
+ self->priv->is_audio = mm_kernel_device_get_property_as_boolean (self->priv->port, ID_MM_PORT_TYPE_AUDIO);
self->priv->maybe_at_primary = mm_kernel_device_get_property_as_boolean (self->priv->port, ID_MM_PORT_TYPE_AT_PRIMARY);
self->priv->maybe_at_secondary = mm_kernel_device_get_property_as_boolean (self->priv->port, ID_MM_PORT_TYPE_AT_SECONDARY);
self->priv->maybe_at_ppp = mm_kernel_device_get_property_as_boolean (self->priv->port, ID_MM_PORT_TYPE_AT_PPP);