Commit Graph

174 Commits

Author SHA1 Message Date
Denis Kenzior bc72cca91b Fix: notify_attached was only used when detached
The standard only specifies that the context might have been detached by
the network / mobile equipment.  Not attached.
2009-10-26 16:55:03 -05:00
Denis Kenzior ffd7c1920a Fix: Some modems report PDP_type in a list 2009-10-23 17:05:57 -05:00
Denis Kenzior 3408fc5094 Register for CGEV indications in gprs context 2009-10-23 17:05:56 -05:00
Denis Kenzior 14c116be36 Remove unused code and make compiler happy 2009-10-23 17:05:56 -05:00
Denis Kenzior d6161ddb61 Add basic atmodem gprs context implementation 2009-10-23 17:05:56 -05:00
Denis Kenzior 69c872f400 Refactor: Initialization code 2009-10-23 17:05:55 -05:00
Denis Kenzior 43256236a0 Add GPRS registration status implementation 2009-10-23 17:05:55 -05:00
Denis Kenzior 8cb2bb7608 Remove unused code 2009-10-23 17:05:55 -05:00
Denis Kenzior 88c0f77a58 Refactor: First round of renaming 2009-10-23 17:05:53 -05:00
Denis Kenzior b2fd75014a Refactor: rename data-connection to gprs
Keep the name specific to GSM, other implementations will probably
require their own interfaces
2009-10-23 17:05:53 -05:00
Andrzej Zaborowski f43efa8a5f Add GPRS support
This commit implements the GPRS context setup and teardown according to
doc/dataconnectionmanager-api.txt

One issue with the AT implementation of the api is that "Powered" (a
read-write property) can be set independently of "Attached" (read-only
property) and remain set when "Attached" is clear.  The semantics would
be that the network doesn't have resources to let the modem attach,
but the modem waits for the resources to become available and then
attaches.  On AT the modem is in this state only when executing +CGATT,
so currently the code will rerun +CGATT as soon as the previous one
returns with error, probably starving other commands.  A possible
workaround would be for "Powered" to flip back to False after the modem
fails to attach once, or give up on having separate properties.
Alternatively we could re-try to attach periodically but on one modem
I've tried +CGATT fails after about 1 minute (that's the Calypso) and
on another only about 0.5s (Nokia phones with AT emulation).

When "Powered"  is set and "RoamingAllowed" is clear and we manage to
attach and find that we're roaming, ofono resets "Powered".

We may want to catch the user trying to dial *99***1# which is the
backwards compatibility quirk for old modems (same way ofono parses
USSD strings).
2009-10-23 17:05:53 -05:00
Denis Kenzior 0faa8b3c42 Fix: Invalid call state transition
When an active and a waiting call exist, and the active is released the
waiting call becomes incoming.  This wasn't properly handled by the
generic at driver.
2009-10-23 13:56:26 -05:00
Denis Kenzior 86cd4951b3 Fix: Use proper printf format for string precision 2009-10-16 17:46:29 -05:00
Denis Kenzior 210bb5cc0a Cleanup: Fixup USSD to use cbs_decode_dcs
Don't decode by hand, use existing function
2009-10-16 17:46:28 -05:00
Andrzej Zaborowski 15c07346df Parse +CUSD responses. 2009-10-16 17:46:28 -05:00
Andrzej Zaborowski 2974d69ddf Fix: Emit debug message instead of an error
SMS storage is frequently empty at startup, if this is the case, do not
use ofono_error, use ofono_debug instead.
2009-10-16 11:14:26 -05:00
Andrzej Zaborowski e6b8550328 Fix: Free converted string after use.
Also make sure we don't read beyond end of the string.
2009-10-16 11:09:42 -05:00
Denis Kenzior ca60851774 Fix: Quiet a warning 2009-10-02 19:25:58 -05:00
Denis Kenzior dcf4ac50b3 Make generic sim driver work with 3G SIMs
3G (UICC) based SIMs use a different response format than 2G sims.  In
theory this also allows us to determine whether SIM filesystem format is
3G or 2G
2009-10-02 18:25:56 -05:00
Denis Kenzior c8150fc120 Use small caps for 2G/3G functions 2009-10-02 18:25:56 -05:00
Denis Kenzior c9a2eedc08 Add utility to parse 2G GET_RESPONSE data
This format is described in 51.011 and the older 11.11.  It is not
supported by newer 3G UICC based devices & sim card combinations
2009-10-02 18:25:56 -05:00
Denis Kenzior 13c46b9781 Add at modem call volume driver 2009-09-29 14:56:22 -05:00
Denis Kenzior d0501c5694 Be more numerically stable 2009-09-29 14:56:22 -05:00
Denis Kenzior e5f02e427a Use none_prefix in cssn 2009-09-29 14:56:22 -05:00
Andrzej Zaborowski 2a02f45c79 Add plugin interface for getting PIN lock state.
It may be useful to have the information of whether card is currently
locked and emit events when this changes but if we want to have it as a
property, we would need properties for all types of locks and it wouldn't
be all that useful.
2009-09-23 14:27:52 -05:00
Denis Kenzior 5fd083f6f4 Refactor: Do not use int instead of enum
27.007 does not define an enumeration for SIM PIN/PUK values.  This
should be handled by ofono enum instead
2009-09-22 00:07:07 -05:00
Denis Kenzior 7d7732d637 Don't treat READY CPIN result differently 2009-09-22 00:07:07 -05:00
Denis Kenzior 3362de0010 Move SSN unsolicited notification activation 2009-09-22 00:07:06 -05:00
Denis Kenzior 63416e2851 Rearrange sim password enum 2009-09-22 00:07:06 -05:00
Andrzej Zaborowski ee02b14836 Do PIN authentication
This adds checking whether PIN is required during SIM initialisation and
delaying the sim ready notifications until after correct PIN is given.
2009-09-22 00:07:06 -05:00
Andrzej Zaborowski 6d2cf926f3 Check received PDUs fit in the buffer, fix buffer size. 2009-09-16 04:53:44 -05:00
Denis Kenzior cbb36acee8 Rework DECLARE_FAILURE to be a bit nicer 2009-09-11 12:39:56 -05:00
Denis Kenzior 2bdf1f50a1 Ensure CBS is in a known state at startup 2009-09-10 17:44:36 -05:00
Denis Kenzior 6b91b3563b Add atmodem cell broadcast driver 2009-09-10 16:13:16 -05:00
Andrzej Zaborowski 36d0c8451f Read messages left over in ME storage on startup.
On modems that don't support +CMT (or for class 2 SMSes) the messages are
stored in the modem and then read and deleted from there in two separate
steps with no warranty that deletion succeeds or (more likely) power is
cut before the deletion happens.  Over time the memory may become full
and if we don't want to deal with this condition we need to check on
startup if there are messages we haven't deleted.

We can't differentiate between those messages and those the user already
had on the SIM / modem before installing ofono or switching phones, so we
might want to deliver messages with REC READ status with some kind of
indication that these are potentially old so the UI doesn't emit spurious
alerts.  We don't do this now and just deliver as usual.
2009-09-08 13:31:30 -05:00
Denis Kenzior 4c5791a500 Rename at.h to atmodem.h 2009-09-04 20:37:49 -05:00
Denis Kenzior 5749b6e75d Break common at utilities to atutils.c/.h 2009-09-04 20:37:49 -05:00
Denis Kenzior 2693c604a9 Remove unused declaration 2009-09-04 20:37:49 -05:00
Denis Kenzior 62bf46a5d4 Remove unused structure 2009-09-04 20:37:49 -05:00
Denis Kenzior 23484524df Add quirk for network-registration for calypso
Support calypso-specific AT%CSQ notifications
2009-09-03 23:20:22 -05:00
Andres Salomon aceaac4b7b G1: Add an SMS quirk for CNMI mode
The G1 doesn't support mode2, despite advertising it.

The G1 chokes w/ an "Error 303" when we specify NMI mode 2.  Adding a
quirk to drop that mode from the supported list (just use mode 1) allows
the G1 to properly deal with SMS.
2009-09-02 19:06:03 -07:00
Denis Kenzior a613105f91 Rename generic_at drivers to atmodem
Be more consistent with directory naming
2009-09-01 22:33:05 -05:00
Denis Kenzior 9caa606bcc Make remove functions not return anything 2009-09-01 22:27:08 -05:00
Denis Kenzior 422df0edfb change int vendor to unsigned int vendor 2009-09-01 21:39:02 -05:00
Denis Kenzior 31a3d489d5 Add stub vendor.h file 2009-09-01 18:14:59 -05:00
Denis Kenzior 4064f4ba73 Add vendor flag capability to voicecalls 2009-09-01 18:14:59 -05:00
Denis Kenzior e5577046f0 Add vendor flag capability to ussd 2009-09-01 18:14:58 -05:00
Denis Kenzior afb0e2b854 Add vendor flag capability to ssn 2009-09-01 18:14:58 -05:00
Denis Kenzior 8d380f8fa0 Add vendor flag capability for sms 2009-09-01 18:14:58 -05:00
Denis Kenzior aecf42646e Add vendor flag capability to sim 2009-09-01 18:14:58 -05:00