Commit graph

126,787 commits

Author SHA1 Message Date
Chris Friedt
6b103837a5 posix: options: file_system_r: include sys/util.h header for MIN
Oddly, even though CI passed when the file_system_r change was
merged, now CI has encountered a build error because MIN() was
not defined.

Include `<zephyr/sys/util.h>` to pull in the definition.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-01-02 19:53:29 +01:00
Chris Friedt
60ef84a48e posix: options: kconfig: fix typo informnation -> information
A copy-paste error propogated this typo to a few different
Kconfig files.

Correct 'informnation' to 'information'.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-01-02 19:47:36 +01:00
Jianxiong Gu
948fbacd33 drivers: pinctrl: wch_afio: fix afio remap
Enable the AFIO clock before remap.

Signed-off-by: Jianxiong Gu <jianxiong.gu@outlook.com>
2025-01-02 18:04:31 +01:00
Armando Visconti
21584003bf sensors: drivers: lsm6dsv16x: add SFLP FIFO support
Add the Sensor Fusion Low Power (SFLP) FIFO streaming capability,
using RTIO. The decode function is now aware of parsing following FIFO
tags:

    - LSM6DSV16X_SFLP_GAME_ROTATION_VECTOR_TAG
    - LSM6DSV16X_SFLP_GYROSCOPE_BIAS_TAG
    - LSM6DSV16X_SFLP_GRAVITY_VECTOR_TAG

To activate SFLP the user should put in DT the proper configuration.
For example, to activate a 60Hz SFLP FIFO batching rate of game rotation
vector, gravity vector and gbias components, the user should add in DT
the following:

  sflp-odr = <LSM6DSV16X_DT_SFLP_ODR_AT_60Hz>;
  sflp-fifo-enable = <LSM6DSV16X_DT_SFLP_FIFO_GAME_ROTATION_GRAVITY_GBIAS>;

Signed-off-by: Armando Visconti <armando.visconti@st.com>
2025-01-02 18:04:19 +01:00
Armando Visconti
dc03fba586 sensors/lsm6dsv16x: fix interrupt handling
In case I3C IBI interrupt is not used do not skip reading the status
register, otherwise the interrupt event will not get cleared.

Signed-off-by: Armando Visconti <armando.visconti@st.com>
2025-01-02 18:04:19 +01:00
Armando Visconti
43a61a823b modules/hal_st: Align sensor drivers to stmemsc HAL i/f v2.8
Align all sensor drivers that are using stmemsc (STdC) HAL i/f
to new APIs of stmemsc v2.8

Requires https://github.com/zephyrproject-rtos/hal_st/pull/24

Signed-off-by: Armando Visconti <armando.visconti@st.com>
2025-01-02 18:04:19 +01:00
Armando Visconti
9471df95a5 sensors: add new channels to support sensor fusion
Add three new channels and relative data:

    - SENSOR_CHAN_GAME_ROTATION_VECTOR

      The "game rotation vector" reports the four components x/y/z/w
      (quaternions) of the unit vector representing a 3D spatial
      rotation or orientation.

    - SENSOR_CHAN_GRAVITY_VECTOR

      The "gravity vector" reports the three axis x/y/z of the gravity
      vector separated from the linear acceleration components.
      The measurement unit is m/s^2.

    - SENSOR_CHAN_GBIAS_XYZ

      The "gbias" reports the gyroscope offset x/y/z components.
      The measurement unit is radians/s.

Signed-off-by: Armando Visconti <armando.visconti@st.com>
2025-01-02 18:04:19 +01:00
Krzysztof Chruściński
19526795c6 drivers: serial: nrfx_uarte: Fix low power mode for interrupt driven API
Low power mode for non-asynchronous API case is only available when
RX is not used (RX pin is not defined). In that case TX starting
function was using uarte_enable_locked() which tracks if UARTE is
used by TX or RX and TXSTOPPED interrupt was disabling UARTE
unconditionally. Because of that following attempt to TX start
was assuming that UARTE is already enabled when it was disabled.
Fixing it by using uarte_disable_locked function in TXSTOPPED
handling.

Code reordering was required to make uarte_disable_locked()
available earlier.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-01-02 16:03:59 +01:00
Maochen Wang
b907d77647 manifest: update hostap to add codeowner
update hostap to add codeowner

Signed-off-by: Maochen Wang <maochen.wang@nxp.com>
2025-01-02 16:03:47 +01:00
Kris Wolff
991fd8d4d5 net: dhcpv4: update DNS address assignment to be optional
The DHCPv4 options always assigns the DNS address if the router
provides one through the DHCP callback. There are times a developer
may not always want to assign the server from the router, but only
manually assign them. Adding a Kconfig option for assigning the DNS
address and defaulting to true to not interfere with previously
expected functionality.

Signed-off-by: Kris Wolff <kwolff@wavelynx.com>
2025-01-02 16:03:25 +01:00
Chaitanya Tata
89b53f527d modules: hostap: Fix WPA supplicant debug logging
Despite having higher log buffer sizes the log messages are being
dropped due to high rate (and longer messages) as hostap debugging is
very verbose, so, use "immediate" logging by default. As hostap is only
for control path this will not have impact on timing.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-01-02 16:03:09 +01:00
Maochen Wang
42701fdb27 hostap: update the default heap size for hostap
As kernel heap is used for hostap, which replaced libc heap, then no
need to consider the MBEDTLS_ENABLE_HEAP case. For enterprise case,
mbedtls will use MBEDTLS_HEAP or libc heap to allocate memory, instead
of the kernel heap.
Modify the heap size for enterprise case to have necessary memory.

Signed-off-by: Maochen Wang <maochen.wang@nxp.com>
2025-01-02 12:35:46 +01:00
Maochen Wang
f9901e8e9b net: sockets: change socketpair related buffer and heap size
Latest supplicant uses 1K buffer size for sending control message via
socketpair, so reducing the NET_SOCKETPAIR_BUFFER_SIZE to save memory
footprint. There are 4 socketpairs for supplicant only case, and 6
socketpairs for hostapd case, update the heap size correspondingly.

Signed-off-by: Maochen Wang <maochen.wang@nxp.com>
2025-01-02 12:35:46 +01:00
F. Ramu
8b403ba641 boards: st: introduce new STM32F413H-DISCO discovery kit
Add the stm32f413h_disco target to the boards/st
Add the PLLi2S when needed by the USB or SDMMC or RNG.

Signed-off-by: Francois Ramu <francois.ramu@st.com>
2025-01-02 12:35:32 +01:00
Francois RAMU
65997ce856 boards: st: stm32f412 disco set the correct board name
Fix the board name in the stm32F412g_disco index
description file

Signed-off-by: Francois Ramu <francois.ramu@st.com>
2025-01-02 12:35:32 +01:00
James Roy
364c555e21 drivers: counter: Fix unchecked return value in mcp7940
Fix unchecked return value scanned by Coverity.

Signed-off-by: James Roy <rruuaanng@outlook.com>
2025-01-02 10:55:04 +01:00
Jianxiong Gu
638cfede31 dt-bindings: pinctrl: ch32v003: Fix I2C1 remap bit
Corrects definition to match the register map.

Signed-off-by: Jianxiong Gu <jianxiong.gu@outlook.com>
2025-01-02 10:54:43 +01:00
Tom Burdick
73f1156c5e llext: Remove simple from llext test
The simple path and naming wasn't really right, there are no other tests
and the test suite has become quite automated and extensable to cover
most things we'd like to test with llext. Building, loading, and linking
of course.

Signed-off-by: Tom Burdick <thomas.burdick@intel.com>
2025-01-02 09:19:35 +01:00
Chris Friedt
bc5aff3582 posix: options: fs: separate file_system_r to its own file
Move the functionality of POSIX_FILE_SYSTEM_R to its own
compilation unit and remove the unnecessary dependency on
POSIX_FILE_SYSTEM.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-01-02 09:18:57 +01:00
Chris Friedt
fc860e1010 tests: posix: fs: increase ztest stack size from 1k to 2k
The default stack size was causing qemu_arc/qemu_arc_em and
qemu_arc/qemu_arc_hs to fail when a dirent object was
stack-allocated.

Increase the default stack size to accomodate for additional
usage.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-01-02 09:18:57 +01:00
Chris Friedt
00a8818a71 posix: options: fs: move posix_fs_desc to fs_priv.h
Move struct posix_fs_desc to fs_priv.h

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-01-02 09:18:57 +01:00
Chris Friedt
e967120b9a tests: posix: fs: correct arguments to readdir_r()
Previously, a NULL pointer was passed as the second argument to
readdir_r(). This is incorrect. The passed pointer should be
to a valid, externally-allocated struct direct.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-01-02 09:18:57 +01:00
Armando Visconti
4e503748a5 sensors: lsm6dsv16x: fix get_frame_count API
The get_frame_count() API must return the number of frames in FIFO
for a given channel type, and not the total number of generic FIFO
frames. This API may be also re-used in the decoder routine when
the timestamp baseline is adjusted.

Signed-off-by: Armando Visconti <armando.visconti@st.com>
2025-01-02 04:07:37 +01:00
Fabian Blatz
0ac9a6c512 drivers: stepper: drv8424: Use step_dir common code
Adapt the drv8424 driver to use the common step dir interface.

Signed-off-by: Fabian Blatz <fabianblatz@gmail.com>
2025-01-01 02:04:53 +01:00
Fabian Blatz
39dbd49874 drivers: stepper: step_dir: Fix actual position increment
Address issue where the timing source is not stopped upon step completion
and not adjusting the actual position after performing a step.

Signed-off-by: Fabian Blatz <fabianblatz@gmail.com>
2025-01-01 02:04:53 +01:00
Fabian Blatz
9e6366a01e drivers: stepper: step_dir: Add fallback for dual-edge-step
Adds a fallback for the dual-edge-step property in the step dir common
code. Without this drivers using the common code would have to declare the
dual-edge-step property so it can default to false when not set, even if
the IC does not support adjusting it.

Signed-off-by: Fabian Blatz <fabianblatz@gmail.com>
2025-01-01 02:04:53 +01:00
Vinayak Kariappa Chettimada
3a8db2715f tests: bsim: Bluetooth: Add -RealEncryption=1 to pass in-system UT
BSIM tests that enabled CONFIG_BT_CTLR_TEST=y now require
-RealEncryption to pass the Controller's in-system unit test
of ECB module.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2025-01-01 02:04:33 +01:00
Vinayak Kariappa Chettimada
9678ff2041 Bluetooth: Controller: Include mem and ecb in-system tests
Include mem and ecb implementation in-system tests.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2025-01-01 02:04:33 +01:00
Vinayak Kariappa Chettimada
17846ed1f4 Bluetooth: Controller: nRF54L: Fix ecb tag name should be unique
Fix ecb tag name for violation to rule 5.7 (Tag name should
be unique) tag: ecb.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2025-01-01 02:04:33 +01:00
Vinayak Kariappa Chettimada
de13d36865 Bluetooth: Controller: Refactor isr_ecb and unit testing
Refactor the NRF_ECB isr_ecb function to reduce redundant
common code.

Updated the unit tests to use Bluetooth Specification
defined test vectors.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2025-01-01 02:04:33 +01:00
Vinayak Kariappa Chettimada
1dfebd6c1a Bluetooth: Controller: Add NRF_ECB crypto support in nRF54L15 SoC
Add NRF_ECB crypto support in nRF54L15 SoCs.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2025-01-01 02:04:33 +01:00
Fabio Baltieri
b716b0672d dts: ite: refactor the it8801 template hierarchy
The it8801 template is helpful but in the current state it does not
allow changing the device address as that is in the template itself. Fix
that by moving the template content down a level in the hierarchy, so
that it extends the mfd device itself rather than than instantiate it,
then the base instance can have any address, now the only limitation is
that only one instance is possible, but that is probably alright for
now.

Alternatives would be to use a define for the address, or even a
template per address, but this feels like a better compromise for now.
This may also use
https://github.com/zephyrproject-rtos/zephyr/pull/82825 in the future if
that ever becomes a thing.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2024-12-31 19:45:49 +01:00
Henrik Brix Andersen
ee250a11ce drivers: gpio: GPIO_DT_SPEC_GET_BY_IDX_OR: use default if idx invalid
It is not sufficient to check if the given node_id has the requested
property in GPIO_DT_SPEC_GET_BY_IDX_OR(), the index also needs to valid.

Change the logic to test for a valid index (which, in turn, also checks if
the property is valid), otherwise return the default value provided by the
caller.

Signed-off-by: Henrik Brix Andersen <henrik@brixandersen.dk>
2024-12-31 00:06:11 +01:00
Carles Cufi
3c420a4828 checkpatch: Adapt the braces check to Zephyr
scripts/checkpatch.pl was written originally for the Linux kernel, and
its code reflects the kernel's coding style. In particular, it has
checks for unneeded braces around single-statement if/else/for/while
conditions. In Zephyr however, braces are always required, and so the
checks needed modifying to verify the opposite condition.

In order to enable the now-compatible checks, we also remove the
--ignore BRACES statement in .checkpatch.conf.

Limitations: the current code works well if there are not conditional
statements (e.g. #if, #ifdef or #endif) next to the if/else/for/while
conditions. This is rarely the case, but triggers with the Bluetooth
controller in code like this:

```
 #if defined(CONFIG_BT_PERIPHERAL)
        if (!lll->is_hdcd)
 #endif /* CONFIG_BT_PERIPHERAL */
        {
```

```
        } else
 #endif /* CONFIG_BT_CTLR_PRIVACY */
        {

```

```
 #if defined(CONFIG_BT_CTLR_DF_ADV_CTE_TX)
        if (lll->cte_started) {
                radio_switch_complete(phy_s, 0, phy_s, 0);
        } else
 #endif /* CONFIG_BT_CTLR_DF_ADV_CTE_TX */
        {
```

```
 #ifdef DUAL_BANK
        while ((FLASH_STM32_REGS(dev)->SR1 & FLASH_SR_QW) ||
               (FLASH_STM32_REGS(dev)->SR2 & FLASH_SR_QW))
 #else
        while (FLASH_STM32_REGS(dev)->SR1 & FLASH_SR_QW)
 #endif
        {
```

Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
2024-12-30 21:46:47 +01:00
Yishai Jaffe
0f948fdb1c soc: silabs: efr32xg23: add DMA support
Added DMA support to efr32xg23 socs and boards containing them.

Signed-off-by: Yishai Jaffe <yishai1999@gmail.com>
2024-12-30 19:47:19 +01:00
Martin Jäger
9d3d67d3d1 drivers: ieee802154: b91: fix status variable type in RX ISR
The status variable stores the return value of `net_recv_data`, which
is an `int` and may be negative.

Signed-off-by: Martin Jäger <martin@libre.solar>
2024-12-30 19:47:05 +01:00
Simone Orru
354a47cfcf tracing: sysview: Clang-format tracing_sysview_ids.h
Run clang-format over the tracing_sysview_ids.h.

Signed-off-by: Simone Orru <simone.orru@secomind.com>
2024-12-30 17:32:03 +01:00
Simone Orru
2bd101132e kernel: Add tests for k_heap_calloc
Add tests for the k_heap_calloc function.

Signed-off-by: Simone Orru <simone.orru@secomind.com>
2024-12-30 17:32:03 +01:00
Simone Orru
f53aa42b8b tracing: Add calloc
Add the calloc tracing functions.

Signed-off-by: Simone Orru <simone.orru@secomind.com>
2024-12-30 17:32:03 +01:00
Simone Orru
37fd711a45 kernel: Add k_heap_calloc
Add the k_heap_calloc function. The
equivalent of the standard calloc for
the Zephyr kernel.

Signed-off-by: Simone Orru <simone.orru@secomind.com>
2024-12-30 17:32:03 +01:00
Rex Chen
dabeb9c95c net: wifi: shell: wifi status support all sae pwe types
Add support for wifi status show sae HNP,H2E and AUTO exactly.

Signed-off-by: Rex Chen <rex.chen_1@nxp.com>
2024-12-30 13:49:50 +01:00
Rex Chen
2dc288cf85 net: wifi: shell: add sae pwe support for sap
Add sae pwe H2E and AUTO support for sap.

Signed-off-by: Rex Chen <rex.chen_1@nxp.com>
2024-12-30 13:49:50 +01:00
Jan Kiszka
fa66a9be57 arch: arm: cortex_r/a: Fix multiple use of ARCH_EXCEPT in same scope
Pull the register variable into the private scope that ARCH_EXCEPT
creates so that the macro can be used multiple times in the same caller
scope. This can happen via k_panic(), e.g. in subsys/fs/ext2/ext2_impl.c.

Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
2024-12-30 11:44:10 +01:00
Daniel Fuchs
da91dbdd52 doc: silabs: fix J-Link firmware update instructions
J-Link firmware images for silabs boards are not distributed by
SEGGER, fw update should be done with Simplicity Studio instead.

Signed-off-by: Daniel Fuchs <software@sagacioussuricata.com>
2024-12-30 08:43:12 +01:00
Daniel Fuchs
32e39c164c boards: silabs: add EK2703A support
Based on board files for DK2601B. The EFR32xG24 Explorer Kit
(xG24-EK2703A) is similar to the DK2601B but does not have any
sensors onboard.

Signed-off-by: Daniel Fuchs <software@sagacioussuricata.com>
2024-12-30 08:43:12 +01:00
Daniel Fuchs
f0fee215ab soc: introduce the EFR32MG24B210F1536IM48
The EFR32MG24B210F1536IM48 has 4 more GPIOs than the
EFR32MG24B310F1536IM48, and does not support the high accuracy
mode for the IADC.

Signed-off-by: Daniel Fuchs <software@sagacioussuricata.com>
2024-12-30 08:43:12 +01:00
Jamie McCrae
1b70bfa14e tests: boot: mcuboot_recovery_retention: Fix testcase
Fixes an issue with the expected output of this test having
changed slightly

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-12-29 05:59:37 +01:00
Jilay Pandya
0ab69fb19e drivers: crypto: crypto_ataes132a fix buffer overrun issue
fix buffer overrun issue by assigning more bytes to the param buf

Signed-off-by: Jilay Pandya <jilay.pandya@outlook.com>
2024-12-29 05:51:51 +01:00
Guennadi Liakhovetski
6d0c23be31 soc: intel_adsp: add support for .cold* sections
Add support for .cold and .coldrodata sections, used to implement
a cold module. Assigning code and read-only data to those sections
makes them suitable for use in a cold module, stored and executed in
slow memory.

Signed-off-by: Guennadi Liakhovetski <guennadi.liakhovetski@linux.intel.com>
2024-12-29 05:50:25 +01:00
Guennadi Liakhovetski
09cdc1f4b8 soc: intel_adsp: add a "cold" module manifest
Add a manifest for a "cold" module, that will be executed in DRAM
without copying it to SRAM for the whole duration of the firmware
life-time.

Signed-off-by: Guennadi Liakhovetski <guennadi.liakhovetski@linux.intel.com>
2024-12-29 05:50:25 +01:00