* Adding two patches fixing functionality of bluez-4.98. The first fixes the synchronization between bluetoothd and driver. And the second is necessary for A2DP to work.
Signed-off-by: Vita Preskovsky <vi...@ti.com> --- recipes/bluez/bluez4_4.98.bb | 2 + .../files/0001-socket-enable-for-bluez-4_98.patch | 25 ++++++++++ ...synchronization-between-bluetoothd-and-dr.patch | 50 ++++++++++++++++++++ 3 files changed, 77 insertions(+), 0 deletions(-) create mode 100644 recipes/bluez/files/0001-socket-enable-for-bluez-4_98.patch create mode 100755 recipes/bluez/files/0002-bluez4-fix-synchronization-between-bluetoothd-and-dr.patch diff --git a/recipes/bluez/bluez4_4.98.bb b/recipes/bluez/bluez4_4.98.bb index 2303994..1a5fd21 100644 --- a/recipes/bluez/bluez4_4.98.bb +++ b/recipes/bluez/bluez4_4.98.bb @@ -3,6 +3,8 @@ require bluez4.inc SRC_URI = "\ ${KERNELORG_MIRROR}/pub/linux/bluetooth/bluez-${PV}.tar.gz \ file://bluetooth.conf \ + file://0001-socket-enable-for-bluez-4_98.patch \ + file://0002-bluez4-fix-synchronization-between-bluetoothd-and-dr.patch \ " SRC_URI[md5sum] = "362864b716950baa04797de735fc237b" SRC_URI[sha256sum] = "9a5b655bada7c7a1921cb3bac83b8a32bbe49893e4c7a1377cdc1b0d35f7d233" diff --git a/recipes/bluez/files/0001-socket-enable-for-bluez-4_98.patch b/recipes/bluez/files/0001-socket-enable-for-bluez-4_98.patch new file mode 100644 index 0000000..05cb2ee --- /dev/null +++ b/recipes/bluez/files/0001-socket-enable-for-bluez-4_98.patch @@ -0,0 +1,25 @@ +From e142a28897c0b0fe9e61259a96dad6fb9f818ecd Mon Sep 17 00:00:00 2001 +From: Moosa <moosa.bara...@babcomsoftware.com> +Date: Wed, 22 Feb 2012 10:06:37 +0200 +Subject: [PATCH] socket enable for bluez 0_98 + +* This is necessary for working with A2DP +--- + audio/audio.conf | 1 + + 1 files changed, 1 insertions(+), 0 deletions(-) + +diff --git a/audio/audio.conf b/audio/audio.conf +index 302e046..9533ada 100644 +--- a/audio/audio.conf ++++ b/audio/audio.conf +@@ -3,6 +3,7 @@ + # This section contains options which are not specific to any + # particular interface + [General] ++Enable=Socket + + # Switch to master role for incoming connections (defaults to true) + #Master=true +-- +1.7.1 + diff --git a/recipes/bluez/files/0002-bluez4-fix-synchronization-between-bluetoothd-and-dr.patch b/recipes/bluez/files/0002-bluez4-fix-synchronization-between-bluetoothd-and-dr.patch new file mode 100755 index 0000000..4897647 --- /dev/null +++ b/recipes/bluez/files/0002-bluez4-fix-synchronization-between-bluetoothd-and-dr.patch @@ -0,0 +1,50 @@ +From ddca351e504dc3cb8d91ea10a1863949699c6e50 Mon Sep 17 00:00:00 2001 +From: Vita Preskovsky <vi...@ti.com> +Date: Tue, 13 Dec 2011 22:54:47 +0200 +Subject: [PATCH] bluez4: fix synchronization between bluetoothd and driver + * To fix situation when bluetoothd doesn't get messages + it expects to receive from the kernel. Therefore the + the required requests are sent again at the stage when device + is up. The mismatch caused to the list of adapters to be + empty. + +Signed-off-by: Vita Preskovsky <vi...@ti.com> +--- + plugins/hciops.c | 21 +++++++++++++++++++++ + 1 files changed, 21 insertions(+), 0 deletions(-) + +diff --git a/plugins/hciops.c b/plugins/hciops.c +index ecc0e86..e2198ee 100644 +--- a/plugins/hciops.c ++++ b/plugins/hciops.c +@@ -2512,6 +2512,27 @@ static void device_devup_setup(int index) + hci_send_cmd(dev->sk, OGF_HOST_CTL, OCF_READ_STORED_LINK_KEY, + READ_STORED_LINK_KEY_CP_SIZE, &cp); + ++ /* Even though it shouldn't happen it seems like we might miss ++ * initialization commands that kernel sends. So we check it here ++ * to avoid situation when we have device but it is not in the list ++ * of adapters. */ ++ if (hci_test_bit(PENDING_FEATURES, &dev->pending)) ++ hci_send_cmd(dev->sk, OGF_INFO_PARAM, ++ OCF_READ_LOCAL_FEATURES, 0, NULL); ++ ++ if (hci_test_bit(PENDING_VERSION, &dev->pending)) ++ hci_send_cmd(dev->sk, OGF_INFO_PARAM, ++ OCF_READ_LOCAL_VERSION, 0, NULL); ++ ++ if (hci_test_bit(PENDING_NAME, &dev->pending)) ++ hci_send_cmd(dev->sk, OGF_HOST_CTL, ++ OCF_READ_LOCAL_NAME, 0, NULL); ++ ++ if (hci_test_bit(PENDING_BDADDR, &dev->pending)) ++ hci_send_cmd(dev->sk, OGF_INFO_PARAM, ++ OCF_READ_BD_ADDR, 0, NULL); ++ ++ + if (!dev->pending) + init_adapter(index); + } +-- +1.7.0.4 + -- 1.7.0.4 _______________________________________________ Openembedded-devel mailing list Openembedded-devel@lists.openembedded.org http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-devel