aboutsummaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)Author
2010-02-21serial: allow file descriptor configuration to be handled by subclassesDan Williams
2010-02-20serial: refactor MMSerialPort into a base class and an AT-capable serial portDan Williams
For QCDM devices we want most of what MMSerialPort does, but not the AT command handling stuff since the commands and responses aren't AT commands nor are they even strings. So convert everything that MMSerialPort does into a GByteArray, and let MMAtSerialPort handle the conversion to strings when necessary.
2010-02-20core: fix memory leak on startupDan Williams
2010-02-09gsm: fix initial PIN checking for devices that echo by defaultDan Williams
If the modem echoed commands by default (since we may not have initialized the modem yet), the echoed command would confuse the PIN check reply parser.
2010-02-09gsm: try initial PIN check a few times in case SIM is busyDan Williams
2010-02-08test: add SE K600i COPS response testcaseDan Williams
2010-02-02core: ignore VTsMartin Pitt
Even just walking sysfs for driver and parent devices takes time for ports we know we'll never use, so take a short-cut and save some startup time. This reduces the startup overhead to some 15%.
2010-01-31gsm: update UnlockRequired status on PIN/PUK entry resultDan Williams
2010-01-31serial: handle string CME error codes tooDan Williams
Some devices won't get to the initialization stage where we send CMEE=1 (for numeric error codes) before they return some errors, so handle the string representation of CME error codes too.
2010-01-31errors: rework error conversionDan Williams
Use the same error structure for parsing numeric and string-based errors.
2010-01-31serial: add mm_serial_port_is_open()Dan Williams
2010-01-31core: log when unlock state changesDan Williams
2010-01-31core: whitespace fixupDan Williams
2010-01-31core: check modem PIN state before exporting it (bgo #604551)Norbert Frese
And set UnlockRequired accordingly. Large cleanups and rework by dcbw.
2010-01-31core: add an UnlockRequired property that provides lock status (bgo #604551)Norbert Frese
Clients can check the property to determine lock/unlock status and thus unlock the modem before trying to connect if required. Bits of the patch by dcbw (see the bug).
2010-01-19Merge commit 'origin/anydata'Dan Williams
2010-01-19cdma: increase data call initiation timeoutDan Williams
Some cards (Novatel S720 for example) can take a long time to start a data call if the device isn't activated on the network or the signal strength is low.
2010-01-19core: fix mm_modem_check_removed() to return errors correctlyDan Williams
Make sure all errors actually get returned, not just removal errors.
2010-01-19cdma: allow plugins to override AT+CSS? during registration checking (rh ↵Dan Williams
#547294) Some modems key the AT+CSS? response off their 1X state, so if the modem has EVDO service but no 1X service, AT+CSS? will provide incorrect registration state information and the registration checking will end too early. Allow modems that can handle more specific registration checking to skip the AT+CSS? part.
2010-01-19Merge commit 'origin/probe-cpin'Dan Williams
2010-01-19core: protect against modem removal in critical callbacks (rh #553953)Dan Williams
There are more places to handle, but these are the most critical. If the modem is removed while a command is in-progress, the mm-callback-info code will set info->modem to NULL. Make sure we check for that in callbacks and return a reasonable error. Previous code would just blindly forge ahead and die on a null dereference.
2010-01-18cdma: prefer primary port unless it's connectedDan Williams
2010-01-18probe: add note about Onda MT503HS (rh #551376)Dan Williams
2010-01-17probe: add CPIN request during the probing process (bgo #604369)Dan Williams
Some devices (ZTE MF628) respond to everything except CPIN? with ERROR unless the PIN has been sent. Since no known CDMA devices support AT+CPIN, assume that devices that return a CPIN response are GSM devices.
2010-01-05test: add Gobi COPS response testcaseDan Williams
2010-01-05test: add Nokia 2720 COPS response testcaseDan Williams
2010-01-05test: add Novatel XU870 and Option GT Ultra Express COPS response testcasesDan Williams
2010-01-05test: add +COPS response testcases for E1550, MF622, and E226Dan Williams
2010-01-05gsm: add testcase for invalid +COPS responseDan Williams
2010-01-05gsm: correctly parse Nokia N80 +COPS responseDan Williams
2010-01-05gsm: split out +COPS response parsing and add testcasesDan Williams
2010-01-01serial: prevent "hangs" by limiting EAGAIN retries on serial writesDan Williams
MM would appear to hang sometimes when writing to serial devices but in reality was just retrying the write too many times. Make the retry limit time-based so MM doesn't hang but times the attempt out instead.
2009-12-23gsm: ensure registration state is reset when disabling the modemDan Williams
2009-12-22core: implement a PropertiesChanged signal for the MMModem classDan Williams
At the moment only the Enabled property is exported.
2009-12-21core: add Enabled property to org.freedesktop.ModemManager.Modem interfaceDan Williams
2009-12-16zte: handle unsolicited messages during probeDan Williams
This implements the same fixes that NetworkManager's 0.7 branch implemented in commits f38ad328acfdc6ce29dd1380602c546b064161ae and 1235f71b20c92cded4abd976ccc5010649aae1a0. Many ZTE devices will spam the port with messages about waiting voicemail/SMS which buffer up and cause the device to eventually crash if not suppressed.
2009-12-16cdma: fix quality parsing if modem doesn't prepend +CSQ:Dan Williams
Which some Huawei modems (EC168C) don't do.
2009-12-16sierra: use at!pcstate on CDMA modems for power controlDan Williams
at!pcstate is what Sierra CDMA modems use instead of AT+CFUN for powering the radio on and off. It doesn't turn the modem off completely like AT+CFUN=0 does for many GSM devices though, so it's quite a lot nicer.
2009-12-11cdma: try +CSQ? if CSQ failsDan Williams
Some modems want one, some modems want the other. Try both.
2009-12-11cdma: accept SID 0 in some casesDan Williams
Most AT command references allow modems to report SID 0, even though SID 0 is not a valid SID and is not assigned to any CDMA network. Some Sierra 5725 cards have been seen to report valid class and band from the +CSS response but a SID 0. Accept SID 0 when at least one other element of the +CSS response indicates that the modem has service. Otherwise, report "no service" as before.
2009-12-07gsm: handle different +COPS response behaviorDan Williams
Some modems delay the +COPS response until registration is complete, others return right away. Make sure that both behaviors work correctly.
2009-12-07core: add refcounts to MMCallbackInfoDan Williams
2009-12-02core: pretty-print state changesDan Williams
2009-12-02gsm: implement enable/connecting/disconnecting state handlingDan Williams
And consolidate generic port enable code in one place since pretty much every modem needs that.
2009-12-01gsm: update for new states and state flow fixesDan Williams
2009-12-01core: fix ordering of DISABLING and DISABLED statesDan Williams
2009-12-01cdma: reset previous state if disconnect failedDan Williams
2009-12-01cdma: correctly handle state update after disconnectionDan Williams
We only want to ignore connected/connecting/disconnecting states and update the state based on registration for unsolicited registration changes. Basically, when disconnecting, the modem will be in DISCONNECTING state, but after the disconnect has finished we want to update the modem's state based on the current registration status. But the previous check for >= DISCONNECTING would prevent that from happening, so we need a slightly more specific check in update_enabled_state().
2009-12-01cdma: s/GSM/CDMADan Williams
Oops.
2009-12-01cdma: handle interim enabling/disabling states betterDan Williams
Have to fall back to the previous state if the enable/disable operation fails since we cannot assume anything about the new modem state when a failure occurs.