Commit Graph

5790 Commits

Author SHA1 Message Date
Aleksander Morgado
e5b4b4d0e5 plugin-manager: use dispose() as we're holding plugin objects 2012-10-30 15:35:58 +01:00
Aleksander Morgado
49c19bf83e plugin: avoid unneeded vendor/product AT probing if already passed USB ID filter
Don't require vendor/product string probing if the plugin already had
vendor/product ID filters and we actually passed those.
2012-10-30 15:35:58 +01:00
Aleksander Morgado
3f255b628a plugin-manager,plugin: improve logging
Logging which are the reasons for a plugin to filter a given port really help
when trying to debug user issues. Some other general logging improvements also
done.
2012-10-30 15:35:58 +01:00
Aleksander Morgado
28114f66d5 iface-modem,broadband-modem: update 'enabling->enabled transition logic
It is not the Modem interface the one notifying about the 'enabling->enabled'
transition, it's the BroadbandModem directly doing it, covering all the enabling
sequences of all the interfaces.
2012-10-30 15:35:34 +01:00
Aleksander Morgado
d09d02442f iface-modem,broadband-modem: update 'disabling->disabled' transition logic
It is not the Modem interface the one notifying about the 'disabling->disabled'
transition, it's the BroadbandModem directly doing it, covering all the
disabling sequences of all the interfaces.
2012-10-30 15:35:33 +01:00
Aleksander Morgado
a12d1e36b0 iface-modem: when transitioning to ENABLED check registration-specific states 2012-10-30 15:35:33 +01:00
Aleksander Morgado
f667898eca iface-modem: ignore registration-related state changes if enabling or disabling 2012-10-30 15:35:33 +01:00
Aleksander Morgado
db80fd2550 iface-modem: ignore bearer related state changes if disabling or enabling 2012-10-30 15:35:33 +01:00
Aleksander Morgado
1642863037 iface-modem-simple: avoid intermediate states
If the modem is currently disabling, we need to wait to get fully disabled
before starting with the new connection sequence.

If the modem is currently disconnecting, we need to wait to get fully
disconnected before starting with the new connection sequence.
2012-10-30 15:35:33 +01:00
Aleksander Morgado
4fc3f52791 iface-modem: new helper method to wait until a final state is reached 2012-10-30 15:35:33 +01:00
Aleksander Morgado
96986117b3 option,hso: don't reset connection if cancelled, wait to get connected before
If we are requested to cancel the connection, we first need to wait for the
connection attempt to finish before issuing the disconnect command, as otherwise
the modem just returns an error saying that it cannot perform the operation and
at the end we end up with the modem connected but ModemManager thinking that it
isn't.
2012-10-30 15:35:33 +01:00
Aleksander Morgado
6297c4b4c8 icera: don't reset connection if cancelled, wait to get connected before
If we are requested to cancel the connection, we first need to wait for the
connection attempt to finish before issuing the disconnect command, as otherwise
the modem just returns an error saying that it cannot perform the operation and
at the end we end up with the modem connected but ModemManager thinking that it
isn't.

Tries to fix https://bugzilla.gnome.org/show_bug.cgi?id=685578
2012-10-30 15:35:33 +01:00
Aleksander Morgado
a772b28ad6 broadband-modem-qmi: only give gsm/wcdma acquisition order if both 2G & 3G given 2012-10-25 16:50:08 +02:00
Aleksander Morgado
79af94fdbd broadband-modem-qmi: don't treat no-effect errors as failure when setting SSP 2012-10-25 16:49:16 +02:00
Aleksander Morgado
e2d20974c1 iface-modem: don't re-set interface skeleton after PIN unlock
Before the change, the client application loses all new property change
notifications in the interface object:

$ sudo mmcli -m 0 -w
	/org/freedesktop/ModemManager1/Modem/0: Initial state, 'locked'
	/org/freedesktop/ModemManager1/Modem/0: State changed, 'locked' --> 'initializing' (Reason: None or unknown)

After the change, it doesn't:

$ sudo mmcli -m 0 -w
	/org/freedesktop/ModemManager1/Modem/0: Initial state, 'locked'
	/org/freedesktop/ModemManager1/Modem/0: State changed, 'locked' --> 'initializing' (Reason: None or unknown)
	/org/freedesktop/ModemManager1/Modem/0: State changed, 'initializing' --> 'disabled' (Reason: None or unknown)
	/org/freedesktop/ModemManager1/Modem/0: State changed, 'disabled' --> 'enabling' (Reason: User request)
	/org/freedesktop/ModemManager1/Modem/0: State changed, 'enabling' --> 'registered' (Reason: User request)
	/org/freedesktop/ModemManager1/Modem/0: State changed, 'registered' --> 'disabling' (Reason: User request)
	/org/freedesktop/ModemManager1/Modem/0: State changed, 'disabling' --> 'disabled' (Reason: User request)
2012-10-25 16:19:51 +02:00
Aleksander Morgado
7fd09123f8 broadband-bearer: log all found PDP contexts before looking for a match 2012-10-25 16:19:34 +02:00
Aleksander Morgado
675d8aeeea tests: add PDP context reply parser test for Samsung/Icera replies 2012-10-25 16:19:28 +02:00
Aleksander Morgado
e499d32ef1 core: add info logs to show main state machine start/stop points 2012-10-25 16:19:24 +02:00
Aleksander Morgado
6d4a4d647c broadband-modem: disable echo in secondary port when enabling 2012-10-25 16:19:15 +02:00
Aleksander Morgado
d3ddfd583c broadband-modem: make sure the primary port is used for the modem init sequence 2012-10-25 16:19:11 +02:00
Martyn Russell
89723c7ef2 docs,ModemManager: include the missing manpage
(aleksander) I messed up the integration of commit bc49794848, this should fix
it.
2012-10-24 10:44:58 +02:00
Aleksander Morgado
96c6db9926 man,mmcli: add additional commonly used examples 2012-10-23 19:47:55 +02:00
Martyn Russell
b5040fa033 docs,mmcli: Add man page for mmcli(8) 2012-10-23 19:47:55 +02:00
Martyn Russell
bc49794848 docs,ModemManager: Don't use .in file for manpage, no need 2012-10-23 19:47:55 +02:00
Dan Williams
90e67404d6 bearer-qmi: get and log current IP settings when connecting the bearer
All addresses are given as machine byte order, and thus must be converted
to network byte order (BE) before passing to inet_ntop().
2012-10-23 18:20:24 +02:00
Aleksander Morgado
6788f809ea cli,sms: add missing parameter documentation in `--store-in-storage' 2012-10-23 16:31:51 +02:00
Aleksander Morgado
29e3c0e742 bearer: fix connection allowance rules in 3GPP+LTE modems
Only force disconnection of the bearer if not registered in any network or if
registered in both 3GPP and CDMA roaming networks.
2012-10-22 19:09:08 +02:00
Aleksander Morgado
82f91f3217 iface-modem: when playing with bands is not supported, use 'unknown' 2012-10-22 19:06:49 +02:00
Aleksander Morgado
219aff47e0 iface-modem: try to avoid showing 'any' as current bands
Just expose the list of supported bands when the current bands is set to 'any'.
2012-10-22 19:06:49 +02:00
Aleksander Morgado
b317996a8e iface-modem: always ensure that current bands is a subset of supported bands
In QMI modems the logic behind supported and current bands is completely
separated in different services (DMS vs NAS). Actually, the list reported by NAS
as current band preferences seems to include more values than the ones reported
by DMS as supported bands (e.g. CDMA bands are reported even if the firmware
image is GSM/HSPA only).

So, just clean up the list of current preferred bands so that no more than those
given as supported is used.
2012-10-22 19:06:49 +02:00
Aleksander Morgado
8e4d93c04e nokia,icera: setup custom AT probing as in the generic Nokia plugin 2012-10-22 14:03:43 +02:00
Aleksander Morgado
c900aa7c0b nokia: run vendor string probing, in order to grab Bluetooth DUN devices 2012-10-22 13:08:31 +02:00
Aleksander Morgado
2559dc5baf cli: don't abort when looking for bearers in failed modems 2012-10-22 12:46:34 +02:00
Aleksander Morgado
5978258d85 base-modem-at: handle NULL responses from the serial parsing in sequences 2012-10-22 12:33:19 +02:00
Aleksander Morgado
c5f3198a9f device: only export modem if it is available 2012-10-22 12:27:55 +02:00
Ben Chan
10a0ed12c4 novatel-lte: retry $NWQMISTATUS upon an unknown error during connecting
The $NWQMISTATUS command sometimes replies an ERROR shortly after
calling the $NWQMICONNECT command, but then replies the proper QMI
status if we retry it. This behavior is observed on an E362 modem with
4.08 firmware.

    (ttyUSB0): --> 'AT$NWQMICONNECT=,,,,,,"",,,"",""<CR>'
    (ttyUSB0): <-- '<CR><LF>OK<CR><LF>'
    (ttyUSB0): --> 'AT$NWQMISTATUS<CR>'
    (ttyUSB0): <-- '<CR><LF>ERROR<CR><LF>'
    Got failure code 100: Unknown error
    QMI connection status failed: Unknown error
2012-10-22 10:46:57 +02:00
Ben Chan
8362171973 novatel-lte: handle $NWQMISTATUS responses for firmware 4.08
In firmware 4.08, the $NWQMISTATUS command returns different values for
QMI state to indicate the current connection state. This patch modifies
the code to handle $NWQMISTATUS responses in firmware 1.41 and 4.08.
2012-10-22 10:46:57 +02:00
Dan Williams
7f105dc386 simple: don't try to enable the "unknown" band
If the band isn't actually given, don't try to enable it.
2012-10-19 19:32:28 -05:00
Aleksander Morgado
79fdddccbf api,modem: new 'PrimaryPort' property
We do need to specify which is the primary port being used for controlling the
modem. This allows us to match the device with an already existing bluetooth
device in NetworkManager.
2012-10-19 00:58:36 +02:00
Aleksander Morgado
e123c7d5b4 blacklist: skip probing SheevaPlug serial ports
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=686217
2012-10-17 15:22:29 +02:00
Ben Chan
64a11ceec7 icera: parse HSPA+ access technology in %NWSTATE response 2012-10-16 11:39:39 +02:00
Aleksander Morgado
6223f61803 Revert "icera: improve parsing of access technologies in %NWSTATE response"
This reverts commit e2f3034f6e.

The report of current access technologies is supposed to give which is the
*current* access technology being active. We allow reporting more than one for
the cases where several access technologies are given simultaneously (e.g.
cdma1x + evdo + lte). For example, we shouldn't be giving 4 different
technologies like "umts, hsdpa, hsupa, hspa" when the modem reports
"3G-HSDPA-HSUPA". Just giving HSPA in that case is enough and more accurate.
2012-10-16 11:34:36 +02:00
Ben Chan
e2f3034f6e icera: improve parsing of access technologies in %NWSTATE response 2012-10-16 09:40:59 +02:00
Aleksander Morgado
e39b3a42ed TODO: remove tasks which were already done 2012-10-15 13:35:30 +02:00
Aleksander Morgado
ae26762d11 cli: avoid segfault when revision info is not given 2012-10-15 13:35:15 +02:00
Aleksander Morgado
4f55511680 pantech: wait up to 5s after SIM unlock before sending new commands
Or the modem will get stuck completely.
2012-10-15 13:34:51 +02:00
Aleksander Morgado
5c8ef351bb pantech: create a Pantech-specific SIM object
We'll just skip most SIM info retrieval commands based on AT+CRSM, as they seem
to be unsupported.
2012-10-15 13:34:16 +02:00
Aleksander Morgado
e6930921af broadband-modem-qmi: map 'any' to all supported bands when setting current bands 2012-10-15 12:41:33 +02:00
Aleksander Morgado
b0eca9c09c modem-helpers-qmi: add missing GSM primary 900 and WCDMA PCS 1900 band mappings 2012-10-15 12:41:33 +02:00
Aleksander Morgado
3025893c94 broadband-modem-qmi: set current bands using NAS System Selection Preference 2012-10-15 12:41:33 +02:00