Commit Graph

10460 Commits

Author SHA1 Message Date
Grant Ramsay
82dd4efc66 tests: drivers: ethernet: Add eth_ivshmem_queue unit tests
These tests were useful during development,
and may be useful to find/fix bugs.

OpenAMP does not currently support native_posix
boards so qemu_cortex_a53 is used.

Signed-off-by: Grant Ramsay <gramsay@enphaseenergy.com>
2023-05-14 18:17:33 -04:00
Yves Vandervennet
0f87666126 i2s : mimxrt595_evk_cm33: enablement of driver
board:

 - update device tree to use flexcomm devices to the chip design
 - enable clocks (soc init file)
 - setup connections for loopback test in system controller (board init
   file)

tests:

 - update board files (overlay, conf)

Signed-off-by: Yves Vandervennet <yves.vandervennet@nxp.com>
2023-05-12 13:50:33 -05:00
Emil Gydesen
7b3db7c15d Revert "tests: Bluetooth: Audio: Enable EATT for bsim tests"
This reverts commit f6405d993178c1d1c134981f1457347837bfd05a.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2023-05-13 02:29:05 +09:00
Emil Gydesen
89bcb874db tests: Bluetooth: Add missing ASCS mocks
Add mocks for k_sem_take, k_sem_give and bt_gatt_get_mtu

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2023-05-12 15:29:17 +02:00
Emil Gydesen
2fedefa237 tests: Bluetooth: Audio: Add long metadata for unicast test
Add a 128-octet long metadata for the capabilities to
test the long read functionality.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2023-05-12 15:29:17 +02:00
Erik Brockhoff
ccb449ba55 Bluetooth: test: removing nrf51dk_nrf51422 from init test target list
Due to increase in image size the target nrf51dk_nrf51422 no longer
supports this test.

Signed-off-by: Erik Brockhoff <erbr@oticon.com>
2023-05-12 12:53:16 +02:00
Erik Brockhoff
3daa01c191 Bluetooth: test: adding bsim basic conn test of multiple re-connects
Adding a test that confirms ability to perform 20 (re)connections
between simple peripheral and central

Signed-off-by: Erik Brockhoff <erbr@oticon.com>
2023-05-12 12:53:16 +02:00
Erik Brockhoff
5582c009a4 Bluetooth: test: fixing callback declaration in basic conn bsim test
Using the macro for declaring the callback struct does not make
sense in this construct, where test_connect1/2 are compiled into one
image and specific test functionality is selected via test ID

This reverts change made by #8e1682d which is incorrect for the cases
where the compile happens to include more than one declaration of the
callback struct.

Signed-off-by: Erik Brockhoff <erbr@oticon.com>
2023-05-12 12:53:16 +02:00
Erik Brockhoff
998512f59b Bluetooth: controller: use RX node piggy-back for NTF when possible
When possible re-use the already allocated RX node for notifications.
Store (retain) RX node and Link element on RX if NTF could occur.
Pass link element to LLCP (ull_cp_rx()) together with RX node.
New RX node type RETAIN introduced to signal retention

When no RX node is available allocate one and hold off TX on procedures
until such time that a node is available for NTF.

In case waiting for NTF buffer avail is needed, allocate and store TX
node to use for TX once NTF becomes available.

CIS Established (incl. timeout handling) is now handled entirely as a
specific event driven by ull_conn_iso - ie removal of procedure check
of cis->established and cis->expire, as this is doubling mechanism
in the conn_iso context.

Unit test and helpers updated to handle new node type.
Function ull_cp_release_ntf() was used only in unit test, so moved to
helper context.
Updating release_ntf to handle the fact that with piggy-backing in test
context the node used for NTF can be from two different memory pools

Signed-off-by: Erik Brockhoff <erbr@oticon.com>
2023-05-12 12:53:16 +02:00
Vinayak Kariappa Chettimada
4f928af21a tests: bsim: Bluetooth: Update the ACL group CIS test to 4 connections
Update the ACL group based scheduling with ACL first being
connected to use 4 connections and 4 streams to be
consistent with the test that does ACL the CIS one after
the other.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2023-05-12 12:28:51 +02:00
Vinayak Kariappa Chettimada
d2602a54c2 tests: bsim: Bluetooth: Use defines for parameters in CIS tests
Use defines for scan, create connection, connection and ISO
parameters in the tests.

Also, use same advertising interval for legacy and extended
advertising test.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2023-05-12 12:28:51 +02:00
Gerard Marull-Paretas
b8efac92e0 linker: add ITERABLE_SECTION_RA|OM_NUMERIC
In some cases, like devices, it is necessary to sort numerically, that
is, sort 10 before 2. Add a new helper function to do that, up to 2
numeric digits.

Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
2023-05-12 12:01:10 +02:00
Gerard Marull-Paretas
aae0fe8dab toolchain: add STRUCT_SECTION_ITERABLE_NAMED
Add a new API that allows to customize the name of an iterable section.
This allows to influence how section elements are sorted.

Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
2023-05-12 12:01:10 +02:00
Dave Rensberger
b116f0a889 boards: Board definition for the Raspberry Pi Pico W.
Effort has been made to abstract the features that are common
to both the Pico and Pico W into a shared file when possible.
This commit does not include the addition of bluetooth or wifi
drivers for the W's Infineon module.

Signed-off-by: Dave Rensberger <davidr@beechwoods.com>
2023-05-12 10:04:03 +02:00
TOKITA Hiroshi
8d28cb094b tests: kernel: add qemu_riscv to no-multithreading tests
Add qemu_riscv32, qemu_riscv32e, and qemu_riscv64 targets
to the tests that list below. These set CONFIG_MULTITHREADING=n.

- tests/kernel/fatal/no-multithreading
- tests/kernel/mem_heap/mheap_api_concept
- tests/kernel/mem_slab/mslab_api
- tests/kernel/threads/no-multithreading

Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@fujitsu.com>
2023-05-12 09:56:40 +02:00
Mariusz Skamra
12d8a0d178 Bluetooth: id: Keep RPA as bt_addr_t
There is no need to store the RPA in bt_addr_le_t structure, as the
bt_addr_le_t.type is unused anyway. Both bt_rpa_create and
bt_id_set_adv_random_addr take bt_addr_t as parameter.
Saves 1 byte of address type.

Signed-off-by: Mariusz Skamra <mariusz.skamra@codecoup.pl>
2023-05-12 10:55:50 +03:00
Erik Brockhoff
105621bdce Bluetooth: controller: Only generate ntf on host initiated feature exch
Only generate notification when feature exchange was initiated by host

Signed-off-by: Erik Brockhoff <erbr@oticon.com>
2023-05-12 08:43:46 +02:00
Benedikt Schmidt
cc558a3c46 tests: drivers: build_all: gpio: add ADS114S08 to tests
Add GPIO expander integrated in ADS114S08 to the tests.

Signed-off-by: Benedikt Schmidt <benedikt.schmidt@embedded-solutions.at>
2023-05-11 12:04:15 -04:00
Daniel DeGrasse
d2465dc607 boards: arm: mixmrt1040_evk: enable RT1040 EVK I2C support
Enable support for RT1040 EVK. This support was verified using the I2C
target test.

Signed-off-by: Daniel DeGrasse <daniel.degrasse@nxp.com>
2023-05-11 10:35:40 -05:00
Daniel DeGrasse
cc3ca993ce boards: arm: mixmrt1040_evk: enable SPI support
Add support for SPI on RT1040 EVK, tested using
tests/drivers/spi/spi_loopback sample. Transfers are enabled using DMA
mode, with LPSPI1.

Signed-off-by: Daniel DeGrasse <daniel.degrasse@nxp.com>
2023-05-11 10:35:40 -05:00
Daniel DeGrasse
77f8848f8e boards: arm: mimxrt1040_evk: enable ADC support
Enable ADC support for RT1040 EVK. Tested using samples/drivers/adc,
using channels 3 and 4 of ADC0.

Signed-off-by: Daniel DeGrasse <daniel.degrasse@nxp.com>
2023-05-11 10:35:40 -05:00
Georges Oates_Larsen
3bce8c09fc net: conn_mgr: Add test suite
Create test suite covering all major features of conn_mgr

Signed-off-by: Georges Oates_Larsen <georges.larsen@nordicsemi.no>
2023-05-11 12:15:44 +02:00
Georges Oates_Larsen
62168b659e net: conn_mgr: connect/disconnect adjustments
Rather than raise error on connect if iface is down, just take the iface
up.

Rather than raise error on disconnect if iface is down, just ignore the
disconnection request.

Adjust tests and documentation accordingly.

This should make the API easier to use for applications and is more in
line with the original L2 agnostic connectivity RFC.

Also replace some instances of net_if_flag_is_set with
net_if_is_admin_up, which is cleaner and identical in function.

Signed-off-by: Georges Oates_Larsen <georges.larsen@nordicsemi.no>
2023-05-11 12:15:44 +02:00
Georges Oates_Larsen
41d6a9bcec net: conn_mgr: relocate if_get_binding
Relocate conn_mgr_if_get_binding to conn_mgr_private.h so that it
can be used by test suites.

Signed-off-by: Georges Oates_Larsen <georges.larsen@nordicsemi.no>
2023-05-11 12:15:44 +02:00
Nithin Ramesh Myliattil
8d6b206064 subsys/bluetooth/host: Make rpa same for adv sets with same id
Add check to see if RPA is already generated for adv sets
with same id. If generated use the same address for all adv sets
with same id else create new RPA.

Signed-off-by: Nithin Ramesh Myliattil <niym@demant.com>
2023-05-11 08:31:24 +00:00
Marc Desvaux
c5688ed3cf tests: drivers: adc: adc_dma: add nucleo_h743zi
add platform_allow nucleo_h743zi.
the twister test is now enable for tests/drivers/adc/adc_dma on board
nucleo_h743zi.
used on driver st_stm32_adc with CONFIG_ADC_STM32_DMA =y.

Signed-off-by: Marc Desvaux <marc.desvaux-ext@st.com>
2023-05-11 10:04:54 +02:00
Keith Packard
9fe47b4fe2 tests/x86/pagetables: Disable malloc arena for pagetables test
The page tables test checks to make sure the various page permissions are
set as expected, but when there's a malloc heap, things don't match the
test expectations. As this test doesn't require a heap, just disable it.

Signed-off-by: Keith Packard <keithp@keithp.com>
2023-05-11 01:25:01 +09:00
Keith Packard
5e0a25f54d tests/mem_alloc: Check for common malloc instead of minimal libc
Instead of detecting that the minimal C library is in use before running
the malloc failure tests, check for the common malloc being in use as that
will also allow this test to run with picolibc.

Signed-off-by: Keith Packard <keithp@keithp.com>
2023-05-11 01:25:01 +09:00
Robert Lubos
ff0fd2d7a7 net: iface: Improve thread safety of net_if_ipv*_maddr_* functions
Provide an extra struct net_if * iface parameter to
net_if_ipv*_maddr_join/leave functions, so that the corresponding
interface context, the mcast address belong to, can be locked for the
operation.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2023-05-10 11:06:15 +02:00
Lucas Tamborrino
9431e6195f tests: drivers: dma: add esp32s3 support
Add esp32s3 overlays for dma tests.

Signed-off-by: Lucas Tamborrino <lucas.tamborrino@espressif.com>
2023-05-10 10:15:05 +02:00
Emil Gydesen
4b31f8c6f5 tests: Bluetooth: CSIP: Add no rank, size and lock char tests
Add tests for cases where the rank characteristic, the size
characteristic and the lock characteristics are not set on the
set members.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2023-05-10 10:14:56 +02:00
Emil Gydesen
65808bb102 tests: Bluetooth: Split CSIP tests to multiple scripts
Split the CSIP tests to multiple scripts to make them
more specific and able to run in parallel.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2023-05-10 10:14:56 +02:00
Emil Gydesen
41fd5b80df Bluetooth: CSIP: Add missing and fix Set Coordinator set info
The set info returned by the Set Coordinator did not contain
information about the lockable state. Furthermore the
set info was not properly initiated, as it was missing the
rank, which was set somewhere else.

This commit adds the lockable state to the set info.
This commit removes the rank from internal structure,
and uses a reference to the set info instead, and only
store the rank there.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2023-05-10 10:14:56 +02:00
Emil Gydesen
2678ab55b6 Bluetooth: Audio: Shell: Enable CSIP Set Member debug log
Enable the CSIP Set Member debug log.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2023-05-10 10:14:56 +02:00
Gerard Marull-Paretas
93b63df762 samples, tests: convert string-based twister lists to YAML lists
Twister now supports using YAML lists for all fields that were written
as space-separated lists. Used twister_to_list.py script. Some artifacts
on string length are due to how ruamel dumps content.

Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
2023-05-10 09:52:37 +02:00
Gerard Marull-Paretas
6d56988e43 tests: lib: mpsc_pbuf: remove duplicate timeout key
Test had 2 timeout entries (90, 120). Left 120 to be safe, as it's the
larger value.

Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
2023-05-10 09:52:37 +02:00
Kumar Gala
f66b149742 tests: c_lib: test exit not _exit
Tweak test to test exit and not _exit, as _exit is not a standard
libc function.

Signed-off-by: Kumar Gala <kumar.gala@intel.com>
2023-05-09 11:53:41 -07:00
Tom Burdick
ea8930bd78 rtio: Cleanup the various define macros
Reworks the zephyr macros and pools to be objects in their own right. Each
pool can be statically defined with a Z_ private macro. The objects can
then be initialized with an rtio instance statically.

This cleans up a lot of code that was otherwise doing little bits of
management around allocation/freeing and reduces the scope those functions
has to the data it needs.

This should enable sharing the pools of sqe, cqe, and mem blocks among rtio
instances in a future improvement easily.

Signed-off-by: Tom Burdick <thomas.burdick@intel.com>
2023-05-10 00:39:43 +09:00
Tom Burdick
d41c182e32 rtio: Make MPSC faster on non-smp systems
On non-smp systems where multiple cores aren't in play atomics aren't
really necessary and volatile can be used in stead.

Additionally marks the push function as ALWAYS_INLINE as I saw at times
it was not being inlined.

MPSC operation speed is crucial to the performance of rtio, these changes
provided a 30% throughput improvmement in the throughput test.

Signed-off-by: Tom Burdick <thomas.burdick@intel.com>
2023-05-10 00:39:43 +09:00
Tom Burdick
fc32f1c076 rtio: Add throughput test
Test throughput of submit and consume pair for rtio

Signed-off-by: Tom Burdick <thomas.burdick@intel.com>
2023-05-10 00:39:43 +09:00
Tom Burdick
e4b10328b4 rtio: Use mpsc for submission and completion queue
Rather than the rings, which weren't shared between userspace and kernel
space in Zephyr like they are in Linux with io_uring, use atomic mpsc
queues for submission and completion queues.

Most importantly this removes a potential head of line blocker in the
submission queue as the sqe would be held until a task is completed.

As additional bonuses this avoids some additional locks and restrictions
about what can be submitted and where. It also removes the need for
two executors as all chains/transactions are done concurrently.

Lastly this opens up the possibility for a common pool of sqe's to
allocate from potentially saving lots of memory.

Signed-off-by: Tom Burdick <thomas.burdick@intel.com>
2023-05-10 00:39:43 +09:00
Jakub Rzeszutko
25a3977709 getopt: extend ztests scope
Adding a test to detect problems in the cooperation of the getopt
and logger modules. It would detect issue: #57520

Signed-off-by: Jakub Rzeszutko <jakub.rzeszutko@nordicsemi.no>
2023-05-09 11:03:44 -04:00
Kumar Gala
70e921dbc7 tests: posix: fs: disable CONFIG_EVENTFD
The test doesn't use eventfd so we can disable it to save some space.

Signed-off-by: Kumar Gala <kumar.gala@intel.com>
2023-05-09 23:32:57 +09:00
Aaron Massey
4d2819ecca tests: sensor SBS EMUL_CONFIG to testcase.yaml
There exists several <board>.conf files in the boards directory of the
sbs_gauge tests. All these confs do is enable CONFIG_EMUL. We can remove
these board confs in favor of a single extra_configs entry in the sensor
sbs gauge testcase.yaml file.

Remove the sensor test_bs_gauge test's board conf files in favor of
enabling CONFIG_EMUL in the testcase.yaml file.

Signed-off-by: Aaron Massey <aaronmassey@google.com>
2023-05-09 08:40:28 -05:00
Dmitrii Golovanov
9061c4aec0 tests: ztress: Add test for max threads allowed
Add negative test for number of threads bounds check
at ztress_execute().

Signed-off-by: Dmitrii Golovanov <dmitrii.golovanov@intel.com>
2023-05-09 08:47:53 -04:00
Alberto Escolar Piedras
90b3425320 tests/bsim: run_parallel: Do not set exe permissions if missing
This script tried to be too nice with users, and if they forgot
to set the scripts as executable, set it for them.
But this leads to too many testcases commited to main without
executable permissions.
Which then leads to other developers needing to set those
locally and end with dirty workspaces.

Instead let's not have run_parallel set the executable bit,
and have these tests fail in CI, so developers realize and fix it.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2023-05-09 13:04:19 +02:00
Alberto Escolar Piedras
f11e9ec6a5 tests/bsim: Set all tests scripts as executable
Test scripts need to have executable permissions.
Otherwise, run_parallel will change the mode in CI,
and users need to set them locally which results
in a not clean git workspace.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2023-05-09 13:04:19 +02:00
Pavel Vasilyev
da7e555a99 tests: bluetooth: mesh: Check bt_mesh_rpl_reset with unit test
Check RPL when rescheduling happens during the reset operation
started by bt_mesh_rpl_reset.

Signed-off-by: Pavel Vasilyev <pavel.vasilyev@nordicsemi.no>
2023-05-09 13:03:38 +02:00
Aleksander Wasaznik
bb1ede6a9b Bluetooth: Use bt_addr_eq
Refactor. Using `bt_addr_eq` instead of `bt_addr_cmp`.

Signed-off-by: Aleksander Wasaznik <aleksander.wasaznik@nordicsemi.no>
2023-05-09 09:23:52 +02:00
Armando Visconti
7ea422af84 drivers/sensor: add support to LSM6DSO16IS IMU sensor
The LSM6DSO16IS is a system-in-package featuring a 3-axis digital
accelerometer and a 3-axis digital gyroscope for industrial and IoT
solutions. The LSM6DSO16IS embeds a new ST category of processing,
ISPU (intelligent sensor processing unit) to support real-time applications
that rely on sensor data. The ISPU is an ultra-low-power, high-performance
programmable core which can execute signal processing and AI algorithms
in the edge.

https://www.st.com/en/mems-and-sensors/lsm6dso16is.html

This driver is based on stmemsc HAL i/f v2.02

Signed-off-by: Armando Visconti <armando.visconti@st.com>
2023-05-09 16:23:15 +09:00