Commit Graph

129 Commits

Author SHA1 Message Date
Denis Kenzior 1c3d41fafc Fix: Don't drop dialing calls when call=0 signaled 2009-11-16 11:47:42 -06:00
Denis Kenzior 77b3048325 Fix: Don't double-swap calls when 3-way dialing 2009-11-16 11:23:48 -06:00
Denis Kenzior 534d7f89d2 Fix: Update the status to held properly 2009-11-16 11:19:23 -06:00
Denis Kenzior 957fc90d37 Refactor: Move repeated code to a function 2009-11-16 11:15:31 -06:00
Zhenhua Zhang 5e1067b8a2 Fix: Handle callsetup=0 when no waiting or dialing call
When call=1 and callsetup=0, if no waiting or dialing call, the call
is active and no need to notify status change.
2009-11-16 11:09:21 -06:00
Zhenhua Zhang 2cbb307013 Fix: Ignore repeated CCWA notify if have
Some phone like iPhone repeats CCWA notify. So we need to ignore
it when we already have waiting call.
2009-11-16 10:17:05 -06:00
Denis Kenzior ea29ea9bd5 Fix: Set current element properly
When removing an element from the list, the current iterator was not
being updated properly.  Most likely leading to double free.
2009-11-16 10:09:48 -06:00
Denis Kenzior 83ee938312 Style: Spacing 2009-11-16 10:02:52 -06:00
Denis Kenzior d5ae0e557f Add three-way calling support to HFP voice driver 2009-11-13 22:47:10 -06:00
Zhenhua Zhang e620a058fb Fix: Fill in the phone number info for outgoing call
There're two cases of outgoing call: dial from HF or dial from
phone. We could receive callsetup=2 indicator in both case. So
adding AT+CLCC query to sync the outgoing call.

In the first case, we only need to sync the phone number.  In
the second case, the phone is dialing from phone and we know
nothing. Create a new call and notify the core.

If phone does not support AT+CLCC and there's no call dialing
from HF, we fake a new call for it.
2009-11-13 11:15:13 -06:00
Zhenhua Zhang 3003ebd066 Fix: Set data to NULL in hfpmodem drivers 2009-11-12 11:21:00 -06:00
Zhenhua Zhang c7fd6d13b6 Style: Use 1 instead of 0x1 2009-11-11 16:27:26 -06:00
Zhenhua Zhang 28c6bbb558 Add call volume support for hfpmodem
The call volume driver listens the speaker volume and microphone
gain from the AG. It also allow to synchronze the speaker and
microphone volume changes with the AG through AT+VGS and AT+VGM.

Volume level synchronization from HFP spec 1.5 Section 4.28.2
is performed on startup.
2009-11-11 15:53:55 -06:00
Denis Kenzior c63a0413cd Fix: Minor style issues 2009-11-03 11:57:43 -06:00
Gustavo F. Padovan 1acd7f8b75 Create network registration driver for hfpmodem
This driver handles phone informations about registration status, signal
strength and roaming status listening +CIEV commands.  It also gets the
Network Operator name with +COPS commands.
2009-11-03 11:49:35 -06:00
Zhenhua Zhang ff2a8e6f7c Fix: The use of cind_val / cind_pos was wrong 2009-11-03 11:26:08 -06:00
Zhenhua Zhang 2185106b32 Refactor: Get rid of mpty_call variable 2009-11-03 11:22:23 -06:00
Zhenhua Zhang c40657216d Fix: Remove some dead code 2009-11-03 11:19:39 -06:00
Denis Kenzior 30cc6d6f4b Fix: This hack is no longer necessary 2009-10-28 23:40:04 -05:00
Denis Kenzior b3dccdfd54 Fix: Don't pass the indexes
These can be obtained inside the function anyway
2009-10-28 19:23:25 -05:00
Denis Kenzior 2c5ea9d4ee Fix: No need to set this to NULL 2009-10-28 17:40:35 -05:00
Denis Kenzior c41a8ced81 Cleanup: Fixup style 2009-10-28 17:40:06 -05:00
Zhenhua Zhang 4a36fc7c82 Add voicecall driver for Bluetooth HFP
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.
2009-10-28 17:33:33 -05:00
Zhang, Zhenhua fa10070bf9 Replace Glib type with standard C type 2009-10-23 13:40:49 -05:00
Denis Kenzior f726596860 Rename: drivers/hfpmodem/hfp.[ch] to hfpmodem.[ch]
Be more consistent with other drivers
2009-10-19 22:13:19 -05:00
Denis Kenzior c4594d2543 Fix: Make 'make distcheck' happy again 2009-10-19 17:07:23 -05:00
Denis Kenzior 5635703141 Refactor: Setup the HF features bitmap
Do not use magic numbers unless strictly necessary
2009-10-19 16:59:44 -05:00
Denis Kenzior 0ca88b36e7 Refactor: Don't store indicator names
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.
2009-10-19 16:58:13 -05:00
Zhenhua Zhang fb0c157c11 Add initial glue code for hfp driver 2009-10-19 15:48:07 -05:00