* [PATCH 1/5] doc: Extend Features property
2014-03-17 15:47 [PATCH 0/5] hfp: Extend Handsfree Features to three way calling and CHLD properties Krzysztof Wilk
@ 2014-03-17 15:47 ` Krzysztof Wilk
2014-03-17 15:47 ` [PATCH 2/5] hfp: Define hfp_ag_chld_feature Krzysztof Wilk
` (4 subsequent siblings)
5 siblings, 0 replies; 7+ messages in thread
From: Krzysztof Wilk @ 2014-03-17 15:47 UTC (permalink / raw)
To: ofono
[-- Attachment #1: Type: text/plain, Size: 984 bytes --]
From: Krzysztof Wilk <Krzysztofx.Wilk@intel.com>
---
doc/handsfree-api.txt | 6 ++++++
1 file changed, 6 insertions(+)
diff --git a/doc/handsfree-api.txt b/doc/handsfree-api.txt
index d6ffca5..94e9a8f 100644
--- a/doc/handsfree-api.txt
+++ b/doc/handsfree-api.txt
@@ -45,6 +45,12 @@ Properties array{string} Features [readonly]
"voice-recognition"
"attach-voice-tag"
"echo-canceling-and-noise-reduction"
+ "three-way-calling"
+ "release-all-held"
+ "release-specified-active-call"
+ "private-chat"
+ "create-multiparty"
+ "transfer"
boolean InbandRinging [readonly]
--
1.7.11.7
Intel GmbH
Dornacher Strasse 1
85622 Feldkirchen/Muenchen, Deutschland
Sitz der Gesellschaft: Feldkirchen bei Muenchen
Geschaeftsfuehrer: Christian Lamprechter, Hannes Schwaderer, Douglas Lusk
Registergericht: Muenchen HRB 47456
Ust.-IdNr./VAT Registration No.: DE129385895
Citibank Frankfurt a.M. (BLZ 502 109 00) 600119052
^ permalink raw reply related [flat|nested] 7+ messages in thread* [PATCH 2/5] hfp: Define hfp_ag_chld_feature
2014-03-17 15:47 [PATCH 0/5] hfp: Extend Handsfree Features to three way calling and CHLD properties Krzysztof Wilk
2014-03-17 15:47 ` [PATCH 1/5] doc: Extend Features property Krzysztof Wilk
@ 2014-03-17 15:47 ` Krzysztof Wilk
2014-03-17 15:47 ` [PATCH 3/5] include: Declaration function to set CHLD features Krzysztof Wilk
` (3 subsequent siblings)
5 siblings, 0 replies; 7+ messages in thread
From: Krzysztof Wilk @ 2014-03-17 15:47 UTC (permalink / raw)
To: ofono
[-- Attachment #1: Type: text/plain, Size: 1084 bytes --]
From: Krzysztof Wilk <Krzysztofx.Wilk@intel.com>
---
src/hfp.h | 11 +++++++++++
1 file changed, 11 insertions(+)
diff --git a/src/hfp.h b/src/hfp.h
index 0d36ae5..94ea4f7 100644
--- a/src/hfp.h
+++ b/src/hfp.h
@@ -45,6 +45,17 @@ enum hfp_hf_feature {
HFP_HF_FEATURE_CODEC_NEGOTIATION = 0x80,
};
+/* HFP AG supported call hold and multiparty services bitmap. Bluetooth HFP 1.6 spec page 76 */
+enum hfp_ag_chld_feature {
+ HFP_AG_CHLD_0 = 0x1,
+ HFP_AG_CHLD_1 = 0x2,
+ HFP_AG_CHLD_1x = 0x4,
+ HFP_AG_CHLD_2 = 0x8,
+ HFP_AG_CHLD_2x = 0x10,
+ HFP_AG_CHLD_3 = 0x20,
+ HFP_AG_CHLD_4 = 0x40,
+};
+
enum hfp_sdp_hf_features {
HFP_SDP_HF_FEATURE_ECNR = 0x1,
HFP_SDP_HF_FEATURE_3WAY = 0x2,
--
1.7.11.7
Intel GmbH
Dornacher Strasse 1
85622 Feldkirchen/Muenchen, Deutschland
Sitz der Gesellschaft: Feldkirchen bei Muenchen
Geschaeftsfuehrer: Christian Lamprechter, Hannes Schwaderer, Douglas Lusk
Registergericht: Muenchen HRB 47456
Ust.-IdNr./VAT Registration No.: DE129385895
Citibank Frankfurt a.M. (BLZ 502 109 00) 600119052
^ permalink raw reply related [flat|nested] 7+ messages in thread* [PATCH 3/5] include: Declaration function to set CHLD features
2014-03-17 15:47 [PATCH 0/5] hfp: Extend Handsfree Features to three way calling and CHLD properties Krzysztof Wilk
2014-03-17 15:47 ` [PATCH 1/5] doc: Extend Features property Krzysztof Wilk
2014-03-17 15:47 ` [PATCH 2/5] hfp: Define hfp_ag_chld_feature Krzysztof Wilk
@ 2014-03-17 15:47 ` Krzysztof Wilk
2014-03-17 15:47 ` [PATCH 4/5] hfp: Add CHLD features to drver data Krzysztof Wilk
` (2 subsequent siblings)
5 siblings, 0 replies; 7+ messages in thread
From: Krzysztof Wilk @ 2014-03-17 15:47 UTC (permalink / raw)
To: ofono
[-- Attachment #1: Type: text/plain, Size: 1058 bytes --]
From: Krzysztof Wilk <Krzysztofx.Wilk@intel.com>
---
include/handsfree.h | 2 ++
1 file changed, 2 insertions(+)
diff --git a/include/handsfree.h b/include/handsfree.h
index dde7000..a419884 100644
--- a/include/handsfree.h
+++ b/include/handsfree.h
@@ -54,6 +54,8 @@ struct ofono_handsfree_driver {
void ofono_handsfree_set_ag_features(struct ofono_handsfree *hf,
unsigned int ag_features);
+void ofono_handsfree_set_ag_chld_features(struct ofono_handsfree *hf,
+ unsigned int ag_mpty_features);
void ofono_handsfree_set_inband_ringing(struct ofono_handsfree *hf,
ofono_bool_t enabled);
void ofono_handsfree_voice_recognition_notify(struct ofono_handsfree *hf,
--
1.7.11.7
Intel GmbH
Dornacher Strasse 1
85622 Feldkirchen/Muenchen, Deutschland
Sitz der Gesellschaft: Feldkirchen bei Muenchen
Geschaeftsfuehrer: Christian Lamprechter, Hannes Schwaderer, Douglas Lusk
Registergericht: Muenchen HRB 47456
Ust.-IdNr./VAT Registration No.: DE129385895
Citibank Frankfurt a.M. (BLZ 502 109 00) 600119052
^ permalink raw reply related [flat|nested] 7+ messages in thread* [PATCH 4/5] hfp: Add CHLD features to drver data
2014-03-17 15:47 [PATCH 0/5] hfp: Extend Handsfree Features to three way calling and CHLD properties Krzysztof Wilk
` (2 preceding siblings ...)
2014-03-17 15:47 ` [PATCH 3/5] include: Declaration function to set CHLD features Krzysztof Wilk
@ 2014-03-17 15:47 ` Krzysztof Wilk
2014-03-17 15:47 ` [PATCH 5/5] hfp: extend Features to three way calling and CHLD Krzysztof Wilk
2014-03-19 15:34 ` [PATCH 0/5] hfp: Extend Handsfree Features to three way calling and CHLD properties Denis Kenzior
5 siblings, 0 replies; 7+ messages in thread
From: Krzysztof Wilk @ 2014-03-17 15:47 UTC (permalink / raw)
To: ofono
[-- Attachment #1: Type: text/plain, Size: 1489 bytes --]
From: Krzysztof Wilk <Krzysztofx.Wilk@intel.com>
---
drivers/hfpmodem/handsfree.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/drivers/hfpmodem/handsfree.c b/drivers/hfpmodem/handsfree.c
index 78ee801..bbe10b8 100644
--- a/drivers/hfpmodem/handsfree.c
+++ b/drivers/hfpmodem/handsfree.c
@@ -49,6 +49,7 @@ static const char *bvra_prefix[] = { "+BVRA:", NULL };
struct hf_data {
GAtChat *chat;
unsigned int ag_features;
+ unsigned int ag_mpty_features;
int battchg_index;
guint register_source;
};
@@ -139,6 +140,7 @@ static gboolean hfp_handsfree_register(gpointer user_data)
ofono_handsfree_set_inband_ringing(hf, TRUE);
ofono_handsfree_set_ag_features(hf, hd->ag_features);
+ ofono_handsfree_set_ag_chld_features(hf, hd->ag_mpty_features);
ofono_handsfree_register(hf);
return FALSE;
@@ -154,6 +156,7 @@ static int hfp_handsfree_probe(struct ofono_handsfree *hf,
hd = g_new0(struct hf_data, 1);
hd->chat = g_at_chat_clone(info->chat);
hd->ag_features = info->ag_features;
+ hd->ag_mpty_features = info->ag_mpty_features;
ofono_handsfree_set_data(hf, hd);
--
1.7.11.7
Intel GmbH
Dornacher Strasse 1
85622 Feldkirchen/Muenchen, Deutschland
Sitz der Gesellschaft: Feldkirchen bei Muenchen
Geschaeftsfuehrer: Christian Lamprechter, Hannes Schwaderer, Douglas Lusk
Registergericht: Muenchen HRB 47456
Ust.-IdNr./VAT Registration No.: DE129385895
Citibank Frankfurt a.M. (BLZ 502 109 00) 600119052
^ permalink raw reply related [flat|nested] 7+ messages in thread* [PATCH 5/5] hfp: extend Features to three way calling and CHLD
2014-03-17 15:47 [PATCH 0/5] hfp: Extend Handsfree Features to three way calling and CHLD properties Krzysztof Wilk
` (3 preceding siblings ...)
2014-03-17 15:47 ` [PATCH 4/5] hfp: Add CHLD features to drver data Krzysztof Wilk
@ 2014-03-17 15:47 ` Krzysztof Wilk
2014-03-19 15:34 ` [PATCH 0/5] hfp: Extend Handsfree Features to three way calling and CHLD properties Denis Kenzior
5 siblings, 0 replies; 7+ messages in thread
From: Krzysztof Wilk @ 2014-03-17 15:47 UTC (permalink / raw)
To: ofono
[-- Attachment #1: Type: text/plain, Size: 2830 bytes --]
From: Krzysztof Wilk <Krzysztofx.Wilk@intel.com>
---
src/handsfree.c | 34 +++++++++++++++++++++++++++++++---
1 file changed, 31 insertions(+), 3 deletions(-)
diff --git a/src/handsfree.c b/src/handsfree.c
index b23cc3a..98f9770 100644
--- a/src/handsfree.c
+++ b/src/handsfree.c
@@ -50,6 +50,7 @@ struct ofono_handsfree {
ofono_bool_t voice_recognition;
ofono_bool_t voice_recognition_pending;
unsigned int ag_features;
+ unsigned int ag_mpty_features;
unsigned char battchg;
const struct ofono_handsfree_driver *driver;
@@ -58,11 +59,14 @@ struct ofono_handsfree {
DBusMessage *pending;
};
-static const char **ag_features_list(unsigned int features)
+static const char **ag_features_list(unsigned int features, unsigned int mpty_features)
{
- static const char *list[33];
+ static const char *list[10];
unsigned int i = 0;
+ if (features & HFP_AG_FEATURE_3WAY)
+ list[i++] = "three-way-calling";
+
if (features & HFP_AG_FEATURE_ECNR)
list[i++] = "echo-canceling-and-noise-reduction";
@@ -72,6 +76,21 @@ static const char **ag_features_list(unsigned int features)
if (features & HFP_AG_FEATURE_ATTACH_VOICE_TAG)
list[i++] = "attach-voice-tag";
+ if (mpty_features & HFP_AG_CHLD_0)
+ list[i++] = "release-all-held";
+
+ if (mpty_features & HFP_AG_CHLD_1x)
+ list[i++] = "release-specified-active-call";
+
+ if (mpty_features & HFP_AG_CHLD_2x)
+ list[i++] = "private-chat";
+
+ if (mpty_features & HFP_AG_CHLD_3)
+ list[i++] = "create-multiparty";
+
+ if (mpty_features & HFP_AG_CHLD_4)
+ list[i++] = "transfer";
+
list[i] = NULL;
return list;
@@ -125,6 +144,15 @@ void ofono_handsfree_set_ag_features(struct ofono_handsfree *hf,
hf->ag_features = ag_features;
}
+void ofono_handsfree_set_ag_chld_features(struct ofono_handsfree *hf,
+ unsigned int ag_mpty_features)
+{
+ if (hf == NULL)
+ return;
+
+ hf->ag_mpty_features = ag_mpty_features;
+}
+
void ofono_handsfree_battchg_notify(struct ofono_handsfree *hf,
unsigned char level)
{
@@ -181,7 +209,7 @@ static DBusMessage *handsfree_get_properties(DBusConnection *conn,
ofono_dbus_dict_append(&dict, "VoiceRecognition", DBUS_TYPE_BOOLEAN,
&voice_recognition);
- features = ag_features_list(hf->ag_features);
+ features = ag_features_list(hf->ag_features, hf->ag_mpty_features);
ofono_dbus_dict_append_array(&dict, "Features", DBUS_TYPE_STRING,
&features);
--
1.7.11.7
Intel GmbH
Dornacher Strasse 1
85622 Feldkirchen/Muenchen, Deutschland
Sitz der Gesellschaft: Feldkirchen bei Muenchen
Geschaeftsfuehrer: Christian Lamprechter, Hannes Schwaderer, Douglas Lusk
Registergericht: Muenchen HRB 47456
Ust.-IdNr./VAT Registration No.: DE129385895
Citibank Frankfurt a.M. (BLZ 502 109 00) 600119052
^ permalink raw reply related [flat|nested] 7+ messages in thread* Re: [PATCH 0/5] hfp: Extend Handsfree Features to three way calling and CHLD properties
2014-03-17 15:47 [PATCH 0/5] hfp: Extend Handsfree Features to three way calling and CHLD properties Krzysztof Wilk
` (4 preceding siblings ...)
2014-03-17 15:47 ` [PATCH 5/5] hfp: extend Features to three way calling and CHLD Krzysztof Wilk
@ 2014-03-19 15:34 ` Denis Kenzior
5 siblings, 0 replies; 7+ messages in thread
From: Denis Kenzior @ 2014-03-19 15:34 UTC (permalink / raw)
To: ofono
[-- Attachment #1: Type: text/plain, Size: 476 bytes --]
Hi Krzysztof,
On 03/17/2014 10:47 AM, Krzysztof Wilk wrote:
> From: Krzysztof Wilk <Krzysztofx.Wilk@intel.com>
>
> The aim is to provide the UI with more information about the audio gateway
> features for HFP. This will allow the UI to be customised so that unavailable
> features are not offered rather than receiving an error message when actioned.
>
All 5 patches have been applied. I did rename a couple of variable
names afterwards.
Regards,
-Denis
^ permalink raw reply [flat|nested] 7+ messages in thread