Commit Graph

1017 Commits

Author SHA1 Message Date
Anas Nashif
1a9a43a7fa tests: unskip some tests
Few tests are being skipped for no goot reason (anymore). Add some
coverage using few platforms that work with intention to expand if all
works well and if needed.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-03-28 21:52:13 +01:00
Tom Hughes
b4f8a7f711 tests: lib: cmsis_dsp: Fix -Wsometimes-uninitialized warning
Building libraries.cmsis_dsp.distance with clang warns:

tests/lib/cmsis_dsp/distance/src/f32.c:99:3: error: variable 'val' is
used uninitialized whenever switch default is taken
[-Werror,-Wsometimes-uninitialized]
                default:
                ^~~~~~~
tests/lib/cmsis_dsp/distance/src/f32.c:104:19: note: uninitialized use
occurs here
                output[index] = val;
                                ^~~
tests/lib/cmsis_dsp/distance/src/f32.c:57:16: note: initialize the
variable 'val' to silence this warning
                float32_t val;
                             ^
                              = 0.0

Not really necessary since there is a zassert_unreachable, but doesn't
hurt to initialize the variable.

Signed-off-by: Tom Hughes <tomhughes@chromium.org>
2025-03-23 13:19:27 +01:00
Tom Hughes
15411747e7 everywhere: Use correct macro for gcc-specific warnings
Many warnings were disabled for all compilers, even though they are
gcc-specific warnings. Now that clang has -Wunknown-warning-option
enabled, this can cause compilation failures when building with clang
toolchains.

Use TOOLCHAIN_DISABLE_GCC_WARNING for all gcc-specific macros.

https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html
https://clang.llvm.org/docs/DiagnosticsReference.html

Fixes: #84138

Signed-off-by: Tom Hughes <tomhughes@chromium.org>
2025-03-20 21:57:47 +01:00
Tom Hughes
11d70c61e5 everywhere: Replace diagnostic pragmas with TOOLCHAIN_* macros
The TOOLCHAIN_DISABLE_WARNING/TOOLCHAIN_ENABLE_WARNING macros are easier
to read and compiler agnostic.

Signed-off-by: Tom Hughes <tomhughes@chromium.org>
2025-03-20 21:57:47 +01:00
Tom Hughes
481a3c77c9 tests: lib: cmsis_dsp: Fix -Wsometimes-uninitialized warning
Building with clang warns:

tests/lib/cmsis_dsp/distance/src/u32.c:82:3: error: variable 'val' is
used uninitialized whenever switch default is taken
[-Werror,-Wsometimes-uninitialized]
                default:
                ^~~~~~~
tests/lib/cmsis_dsp/distance/src/u32.c:87:19: note: uninitialized use
occurs here
                output[index] = val;
                                ^~~
tests/lib/cmsis_dsp/distance/src/u32.c:47:16: note: initialize the
variable 'val' to silence this warning
                float32_t val;
                             ^
                              = 0.0

Hitting the default switch will assert, so this won't cause any problems
as written, but it doesn't hurt to initialize the variable.

Signed-off-by: Tom Hughes <tomhughes@chromium.org>
2025-03-18 08:24:56 +01:00
Nicolas Pitre
023daf2331 tests/lib/heap_align: improve test some more
- Make sure the align-and-rewind feature is explicitly tested.

- Add sub-unit allocations to the mix.

- Rely on some heap internal facilities  to determine heap boundaries
  (32- vs 64-bit builds do cause a difference).

Signed-off-by: Nicolas Pitre <npitre@baylibre.com>
2025-03-17 02:21:27 +01:00
Anas Nashif
f29ae72d79 kernel: rename 'dumb' scheduler and simply call it 'simple'
Improve naming of the scheduler and call it what it is: simple. Using
'dumb' for the default scheduler algorithm in Zephyr is a bad idea.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-03-15 00:34:58 +01:00
Fabio Baltieri
60a9a202df kscan: drop kscan and any reference
Drop the whole kscan subsystem and reference to it.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2025-03-13 16:56:26 +00:00
Camille BAUD
8856fdc409 tests: Introduce greyscale-related tests modifications
This introduces greyscale-related changes to tests

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-03-12 14:05:14 +00:00
Nicolas Pitre
7fb92c9eb1 tests: lib: multi_heap: fix stack overflow
Some platforms, notably ARM64, need more than 512 bytes of breathing
room on the stack. Very weird and difficult-to-track memory corruptions
were caused by test_mheap_realloc without this.

Signed-off-by: Nicolas Pitre <npitre@baylibre.com>
2025-03-12 07:15:12 +01:00
Nicolas Pitre
e1eead3925 ring_buffer: shrink size of struct ring_buf
Make struct ring_buf 12 bytes smaller by default. This comes with a 32KB
buffer size limit which covers almost all cases. The previous limit of
2GB can be restored with CONFIG_RING_BUFFER_LARGE=y.

Signed-off-by: Nicolas Pitre <npitre@baylibre.com>
2025-03-11 08:59:05 +01:00
Helmut Lord
a90f9991cc tests: utils: lib: cobs tests
Adds tests for COBS util.

Signed-off-by: Helmut Lord <kellyhlord@gmail.com>
2025-03-11 05:36:49 +01:00
Gerard Marull-Paretas
766bfe7b2e device: introduce struct device_ops
Instead of passing a single init function, create
struct device_ops with the init function inside. This allows to easily
extend device's capabilities in the future without too much breakage,
e.g. to add a de-init call.

Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
2025-03-10 21:32:40 +01:00
Gerard Marull-Paretas
3f6add69da init: drop device union from struct init_entry
Such union is rather redundant, considering a simple const cast can be
done when initializing the init entry. Note that the init_entry does not
need to be touched now that struct device stores the init call. It is
merely an init entry sorted by linker scripts, so we can intertwine
devices and SYS_INIT.

Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
2025-03-10 21:32:40 +01:00
Gerard Marull-Paretas
a0a907c90e device: store init function in struct device
Preparation work for device init/de-init functionality.

Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
2025-03-10 21:32:40 +01:00
Gerard Marull-Paretas
9b5083bb89 init: drop anonymous union
It just complicates things. It is not C99 strandard, and since C11 is
not mandatory, it is better to play safe here.

Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
2025-03-10 21:32:40 +01:00
Lauren Murphy
e7786914c9 tests: lib: multi_heap fix up_squared test failures
Fixes test failures on up_squared caused by ACPI adding to
heap size (K_HEAP_MEM_POOL_SIZE). The test assumed the heap size
always matched the Kconfig CONFIG_HEAP_MEM_POOL_SIZE=256.

Signed-off-by: Lauren Murphy <lauren.murphy@intel.com>
2025-03-07 19:48:00 +01:00
Alberto Escolar Piedras
6c38bc8ec4 boards native_posix: Remove twister support
native_posix is being removed as it has reached its end of life in 4.2,
after being deprecated since 4.0.

Remove the twister support for native_posix[//64] and therefore all
references to them from the testcases and samples yamls, so twister
does not error out.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-03-07 19:16:14 +01:00
Ryan McClelland
8f4a4aeb23 tests: cmsis-nn: update tests for v7.0.0
arm_convolve_s8 got an extra arg. Set to NULL to no behavior change.

Signed-off-by: Ryan McClelland <ryanmcclelland@meta.com>
2025-02-13 06:39:17 +01:00
Jérôme Pouiller
931e7cfeca modules: hal_silabs: Introduce WiseConnect SDK
WiseConnect SDK is need for Silabs SiWx91x series.

Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
2025-02-11 22:07:11 +01:00
Wenbin Zhang
7d4e31a1f0 devicetree: Fix Device tree tests cannot be built with coverage enabled
DT_SPEC related macro tests (ADC_DT_SPEC_GET_BY_NAME, MBOX_DT_SPEC_GET)
should not appear in this test because the configuration does not turn
on any devices

Move DP_SPEC-related tests to api_ext and enable the related device in the
configuration

fix #77205

Signed-off-by: Wenbin Zhang <freey7955@gmail.com>
2025-01-22 15:49:25 +01:00
Luca Burelli
16d71d0598 edtlib: add "hash" attribute to nodes
Add a new "hash" attribute to all Devicetree EDT nodes. The hash is
calculated on the full path of the node; this means that its value
remains stable across rebuilds.
The hash is checked for uniqueness among nodes in the same EDT.

This computed token is then added to `devicetree_generated.h` and made
accessible to Zephyr code via a new DT_NODE_HASH(node_id) macro.

Signed-off-by: Luca Burelli <l.burelli@arduino.cc>
2025-01-22 15:49:10 +01:00
Tom Hughes
b35c3a64a5 tests: lib: smf: Add missing equals
When building with clang and -Wno-gnu it complains about the missing
equals:

tests/lib/smf/src/test_lib_hierarchical_5_ancestor_smf.c:415:8: error:
use of GNU 'missing =' extension in designator
[-Werror,-Wgnu-designator]

[P05] SMF_CREATE_STATE(p05_entry, p05_run, p05_exit, NULL, NULL),
      ^
      =

tests/lib/smf/src/test_lib_hierarchical_5_ancestor_smf.c:416:8: error:
use of GNU 'missing =' extension in designator
[-Werror,-Wgnu-designator]

[P04] SMF_CREATE_STATE(p04_entry, p04_run, p04_exit, &test_states[P05],
      ^                NULL),
      =

tests/lib/smf/src/test_lib_hierarchical_5_ancestor_smf.c:417:8: error:
use of GNU 'missing =' extension in designator
[-Werror,-Wgnu-designator]

[P03] SMF_CREATE_STATE(p03_entry, p03_run, p03_exit, &test_states[P04],
      ^                NULL),
      =

tests/lib/smf/src/test_lib_hierarchical_5_ancestor_smf.c:418:8: error:
use of GNU 'missing =' extension in designator
[-Werror,-Wgnu-designator]

[P02] SMF_CREATE_STATE(p02_entry, p02_run, p02_exit, &test_states[P03],
      ^                NULL),
      =

tests/lib/smf/src/test_lib_hierarchical_5_ancestor_smf.c:419:8: error:
use of GNU 'missing =' extension in designator
[-Werror,-Wgnu-designator]

[P01] SMF_CREATE_STATE(p01_entry, p01_run, p01_exit, &test_states[P02],
      ^                NULL),
      =

Signed-off-by: Tom Hughes <tomhughes@chromium.org>
2025-01-20 16:27:10 +01:00
Ilya Tagunov
48d2382874 tests: math: interpolation: disable floating point contraction
This test cannot tolerate any loss of precision, including the one
caused by the compiler contracting floating points operations together,
like in fused multiply-add (FMA). Some toolchains enable FP contraction
by default, so disable it for the specific test and let the user decide
themselves whether precision or performance is needed for their
specific application.

Co-authored-by: Jordan Yates <jordan@embeint.com>
Co-authored-by: Ilya Tagunov <Ilya.Tagunov@synopsys.com>
Signed-off-by: Ilya Tagunov <Ilya.Tagunov@synopsys.com>
2025-01-09 09:51:39 +01:00
Krzysztof Chruściński
d5637ec374 tests: lib: cpp: cxx: Filter out all ARMs from nRF54x and nRF92
Instead of extending list of unsupported platforms use filter that
will exclude or current and next ARM cores from platforms with HAL
that does not support C++98.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-01-08 19:10:24 +01:00
Yong Cong Sin
1a578eb72c lib: os: mpsc_pbuf: do not wait when spinlock is held
Check if the spinlock is held before attempting to wait by
taking the semaphore, as that would cause a context switch which
isn't allowed and will trigger an assertion error when
`CONFIG_SPIN_VALIDATE` is enabled.

Logging in spinlock-held context when the log buffer is full can lead
to an infinite assertion error loop, as the logging subsys attempts to
allocate buffer when there's none available, it will try to wait for
one and thus triggers the assertion error, the error message will be
printed through the logging sybsys but there's no buffer available,
so it will try to wait for one and triggers another assertion error..
This loop just goes on and on forever, and nothing gets printed to
the terminal.

Added a test to validate the fix.

Signed-off-by: Yong Cong Sin <ycsin@meta.com>
Signed-off-by: Yong Cong Sin <yongcong.sin@gmail.com>
Signed-off-by: Maxim Adelman <imax@meta.com>
2025-01-06 06:53:52 +01:00
Fabian Blatz
e9dc495e55 tests: lib: gui: lvgl: Add testcase for OSAL implementation
This patch adds a testcase adding the OSAL to ensure the implementation is
built during CI.

Signed-off-by: Fabian Blatz <fabianblatz@gmail.com>
2025-01-04 14:17:10 +01:00
Fabian Blatz
8ff8e2940a tests: lib: gui: lvgl: Migrate to version 9.2
With the update to v9.2.0 several Kconfig symbols were renamed or removed.
Adjust the test accordingly. Also several constants were renamed, rename
those also.

Signed-off-by: Fabian Blatz <fabianblatz@gmail.com>
2025-01-04 14:17:10 +01:00
Gerard Marull-Paretas
b51f998063 tests: fix zephyr/drivers/gpio.h usage
Only include the header if using any of the GPIO API calls/
struct/defines.

Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
2024-12-20 03:17:25 +01:00
James Roy
4553a21fe5 devicetree: Add DT_FOREACH_ANCESTOR macro
Add 'DT_FOREACH_ANCESTOR' macro to get a list of
ancestor node of a given node_id.

Signed-off-by: James Roy <rruuaanng@outlook.com>
2024-12-18 10:17:09 +01:00
Krzysztof Chruściński
90b2aa8c22 tests: lib: devicetree: api: Add test for DT_PROP_LAST
Extend test to cover for DT_PROP_LAST.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2024-12-13 17:44:13 +01:00
Binh Nguyen
6dc611ad32 tests: lib: cpp: cxx: Exclude Renesas RZ in cpp98
Exclude Renesas RZ in cpp98 as Renesas HALs are not
compatible with C++98.

Signed-off-by: Binh Nguyen <binh.nguyen.xw@renesas.com>
2024-12-12 11:12:22 +01:00
Valerio Setti
522b1f2bba Revert "tests: disable NRF5 entropy driver on some bsim/qemu tests"
This reverts commit e0fcb8552428fb45164ea2b4271b3b0206695b7f.

Signed-off-by: Valerio Setti <vsetti@baylibre.com>
2024-12-12 00:15:39 +00:00
Valerio Setti
22e30e04f5 tests: disable NRF5 entropy driver on some bsim/qemu tests
CONFIG_ENTROPY_GENERATOR is now enabled by default as soon as
"zephyr,entropy" is set in the device-tree. Since the sub-Kconfig
CONFIG_ENTROPY_NRF5_RNG is also enabled by default on nrf boards,
this means that the driver is pulled in the build and intialized
at boot. This might cause runtime issues during some IRQ/kernel
tests, so it's better to remove "zephyr,entropy" on these tests.

Signed-off-by: Valerio Setti <vsetti@baylibre.com>
2024-12-10 08:05:33 +01:00
Josuah Demangeon
25f56342da tests: lib: devicetree: Add tests for endpoint DT macros
Add tests for the new port / endpoint DT macros

Signed-off-by: Josuah Demangeon <me@josuah.net>
Signed-off-by: Phi Bang Nguyen <phibang.nguyen@nxp.com>
2024-12-06 22:23:31 +01:00
TOKITA Hiroshi
1d40a7ee34 tests: lib: devicetree: add test for zephyr,memory-region-flags attr
Add a test for zephyr,memory-region-flags.

This test tests the attributes of memory regions defined in the linker
script, but this information cannot be obtained at runtime.
It verifies that the expected memory region attributes are defined in
the linker.cmd.

Since no syntax analysis is performed, this is not an entirely rigorous
test but sufficient for practical purposes.

Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@gmail.com>
2024-12-05 06:39:46 -05:00
Pieter De Gendt
6d178f9cd9 drivers: gpio: Place API into iterable section
Add wrapper DEVICE_API macro to all gpio_driver_api instances.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2024-12-02 22:05:59 +00:00
Jordan Yates
3a9e693087 tests: lib: devicetree: api: test DT_ANY_INST_HAS_BOOL_STATUS_OKAY
Add tests for the new `DT_ANY_INST_HAS_BOOL_STATUS_OKAY` macro.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2024-12-02 11:13:52 +01:00
Ryan McClelland
f5946a546d manifest: update cmsis-dsp to v1.16.2
Update cmsis-dsp module to v1.16.2

Signed-off-by: Ryan McClelland <ryanmcclelland@meta.com>
2024-11-25 14:42:07 +01:00
Ilya Tagunov
9d229e5c18 tests: lib: c_lib: add the proper dependency for asctime_r and ctime_r
As the test uses reentrant time functions like asctime_r or ctime_r,
it should select POSIX_C_LANG_SUPPORT_R. Otherwise there are build
failures observed with the default test configuration if these
functions are not provided by the toolchain.

Signed-off-by: Ilya Tagunov <Ilya.Tagunov@synopsys.com>
2024-11-23 20:12:02 -05:00
Carles Cufi
21475774fc boards: nordic: nRF54L15DK: Add basic support for the L05 and L10 ICs
The nRF54L05 and nRF54L10 are identical to the nRF54L15 except for their
memory sizes. Add support for emulating those ICs on the nRF54L15DK.
This commit only adds support for the main application core. Support for
the FLPR core may be added later.

Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
2024-11-21 09:26:38 +01:00
Anas Nashif
71bb882221 tests: cpp: remove obsolete target
nrf54h20dk@0.8.0/nrf54h20/cpuapp was dropped.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2024-11-19 18:21:19 -05:00
Anas Nashif
27d918e699 tests: cpp: remove non-existing target
nrf54h20dk@0.8.0/nrf54h20/cpurad was recently removed.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2024-11-18 14:02:45 -05:00
Daniel Leung
06e6a84b1d tests: copy intel_adsp_ace30_ptl.conf to *_sim.conf
With the rename of intel_adsp/ace30_ptl to intel_adsp/ace30/ptl,
the "sim" variant no longer inherit the base configuration. So
make a copy of the .conf file to explicitly target the sim
variant.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2024-11-18 13:18:22 -05:00
James Roy
28238d03ad devicetree: Add DT_HAS_ALIAS macro
Add 'DT_HAS_ALIAS' macro to verify node alias existence.

Signed-off-by: James Roy <rruuaanng@outlook.com>
2024-11-16 15:55:10 -05:00
Anas Nashif
dfa170e909 tests: cmsis_nn: reduce architecture scope
Filters already only allow arm and native, so exclude everything else
very early and reduce churn and build time.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2024-11-16 15:01:55 -05:00
Anas Nashif
a505078c60 tests: cmsis_dsp: reduce architecture scope
Filters already only allow arm and native, so exclude everything else
very early and reduce churn and build time.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2024-11-16 15:01:55 -05:00
Meir Komet
5595f66851 multi_heap: introduce support for realloc()
Add support for realloc (and realloc_aligned) into the multi heap lib,
where the buffer sent in will either be reused (maybe shrinked),
or enlarged by allocating on any of the matching heaps of the multi heap.

Signed-off-by: Meir Komet <mskomet1@gmail.com>
2024-11-16 14:02:07 -05:00
Emilio Benavente
5c9d6f1dba tests: lib: cmsis_dsp: transform: Update Ram Size
Updating the minimum Ram Size for failing tests
that require more ram memory for heap allocations.

Signed-off-by: Emilio Benavente <emilio.benavente@nxp.com>
2024-11-08 09:25:04 -06:00
Daniel DeGrasse
07a8e3253a drivers: disk: mmc_subsys: remove CONFIG_MMC_VOLUME_NAME
Remove CONFIG_MMC_VOLUME_NAME, and set the disk name based on the
``disk-name`` property. This aligns with other disk drivers, and allows
for multiple instances of the mmc_subsys disk driver to be registered.

Add disk-name properties for all in tree definitions for the
mmc-subsys disk driver, and change all in tree usage of the disk name

Fixes #75004

Signed-off-by: Daniel DeGrasse <daniel.degrasse@nxp.com>
2024-11-05 15:25:10 -06:00