Age | Commit message (Collapse) | Author | Files | Lines |
|
|
|
HFP voicecall driver uses AT+CIEV indicator to notify call status
update according to Bluetooth HFP spec v1.5. This patch only adds single
call support.
|
|
|
|
Move and rename call_compare and call_compare_by_status to atutil.c.
These will be utilized by other drivers, including hfpmodem.
|
|
The standard only specifies that the context might have been detached by
the network / mobile equipment. Not attached.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Keep the name specific to GSM, other implementations will probably
require their own interfaces
|
|
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).
|
|
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.
|
|
|
|
Be more consistent with other drivers
|
|
|
|
Do not use magic numbers unless strictly necessary
|
|
We already know the indicators we're interested in from the
specification, malloc/free-ing the indicator names is thus pointless.
Instead save off the indicator index positions in an array. Parse the
current values instead of storing the unparsed list.
|
|
|
|
|
|
Don't decode by hand, use existing function
|
|
|
|
SMS storage is frequently empty at startup, if this is the case, do not
use ofono_error, use ofono_debug instead.
|
|
Also make sure we don't read beyond end of the string.
|
|
|
|
|
|
Implementing all the voicecall methods. Tested with Nokia 2008 modems.
- problems in call creation are probably not reported properly
- deflect not implemented in modem, not properly tested
TODO: Clean up style issues and align with other drivers.
|
|
|
|
|
|
Always initialize iterators.
Try to avoid pointer arithmetics on NULL; in other words, move all pointer
arithmetics inside g_isi_sb_iter_init().
There are 4 different ways for representing sub blocks in ISI message:
- 8-bit sub_blocks count, 8-bit sub_block_id/sub_block_len
- 16-bit sub_blocks count, 8-bit sub_block_id/sub_block_len
- 8-bit sub_blocks count, 16-bit sub_block_id/sub_block_len
- 16-bit sub_blocks count, 16-bit sub_block_id/sub_block_len
The compact form g_isi_sb_iter_init() supports 8-bit sub_block count before
start of the sub blocks themselves and 8-bit sub_block_id and sub_block_len.
The full form g_isi_sb_iter_init_full() with explicit longhdr and sub_block
count supports all other cases.
|
|
In the absence of low-level access to the SIM card, we're adding this
hack to expose the SPN using ISI's high-level access instead.
|
|
|
|
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
|
|
|
|
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
|
|
|
|
|
|
|
|
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.
|
|
27.007 does not define an enumeration for SIM PIN/PUK values. This
should be handled by ofono enum instead
|
|
|
|
|
|
|
|
This adds checking whether PIN is required during SIM initialisation and
delaying the sim ready notifications until after correct PIN is given.
|