bluez5: upgrade 5.79 -> 5.80

Changes relevant for the build:
* Four patches are dropped because they are included in 5.80.
* Removed changes to etc/bluetooth directory permission bits. They are
  now set correctly in 5.80 [1].
* AMP code has been removed [2]. This means "tools/amptest" can be
  removed from NOINST_TOOLS_BT

[1] - b1fd409960
[2] - 1474c11618

Changelog:

    Fix issue with handling address type for all types of keys.
    Fix issue with handling maximum number of GATT channels.
    Fix issue with handling MTU auto-tuning feature.
    Fix issue with handling AVRCP volume in reconfigured transports.
    Fix issue with handling VCP volume setting requests.
    Fix issue with handling VCP connection management.
    Fix issue with handling MAP qualification.
    Fix issue with handling PBAP qualification.
    Fix issue with handling BNEP qualification.
    Add support for PreferredBearer device property.
    Add support for SupportedTypes Message Access property.
    Add support for HFP, A2DP, AVRCP, AVCTP and MAP latest versions.

(From OE-Core rev: 9e340d4c8070bab0a14adc7d9f6534d1185944f5)

Signed-off-by: Guðni Már Gilbert <gudni.m.g@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Guðni Már Gilbert 2025-03-30 02:41:00 +00:00 committed by Richard Purdie
parent 41ec3e8bff
commit 7fa0654f2f
8 changed files with 5 additions and 175 deletions

View File

@ -69,10 +69,6 @@ SRC_URI = "${KERNELORG_MIRROR}/linux/bluetooth/bluez-${PV}.tar.xz \
file://run-ptest \
file://0001-tests-add-a-target-for-building-tests-without-runnin.patch \
file://0001-test-gatt-Fix-hung-issue.patch \
file://0001-gdbus-define-MAX_INPUT-for-musl.patch \
file://0001-shared-ad-fix-std-c23-build-failure.patch \
file://0002-shared-shell-fix-std-c23-build-failure.patch \
file://0003-shared-gatt-helpers-fix-std-c23-build-failure.patch \
"
S = "${WORKDIR}/bluez-${PV}"
@ -113,11 +109,6 @@ do_install:append() {
for f in ${NOINST_TOOLS} ; do
install -m 755 ${B}/$f ${D}${bindir}
done
# Fix the /etc/bluetooth directory permissions when systemd is disabled
if ${@bb.utils.contains('PACKAGECONFIG', 'systemd', 'false', 'true', d)}; then
chmod 0755 ${D}${sysconfdir}/bluetooth
fi
}
PACKAGES =+ "${PN}-testtools ${PN}-obex ${PN}-noinst-tools"

View File

@ -1,34 +0,0 @@
From 6f40d44acbfb0021f21bd63e6c0703ba701d19c4 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Gu=C3=B0ni=20M=C3=A1r=20Gilbert?= <gudni.m.g@gmail.com>
Date: Sat, 2 Nov 2024 16:03:34 +0000
Subject: [PATCH] gdbus: define MAX_INPUT for musl
This is the same solution as was done in src/shared/util.c
Upstream-Status: Submitted [https://marc.info/?l=linux-bluetooth&m=173056368428988&w=2]
Signed-off-by: Guðni Már Gilbert <gudni.m.g@gmail.com.com>
---
gdbus/object.c | 6 ++++++
1 file changed, 6 insertions(+)
diff --git a/gdbus/object.c b/gdbus/object.c
index 84f116bf1..7b0476f1a 100644
--- a/gdbus/object.c
+++ b/gdbus/object.c
@@ -20,6 +20,12 @@
#include <dbus/dbus.h>
#include "gdbus.h"
+
+/* define MAX_INPUT for musl */
+#ifndef MAX_INPUT
+#define MAX_INPUT _POSIX_MAX_INPUT
+#endif
+
#include "src/shared/util.h"
#define info(fmt...)
--
2.43.0

View File

@ -1,34 +0,0 @@
From 5c4cbf5cb95e4fc1a53545af52b420a8008b3ffa Mon Sep 17 00:00:00 2001
From: Rudi Heitbaum <rudi@heitbaum.com>
Date: Wed, 20 Nov 2024 13:02:56 +0000
Subject: [PATCH 1/3] shared/ad: fix -std=c23 build failure
gcc-15 switched to -std=c23 by default:
https://gcc.gnu.org/git/?p=gcc.git;a=commitdiff;h=55e3bd376b2214e200fa76d12b67ff259b06c212
As a result `bluez` fails the build as:
src/shared/ad.c:1090:24: error: incompatible types when returning type '_Bool' but 'const char *' was expected
1090 | return false;
| ^~~~~
Upstream-Status: Backport [https://web.git.kernel.org/pub/scm/bluetooth/bluez.git/commit/?id=da5b5b0ecb1ead38676768ef78d46449d404bdc0]
Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
src/shared/ad.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/shared/ad.c b/src/shared/ad.c
index d08ce7a..dac381b 100644
--- a/src/shared/ad.c
+++ b/src/shared/ad.c
@@ -1087,7 +1087,7 @@ bool bt_ad_add_name(struct bt_ad *ad, const char *name)
const char *bt_ad_get_name(struct bt_ad *ad)
{
if (!ad)
- return false;
+ return NULL;
return ad->name;
}

View File

@ -1,4 +1,4 @@
From 825e15ddda4aa6d8e37c1c52181f7175d2237f66 Mon Sep 17 00:00:00 2001
From 0787e67bebbf8492b6c5f03ed816cf881edbea64 Mon Sep 17 00:00:00 2001
From: Mingli Yu <Mingli.Yu@windriver.com>
Date: Fri, 24 Aug 2018 12:04:03 +0800
Subject: [PATCH] test-gatt: Fix hung issue

View File

@ -1,4 +1,4 @@
From 9ce6360d11f0b1252f61ff78ce6f8ef03b150dfd Mon Sep 17 00:00:00 2001
From b6438d9e6cd5bdbca05b444ff6d955e5b70dbb2e Mon Sep 17 00:00:00 2001
From: Alexander Kanavin <alex.kanavin@gmail.com>
Date: Fri, 1 Apr 2016 17:07:34 +0300
Subject: [PATCH] tests: add a target for building tests without running them
@ -10,10 +10,10 @@ Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
1 file changed, 3 insertions(+)
diff --git a/Makefile.am b/Makefile.am
index 68bf058..a376d10 100644
index 0821530..e7cefb5 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -713,6 +713,9 @@ endif
@@ -723,6 +723,9 @@ endif
TESTS = $(unit_tests)
AM_TESTS_ENVIRONMENT = MALLOC_CHECK_=3 MALLOC_PERTURB_=69

View File

@ -1,34 +0,0 @@
From 408510d751e9482fe965e5dd96fbac7f9ee2ef62 Mon Sep 17 00:00:00 2001
From: Rudi Heitbaum <rudi@heitbaum.com>
Date: Wed, 20 Nov 2024 13:03:29 +0000
Subject: [PATCH 2/3] shared/shell: fix -std=c23 build failure
gcc-15 switched to -std=c23 by default:
https://gcc.gnu.org/git/?p=gcc.git;a=commitdiff;h=55e3bd376b2214e200fa76d12b67ff259b06c212
As a result `bluez` fails the build as:
src/shared/shell.c:365:24: error: incompatible types when returning type '_Bool' but 'struct input *' was expected
365 | return false;
| ^~~~~
Upstream-Status: Backport [https://web.git.kernel.org/pub/scm/bluetooth/bluez.git/commit/?id=4d60826865c760cc4e5718b6414746a394768110]
Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
src/shared/shell.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/shared/shell.c b/src/shared/shell.c
index a8fa876..aa6c16c 100644
--- a/src/shared/shell.c
+++ b/src/shared/shell.c
@@ -362,7 +362,7 @@ static struct input *input_new(int fd)
io = io_new(fd);
if (!io)
- return false;
+ return NULL;
input = new0(struct input, 1);
input->io = io;

View File

@ -1,58 +0,0 @@
From 7c07bb10f57c80467bc3079d45dac4d3839927d0 Mon Sep 17 00:00:00 2001
From: Rudi Heitbaum <rudi@heitbaum.com>
Date: Wed, 20 Nov 2024 13:03:55 +0000
Subject: [PATCH 3/3] shared/gatt-helpers: fix -std=c23 build failure
gcc-15 switched to -std=c23 by default:
https://gcc.gnu.org/git/?p=gcc.git;a=commitdiff;h=55e3bd376b2214e200fa76d12b67ff259b06c212
As a result `bluez` fails the build as:
src/shared/gatt-helpers.c:1136:24: error: incompatible types when returning type '_Bool' but 'struct bt_gatt_request *' was expected
1136 | return false;
| ^~~~~
src/shared/gatt-helpers.c:1250:24: error: incompatible types when returning type '_Bool' but 'struct bt_gatt_request *' was expected
1250 | return false;
| ^~~~~
src/shared/gatt-helpers.c:1478:24: error: incompatible types when returning type '_Bool' but 'struct bt_gatt_request *' was expected
1478 | return false;
| ^~~~~
Upstream-Status: Backport [https://web.git.kernel.org/pub/scm/bluetooth/bluez.git/commit/?id=6f3111eb680df9c13502aacd65554846a9e13a3f]
Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
src/shared/gatt-helpers.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/src/shared/gatt-helpers.c b/src/shared/gatt-helpers.c
index 50fcb26..f1fa630 100644
--- a/src/shared/gatt-helpers.c
+++ b/src/shared/gatt-helpers.c
@@ -1133,7 +1133,7 @@ struct bt_gatt_request *bt_gatt_discover_included_services(struct bt_att *att,
uint8_t pdu[6];
if (!att)
- return false;
+ return NULL;
op = new0(struct bt_gatt_request, 1);
op->att = att;
@@ -1247,7 +1247,7 @@ struct bt_gatt_request *bt_gatt_discover_characteristics(struct bt_att *att,
uint8_t pdu[6];
if (!att)
- return false;
+ return NULL;
op = new0(struct bt_gatt_request, 1);
op->att = att;
@@ -1475,7 +1475,7 @@ struct bt_gatt_request *bt_gatt_discover_descriptors(struct bt_att *att,
uint8_t pdu[4];
if (!att)
- return false;
+ return NULL;
op = new0(struct bt_gatt_request, 1);
op->att = att;

View File

@ -1,6 +1,6 @@
require bluez5.inc
SRC_URI[sha256sum] = "4164a5303a9f71c70f48c03ff60be34231b568d93a9ad5e79928d34e6aa0ea8a"
SRC_URI[sha256sum] = "a4d0bca3299691f06d5bd9773b854638204a51a5026c42b0ad7f1c6cf16b459a"
CVE_STATUS[CVE-2020-24490] = "cpe-incorrect: This issue has kernel fixes rather than bluez fixes"
@ -41,7 +41,6 @@ NOINST_TOOLS_BT ?= " \
tools/avinfo \
tools/avtest \
tools/scotest \
tools/amptest \
tools/hwdb \
tools/hcieventmask \
tools/hcisecfilter \