Commit graph

126,787 commits

Author SHA1 Message Date
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
Hake Huang
98458e2220 tests: uart: add extra_conf to disable CONFIG_USERSPACE
while disable USERSPACE we need set
CONFIG_TEST_ENABLE_USERSPACE=n

fixes: #82758

Signed-off-by: Hake Huang <hake.huang@oss.nxp.com>
2025-04-10 18:01:18 +02:00
Kiara Navarro
77c1414082 drivers: charger: add driver for bq25713
Create a driver implementation for the battery charge controller
TI BQ25713.

It includes the ability to enable / disable the controller and also
to setup max current and voltage charge parameters at initialization
time but also at run time.

On the other hand, it is possible to assign / obtain input voltage
and current regulation.

Signed-off-by: Kiara Navarro <knavarro@paltatech.com>
2025-04-10 18:01:02 +02:00
Benjamin Cabé
68b2e7d677 dts: nxp: wifi: fix Wi-Fi spelling
Spell Wi-Fi properly in binding description

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-04-10 15:52:14 +02:00
Benjamin Cabé
669d35a752 dts: nxp: wifi: nxp,wifi is not an SD device
inherit from base.yaml instead of sd-device since this device is not
meant to be used on an SD bus.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-04-10 15:52:14 +02:00
Troels Nilsson
c3df8fcd92 Bluetooth: Controller: Add validation of received LL_CIS_REQ
Validate that a received LL_CIS_REQ is valid and reject if it is not

Fixes EBQ test failure in LL/CIS/PER/BI-07-C

Signed-off-by: Troels Nilsson <trnn@demant.com>
2025-04-10 15:51:54 +02:00
Derek Snell
070bd0e295 soc: nxp: rw61x: enable USB clock for UDC
When using USB Next stack and UDC driver, enable USB clock

Signed-off-by: Derek Snell <derek.snell@nxp.com>
2025-04-10 15:51:45 +02:00
Fengming Ye
da4c015aad west.yml: update hal_nxp revision
Update hal_nxp revision to align wifi_nxp imu adapter
with SDK Next Generation.

Signed-off-by: Fengming Ye <frank.ye@nxp.com>
2025-04-10 15:51:37 +02:00
Fengming Ye
3a921c1dab hal: nxp: mcux-ng: align imu adapter with SDK
Align cmake with NXP SDK.

Signed-off-by: Fengming Ye <frank.ye@nxp.com>
2025-04-10 15:51:37 +02:00
Isaac Yuki
94655d2a13 drivers: display_mcux_elcdif: enable RGB_888 pixel format
Add missing define in order to enable RGB_888 pixel format support
on the mcux_elcdif driver. Tested with TM070JVHG33 display

Signed-off-by: Isaac Yuki <isaaclucas.delimayuki@tq-group.com>
2025-04-10 15:51:27 +02:00
Petri Pitkanen
78b96585d0 dts: silabs: xg29 flash controller int level fix
Accidentall chosen wrong interrup level for flash controller
fixed to be inline with other devices flash controller level

Signed-off-by: Petri Pitkanen <petri.pitkanen@silabs.com>
2025-04-10 14:44:16 +02:00
Triveni Danda
b20e87ae7a net: lib: wifi_credentials: Fix security type check while storing creds
Fix credential store corruption issue caused by missing
security type checks. Add support for all valid security
types to ensure credentials are parsed correctly.

Fixes #88261.

Signed-off-by: Triveni Danda <triveni.danda@nordicsemi.no>
2025-04-10 14:44:02 +02:00
Armando Visconti
4f8572c35a sensor: lsm6dsv16x: fix building in rtio config
Fix build error which happens when LSM6DSV16X_STREAM=y and there
are no lsm6dsv16x driver instances on i3c bus.

Signed-off-by: Armando Visconti <armando.visconti@st.com>
2025-04-10 14:43:53 +02:00
cyliang tw
ea1129ee1a drivers: ethernet: support for numaker m55m1x series
Add support for Nuvoton numaker m55m1x series EMAC controller.
Also include NOCACHE_MEMORY allocation.
Support to generate random mac address and remove emac data flash.

Signed-off-by: cyliang tw <cyliang@nuvoton.com>
2025-04-10 14:43:43 +02:00
Jamie McCrae
8b49c638ec boards: nordic: nrf54l15dk: Fix flashing with XIP board variant
Fixes an issue whereby flashing would fail when using --erase since
it would erase the cores twice rather than once, by adding a flash
runner run once board configuration

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-04-10 14:43:28 +02:00
Benjamin Cabé
975b8e137f tests: json: fix tests involving double numbers
Update the JSON test cases to explicitly cast NAN and INFINITY to double
type to avoid implicit promotion.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-04-10 14:43:19 +02:00
Ying Zhang
ce771c57e6 bluetooth: host: fix hang issue caused by consecutive bt disable commands
- add BT_DEV_DISABLE flag to BT_DEV_PERSISTENT_FLAGS to
  protect consecutive bt disable from running

Signed-off-by: Ying Zhang <ying.zhang_2@nxp.com>
2025-04-10 13:02:41 +02:00
Tim Lin
327f8df862 test: drivers/gpio: ite: it515xx_evb: Add gpio test
Add GPIO node for it515xx_evb test.

Signed-off-by: Tim Lin <tim2.lin@ite.corp-partner.google.com>
2025-04-10 12:58:01 +02:00
Robert Robinson
9c672fb876 include: drivers: clock_control: Remove strict inclusion for nrf_clock.h
This reverts commit ee05087935.
Since all devices now support nrf_clock HAL as of nrfx 3.10

Signed-off-by: Robert Robinson <robert.robinson@nordicsemi.no>
2025-04-10 12:57:52 +02:00
Johann Fischer
0f4fc767be drivers: udc_rpi_pico: use atomic_t instead of k_event for value passing
Use atomic_t instead of k_event for event value passing.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-04-10 12:57:43 +02:00
Johann Fischer
dfe483dbcc drivers: udc_rpi_pico: fix restart of the new transaction
At high throughput, the controller sometimes fails to start a new
transaction. Clearing the corresponding endpoint bit in the BUFF_STATUS
completion register before initiating a new transaction solves this
problem.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-04-10 12:57:43 +02:00
Johann Fischer
6c90673a32 drivers: udc_rpi_pico: fix OUT transfer handling in ISR
Do not check if the tailroom is greater than or equal to MPS because the
controller does not write directly to the buffer and therefore cannot
write outside the buffer.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-04-10 12:57:43 +02:00
Johann Fischer
a2c5861568 drivers: udc_rpi_pico: fix set/clear endpoint halt
For the IN endpoint, we only need to set/reset the STALL bit in the
endpoint control register.
To set halt on the OUT endpoint, the AVAILABLE bit must also be set,
which is similar to starting a new transfer, but first any transfer in
progress must be canceled.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-04-10 12:57:43 +02:00
Johann Fischer
e98e774b75 drivers: udc_rpi_pico: mark endpoint as not busy after transfer canceled
Mark endpoint as not busy after transfer is canceled.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-04-10 12:57:43 +02:00
Johann Fischer
f701357675 drivers: udc_rpi_pico: support VBUS state change detection
Support VBUS state change detection and enable/disable DP pull-up
according to VBUS state when pinctrl property is provided.

It brings the similar functionality introduced in commit 4c0317fa47
("drivers: usb_dc_rpi_pico: Implemented vbus detection handling")
for the legacy device controller driver.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-04-10 12:57:43 +02:00
Johann Fischer
06232bb491 drivers: udc_rpi_pico: replace message queue with k_events
Using k_events eliminates the drawback of the queue potentially dropping
messages and provides a reliable event notification mechanism. It is
similar to commit c2f2d8ce5d
("drivers: usb: udc_dwc2: Replace queue with events")

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-04-10 12:57:43 +02:00
Johann Fischer
2f64a422e2 drivers: udc_rpi_pico: fix suspend/resume ISR handling
Set suspended state on suspend/resume ISR.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-04-10 12:57:43 +02:00
Sebastian Głąb
3c34f88678 tests: drivers: uart: uart_elementary: Run test on nRF54L* FLPR
Add overlays required to run the test on:
- nrf54l09pdk/nrf54l09/cpuflpr,
- nrf54l20pdk/nrf54l20/cpuflpr.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
2025-04-10 12:57:27 +02:00
Sebastian Głąb
a2f4154674 samples: drivers: watchdog: Enable sample on nrf54L09 and L20
Add overlays required to run watchdog sample on:
- nrf54l09pdk/nrf54l09/cpuapp,
- nrf54l09pdk/nrf54l09/cpuflpr,
- nrf54l20pdk/nrf54l20/cpuflpr.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
2025-04-10 12:57:27 +02:00
Sebastian Głąb
a9e822ee29 tests: drivers: watchdog: wdt_basic_api: Enable test on nRF54L09 and L20
Enable wdt_basic_api test on:
- nrf54l09pdk/nrf54l09/cpuapp (missing supported),
- nrf54l09pdk/nrf54l09/cpuflpr (missing overlay),
- nrf54l20pdk/nrf54l20/cpuflpr (missing supported and overlay).

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
2025-04-10 12:57:27 +02:00
Sebastian Głąb
729e39a0a7 tests: boards: nrf: qdec: Enable test on nRF54L20 FLPR
Add overlay required to run qdec tests
on nrf54l20pdk/nrf54l20/cpuflpr.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
2025-04-10 12:57:27 +02:00
Sebastian Głąb
6a782cf31f tests: drivers: timer: Enable test on nRF54L* cpuflpr
Enable nrf_grtc_timer test on:
- nrf54l09pdk/nrf54l09/cpuflpr and
- nrf54l20pdk/nrf54l20/cpuflpr.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
2025-04-10 12:57:27 +02:00
Sebastian Głąb
fb1d730f5c tests: drivers: gpio: gpio_basic_api: Enable test on nRF54L* cpuflpr
Add overlay required to run gpio_basic_api test on
- nrf54l09pdk/nrf54l09/cpuflpr and
- nrf54l20pdk/nrf54l20/cpuflpr.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
2025-04-10 12:57:27 +02:00
Sebastian Głąb
9bb5e2f910 samples: drivers: mbox: Enable sample on L09 and L20
Add board overlays required to run mbox sample on
nRF54L09 and nRF54L20 targets.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
2025-04-10 12:57:27 +02:00
Tomasz Moń
d6a8bd5870 usb: device_next: Change speed selection Kconfig dependency
In my opinion, the user is supposed to configure the speed of the stack
and drivers ough to honor that choice. However current Zephyr USB
maintainer imposes that the dependency is the other way round, i.e.
that user first needs to disable High-Speed chirp at driver level and
only then can select Full-Speed only operation. Adhere to the
arbitrarily set up rule to allow this really necessary functionality to
enter Zephyr.

I consider this change to be harmful because it opens up a Kconfig trap
that allows configuring High-Speed capable stack with a device driver
limited to Full-Speed only operation.

Signed-off-by: Tomasz Moń <tomasz.mon@nordicsemi.no>
2025-04-10 12:57:19 +02:00
Tomasz Moń
79f2615f1a drivers: udc_dwc2: Limit operating speed to stack configuration
Limit maximum operating speed in DCFG register if USB stack is
configured to support only Full-Speed.

Signed-off-by: Tomasz Moń <tomasz.mon@nordicsemi.no>
2025-04-10 12:57:19 +02:00
Tomasz Moń
b3eb6f2d11 usb: device_next: Reduce code size on Full-Speed only configuration
Allow compiler optimizations to remove High-Speed handling code. Knowing
that maximum operating speed is Full-Speed allows to reduce bulk buffers
from 512 to 64 bytes. More RAM optimizations are possible but this
commit only gets the low hanging fruits.

Signed-off-by: Tomasz Moń <tomasz.mon@nordicsemi.no>
2025-04-10 12:57:19 +02:00
Tomasz Moń
faeabc63c9 usb: device_next: Add Kconfig to set maximum speed
Two main ideas behind setting maximum speed are:
  * Allow code and RAM optimizations at compile time
  * Allow High-Speed capable drivers to limit operating speed to user
    choice.

This commit only introduces the necessary Kconfig options but does not
implement any code or RAM optimizations and does not modify any driver.

Signed-off-by: Tomasz Moń <tomasz.mon@nordicsemi.no>
2025-04-10 12:57:19 +02:00