summaryrefslogtreecommitdiff
path: root/cras/src/server/cras_a2dp_iodev.c
diff options
context:
space:
mode:
authorHsin-Yu Chao <hychao@google.com>2019-09-27 17:14:34 +0800
committerCommit Bot <commit-bot@chromium.org>2019-10-13 17:05:14 +0000
commit7977891124b9f078d33f3afc08303a1c5b6b343f (patch)
treebe27b27a9e4c69e7df63dfcd167f3892595485fd /cras/src/server/cras_a2dp_iodev.c
parentea9baa664525dfeac94a4409ed655370dc978a9d (diff)
downloadadhd-7977891124b9f078d33f3afc08303a1c5b6b343f.tar.gz
CRAS: hfp - Add node type bluetooth narrow band mic
This change adds new type BLUETOOTH_NB_MIC representing the legacy BT input node which currently has lower node priority in Chrome browser. The purpose of this new type is for browser to differenciate BT input node in narrow band or wide band, when BT headset is connected in wide band, we'll set its input node type to BLUETOOTH. BUG=chromium:1000576 TEST=cras_test_client --set_wbs_enabled 1 Connect Sony headset, and use below command to verify new type dbus-send --system --type=method_call --print-reply \ --dest=org.chromium.cras /org/chromium/cras \ org.chromium.cras.Control.GetNodes | grep -C 10 BLUETOOTH Change-Id: I952cd322952cc1cb66a0a81f2cb9b3cd5e8b14d9 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/adhd/+/1828977 Reviewed-by: Hsinyu Chao <hychao@chromium.org> Tested-by: Hsinyu Chao <hychao@chromium.org> Commit-Queue: Hsinyu Chao <hychao@chromium.org>
Diffstat (limited to 'cras/src/server/cras_a2dp_iodev.c')
-rw-r--r--cras/src/server/cras_a2dp_iodev.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/cras/src/server/cras_a2dp_iodev.c b/cras/src/server/cras_a2dp_iodev.c
index f6351aba..ac86fc4b 100644
--- a/cras/src/server/cras_a2dp_iodev.c
+++ b/cras/src/server/cras_a2dp_iodev.c
@@ -510,11 +510,12 @@ struct cras_iodev *a2dp_iodev_create(struct cras_bt_transport *transport)
node->volume = 100;
gettimeofday(&node->plugged_time, NULL);
- /* A2DP does output only */
- cras_bt_device_append_iodev(
- device, iodev, cras_bt_transport_profile(a2dpio->transport));
+ /* Prepare active node before append, so bt_io can extract correct
+ * info from A2DP iodev and node. */
cras_iodev_add_node(iodev, node);
cras_iodev_set_active_node(iodev, node);
+ cras_bt_device_append_iodev(
+ device, iodev, cras_bt_transport_profile(a2dpio->transport));
return iodev;
error: