Commit Graph

3500 Commits

Author SHA1 Message Date
Aleksander Morgado
b35d6a65fa plugin-manager: define a minimum probing time of 2s
Effectively, we're now letting the kernel up to 2s to show all the ports of the
device, starting from the time where the first port is exposed.
2012-08-06 20:06:45 +02:00
Aleksander Morgado
e8339385da manager: use the new method to check support of a given full device 2012-08-06 20:06:45 +02:00
Aleksander Morgado
5b4abce64a plugin-manager: new method to check support for a given device and all its ports
The new `mm_plugin_manager_find_device_support()' will be an async method which
waits for ports to be added in the given `MMDevice'. As soon as all added ports
are probed, the device support check is considered finished.
2012-08-06 20:06:45 +02:00
Aleksander Morgado
3daed5130f plugin-base: don't assume a plugin will give as supported all ports of the device
E.g. the Generic plugin will give as unsupported 'net' ports found in the
device, as it doesn't know how to use them.
2012-08-06 20:06:44 +02:00
Aleksander Morgado
66ec5cd724 device: signal grabbed/released ports 2012-08-06 20:06:44 +02:00
Aleksander Morgado
72ffa7a1e5 device: load driver being used when first port grabbed 2012-08-06 20:06:44 +02:00
Aleksander Morgado
7b7f5b9dcb device: keep sysfs path around for logging 2012-08-06 20:06:44 +02:00
Aleksander Morgado
0aff871b04 device: split `MMDevice' creation and plugin setting
We want to be able to create the MMDevice way before we have decided which
plugin to use.
2012-08-06 20:06:44 +02:00
Aleksander Morgado
815693661c core: compile all ports before creating the modem object
Before this, we only exported the modem to DBus when all ports were organized,
in order to make sure that we select as primary port the one we really want and
not the first AT port grabbed. Given that to get all the ports organized we also
needed to wait to get all the ports grabbed, we can now also defer the creation
of the modem object until all the ports get grabbed. This allows us to create
different types of objects based on the ports available (e.g. we can now create
QMI-supported modem objects if we see a QMI port around).
2012-08-06 20:06:44 +02:00
Aleksander Morgado
4add521a98 build: remove duplicate `--with-docs' switch 2012-08-02 10:40:33 +02:00
Aleksander Morgado
0336b8f89d iface-modem: don't process signal/act updates if interface is shut down
When the interface is shut down the skeleton object no longer exists. Given that
we're allowing this actions from outside the interface, we should be safe and
don't assume that the caller knows exactly the state of the interface.
2012-08-02 09:23:16 +02:00
Ben Chan
b320f5c065 iface-modem: fix crashes due to removed context 2012-08-02 09:18:06 +02:00
Aleksander Morgado
0ff904b3c5 bearer: set state as DISCONNECTING as soon as we cancel the connection sequence
Just when we request to cancel the connection we need to set the bearer as
being disconnected, so that we do not end up overwriting connection cancellation
requests.

Reported by: Thieu Le <thieule@chromium.org>
2012-07-31 09:18:45 +02:00
Aleksander Morgado
737b6c2fc5 cli,libmm-glib: provide mm_manager_(peek|get)_proxy()
peek() doesn't increase the reference count of the proxy object, while get()
does it.
2012-07-31 09:02:58 +02:00
Ben Chan
60405ce4ff cli,libmm-glib: set default timeout on manager DBus proxy
This patch fixes mmcli to set the default timeout on the manager proxy
interface (MmGdbusOrgFreedesktopModemManager1) instead of MMManager
itself. The later is not a GDBusProxy object.
2012-07-31 08:54:45 +02:00
Aleksander Morgado
a448eabb3d iface-modem: SIM-PIN2 lock takes us to disabled state, not locked 2012-07-26 11:05:20 +02:00
Aleksander Morgado
8d31e79ac4 sim: getting SIM-PIN2 lock doesn't mean PIN sending failed 2012-07-26 11:00:17 +02:00
Aleksander Morgado
05289d094b iface-modem-3gpp: fix variant ref count 2012-07-25 12:00:28 +02:00
Aleksander Morgado
75d84b7402 cli: get AT command timeout directly from our default operation timeout
We remove the `--command-timeout' option, as the AT command timeout is now
directly computed from our default DBus timeout (modifiable with `--timeout').
2012-07-25 11:44:18 +02:00
Aleksander Morgado
8b863c5a4b libmm-glib: don't change default DBus timeout when running Modem.Command()
Just warn if the default DBus timeout is shorter than the one being requested.
2012-07-25 11:44:09 +02:00
Aleksander Morgado
8f8bcd7724 cli: allow modifying default DBus timeout with `--timeout'
By default 30s will be used for every operation.
2012-07-25 11:44:01 +02:00
Aleksander Morgado
8a34e41794 cli: fix showing CDMA related info in sync mode 2012-07-25 11:43:53 +02:00
Aleksander Morgado
001f35234e cli: ensure modem is enabled when performing actions
Don't rely on the lock status, as the modem may say it requires SIM PIN 2, but
we're allowed to run most operations even with that unlock required.
2012-07-25 11:43:45 +02:00
Aleksander Morgado
c6c1e0fb50 broadband-modem: fallback to unencoded command in USSD if encoded fails 2012-07-22 14:51:31 +02:00
Aleksander Morgado
19e65253de broadband-bearer: debug logs when disconnecting 3GPP bearer 2012-07-22 13:40:02 +02:00
Aleksander Morgado
aa11a0bf7d broadband-modem: assume CS if 2G supported 2012-07-22 13:39:50 +02:00
Aleksander Morgado
79fbe274e9 iface-modem: new async method to be run just after the successful SIM unlock 2012-07-22 13:39:35 +02:00
Aleksander Morgado
2aceb907f4 mm-broadband-modem: fix result completion on hex encoding errors 2012-07-22 13:36:43 +02:00
Aleksander Morgado
9670b362bf mm-broadband-modem: fix USSD command sending, don't use cached AT replies 2012-07-22 13:35:18 +02:00
Aleksander Morgado
ea10c57056 broadband-modem: cancel pending USSD request if USSD session cancelled 2012-07-22 13:33:34 +02:00
Aleksander Morgado
ce33bcfd7a iface-modem-3gpp-ussd: set proper initial session state 2012-07-22 13:33:25 +02:00
Aleksander Morgado
89cdb8819a iface-modem-3gpp-ussd: don't allow USSD actions if the modem is not enabled 2012-07-22 13:33:15 +02:00
Aleksander Morgado
dd8dcbb899 messaging: don't treat as fatal error if we cannot read from a given storage 2012-07-22 13:33:07 +02:00
Aleksander Morgado
2146553c59 broadband-bearer: fix missing method
It was wrongly removed in commit 2506e3093e.
2012-07-21 17:13:07 +02:00
Aleksander Morgado
9f5dd85d96 doc: include missing description of the new LTE bands 2012-07-21 16:21:21 +02:00
Aleksander Morgado
3653ec4b8e broadband-modem: send always ATZ alone
ITU rec v.250 (6.1.1) says:
  The DTE should not include additional commands on the same command line after
  the Z command because such commands may be ignored.
2012-07-19 16:22:52 +02:00
Aleksander Morgado
b300110055 hso: use common integer string parsers 2012-07-19 16:22:45 +02:00
Aleksander Morgado
487cd29d8b hso: unsolicited %IPDPACT may come before the AT command reply 2012-07-19 16:22:40 +02:00
Aleksander Morgado
c63f42a20c hso: plug memleak when finishing dialling with error 2012-07-19 16:22:32 +02:00
Aleksander Morgado
b43ee56d06 hso: fix cid to report to 2012-07-19 16:22:27 +02:00
Dan Williams
e7715af875 serial: fix AT port carriage return handling
Off-by-one, fix it.
2012-07-18 10:51:44 -05:00
Aleksander Morgado
2506e3093e api,header: add LTE specific bands in `MMModemBand' 2012-07-18 14:51:11 +02:00
Aleksander Morgado
d25f767559 api,header: fix description of `MMModemBand'
It was a bitmask once...
2012-07-18 14:51:11 +02:00
Dan Williams
f08c76f00c decode: handle another UsbSnoop URB function 2012-07-17 16:04:31 -05:00
Ben Chan
717977d0b5 iface-modem-messaging: check if supported storage is allocated before use
load_supported_storages may fail, which results in unallocated storage
memory. This patch modifies load_initial_sms_parts_from_storages and
is_storage_supported to handle that gracefully.
2012-07-17 08:02:13 +02:00
Aleksander Morgado
431b6a0fc5 broadband-modem: remove `USE_WS46' property
3GPP modems will all try to use AT+WS46=? by default to gather supported modes.
2012-07-16 08:34:01 +02:00
Aleksander Morgado
7ce65fe85d broadband-modem: try to guess more specific 2G/3G/4G mode support
For 3GPP modems, we'll try with AT+WS46=?, which is the standard command to
query supported networks. If it returns error, we'll fallback to the defaults.

For CDMA modems, we'll try to gather CDMA1x and/or EV-DO support directly from
the AT+GCAP response.
2012-07-16 08:30:50 +02:00
Aleksander Morgado
f4ad5c805e iface-modem-cdma: new steps to setup/cleanup unsolicited messages 2012-07-16 08:30:45 +02:00
Aleksander Morgado
209f4d4420 iface-modem-[3gpp|cdma]: remove contexts with timeouts when shutting down
Following the same logic as in commit 9ddcf92a, those contexts in the interface
which contain the setup of a timeout are cleared before removing the DBus
skeleton objects, so that we make sure they are not fired out once these have
been disposed.
2012-07-13 09:09:15 +02:00
Ben Chan
9ddcf92a18 iface-modem: fix crashes due to removed skeleton
expire_signal_quality() / mm_iface_modem_update_access_technologies()
may be called after the DBus object skeleton is removed in
mm_iface_modem_shutdown() and before their associated timeout source is
removed (in *_context_free) due to destruction of the modem object.

This patch fixes the issue by removing context objects before removing
the DBus skeleton in mm_iface_modem_shutdown().
2012-07-13 08:42:05 +02:00