aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2010-04-07gsm: don't require +CMEE=1 successDan Williams
Some devices apparently don't like it (even though it's required in the standards) and since we can deal without it, don't require +CMEE=1 to complete successfully.
2010-04-07mbm: fix getting current allowed modeDan Williams
2010-04-05cdma: fix subclass registration state checking in error paths (rh #569067)Dan Williams
The generic CDMA superclass already checks minimal registration state, and when some of the additional query_registration_state() subclass checks were being performed, if the device returned an error (if it didn't support the subclass' specific registration command like *STATE or ^SYSINFO) the superclass' registration state checks would be thrown away. Fix that by specifying the behavior of the subclass' query_registration_state() methods to ignore most errors and leave the superclass' registration state intact if a non-critical error occurs.
2010-04-05core: fix handling of deferred ports during probeDan Williams
The next plugin logic was wrong when a previous plugin had already claimed support for the port and the Generic plugin was next. In that case, the code failed to call the functions to actually grab the port.
2010-04-05serial: let port subclasses handle their own debug loggingDan Williams
We want to print out QCDM messages as hex, not ASCII. So let each port type print out it's own communication as it wants to.
2010-04-05core: fix supports check for last plugin (rh #579247)Dan Williams
Since Generic is always last, it was getting ignored by this off-by-one bug caused by a previous patch.
2010-04-05gsm: clean up periodic poll start/stop and poll signal strengthDan Williams
2010-04-05cdma: clean up periodic poll start/stopDan Williams
And fix a small bug where polling wasn't started for the ENABLED state.
2010-04-05cdma: periodically poll registration state and qualityDan Williams
2010-04-04core: only enable location API for dbus-glib >= 0.86Dan Williams
2010-03-31qcdm: fix endian issues for BE platformsDan Williams
And add a testcase for packet encapsulation to ensure we don't have further endian issues in the future.
2010-03-31core: don't advance to next plugin until neededDan Williams
Otherwise info->cur_plugin is wrong (and therefore we left uncleared supports tasks in MMPluginBase) when the port isn't supported by the plugin, but it's parent modem device was supported by the plugin. Like when all probing of the port fails but one of it's siblings has already been claimed by a modem; in this case we just drop the port (so that no other plugin could try to claim it, because only one plugin is allowed to handle all a modem's ports) but we still need to tell the parent modem's plugin to clean up the supports task.
2010-03-30core: pass try_supports_port() the existing modemDan Williams
2010-03-30core: don't re-export modems after db413acc4e9d364e1c4ecdde0da3fade012912abDan Williams
If a port is found by the kernel after the modem is already exported, make sure we don't re-export the modem after the tardy port is handled.
2010-03-30cdma: use best active pilot EC/IO for signal strength when connectedDan Williams
If the modem doesn't have two AT ports (so one can be used for AT+CSQ while connected) get the 1x active pilot's EC/IO and use that for signal strength.
2010-03-30core: only export modems when all ports are handledDan Williams
A modem is now only exported to D-Bus when both of the following are true: 1) the modem is valid 2) all ports the modem provides have been handled by appropriate plugins This ensures that all the modem's ports are completely ready before any clients can do anything with it. In the case of CDMA modems with QCDM ports, this allows the QCDM ports to be detected before exporting the modem. Since the QCDM detection comes after AT probing, previously this resulted in a CDMA modem getting exported to clients before we had a QCDM port to query for registration status.
2010-03-30core: find the existing modem for a port in the managerDan Williams
2010-03-30core: move physical device checking into the managerDan Williams
It turns out that the manager needs to know about the physical device so we can prevent multiple plugins from claiming ports on the same modem.
2010-03-30cdma: use DM for serving system if possibleDan Williams
2010-03-30qcdm: don't fail testcase on unknown mode pref valuesDan Williams
EC168C has a value of 0x16 for mode pref, which is unknown. But that shouldn't fail the testcases.
2010-03-30qcdm: add CM subsystem digital only mode preferenceDan Williams
Found on the Huawei EC121.
2010-03-30qcdm: fix testcases for various devicesDan Williams
Huawei EC121 doesn't implement the MDN NV item, and we're also missing some values for the CM subsystem mode pref enum.
2010-03-30qcdm: add Pilot Set retrieval for signal strength calculationsDan Williams
Determined from various sources including RTManager and "Technical Introduction to CDMA" (Course RF100 Chapter 7).
2010-03-30qcdm: allow result objects to hold boxed typesDan Williams
2010-03-29qcdm: fix CRC checking on some packetsDan Williams
Should be pointing to the CRC location in the *unescaped* packet buffer since the CRC is subject to escaping/unescaping. Previous code pointed to the wrong location in the escaped packet buffer, which was often pointing to the write place if there weren't many escaped bytes in the input buffer, but was still wrong.
2010-03-29qcdm: complete Version Info command fieldsDan Williams
Found in RTManager
2010-03-29qcdm: fix up CDMA Status command fields and valuesDan Williams
Found in two sources: a) Руководство пользования тестером CDMA-450 b) RTManager
2010-03-28qcdm: update CM subsys system modesDan Williams
2010-03-28gsm: only set auto registration if the modem isn't idle (related: bgo #591047)Dan Williams
Some modems (Huawei E1552) appear to have problems with auto registration in some circumstances that we don't yet fully understand, such that when AT+COPS=0 is sent they never end up registering with the correct network. As a minor workaround, if the modem is already registered with a provider and the user hasn't specified manual registration, don't set auto registration but let the modem figure it out itself. See (bgo #591047) for more details.
2010-03-28huawei: ensure modem ports get claimed even if probe failsDan Williams
Previously there was an issue where if the probe failed, because we can't really probe huawei secondary ports for various reasons, the Generic plugin would eventually come around and try actively probing the secondary port after the Huawei plugin said "I don't support this port". Which resulted (potentially) in two MMModem objects for the same device (one driven by Huawei, the other by Generic).
2010-03-26zte: implement GSM solicited access technology requestDan Williams
2010-03-26huawei: implement GSM solicited access technology requestDan Williams
2010-03-26sierra: implement GSM solicited access technology requestDan Williams
2010-03-26gsm: ensure solicited access technology is valid before using itDan Williams
2010-03-26option/hso: implement solicited access technology requestDan Williams
2010-03-26gsm: update access technology on successful registrationDan Williams
2010-03-25gsm: fix wrong comparisonDan Williams
Bug didn't have much of an effect, but should be fixed anyway.
2010-03-23core: assume +CPIN "READY" response indicates GSM capability (rh #573510)Dan Williams
Assume (for now) that devices that respond to AT+CPIN without an error are GSM devices. This may not be 100% true as some devices in Asia (where CDMA devices use RUIMs which are basically SIMs) support +CPIN for unlocking the RUIM, but since CDMA devices more consistently implement AT+GCAP and ATI than we should be safe for a while.
2010-03-23cdma: use DM Call Manager for registration status if availableDan Williams
This should solve problems with users who's providers are EVDO only and thus the device isn't in 1X mode, but who's modems don't set anything meaningful for CAD or CSS when the 1X radio isn't registered. Previously, MM would just spin thinking it wasn't registered when trying to connect. This was mostly found with AnyDATA, Huawei, and some ZTE devices from Russia and India.
2010-03-23core: grab probed QCDM ports for plugins where they are usefulDan Williams
2010-03-22qcdm: use tcsetattr/tcgetattr for better compatibilityDan Williams
With Alpha, mainly.
2010-03-22core: cleanly disable modems on shutdownDan Williams
2010-03-22option/hso: ensure unsolicited messages get turned off on disableDan Williams
2010-03-22option/hso: make use of unsolicited access technology signalsDan Williams
2010-03-22gsm: fix argument validation in SetAllowedModeDan Williams
2010-03-22qcdm: add ZTE signal strength requestDan Williams
2010-03-22cdma: check SPSERVICE and SPERI when getting registration stateDan Williams
2010-03-21cdma: check for +SPSERVICE and $SPERIDan Williams
Which are Sprint-specific commands which appear to be implemented by various phones for getting access technology and roaming status.
2010-03-21core: parse the right thing on QCDM version info responseDan Williams
2010-03-21core: fix error when unescaping QCDM packet failsDan Williams