Marcel Holtmann
98eed08d29
atmodem: Add skeleton for time update reporting
2010-10-20 13:27:04 +02:00
Marcel Holtmann
a917f094cb
atmodem: Add SIM ready quirk for IFX when entering PUK
...
For the Infineon modem, also the PUK entering needs to be extended with
a quirk to wait for the SIM ready notification.
2010-10-18 15:10:05 +02:00
Marcel Holtmann
43a6ece561
atmodem: Remove workaround for SIM ready notifier removal
2010-10-15 16:07:51 +03:00
Denis Kenzior
aa50067ccd
sim: Use enums for EF valid / invalidated status
2010-10-15 07:25:50 -05:00
Petteri Tikander
84efadcf5a
atmodem: returns file-status of SIM EF-file
2010-10-15 02:19:02 -05:00
Marcel Holtmann
4cacd3a76c
atmodem: Send DTMF commands without quotes
...
The AT+VTS command takes a single character and should not use quotes.
2010-10-13 08:25:59 +03:00
Marcel Holtmann
3ad4e5ab21
atmodem: Update IFX specific SIM ready checking
...
It seems that the XSIM notification doesn't really send SIM ready
status. It sends ready to attach instead:
> AT+CPIN="0000"\r
< \r\nOK\r\n
< \r\n+XLOCK: "PN",5,0,"PU",5,0,"PP",5,0,"PC",5,0,"PS",5,0\r\n
< \r\n+XSIM: 7\r\n
So either SIM ready or ready to attach is received more to the
post_sim state.
2010-09-29 23:23:29 +09:00
Marcel Holtmann
590e154734
atmodem: Remove quirk for Huawei voice call support
...
The Huawei voice call support has its own driver now. So this quirk
is no longer needed.
2010-09-29 08:32:23 +09:00
Marcel Holtmann
6fbbd4ca3e
atmodem: Some cleanups in voice call driver
2010-09-27 08:07:02 +09:00
Marcel Holtmann
25bb671d4e
atmodem: Add special handling for Infineon SIM ready state
2010-09-25 11:32:40 +09:00
Marcel Holtmann
ae2a9207a4
atmodem: Add support for Infineon CNMA without PDU
...
Seems like the Infineon modem can't handle a provided PDU to the CNMA
command. So just leave it out.
2010-09-24 18:28:32 +09:00
Marcel Holtmann
2be1c13dbb
atmodem: Add special handling of Infineon signal strength reporting
...
The custom signal strength reporting could be done inside the modem
plugin actually, but Calypso, Huawei etc. add quirks to the generic
network registration driver. So for now do it the same way until
this gets cleaned up for all modem plugins.
2010-09-24 18:23:31 +09:00
Denis Kenzior
09c0ae8478
atmodem: Update comment
2010-09-24 00:18:40 -05:00
Marcel Holtmann
430259e38b
atmodem: Add vendor quirk for Infineon modems
2010-09-24 02:38:23 +09:00
Marcel Holtmann
9f906504a5
atmodem: Allow setting PPP debug via environment variable
2010-09-20 08:28:13 +09:00
Denis Kenzior
c97489a161
ussd: Tweak buffer size
2010-09-15 12:11:08 -05:00
Denis Kenzior
f6a4d4a5ce
ussd: Rework ussd_request
...
- Only allocate variables which are needed
- Make sure buffers are big enough
- converted is a simple string, no need to use fancy printf magic
2010-09-14 22:05:32 -05:00
Denis Kenzior
82e6ddfd4b
ussd: Simplify ussd notification parser logic
2010-09-14 21:54:25 -05:00
Jeevaka Badrappan
eb425a281f
ussd: Driver API changes
...
To support 8bit and UCS2 formatted USSDs as well as Send USSD Proactive
Command.
2010-09-14 17:01:49 -05:00
Jeevaka Badrappan
09de3fdaab
ussd: Read current CSCS charset
2010-09-14 11:50:28 -05:00
Lucas De Marchi
74125ff5d4
Fix common misspellings in drivers
...
Fix common misspellings by using the list available at
http://en.wikipedia.org/wiki/Wikipedia:Lists_of_common_misspellings/For_machines
From the list cited above, the substitution script found the following
misspellings:
subsidary(-ies)->subsidiary(-ies)
transfering->transferring
2010-09-14 16:00:16 +09:00
Jeevaka Badrappan
a632cfe11b
atutil: Add parsing of CSCS queries
2010-09-10 12:00:43 -05:00
Marcel Holtmann
a0fe9cbdbd
atmodem: Add Huawei quirk for voice call handling
2010-09-04 23:44:30 +02:00
Denis Kenzior
150edce5c3
phonebook: Trivial style / wording fixes
2010-08-30 17:58:53 -05:00
Thadeu Lima de Souza Cascardo
b452c29d42
atmodem/phonebook: parse text as hexstring
...
Some modems omit the quotes when dumping strings in UCS2. Parsing
them as hexstring already does the hex decoding and accepts missing
quotes.
2010-08-30 17:54:10 -05:00
Denis Kenzior
4292b2dbed
sim: Turn around the order of arguments
...
The void *user argument was first. It should be last instead to be
consistent with the other watch functions.
2010-08-30 14:29:34 -05:00
Denis Kenzior
bdc8d02bc8
atmodem: Default to +CHUP to hangup_all
2010-08-20 16:15:11 -05:00
Marcel Holtmann
773b3a8088
atmodem: Add a few more debug statements for SMS support
2010-08-20 21:53:21 +02:00
Marcel Holtmann
6df7c1a1c6
atmodem: Add a few more debug statements for CBS support
2010-08-20 21:45:45 +02:00
Marcel Holtmann
240e3878ae
atmodem: Add Nokia specific quirk for AT+CGEREP handling
2010-08-20 20:57:30 +02:00
Marcel Holtmann
1313a2fe01
atmodem: Fix copy and paste typo
2010-08-20 16:53:07 +02:00
Marcel Holtmann
cda0fd9eff
atmodem: Enable MBM specific notification for registration and bearer
2010-08-20 16:50:42 +02:00
Marcel Holtmann
205b3b813a
atmodem: Turn a STE GPRS quirk into a MBM and STE quirk
2010-08-20 14:05:18 +02:00
Marcel Holtmann
3aa7e1b18e
atmodem: Add really nasty hack for Nokia AT+COPS bug
...
The Nokia modem returns an invalid response when trying to read the
numeric value for MCC/MNC of the current network.
Control:> AT+COPS?\r
Control:< \r\n+COPS: 0,2,"26207,0\r\n\r\nOK\r\n
The closing " is just missing and this confuses the AT parser. In case
of a Nokia modem skip reading the numerical values for the network.
2010-08-20 03:00:49 +02:00
Marcel Holtmann
667c4eea84
atmodem: No CIND for Nokia data cards
2010-08-20 02:24:53 +02:00
Marcel Holtmann
814c11d872
atmodem: Add vendor quirk for Nokia data cards
2010-08-20 02:24:07 +02:00
Marcel Holtmann
3adf7a07ca
atmodem: Allow missing DCS parameter in USSD result
2010-08-17 00:49:23 +02:00
Marcel Holtmann
10466f6664
atmodem: Add Qualcomm specific USSD quirk
2010-08-16 22:38:38 +02:00
Marcel Holtmann
a79901e26f
atmodem: Add support for storing USSD vendor quirks
2010-08-16 22:21:52 +02:00
Denis Kenzior
3ea7893108
ussd: Use cb_data instead of custom structure
2010-08-16 15:04:26 -05:00
Marcel Holtmann
a8d3e7433a
atmodem: Remove useless NULL checks before g_free
2010-08-16 22:02:01 +02:00
Marcel Holtmann
83a04505bf
netreg: Add quirk for ZTE modem without CIND support
2010-08-16 15:14:17 +02:00
Denis Kenzior
fa822e906e
atutil: Don't try parsing lac/ci when unregistered
2010-08-13 18:29:42 -05:00
Denis Kenzior
ac524be99f
atmodem: Use g_at_chat_clone
2010-08-12 16:40:40 -05:00
Sjur Brændeland
dde0a4ccb5
voicecall: Rename hangup to hangup_active
2010-08-12 11:32:12 -05:00
Andrzej Zaborowski
097640d118
atutil: Parse CMS and CME error codes
2010-08-06 12:04:28 -05:00
Zhenhua Zhang
26efde3d7b
Fix busylooped in ppp_disconnect for huawei modem
...
Huawei modem closes the modem port after PPP disconnect. So the channel
of gatchat is NULL in ppp_disconnect. In such case, we resume the chat
and it causes huawei_disconnect() get called and the gprs context is
removed later.
Before removing this gprs context, we should reply the pending DBus
message to the client.
2010-08-02 14:10:37 -05:00
Denis Kenzior
56ba93f261
phonesim: Introduce End Session notification
2010-07-30 17:19:56 -05:00
Yang Gu
9a71ae891b
atmodem: phonesim proactive command notification
2010-07-13 09:55:02 -05:00
Yang Gu
c603efbf51
atmodem: Make fetch command function as external
2010-07-13 09:51:33 -05:00
Andrzej Zaborowski
79372d26f5
atmodem: Make sim operations return sim error codes.
2010-07-08 14:27:33 -05:00
Andrzej Zaborowski
b450efafec
atmodem: Don't unregister *EPEV in *EPEV handler.
...
Handlers are called when looping over the unsolicited responses hash,
registering or unregistering modifies that hash and confuses glib.
2010-06-29 13:59:13 -05:00
Zhenhua Zhang
8246463ef3
atmodem: Update to the new PPP API
2010-06-28 10:19:32 -05:00
Denis Kenzior
52da988816
atmodem: Add CGSMS support to sms driver
2010-06-25 14:25:46 -05:00
Denis Kenzior
7f1a923ebf
hso: Don't query tech if not registered or roaming
...
{NetworkRegistration} [/hso0] LocationAreaCode = 34591
{NetworkRegistration} [/hso0] CellId = 5903759
{NetworkRegistration} [/hso0] Strength = 32
{NetworkRegistration} [/hso0] Strength = 22
{PrimaryDataContext} [/hso0/primarycontext1] Settings =
dbus.Dictionary({}, signature=dbus.Signature('sv'), variant_level=1)
{PrimaryDataContext} [/hso0/primarycontext1] Active = 0
{DataConnectionManager} [/hso0] Attached = 0
{NetworkRegistration} [/hso0] Status = searching
{NetworkRegistration} [/hso0] Technology = umts <--- Oops
{NetworkOperator} [/hso0/operator/26201] Status = available
{NetworkRegistration} [/hso0] Name =
{NetworkRegistration} [/hso0] Status = registered
{NetworkRegistration} [/hso0] LocationAreaCode = 35342
{NetworkRegistration} [/hso0] CellId = 5903759
{NetworkRegistration} [/hso0] Technology = edge
2010-06-24 20:54:36 -05:00
Denis Kenzior
054ed2653a
atmodem: Support CDS indicators for MBM
...
MBM does not advertise support for CNMA, yet only supports CDS style
notifications which do not need to be acknowledged.
2010-06-21 15:21:40 -05:00
Denis Kenzior
681aaef1ab
atmodem: Use a switch/case in sim.c
2010-06-18 14:24:18 -05:00
Andrzej Zaborowski
a2dc7dfee0
atmodem: Add PIN entry quirk for mbm.
...
Wait for *EPEV unsolicited response after PIN entered, otherwise the
next AT+CPIN? query still returns the old value for a fraction of a
second and ofono gets stuck until the next PIN entry attempt.
2010-06-18 14:14:39 -05:00
Denis Kenzior
412ed596b9
Fix: potential to crash in atmodem
...
Some callbacks in call-meter were assuming that a modem follows 27.007
and actually returns a string. Some modems don't return a string that
is properly formatted (e.g. in quotes). The strtol was thus accessing
uninitialized memory and crashing ofono.
2010-06-17 04:26:16 -05:00
Denis Kenzior
5a1c7eef08
atmodem: Couple tiny style fixes
2010-06-14 12:46:11 -05:00
Daniel Wagner
b7401489b5
Report cell technology capability for Option HSO modems
...
Option modem use OCTI and OUWCTI commands
for reporting the cell capability.
2010-06-14 12:46:11 -05:00
Marcel Holtmann
f566935f7a
Fix memory leak introduced by HSO quirk
2010-06-13 11:46:29 +02:00
Marcel Holtmann
66c50b6a72
Add nasty quirk to allow HSO devices to read network code length
...
The AT+CRSM=192 commands are failing on HSO devices and thus it might
be needed to return its details from a predefined database. Start with
testing this for reading the network code length.
2010-06-13 08:10:13 +02:00
Denis Kenzior
76dc7e4acd
atmodem: Shutdown ppp cleanly on remove
...
There is a race condition from udev / kernel when a USB dongle is
removed. Sometimes all ports are removed first (and the io channels for
those ports are signaled as hupped) while other times the udev remove
event fires first.
If the latter happens, then gprs_context remove is called with a
potentially live ppp object. This patch shuts it down cleanly.
2010-06-11 09:20:05 -05:00
Denis Kenzior
c3dddcb5b3
atmodem: Always unref ppp when context is down
2010-06-11 09:20:05 -05:00
Marcel Holtmann
45c1bcb1d9
Disable CNMA support for Novatel based devices
2010-06-10 21:06:48 -07:00
Denis Kenzior
6c8d2f0e5b
atmodem: Allow ME & SM for status report store
2010-06-10 22:23:05 -05:00
Denis Kenzior
a128cbff8b
atmodem: Force CDSI delivery for Novatel devices
2010-06-10 20:21:33 -05:00
Denis Kenzior
d8e7a7b5e3
atmodem: Add support for status report via CDSI
2010-06-10 20:13:50 -05:00
Denis Kenzior
39391cf32b
atmodem: Use atutil based functions
2010-06-10 20:08:10 -05:00
Denis Kenzior
1b36d1cd43
atmodem: Add utility for parsing CMTI/CDSI/CBMI
2010-06-10 20:06:26 -05:00
Denis Kenzior
5a883d1c76
atmodem: Register for notifications after CMGL
2010-06-10 18:43:30 -05:00
Denis Kenzior
150c1e753f
atmodem: Split out the +CPMS sender
...
Just before sending a CMGR for +CMTI notification, use need to
optionally send a CPMS to select the proper storage. This should be
done in a separate function for potential re-use by CDSI
2010-06-10 18:41:29 -05:00
Marcel Holtmann
2aeb7df627
And some more minor coding style cleanup in SMS driver
2010-06-09 19:13:57 -07:00
Marcel Holtmann
1125ffa7f6
Fix coding style for one comment in SMS driver
2010-06-09 19:12:24 -07:00
Marcel Holtmann
a774d9ed49
Add quirk for Qualcomm issues with setting CBS topic ranges
2010-06-09 18:40:59 -07:00
Marcel Holtmann
88d083c4fd
Coding style fix for the PIN type table
2010-06-09 18:23:05 -07:00
Denis Kenzior
1d8bb1bab6
atmodem: Fix CPUC parser
...
Apparently some modems are extra stupid:
AT+CPUC?\r
\r\n+CPUC: \r\nOK\r\n
So if we fail to parse the response, return an error
2010-06-07 20:36:40 -05:00
Denis Kenzior
588b689d2b
netreg: whitespace style
2010-06-07 19:06:57 -05:00
Denis Kenzior
6a480bb861
netreg: Add Huawei RSSI unsolicited callback
2010-06-07 19:06:36 -05:00
Denis Kenzior
11c8156543
atmodem: Optimize cops queries
...
This patch is meant to do two things:
- Some modems, like the Novatel, report bogus operator information when
not registered, as opposed to simply returning empty strings. In this
case we're a little bit more explicit about checking the returned
mcc/mnc string
- If we determine that the mcc/mnc string is bogus, we don't schedule
the alphanumeric cops query and return early.
2010-06-07 12:57:50 -05:00
Marcel Holtmann
45ba3b9a7c
Add special SMS handling for Huawei based devices
2010-06-06 18:21:30 -07:00
Marcel Holtmann
f1c209d973
Move AT_ODO quirk into HSO driver instead of network registration
2010-06-06 15:27:34 -07:00
Marcel Holtmann
5340901ad3
Use unquoted strings for cell information of Novatel devices
2010-06-06 13:14:57 -07:00
Marcel Holtmann
45bf4cf396
Add support for handling CNTI=0 request with Novatel devices
2010-06-06 13:12:37 -07:00
Denis Kenzior
2b1c433daa
hso: Enable OUWCTI notifications
2010-06-04 14:21:58 -05:00
Denis Kenzior
56d14e1fe1
atmodem: Put some common code into a utility
2010-06-04 14:21:57 -05:00
Pasi Miettinen
6220c01f4a
Change in at_cds_notify for status report
2010-06-04 14:21:57 -05:00
Marcel Holtmann
50a7d3d741
Send OWCTI query when bringing up Option based devices
2010-06-04 12:17:35 -07:00
Marcel Holtmann
1f5432abd6
Use AT_OUWCTI instead of AT_OWCTI as expected
...
The Option firmware is so funny. It has a typo in the AT command :)
2010-06-04 12:13:27 -07:00
Marcel Holtmann
a4fda8a378
Enable Option specific OWCTI unsolicited notifications
2010-06-04 12:08:21 -07:00
Marcel Holtmann
48d210bac6
The ack pdu support is not working on Novatel or Option devices
2010-06-03 18:15:27 -07:00
Marcel Holtmann
23d97f2c0a
Quirk SMS handling for Novatel based devices
...
The Novatel based devices with Qualcomm chips seems to have various
problems. First they advertise CNMI mode 2, but don't support it. And
second they don't support CNMA acknowledgement with a PDU. So fall back
to acks without PDU.
2010-06-03 08:54:08 -07:00
Marcel Holtmann
22d0cc7df2
Add special quirk for Novatel based devices
2010-06-03 01:20:47 -07:00
Marcel Holtmann
24fd3e2f15
The default PPP netmask should be 255.255.255.255
2010-06-03 00:00:42 -07:00
Kalle Valo
125c7c392f
atmodem: fix crash during context deactivation
...
Ofono either crashed or busy looped with my Huawei E1552 3G modem when I
tried to deactivate GPRS context. The reason was that gcd->chat was
unreferenced already in setup_ppp() but the chat was still accessed
later in at_gprs_deactivate_primary().
To fix the problem, change the logic instead to suspend chat session
for PPP and resume when PPP has disconnected. Now it doesn't crash
anymore.
Deactivation still doesn't work properly with Huawei E1552, and most
probably with other Huawei modems, because the modem hangs up the chat
line after PPP deactivation. This needs to be fixed separately. The
workaround is to reboot the modem, for example physically unplug and plug
it in again.
2010-05-26 12:34:07 -05:00
Kalle Valo
bf7243eda4
atmodem: refactor context deactivation
...
The old way of using CGACT is no longer needed. It is enough
that we shutdown PPP. Recommended by Denis.
2010-05-26 12:32:03 -05:00
Denis Kenzior
96480e44b2
netreg: Fix crash when CREG is reported too early
...
If we register for CREG notifications before the netreg atom is
registered (e.g. in MBM due to CIND queries) we crash if the CREG
notification arrives before the CIND is queried.
2010-05-19 23:33:17 -05:00
Kalle Valo
36e9803cdc
huawei: add gprs context
...
Tested with Huawei E1552 HSDPA USB stick using a finnish Saunalahti prepaid
SIM.
2010-05-19 23:09:21 -05:00
Kalle Valo
bf5b31e8a8
Move report_signal_strength to atutil
...
The function is needed in two different places, better to move it
to atutil.h.
2010-05-19 23:08:36 -05:00
Andrzej Zaborowski
5e11442ef7
atmodem: Pass allowed response prefixes to gatchat
...
Not doing this creates a race condition where any notification
comming in in the middle of a sequence of commands may be counted
as a response to one of the commands and get lost.
2010-05-12 12:18:33 -05:00
Denis Kenzior
dea4c88906
atmodem: Fix crashes related to unremoved timeouts
...
Any timeouts set must be removed using g_source_remove. Failure to do
so results in sigsegvs when the modem is randomly removed during the
initialization cycle.
2010-05-11 09:10:58 -05:00
Denis Kenzior
5343272bc1
atmodem: Port gprs-context to new PPP api
2010-04-30 15:32:54 -05:00
Denis Kenzior
b5f81f4012
Fix: For now calling g_at_chat_unref is fine
...
Same as g_at_chat_shutdown in this case
2010-04-28 17:27:33 -05:00
Denis Kenzior
cc0ffd1720
Rename ofono_atmodem_poll_enable
...
This is not official oFono API
2010-04-15 16:49:43 -05:00
Andrzej Zaborowski
14bcca32c0
Implement STATUS polling in atmodem driver.
2010-04-15 16:49:43 -05:00
Denis Kenzior
f1b61640f7
Fix: should be unsigned char not guint8
2010-04-15 16:49:43 -05:00
Denis Kenzior
110de93f4c
Style: Proper indentation
2010-04-15 16:49:43 -05:00
Andrzej Zaborowski
b34c35d822
Add AT driver for STK atom.
2010-04-15 16:49:42 -05:00
Andrzej Zaborowski
aad4d0de78
Add Sim Toolkit atom
...
- Add ofono_stk atom in stk.c
- Move envelope command from sim driver to stk driver
2010-04-15 16:49:40 -05:00
Denis Kenzior
389eb70dc8
Initial implementation of the PPP gprs context
2010-03-31 18:49:39 -05:00
Denis Kenzior
022359ba72
Style: braces are not needed
2010-03-29 00:18:04 -05:00
Denis Kenzior
1fb6801672
Fix: Use tech reported by MBM erinfo
2010-03-29 00:09:10 -05:00
Denis Kenzior
5780fdb51f
Fix: Handle 2 and 3 argument versions of ERINFO
2010-03-28 23:58:37 -05:00
Denis Kenzior
21dd4f040a
Move erinfo notify to atmodem netreg driver
2010-03-28 23:49:57 -05:00
Denis Kenzior
8b33129bac
Add phonesim vendor quirk
2010-03-26 23:00:28 -05:00
Denis Kenzior
d994ed1111
Add mbm vendor
2010-03-26 23:00:28 -05:00
Denis Kenzior
14f296075e
Refactor: Use CIND as default strength reporting
...
Many vendors seem to use CIND instead of CSQ / proprietary extensions.
2010-03-26 23:00:28 -05:00
Denis Kenzior
36a8801115
Update atmodem gprs driver to the new API
2010-03-26 23:00:28 -05:00
Denis Kenzior
813470a025
Fix: memory leak
2010-02-10 16:41:31 -06:00
Denis Kenzior
6d28f82dc1
Add Wavecom's quirky CPIN handling
2010-02-08 16:13:43 -06:00
Denis Kenzior
c98b951fe6
Refactor: Remove atutil dump_response
...
No longer needed now that we have nice AT command tracing using
OFONO_AT_DEBUG=1
2010-02-08 12:28:23 -06:00
Denis Kenzior
7f9a9b0cdc
Fix: Don't use ofono_debug directly in plugins
2010-02-08 12:09:01 -06:00
Denis Kenzior
1721f81fe9
Fix: Use snprintf instead of sprintf in atmodem
2010-02-05 11:59:24 -06:00
Denis Kenzior
d3c2535fae
Fix: Dead Assignments
2010-02-04 00:14:49 -06:00
Denis Kenzior
ae25d1e910
Fix: Ignore CBM pdus bigger than 88 bytes
2010-02-02 11:13:22 -06:00
Marcel Holtmann
7d7a61f933
Fix some leftover oudated copyrights
2010-01-28 22:10:51 +01:00
Sjur Brændeland
040e799665
Add STE modem support for GPRS and network registration
2010-01-25 20:55:10 +01:00
Sjur Brændeland
c664f80f22
Add at_util_call_compare_by_id function
2010-01-25 20:53:57 +01:00
Denis Kenzior
445fc378b5
Fix: Support devices with CSCB mode 0 only
...
MBM devices do not support CSCB mode 1 (remove topics). It is thus
necessary to use mode 0 and sending an empty topic list in order to turn
off all topics. This patch will first query the CSCB modes supported by
the hardware. If mode 1 is supported, then the old behavior is used,
otherwise the new behavior is used.
2010-01-20 22:07:51 -06:00
Denis Kenzior
652825eb71
Style: Don't go over 80 characters per line
2010-01-20 10:14:01 -06:00
Jussi Kukkonen
ebe8904f39
Add quirk for cid and lac handling for Huawei
2010-01-20 10:09:54 -06:00
Denis Kenzior
9bed04ca2f
Style: Trailing whitespace & extra lines
2010-01-12 17:54:37 -06:00
Marcel Holtmann
144080e749
Update copyright information
2010-01-01 17:00:10 -08:00
Denis Kenzior
6cb038fafb
Style: Repeat for drivers
2009-12-17 21:45:40 -06:00
Denis Kenzior
79c0d4c779
Fix: The extra 00 at the end isn't necessary
2009-12-17 21:45:39 -06:00
Denis Kenzior
f74b300a49
Fix: Use capitals for hex-encoded pdus
2009-12-17 21:45:38 -06:00
Denis Kenzior
5fb5a2ceea
Fix: Make sure we don't leak under any conditions
2009-12-17 21:45:38 -06:00
Denis Kenzior
b1cc0bc184
Simplify previous patch
2009-12-17 21:45:38 -06:00
Denis Kenzior
e27508f71a
Implementat SIM envelope in atmodem driver
2009-12-17 21:45:38 -06:00
Marcel Holtmann
b939d5e8d7
Activate Speech Service for Option devices
2009-12-10 02:56:16 +01:00
Marcel Holtmann
7546557469
Query current state of Option specific settings
2009-12-10 02:55:53 +01:00
Denis Kenzior
62ba3b30d2
Use at_util_parse_reg in netreg driver
2009-12-09 12:50:52 -06:00
Denis Kenzior
fe02d6bc45
Use new at_util_parse_reg in gprs driver
2009-12-09 12:50:22 -06:00
Denis Kenzior
66d1e90814
Add utilities to parse CREG/CGREG
...
These are nearly identical and can be shared between gprs/netreg
2009-12-09 12:49:43 -06:00
Denis Kenzior
2297bc926d
Style: Fix some remaining style issues in atmodem
2009-12-09 02:46:33 -06:00
Denis Kenzior
07bdfc6bce
Harden the CGREG parsing function
...
Sometimes the CGREG query and CGREG unsolicited notification get
intermixed. Since they have the same prefix, GAtChat clumps them
together. Make sure the parser skips the unsolicited notification.
2009-12-08 03:43:54 -06:00
Denis Kenzior
7c7f265ebc
Add experimental Option tech parsing
...
Option seems to implement their own commands for network technology
reporting. This is a first attempt to implement this for data gathering
purposes.
2009-12-07 17:14:57 -06:00
Denis Kenzior
5b12b25ce6
Add support for HSO signal quality reporting
2009-12-07 17:14:41 -06:00
Denis Kenzior
8b496ec7eb
Add Option HSO quirk
2009-12-07 17:14:41 -06:00
Denis Kenzior
e50efac7cc
Fix: Sometimes Option modems don't return info
...
When querying CGMI the Option modems sometimes just return OK, with no
manufacturer information given.
2009-12-07 17:14:41 -06:00
Denis Kenzior
ddad4d8067
Refactor: Calypso unsolicited signal strength
2009-12-07 17:14:40 -06:00
Zhenhua Zhang
62df556f28
Fix release clcc_source when voicecall is removed
...
Release the timer to avoid invoking the callback function after
voicecall driver is removed.
2009-12-04 16:52:32 -06:00
Denis Kenzior
0fbaed38aa
Refactor: Run CLCC when initializing
...
When voicecall atom is initialized, we should run a CLCC query to
populate our call list. This also notifies the core of the new calls
2009-12-04 16:52:31 -06:00
Denis Kenzior
770586bfb7
Update atmodem voicecall driver to new world order
2009-12-04 16:52:31 -06:00
Denis Kenzior
7fa99301a0
Fix: Style
2009-12-04 16:52:31 -06:00
Denis Kenzior
341c631cd1
Remove: at_util callid APIs are no longer necessary
2009-12-04 16:52:31 -06:00
Denis Kenzior
55572b6e69
Style: Use unsigned int instead of unsigned
2009-12-01 12:42:23 -06:00
Zhenhua Zhang
f3fe75553a
Add mpty field to ofono_call
...
A field 'mpty' is added to ofono_call so that we can know
whether the call belongs to multiparty call or not. According
to 27.007 7.18, it is a defined return value of AT+CLCC.
2009-11-23 09:04:48 +01:00
Denis Kenzior
efd34778d1
Add CALLBACK_WITH_SUCCESS
2009-11-18 18:07:11 -06:00
Denis Kenzior
cbebad0cc7
Fix: Report the current operator as current
2009-11-18 13:02:02 -06:00
Denis Kenzior
38ae7bd9aa
Update the AT modem driver to the new API
2009-11-17 18:54:46 -06:00
Denis Kenzior
bfc9eb302f
Fix: Ignore repeated CCWAs in atmodem as well
2009-11-16 10:17:12 -06:00
Denis Kenzior
1a8dd438b2
Make sure the atmodem handles ATD properly
...
The driver must set any existing active calls to held
2009-11-13 15:34:41 -06:00
Zhenhua Zhang
9b084e9656
Use at_util_parse_clcc in atmodem
...
Replace parse_clcc by at_util_parse_clcc in atmodem voicecall.
2009-11-12 11:23:05 -06:00
Zhenhua Zhang
20e9ff8551
Add parse_clcc into atutil.c
...
So that it could be shared by atmodem and hfpmodem.
2009-11-12 11:22:31 -06:00
Zhenhua Zhang
372edf4f21
Add call_compare_by_phone_number utility function
...
This utility will be used by HFP voicecall driver to compare
two calls. In some hardware, the call index may be shift when
a call transitions from waiting to incoming state (e.g. all other
held and active calls are released)
2009-11-11 16:24:54 -06:00
Denis Kenzior
95aafed445
Fix: Set data to NULL in drivers
2009-11-11 15:59:01 -06:00
Denis Kenzior
5335d2deb1
Fix: Don't leak data in SIM atom driver
2009-11-11 15:58:45 -06:00
Denis Kenzior
27e32f12cd
Fix: Rename G1 quirk to QUALCOMM_MSM
2009-11-10 16:29:23 -06:00
Andrzej Zaborowski
d6c3a513c6
Work around Palm Pre SIM file reading quirk.
...
I'm not sure if MSM is not a too generic name but it seems the G1's
Qualcomm MSM suffers from similar problems.
2009-11-10 16:29:23 -06:00
Andrzej Zaborowski
3187db9352
Fix +CGEV: parsing
2009-11-10 12:48:08 -06:00
Andrzej Zaborowski
2888e7fc13
Accept ranges in +CSMS responses.
2009-11-10 12:45:11 -06:00
Andrzej Zaborowski
49c2f7b2e7
Fix: Don't bail if CREG/CGREG mode=2 is unsupported
2009-11-10 12:40:21 -06:00
Denis Kenzior
673a0eaae1
Update the atmodem driver to the new API
2009-10-29 15:29:41 -05:00
Zhenhua Zhang
57aaf9813f
Refactor: Move alloc/release id to atutil.c
2009-10-28 17:31:44 -05:00
Zhenhua Zhang
17903940c5
Refactor: Move & Rename functions to atutil.c
...
Move and rename call_compare and call_compare_by_status to atutil.c.
These will be utilized by other drivers, including hfpmodem.
2009-10-28 17:30:02 -05:00
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
Denis Kenzior
1fb9ecca46
Add vendor flag capability to phonebook
2009-09-01 18:14:58 -05:00
Denis Kenzior
271b042488
Add vendor flag capability to netreg
2009-09-01 18:14:58 -05:00
Denis Kenzior
c7d35dd039
Add vendor flag capability to devinfo
2009-09-01 18:14:58 -05:00
Denis Kenzior
933f803967
Add vendor flag to call-settings
2009-09-01 18:14:58 -05:00
Denis Kenzior
390bd82109
Add vendor parameter to call-meter
2009-09-01 18:14:57 -05:00
Denis Kenzior
7ee954b28a
Add vendor flag to call-forwarding
2009-09-01 18:14:57 -05:00
Denis Kenzior
15b1a733b0
Introduce vendor parameter to call-barring
2009-09-01 18:14:57 -05:00
Marcel Holtmann
70aab2a826
Convert to fully non-recursive build system
2009-08-24 23:49:40 -07:00
Denis Kenzior
6ac46cee4f
Remove org.ofono.at.Manager
2009-08-21 19:25:51 -05:00
Denis Kenzior
da5adf366a
Remove unused function
2009-08-21 19:25:51 -05:00
Denis Kenzior
e0ff90e6da
Rename ofono_modem_*_userdata
...
Rename ofono_modem_get_userdata to ofono_modem_get_data
Rename ofono_modem_set_userdata to ofono_modem_set_data
For consistency with other drivers
2009-08-20 18:19:21 -05:00
Denis Kenzior
339ac855c0
Fix unused variable pbd
2009-08-20 15:39:12 -05:00
Denis Kenzior
d724bc727a
Fix unused variable chat
2009-08-20 15:39:11 -05:00
Denis Kenzior
7b30ca7384
Fix implicit declaration of ofono_netreg_create
2009-08-20 15:39:11 -05:00
Denis Kenzior
8b665b50db
Update the AT modem driver to the new devinfo api
2009-08-20 12:48:29 -05:00
Denis Kenzior
8c92e3dd18
Remove modem member from cb_data
2009-08-19 18:35:08 -05:00
Denis Kenzior
e8e6d519fe
Fix release specific not reporting proper reason
...
The proper disconnect reason was not being reported in the at modem
voicecall plugin
2009-08-19 18:35:08 -05:00
Denis Kenzior
c5bee0bb6b
Remove poll_clcc variable
...
The reference implementation will always poll. If a modem vendor has
extensions for call status reporting, then those should be used in a
separate driver
2009-08-19 18:35:08 -05:00
Denis Kenzior
261c31de1c
Update the AT modem voicecall driver for new API
2009-08-19 18:35:08 -05:00
Denis Kenzior
73bba4b83b
Remove dead code in voicecall at driver
2009-08-19 18:35:08 -05:00
Denis Kenzior
7ad2eb2342
Update netreg AT modem driver to the new API
2009-08-19 18:35:07 -05:00
Denis Kenzior
43d1769ce8
Port AT modem driver to the new MWI api
2009-08-19 18:35:07 -05:00
Denis Kenzior
f46a36dfd8
Remove unneeded function call
2009-08-19 18:35:06 -05:00