Aleksander Morgado
00a924617c
broadband-modem-qmi: implement full power off
...
The power off command will transition the device to the OFFLINE state. After
this, the modem will not be able to go online again unless it is power-cycled,
either externally (cut power and re-establish power) or through another
transition to QMI_DMES_OPERATING_MODE_RESET (which ModemManager will not
implement for this case).
2014-02-20 11:15:03 +01:00
Aleksander Morgado
9239fbcd7a
iface-modem: allow transitioning to the OFF power state
...
There are systems in which the modem power source can be controlled externally,
e.g. to switch it on or off. In these cases, it is sometimes advisable to be
able to tell the modem to cleanly shut off completely before the power is cut.
So, allow transitioning to the OFF power state if the modem supports it, even if
afterwards the modem could be completely unreachable.
2014-02-20 11:15:03 +01:00
Ben Chan
705dd0133d
broadband-modem-mbim: handle network initiated disconnect
...
Observing registration updates via the MBIM_CID_REGISTER_STATE
notification alone is not always sufficient to detect if the modem is
disconnected from the network. In case of a network-initiated
disconnect, it is possible that the modem is disconnected from the
network but remains registered.
This patch modifies MMBroadbandModemMbim to subscribe to the
MBIM_CID_CONNECT notification. Upon receiving a notification of a
deactivated session ID, the corresponding bearer is reported as
disconnected.
2014-02-20 10:27:03 +01:00
Ben Chan
1866aad9d3
bearer: remove unnecessary MM_BEARER() casts
2014-02-20 10:23:36 +01:00
Dan Williams
acc7b4b8b9
Revert "broadband-modem-mbim: update to use mbim_message_device_service_subscribe_list"
...
This reverts commit 8327db70b9 .
libmbim change not committed yet...
2014-02-19 18:59:24 -06:00
Ben Chan
8327db70b9
broadband-modem-mbim: update to use mbim_message_device_service_subscribe_list
...
libmbim renames 'MBIM_CID_DEVICE_SERVICE_SUBSCRIBER_LIST' to
'MBIM_CID_DEVICE_SERVICE_SUBSCRIBE_LIST' to be consistent with the MBIM
specification. This patch updates MMBroadbandModemMbim accordingly.
2014-02-19 18:52:17 -06:00
Ben Chan
ccbd5a2e2d
port-serial: fix gsize/gssize type mismatch
...
This patch fixes the following type mismatch in MMPortSerial::port_serial_process_command():
mm-port-serial.c:612:21: error: comparison of unsigned expression < 0 is always false [-Werror,-Wtautological-compare]
if (written < 0) {
~~~~~~~ ^ ~
2014-02-14 09:03:13 +01:00
Dan Williams
50de6798b0
broadband-modem: fix double-free of QCDM mode-pref query
...
Caused by a merge conflict between 81ee0783 and 529e94b0 .
2014-02-13 15:55:35 -06:00
Dan Williams
42ad7b758a
manager: make Bluetooth rfcomm ports work again
...
At some point rfcomm serial ports stopped having parents in sysfs,
so checks to get the physical device fail because the rfcomm port
is /sys/devices/virtual/rfcommX and has no parents. So we have
to fall back on checking the interface name.
2014-02-13 15:18:16 -06:00
Aleksander Morgado
ba58aa42f2
base-modem: don't apply auth checks if running in the SESSION bus
2014-02-13 13:41:55 +01:00
Aleksander Morgado
f85e345a9e
manager: as soon as we know we're going to stop, clear DBus connection
...
So that the ObjectManager interface doesn't try to signal about e.g. interface
removals; see:
https://bugzilla.gnome.org/show_bug.cgi?id=715157 .
2014-02-13 13:41:52 +01:00
Aleksander Morgado
247a945950
context: new '--test-plugin-dir' to allow specifying where the plugins are
2014-02-13 13:41:50 +01:00
Aleksander Morgado
6810aff864
manager: allow to remotely setup test profiles with 'virtual' ports
2014-02-13 13:41:44 +01:00
Aleksander Morgado
2d9d15f892
plugin: allow creating 'virtual' modems with 'virtual' ports
2014-02-13 13:41:41 +01:00
Aleksander Morgado
c182a04f64
base-modem: allow grabbing 'virtual' AT ports
2014-02-13 13:41:39 +01:00
Aleksander Morgado
abb88a5e0a
plugin-manager: allow looking plugins by name
2014-02-13 13:41:36 +01:00
Aleksander Morgado
9641d27518
device: allow creating 'virtual' devices
2014-02-13 13:41:33 +01:00
Aleksander Morgado
b7fa48dd22
device: new 'hotplugged' property
2014-02-13 13:41:31 +01:00
Aleksander Morgado
84ab92d85a
port-serial: allow ports based on Unix sockets
2014-02-13 13:41:28 +01:00
Aleksander Morgado
65f87561c5
context: new '--test-enable' to enable the Test interface
2014-02-13 13:41:25 +01:00
Aleksander Morgado
243720414e
context: new '--test-no-auto-scan' to avoid automatic scanning for devices
2014-02-13 13:41:23 +01:00
Aleksander Morgado
bf57da537d
context: new '--test-session' allows launching the MM daemon in the session bus
2014-02-13 13:41:20 +01:00
Aleksander Morgado
b28230411a
port-serial: always set the forced_close flag if forced to close
2014-02-13 13:41:06 +01:00
Aleksander Morgado
0d0f5de161
base-modem: allow looking for a subset of the available ports
2014-02-13 13:41:03 +01:00
Aleksander Morgado
2b46f65879
base-modem: allow grabbing non-tty AT ports
2014-02-13 13:41:01 +01:00
Aleksander Morgado
070f4938f3
plugin: allow probing non-tty AT ports
2014-02-13 13:40:58 +01:00
Aleksander Morgado
38ebf7c95b
port-serial-at: allow specifying subsystem when creating a 'MMPortSerialAt'
...
Don't just assume that all AT ports are TTYs.
2014-02-13 13:40:55 +01:00
Aleksander Morgado
9432674087
port-serial: use the GIOChannel also for writing data
2014-02-13 13:40:52 +01:00
Aleksander Morgado
3ef71e4541
port-serial: allow non-tty 'MMPortSerial' objects
...
Allow having 'MMPortSerial' objects for non-tty devices. This will allow us e.g.
handling /dev/cdc-wdm ports speaking the AT protocol.
2014-02-13 13:40:50 +01:00
Aleksander Morgado
6fc14f6611
port-serial: remove unneeded method
2014-02-13 13:40:47 +01:00
Aleksander Morgado
a2f4fbe373
port-serial-qcdm: commands are never cached
...
The QCDM port commands are never cached, so remove the option from the command()
method. Will also simplify command caching afterwards as it will be an AT-only
thing.
2014-02-13 13:40:44 +01:00
Aleksander Morgado
5792bcc876
port: remove 'constructor' checking for property validity
...
A constructor cannot return NULL, specially when there are subclasses, as it
would segfault. Just remove it, as it doesn't really do anything useful.
2014-02-13 13:40:42 +01:00
Aleksander Morgado
ef77e35a7f
port: use a 'priv' pointer to handle the private info
2014-02-13 13:40:39 +01:00
Aleksander Morgado
3f8f88499e
port-serial: use a 'priv' pointer to handle the private info
2014-02-13 13:40:36 +01:00
Aleksander Morgado
dbe13520ee
port-serial-at: use a 'priv' pointer to handle the private info
2014-02-13 13:40:33 +01:00
Aleksander Morgado
e909edcf1f
port-serial: use GIO Async API like method for command()
2014-02-13 13:40:30 +01:00
Aleksander Morgado
8122153a88
port-serial: use GIO Async API like method for flash()
2014-02-13 13:40:27 +01:00
Aleksander Morgado
6e35f0a888
port-serial: use GIO Async API like method for reopen()
2014-02-13 13:40:24 +01:00
Aleksander Morgado
d4dfd661b9
port-serial-at: use GIO Async API like methods
2014-02-13 13:40:21 +01:00
Aleksander Morgado
81ee07832d
port-serial-qcdm: use GIO Async API like methods
2014-02-13 13:40:17 +01:00
Aleksander Morgado
1d57a008df
port-serial-qcdm: remove unneeded private info
2014-02-13 13:40:14 +01:00
Aleksander Morgado
0c86840dde
ports: rename 'libserial' to 'libport'
2014-02-13 13:40:11 +01:00
Aleksander Morgado
c236e18692
ports: rename 'MMMbimPort' to 'MMPortMbim'
2014-02-13 13:40:07 +01:00
Aleksander Morgado
403e013f15
ports: rename 'MMQmiPort' to 'MMPortQmi'
2014-02-13 13:40:04 +01:00
Aleksander Morgado
6f235b9948
ports: rename 'MMAtSerialPort' to 'MMPortSerialAt'
2014-02-13 13:40:01 +01:00
Aleksander Morgado
0d1602bf0f
ports: rename 'MMQcdmSerialPort' to 'MMPortSerialQcdm'
2014-02-13 13:39:57 +01:00
Aleksander Morgado
e505ea0a58
ports: rename 'MMGpsSerialPort' to 'MMPortSerialGps'
2014-02-13 13:39:54 +01:00
Aleksander Morgado
9cde02111b
ports: rename 'MMSerialPort' to 'MMPortSerial'
2014-02-13 13:39:51 +01:00
Julian Oes
9447527c35
blacklist: ignore all devices from VID 0x26a, no modems from 3D Robotics
2014-02-04 12:11:59 +01:00
Ben Chan
c28ff0d547
modem-helpers: recognize "3G" as UMTS access technology
...
Some modems (e.g. ZTE MF190) report UMTS access technology as "3G":
--> 'AT+ZPAS?<CR>'
<-- '<CR><LF>+ZPAS: "3G","CS_PS"<CR><LF><CR><LF>OK<CR><LF>'
2014-01-29 10:15:17 -06:00