Merge lp:~kzapalowicz/bluez/new-upstream-version-5.41 into lp:~bluetooth/bluez/ubuntu

Proposed by Konrad Zapałowicz
Status: Superseded
Proposed branch: lp:~kzapalowicz/bluez/new-upstream-version-5.41
Merge into: lp:~bluetooth/bluez/ubuntu
Diff against target: 257 lines (+117/-90)
7 files modified
debian/50-bluetooth-hci-auto-poweron.rules (+0/-2)
debian/bluez.install (+1/-2)
debian/changelog (+27/-0)
debian/main.conf (+89/-0)
debian/patches/0001-profiles-audio-add-big-endian-structure-definition-f.patch (+0/-29)
debian/patches/0005-audio-media-return-empty-string-when-player-name-is-.patch (+0/-55)
debian/patches/series (+0/-2)
To merge this branch: bzr merge lp:~kzapalowicz/bluez/new-upstream-version-5.41
Reviewer Review Type Date Requested Status
Simon Fels Pending
Review via email: mp+300789@code.launchpad.net

This proposal has been superseded by a proposal from 2016-07-27.

Commit message

New upstream version 5.41

Description of the change

New upstream version 5.41

To post a comment you must log in.

Unmerged revisions

23. By Konrad Zapałowicz

New upstream version

22. By Konrad Zapałowicz

Fix pairing with BLE devices such as keyboards [remove legacy udev rule]

* debian/50-bluetooth-hci-auto-poweron.rules:
  - Get rid of legacy udev rule to power on bluetooth controllers on
    startup. Using hciconfig for that is the legacy way and will lead
    to different problems as the kernel side stack wont initialize
    all needed subsystems when used. BlueZ introduced a replacement
    for this with 5.36 which basically tells the bluetoothd through
    a config option to turn on all found Bluetooth controllers by
    default. With changing this there should be no change in terms
    of functionality.

21. By Konrad Zapałowicz

Fix own email address

20. By Konrad Zapałowicz

Remove patches that are now upstream

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
=== removed file 'debian/50-bluetooth-hci-auto-poweron.rules'
--- debian/50-bluetooth-hci-auto-poweron.rules 2015-08-14 10:04:55 +0000
+++ debian/50-bluetooth-hci-auto-poweron.rules 1970-01-01 00:00:00 +0000
@@ -1,2 +0,0 @@
1# Set bluetooth power up
2ACTION=="add", SUBSYSTEM=="bluetooth", KERNEL=="hci[0-9]*", RUN+="/bin/hciconfig %k up"
30
=== modified file 'debian/bluez.install'
--- debian/bluez.install 2016-02-02 17:16:14 +0000
+++ debian/bluez.install 2016-07-21 16:14:36 +0000
@@ -1,4 +1,4 @@
1src/main.conf etc/bluetooth1debian/main.conf etc/bluetooth
2profiles/input/input.conf etc/bluetooth2profiles/input/input.conf etc/bluetooth
3# profiles/audio/audio.conf etc/bluetooth3# profiles/audio/audio.conf etc/bluetooth
4profiles/network/network.conf etc/bluetooth4profiles/network/network.conf etc/bluetooth
@@ -25,7 +25,6 @@
25lib/udev/hid2hci25lib/udev/hid2hci
26lib/udev/rules.d/97-hid2hci.rules26lib/udev/rules.d/97-hid2hci.rules
27attrib/gatttool usr/bin27attrib/gatttool usr/bin
28debian/50-bluetooth-hci-auto-poweron.rules lib/udev/rules.d
29#-- for systemd28#-- for systemd
30lib/systemd/system/bluetooth.service29lib/systemd/system/bluetooth.service
31etc/dbus-1/system.d/bluetooth.conf30etc/dbus-1/system.d/bluetooth.conf
3231
=== modified file 'debian/changelog'
--- debian/changelog 2016-03-01 15:19:16 +0000
+++ debian/changelog 2016-07-21 16:14:36 +0000
@@ -1,3 +1,30 @@
1bluez (5.41-0ubuntu1) UNRELEASED; urgency=medium
2
3 * New upstream version
4
5 -- Konrad Zapałowicz <konrad.zapalowicz@canonial.com> Tue, 21 Jun 2016 10:21:22 +0200
6
7bluez (5.40-0ubuntu2) UNRELEASED; urgency=medium
8
9 * debian/50-bluetooth-hci-auto-poweron.rules:
10 - Get rid of legacy udev rule to power on bluetooth controllers on
11 startup. Using hciconfig for that is the legacy way and will lead
12 to different problems as the kernel side stack wont initialize
13 all needed subsystems when used. BlueZ introduced a replacement
14 for this with 5.36 which basically tells the bluetoothd through
15 a config option to turn on all found Bluetooth controllers by
16 default. With changing this there should be no change in terms
17 of functionality.
18
19 -- Simon Fels <simon.fels@canonical.com> Wed, 02 Mar 2016 08:20:11 +0100
20
21
22bluez (5.40-0ubuntu1) UNRELEASED; urgency=medium
23
24 * New upstream version
25
26 -- Konrad Zapałowicz <konrad.zapalowicz@canonial.com> Tue, 21 Jun 2016 10:21:22 +0200
27
1bluez (5.37-0ubuntu5) xenial; urgency=medium28bluez (5.37-0ubuntu5) xenial; urgency=medium
229
3 [Tony Espy ]30 [Tony Espy ]
431
=== added file 'debian/main.conf'
--- debian/main.conf 1970-01-01 00:00:00 +0000
+++ debian/main.conf 2016-07-21 16:14:36 +0000
@@ -0,0 +1,89 @@
1[General]
2
3# Default adaper name
4# Defaults to 'BlueZ X.YZ'
5#Name = BlueZ
6
7# Default device class. Only the major and minor device class bits are
8# considered. Defaults to '0x000000'.
9#Class = 0x000100
10
11# How long to stay in discoverable mode before going back to non-discoverable
12# The value is in seconds. Default is 180, i.e. 3 minutes.
13# 0 = disable timer, i.e. stay discoverable forever
14#DiscoverableTimeout = 0
15
16# How long to stay in pairable mode before going back to non-discoverable
17# The value is in seconds. Default is 0.
18# 0 = disable timer, i.e. stay pairable forever
19#PairableTimeout = 0
20
21# Automatic connection for bonded devices driven by platform/user events.
22# If a platform plugin uses this mechanism, automatic connections will be
23# enabled during the interval defined below. Initially, this feature
24# intends to be used to establish connections to ATT channels. Default is 60.
25#AutoConnectTimeout = 60
26
27# Use vendor id source (assigner), vendor, product and version information for
28# DID profile support. The values are separated by ":" and assigner, VID, PID
29# and version.
30# Possible vendor id source values: bluetooth, usb (defaults to usb)
31#DeviceID = bluetooth:1234:5678:abcd
32
33# Do reverse service discovery for previously unknown devices that connect to
34# us. This option is really only needed for qualification since the BITE tester
35# doesn't like us doing reverse SDP for some test cases (though there could in
36# theory be other useful purposes for this too). Defaults to 'true'.
37#ReverseServiceDiscovery = true
38
39# Enable name resolving after inquiry. Set it to 'false' if you don't need
40# remote devices name and want shorter discovery cycle. Defaults to 'true'.
41#NameResolving = true
42
43# Enable runtime persistency of debug link keys. Default is false which
44# makes debug link keys valid only for the duration of the connection
45# that they were created for.
46#DebugKeys = false
47
48# Restricts all controllers to the specified transport. Default value
49# is "dual", i.e. both BR/EDR and LE enabled (when supported by the HW).
50# Possible values: "dual", "bredr", "le"
51#ControllerMode = dual
52
53# Enables Multi Profile Specification support. This allows to specify if
54# system supports only Multiple Profiles Single Device (MPSD) configuration
55# or both Multiple Profiles Single Device (MPSD) and Multiple Profiles Multiple
56# Devices (MPMD) configurations.
57# Possible values: "off", "single", "multiple"
58#MultiProfile = off
59
60# Permanently enables the Fast Connectable setting for adapters that
61# support it. When enabled other devices can connect faster to us,
62# however the tradeoff is increased power consumptions. This feature
63# will fully work only on kernel version 4.1 and newer. Defaults to
64# 'false'.
65#FastConnectable = false
66
67[Policy]
68
69# The ReconnectUUIDs defines the set of remote services that should try
70# to be reconnected to in case of a link loss (link supervision
71# timeout). The policy plugin should contain a sane set of values by
72# default, but this list can be overridden here. By setting the list to
73# empty the reconnection feature gets disabled.
74#ReconnectUUIDs=00001112-0000-1000-8000-00805f9b34fb, 0000111f-0000-1000-8000-00805f9b34fb, 0000110a-0000-1000-8000-00805f9b34fb
75
76# ReconnectAttempts define the number of attempts to reconnect after a link
77# lost. Setting the value to 0 disables reconnecting feature.
78#ReconnectAttempts=7
79
80# ReconnectIntervals define the set of intervals in seconds to use in between
81# attempts.
82# If the number of attempts defined in ReconnectAttempts is bigger than the
83# set of intervals the last interval is repeated until the last attempt.
84#ReconnectIntervals=1, 2, 4, 8, 16, 32, 64
85
86# AutoEnable defines option to enable all controllers when they are found.
87# This includes adapters present on start as well as adapters that are plugged
88# in later on. Defaults to 'false'.
89AutoEnable=true
090
=== removed file 'debian/patches/0001-profiles-audio-add-big-endian-structure-definition-f.patch'
--- debian/patches/0001-profiles-audio-add-big-endian-structure-definition-f.patch 2016-02-11 13:46:45 +0000
+++ debian/patches/0001-profiles-audio-add-big-endian-structure-definition-f.patch 1970-01-01 00:00:00 +0000
@@ -1,29 +0,0 @@
1From d3056811f75aa788382f56848e3a871ae3cbbf33 Mon Sep 17 00:00:00 2001
2From: Simon Fels <simon.fels@canonical.com>
3Date: Thu, 11 Feb 2016 14:45:19 +0100
4Subject: [PATCH] profiles: audio: add big endian structure definition for LDAC
5 codec
6
7---
8 profiles/audio/a2dp-codecs.h | 5 +++++
9 1 file changed, 5 insertions(+)
10
11diff --git a/profiles/audio/a2dp-codecs.h b/profiles/audio/a2dp-codecs.h
12index e9da0bf..4fb5c0c 100644
13--- a/profiles/audio/a2dp-codecs.h
14+++ b/profiles/audio/a2dp-codecs.h
15@@ -234,6 +234,11 @@ typedef struct {
16 uint8_t channel_mode:4;
17 } __attribute__ ((packed)) a2dp_aptx_t;
18
19+typedef struct {
20+ a2dp_vendor_codec_t info;
21+ uint8_t unknown[2];
22+} __attribute__ ((packed)) a2dp_ldac_t;
23+
24 #else
25 #error "Unknown byte order"
26 #endif
27--
282.5.0
29
300
=== removed file 'debian/patches/0005-audio-media-return-empty-string-when-player-name-is-.patch'
--- debian/patches/0005-audio-media-return-empty-string-when-player-name-is-.patch 2016-01-24 00:07:20 +0000
+++ debian/patches/0005-audio-media-return-empty-string-when-player-name-is-.patch 1970-01-01 00:00:00 +0000
@@ -1,55 +0,0 @@
1From c9055958af1dec734b66bf4c941ee7392034c958 Mon Sep 17 00:00:00 2001
2From: Simon Fels <simon.fels@canonical.com>
3Date: Wed, 2 Dec 2015 11:58:54 +0100
4Subject: [PATCH 5/5] audio/media: return empty string when player name is not
5 available
6
7If the name for the player is set as NULL we will crash later on
8so taking a valid default is required.
9
10Crash observed without this:
11
12Program terminated with signal SIGSEGV, Segmentation fault.
130 strlen () at ../sysdeps/arm/armv6t2/strlen.S:85
1485 ../sysdeps/arm/armv6t2/strlen.S: No such file or directory.
15(gdb) bt
160 strlen () at ../sysdeps/arm/armv6t2/strlen.S:85
171 0xb6f13ebc in avrcp_handle_media_player_list (session=0xb8f339c0,
18 session=0xb8f339c0, end_item=<optimized out>, start_item=<optimized out>,
19 pdu=0xb8f43283) at profiles/audio/avrcp.c:1917
202 avrcp_handle_get_folder_items (session=0xb8f339c0, pdu=0xb8f43283,
21 transaction=<optimized out>) at profiles/audio/avrcp.c:1968
223 0xb6f13fb8 in handle_browsing_pdu (conn=<optimized out>,
23 transaction=<optimized out>, operands=0xb8f43283 "q\b",
24 operand_count=<optimized out>, user_data=0xb8f339c0)
25 at profiles/audio/avrcp.c:2028
264 0xb6f0f088 in session_browsing_cb (chan=<optimized out>,
27 cond=<optimized out>, data=0xb8f3ba28) at profiles/audio/avctp.c:930
285 0xb6e19e90 in g_main_dispatch (context=0xb8f28100)
29 at /build/buildd/glib2.0-2.44.1/./glib/gmain.c:3122
306 g_main_context_dispatch (context=context@entry=0xb8f28100)
31 at /build/buildd/glib2.0-2.44.1/./glib/gmain.c:3737
327 0xb6e1a114 in g_main_context_iterate (context=0xb8f28100,
33 block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>)
34 at /build/buildd/glib2.0-2.44.1/./glib/gmain.c:3808
358 0xb6e1a3b0 in g_main_loop_run (loop=0xb8f28030)
36 at /build/buildd/glib2.0-2.44.1/./glib/gmain.c:4002
379 0xb6efef3e in main (argc=1, argv=0xbebdde04) at src/main.c:661
38---
39 profiles/audio/media.c | 3 +++
40 1 file changed, 3 insertions(+)
41
42Index: bluez-5.37/profiles/audio/media.c
43===================================================================
44--- bluez-5.37.orig/profiles/audio/media.c
45+++ bluez-5.37/profiles/audio/media.c
46@@ -1018,6 +1018,9 @@ static const char *get_player_name(void
47 {
48 struct media_player *mp = user_data;
49
50+ if (!mp->name)
51+ return "";
52+
53 return mp->name;
54 }
55
560
=== modified file 'debian/patches/series'
--- debian/patches/series 2016-02-11 13:46:45 +0000
+++ debian/patches/series 2016-07-21 16:14:36 +0000
@@ -14,5 +14,3 @@
14# dropped with one of the next releases14# dropped with one of the next releases
150003-tools-mpris-proxy-allow-user-to-specify-different-mp.patch150003-tools-mpris-proxy-allow-user-to-specify-different-mp.patch
160004-obexd-enable-ebook-backend-conditionally.patch160004-obexd-enable-ebook-backend-conditionally.patch
170005-audio-media-return-empty-string-when-player-name-is-.patch
180001-profiles-audio-add-big-endian-structure-definition-f.patch

Subscribers

People subscribed via source and target branches

to all changes: