Commit Graph

2375 Commits

Author SHA1 Message Date
Dan Williams
720e38aec0 core: move physical device checking into the manager
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-30 14:50:40 -07:00
Dan Williams
39326f2491 cdma: use DM for serving system if possible 2010-03-30 01:01:53 -07:00
Dan Williams
4d426ebbbd gsm: only set auto registration if the modem isn't idle (related: bgo #591047)
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-28 09:30:16 -07:00
Dan Williams
3d12055818 gsm: ensure solicited access technology is valid before using it 2010-03-26 00:16:24 -07:00
Dan Williams
a83dcdba8a gsm: update access technology on successful registration 2010-03-26 00:14:23 -07:00
Dan Williams
4dbc2f2e9b gsm: fix wrong comparison
Bug didn't have much of an effect, but should be fixed anyway.
2010-03-25 13:47:30 -07:00
Dan Williams
0b9c173fe9 core: assume +CPIN "READY" response indicates GSM capability (rh #573510)
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-23 14:37:01 -07:00
Dan Williams
e7d1e4adb9 cdma: use DM Call Manager for registration status if available
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-23 02:10:58 -07:00
Dan Williams
bcfb75d88d core: grab probed QCDM ports for plugins where they are useful 2010-03-23 01:36:00 -07:00
Dan Williams
76130862ed core: cleanly disable modems on shutdown 2010-03-22 15:41:14 -07:00
Dan Williams
282ba6561e gsm: fix argument validation in SetAllowedMode 2010-03-22 14:56:47 -07:00
Dan Williams
7fbe4d8383 cdma: check SPSERVICE and SPERI when getting registration state 2010-03-22 00:28:21 -07:00
Dan Williams
3b32e2a679 cdma: check for +SPSERVICE and $SPERI
Which are Sprint-specific commands which appear to be implemented by
various phones for getting access technology and roaming status.
2010-03-21 17:50:45 -07:00
Dan Williams
6598d2ef7f core: parse the right thing on QCDM version info response 2010-03-21 17:48:19 -07:00
Dan Williams
96f5400cc9 core: fix error when unescaping QCDM packet fails 2010-03-21 17:47:15 -07:00
Dan Williams
f3e660444c core: fix 64-bit build error in QCDM packet decapsulation 2010-03-20 00:58:14 -07:00
Dan Williams
2e62a2e0a6 core: probe ports for QCDM capability too 2010-03-20 03:39:10 -07:00
Dan Williams
418ba174dc qcdm: fix decapsulation buffer size calculation 2010-03-20 03:38:54 -07:00
Dan Williams
ff2182fe1d core: let partial serial responses be consumed by the handlers 2010-03-20 02:57:33 -07:00
Dan Williams
5897d8f275 gsm: PIN2 doesn't block enabling either
Again, only required for various dialing features we don't deal with
yet.
2010-03-19 11:09:43 -07:00
Dan Williams
f5f388c7fd gsm: use new callback info chain functions for simple status 2010-03-19 11:05:05 -07:00
Dan Williams
85fc71818e core: have modem base class handle card information 2010-03-19 11:01:19 -07:00
Dan Williams
4558df894b helpers: add generic response stripping function 2010-03-19 10:57:01 -07:00
Dan Williams
6ca5765eb6 core: add chaining helper functions to callback info
Helpful when chaining a number of commands together when you want
to schedule the callback info only after all of them complete.
2010-03-19 10:54:10 -07:00
Dan Williams
bb62cfe07a core: add base location API implementation 2010-03-18 18:08:23 -07:00
Dan Williams
fb2b80f11a serial: flush I/O right after open
We don't really care about anything that came before.
2010-03-17 12:05:31 -07:00
Michael Biebl
857dcd7bcf serial: use termios instead of old terminal ioctls
Makes sure we build on Alpha, plus the right thing to do.
2010-03-17 11:59:29 -07:00
Dan Williams
d7a0ad7686 gsm: implement roaming triggers 2010-03-16 22:44:09 -07:00
Dan Williams
2c65e0ceaa gsm: ignore SIM-PUK2 unlock required
Device is functional without it; it's only required for stuff
we don't do yet.
2010-03-16 17:19:21 -07:00
Dan Williams
79bca53f21 cdma: simplify finding the right serial port for commands 2010-03-16 17:03:55 -07:00
Dan Williams
6266f949ba gsm: fix operator name on Option devices with UCS2 charset 2010-03-16 16:45:32 -07:00
Dan Williams
c18dfa67d8 gsm: turn off unsolicited messages on disable 2010-03-16 15:53:09 -07:00
Dan Williams
4d5f4f9a82 gsm: only change allowed mode during Simple.Connect when needed 2010-03-16 15:16:01 -07:00
Dan Williams
6744e08104 gsm: simplify finding the right serial port for commands 2010-03-16 13:17:14 -07:00
Dan Williams
b002e54cf4 core: immediately reject Sierra CnS ports during probe
For now; until Sierra releases their CnS documentation.
2010-03-16 13:03:13 -07:00
Dan Williams
882a86040e gsm: make mm_generic_gsm_check_pin() static
No more external users of it.
2010-03-16 11:52:01 -07:00
Dan Williams
e3aa8d5008 api: add UMTS 1900MHz (Class II) band 2010-03-16 11:04:12 -07:00
Dan Williams
19257f540c gsm: handle allowed mode during Simple.Connect() 2010-03-16 11:02:35 -07:00
Dan Williams
d9a47ef2e8 core: fix serial port base class callback types 2010-03-15 14:51:18 -07:00
Dan Williams
3151e0e298 core: add command helper that handles character set conversion 2010-03-15 14:25:49 -07:00
Dan Williams
2dd7e12f72 gsm: allow subclasses to retrieve current character set 2010-03-15 14:24:59 -07:00
Dan Williams
2a94d38edc core: move charset enum/string conversion to it's own file 2010-03-13 16:37:24 -08:00
Dan Williams
ac7310ab10 gsm: add character set get/set support 2010-03-13 16:26:46 -08:00
Dan Williams
ef749399fd build: fix distcheck error 2010-03-12 15:31:29 -08:00
Dan Williams
936533cfcc Merge remote branch 'origin/master' into qcdm 2010-03-12 12:40:00 -08:00
Dan Williams
3e760488b6 cdma: make previous state tag private 2010-03-12 12:38:53 -08:00
Dan Williams
9d91501330 Merge remote branch 'origin/master' into qcdm 2010-03-12 12:21:29 -08:00
Dan Williams
cda38d390a cdma: fix Simple.GetStatus to actually work 2010-03-12 12:07:08 -08:00
Dan Williams
7a0c503036 cdma: use E1 parser to ignore re-echoed commands
Some modems turn E1 on and off random (Huawei EC168C) and sometimes
the echoed command confuses things.  We have a parser just for that,
so let's use it.  It should be safe to use with devices that repect
E0 too.
2010-03-12 10:16:24 -08:00
Dan Williams
4d1e00c496 core: fix merge damage 2010-03-11 16:02:12 -08:00