aboutsummaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)Author
2010-03-10gsm: clean up disconnect handlingDan Williams
Allow subclasses to override disconnect more cleanly so that modem state gets handled correctly when the disconnect is complete. Also fix up PDP Context ID handle (cid) so that subclasses can get the previously-activated context ID when disconnecting, and let the cid be an int since '0' is a valid context number. For the generic devices, this also attempts to actually deactivate the PDP context to ensure that the data session is terminated.
2010-03-10gsm: revert part of d2e69d34f86e8994f74fb209082fcfb7573b2ea2Dan Williams
Reg status returned here is cached reg status, so it's pointless to set it here again.
2010-03-10gsm: make registration status change handling consistentDan Williams
Ensure we send out signals when anything changes.
2010-03-09gsm: fix CREG/CGREG parsing with multiple responsesDan Williams
When a modem sends both CREG and CGREG in the same response packet, the parser was failing to correctly distinguish which response was being parsed, since the string passed to g_regex_match() is the whole response including both CREG + CGREG.
2010-03-09gsm: only update access technology when enabledDan Williams
2010-03-09gsm: let generic class handle signal quality caching and updatesDan Williams
2010-03-09cdma: tell the modem we're using XON/XOFF tooDan Williams
2010-03-09serial: default to XON/XOFF flow controlDan Williams
This seems to help with Huawei and ZTE devices which often appeared to stop responding on either primary or secondary ports at various times. We had this problem a long time ago, but it was fixed then by always picking the right serial port via the USB interface number (Huawei) or udev rules files (ZTE). Now that we're using the second serial port more extensively the problem came up again, so lets try to fix it for real.
2010-03-09gsm: only use CREG responses for authoritative registration stateDan Williams
For now...
2010-03-09gsm: fix inifinite in ETSI tech -> MM tech conversion functionDan Williams
2010-03-09gsm: fix crash in Simple API's GetStatus handlingDan Williams
Can't schedule the info completion until we're sure all the requests have completed. They won't necessarily be completed in the same order they were issued since some of the data the requests pull from could be cached and thus we don't have to wait in the queue to hit up the modem.
2010-03-09core: fix SIGTERM before mainloop has startedDan Williams
2010-03-08api+gsm: split out access technologyDan Williams
As with allowed modes, make things clearer and simpler by giving access technology it's own values.
2010-03-08api+gsm: clean up AllowedMode valuesDan Williams
Instead of trying to stuff everything into the mode bitfield it turns out it's just easier, clearer, and simpler to use different values for each of the following: 1) the device's supported access technologies and allowed modes 2) the device's current access technology 3) the device's allowed mode preference Since none of the AccessTechnology or AllowedMode stuff has hit a release yet, let's make sure we're doing it the right way early on.
2010-03-08gsm: implement allowed modeDan Williams
2010-03-08gsm: fix GObject property maximums for SupportedModes and SupportedBandsDan Williams
Since the values they carry are bitfields, using the highest value as the maximum isn't the right thing to do.
2010-03-08api: make HSPA a standalone network mode againDan Williams
It's just easier this way. It makes little sense to allow selecting mode combinations for anything other than (HSDPA | HSUPA). Most radios don't allow fine-grained control of the different technologies within each 2G or 3G class anyway thus combinations like (GPRS | UMTS) are pointless since the device wouldn't be able to use GPRS but not use EDGE.
2010-03-08gsm: add AccessTechnology property and associated infrastructureDan Williams
AccessTechnology takes over half of what NetworkMode was supposed to do, but we'll keep NetworkMode around for a while for compatibility anyway. Create async updaters that subclasses can use to update the access tech when they get unsolicited messages.
2010-03-07gsm: fix crash getting initial registration stateDan Williams
2010-03-07gsm: add missing 27.007 access technologiesDan Williams
2010-03-07gsm: simplify registration state polling codeDan Williams
2010-03-06gsm: use secondary serial port while connectedDan Williams
For registration updates and signal strength.
2010-03-06gsm: rework registration handlingDan Williams
First, generically handle registration polling if the device does not support unsolicited registration. Second, using the new creg/cgreg parsing functions from mm-modem-helpers.c, handle CREG=2 unsolicited registration replies to capture the GSM LAC/CI for the location information API. Because of these changes we can simplify the registration polling during connection as well by using the common registration parsing code and the cached registration state.
2010-03-06gsm: fix simple state machine network registration after ↵Dan Williams
407abc65c6ccd802ce8456e5a63e68fab1c7d0a1 Got the logic wrong in that commit. Fix it. Network registration should always be run since it handles polling for registration state if needed before continuing.
2010-03-05gsm: indicate CREG vs. CGREGDan Williams
2010-03-05gsm: common CREG/CGREG parsing function and testcasesDan Williams
2010-03-04gsm: add ability for subclasses to handle power-on responseDan Williams
This lets subclasses handle errors when they know the device supports the power-up command. Also will let us simplify a number of plugins.
2010-03-04gsm: handle PINs better during modem enable and simple state machineDan Williams
First, short-circuit the Enable process if the device requires a PIN or PUK since for many devices the enable is going to fail anyway until the PIN is sent. Second, send the PIN first during the simple state machine for the same reason; we need the device unlocked before we want to try to enable it. This also reworks the simple state machine to be a bit clearer and make each state step correspond to the action it's actually doing instead of being off-by-one visually (but not logically).
2010-03-04gsm: postpone PIN/PUK success reply until we know updated unlock statusDan Williams
Don't return until we know what the updated lock status is. Fixes an issue where callers that send the PIN before the modem is enabled (remember, some modems can't be enabled until the PIN is entered, so sometimes we have to send the PIN before it's enabled) would get the reply too early and get failures from other operations.
2010-03-04gsm: clarify generic GSM subclass API a bitDan Williams
2010-03-04core: register Modem UnlockRequired property for changed signals tooDan Williams
2010-03-01policy: split Device into Info and ControlDan Williams
It's useful to let distros and admins set policy differently for device information (for support, inventory, etc) than for actually controlling the device like PIN/PUK unlocks.
2010-02-28gsm: fix direct registration info requestsDan Williams
2010-02-28trivial: rearrange some codeDan Williams
2010-02-27core: implement optional PolicyKit-based authenticationDan Williams
2010-02-27core: add missing MMAuthRequest classDan Williams
2010-02-27core: simply authentication request objectsDan Williams
2010-02-27core: authenticate SMS operationsDan Williams
2010-02-26core: add authorization providers and optional PolicyKit supportDan Williams
When the support is complete, use --with-polkit to enable PolicyKit support. It's not there yet, but this commit adds an authorization provider framework which will be extended to allow hooking into PolicyKit.
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.