diff options
author | Aleksander Morgado <aleksander@lanedo.com> | 2012-08-30 11:01:29 +0200 |
---|---|---|
committer | Aleksander Morgado <aleksander@lanedo.com> | 2012-08-30 17:08:23 +0200 |
commit | 36733aa4de83bfce7676899c7d1acea36cc4a147 (patch) | |
tree | 8af13b0b7917d9597deff4f287d03669216fee7a /src/mm-base-modem.h | |
parent | 3132e34dc143e90542746f3c85102584279433b0 (diff) |
base-modem: allow looking for the QMI port associated to a given data port
QMI and wwan ports come in pairs. Each wwan port has an associated control QMI
port, which is the only port allowed to send the Start|Stop Network QMI requests
to start|stop the connection in the given wwan interface.
Paired QMI and wwan interfaces (should) share the same parent udev device,
quoting Bjørn:
"If we ignore the unfortunate 3.4 and 3.5 kernels, then a matching wwanX
and cdc-wdmY set will always share the same parent USB interface on QMI
devices.
Having the same parent USB device is *not* sufficient. You cannot control
wwan0 using cdc-wdm1 in the above example."
Diffstat (limited to 'src/mm-base-modem.h')
-rw-r--r-- | src/mm-base-modem.h | 20 |
1 files changed, 11 insertions, 9 deletions
diff --git a/src/mm-base-modem.h b/src/mm-base-modem.h index 36a7a51c..386fa8f5 100644 --- a/src/mm-base-modem.h +++ b/src/mm-base-modem.h @@ -112,15 +112,16 @@ gboolean mm_base_modem_has_at_port (MMBaseModem *self); gboolean mm_base_modem_organize_ports (MMBaseModem *self, GError **error); -MMAtSerialPort *mm_base_modem_peek_port_primary (MMBaseModem *self); -MMAtSerialPort *mm_base_modem_peek_port_secondary (MMBaseModem *self); -MMQcdmSerialPort *mm_base_modem_peek_port_qcdm (MMBaseModem *self); -MMAtSerialPort *mm_base_modem_peek_port_gps_control (MMBaseModem *self); -MMGpsSerialPort *mm_base_modem_peek_port_gps (MMBaseModem *self); -MMQmiPort *mm_base_modem_peek_port_qmi (MMBaseModem *self); -MMAtSerialPort *mm_base_modem_peek_best_at_port (MMBaseModem *self, GError **error); -MMPort *mm_base_modem_peek_best_data_port (MMBaseModem *self); -GList *mm_base_modem_peek_data_ports (MMBaseModem *self); +MMAtSerialPort *mm_base_modem_peek_port_primary (MMBaseModem *self); +MMAtSerialPort *mm_base_modem_peek_port_secondary (MMBaseModem *self); +MMQcdmSerialPort *mm_base_modem_peek_port_qcdm (MMBaseModem *self); +MMAtSerialPort *mm_base_modem_peek_port_gps_control (MMBaseModem *self); +MMGpsSerialPort *mm_base_modem_peek_port_gps (MMBaseModem *self); +MMQmiPort *mm_base_modem_peek_port_qmi (MMBaseModem *self); +MMQmiPort *mm_base_modem_peek_port_qmi_for_data (MMBaseModem *self, MMPort *data, GError **error); +MMAtSerialPort *mm_base_modem_peek_best_at_port (MMBaseModem *self, GError **error); +MMPort *mm_base_modem_peek_best_data_port (MMBaseModem *self); +GList *mm_base_modem_peek_data_ports (MMBaseModem *self); MMAtSerialPort *mm_base_modem_get_port_primary (MMBaseModem *self); MMAtSerialPort *mm_base_modem_get_port_secondary (MMBaseModem *self); @@ -128,6 +129,7 @@ MMQcdmSerialPort *mm_base_modem_get_port_qcdm (MMBaseModem *self); MMAtSerialPort *mm_base_modem_get_port_gps_control (MMBaseModem *self); MMGpsSerialPort *mm_base_modem_get_port_gps (MMBaseModem *self); MMQmiPort *mm_base_modem_get_port_qmi (MMBaseModem *self); +MMQmiPort *mm_base_modem_get_port_qmi_for_data (MMBaseModem *self, MMPort *data, GError **error); MMAtSerialPort *mm_base_modem_get_best_at_port (MMBaseModem *self, GError **error); MMPort *mm_base_modem_get_best_data_port (MMBaseModem *self); GList *mm_base_modem_get_data_ports (MMBaseModem *self); |