Message ID | 20220912124657.404551-2-sathish.narasimman@intel.com |
---|---|
State | Superseded |
Headers | show |
Series | Volume Control Profile | expand |
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=676220 ---Test result--- Test Summary: CheckPatch FAIL 5.79 seconds GitLint PASS 3.00 seconds Prep - Setup ELL PASS 31.92 seconds Build - Prep PASS 0.90 seconds Build - Configure PASS 9.87 seconds Build - Make PASS 1165.82 seconds Make Check PASS 12.98 seconds Make Check w/Valgrind PASS 355.07 seconds Make Distcheck PASS 306.75 seconds Build w/ext ELL - Configure PASS 10.50 seconds Build w/ext ELL - Make PASS 107.90 seconds Incremental Build w/ patches PASS 510.36 seconds Scan Build WARNING 1238.26 seconds Details ############################## Test: CheckPatch - FAIL Desc: Run checkpatch.pl script with rule in .checkpatch.conf Output: [BlueZ,2/4] shared/vcp: Add initial code for handling VCP WARNING:LONG_LINE: line length of 88 exceeds 80 columns #393: FILE: src/shared/vcp.c:302: + gatt_db_attribute_notify(vdb->vcs->vs, (void *)vstate, sizeof(struct vol_state), WARNING:LONG_LINE: line length of 88 exceeds 80 columns #425: FILE: src/shared/vcp.c:334: + gatt_db_attribute_notify(vdb->vcs->vs, (void *)vstate, sizeof(struct vol_state), WARNING:LONG_LINE: line length of 88 exceeds 80 columns #458: FILE: src/shared/vcp.c:367: + gatt_db_attribute_notify(vdb->vcs->vs, (void *)vstate, sizeof(struct vol_state), WARNING:LONG_LINE: line length of 88 exceeds 80 columns #491: FILE: src/shared/vcp.c:400: + gatt_db_attribute_notify(vdb->vcs->vs, (void *)vstate, sizeof(struct vol_state), WARNING:LONG_LINE: line length of 88 exceeds 80 columns #523: FILE: src/shared/vcp.c:432: + gatt_db_attribute_notify(vdb->vcs->vs, (void *)vstate, sizeof(struct vol_state), WARNING:LONG_LINE: line length of 88 exceeds 80 columns #555: FILE: src/shared/vcp.c:464: + gatt_db_attribute_notify(vdb->vcs->vs, (void *)vstate, sizeof(struct vol_state), WARNING:LONG_LINE: line length of 82 exceeds 80 columns #1051: FILE: src/shared/vcp.c:960: + value_handle, vcp_vstate_register, WARNING:LONG_LINE: line length of 81 exceeds 80 columns #1080: FILE: src/shared/vcp.c:989: + value_handle, vcp_vflag_register, WARNING:PREFER_DEFINED_ATTRIBUTE_MACRO: Prefer __packed over __attribute__((packed)) #1146: FILE: src/shared/vcp.h:16: +#define __packed __attribute__((packed)) /github/workspace/src/12973630.patch total: 0 errors, 9 warnings, 1098 lines checked NOTE: For some of the reported defects, checkpatch may be able to mechanically convert to the typical style using --fix or --fix-inplace. /github/workspace/src/12973630.patch has style problems, please review. NOTE: Ignored message types: COMMIT_MESSAGE COMPLEX_MACRO CONST_STRUCT FILE_PATH_CHANGES MISSING_SIGN_OFF PREFER_PACKED SPDX_LICENSE_TAG SPLIT_STRING SSCANF_TO_KSTRTO NOTE: If any of the errors are false positives, please report them to the maintainer, see CHECKPATCH in MAINTAINERS. [BlueZ,3/4] profiles: Add initial code for vcp plugin ERROR:INITIALISED_STATIC: do not initialise statics to 0 #395: FILE: profiles/audio/vcp.c:288: +static unsigned int vcp_id = 0; /github/workspace/src/12973633.patch total: 1 errors, 0 warnings, 330 lines checked NOTE: For some of the reported defects, checkpatch may be able to mechanically convert to the typical style using --fix or --fix-inplace. /github/workspace/src/12973633.patch has style problems, please review. NOTE: Ignored message types: COMMIT_MESSAGE COMPLEX_MACRO CONST_STRUCT FILE_PATH_CHANGES MISSING_SIGN_OFF PREFER_PACKED SPDX_LICENSE_TAG SPLIT_STRING SSCANF_TO_KSTRTO NOTE: If any of the errors are false positives, please report them to the maintainer, see CHECKPATCH in MAINTAINERS. ############################## Test: Scan Build - WARNING Desc: Run Scan Build with patches Output: ***************************************************************************** The bugs reported by the scan-build may or may not be caused by your patches. Please check the list and fix the bugs if they are caused by your patch. ***************************************************************************** src/shared/vcp.c:288:11: warning: Access to field 'vcs' results in a dereference of a null pointer (loaded from variable 'vdb') vstate = vdb->vcs->vstate; ^~~~~~~~ src/shared/vcp.c:294:25: warning: Access to field 'counter' results in a dereference of a null pointer (loaded from variable 'vstate') if (*change_counter != vstate->counter) { ^~~~~~~~~~~~~~~ src/shared/vcp.c:320:11: warning: Access to field 'vcs' results in a dereference of a null pointer (loaded from variable 'vdb') vstate = vdb->vcs->vstate; ^~~~~~~~ src/shared/vcp.c:326:25: warning: Access to field 'counter' results in a dereference of a null pointer (loaded from variable 'vstate') if (*change_counter != vstate->counter) { ^~~~~~~~~~~~~~~ src/shared/vcp.c:352:11: warning: Access to field 'vcs' results in a dereference of a null pointer (loaded from variable 'vdb') vstate = vdb->vcs->vstate; ^~~~~~~~ src/shared/vcp.c:358:25: warning: Access to field 'counter' results in a dereference of a null pointer (loaded from variable 'vstate') if (*change_counter != vstate->counter) { ^~~~~~~~~~~~~~~ src/shared/vcp.c:385:11: warning: Access to field 'vcs' results in a dereference of a null pointer (loaded from variable 'vdb') vstate = vdb->vcs->vstate; ^~~~~~~~ src/shared/vcp.c:391:25: warning: Access to field 'counter' results in a dereference of a null pointer (loaded from variable 'vstate') if (*change_counter != vstate->counter) { ^~~~~~~~~~~~~~~ src/shared/vcp.c:418:11: warning: Access to field 'vcs' results in a dereference of a null pointer (loaded from variable 'vdb') vstate = vdb->vcs->vstate; ^~~~~~~~ src/shared/vcp.c:424:29: warning: Access to field 'counter' results in a dereference of a null pointer (loaded from variable 'vstate') if (req->change_counter != vstate->counter) { ^~~~~~~~~~~~~~~ src/shared/vcp.c:450:11: warning: Access to field 'vcs' results in a dereference of a null pointer (loaded from variable 'vdb') vstate = vdb->vcs->vstate; ^~~~~~~~ src/shared/vcp.c:456:25: warning: Access to field 'counter' results in a dereference of a null pointer (loaded from variable 'vstate') if (*change_counter != vstate->counter) { ^~~~~~~~~~~~~~~ src/shared/vcp.c:482:11: warning: Access to field 'vcs' results in a dereference of a null pointer (loaded from variable 'vdb') vstate = vdb->vcs->vstate; ^~~~~~~~ src/shared/vcp.c:488:25: warning: Access to field 'counter' results in a dereference of a null pointer (loaded from variable 'vstate') if (*change_counter != vstate->counter) { ^~~~~~~~~~~~~~~ 14 warnings generated. --- Regards, Linux Bluetooth
Hi Sathish, On Mon, Sep 12, 2022 at 7:08 AM <bluez.test.bot@gmail.com> wrote: > > 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=676220 > > ---Test result--- > > Test Summary: > CheckPatch FAIL 5.79 seconds > GitLint PASS 3.00 seconds > Prep - Setup ELL PASS 31.92 seconds > Build - Prep PASS 0.90 seconds > Build - Configure PASS 9.87 seconds > Build - Make PASS 1165.82 seconds > Make Check PASS 12.98 seconds > Make Check w/Valgrind PASS 355.07 seconds > Make Distcheck PASS 306.75 seconds > Build w/ext ELL - Configure PASS 10.50 seconds > Build w/ext ELL - Make PASS 107.90 seconds > Incremental Build w/ patches PASS 510.36 seconds > Scan Build WARNING 1238.26 seconds > > Details > ############################## > Test: CheckPatch - FAIL > Desc: Run checkpatch.pl script with rule in .checkpatch.conf > Output: > [BlueZ,2/4] shared/vcp: Add initial code for handling VCP > WARNING:LONG_LINE: line length of 88 exceeds 80 columns > #393: FILE: src/shared/vcp.c:302: > + gatt_db_attribute_notify(vdb->vcs->vs, (void *)vstate, sizeof(struct vol_state), > > WARNING:LONG_LINE: line length of 88 exceeds 80 columns > #425: FILE: src/shared/vcp.c:334: > + gatt_db_attribute_notify(vdb->vcs->vs, (void *)vstate, sizeof(struct vol_state), > > WARNING:LONG_LINE: line length of 88 exceeds 80 columns > #458: FILE: src/shared/vcp.c:367: > + gatt_db_attribute_notify(vdb->vcs->vs, (void *)vstate, sizeof(struct vol_state), > > WARNING:LONG_LINE: line length of 88 exceeds 80 columns > #491: FILE: src/shared/vcp.c:400: > + gatt_db_attribute_notify(vdb->vcs->vs, (void *)vstate, sizeof(struct vol_state), > > WARNING:LONG_LINE: line length of 88 exceeds 80 columns > #523: FILE: src/shared/vcp.c:432: > + gatt_db_attribute_notify(vdb->vcs->vs, (void *)vstate, sizeof(struct vol_state), > > WARNING:LONG_LINE: line length of 88 exceeds 80 columns > #555: FILE: src/shared/vcp.c:464: > + gatt_db_attribute_notify(vdb->vcs->vs, (void *)vstate, sizeof(struct vol_state), > > WARNING:LONG_LINE: line length of 82 exceeds 80 columns > #1051: FILE: src/shared/vcp.c:960: > + value_handle, vcp_vstate_register, > > WARNING:LONG_LINE: line length of 81 exceeds 80 columns > #1080: FILE: src/shared/vcp.c:989: > + value_handle, vcp_vflag_register, > > WARNING:PREFER_DEFINED_ATTRIBUTE_MACRO: Prefer __packed over __attribute__((packed)) > #1146: FILE: src/shared/vcp.h:16: > +#define __packed __attribute__((packed)) > > /github/workspace/src/12973630.patch total: 0 errors, 9 warnings, 1098 lines checked > > NOTE: For some of the reported defects, checkpatch may be able to > mechanically convert to the typical style using --fix or --fix-inplace. > > /github/workspace/src/12973630.patch has style problems, please review. > > NOTE: Ignored message types: COMMIT_MESSAGE COMPLEX_MACRO CONST_STRUCT FILE_PATH_CHANGES MISSING_SIGN_OFF PREFER_PACKED SPDX_LICENSE_TAG SPLIT_STRING SSCANF_TO_KSTRTO > > NOTE: If any of the errors are false positives, please report > them to the maintainer, see CHECKPATCH in MAINTAINERS. > > [BlueZ,3/4] profiles: Add initial code for vcp plugin > ERROR:INITIALISED_STATIC: do not initialise statics to 0 > #395: FILE: profiles/audio/vcp.c:288: > +static unsigned int vcp_id = 0; > > /github/workspace/src/12973633.patch total: 1 errors, 0 warnings, 330 lines checked > > NOTE: For some of the reported defects, checkpatch may be able to > mechanically convert to the typical style using --fix or --fix-inplace. > > /github/workspace/src/12973633.patch has style problems, please review. > > NOTE: Ignored message types: COMMIT_MESSAGE COMPLEX_MACRO CONST_STRUCT FILE_PATH_CHANGES MISSING_SIGN_OFF PREFER_PACKED SPDX_LICENSE_TAG SPLIT_STRING SSCANF_TO_KSTRTO > > NOTE: If any of the errors are false positives, please report > them to the maintainer, see CHECKPATCH in MAINTAINERS. > > > ############################## > Test: Scan Build - WARNING > Desc: Run Scan Build with patches > Output: > ***************************************************************************** > The bugs reported by the scan-build may or may not be caused by your patches. > Please check the list and fix the bugs if they are caused by your patch. > ***************************************************************************** > src/shared/vcp.c:288:11: warning: Access to field 'vcs' results in a dereference of a null pointer (loaded from variable 'vdb') > vstate = vdb->vcs->vstate; > ^~~~~~~~ > src/shared/vcp.c:294:25: warning: Access to field 'counter' results in a dereference of a null pointer (loaded from variable 'vstate') > if (*change_counter != vstate->counter) { > ^~~~~~~~~~~~~~~ > src/shared/vcp.c:320:11: warning: Access to field 'vcs' results in a dereference of a null pointer (loaded from variable 'vdb') > vstate = vdb->vcs->vstate; > ^~~~~~~~ > src/shared/vcp.c:326:25: warning: Access to field 'counter' results in a dereference of a null pointer (loaded from variable 'vstate') > if (*change_counter != vstate->counter) { > ^~~~~~~~~~~~~~~ > src/shared/vcp.c:352:11: warning: Access to field 'vcs' results in a dereference of a null pointer (loaded from variable 'vdb') > vstate = vdb->vcs->vstate; > ^~~~~~~~ > src/shared/vcp.c:358:25: warning: Access to field 'counter' results in a dereference of a null pointer (loaded from variable 'vstate') > if (*change_counter != vstate->counter) { > ^~~~~~~~~~~~~~~ > src/shared/vcp.c:385:11: warning: Access to field 'vcs' results in a dereference of a null pointer (loaded from variable 'vdb') > vstate = vdb->vcs->vstate; > ^~~~~~~~ > src/shared/vcp.c:391:25: warning: Access to field 'counter' results in a dereference of a null pointer (loaded from variable 'vstate') > if (*change_counter != vstate->counter) { > ^~~~~~~~~~~~~~~ > src/shared/vcp.c:418:11: warning: Access to field 'vcs' results in a dereference of a null pointer (loaded from variable 'vdb') > vstate = vdb->vcs->vstate; > ^~~~~~~~ > src/shared/vcp.c:424:29: warning: Access to field 'counter' results in a dereference of a null pointer (loaded from variable 'vstate') > if (req->change_counter != vstate->counter) { > ^~~~~~~~~~~~~~~ > src/shared/vcp.c:450:11: warning: Access to field 'vcs' results in a dereference of a null pointer (loaded from variable 'vdb') > vstate = vdb->vcs->vstate; > ^~~~~~~~ > src/shared/vcp.c:456:25: warning: Access to field 'counter' results in a dereference of a null pointer (loaded from variable 'vstate') > if (*change_counter != vstate->counter) { > ^~~~~~~~~~~~~~~ > src/shared/vcp.c:482:11: warning: Access to field 'vcs' results in a dereference of a null pointer (loaded from variable 'vdb') > vstate = vdb->vcs->vstate; > ^~~~~~~~ > src/shared/vcp.c:488:25: warning: Access to field 'counter' results in a dereference of a null pointer (loaded from variable 'vstate') > if (*change_counter != vstate->counter) { > ^~~~~~~~~~~~~~~ > 14 warnings generated. Would you please fix the above problems, also Id reorder the patches so the monitor changes can be applied before the others.
Hi Luiz Updated v2 of the patch. Please review On Thu, Sep 15, 2022 at 3:18 AM Luiz Augusto von Dentz <luiz.dentz@gmail.com> wrote: > > Hi Sathish, > > On Mon, Sep 12, 2022 at 7:08 AM <bluez.test.bot@gmail.com> wrote: > > > > 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=676220 > > > > ---Test result--- > > > > Test Summary: > > CheckPatch FAIL 5.79 seconds > > GitLint PASS 3.00 seconds > > Prep - Setup ELL PASS 31.92 seconds > > Build - Prep PASS 0.90 seconds > > Build - Configure PASS 9.87 seconds > > Build - Make PASS 1165.82 seconds > > Make Check PASS 12.98 seconds > > Make Check w/Valgrind PASS 355.07 seconds > > Make Distcheck PASS 306.75 seconds > > Build w/ext ELL - Configure PASS 10.50 seconds > > Build w/ext ELL - Make PASS 107.90 seconds > > Incremental Build w/ patches PASS 510.36 seconds > > Scan Build WARNING 1238.26 seconds > > > > Details > > ############################## > > Test: CheckPatch - FAIL > > Desc: Run checkpatch.pl script with rule in .checkpatch.conf > > Output: > > [BlueZ,2/4] shared/vcp: Add initial code for handling VCP > > WARNING:LONG_LINE: line length of 88 exceeds 80 columns > > #393: FILE: src/shared/vcp.c:302: > > + gatt_db_attribute_notify(vdb->vcs->vs, (void *)vstate, sizeof(struct vol_state), > > > > WARNING:LONG_LINE: line length of 88 exceeds 80 columns > > #425: FILE: src/shared/vcp.c:334: > > + gatt_db_attribute_notify(vdb->vcs->vs, (void *)vstate, sizeof(struct vol_state), > > > > WARNING:LONG_LINE: line length of 88 exceeds 80 columns > > #458: FILE: src/shared/vcp.c:367: > > + gatt_db_attribute_notify(vdb->vcs->vs, (void *)vstate, sizeof(struct vol_state), > > > > WARNING:LONG_LINE: line length of 88 exceeds 80 columns > > #491: FILE: src/shared/vcp.c:400: > > + gatt_db_attribute_notify(vdb->vcs->vs, (void *)vstate, sizeof(struct vol_state), > > > > WARNING:LONG_LINE: line length of 88 exceeds 80 columns > > #523: FILE: src/shared/vcp.c:432: > > + gatt_db_attribute_notify(vdb->vcs->vs, (void *)vstate, sizeof(struct vol_state), > > > > WARNING:LONG_LINE: line length of 88 exceeds 80 columns > > #555: FILE: src/shared/vcp.c:464: > > + gatt_db_attribute_notify(vdb->vcs->vs, (void *)vstate, sizeof(struct vol_state), > > > > WARNING:LONG_LINE: line length of 82 exceeds 80 columns > > #1051: FILE: src/shared/vcp.c:960: > > + value_handle, vcp_vstate_register, > > > > WARNING:LONG_LINE: line length of 81 exceeds 80 columns > > #1080: FILE: src/shared/vcp.c:989: > > + value_handle, vcp_vflag_register, > > > > WARNING:PREFER_DEFINED_ATTRIBUTE_MACRO: Prefer __packed over __attribute__((packed)) > > #1146: FILE: src/shared/vcp.h:16: > > +#define __packed __attribute__((packed)) > > > > /github/workspace/src/12973630.patch total: 0 errors, 9 warnings, 1098 lines checked > > > > NOTE: For some of the reported defects, checkpatch may be able to > > mechanically convert to the typical style using --fix or --fix-inplace. > > > > /github/workspace/src/12973630.patch has style problems, please review. > > > > NOTE: Ignored message types: COMMIT_MESSAGE COMPLEX_MACRO CONST_STRUCT FILE_PATH_CHANGES MISSING_SIGN_OFF PREFER_PACKED SPDX_LICENSE_TAG SPLIT_STRING SSCANF_TO_KSTRTO > > > > NOTE: If any of the errors are false positives, please report > > them to the maintainer, see CHECKPATCH in MAINTAINERS. > > > > [BlueZ,3/4] profiles: Add initial code for vcp plugin > > ERROR:INITIALISED_STATIC: do not initialise statics to 0 > > #395: FILE: profiles/audio/vcp.c:288: > > +static unsigned int vcp_id = 0; > > > > /github/workspace/src/12973633.patch total: 1 errors, 0 warnings, 330 lines checked > > > > NOTE: For some of the reported defects, checkpatch may be able to > > mechanically convert to the typical style using --fix or --fix-inplace. > > > > /github/workspace/src/12973633.patch has style problems, please review. > > > > NOTE: Ignored message types: COMMIT_MESSAGE COMPLEX_MACRO CONST_STRUCT FILE_PATH_CHANGES MISSING_SIGN_OFF PREFER_PACKED SPDX_LICENSE_TAG SPLIT_STRING SSCANF_TO_KSTRTO > > > > NOTE: If any of the errors are false positives, please report > > them to the maintainer, see CHECKPATCH in MAINTAINERS. > > > > > > ############################## > > Test: Scan Build - WARNING > > Desc: Run Scan Build with patches > > Output: > > ***************************************************************************** > > The bugs reported by the scan-build may or may not be caused by your patches. > > Please check the list and fix the bugs if they are caused by your patch. > > ***************************************************************************** > > src/shared/vcp.c:288:11: warning: Access to field 'vcs' results in a dereference of a null pointer (loaded from variable 'vdb') > > vstate = vdb->vcs->vstate; > > ^~~~~~~~ > > src/shared/vcp.c:294:25: warning: Access to field 'counter' results in a dereference of a null pointer (loaded from variable 'vstate') > > if (*change_counter != vstate->counter) { > > ^~~~~~~~~~~~~~~ > > src/shared/vcp.c:320:11: warning: Access to field 'vcs' results in a dereference of a null pointer (loaded from variable 'vdb') > > vstate = vdb->vcs->vstate; > > ^~~~~~~~ > > src/shared/vcp.c:326:25: warning: Access to field 'counter' results in a dereference of a null pointer (loaded from variable 'vstate') > > if (*change_counter != vstate->counter) { > > ^~~~~~~~~~~~~~~ > > src/shared/vcp.c:352:11: warning: Access to field 'vcs' results in a dereference of a null pointer (loaded from variable 'vdb') > > vstate = vdb->vcs->vstate; > > ^~~~~~~~ > > src/shared/vcp.c:358:25: warning: Access to field 'counter' results in a dereference of a null pointer (loaded from variable 'vstate') > > if (*change_counter != vstate->counter) { > > ^~~~~~~~~~~~~~~ > > src/shared/vcp.c:385:11: warning: Access to field 'vcs' results in a dereference of a null pointer (loaded from variable 'vdb') > > vstate = vdb->vcs->vstate; > > ^~~~~~~~ > > src/shared/vcp.c:391:25: warning: Access to field 'counter' results in a dereference of a null pointer (loaded from variable 'vstate') > > if (*change_counter != vstate->counter) { > > ^~~~~~~~~~~~~~~ > > src/shared/vcp.c:418:11: warning: Access to field 'vcs' results in a dereference of a null pointer (loaded from variable 'vdb') > > vstate = vdb->vcs->vstate; > > ^~~~~~~~ > > src/shared/vcp.c:424:29: warning: Access to field 'counter' results in a dereference of a null pointer (loaded from variable 'vstate') > > if (req->change_counter != vstate->counter) { > > ^~~~~~~~~~~~~~~ > > src/shared/vcp.c:450:11: warning: Access to field 'vcs' results in a dereference of a null pointer (loaded from variable 'vdb') > > vstate = vdb->vcs->vstate; > > ^~~~~~~~ > > src/shared/vcp.c:456:25: warning: Access to field 'counter' results in a dereference of a null pointer (loaded from variable 'vstate') > > if (*change_counter != vstate->counter) { > > ^~~~~~~~~~~~~~~ > > src/shared/vcp.c:482:11: warning: Access to field 'vcs' results in a dereference of a null pointer (loaded from variable 'vdb') > > vstate = vdb->vcs->vstate; > > ^~~~~~~~ > > src/shared/vcp.c:488:25: warning: Access to field 'counter' results in a dereference of a null pointer (loaded from variable 'vstate') > > if (*change_counter != vstate->counter) { > > ^~~~~~~~~~~~~~~ > > 14 warnings generated. > > Would you please fix the above problems, also Id reorder the patches > so the monitor changes can be applied before the others. > > -- > Luiz Augusto von Dentz
diff --git a/lib/uuid.h b/lib/uuid.h index cb9294be8c6e..f667a74b9b73 100644 --- a/lib/uuid.h +++ b/lib/uuid.h @@ -164,6 +164,13 @@ extern "C" { #define ASE_SOURCE_UUID 0x2bc5 #define ASE_CP_UUID 0x2bc6 +#define VCS_UUID 0x1844 +#define VOL_OFFSET_CS_UUID 0x1845 +#define AUDIO_INPUT_CS_UUID 0x1843 +#define VOL_STATE_CHRC_UUID 0x2B7D +#define VOL_CP_CHRC_UUID 0x2B7E +#define VOL_FLAG_CHRC_UUID 0x2B7F + typedef struct { enum { BT_UUID_UNSPEC = 0,