base-modem: allow retrieving non-connected data ports
Bearers will ask for data ports that can be used for connections. Right now, only one data port is expected to be handled, but we don't impose any restriction in the API.
This commit is contained in:
+13
-3
@@ -302,9 +302,6 @@ mm_base_modem_grab_port (MMBaseModem *self,
|
||||
if (!self->priv->data || MM_IS_AT_SERIAL_PORT (self->priv->data)) {
|
||||
g_clear_object (&self->priv->data);
|
||||
self->priv->data = g_object_ref (port);
|
||||
|
||||
/* TODO: */
|
||||
/* check_valid (self); */
|
||||
}
|
||||
|
||||
mm_dbg ("(%s/%s) port grabbed by %s",
|
||||
@@ -420,6 +417,19 @@ mm_base_modem_get_port_qcdm (MMBaseModem *self)
|
||||
return self->priv->qcdm;
|
||||
}
|
||||
|
||||
MMPort *
|
||||
mm_base_modem_get_best_data_port (MMBaseModem *self)
|
||||
{
|
||||
g_return_val_if_fail (MM_IS_BASE_MODEM (self), NULL);
|
||||
|
||||
/* TODO: sometime we'll have a list of available data ports to use instead
|
||||
* of a single one */
|
||||
|
||||
return (mm_port_get_connected (self->priv->data) ?
|
||||
NULL :
|
||||
self->priv->data);
|
||||
}
|
||||
|
||||
gboolean
|
||||
mm_base_modem_auth_request (MMBaseModem *self,
|
||||
const gchar *authorization,
|
||||
|
||||
@@ -107,6 +107,7 @@ gboolean mm_base_modem_owns_port (MMBaseModem *self,
|
||||
MMAtSerialPort *mm_base_modem_get_port_primary (MMBaseModem *self);
|
||||
MMAtSerialPort *mm_base_modem_get_port_secondary (MMBaseModem *self);
|
||||
MMQcdmSerialPort *mm_base_modem_get_port_qcdm (MMBaseModem *self);
|
||||
MMPort *mm_base_modem_get_best_data_port (MMBaseModem *self);
|
||||
|
||||
void mm_base_modem_set_valid (MMBaseModem *self,
|
||||
gboolean valid);
|
||||
|
||||
Reference in New Issue
Block a user