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
1=== removed file 'debian/50-bluetooth-hci-auto-poweron.rules'
2--- debian/50-bluetooth-hci-auto-poweron.rules 2015-08-14 10:04:55 +0000
3+++ debian/50-bluetooth-hci-auto-poweron.rules 1970-01-01 00:00:00 +0000
4@@ -1,2 +0,0 @@
5-# Set bluetooth power up
6-ACTION=="add", SUBSYSTEM=="bluetooth", KERNEL=="hci[0-9]*", RUN+="/bin/hciconfig %k up"
7
8=== modified file 'debian/bluez.install'
9--- debian/bluez.install 2016-02-02 17:16:14 +0000
10+++ debian/bluez.install 2016-07-21 16:14:36 +0000
11@@ -1,4 +1,4 @@
12-src/main.conf etc/bluetooth
13+debian/main.conf etc/bluetooth
14 profiles/input/input.conf etc/bluetooth
15 # profiles/audio/audio.conf etc/bluetooth
16 profiles/network/network.conf etc/bluetooth
17@@ -25,7 +25,6 @@
18 lib/udev/hid2hci
19 lib/udev/rules.d/97-hid2hci.rules
20 attrib/gatttool usr/bin
21-debian/50-bluetooth-hci-auto-poweron.rules lib/udev/rules.d
22 #-- for systemd
23 lib/systemd/system/bluetooth.service
24 etc/dbus-1/system.d/bluetooth.conf
25
26=== modified file 'debian/changelog'
27--- debian/changelog 2016-03-01 15:19:16 +0000
28+++ debian/changelog 2016-07-21 16:14:36 +0000
29@@ -1,3 +1,30 @@
30+bluez (5.41-0ubuntu1) UNRELEASED; urgency=medium
31+
32+ * New upstream version
33+
34+ -- Konrad Zapałowicz <konrad.zapalowicz@canonial.com> Tue, 21 Jun 2016 10:21:22 +0200
35+
36+bluez (5.40-0ubuntu2) UNRELEASED; urgency=medium
37+
38+ * debian/50-bluetooth-hci-auto-poweron.rules:
39+ - Get rid of legacy udev rule to power on bluetooth controllers on
40+ startup. Using hciconfig for that is the legacy way and will lead
41+ to different problems as the kernel side stack wont initialize
42+ all needed subsystems when used. BlueZ introduced a replacement
43+ for this with 5.36 which basically tells the bluetoothd through
44+ a config option to turn on all found Bluetooth controllers by
45+ default. With changing this there should be no change in terms
46+ of functionality.
47+
48+ -- Simon Fels <simon.fels@canonical.com> Wed, 02 Mar 2016 08:20:11 +0100
49+
50+
51+bluez (5.40-0ubuntu1) UNRELEASED; urgency=medium
52+
53+ * New upstream version
54+
55+ -- Konrad Zapałowicz <konrad.zapalowicz@canonial.com> Tue, 21 Jun 2016 10:21:22 +0200
56+
57 bluez (5.37-0ubuntu5) xenial; urgency=medium
58
59 [Tony Espy ]
60
61=== added file 'debian/main.conf'
62--- debian/main.conf 1970-01-01 00:00:00 +0000
63+++ debian/main.conf 2016-07-21 16:14:36 +0000
64@@ -0,0 +1,89 @@
65+[General]
66+
67+# Default adaper name
68+# Defaults to 'BlueZ X.YZ'
69+#Name = BlueZ
70+
71+# Default device class. Only the major and minor device class bits are
72+# considered. Defaults to '0x000000'.
73+#Class = 0x000100
74+
75+# How long to stay in discoverable mode before going back to non-discoverable
76+# The value is in seconds. Default is 180, i.e. 3 minutes.
77+# 0 = disable timer, i.e. stay discoverable forever
78+#DiscoverableTimeout = 0
79+
80+# How long to stay in pairable mode before going back to non-discoverable
81+# The value is in seconds. Default is 0.
82+# 0 = disable timer, i.e. stay pairable forever
83+#PairableTimeout = 0
84+
85+# Automatic connection for bonded devices driven by platform/user events.
86+# If a platform plugin uses this mechanism, automatic connections will be
87+# enabled during the interval defined below. Initially, this feature
88+# intends to be used to establish connections to ATT channels. Default is 60.
89+#AutoConnectTimeout = 60
90+
91+# Use vendor id source (assigner), vendor, product and version information for
92+# DID profile support. The values are separated by ":" and assigner, VID, PID
93+# and version.
94+# Possible vendor id source values: bluetooth, usb (defaults to usb)
95+#DeviceID = bluetooth:1234:5678:abcd
96+
97+# Do reverse service discovery for previously unknown devices that connect to
98+# us. This option is really only needed for qualification since the BITE tester
99+# doesn't like us doing reverse SDP for some test cases (though there could in
100+# theory be other useful purposes for this too). Defaults to 'true'.
101+#ReverseServiceDiscovery = true
102+
103+# Enable name resolving after inquiry. Set it to 'false' if you don't need
104+# remote devices name and want shorter discovery cycle. Defaults to 'true'.
105+#NameResolving = true
106+
107+# Enable runtime persistency of debug link keys. Default is false which
108+# makes debug link keys valid only for the duration of the connection
109+# that they were created for.
110+#DebugKeys = false
111+
112+# Restricts all controllers to the specified transport. Default value
113+# is "dual", i.e. both BR/EDR and LE enabled (when supported by the HW).
114+# Possible values: "dual", "bredr", "le"
115+#ControllerMode = dual
116+
117+# Enables Multi Profile Specification support. This allows to specify if
118+# system supports only Multiple Profiles Single Device (MPSD) configuration
119+# or both Multiple Profiles Single Device (MPSD) and Multiple Profiles Multiple
120+# Devices (MPMD) configurations.
121+# Possible values: "off", "single", "multiple"
122+#MultiProfile = off
123+
124+# Permanently enables the Fast Connectable setting for adapters that
125+# support it. When enabled other devices can connect faster to us,
126+# however the tradeoff is increased power consumptions. This feature
127+# will fully work only on kernel version 4.1 and newer. Defaults to
128+# 'false'.
129+#FastConnectable = false
130+
131+[Policy]
132+
133+# The ReconnectUUIDs defines the set of remote services that should try
134+# to be reconnected to in case of a link loss (link supervision
135+# timeout). The policy plugin should contain a sane set of values by
136+# default, but this list can be overridden here. By setting the list to
137+# empty the reconnection feature gets disabled.
138+#ReconnectUUIDs=00001112-0000-1000-8000-00805f9b34fb, 0000111f-0000-1000-8000-00805f9b34fb, 0000110a-0000-1000-8000-00805f9b34fb
139+
140+# ReconnectAttempts define the number of attempts to reconnect after a link
141+# lost. Setting the value to 0 disables reconnecting feature.
142+#ReconnectAttempts=7
143+
144+# ReconnectIntervals define the set of intervals in seconds to use in between
145+# attempts.
146+# If the number of attempts defined in ReconnectAttempts is bigger than the
147+# set of intervals the last interval is repeated until the last attempt.
148+#ReconnectIntervals=1, 2, 4, 8, 16, 32, 64
149+
150+# AutoEnable defines option to enable all controllers when they are found.
151+# This includes adapters present on start as well as adapters that are plugged
152+# in later on. Defaults to 'false'.
153+AutoEnable=true
154
155=== removed file 'debian/patches/0001-profiles-audio-add-big-endian-structure-definition-f.patch'
156--- debian/patches/0001-profiles-audio-add-big-endian-structure-definition-f.patch 2016-02-11 13:46:45 +0000
157+++ debian/patches/0001-profiles-audio-add-big-endian-structure-definition-f.patch 1970-01-01 00:00:00 +0000
158@@ -1,29 +0,0 @@
159-From d3056811f75aa788382f56848e3a871ae3cbbf33 Mon Sep 17 00:00:00 2001
160-From: Simon Fels <simon.fels@canonical.com>
161-Date: Thu, 11 Feb 2016 14:45:19 +0100
162-Subject: [PATCH] profiles: audio: add big endian structure definition for LDAC
163- codec
164-
165----
166- profiles/audio/a2dp-codecs.h | 5 +++++
167- 1 file changed, 5 insertions(+)
168-
169-diff --git a/profiles/audio/a2dp-codecs.h b/profiles/audio/a2dp-codecs.h
170-index e9da0bf..4fb5c0c 100644
171---- a/profiles/audio/a2dp-codecs.h
172-+++ b/profiles/audio/a2dp-codecs.h
173-@@ -234,6 +234,11 @@ typedef struct {
174- uint8_t channel_mode:4;
175- } __attribute__ ((packed)) a2dp_aptx_t;
176-
177-+typedef struct {
178-+ a2dp_vendor_codec_t info;
179-+ uint8_t unknown[2];
180-+} __attribute__ ((packed)) a2dp_ldac_t;
181-+
182- #else
183- #error "Unknown byte order"
184- #endif
185---
186-2.5.0
187-
188
189=== removed file 'debian/patches/0005-audio-media-return-empty-string-when-player-name-is-.patch'
190--- debian/patches/0005-audio-media-return-empty-string-when-player-name-is-.patch 2016-01-24 00:07:20 +0000
191+++ debian/patches/0005-audio-media-return-empty-string-when-player-name-is-.patch 1970-01-01 00:00:00 +0000
192@@ -1,55 +0,0 @@
193-From c9055958af1dec734b66bf4c941ee7392034c958 Mon Sep 17 00:00:00 2001
194-From: Simon Fels <simon.fels@canonical.com>
195-Date: Wed, 2 Dec 2015 11:58:54 +0100
196-Subject: [PATCH 5/5] audio/media: return empty string when player name is not
197- available
198-
199-If the name for the player is set as NULL we will crash later on
200-so taking a valid default is required.
201-
202-Crash observed without this:
203-
204-Program terminated with signal SIGSEGV, Segmentation fault.
205-0 strlen () at ../sysdeps/arm/armv6t2/strlen.S:85
206-85 ../sysdeps/arm/armv6t2/strlen.S: No such file or directory.
207-(gdb) bt
208-0 strlen () at ../sysdeps/arm/armv6t2/strlen.S:85
209-1 0xb6f13ebc in avrcp_handle_media_player_list (session=0xb8f339c0,
210- session=0xb8f339c0, end_item=<optimized out>, start_item=<optimized out>,
211- pdu=0xb8f43283) at profiles/audio/avrcp.c:1917
212-2 avrcp_handle_get_folder_items (session=0xb8f339c0, pdu=0xb8f43283,
213- transaction=<optimized out>) at profiles/audio/avrcp.c:1968
214-3 0xb6f13fb8 in handle_browsing_pdu (conn=<optimized out>,
215- transaction=<optimized out>, operands=0xb8f43283 "q\b",
216- operand_count=<optimized out>, user_data=0xb8f339c0)
217- at profiles/audio/avrcp.c:2028
218-4 0xb6f0f088 in session_browsing_cb (chan=<optimized out>,
219- cond=<optimized out>, data=0xb8f3ba28) at profiles/audio/avctp.c:930
220-5 0xb6e19e90 in g_main_dispatch (context=0xb8f28100)
221- at /build/buildd/glib2.0-2.44.1/./glib/gmain.c:3122
222-6 g_main_context_dispatch (context=context@entry=0xb8f28100)
223- at /build/buildd/glib2.0-2.44.1/./glib/gmain.c:3737
224-7 0xb6e1a114 in g_main_context_iterate (context=0xb8f28100,
225- block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>)
226- at /build/buildd/glib2.0-2.44.1/./glib/gmain.c:3808
227-8 0xb6e1a3b0 in g_main_loop_run (loop=0xb8f28030)
228- at /build/buildd/glib2.0-2.44.1/./glib/gmain.c:4002
229-9 0xb6efef3e in main (argc=1, argv=0xbebdde04) at src/main.c:661
230----
231- profiles/audio/media.c | 3 +++
232- 1 file changed, 3 insertions(+)
233-
234-Index: bluez-5.37/profiles/audio/media.c
235-===================================================================
236---- bluez-5.37.orig/profiles/audio/media.c
237-+++ bluez-5.37/profiles/audio/media.c
238-@@ -1018,6 +1018,9 @@ static const char *get_player_name(void
239- {
240- struct media_player *mp = user_data;
241-
242-+ if (!mp->name)
243-+ return "";
244-+
245- return mp->name;
246- }
247-
248
249=== modified file 'debian/patches/series'
250--- debian/patches/series 2016-02-11 13:46:45 +0000
251+++ debian/patches/series 2016-07-21 16:14:36 +0000
252@@ -14,5 +14,3 @@
253 # dropped with one of the next releases
254 0003-tools-mpris-proxy-allow-user-to-specify-different-mp.patch
255 0004-obexd-enable-ebook-backend-conditionally.patch
256-0005-audio-media-return-empty-string-when-player-name-is-.patch
257-0001-profiles-audio-add-big-endian-structure-definition-f.patch

Subscribers

People subscribed via source and target branches

to all changes: