aboutsummaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)Author
2011-01-23gsm: enable unsolicited codes on secondary ports too (bgo #637140)Dan Williams
We want to enable unsolicited responses on secondary ports too, so that if the modem only sends unsolicited responses on the ports on which they were enabled, that we can get resposnes off the secondary port when the primary port is connected. But we can't always trust devices to actually send them on the secondary port, so we enable the unsolicited responses on both the primary and secondary ports just in case.
2011-01-23core: enable timestamps with legacy --debug optionDan Williams
2011-01-23core: rework loggingDan Williams
Make it more flexible, add logging to a file, and absolute and relative timestamps.
2011-01-14gsm: wire up USSD Respond function (bgo #638038)Guido Günther
2011-01-14core: add modem reset/power-cycle commandDan Williams
Based on a patch by Elly Jones from Google.
2011-01-11gsm: correctly parse Samsung S8500 Wave CREG responseMichał Sroczyński
(testcases by dcbw)
2011-01-05cdma: update reg state to HOME based on SPERI responseDan Williams
If the SPERI response indicates the home network, then set CDMA registration to HOME if it was REGISTERED (which is less specific).
2011-01-04cdma: fix segfault by handling MEID propertyDan Williams
Also, MEID->Meid to follow standard D-Bus property semantics.
2011-01-04cdma: fix CDMA registration state retrieval on single AT port devicesDan Williams
If the device only has one AT port that's being used for data and thus we can't do more specific registration checking in MMGenericCdma using AT commands, but generic registration checking was successful, just use the less specific state. Previously, an error would be returned when no AT port was available even though less specific QCDM registration checking worked. That was just stupid.
2011-01-01core: signal property changes for IpMethodDan Williams
If the modem's IP Method changes after construction because the modem's full capabilities were only discovered after it was created, make sure the change notification gets emitted.
2011-01-01gsm: add access technology support for HSPA+Dan Williams
2010-12-21test: fix CIND test index checkingDan Williams
CIND indexes returned from helper are 1-based, not 0-based, because that makes it easier to match against the modem's unsolicited CIND message.
2010-12-20Add CDMA Activate and ActivateManual methods.Elly Jones
BUG=6885 TEST=built modemmanager and cromo Change-Id: Ib73a093b13da05948a2f1da8f051fe7c55682584 Review URL: http://codereview.chromium.org/3517013 (cherry picked from commit f447c8e1a0062500e1171e031cf4c8fef76ffd59) Conflicts: src/mm-modem-cdma.c
2010-12-20Don't probe virtual devices before they existElly Jones
Prevent ModemManager from probing virtual devices before their associated files exist in /dev tree. Contributed by Nasser Grainawi <nasser@codeaurora.org> Review URL: http://codereview.chromium.org/2118005 (cherry picked from commit 617660e3572a7b79ed83f9fc0fda89b7efcb2d4d) Conflicts: src/mm-plugin-base.c Change-Id: Ie5e8b98fb6b6c69e294175523ef99c934092433b
2010-12-20Install xml files so they can be used by cromo (chromeos modem manager)Elly Jones
Amended: Install the files under their proper DBus names. Review URL: http://codereview.chromium.org/1618004 (cherry picked from commit 89f7f05f1294485fa8b44cfdd3c9b0d924d45ac1) Conflicts: Makefile.am Change-Id: I65b2b0c1b5e579bb5b1d5d5b390c3be2ae49543c
2010-12-20Update from Qualcomm to support smd devices in Modem ManagerElly Jones
Review URL: http://codereview.chromium.org/661471 (cherry picked from commit 8475eb44b7ea41afa823919b017a39d82b07a5a2) Conflicts: src/mm-plugin-base.c Change-Id: I825886cad62a27acb39dfe74da7028d83adf692a
2010-12-19bluetooth: tag 'moved' bluetooth ttys as candidatesDan Williams
The kernel appears to add the device first without any parents, then to move it to the correct place in the hierarchy, with its immediate parent being the device's HCI controller. So we need to capture the 'move' event too since that's when the rfcomm device is finally usable.
2010-12-19bluetooth: ensure bluetooth rfcomm devices get tagged as candidatesDan Williams
2010-12-17core: separate PropertiesChanged signal XMLDan Williams
Which requires that we turn it into a GInterface that MMModemBase can implement, because dbus-glib does not allow attaching more than one introspection glue structure to an object at a time. Also implement the standard D-Bus properties changed signal.
2010-12-08core: work around udev parallel startup raceDan Williams
Ignore devices that aren't completely configured by udev yet. If ModemManager is started in parallel with udev, explicitly requesting devices may return devices for which not all udev rules have yet been applied (a bug in udev/gudev). Since we often need those rules to match the device to a specific ModemManager driver, we need to ensure that all rules have been processed before handling a device. Do this by adding an item to the environment of each device that MM might possibly be interested in, and ignoring devices that don't have that. When the device is fully processed by udev, MM will get an 'add' event and the device will have all rules applied.
2010-11-30gsm: prefer AT+CIND signal quality for modems that support it (lp:682282) ↵Dan Williams
(bgo #636040) Some devices always reply with 99 for AT+CSQ when in UMTS mode (Linktop LW273) so if the modem supports it, use CIND/CIEV instead.
2010-11-29gsm: don't poll signal quality if it was recently updatedDan Williams
2010-11-29core: allow setting IP method after constructionDan Williams
Some modems might not know their IP method until after the modem object has been created.
2010-11-28serial: print debug data unsignedDan Williams
2010-11-28gsm: query signal strength with +CIND if modem does not support +CSQ (lp:682282)Dan Williams
2010-11-28core: +CIND indexes start at 1Dan Williams
2010-11-28core: add index to CIND helperDan Williams
2010-11-28core: add +CIND parsing helpersDan Williams
2010-11-10gsm: fix up CID signed/unsigned confusionDan Williams
-1 = no APN set, so use modem default. We'll have to fix a few more things up for modems like hso/mbm that don't use ATDT and require CIDs, but this gets us halfway there for other devices.
2010-11-08gsm: fix up USSD property exportsDan Williams
If the base class advertises that it implements an interface, it really does need to implement all that interface's properties too. Otherwise dbus-glib gets mad and can't look up the property information for D-Bus Introspection.
2010-11-05gsm: add preliminary USSD support (bgo #590798)Guido Günther
We currently convert to and from the modem's set charset and always pass '15' as the data coding scheme. Passing the correct data coding scheme as third argument to CUSD only upsets the network. This contradicts 3GPP TS 23.038. Other tools like gsm-ussd handle it the same way. Network responses that require further actions are not yet implemented. (some fixes and cleanups by Dan Williams)
2010-11-05core: add bin -> hex string converterDan Williams
2010-11-05core: unconditionally enable the Location Services APIDan Williams
This required dbus-glib 0.86 or later, which was released 2010-03-24.
2010-11-03trivial: avoid build warning by using g_message() correctlyDan Williams
2010-10-25gsm: retry SIM ID if we didn't get it before card was enabledDan Williams
2010-10-25gsm: request ICCID after checking the PIN statusDan Williams
Checking PIN status makes sure the SIM is initialized, and that has to happen before we try to read the SIM for the ICCID. So move PIN checking before getting the ICCID, and retry the ICCID at least once for odd cards like Gobi 1K that seems to need one more try right after it's done booting up.
2010-10-25gsm: add SimIdentifier propertyDan Williams
An obfuscated SimIdentifier that may be available before the PIN has been entered, for use in auto-unlocking a device. If this value is present, it should be used in preference to DeviceIdentifier as it is SIM-specific like the PIN code.
2010-10-22core: print out modem hardware VID/PID and subsystemDan Williams
2010-10-22trivial: fix formattingDan Williams
2010-10-22core: detect PCMCIA manfid and cardidDan Williams
These aren't added to the udev device database by anything yet (though they should be) so grab them manually.
2010-10-22core: strip "0x" off udev ID_VENDOR_ID and ID_MODEL_ID stringsDan Williams
2010-10-22core: use hardware IDs as part of DeviceIdentifierDan Williams
Pass the device's hardware IDs through modem creation and use them when calculating the device's identifier. Add a bunch of testcases for real hardware to ensure we don't break the device ID in the future unless we really want to.
2010-10-21core: add DeviceIdentifier propertyDan Williams
This is computed before any PIN is entered, and thus before we can usually get IMEI or MEID/ESN out of the device in many cases. It's therefore not the same as EquipmentIdentifier. This is intended to be used by UI programs for matching devices with PIN numbers for automatic unlocking. While the PIN number is actually *SIM* specific, no modems allow access to the IMSI before the PIN is entered, and thus we cannot actually match the PIN with the SIM. The device ID is the next best thing we can use and should allow auto unlocking in most cases.
2010-10-14cdma: clear error when getting state if no AT port is availableDan Williams
We don't care about the error if we have a QCDM port.
2010-10-14serial: make QCDM frame parsing more robustDan Williams
Ensure that valid HDLC frames that are not valid QCDM frames are correctly rejected, and that their data is correctly discarded. The core bug was that Sierra CnS frames have leading and trailing HDLC frame terminator bytes (0x7E), and the code was incorrectly treating the leading terminator as the end of a frame, not the beginning. Thus it would consider the outstanding serial request finished without actually parsing the response packet. Now, we make sure we don't tell the serial receive code that we have a full QCDM frame until we actually do have one, which is at least 3 bytes + 0x7E.
2010-10-14core: add more QCDM frame marker testcasesDan Williams
2010-10-14core: add basic QCDM serial port unit testsDan Williams
Test that a Version Info request/response works as expected, and add a testcase for a bug where specific Sierra CnS responses to the Version Info request do not properly return an error when attempting to parse the response as a QCDM packet. Fix for the second thing forthcoming.
2010-10-14build: create convenience serial libraryDan Williams
For better unit testing.
2010-10-14core: add helper to create QCDM serial ports from a file descriptorDan Williams
Aids in unit testing
2010-10-14serial: allow creating serial ports with a given file descriptorDan Williams
To enable better unit testing of MMSerialPort and subclasses behavior.