aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2011-07-29api: add new LTE constant to the MM_ACCESS_TECHsAndrew Bird
The 10.4 version of TS27.007 extends the range of values possible from AT+COPS? The range of values are as follows: 3GPP TS 27.007 V10.4.0, +COPS <AcT>: integer type; access technology selected 0 GSM 1 GSM Compact 2 UTRAN 3 GSM w/EGPRS 4 UTRAN w/HSDPA 5 UTRAN w/HSUPA 6 UTRAN w/HSDPA and HSUPA 7 E-UTRAN All but the LTE (E-UTRAN) value can be represented in MM 0.5, this patch adds a new constant to correct that, until the MM API is redesigned later for 0.6. Signed-off-by: Andrew Bird <ajb@spheresystems.co.uk>
2011-07-27api: update proposed new SMS APIDan Williams
Finish most of the stuff here.
2011-07-25cdma: don't blow away generic EVDO reg state if no specific state is availableDan Williams
Generic code (like the QCDM CM/HDR checks) would determine the EVDO registration state, which would then get blown away by the device-specific registration state query method. Modems that have a more specific check were fine, but generic devices that don't have more specific reg state checks can simply rely on the generic checks done earlier and don't need to update the EVDO state from real_query_registration_state().
2011-07-25option/hso: check generic access tech first, then specific techDan Williams
During the explicit access technology check, the plugin would request specific 2G (OCTI) and 3G (OWCTI) technologies explicitly. Some devices (like Nozomi) don't support the AT_OWCTI command, which leaves us with only AT_OSSYS for determining whether the device is registered with the 3G network or the 2G network. So like the unsolicited mode change handling code, when requesting access technology explicitly, ask for generic 2G/3G tech first, and then get the specific tech. If the device doesn't support explicit 3G tech then at least we have the generic 3G tech from OSSYS to use.
2011-07-25option: plugin is supposed to support Nozomi devices tooDan Williams
The Nozomi cards were early CardBus devices that used a direct PCI interface (instead of the more usual PCI<->USB controller) and the 'nozomi' kernel driver. They use the same command set as most other early Option NV modems. Nozomi was always supposed to be driven by the option plugin, but apparently that got broken when adding some of the driver/vendor checks.
2011-07-25core: allow getting the result from the MMCallbackInfoDan Williams
2011-07-25sms: calculate user-data bit padding correctlyNathan Williams
Fourth and final in a series. This fixes an off-by-one (septet) error in the calculation of the amount of data to skip in the presence of a user data header, and adds the test case from the wild that triggered it.
2011-07-25sms: recognize more text encodings from GSM 03.38Nathan Williams
Third in a series. This fixes the bug detected by the dcsf1 test in the just-added unit tests, by more thoroughly parsing the TP-DCS field.
2011-07-25sms: add unit testsNathan Williams
Second in a series. Builds on the previous by actually unit-testing the sms_parse_pdu() function. Note that the dcf1 test does not pass as the code is currently written.
2011-07-25sms: split SMS parsing out into a separate fileNathan Williams
In preparation for adding tests. Change-Id: If1ebd0fdd6e7470c21538042ab1735357649155c
2011-07-25gsm: don't clear operator name or number when at least one of PS or CS is ↵Dan Williams
registered The operator name/number isn't really tied to CS or PS registration, since we retrieve it using AT+COPS. But when one of CS or PS became unregistered the operator name and number would get cleared out. We only want to clear it out when *both* CS and PS are unregistered. Fixes an issue with the location API where location would not be reported when one of CS or PS became unregistered, because the location bits want an operator name before they return the location.
2011-07-24tests: fix access tech reporting in scan.pyDan Williams
2011-07-21zte: skip hex encoding (bgo #652682)Guido Günther
2011-07-21huawei: implement ussd encoding/decodingGuido Günther
Huawei wants the USSD as packed GSM.
2011-07-21ussd: Add mm_modem_gsm_ussd_{de,en}code to the MMModemGsmUssd interfaceGuido Günther
since some some modems need different quirks to encode/decode USSD messages.
2011-07-21test: improve ussd.py help messageGuido Günther
2011-07-21trivial: update .gitignoreGuido Günther
2011-07-21api: add missing in-progress proposed SMS APIDan Williams
2011-07-19cdma: set Rm interface protocol if required (bgo #641661)Dan Williams
Some providers (CDMA Ukraine) apparently require a specific Rm interface protocol, so add some Simple Connect dict settings for that and use them when dialing. Obviously requires the connection manager to also have support for sending the right bits down to MM.
2011-07-18core: add another CnS string to the immediate ignore listDan Williams
Newer Sierra devices have this (ie 306); it's the CnS port so ignore it immediately.
2011-07-07Revert "cinterion: bail earlier if the plugin doesn't support the port"Dan Williams
This reverts commit 1e1bfbf1d808e557441afdae44447af457dae7ff. Aleksander says this might break RS232<->USB converter connected Cinterion modems, so we'll need to handle this issue another way.
2011-07-06cinterion: bail earlier if the plugin doesn't support the portDan Williams
Caused a crash with the Sierra plugin due to an assertion failure; the Cinterion plugin shouldn't claim to possibly support ports it knows it won't support. In this case, it claimed to support Sierra modems, so it would try to run probing after Sierra had done so. Ideally this should work, but for now just make sure the Cinterion plugin doesn't claim to support these ports when it knows it doesn't.
2011-07-06nokia: N900 doesn't really need additional inter-character timeDan Williams
See 46d757faa768db7d7bb23d51cc2af3196f7a7e30: gsm: send init command twice to make the N900 happy (rh #583691) (lp:765516) for what I think is the real workaround for this bug.
2011-07-06gsm: send init command twice to make the N900 happy (rh #583691) (lp:765516)Dan Williams
The N900 has some odd serial characteristics in that it appears to send pieces of the commands back for whatever reason, until you've sent a few commands down to it. Almost like it's training on whatever you send and needs a bit of input to figure out the characteristics. Whatever. Just send the init command twice instead of failing when the N900 barfs the first time.
2011-07-06core: update some serial port settingsDan Williams
1) use cfsetispeed/cfsetospeed like the TTY manpage suggests 2) ignore parity/framing errors since we're not using parity anyway 3) double-check that all our TTY settings were successfully set
2011-07-06cinterion, wavecom: update copyright infoAleksander Morgado
2011-07-05gobi: support access technology reportingDan Williams
Obviously only works while disconnected since the Gobi devices only provide one AT-compatible tty.
2011-06-30gsm: set SMS storage location before enabling notificationsThomas Grenman
Fixes a firmware hang on Option GlobeTrotter Express (GE0201 with firmware 1.12.1Hd (Date: Feb 22 2007, Time: 09:20:28)) and makes sense in general too.
2011-06-30Merge remote-tracking branch 'lanedo/power-up-check-needed'Aleksander Morgado
2011-06-30samsung: add product ID for the Y3400 module.Eric Shienbrood
The Y3400 is functionally nearly identical to the Y3300.
2011-06-30Add a DBus interface for setting the log level.Nathan Williams
Lifted almost entirely from similar code in NetworkManager. BUG=chromium-os:15197 TEST='dbus-send --print-reply --system --dest=org.freedesktop.ModemManager /org/freedesktop/ModemManager org.freedesktop.ModemManager.SetLogging string:DEBUG' Also try valid log levels 'ERR', 'WARN', 'INFO', and an invalid log level, such as 'ABCDE'. Change-Id: I2bddcd0319f4966dd293b119f68e7cc1697949b7 Reviewed-on: http://gerrit.chromium.org/gerrit/3134 Tested-by: Nathan J. Williams <njw@chromium.org> Reviewed-by: Eric Shienbrood <ers@chromium.org>
2011-06-30gsm: handle case of entirely empty SPN correctlyNathan Williams
BUG=none TEST=Insert a SIM with a present but empty (all 0xFF) SPN and check the system log for a (lack of) assertion errors from mm_charset_gsm_unpacked_to_utf8(). Change-Id: I1250494b9757c9bfdce56402a4471c598f41223f Reviewed-on: http://gerrit.chromium.org/gerrit/3139 Reviewed-by: Eric Shienbrood <ers@chromium.org> Tested-by: Nathan J. Williams <njw@chromium.org>
2011-06-22cinterion: always try to use RTS/CTS flow controlAleksander Morgado
Otherwise, power-up after going to standby will not work properly
2011-06-22serial: new property to enable RTS/CTS flow controlAleksander Morgado
2011-06-22cinterion: enable power-off command to go to sleep/standby modeAleksander Morgado
AT+CFUN=4 will be used when available to go to standby mode. If not supported, (as in EGS5) AT+CFUN=7 will be used instead, which enables a CYCLIC SLEEP mode. Flow control setup was updated to RCS/CTS so that waking up from sleep mode works properly.
2011-06-22sierra: do not send power-up command if not neededAleksander Morgado
2011-06-22wavecom: enable power-off command to go to sleep/standby modeAleksander Morgado
AT+CFUN=4 will be used to go to standby mode.
2011-06-22wavecom: try to power-up without rebootingAleksander Morgado
Using AT+CFUN=1,0 so that we request to avoid resetting (<rst>=0). Works properly when powering up after having put the modem in standby mode with AT+CFUN=4. Note that the power-up command will only be sent if the check to see if power-up is needed requests it.
2011-06-22wavecom: do not send power-up command if not neededAleksander Morgado
2011-06-22gsm: allow plugins to check if they need to issue the power-up commandAleksander Morgado
Some modems only like the power-up command if not already in full functionality mode. If the power-up is sent while already in full functionality mode, they get rebooted and reseted. With this changes, plugins can check whether they need the power-up and ask the generic gsm code base to skip the command or not. By default, power-up command (if any given) is never skipped.
2011-06-17doc: add notes about Pantech UML290 and the WMC protocolDan Williams
WMC is a proprietary protocol observed on various Verizon devices and implemented by the UML290.
2011-06-15ussd: fix reception, network notifications, and network requestsDan Williams
Because the code was sending the USSD request with a "notify me via unsolicited result code" tag, the response could come from any port, and in was coming from other ports on various devices. But the code expected the response on the main port, thus it got lost. So turn the USSD response processing into an unsolicited command handler instead, which allows us to process the response no matter where it comes from. This patch also enables network-initiated USSD notifications and requests since that's easy to add once the first thing here is done.
2011-06-15serial: warn when open/close take longer than 7 secondsDan Williams
Due to kernel bugs and such.
2011-06-14build: place together samsung plugin compilation optionsAleksander Morgado
2011-06-14cinterion: check probed caps from supports taskAleksander Morgado
2011-06-13icera: report connected access technology when connectedEric Shienbrood
The NWSTATE field reports both available access technology and the actual access technology in-use when a PS connection is active, so report the actual access tech when it's available.
2011-06-09core: trivial whitespace cleanupDan Williams
Tabs -> spaces
2011-06-09core: handle udev 'change' eventsNathan Williams
That's what the udev replay gives us these days (as of udev-152).
2011-06-09icera: request specific network error codes on connect errorsEric Shienbrood
For connection failures, get additional error detail. Currently, the only error codes that are mapped are the 3GPP TS 24.008 codes for "Unknown or missing access point name" and "Requested service option not subscribed" (which is sometimes returned for an invalid APN). (random fixes and cleanups by dcbw)
2011-06-09build: ensure Samsung plugin includes common Icera codeEric Shienbrood
Otherwise make can't find build-time dependencies.