Linux bluetooth development
 help / color / mirror / Atom feed
* [PATCH BlueZ] bap: Fix CCC value for ASE control point
@ 2026-06-08 11:20 Simon Mikuda
  2026-06-08 12:23 ` [BlueZ] " bluez.test.bot
  2026-06-08 13:44 ` [PATCH BlueZ] " Luiz Augusto von Dentz
  0 siblings, 2 replies; 3+ messages in thread
From: Simon Mikuda @ 2026-06-08 11:20 UTC (permalink / raw)
  To: linux-bluetooth; +Cc: Simon Mikuda

WriteWithoutResponse was missing
---
 src/shared/bap.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/src/shared/bap.c b/src/shared/bap.c
index 8fc2fb14d..968b85730 100644
--- a/src/shared/bap.c
+++ b/src/shared/bap.c
@@ -3776,6 +3776,7 @@ static struct bt_ascs *ascs_new(struct gatt_db *db)
 					&uuid,
 					BT_ATT_PERM_WRITE,
 					BT_GATT_CHRC_PROP_WRITE |
+					BT_GATT_CHRC_PROP_WRITE_WITHOUT_RESP |
 					BT_GATT_CHRC_PROP_NOTIFY,
 					NULL, ascs_ase_cp_write,
 					ascs);
-- 
2.43.0


^ permalink raw reply related	[flat|nested] 3+ messages in thread

* RE: [BlueZ] bap: Fix CCC value for ASE control point
  2026-06-08 11:20 [PATCH BlueZ] bap: Fix CCC value for ASE control point Simon Mikuda
@ 2026-06-08 12:23 ` bluez.test.bot
  2026-06-08 13:44 ` [PATCH BlueZ] " Luiz Augusto von Dentz
  1 sibling, 0 replies; 3+ messages in thread
From: bluez.test.bot @ 2026-06-08 12:23 UTC (permalink / raw)
  To: linux-bluetooth, simon.mikuda

[-- Attachment #1: Type: text/plain, Size: 3038 bytes --]

This is automated email and please do not reply to this email!

Dear submitter,

Thank you for submitting the patches to the linux bluetooth mailing list.
This is a CI test results with your patch series:
PW Link:https://patchwork.kernel.org/project/bluetooth/list/?series=1107783

---Test result---

Test Summary:
CheckPatch                    PASS      1.74 seconds
GitLint                       PASS      0.26 seconds
BuildEll                      PASS      17.88 seconds
BluezMake                     PASS      625.12 seconds
MakeCheck                     FAIL      1.07 seconds
MakeDistcheck                 FAIL      196.67 seconds
CheckValgrind                 FAIL      207.73 seconds
CheckSmatch                   WARNING   313.42 seconds
bluezmakeextell               PASS      168.96 seconds
IncrementalBuild              PASS      642.26 seconds
ScanBuild                     PASS      933.49 seconds

Details
##############################
Test: MakeCheck - FAIL
Desc: Run Bluez Make Check
Output:

./test-driver: line 107: 31157 Aborted                 (core dumped) "$@" > $log_file 2>&1
make[3]: *** [Makefile:10239: test-suite.log] Error 1
make[2]: *** [Makefile:10347: check-TESTS] Error 2
make[1]: *** [Makefile:10818: check-am] Error 2
make: *** [Makefile:10820: check] Error 2
##############################
Test: MakeDistcheck - FAIL
Desc: Run Bluez Make Distcheck
Output:

../../test-driver: line 107: 52919 Aborted                 (core dumped) "$@" > $log_file 2>&1
make[4]: *** [Makefile:10239: test-suite.log] Error 1
make[3]: *** [Makefile:10347: check-TESTS] Error 2
make[2]: *** [Makefile:10818: check-am] Error 2
make[1]: *** [Makefile:10820: check] Error 2
make: *** [Makefile:10741: distcheck] Error 1
##############################
Test: CheckValgrind - FAIL
Desc: Run Bluez Make Check with Valgrind
Output:

tools/mgmt-tester.c: In function ‘main’:
tools/mgmt-tester.c:12990:5: note: variable tracking size limit exceeded with ‘-fvar-tracking-assignments’, retrying without
12990 | int main(int argc, char *argv[])
      |     ^~~~
./test-driver: line 107: 71652 Aborted                 (core dumped) "$@" > $log_file 2>&1
make[3]: *** [Makefile:10239: test-suite.log] Error 1
make[2]: *** [Makefile:10347: check-TESTS] Error 2
make[1]: *** [Makefile:10818: check-am] Error 2
make: *** [Makefile:10820: check] Error 2
##############################
Test: CheckSmatch - WARNING
Desc: Run smatch tool with source
Output:
src/shared/bap.c:312:25: warning: array of flexible structuressrc/shared/bap.c: note: in included file:./src/shared/ascs.h:88:25: warning: array of flexible structuressrc/shared/bap.c:312:25: warning: array of flexible structuressrc/shared/bap.c: note: in included file:./src/shared/ascs.h:88:25: warning: array of flexible structuressrc/shared/bap.c:312:25: warning: array of flexible structuressrc/shared/bap.c: note: in included file:./src/shared/ascs.h:88:25: warning: array of flexible structures


https://github.com/bluez/bluez/pull/2190

---
Regards,
Linux Bluetooth


^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [PATCH BlueZ] bap: Fix CCC value for ASE control point
  2026-06-08 11:20 [PATCH BlueZ] bap: Fix CCC value for ASE control point Simon Mikuda
  2026-06-08 12:23 ` [BlueZ] " bluez.test.bot
@ 2026-06-08 13:44 ` Luiz Augusto von Dentz
  1 sibling, 0 replies; 3+ messages in thread
From: Luiz Augusto von Dentz @ 2026-06-08 13:44 UTC (permalink / raw)
  To: Simon Mikuda; +Cc: linux-bluetooth

Hi Simon,

On Mon, Jun 8, 2026 at 7:31 AM Simon Mikuda
<simon.mikuda@streamunlimited.com> wrote:
>
> WriteWithoutResponse was missing
> ---
>  src/shared/bap.c | 1 +
>  1 file changed, 1 insertion(+)
>
> diff --git a/src/shared/bap.c b/src/shared/bap.c
> index 8fc2fb14d..968b85730 100644
> --- a/src/shared/bap.c
> +++ b/src/shared/bap.c
> @@ -3776,6 +3776,7 @@ static struct bt_ascs *ascs_new(struct gatt_db *db)
>                                         &uuid,
>                                         BT_ATT_PERM_WRITE,
>                                         BT_GATT_CHRC_PROP_WRITE |
> +                                       BT_GATT_CHRC_PROP_WRITE_WITHOUT_RESP |
>                                         BT_GATT_CHRC_PROP_NOTIFY,
>                                         NULL, ascs_ase_cp_write,
>                                         ascs);
> --
> 2.43.0
>

CCCD explicitly requires ATT Write Request as per amber.bluetooth.com:

Core GATT does not allow Write Without Response for the standard
“Write Characteristic Descriptor” sub-procedure. For a CCCD write, the
defined descriptor-write procedure uses ATT_WRITE_REQ / ATT_WRITE_RSP,
not ATT_WRITE_CMD.

The exact source is Core Specification 6.3, Vol 3, Part G, Section
4.12.3. That section says Write Characteristic Descriptor uses
ATT_WRITE_REQ, and the server returns ATT_WRITE_RSP if successful. The
procedure mapping in Core Specification 6.3, Vol 3, Part G, Section
4.12 lists only these descriptor sub-procedures: Read Characteristic
Descriptor, Read Long Characteristic Descriptor, Write Characteristic
Descriptor, and Write Long Characteristic Descriptor. It does not
include a descriptor variant of Write Without Response.

Supporting mapping is also explicit in Core Specification 6.3, Vol 3,
Part G, Section 4.13:

Write Without Response maps to Characteristic Value Write
Write Characteristic Descriptor is a separate procedure

So for your original ASCS question, the answer remains:

ASE CCCD configuration is not specified as Write Without Response
The Core GATT descriptor write procedure is a write with response
A CCCD write should use ATT_WRITE_REQ, not ATT_WRITE_CMD

One subtle but important distinction: Write Without Response exists
for Characteristic Value writes under Core Specification 6.3, Vol 3,
Part G, Section 4.9.1. That does not make it a valid GATT
sub-procedure for descriptor writes such as CCCD.

-- 
Luiz Augusto von Dentz

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2026-06-08 13:44 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-06-08 11:20 [PATCH BlueZ] bap: Fix CCC value for ASE control point Simon Mikuda
2026-06-08 12:23 ` [BlueZ] " bluez.test.bot
2026-06-08 13:44 ` [PATCH BlueZ] " Luiz Augusto von Dentz

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox