Re: [PATCH BlueZ] avrcp: Fix always requesting player settings for category 1

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 2020-05-28 03:23, Andrey Semashev wrote:
On 2020-05-28 01:46, Luiz Augusto von Dentz wrote:
On Wed, May 27, 2020 at 3:43 PM Luiz Augusto von Dentz
<luiz.dentz@xxxxxxxxx> wrote:

From: Luiz Augusto von Dentz <luiz.von.dentz@xxxxxxxxx>

Player Application settings is not mandatory for category 1 so instead
of always listing the settings the code now checks if
AVRCP_FEATURE_PLAYER_SETTINGS is enabled.
---
  profiles/audio/avrcp.c | 3 ++-
  1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/profiles/audio/avrcp.c b/profiles/audio/avrcp.c
index 773ccdb60..75811bf98 100644
--- a/profiles/audio/avrcp.c
+++ b/profiles/audio/avrcp.c
@@ -3814,7 +3814,8 @@ static gboolean avrcp_get_capabilities_resp(struct avctp *conn, uint8_t code,
         if (!session->controller || !session->controller->player)
                 return FALSE;

-       if (!(events & (1 << AVRCP_EVENT_SETTINGS_CHANGED)))
+       if ((session->controller->features & AVRCP_FEATURE_PLAYER_SETTINGS) &&
+                       !(events & (1 << AVRCP_EVENT_SETTINGS_CHANGED)))
                 avrcp_list_player_attributes(session);

         if (!(events & (1 << AVRCP_EVENT_STATUS_CHANGED)))
--
2.25.3

Please let me know if you are able to test the above patch, it should
fix the problem with Senheisers headsets if the are not setting the
Player Settings bits this would prevent the command to be send so it
doesn't crash.


I'll try it with Momentum True Wireless 2 tomorrow.

The headset still reboots while trying to connect, although now it reboots after receiving AVRCP GetPlayStatus.

I'm attaching packet dumps in btsnoop and pcap formats.

Attachment: mtw2.btsnoop
Description: Binary data

Attachment: mtw2.pcapng
Description: application/pcapng


[Index of Archives]     [Bluez Devel]     [Linux Wireless Networking]     [Linux Wireless Personal Area Networking]     [Linux ATH6KL]     [Linux USB Devel]     [Linux Media Drivers]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Big List of Linux Books]

  Powered by Linux