aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2012-10-22iface-modem: always ensure that current bands is a subset of supported bandsAleksander Morgado
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-22nokia,icera: setup custom AT probing as in the generic Nokia pluginAleksander Morgado
2012-10-22nokia: run vendor string probing, in order to grab Bluetooth DUN devicesAleksander Morgado
2012-10-22cli: don't abort when looking for bearers in failed modemsAleksander Morgado
2012-10-22base-modem-at: handle NULL responses from the serial parsing in sequencesAleksander Morgado
2012-10-22device: only export modem if it is availableAleksander Morgado
2012-10-22novatel-lte: retry $NWQMISTATUS upon an unknown error during connectingBen Chan
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-22novatel-lte: handle $NWQMISTATUS responses for firmware 4.08Ben Chan
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-19simple: don't try to enable the "unknown" bandDan Williams
If the band isn't actually given, don't try to enable it.
2012-10-19api,modem: new 'PrimaryPort' propertyAleksander Morgado
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-17blacklist: skip probing SheevaPlug serial portsAleksander Morgado
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=686217
2012-10-16icera: parse HSPA+ access technology in %NWSTATE responseBen Chan
2012-10-16Revert "icera: improve parsing of access technologies in %NWSTATE response"Aleksander Morgado
This reverts commit e2f3034f6e2c79062c095be0bc4278907b32ec8f. 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-16icera: improve parsing of access technologies in %NWSTATE responseBen Chan
2012-10-15TODO: remove tasks which were already doneAleksander Morgado
2012-10-15cli: avoid segfault when revision info is not givenAleksander Morgado
2012-10-15pantech: wait up to 5s after SIM unlock before sending new commandsAleksander Morgado
Or the modem will get stuck completely.
2012-10-15pantech: create a Pantech-specific SIM objectAleksander Morgado
We'll just skip most SIM info retrieval commands based on AT+CRSM, as they seem to be unsupported.
2012-10-15broadband-modem-qmi: map 'any' to all supported bands when setting current bandsAleksander Morgado
2012-10-15modem-helpers-qmi: add missing GSM primary 900 and WCDMA PCS 1900 band mappingsAleksander Morgado
2012-10-15broadband-modem-qmi: set current bands using NAS System Selection PreferenceAleksander Morgado
2012-10-15modem-helpers-qmi: new helper to load NAS band preferences from bands arrayAleksander Morgado
2012-10-15broadband-modem-qmi: load current bands using NAS System Selection PreferenceAleksander Morgado
2012-10-15modem-helpers-qmi: new helper to load bands array from NAS band preferencesAleksander Morgado
2012-10-14Add udev rules for HP (Ericsson) hs2350 Mobile Broadband ModuleDavid Härdeman
This WWAN module came installed in my new HP EliteBook 8570p Laptop. The patch is generated against the master branch but the same udev rule should be useful in the 0.5 and 0.6 branches as well. Signed-off-by: David Härdeman <david@hardeman.nu>
2012-10-11iface-modem: plug memleakAleksander Morgado
2012-10-11iface-modem-simple: plug memleaksAleksander Morgado
2012-10-11core: make sure objects retrieved with g_object_get() are valid in the ifacesAleksander Morgado
The interfaces usually retrieve objects (e.g. skeletons) from the Modem object using g_object_get(), but we didn't make sure that these objects were actually valid before using them. This should clean up errors happening when the modem gets unplugged and still some actions are ongoing. Should fix https://bugzilla.gnome.org/show_bug.cgi?id=685933
2012-10-11broadband-modem-qmi: don't check PIN lock in CDMA-only modemsAleksander Morgado
2012-10-11core,qmi: don't assume QMI port is always availableAleksander Morgado
When the modem gets unplugged all ports disappear from the modem, so don't assume the port is always given. E.g. if the unplug happens in the middle of the initialization sequence we may end up with nasty segfaults: Crash reason: SIGSEGV Crash address: 0x0 Thread 0 (crashed) 0 ModemManager!mm_qmi_port_peek_client [mm-qmi-port.c : 50 + 0x0] rbx = 0x00007fbb5c1d8010 r12 = 0x0000000000000003 r13 = 0x00007fbb5c1f9880 r14 = 0x00007fbb59a30980 r15 = 0x00007fbb5c187a60 rip = 0x00007fbb5a1a54c0 rsp = 0x00007fffc6c0f628 rbp = 0x00007fffc6c0f650 Found by: given as instruction pointer in context 1 ModemManager!peek_qmi_client [mm-broadband-modem-qmi.c : 109 + 0x24] rbx = 0x00007fbb5c1d8010 r12 = 0x0000000000000003 r13 = 0x00007fbb5c1f9880 r14 = 0x00007fbb59a30980 r15 = 0x00007fbb5c187a60 rip = 0x00007fbb5a193851 rsp = 0x00007fffc6c0f630 rbp = 0x00007fffc6c0f650 Found by: call frame info 2 ModemManager!ensure_qmi_client [mm-broadband-modem-qmi.c : 132 + 0x4] rbx = 0x00007fbb5c1d8010 r12 = 0x00007fbb5a165140 r13 = 0x00007fbb5c1f9880 r14 = 0x00007fbb59a30980 r15 = 0x00007fbb5c187a60 rip = 0x00007fbb5a1938e4 rsp = 0x00007fffc6c0f650 rbp = 0x00007fffc6c0f690 Found by: call frame info ... Reported by: Ben Chan <benchan@chromium.org>
2012-10-10bearer-qmi: update timeout when starting network to 45sAleksander Morgado
It really may get worse than 10s, specially if the modem changes access technologies after getting registered.
2012-10-10libmm-glib: allow 'none' authentication with more valuesAleksander Morgado
Specifying 'none' is really not exclusive. We may want to say that the modem can either authenticate with a given protocol, or otherwise just try without authentication. The reality is that 'none' itself is usually always given in the connection settings.
2012-10-10bearer-qmi: fix authentication logicAleksander Morgado
2012-10-10build: add missing includes in polkit auth providerAleksander Morgado
2012-10-09via: new 'Via CBP7' pluginAleksander Morgado
This is the port to git master of the following commit: commit ff8c60641aa2ea41080c15f81f633b3f78e07bf8 Author: Dan Williams <dcbw@redhat.com> Date: Mon Sep 10 17:12:38 2012 -0500 via: new plugin for CBP7-based CDMA and EVDO devices (bgo #683525) The Via baseband is used in a number of CDMA/EVDO devices, from ChinaTelecom USB sticks, to the Fusion Wireless/UBlox 2770p, to various Motorola Android phones.
2012-10-09broadband-modem-qmi: don't require a PDS client to disable 3GPP locationAleksander Morgado
2012-10-09core: second request to terminate does a hard exit()Aleksander Morgado
2012-10-09base-modem: new fallback when matching QMI vs data portsAleksander Morgado
If no matching found, but there is only one QMI port and only one data port, assume that is already a valid match.
2012-10-09log: enable QMI traces when showing debug logsAleksander Morgado
Use the new `qmi_utils_set_traces_enabled()' to specify that we want QMI traces when running with DEBUG logs. Sync with libqmi: commit 35dcb4bb6ed2755d968cf97d69faff9ed5f6871f Author: Aleksander Morgado <aleksander@lanedo.com> Date: Tue Oct 9 13:44:16 2012 +0200 libqmi-glib: message traces compiled always Message traces have been very useful when debugging issues in the protocol, and we should avoid requiring a full recompilation in order to get them enabled. Instead, we provide two new API methods, `qmi_utils_(get|set)_traces_enabled()', which allow specifying whether traces should be dumped with g_debug() or not.
2012-10-09bearer-qmi: use user-specified allowed authentication methodsAleksander Morgado
If none of the specified methods is supported, an error is returned.
2012-10-08libmm-glib,build: remove unneeded ruleAleksander Morgado
2012-10-08base-modem: cleanly close the QMI port to get the CIDs releasedAleksander Morgado
If we end up allocating too many CIDs without releasing them new allocations will fail with client-ids-exhausted errors. This usually happens specially when debugging/developing as you're all the time Ctrl+C-ing the daemon without rebooting the system.
2012-10-08broadband-modem-qmi: process CDMA 1x & EV-DO roaming flagsAleksander Morgado
2012-10-08broadband-modem: cancellable may not be given during disable()Aleksander Morgado
If the modem is currently being disposed, we may not get a proper GCancellable when disabling, so try to handle that case in order to avoid warnings like: GLib-GObject-CRITICAL **: g_object_ref: assertion `G_IS_OBJECT (object)' failed #0 0x00007ffff7ab1ba0 in g_log () from /usr/lib64/libglib-2.0.so.0 #1 0x00007ffff7b99784 in g_object_ref () from /usr/lib64/libgobject-2.0.so.0 #2 0x0000000000456c05 in disable (self=0x50d3f0, cancellable=0x0, callback=<value optimized out>, user_data=<value optimized out>) at mm-broadband-modem.c:7052 #3 0x0000000000431e69 in handle_enable_auth_ready (self=0x50d3f0, res=<value optimized out>, ctx=0xa41200) at mm-iface-modem.c:1216 #4 0x00007ffff7e7f447 in g_simple_async_result_complete () from /usr/lib64/libgio-2.0.so.0 #5 0x0000000000427bc1 in authorize_ready (authp=<value optimized out>, res=<value optimized out>, simple=0x51d810) at mm-base-modem.c:1015 #6 0x00007ffff7e7f447 in g_simple_async_result_complete () from /usr/lib64/libgio-2.0.so.0 #7 0x00007ffff7e7f549 in ?? () from /usr/lib64/libgio-2.0.so.0 #8 0x00007ffff7aaa5c3 in g_main_context_dispatch () from /usr/lib64/libglib-2.0.so.0 #9 0x00007ffff7aaa940 in ?? () from /usr/lib64/libglib-2.0.so.0 #10 0x00007ffff7aaad7a in g_main_loop_run () from /usr/lib64/libglib-2.0.so.0 #11 0x0000000000417ef2 in main (argc=<value optimized out>, argv=<value optimized out>) at main.c:150 GLib-GObject-CRITICAL **: g_object_unref: assertion `G_IS_OBJECT (object)' failed #0 0x00007ffff7ab1ba0 in g_log () from /usr/lib64/libglib-2.0.so.0 #1 0x000000000044af26 in disabling_context_complete_and_free (ctx=0xa408a0) at mm-broadband-modem.c:6788 #2 0x0000000000431e69 in handle_enable_auth_ready (self=0x50d3f0, res=<value optimized out>, ctx=0xa41200) at mm-iface-modem.c:1216 #3 0x00007ffff7e7f447 in g_simple_async_result_complete () from /usr/lib64/libgio-2.0.so.0 #4 0x0000000000427bc1 in authorize_ready (authp=<value optimized out>, res=<value optimized out>, simple=0x51d810) at mm-base-modem.c:1015 #5 0x00007ffff7e7f447 in g_simple_async_result_complete () from /usr/lib64/libgio-2.0.so.0 #6 0x00007ffff7e7f549 in ?? () from /usr/lib64/libgio-2.0.so.0 #7 0x00007ffff7aaa5c3 in g_main_context_dispatch () from /usr/lib64/libglib-2.0.so.0 #8 0x00007ffff7aaa940 in ?? () from /usr/lib64/libglib-2.0.so.0 #9 0x00007ffff7aaad7a in g_main_loop_run () from /usr/lib64/libglib-2.0.so.0 #10 0x0000000000417ef2 in main (argc=<value optimized out>, argv=<value optimized out>) at main.c:150 Reported by: Ben Chan <benchan@chromium.org> Partially fixes: https://bugzilla.gnome.org/show_bug.cgi?id=684693
2012-10-08core: log successful shutdownAleksander Morgado
2012-10-08core: don't wait forever to get all modems disabled and removedAleksander Morgado
Just in case, put a maximum time to wait for all modems to get disabled and removed, as we don't want to wait forever.
2012-10-08broadband-modem: skeletons may already be disposed when disabling the modemAleksander Morgado
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=684694 Reported by: Ben Chan <benchan@chromium.org>
2012-10-07hso: use user-specified allowed authentication methodsAleksander Morgado
If none of the specified methods is supported, an error is returned. Also quote user and password using `mm_at_serial_port_quote_string()'.
2012-10-07sierra: use user-specified allowed authentication methodsAleksander Morgado
If none of the specified methods is supported, an error is returned. Also quote user and password using `mm_at_serial_port_quote_string()'.
2012-10-07icera: use user-specified allowed authentication methodsAleksander Morgado
If none of the specified methods is supported, an error is returned.