aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2013-04-09infineon: custom 3GPP dialling logicaleksander/infineonAleksander Morgado
2013-04-09modem-helpers: new +CGPADDR parserAleksander Morgado
2013-04-09infineon: setup plugin skeletonAleksander Morgado
2013-04-08huawei: use a 3s timeout as after-sim-unlock stepAleksander Morgado
Huawei e220 may fail miserably (rebooting itself) if we issue commands just after having unlocked the PIN.
2013-04-08blacklist: move Arduino USB/Serial adapter to greylistDan Williams
It's a generic adapter, should be in the manual-probe-only greylist instead of the blacklist.
2013-04-08blacklist: ignore a few more Arduinos (rh #861620)Dan Williams
2013-04-06base-modem: don't assume primary AT port is availableAleksander Morgado
QMI modems may not have it.
2013-04-05serial-parser: detect 'NA' as a mobile equipment errorAleksander Morgado
Just treat 'NA' as MM_MOBILE_EQUIPMENT_ERROR_NOT_ALLOWED error. https://bugzilla.gnome.org/show_bug.cgi?id=697368
2013-04-05icera: create generic bearer when no net port availableAleksander Morgado
https://bugzilla.gnome.org/show_bug.cgi?id=697374
2013-04-05api,introspection: update 'Validity' property in the SMS interfaceAleksander Morgado
We don't want to support only 'relative' validity, so don't assume that the Validity property will always be a uint32 value. Instead, we define the Validity propery as '(uv)' tuple, where the first value (a MMSmsValidityType) specifies the type of validity, and the second value is a variant formatted accordingly to what the validity type specifies (e.g. a uint32 value if the type is MM_SMS_VALIDITY_TYPE_RELATIVE).
2013-04-05qcdm: add unsolicited signal level indication from Samsung Z810Dan Williams
2013-04-05iface-modem-simple: log about all parameters passed to Simple.Connect()Aleksander Morgado
2013-04-05mbm: plug memleaksAleksander Morgado
2013-04-05mbm: don't pass (null) as string when either user or password is emptyAleksander Morgado
E.g. instead of: (ttyACM1): --> 'AT*EIAAUW=2,1,"(null)","vodafone"<CR>' (ttyACM1): <-- '<CR><LF>OK<CR><LF>' Better pass: (ttyACM1): --> 'AT*EIAAUW=2,1,"","vodafone"<CR>' (ttyACM1): <-- '<CR><LF>OK<CR><LF>'
2013-04-05iface-modem: ensure we cancel the re-initialization idle if the modem goes awayAleksander Morgado
https://bugzilla.gnome.org/show_bug.cgi?id=697290
2013-04-05broadband-bearer: handle NULL and character escaping of APN valueBen Chan
2013-04-04port-probe: remove non-AT port hint, as it may come in ATI repliesAleksander Morgado
We remove "/SRC/AMSS" as a hint of non-AT port, as it really comes in ATI replies, see: [mm-at-serial-port.c:408] debug_log(): (ttyUSB6): <-- '<CR><LF>Manufacturer: Sierra Wireless, Incorporated<CR><LF>Model: USB 306<CR><LF>Revision: M3_0_10_1AP C:/WS/FW/M3_0_10_1AP/MDM8200/SRC/AMSS 2010/03/29 17:52:11<CR><LF>IMEI: xxxxxxxx<CR><LF>IMEI SV: 11<CR><LF>FSN: xxxxxxxxxx<CR><LF>3GPP Release 7<CR><LF>+GCAP: +CGSM,+DS,+ES<CR><LF><CR><LF><CR><LF>OK<CR><LF>' [mm-serial-parsers.c:188] mm_serial_parser_v1_parse(): Got response filtered in serial port: Not an AT response [mm-port-probe.c:148] mm_port_probe_set_result_at(): (tty/ttyUSB6) port is not AT-capable
2013-04-04sierra: implement PIN/PUK retry count loadingAleksander Morgado
Not all Sierra modems support it, but those which do reply like this: AT+CPINC=? OK AT+CPINC? +CPINC: 3,3,10,10
2013-04-04sierra: early detect non-AT portsAleksander Morgado
Detect the parser filter errors during our custom_init(), and set the port as not being AT if the error found.
2013-04-04port-probe: remove no longer needed filterAleksander Morgado
Remove the additional check for AT responses done *after* having parsed the response. This check only worked whenever the response string ended up matching one of the regular expressions in the parser, which of course wasn't always.
2013-04-04port-probe: add a new serial parser filter to detect non-AT stringsAleksander Morgado
We will check each string with our custom filter before even trying to parse them. A MM_SERIAL_ERROR_PARSE_FAILED error will be issued whenever the string doesn't match the filter.
2013-04-04serial-parsers: allow specifying a custom response filterAleksander Morgado
The serial parser will now allow specifying a custom user-provided filter, which is applied before even trying to match successful/error responses. This filter provides a very early barrier to detect strings that are clearly not going to match. E.g. this filter may be used during port probing to early detect non-AT ports.
2013-04-04port-probe: don't assume the NULL bytes will be at the beginning of the responseAleksander Morgado
Also report as non-AT responses if the NUL bytes are embedded within a stream of bytes which doesn't start with NUL. This e.g. applies to CnS ports from Sierra modems, which show streams like: ~\0\245y\0}^T1_0_4_0BT R372 CNSZXD00000061 2011/05/12 15:25:25\0\0\0\0\0\0\0\0\0 \0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0T1_0_4_0AP R372 CNSZXD00000061 2011/05 /12 15:25:25\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0 03\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0 \0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0~~ \0Tb\0T1_0_4_0AP R372 CNSZXD
2013-04-04sierra: too many timeout errors during custom init means non-AT portAleksander Morgado
Reduces probing time of the modem in ~10s.
2013-04-04serial,blacklist: fix file mode (0755 -> 0644)Ben Chan
2013-04-04mbm: ignore *ESTKSMS unsolicited messagesAleksander Morgado
https://bugzilla.gnome.org/show_bug.cgi?id=697280
2013-04-04sierra: 'data' may be NULL if the parent dialling failsAleksander Morgado
2013-04-04sierra: plug memleakAleksander Morgado
2013-04-04broadband-bearer: ensure we close the port even if we got cancelledAleksander Morgado
When there is an error in the connection attempt we need to close the dialling port ourselves. In the case where we got an error and we also got cancelled, we need to make sure that the port gets closed.
2013-04-04altair-lte: minor style changesAleksander Morgado
2013-04-04altair-lte: initial altair lte pluginori inbar
2013-04-03broadband-modem: remove incorrect debug logAleksander Morgado
2013-04-02broadband-modem: turn off CNMI <ds> reporting if modem doesn't support itDan Williams
MM doesn't yet parse the +CNMI=? response and dynamically figure out what indication settings are supported, so add another last-resort CNMI setting for the UMW190 which doesn't support any <ds> at all. And the commands shouldn't be cached, so fix that too.
2013-04-02qcdm: fix IM*I buffer sizes for GSM and WCDMA state info requestsDan Williams
Found by Enrico Murador.
2013-04-02pantech: skip WMC portsAleksander Morgado
WMC ports will return "ERROR" to all AT commands, except for "AT" itself. So just provide a custom AT probing logic, which uses "ATE0" instead, and assumes the port is not an AT port if an error is returned.
2013-04-02qcdm-serial-port: avoid playing with GByteArray internalsAleksander Morgado
Since glib 2.32, we can use g_byte_array_new_take() to build a new GByteArray from an own allocated buffer, so skip playing with the GByteArray internals.
2013-04-02sms-part: properly skip validity field when given in absolute or enhanced formatAleksander Morgado
We don't support absolute or enhanced format for validity, but we still need to properly skip those fields if given. According to GSM 03.40, they are both always 7 bytes, not just 1.
2013-04-02broadband-modem: update CMGL parsing logicAleksander Morgado
Pantech UMW190 modem uses a custom +CMGL response which includes only three fields before the actual PDU, e.g: +CMGL: <index>,<status>,<something>\r\n<PDU> instead of what we had before: +CMGL: <index>,<status>,<alpha>,<length>\r\n<PDU> The CMGL parsing logic is now updated to use a regex to match the reply, and also considering the UMW190 specific case. Actually, we end up reading only the two first fields (index and status) which are the ones we really need, so we skip the <length> and the <alpha> if given. Added also unit tests to cover all these known cases. Partially fixes https://bugzilla.gnome.org/show_bug.cgi?id=696723 (missing the actual PDU parsing fixes).
2013-04-02pantech: fully skip the SIM storage in the messaging interfaceAleksander Morgado
Seems that trying to use the SIM storage hangs a UMW190 modem, so just fully ignore it for now. https://bugzilla.gnome.org/show_bug.cgi?id=696724
2013-04-01mbm: fix udev rule tagging logicAleksander Morgado
2013-04-01serial-usb greylist: added new USB<->Serial adaptersAleksander Morgado
https://bugzilla.gnome.org/show_bug.cgi?id=643793
2013-04-01x22x: Fix problem in set allowed modeDavid Castellanos
NM attempts to set allowed and preferred mode during the connection process. The plugin x220x does not handle properly when NM request allowed mode to '2g, 3g' and the preferred mode to 'none'. This commit attempts to solve the problem described above. When this situation happens, establish the mode of the modem has 'ANY' (which seems the safest one) instead of just throwing an error. Signed-off-by: David Castellanos <dcastellanos@indra.es>
2013-04-01base-modem: don't assume all cdc-wdm ports are QMIAleksander Morgado
2013-04-01mbm: don't tag only tty ports, and also grab cdc-wdm portsAleksander Morgado
We also need to tag cdc-wdm ports, so that they get grabbed but ignored and not QMI-probed. https://bugzilla.gnome.org/show_bug.cgi?id=696701
2013-03-29mbm: wait for unlock reporting READY after PIN/PUK unlockAleksander Morgado
MBM modems will lie about the unlock status just after having sent a correct PIN or PUK. So, explicitly wait to get in READY state after having sent the PIN or PUK, before keeping on. https://bugzilla.gnome.org/show_bug.cgi?id=696702
2013-03-29broadband-modem-novatel: implement CDMA time API (bgo #696739)Dan Williams
Use AT$NWLTIME to get current time and UTC offset.
2013-03-29port-probe: don't reschedule next probing step when serial port buffer fullAleksander Morgado
When the serial port buffer gets full of non-AT garbage during port probing, we were re-scheduling the next probing step, which is completely wrong, as we then would be processing the same probing task twice. If we get a buffer full, just cancel the AT probing cancellable, which would cancel not only the possible AT probings, but also the custom init if there is any. Also, make sure that the custom_init() of the plugins out there don't return an error if the GCancellable is cancelled. Cancelling the GCancellable means we should just stop the custom_init(), and actually sending an error in custom_init() means that the port should be set as unsupported by the plugin, so completely different things. Should fix https://bugzilla.gnome.org/show_bug.cgi?id=696695
2013-03-28broadband-modem: plugins may disable parent's access tech loadingAleksander Morgado
2013-03-28serial: add support to optionally send line-feed at the end of AT commands.ori inbar
2013-03-28iface-modem-3gpp: handle access technology change in operator_loading stateori inbar
This patch fixes a problem of disregarding CEREG/CGREG/CREG reported access technology since we are in "registering" state - meaning we are loading operator name+code. now even in this transition state the ACT is updated.