Commit graph

2480 commits

Author SHA1 Message Date
Alperen Şener
e3b63e7baf bluetooth: tester: Enable composition data page 2
Enabling the composition data page 2 feature and
adding tester support.

Signed-off-by: Alperen Şener <alperen.sener@nordicsemi.no>
2023-10-20 15:00:34 +02:00
Henrik Eriksen
3aeeeb746a bluetooth: tester: cas: Added support for testing Common Audio Service
- Set Member Lock
- Get Member RSI

Signed-off-by: Henrik Eriksen <heri@demant.com>
2023-10-20 14:59:39 +02:00
Emil Gydesen
9c47eb924f Bluetooth: Audio: Refactor codec_cfg_get_frame_duration_us
Refactor the codec_cfg_get_frame_duration function to return the
assigned numbers value, instead of a converted value, but with
support for converting the value.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2023-10-20 14:56:13 +02:00
Lingao Meng
c2b2641fc1 Bluetooth: Mesh: Move ext adv sector to vector
Obviously, it looks obscure by putting it in a sector,
so, let's move to vector.

refs: https://github.com/zephyrproject-rtos/zephyr/pull/57883

Signed-off-by: Lingao Meng <menglingao@xiaomi.com>
2023-10-20 14:54:17 +02:00
Lingao Meng
141467a261 Bluetooth: Mesh: Rename adv relay to adv simultaneous
Since notice that simultaneous advertising is not only used
by relay message, provision over pb-adv can also be used.
so it was changed to a more general name.

refs:https://github.com/zephyrproject-rtos/zephyr/pull/48903

Signed-off-by: Lingao Meng <menglingao@xiaomi.com>
2023-10-20 14:54:17 +02:00
Emil Gydesen
84c01bb527 Bluetooth: Audio: Add ISO test parameters to the BAP API
Add support for the ISO test parameters in the BAP API.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2023-10-20 14:50:48 +02:00
Mariusz Skamra
3828f1cec2 Bluetooth: ascs: Check subscription state on ASE notification
Check whether peer is subscribed for ASE state notification before
calling bt_gatt_notify. This handles an assert thrown when the
notification failed to be sent.

Fixes: #63728
Signed-off-by: Mariusz Skamra <mariusz.skamra@codecoup.pl>
2023-10-12 18:48:09 +03:00
Aleksandr Khromykh
917a3e6e64 tests: bluetooth: tester: enable proxy solicitation
Commit enables proxy solicitation functionality
(server part) for mesh proxy PTS tests.

Signed-off-by: Aleksandr Khromykh <aleksandr.khromykh@nordicsemi.no>
2023-10-12 18:07:50 +03:00
Emil Gydesen
b63d8ffb2f tests: Bluetooth: BAP: Improve validation of broadcast source reconfig
Add verification of all stream's SDU, RTN and PHY rather than
just the first.

Also add another test case where only a subset of streams are being
reconfigured, but where the above values shall be updated for
all streams.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2023-10-12 09:41:30 +03:00
Anas Nashif
2144d6f5e6 tests: bluetooth: fix test meta data and components
Fix meta data and standarize components in test identifiers.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2023-10-11 14:19:40 +03:00
Pavel Vasilyev
1c1c5e22b7 tests: bluetooth: tester: Add Upload OOB support for mesh tester
This allow to run the following PTS test:
- DFU/SR/FD/BV-06-C
- DFU/SR/FD/BV-13-C
- DFU/SR/FD/BV-14-C
- DFU/SR/FD/BV-15-C
- DFU/SR/FD/BV-16-C
- DFU/SR/FD/BV-17-C
- DFU/SR/FD/BV-18-C
- DFU/SR/FD/BV-22-C

Signed-off-by: Pavel Vasilyev <pavel.vasilyev@nordicsemi.no>
2023-10-11 14:04:11 +03:00
Szymon Janc
4f57614cbd tests: bluetooth: tester: Fix GATT read multiple
Pass only speficied number of handler to read_params for GATT read
multiple. This is to avoid sending invalid (zeros) handles in
ATT_READ_MULTIPLE_REQ.

This was affecting GATT/CL/GAR/BI-18-C and GATT/CL/GAR/BI-19-C
qualification test cases.

Signed-off-by: Szymon Janc <szymon.janc@codecoup.pl>
2023-10-10 12:48:11 +03:00
Szymon Janc
4c269d0d61 tests: bluetooth: tester: Increase BT RX thread stack
Default stack size if not enought and was causing MPU faults.
This was affecting GATT/SR/GAW/BV-14-C qualification test case.

<dbg> bttester_gatt: gatt_db_add: handle 0x0000
<err> os: ***** MPU FAULT *****
<err> os:   Stacking error (context area might be not valid)
<err> os:   Data Access Violation
<err> os:   MMFAR Address: 0x2000aa38
<err> os: r0/a1:  0x00000000  r1/a2:  0x00000000  r2/a3:  0x00000000
<err> os: r3/a4:  0x00000000 r12/ip:  0x00000000 r14/lr:  0x00000000
<err> os:  xpsr:  0x00000000
<err> os: Faulting instruction address (r15/pc): 0x00000000
<err> os: >>> ZEPHYR FATAL ERROR 2: Stack overflow on CPU 0
<err> os: Current thread: 0x20002d28 (BT RX)
<err> os: Halting system

Signed-off-by: Szymon Janc <szymon.janc@codecoup.pl>
2023-10-10 11:18:11 +02:00
Emil Gydesen
ab15043b72 tests: Bluetooth: BAP Broadcast source id and BASE unit tests
Add unit test to test the get_id and get_base functions.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2023-10-09 16:11:05 +03:00
Pavel Vasilyev
94bd09b1f8 tests: bluetooth: tester: Fix prov ctx init in PTS tests
This fixes regression introduced in
https://github.com/zephyrproject-rtos/zephyr/pull/63556

In the PR above `bt_mesh_init()` call was moved to `BTP_MESH_INIT`
command to allow to select alternative composition data when starting
the stack. AutoPTS sends `BTP_MESH_CONFIG_PROVISIONING` command
before `BTP_MESH_INIT` to prepare the provisioning context. But
because `bt_mesh_init()` is now called after
`BTP_MESH_CONFIG_PROVISIONING` command is sent, this configuration is
reset to the default which makes PTS tests to fail.

To solve this, this commit calls introduces a new command,
`BTP_MESH_START`, which will replace the original `BTP_MESH_INIT`
command. `bt_mesh_init()` will stay in `BTP_MESH_INIT` while the stack
will be started in `BTP_MESH_START` command.

Signed-off-by: Pavel Vasilyev <pavel.vasilyev@nordicsemi.no>
2023-10-09 14:56:58 +03:00
Pavel Vasilyev
0eb027ab7c tests: bluetooth: tester: Fix self-update test DFU/SR/FD/BV-59-C
DFU/SR/FD/BV-59-C tests Distributor self-update. Because the actuall
firmware swapping doesn't happen, we need to just simulate the swapping
by setting new Firmware ID sent by LT. We use slot to take firmware id
as by procedure, Fw Update Server doesn't know about it.

Signed-off-by: Pavel Vasilyev <pavel.vasilyev@nordicsemi.no>
2023-10-06 16:20:14 +03:00
Henrik Eriksen
f977457c07 bluetooth: tester: pacs: Added set Locations and Contexts.
- Set Locations.
- Set Available Contexts.
- Set Supported Contexts.

Signed-off-by: Henrik Eriksen <heri@demant.com>
2023-10-06 16:15:54 +03:00
Carles Cufi
a5e7ba3564 Bluetooth: Controller: Remove legacy BT_CTLR_FAST_ENC option
When the legacy LLCP implementation was removed this Kconfig option was
mistakenly left over. Remove it now with all its users.

Fixes #63212.

Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
2023-10-06 13:32:33 +03:00
Pavel Vasilyev
8b4994f22f tests: bluetooth: tester: Allow to pass int instead of bool in comp cmd
This will allow to choose more variants of cdp in future if needed.

Signed-off-by: Pavel Vasilyev <pavel.vasilyev@nordicsemi.no>
2023-10-06 09:16:39 +02:00
Pavel Vasilyev
bd82ff245a tests: bluetooth: tester: Remove comp_alt_set command
Remove this command as composition can only be set in bt_mesh_init call
which is called before settings are loaded.

Signed-off-by: Pavel Vasilyev <pavel.vasilyev@nordicsemi.no>
2023-10-05 11:08:05 +02:00
Pavel Vasilyev
2445e55cd4 tests: bluetooth: tester: Move bt_mesh_init call to BTP_MESH_INIT cmd
In some RPR tests we need to pass alternative composition data when
testing CDP128. When bt_mesh_init is called from mesh service
registration callback, we can't pass any arguments. Therefore we need
to move bt_mesh_init call out from mesh service registration to
BTP_MESH_INIT command.

Signed-off-by: Pavel Vasilyev <pavel.vasilyev@nordicsemi.no>
2023-10-05 11:08:05 +02:00
Alperen Şener
85fa412201 bluetooth: tester: add support for variable static oob size
Adding variable static auth size support to be compatible
both mesh 1.0.1 and mesh 1.1.

Signed-off-by: Alperen Şener <alperen.sener@nordicsemi.no>
2023-10-05 09:20:33 +02:00
Emil Gydesen
6c12ed18ad tests: Bluetooth: Add inval testing of bt_bap_broadcast_source_stop
Add invalid parameter and state testing of bt_bap_broadcast_source_stop

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2023-10-03 14:28:19 +01:00
Andrei Emeltchenko
ca1de2fc39 tests: btp_mesh: Check correct error code
Check actual error code.

Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com>
2023-10-03 09:21:40 +02:00
Peter Mitsis
2f003e59e4 kernel: Re-factor k_mem_slab definition
Rearranges the k_mem_slab fields so that information that describes
how much of the memory slab is used is co-located. This will allow
easier of its statistics into the object core statistics reporting
framework.

Signed-off-by: Peter Mitsis <peter.mitsis@intel.com>
2023-09-30 08:04:14 +03:00
Emil Gydesen
f5dd62bbec Bluetooth: Audio: Update codec_cfg_get_chan_allocation
Update the function name from codec_cfg_get_chan_allocation_val
to just codec_cfg_get_chan_allocation, and add
codec_cfg_set_chan_allocation.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2023-09-29 16:29:58 +02:00
Alperen Şener
a54c18ad31 tests: bluetooth: tester: fix improper large comp rsp struct init
Large composition data response struct should have a
data buffer to store the reponse data to

Signed-off-by: Alperen Şener <alperen.sener@nordicsemi.no>
2023-09-29 16:26:42 +02:00
Alperen Şener
90fac3045d tests: bluetooth: tester: add transfer ttl to mbt inputs
adding transfer ttl ixit value to be used as input for
mbt test cases

Signed-off-by: Alperen Şener <alperen.sener@nordicsemi.no>
2023-09-29 16:26:42 +02:00
Emil Gydesen
c8a79e1fc1 Bluetooth: Audio: Add codec_cfg_set_frame_blocks_per_sdu
Add the bt_audio_codec_cfg_set_frame_blocks_per_sdu function
to set or add the frame blocks per SDU field in the
codec configuration.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2023-09-29 16:25:17 +02:00
Emil Gydesen
638316cbb5 tests: Bluetooth: Add inval test of bt_bap_broadcast_source_create
Add unit tests that tests invalid parameters for the
bt_bap_broadcast_source_create function.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2023-09-29 12:59:54 +02:00
Emil Gydesen
bc6962b755 tests: Bluetooth: Add inval testing of bt_bap_broadcast_source_delete
Add invalid parameter and state testing of
bt_bap_broadcast_source_delete

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2023-09-29 12:59:41 +02:00
Emil Gydesen
5656c23243 Bluetooth: Audio: Add codec_cfg_set_octets_per_frame
Add the bt_audio_codec_cfg_set_octets_per_frame function
to set or add the octets per frame field in the
codec configuration.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2023-09-29 09:46:58 +02:00
Emil Gydesen
8ab3fbf570 Bluetooth: Audio: Split bt_audio_codec_meta_get to cfg and cap
Split the bt_audio_codec_meta_get functions to cfg and cap
variants. This provides a more explicit API where users
do not need to dereference their cfg/cap structs in order
to use this functions.

Furthermore this will also make the get functions more
similar to the upcoming set functions, where the set functions
will require the use of the cfg and cap structs.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2023-09-29 09:46:15 +02:00
Emil Gydesen
cc5766bc4b tests: Bluetooth: Fix for btp_bap broadcast create/reconfig
This updates the struct name for the create parameter,
and fixes the call to reconfig.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2023-09-28 15:31:30 +02:00
Emil Gydesen
85bb2624bc Bluetooth: Audio: Refactor codec_cfg_get_freq
Refactor the codec_cfg_get_freq function to return the assigned
numbers value, instead of a converted value, but with
support for converting the value.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2023-09-28 14:05:18 +02:00
Erik Brockhoff
551b9afe11 Bluetooth: controller: adding unittest for Central CIS Create
Adding unittests for basic Central CIS Create functionality

Signed-off-by: Erik Brockhoff <erbr@oticon.com>
2023-09-28 14:05:00 +02:00
Magdalena Kasenberg
efb5c0902b bluetooth: tester: Add support for BAP broadcast
Support for BAP/BSRC and BAP/BSNK test cases.

Add partial support for GAP/PADV as periodic advertising is needed
for BAP/BSRC tests and they can share common code.

Signed-off-by: Magdalena Kasenberg <magdalena.kasenberg@codecoup.pl>
2023-09-28 13:36:46 +02:00
Pavel Vasilyev
b7579065f9 tests: bluetooth: tester: Move mesh-1.1 features to a separate conf
This allows to compile mesh tester for 1.0.1 and 1.1 specs sepately.

Signed-off-by: Pavel Vasilyev <pavel.vasilyev@nordicsemi.no>
2023-09-28 14:19:03 +03:00
Krzysztof Kopyściński
a8334210c1 tests: Bluetooth: tester: add support for Proxy Solicitation
Adds BTP commands implemantation needed to pass tests for Proxy
Solicitation.

Signed-off-by: Krzysztof Kopyściński <krzysztof.kopyscinski@codecoup.pl>
2023-09-28 14:19:03 +03:00
Michał Narajowski
2ad0eaa9ab tests: Bluetooth: tester: Add Models Metadata Page 128
Add Models Metadata Page 128 support to tester.

Signed-off-by: Michal Narajowski <michal.narajowski@codecoup.pl>
Signed-off-by: Pavel Vasilyev <pavel.vasilyev@nordicsemi.no>
2023-09-28 14:19:03 +03:00
Krzysztof Kopyściński
26e697bd04 tests: Bluetooth: tester: enable Composition Data Page 1
This allows to tests this page using BTP protocol.

Signed-off-by: Krzysztof Kopyściński <krzysztof.kopyscinski@codecoup.pl>
2023-09-28 14:19:03 +03:00
Krzysztof Kopyściński
7b69f8faf0 Tests: Bluetooth: Tester: Add BTP command to enable Private NID
This allows to advertise beacons with Private Node Identity on demand,
like was available for regular Node Identity.

Signed-off-by: Krzysztof Kopyściński <krzysztof.kopyscinski@codecoup.pl>
2023-09-28 14:19:03 +03:00
Michal Narajowski
1e5eeb83f4 tests: bluetooth: tester: Add Opcodes Aggregator support
- Add entry for client and server in composition data.
- Add Client commands to aggregate and send messages.

MESH/SR/AGG/BV-02-C requires more key slots.

Signed-off-by: Michal Narajowski <michal.narajowski@codecoup.pl>
2023-09-28 14:19:03 +03:00
Krzysztof Kopyściński
51ec2462d6 Bluetooth: Tester: Add Blob, DFU and DFD tests support
Adding support for automatic testing BLOB, DFU and DFD models.

Co-authored-by: Agata Ponitka <agata.ponitka@codecoup.pl>
Co-authored-by: Pavel Vasilyev <pavel.vasilyev@nordicsemi.no>
Signed-off-by: Krzysztof Kopyściński <krzysztof.kopyscinski@codecoup.pl>
Signed-off-by: Pavel Vasilyev <pavel.vasilyev@nordicsemi.no>
2023-09-28 14:19:03 +03:00
Krzysztof Kopyściński
68928e050f Tests: Bluetooth: tester: enable Remote Provisioning
This enables Remote Provisioning in tester application. Adds basic
setup and required structures/functions.

add BTP API for Remote Provisioning Client

This adds BTP commands for RPR Client API.

Signed-off-by: Krzysztof Kopyściński <krzysztof.kopyscinski@codecoup.pl>
2023-09-28 14:19:03 +03:00
Michał Narajowski
a73727c2fe Bluetooth: tester: Add Transport SAR Configuration models
Add support for testing the new SAR Configuration models in tester
application.

Signed-off-by: Michal Narajowski <michal.narajowski@codecoup.pl>
2023-09-28 14:19:03 +03:00
Michał Narajowski
11bdcb859e tester: Add Large Comp Data models
- Adds Large Comp Data Server and Client
- Defines some dummy metadata for Health Server

Signed-off-by: Michal Narajowski <michal.narajowski@codecoup.pl>
2023-09-28 14:19:03 +03:00
Michał Narajowski
959e55cdc0 Bluetooth: tester: Add ttl param to Model Send CMD
Some test cases require more control over transmission parameters used
when sending access messages.

Signed-off-by: Michal Narajowski <michal.narajowski@codecoup.pl>
2023-09-28 14:19:03 +03:00
Michał Narajowski
0efc66df5e Bluetooth: tester: Use Model Receive testing callback
Send a BTP event to the automation framework that a model message has
been received.

Signed-off-by: Michal Narajowski <michal.narajowski@codecoup.pl>
2023-09-28 14:19:03 +03:00
Piotr Narajowski
8e5898f039 bluetooth: tester: VCP Client tests
Add support for VCP Client tests

Signed-off-by: Piotr Narajowski <piotr.narajowski@codecoup.pl>
2023-09-28 13:16:23 +02:00