Commit graph

113524 commits

Author SHA1 Message Date
Scott Worley
4d1139de91 soc: microchip: mec: Unify kernel timer tick rate configuration
Microchip MEC was configuring the kernel timer tick rate at the
board level instead of the SoC level. We unify all this by moving
the Kconfig logic out of the board level into each mec chip.
We also derive SYS_CLOCK_HW_TICKS_PER_SEC from the device tree
node enabled for the kernel timer: Microchip's 32 KHz RTOT timer
or Cortex-M4 SYSTICK. The soc kconfig rules are loading all mec
subdirectories for every build causing warnings when building
new socs with this change. We made the changes for all the mec chips.

Signed-off-by: Scott Worley <scott.worley@microchip.com>
2025-04-11 17:31:37 +02:00
Scott Worley
ab071da3be drivers: serial: Microchip MEC5 add select PINCTRL to Kconfig
Zephyr has changed the rules for PINCTRL to use Kconfig select
feature at the driver level instead of setting the Kconfig
item directly in the board or application level. We updated
the MEC5 UART serial driver Kconfig to select PINCTRL.

Signed-off-by: Scott Worley <scott.worley@microchip.com>
2025-04-11 17:31:37 +02:00
Emil Gydesen
e02bd58049 samples: Bluetooth: BAP: Unicast Server: Fix bad valid check
The valid check was incorrect and instead set valid_data to
false for valid data, and true for invalid data.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-04-11 16:18:23 +02:00
Peter van der Perk
6a37f325a4 drivers: input: sbus: Fix race and infinite loop
Under certain conditions report_lock could already be used by the irq
before it was initialized, now we ensure we enable irq after report_lock
is initialized.

Furthermore in some conditions data->xfer_bytes could be equal
SBUS_FRAME_LEN resulting in a infinite loop doing zero reads when
fifo is still holding new bytes

Signed-off-by: Peter van der Perk <peter.vanderperk@nxp.com>
2025-04-11 16:17:56 +02:00
Maureen Helm
60d933e278 MAINTAINERS: Update ADI area to match more drivers and boards
Updates the ADI platforms area to match additional drivers for ADI part
numbers (e.g., ad405x, ad559x, and adp5585) and ADI shield boards (e.g.,
eval_ad4052_ardz).

Signed-off-by: Maureen Helm <maureen.helm@analog.com>
2025-04-11 16:17:47 +02:00
Olivier Lesage
7b61bd6518 bluetooth: gatt: Add BT_GATT_CCC_WITH_WRITE_CB()
Add simple helper macro so users can define a CCCD with a write cb
without having to combine BT_GATT_CCC_MANAGED() and
BT_GATT_CCC_INITIALIZER() themselves.

Unlike the changed callback the write callback has a return value
that can be used to reject the write request.

Signed-off-by: Olivier Lesage <olivier.lesage@nordicsemi.no>
2025-04-11 16:17:42 +02:00
Jeppe Odgaard
c1e8ad447a doc: releases: migration-guide-4.2: rename tmp116 to tmp11x
tmp116 has been renamed to tmp11x because it also supports tmp117 and
tmp119.

Signed-off-by: Jeppe Odgaard <jeppe.odgaard@prevas.dk>
2025-04-11 16:17:35 +02:00
Jeppe Odgaard
231b2a0c19 drivers: sensor: rename tmp116 to tmp11x
The tmp116 sensor driver also supports tmp117 and tmp119. Therefore rename
to indicate that is supports a range of tmp devices.

Signed-off-by: Jeppe Odgaard <jeppe.odgaard@prevas.dk>
2025-04-11 16:17:35 +02:00
Jeppe Odgaard
4ce331c1d9 drivers: sensor: add tmp119 support
Add support for TMP119. Its registers are compatible with TMP117 except for
device id register.

Signed-off-by: Jeppe Odgaard <jeppe.odgaard@prevas.dk>
2025-04-11 16:17:35 +02:00
Robert Lubos
958872648a net: openthread: Fix ignored return values in platform diag module
Verify return values for otPlatRadio* functions and log the error
accordingly. For otPlatRadioTransmit() case, just log the error
and let the entire TX procedure proceed on the next timeout.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-04-11 14:53:59 +02:00
Robert Lubos
cbde1edc41 net: openthread: Remove unused function from radio.c
clear_pending_events() was not used anywhere.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-04-11 14:53:59 +02:00
Robert Lubos
ab448a88db net: openthread: Fix ignored return values in OT utils
Do not ignore return values of OT functions registering IPv6 addresses.
As this is called from the net_mgmt callback context, which returns
void, there's not much that can be done, other than logging the error.

To simplify the logging code and avoid the need to use extra buffer,
use net_sprint_ipv6_addr() networking utility function within the log
message to convert binary address to string.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-04-11 14:53:59 +02:00
Jordan Yates
52415ed94f tests: pm: device_driver_init: test state_get during init
Test the value returned by `pm_device_state_get` during device driver
initialisation.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-04-11 14:53:53 +02:00
Jordan Yates
71a0f39568 pm: device: correct state in pm_device_driver_init
Set the value of `pm->state` as we move through the various stages of
`pm_device_driver_init`. This ensures hat if any of the code inside the
actions callbacks runs `pm_device_state_get` they get the correct state,
instead of always getting `PM_DEVICE_STATE_ACTIVE` (0, the value at
reset).

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-04-11 14:53:53 +02:00
Vixay Phimmasane
5721815cab samples: boards: st: fix command path in README
command path is wrong, pointing to basic blinky sample

Signed-off-by: Vixay Phimmasane <visuphi@gmail.com>
2025-04-11 14:53:27 +02:00
Ruibin Chang
fb35b6890d drivers/input/it51xxx: implement kbd driver
Implement kbd driver for ITE it51xxx series chip.

Signed-off-by: Ruibin Chang <Ruibin.Chang@ite.com.tw>
2025-04-11 14:53:11 +02:00
Lucas Tamborrino
72aa2a9391 samples: boards: espressif: ulp: Add Echo Sample
Add an echo sample based on polling API from UART.

Signed-off-by: Lucas Tamborrino <lucas.tamborrino@espressif.com>
2025-04-11 13:34:17 +02:00
Lucas Tamborrino
466051b1c3 samples: boards: espressif: ulp: Add sysbuild property
Add proper sysbuild property to debug_ulp sample

Signed-off-by: Lucas Tamborrino <lucas.tamborrino@espressif.com>
2025-04-11 13:34:17 +02:00
Lucas Tamborrino
232e2c5a3c drivers: uart: espressif: Add LP UART driver
Add LP UART driver for LP Core

Signed-off-by: Lucas Tamborrino <lucas.tamborrino@espressif.com>
2025-04-11 13:34:17 +02:00
Lucas Tamborrino
0b79b47811 soc: espressif: Filter LP Core from esptool command
Filter LP Core from esptool post build commands

Signed-off-by: Lucas Tamborrino <lucas.tamborrino@espressif.com>
2025-04-11 13:34:17 +02:00
aisuneko icecat
cd3c6604ee boards: lilygo: t_oi_plus: initial support
initial support for the Lilygo TTGO T-OI-PLUS ESP32-C3 board

Signed-off-by: aisuneko icecat <iceneko@protonmail.ch>

Co-authored-by: Benjamin Cabé <kartben@gmail.com>
2025-04-11 13:33:58 +02:00
Eric Ackermann
c2f024ee2a boards: openhwgroup: add CVA6 on Genesys 2 board
Adds support for the CVA6 CPU on a Genesys 2 FPGA board
(https://github.com/openhwgroup/cva6).
The SoC currently contains the CVA6 CPU  with the SV39 MMU, interrupt
controllers (CLINT and PLIC), UART, a SPI for booting from SD, a boot
ROM, and I2C controller for on-board audio, a GPIO and the lowRISC
ethernet subsystem.
Two slightly different versions of the board are added, with a 64-bit
and a 64-bit configuration of CVA6, respectively.

Signed-off-by: Eric Ackermann <eric.ackermann@cispa.de>
2025-04-11 13:33:50 +02:00
Eric Ackermann
39babba9a9 soc: add OpenHW Group CVA6 SoC
Adds support for the CVA6 family of RISC-V CPUs.
CVA6 is commonly found as a soft core CPU on FPGA designs.
Different configurations and instruction set extensions can be
configured, and different SoCs targeting various FPGA boards are
available.
This commit adds support for the 32-bit and 64-bit configurations
of CVA6, as well as three slightly different SoCs (a minimal 32-bit
configuration, a 64-bit configuration without FPU, a 64-bit
configuration with FPU).

Signed-off-by: Eric Ackermann <eric.ackermann@cispa.de>
2025-04-11 13:33:50 +02:00
Daniel Mangum
25b083dff4 doc: shell: fix typo of Segger
Fixes Segger typo in shell Segger RTT backend docs.

Signed-off-by: Daniel Mangum <georgedanielmangum@gmail.com>
2025-04-11 10:54:29 +02:00
Peter Johanson
ea3f239ac6 boards: seeed: Add XIAO MG24
Add the basic XIAO MG24 board definition.

Signed-off-by: Peter Johanson <peter@peterjohanson.com>
2025-04-11 10:54:22 +02:00
Manojkumar Konisetty
aa690fad3f doc: samples: Update bluetooth/central README
Add relevant details to README file of samples/bluetooth/central

Signed-off-by: Manojkumar Konisetty <manoj@aerlync.com>
2025-04-11 10:54:17 +02:00
Ren Chen
b601a357cd drivers: i3c: shell: fix the argv index for broadcast setwml ccc
For the broadcast setwml ccc, the argument vector index of the input
length is 2 instead of 3. This commit fixs this issue.

Signed-off-by: Ren Chen <Ren.Chen@ite.com.tw>
2025-04-11 06:34:36 +02:00
Derek Valleroy
ead1cfb1aa drivers: sensors: lsm6dsv16x: Fix bug in decoder
The lsm6dsv16x driver is using an incorrect value for the index
into the acceleration range. This results in using the wrong
range. The issue was found to be a bug in a MACRO in
lsm6dsv16x_decoder.h that was used to find the index in the
acceleration range. The MACRO was improperly counting zeros from the
leading edge, instead of the trailing edge.

Signed-off-by: Derek Valleroy <derekvalleroy@fb.com>
2025-04-11 06:34:24 +02:00
Tim Lin
f3ddb06028 soc: ite: ilm: it51xxx: Support RAM code size up to 4K
Previously, the RAM code size was limited to 1K, causing issues when the
code exceeded this limit. This update modifies the implementation to
support RAM code sizes up to 4K

test: zephyrproject/zephyr/tests/drivers/flash/common --> pass

Signed-off-by: Tim Lin <tim2.lin@ite.corp-partner.google.com>
2025-04-11 06:34:15 +02:00
Utsav Munendra
12cba7addf portability: cmsis: Bugfix osThreadFlagsWait behavior
The osFlagsWaitAny option is not handled correctly.  It returns once any
flag at all is set, whereas it is supposed to only return once one of
the flags specified in flags is set.

Signed-off-by: Utsav Munendra <utsavm@meta.com>
2025-04-11 06:34:06 +02:00
Tomáš Juřena
6127264fe7 dts: stm32f4: Add wkup-pin node
For the F4 MCU family, a new DT node is defined to specify the pins
capable of waking the chip.

Signed-off-by: Tomáš Juřena <jurenatomas@gmail.com>
2025-04-11 06:33:56 +02:00
Tomáš Juřena
d700943d29 soc: st: stm32: Add poweroff to F4 family
Allows F4 MCUs to enter standby mode which behave similar to the poweroff
mode.

Signed-off-by: Tomáš Juřena <jurenatomas@gmail.com>
2025-04-11 06:33:56 +02:00
Piotr Krzyzanowski
41a996df94 samples: drivers: Add spis_wakeup sample
Sample showing how to use the additional wakeup signal
in nordic,nrf-spis driver. The application, configured
as a SPIS, is put to sleep while waiting for an SPI
transmission. An external device working as a SPIM and
also handling the wakeup signal wakes the application
up just before the transmission starts.

Signed-off-by: Piotr Krzyzanowski <piotr.krzyzanowski@nordicsemi.no>
2025-04-11 06:33:38 +02:00
Darren Lu
30ff07f225 west.yml: update hal_ambiq to support sdhc
Updated Apollo4P HAL to support SDHC driver.

Signed-off-by: Darren Lu <dlu@ambiq.com>
2025-04-11 06:33:24 +02:00
Darren Lu
5b623ea12f samples: add apollo4p_evb to fs_sample
Add apollo4p_evb.conf to fs_sample.

Signed-off-by: Darren Lu <dlu@ambiq.com>
2025-04-11 06:33:24 +02:00
Darren Lu
5fd343b316 dts: add SDIO support to apollo4p_evb
Update dts for using SDIO on apollo4p_evb.

Signed-off-by: Darren Lu <dlu@ambiq.com>
2025-04-11 06:33:24 +02:00
Darren Lu
129ccf981c drivers: sdhc: add sdhc driver for Ambiq MCU
Add SDHC/SDIO driver support for Ambiq Apollo4 MCU.

Signed-off-by: Darren Lu <dlu@ambiq.com>
2025-04-11 06:33:24 +02:00
Pavel Vasilyev
f46fd075d4 tests: bsim: bluetooth: host: hfc_multilink: Run test on nRF5340
Run test on nRF5340 to check if recombination works with HCI IPC
driver.

Signed-off-by: Pavel Vasilyev <pavel.vasilyev@nordicsemi.no>
2025-04-11 06:32:58 +02:00
Pavel Vasilyev
82a7110406 tests: bsim: bluetooth: host: hfc: Run test for nRF5340
Run test for nRF5340 to check that it works with a different HCI driver.

Signed-off-by: Pavel Vasilyev <pavel.vasilyev@nordicsemi.no>
2025-04-11 06:32:58 +02:00
Christoph Winklhofer
a5e295c452 json: improve parsing and serializing of integers
Add support for parsing and serializing of following integer types:
'int8_t', 'uint8_t', 'int16_t', 'uint16_t' and 'uint32_t'.

The generic integer token JSON_TOK_INT and JSON_TOK_UINT, in combination
with the field size (set by JSON_OBJ_DESCR_PRIM) allows to parse different
integer types, for example:

struct foo {
  int64_t i64;
  uint32_t u32;
  int16_t i16;
  uint8_t u8;
};

struct json_obj_descr foo_descr[] = {
  JSON_OBJ_DESCR_PRIM(struct foo, i64, JSON_TOK_INT),
  JSON_OBJ_DESCR_PRIM(struct foo, u32, JSON_TOK_UINT),
  JSON_OBJ_DESCR_PRIM(struct foo, i16, JSON_TOK_INT),
  JSON_OBJ_DESCR_PRIM(struct foo, u8, JSON_TOK_UINT),
};

These tokens also support parsing and serializing enums:

enum unsigned_enum { UA=0, UB=1, UC=2 };
enum signed_enum { SA=-1, SB=0, SC=1 };

struct foo {
  enum unsigned_enum u;
  enum signed_enum s;
};

struct json_obj_descr foo_descr[] = {
  JSON_OBJ_DESCR_PRIM(struct foo, u, JSON_TOK_UINT),
  JSON_OBJ_DESCR_PRIM(struct foo, s, JSON_TOK_INT),
};

Signed-off-by: Christoph Winklhofer <cj.winklhofer@gmail.com>
2025-04-11 06:32:50 +02:00
Christoph Winklhofer
63d33e631c json: support parsing and serializing of strings with char arrays
Support parsing and serializing of struct fields that are defined as a
char array.

Use the token JSON_TOK_STRING_BUF to parse and serialize a string for a
char array, for example:

struct foo {
  const char *str;
  char str_buf[30];
};

struct json_obj_descr foo_descr[] = {
  JSON_OBJ_DESCR_PRIM(struct foo, str, JSON_TOK_STRING),
  JSON_OBJ_DESCR_PRIM(struct foo, str_buf, JSON_TOK_STRING_BUF),
};

The struct 'json_obj_descr' now has an additional union member 'field'
to store the size of the struct field, which is used with the token
'JSON_TOK_STRING_BUF' to determine the element size.

Fixes: #65200
Signed-off-by: Christoph Winklhofer <cj.winklhofer@gmail.com>
2025-04-11 06:32:50 +02:00
Marcio Ribeiro
915779947a samples: i2s & led_strip: update esp32 board overlay files
Updates esp32 i2s and led_strip board overlay files

Signed-off-by: Marcio Ribeiro <marcio.ribeiro@espressif.com>
2025-04-11 06:32:40 +02:00
Marcio Ribeiro
faea025cd4 drivers: i2s: esp32: remove block size limitation from rx channel
Removes block size limitation from rx channel

Signed-off-by: Marcio Ribeiro <marcio.ribeiro@espressif.com>
2025-04-11 06:32:40 +02:00
Chris Friedt
b032304bbe scripts: ci: check_compliance: use git-top to check modules
BoardYml, DeviceTreeBindings, Kconfig, and KconfigBasic checks
can be run with a decentralized west manifest.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-04-11 06:32:31 +02:00
Chris Friedt
07a023d779 scripts: ci: check_compliance: GIT_TOP and ZEPHYR_BASE as paths
Use pathlib.Path objects for GIT_TOP and ZEPHYR_BASE instead of
strings.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-04-11 06:32:31 +02:00
Chris Friedt
af342e5205 scripts: ci: check_compliance: allow mcuboot log level dbg
Currently, only MCUBOOT_LOG_LEVEL_INF and MCUBOOT_LOG_LEVEL_WRN
are allowed in UNDEF_KCONFIG_ALLOWLIST. Let's allow
MCUBOOT_LOG_LEVEL_DBG as well, since some use cases may require
this level of scrutiny.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-04-11 06:32:31 +02:00
Chris Friedt
305e648d63 scripts: ci: check_compliance: ignore patch and diff files
Was getting several false positives about whitespace at line
endings with check_compliance.py because it was analyzing
.patch and .diff files as source.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-04-11 06:32:31 +02:00
Stefan Giroux
651ecab53e drivers: gpio: gpio_mcux_igpio: add pull strength configuration
The i.MXRT10xx series have configurable GPIO pull strengths.

These are available for configuration in the pinctrl system, but not for
regular GPIO use.

This commit adds SOC-series specific GPIO configuration bits for selecting
weak or strong GPIO pulls, similar to drive strengths available from other
GPIO pin configuration examples.

This has been tested on a custom i.MXRT1062 product.

Signed-off-by: Stefan Giroux <stefan.g@feniex.com>
2025-04-10 18:05:26 +02:00
Chaitanya Tata
5f67471532 drivers: nrf_wifi: Fix SR co-ex RF switch configuration
This was not getting enabled because label was passed instead of path
and dependency was not met.

Fix the DT function to use label.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-04-10 18:02:28 +02:00
Chaitanya Tata
260c4f6878 drivers: nrf_wifi: Extend the help on modes
These nRF70 driver operational modes are important, so, extend the help
to clearly communicate the mode's purpose.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-04-10 18:02:20 +02:00