Compare commits

..

7739 Commits

Author SHA1 Message Date
Chris Friedt
3568e1b6d5 release: Zephyr v4.3.0
Set the version to v4.3.0

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
Signed-off-by: Johan Hedberg <johan.hedberg@silabs.com>
2025-11-13 17:35:08 +02:00
Chris Friedt
ab4b3553c1 doc: release: 4.3: finalize release notes and migration guide
Remove working draft status from the 4.3.0 release notes and migration
guide.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-11-13 17:35:08 +02:00
Chris Friedt
1d1dace9a2 doc: release: Add v4.3.0 to the list of supported releases
Add v4.3.0 to the list of supported releases.

Since v4.1.0 is becoming EOL, bump TOC ranges to no longer list v4.1.0
and add (draft) v4.4.0.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-11-13 17:35:08 +02:00
Pieter De Gendt
6d37434699 LICENSES: Add note to README file
The files in the LICENSES directory are for the reuse tool, and not the
licenses of the Zephyr repository itself.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-11-13 17:34:51 +02:00
Robert Lubos
77d461c4c0 net: tcp: Reduce the log level for active close
The log level was elevated by mistake as a leftover from debugging,
should remain DBG.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-11-13 15:34:20 +02:00
Gerard Marull-Paretas
6ed584fc78 doc: extensions: domain: fix inventory on incremental builds
Generated objects.inv would not contain e.g. "zephyr:board" entry on
incremental builds, making it impossible to use Intersphinx on other
projects when rebuilding the Zephyr docset.

It can be verified by inspecting inventory like this:

```python
from sphinx.util.inventory import InventoryFile
InventoryFile.loads(open("objects.inv", "rb").read(), uri="")
inv.data.keys()
```

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2025-11-13 15:34:10 +02:00
Tomi Fontanilles
8b032af664 doc: release-notes-4.2: fix up TF-M version update entry
TF-M had already been updated to 2.2.0 by the time 4.2 was released.
(https://github.com/zephyrproject-rtos/zephyr/pull/91169)

Signed-off-by: Tomi Fontanilles <tomi.fontanilles@nordicsemi.no>
2025-11-13 13:24:01 +02:00
Johan Hedberg
f1cd32ec42 doc: migration-guide-4.3: Remove empty Architectures section
There's no content in this section, so just remove it.

Signed-off-by: Johan Hedberg <johan.hedberg@silabs.com>
2025-11-13 13:23:50 +02:00
Benjamin Cabé
2a22823fe9 doc: releases: cosmetic/typo fixes to 4.3 release notes & migration guide
Fixes a few minor typos / copy-paste errors / indentation / etc.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-11-13 13:23:50 +02:00
Fin Maaß
037af5f324 doc: release: mention default-speeds dt prop
mention default-speeds dt prop

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-11-13 13:23:50 +02:00
Fin Maaß
d13c4d258e doc: migration-guide: move ethernet
move ethernet to the right place.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-11-13 13:23:50 +02:00
Qiang Zhao
9ef73c88f6 test: ram_context_for_isr: exclude imx95 m7
i.MX95 M7 supports multi-level interrupt.
Current ram_context_for_isr test does not cover multi-level interrupt.
So exclude i.MX95 M7.

Signed-off-by: Qiang Zhao <qiang.zhao@nxp.com>
2025-11-13 12:02:36 +02:00
Daniel Leung
81f5b781aa xtensa: fix Python script formatting via ruff
Uses ruff to format the gen_* python scripts.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-11-13 12:02:08 +02:00
Daniel Leung
36f7792ea1 xtensa: fix ruff issues in Python scripts
Fix the issues found by ruff.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-11-13 12:02:08 +02:00
Badr Bacem KAABIA
0719c9eca2 crypto: mbedtls_shim: Fix concurrency and deadlock issues
- **Fix session mutex handling:** Ensure the `mtls_sessions_lock` is
    always released in `mtls_get_unused_session_index` on failure
    to prevent deadlocks.
- **Protect `in_use` flag:** Added mutex protection when setting
    `in_use = false` in free functions.
- **Cleanup on setup failure:** Added calls to `mbedtls_*_free()`
    in `mtls_session_setup()` when key initialization fails.
- **Free logic fix:** Corrected `if/else` structure in
    `mtls_session_free()` to ensure the correct context is freed.

Signed-off-by: Badr Bacem KAABIA <badrbacemkaabia@gmail.com>
2025-11-13 12:01:44 +02:00
Badr Bacem KAABIA
577f60dcd7 crypto: mbedtls_shim: Remove incorrect out_len calculation in AEAD decrypt
Remove erroneous calculation of `apkt->pkt->out_len` in
`mtls_ccm_decrypt_auth` and `mtls_gcm_decrypt_auth`.
The output length should be handled by the caller or the
AEAD decryption process itself.

Signed-off-by: Badr Bacem KAABIA <badrbacemkaabia@gmail.com>
2025-11-13 12:01:44 +02:00
Badr Bacem KAABIA
01b0280bad crypto: mbedtls_shim: Fix typos
Corrected "encrypt" log messages to "decrypt."

Signed-off-by: Badr Bacem KAABIA <badrbacemkaabia@gmail.com>
2025-11-13 12:01:44 +02:00
Ofir Shemesh
b933bf5e08 net: dhcpv4: fix incorrect RFC2131 section reference to 4.4.1
Corrected the RFC2131 section reference in DHCPv4 comments and help text.
The random delay before sending the initial DHCPDISCOVER message is
defined in Section 4.4.1 of RFC2131, not in 4.1.1 as previously stated.

Signed-off-by: Ofir Shemesh <ofirshemesh777@gmail.com>
2025-11-13 12:01:31 +02:00
Robert Lubos
9e6256e853 net: iface: Prevent iface/TCP mutexes deadlock
In rare occasions iface and TCP mutexes could cause a deadlock. As
notifying the interface readiness takes place just before the iface
mutex is released, it should be not harm to release it just before the
TCP is notified about interface going down to avoid the deadlock.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-11-12 19:00:20 -05:00
Robert Lubos
ba6387fcd6 net: tcp: Close the connection unconditionally on forced close
The current approach was buggy, for example the TCP context could be
unrefed twice in case of forced close. Or in case of a race, when the
application closed the socket first, the TCP context wouldn't be
dereferenced at all.

Calling the tcp_conn_close() unconditionally in case of forced close
solves all those issues.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-11-12 19:00:20 -05:00
Robert Lubos
7fe33a5d5a net: tcp: Fix error reporting on listening socket on iface down
A listening TCP context has no active connection therefore it has no a
second ref from the TCP stack. Thereby, when shutting down connections
when interface goes down, net_tcp_put() should not be called on a
listening socket to release the ref on the TCP stack behalf.

Instead, report the error via the registered accept_cb callback no
notify the application about the error, which should then close the
socket and release the associated TCP context.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-11-12 19:00:20 -05:00
Chris Friedt
c9eba65681 doc: kernel: timeutil: remove note about 64-bitness
Remove the note about time_t being 64-bit in Zephyr, since that is
generally not accurate and depends on the configuration of the C library.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-11-12 18:59:33 -05:00
Jukka Rissanen
25ab312dd7 doc: release-notes: Add wifi information to 4.3
Add information about native wifi stack changes in 4.3.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-11-12 18:58:51 -05:00
Marek Slowinski
9679395099 tests: drivers: memc: ram: Fix build error on hifive_unmatched
Fix 'RAM_SIZE_SRAM' undeclared error in function 'test_ram_test_ram0'.

Signed-off-by: Marek Slowinski <mslowinski@antmicro.com>
2025-11-12 17:57:48 +02:00
Yves Wang
4f2f391fc8 doc: contribute: Fixed missing code block new line
dts-linter command was not correctly rendered in doc site.

Signed-off-by: Yves Wang <zhengjia.wang@nxp.com>
2025-11-12 09:18:39 -05:00
Laurentiu Mihalcea
6a0edac6fb doc: releases: add v4.3 release notes for firmware subsystem
Add v4.3 release notes for the firmware subsystem.

Signed-off-by: Laurentiu Mihalcea <laurentiu.mihalcea@nxp.com>
2025-11-12 09:09:29 -05:00
Flavio Ceolin
8757978f68 doc: release/4.3: CVE-2025-9408 left embargo
Disclose information about CVE that left embargo.

Signed-off-by: Flavio Ceolin <flavio@hubblenetwork.com>
2025-11-12 09:09:11 -05:00
Flavio Ceolin
b886f82cad doc: security: Disclose CVE-2025-9408
Disclose information about published CVE.

Signed-off-by: Flavio Ceolin <flavio@hubblenetwork.com>
2025-11-12 09:09:11 -05:00
Benjamin Cabé
b8bbd5047d MAINTAINERS: add instrumentation documentation path
Add path to Instrumentation documentation to the corresponding area.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-11-12 09:08:45 -05:00
Benjamin Cabé
5d5a907648 doc: releases: update link to instrumentation subsystem documentation
Documentation has been added for the instrumentation subsystem, link to
it in the Zephyr 4.3 release highlights instead of code sample.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-11-12 09:08:45 -05:00
Benjamin Cabé
dba7304c98 doc: instrumentation: add documentation for the instrumentation subsystem
Add documentation for the instrumentation subsystem as this was missing
from the initial contribution.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-11-12 09:08:45 -05:00
Robert Lubos
efef1f54dc doc: release-notes-4.3: Update release notes for networking
Update release notes for 4.3.0 release with networking subsystem
changes.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-11-12 09:06:18 -05:00
Emil Dahl Juhl
598d03c404 dts: arm: st: n6: fixup adc2 missing properties
The added stm32-adc properties in c21cdd8569 ("dts: bindings: adc:
stm32: add new properties to simplify the driver") were missing from adc2
within the stm32n6.dtsi.

Since adc1 and adc2 are almost identical, just copy the missing properties
from adc1 which was fixed up as part of 5f0c63ea35 ("dts: arm: st: fill
out adc nodes with the new properties").

This fixes compilation when using adc2:

```
devicetree error: 'st,adc-internal-regulator' is marked as required in
'properties:' in [...]/zephyr/dts/bindings/adc/st,stm32n6-adc.yaml, but
does not appear in <Node /soc/adc@50022100 in
[...]/zephyr/dts/arm/st/n6/stm32n6.dtsi:456>
```

Signed-off-by: Emil Dahl Juhl <emil@s16s.ai>
2025-11-12 09:01:53 -05:00
Valerio Setti
e0fdb87929 manifest: tf-m: align Mbed TLS header files to v3.6.5
Update manifest to align the copy of Mbed TLS header files which lives
in the TF-M repository to what's in Mbed TLS release v3.6.5.

Signed-off-by: Valerio Setti <vsetti@baylibre.com>
2025-11-12 09:01:43 -05:00
Anas Nashif
e455e6a39b modbus: fix spdx license identifier
Fix APACHE-2.0 -> Apache 2.0

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-11-12 14:38:32 +02:00
Emil Gydesen
29f097b2c5 tests: Bluetooth: tester: Add info on running with native_sim
Add a few useful commands and information when running the
BT Tester with native_sim, either with or without the
Zephyr controller.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-11-12 14:38:23 +02:00
Robert Lubos
3e537db71e net: lwm2m: Fix SenML CBOR resource instance encoding
Consecutive resource instance name should be encoded regardless of
whether timestamp is present or not.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-11-12 12:57:30 +02:00
Stoyan Bogdanov
2a9f21482b tests: sensor: Fix fdc2x1x in build_all test suite
Add missing new line before channel entry for fdc2x1x
which was causing CI fail

Signed-off-by: Stoyan Bogdanov <sbogdanov@baylibre.com>
2025-11-12 11:16:59 +02:00
Flavio Ceolin
240960ebdd doc: release/4.3: Add CVE under embargo
Add information about CVE-2025-12899 under embargo.

Signed-off-by: Flavio Ceolin <flavio@hubblenetwork.com>
2025-11-12 11:14:23 +02:00
Flavio Ceolin
80f4d8427c doc: vuln: Add CVE under embargo
Add an entry to CVE-2025-12899.

Signed-off-by: Flavio Ceolin <flavio@hubblenetwork.com>
2025-11-12 11:14:23 +02:00
Flavio Ceolin
3cfa7c22f2 doc: security: Disclose CVE-2025-12890
Disclose information about published CVE.

Signed-off-by: Flavio Ceolin <flavio@hubblenetwork.com>
2025-11-12 11:14:23 +02:00
Chris Friedt
13daf245a8 tests: drivers: build_all: smbus: add build-all suite for smbus drivers
To ensure that code compiles error (and warning) free, add a build-all
testsuite for smbus drivers.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-11-11 19:48:27 +02:00
Chris Friedt
e6fcd9e09a drivers: smbus: stm32: add cast to avoid warning
Previously, the function `smbus_stm32_pcall()` implicitly cast
`uint16_t *` to `uint8_t *`. Add an explicit cast to avoid warning.

```shell
..drivers/smbus/smbus_stm32.c:358:32: error: initialization of \
  'uint8_t *' {aka 'unsigned char *'} from incompatible pointer type \
  'uint16_t *' {aka 'short unsigned int *'} \
  [-Werror=incompatible-pointer-types]
  358 |                         .buf = &send_word,
      |                                ^
..drivers/smbus/smbus_stm32.c:358:32: note: (near initialization \
  for 'messages[1].buf')
..drivers/smbus/smbus_stm32.c:363:32: error: initialization of \
  'uint8_t *' {aka 'unsigned char *'} from incompatible pointer type \
  'uint16_t *' {aka 'short unsigned int *'} \
  [-Werror=incompatible-pointer-types]
  363 |                         .buf = recv_word,
      |                                ^~~~~~~~~
```

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-11-11 19:48:27 +02:00
Chris Friedt
07d29ec96d drivers: smbus: use correct device initialization priority
The smbus driver initialization priority was previously set to
`KERNEL_INIT_PRIORITY_DEFAULT` (which is 40). However, the default init
priority of devices is typically `KERNEL_INIT_PRIORITY_DEVICE` (which is
50).

Since the stm32 smbus driver uses a reference to the underlying i2c
device, and since this driver was not being built in CI, this led to the
discovery that the smbus driver was initialized too early.

```shell
ERROR: Device initialization priority validation failed, the sequence of \
initialization calls does not match the devicetree dependencies.
ERROR: /smbus1 <smbus_stm32_init> is initialized before its dependency \
/soc/i2c@40005400 <i2c_stm32_init> (POST_KERNEL+1 < POST_KERNEL+4)
```

By setting the initialization priority to `KERNEL_INIT_PRIORITY_DEVICE`,
both smbus1 and i2c1 have their priorities evaluated in the same group,
and it becomes possible to determine relative priorities via phandle
dependency.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-11-11 19:48:27 +02:00
Sudan Landge
deb8437d48 tests: fix: skip stack unwind on unsupported platforms
Add ARCH_HAS_STACKWALK as a dependency to the stack unwind test to avoid
running it on 64bit Cortex-R platforms, which do not implement the
arch_stack_walk() api.

Signed-off-by: Sudan Landge <sudan.landge@arm.com>
2025-11-11 19:47:47 +02:00
Yves Wang
c46454781a ci: compliance: update dts-linter to 0.3.6
Update dts-linter to 0.3.6 and dts-lsp to 0.6.7

Signed-off-by: Yves Wang <zhengjia.wang@nxp.com>
2025-11-11 19:47:38 +02:00
Yves Wang
14bba90725 ci: compliance: call dts linter safely under windows
subprocess run without shell requires npx shim under windows.

Signed-off-by: Yves Wang <zhengjia.wang@nxp.com>
2025-11-11 19:47:38 +02:00
Yasushi SHOJI
6d6508ae12 scripts: kconfig: gnuconfig: Ignore loc
The commit 125d0daaa1 added 'loc' to the sym.ranges tuples and fixed
kconfiglib.py but guiconfig.py is left untouched. This make menuconfig to
die with:

  Exception in Tkinter callback
  Traceback (most recent call last):
    File "/usr/lib/python3.13/tkinter/__init__.py", line 2077, in __call__
      return self.func(*args)
             ~~~~~~~~~^^^^^^^
    File ".../scripts/kconfig/guiconfig.py", line 917, in _tree_double_click
      return _tree_enter(event)
    File ".../scripts/kconfig/guiconfig.py", line 942, in _tree_enter
      _change_node(node, tree.winfo_toplevel())
      ~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    File ".../scripts/kconfig/guiconfig.py", line 1125, in _change_node
      s = _set_val_dialog(node, parent)
    File ".../scripts/kconfig/guiconfig.py", line 1219, in _set_val_dialog
      range_info = _range_info(sym)
    File ".../scripts/kconfig/guiconfig.py", line 1339, in _range_info
      for low, high, cond in sym.ranges:
          ^^^^^^^^^^^^^^^
  ValueError: too many values to unpack (expected 3)

This commit ignores the last element in the tuples.

Signed-off-by: Yasushi SHOJI <yashi@spacecubics.com>
2025-11-11 12:46:17 -05:00
Yasushi SHOJI
090d294ae0 scripts: kconfig: menuconfig: Ignore loc
The commit 125d0daaa1 added 'loc' to the sym.ranges tuples and fixed
kconfiglib.py but menuconfig.py is left untouched. This make menuconfig to
die with:

  Traceback (most recent call last):
    File ".../scripts/kconfig/menuconfig.py", line 3284, in <module>
      _main()
      ~~~~~^^
    File ".../scripts/kconfig/menuconfig.py", line 663, in _main
      menuconfig(standard_kconfig(__doc__))
      ~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^
    File ".../scripts/kconfig/menuconfig.py", line 732, in menuconfig
      print(curses.wrapper(_menuconfig))
            ~~~~~~~~~~~~~~^^^^^^^^^^^^^
    File "/usr/lib/python3.13/curses/__init__.py", line 94, in wrapper
      return func(stdscr, *args, **kwds)
    File ".../scripts/kconfig/menuconfig.py", line 872, in _menuconfig
      _change_node(sel_node)
      ~~~~~~~~~~~~^^^^^^^^^^
    File ".../scripts/kconfig/menuconfig.py", line 1586, in _change_node
      s, _range_info(sc))
         ~~~~~~~~~~~^^^^
    File ".../scripts/kconfig/menuconfig.py", line 3119, in _range_info
      for low, high, cond in sym.ranges:
          ^^^^^^^^^^^^^^^
  ValueError: too many values to unpack (expected 3)

This commit ignores the last element in the tuples.

Signed-off-by: Yasushi SHOJI <yashi@spacecubics.com>
2025-11-11 12:46:17 -05:00
Benjamin Cabé
8fa6a3a214 include: drivers: rtc: add missing doxygen docs
document all the RTC Alarm Time Mask macros

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-11-11 16:26:53 +02:00
Josuah Demangeon
f955d541a4 MAINTAINERS: USB: add @josuah as collaborator
Add a 3rd reviewer to USB area.

Signed-off-by: Josuah Demangeon <me@josuah.net>
2025-11-11 14:13:30 +02:00
Geoffroy Jabouley
16840cc6bd MAINTAINERS: update hal_tdk maintainers
Add rbuisson-invn and gjabouley-invn as maintainers for hal_tdk.

Signed-off-by: Geoffroy Jabouley <geoffroy.jabouley@tdk.com>
2025-11-11 14:13:21 +02:00
Erwan Gouriou
df8b43d330 boards: st: stm32h7s78_dk: Document use of ext_flash_app variant
As stated, document use of ext_flash_app variant (build, flash and debug).

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2025-11-10 09:58:28 -05:00
Erwan Gouriou
da571acff4 boards: st: stm32h573i_dk: Document use of ext_flash_app variant
As stated, document use of ext_flash_app variant (build, flash and debug).

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2025-11-10 09:58:28 -05:00
Arnaud Pouliquen
1db02b373f MAINTAINERS: Add open-amp and libmetal maintainers
- Add Iulia Prodan as she is already a maintainer of the OpenAMP module.
- Add myself as I am maintainer of the openAMP project.

Signed-off-by: Arnaud Pouliquen <arnaud.pouliquen@foss.st.com>
2025-11-10 09:57:55 -05:00
Johan Hedberg
91b1b84eee release: Zephyr 4.3.0-rc3
Update the version to 4.3.0-rc3.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
Signed-off-by: Johan Hedberg <johan.hedberg@silabs.com>
2025-11-08 16:41:32 +02:00
Anas Nashif
a1b406d844 drivers: promote APIs to unstable status
Many APIs are stuck at experimental status although they already fullfil
the requirements to be considered unstable, i.e. they have multiple
implementations and have been in the tree for more than 2 releases.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-11-08 08:29:14 -05:00
Badr Bacem KAABIA
8c8d1b5166 Bluetooth: hci_nxp: Improve MAC address uniqueness using CRC-32 hash
The previous method of deriving the local MAC address from the MCU's
Unique ID (UID) by slicing the last 3 bytes had two issues:

1.  **Low Entropy:** Risk of address collision because only a small
    portion of the UID was used, and this portion may not vary much.
2.  **Offset Error:** An incorrect offset calculation could copy
    non-intended bytes.

This commit resolves both issues by replacing the slice operation
with a **CRC-32 hash** over the **entire 16-byte UID**.

The lower 3 bytes (24 bits) of the resulting CRC-32 are used as the
local part of the MAC address, maximizing randomization and ensuring
a high probability of uniqueness across all devices.

Signed-off-by: Badr Bacem KAABIA <badrbacemkaabia@gmail.com>
2025-11-08 08:28:43 -05:00
Derek Snell
50e29d0e5a shields: nxp: lcd_par_s035: fix gt911 touch initialization
Defers init of GT911 touch, MIPI DBI, and display device drivers.
lcd_par_s035_init() in shield.c now initializes these to control the
GT911 INT_GPIO state during the Reset sequence.

Signed-off-by: Derek Snell <derek.snell@nxp.com>
2025-11-08 08:01:03 -05:00
Jerzy Kasenberg
de8cdf0b9e manifest: Update hal_renesas revision for smartbond
hal/renesas was updated with fix for the case when
watchdog was unnecessary disabled after deep sleep.

Signed-off-by: Jerzy Kasenberg <jerzy.kasenberg.xr@bp.renesas.com>
2025-11-08 07:55:09 -05:00
BUDKE Gerson Fernando
c66f08818c tests: lib: json: fix test expectation
Update the test_json_decoding test to expect correct unescaped values
based on descriptor type semantics:

- JSON_TOK_STRING: Stores pointer to original JSON string, preserving
  escape sequences as they appear in the source. Used when the original
  escaped format needs to be maintained.

- JSON_TOK_STRING_BUF: Copies and unescapes the string into a fixed-size
  buffer, converting JSON escape sequences (\n, \t, \", etc.) to their
  actual character equivalents. Used when the processed, unescaped string
  is needed.

The test was incorrectly expecting the nested_string_buf field (which
uses JSON_TOK_STRING_BUF) to contain the escaped form "esc: \\t". With
the proper unescaping implementation, this field should contain the
unescaped version "esc: \t" (with actual tab character).

This aligns with the documented behavior where JSON_TOK_STRING_BUF
performs unescaping during the copy operation, while JSON_TOK_STRING
simply references the original escaped string.

Signed-off-by: BUDKE Gerson Fernando <gerson.budke@leica-geosystems.com>
2025-11-08 10:22:50 +02:00
BUDKE Gerson Fernando
66d13d7028 tests: lib: json: add escape handling tests
Add extensive test coverage for JSON escape sequence handling to
ensure robustness and prevent regression in string encoding/decoding
operations.

The new test suite includes:

1. **Escape Sequence Stability**: Tests multiple encode/decode cycles
   to prevent backslash duplication bugs where sequences like \n, \t
   could be duplicated with each cycle.

2. **Individual Escape Sequences**: Comprehensive testing of each JSON
   escape type:
   - \n (newline), \t (tab), \r (carriage return), \f (form feed)
   - \b (backspace), \\ (backslash), \" (quote), \/ (slash)

3. **Quote Handling**: Special focus on quote escaping/unescaping to
   ensure proper JSON syntax and data integrity.

4. **Mixed Escape Sequences**: Complex scenarios with multiple
   different escape sequences in single strings to test edge cases.

5. **Multiple Cycle Stability**: Repeated encode/decode operations to
   simulate real-world usage patterns and detect gradual corruption.

6. **Backslash Duplication Detection**: Specific tests targeting the
   common bug where backslashes accumulate during multiple processing
   cycles.

7. **Round-trip Validation**: Complete encode → decode → encode cycles
   to verify data preservation.

8. **Edge Cases**: Testing boundary conditions like strings containing
   only quotes or complex escape combinations.

These tests use a new `escape_test_data` structure with both string
value and string buffer fields to verify proper handling of both
JSON_TOK_STRING and JSON_TOK_STRING_BUF descriptor types.

The test suite ensures that:
- Escape sequences are properly encoded in JSON output
- Escape sequences are correctly unescaped during parsing
- No data corruption occurs during multiple processing cycles
- Both string pointer and string buffer fields behave correctly
- Complex escape scenarios are handled robustly

Signed-off-by: BUDKE Gerson Fernando <gerson.budke@leica-geosystems.com>
2025-11-08 10:22:50 +02:00
BUDKE Gerson Fernando
0ddb8e40f2 lib: json: Fix escape sequence unescaping during decoding
Fix the JSON library to properly unescape sequences during decoding.
Previously, escape sequences like \n, \t, \" etc were validated but
not converted back to their actual character representations during
decoding, causing backslash duplication with each encode/decode cycle.

This fix modifies decode_string_buf() to properly handle escape
sequence unescaping and ensures strings maintain their original
content across multiple encode/decode cycles.

Signed-off-by: BUDKE Gerson Fernando <gerson.budke@leica-geosystems.com>
2025-11-08 10:22:50 +02:00
Wojciech Jablonski
70961e26be drivers: mm: Fix vm region range check
Checking virtual range is incorrect because size + 1 addresses are
considered: size + starting address (that is also part of an
allocation). Hence the last address of the range is impossible to map

Signed-off-by: Wojciech Jablonski <wojciech.jablonski@intel.com>
2025-11-08 10:22:09 +02:00
Troels Nilsson
22fe7680f8 Bluetooth: Controller: Various fixes for CIS termination handling
Handling of CIS termination had several issues, most notably:

- it depended on allocating a termination node from the general rx
  node pool, causing asserts if the pool was exhausted
- CIS established events was not always generated when required,
  potentially causing CIS Centrals to get stuck without being able
  to create any new CISes
- Cancelling a CIS Create procedure only worked correctly if the
  CIS Create was currently active and happened to belong to the
  same CIS
- CIG state handling often (always?) assumed a CIG with only one CIS

ll_conn_iso_stream now has a dedicated termination node, same as
ll_conn and ll_sync_iso_set

LLCP statemachine for Cis Create procedure has been reworked to ensure
a notification node for CIS Established is available as early as possible.
In addition, it should now always be sent when needed

Introduced ull_central_iso_all_cises_terminated() to check if all CISes
in a CIG has been terminated (or not created yet) - which is now
used for updating the CIG state

ull_cp_cc_cancel() now takes the CIS to cancel as an argument so
it doesn't end up canceling an entirely different CIS Create procedure;
In addition it now works for queued procedures as well

Flushing a (central) CIS Create procedure in LLCP will now properly
generate a CIS Established event (with an error)

Signed-off-by: Troels Nilsson <trnn@demant.com>
2025-11-08 10:22:00 +02:00
Zhaoxiang Jin
6a0ddc3ca1 west: update hal_nxp to fix I2S run issue on MCXN947
Rollback SAI driver to fix I2S issues on MCXN947 in Zephyr.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-11-08 10:21:48 +02:00
Jan Behrens
1ec2eae70e boards: st: OpenOCD Fix for WB55 Based Boards
Fixes the openocd configuration for nucleo_wb55rg, stm32wb55mm_dk
and stm32wb55mmg.

Signed-off-by: Jan Behrens <jan.behrens@navimatix.de>
2025-11-08 10:21:38 +02:00
Declan Snyder
92fe40405e soc: nxp: rt118x: Move container header in tree
Instead of gluing to the one in the HAL which is not very flexible to
configure, define the container header in the zephyr SOC code. This
fixes the bug of CONFIG_NXP_FLEXSPI_ROM_RAMLOADER not working.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-11-08 10:21:28 +02:00
Pieter De Gendt
96d0957378 tests: nvmem: Test _OR for missing cells
Add a test case where missing cells result in empty structs.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-11-08 10:21:19 +02:00
Pieter De Gendt
71a5f1d08e include: zephyr: nvmem: Fix _OR macros
Checking if a node has nvmem-cells is not sufficient, we need to check if
the idx or name exists.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-11-08 10:21:19 +02:00
Charles Dias
feae71600e boards: shields: st_lcd_dsi_mb1835: set LTDC pixel-format
Set zephyr_lcd_controller pixel-format to PANEL_PIXEL_FORMAT_ARGB_8888
to match the driver configuration.

Signed-off-by: Charles Dias <charlesdias.cd@outlook.com>
2025-11-07 21:23:07 -05:00
Charles Dias
097f009348 samples: input: draw_touch_events: avoid avoid OOB writes
When CROSS_DIM doesn’t evenly divide the panel WIDTH/HEIGHT, the last
tile on the right/bottom edge can extend past the display bounds.

Fix by clipping the edge tiles.

Signed-off-by: Charles Dias <charlesdias.cd@outlook.com>
2025-11-07 21:23:07 -05:00
Pete Johanson
112871afa4 tests/kernel/context: Properly idle on MAX32 family
Make sure MAX32_ON_ENTER_CPU_IDLE_HOOK is disabled for the context test, so
the CPU will actually idle with WFI and not return before the timer
expires for test_cpu_idle test.

Signed-off-by: Pete Johanson <pete.johanson@analog.com>
2025-11-07 16:12:48 -05:00
Eric Ocasio
0d6e4040f5 pmci: mctp: Fix MCTP USB packet buffer deallocation pointer issue
Explicitly set rx_pkt pointer to NULL after free'ing it.

Fixes zephyrproject-rtos/zephyr#98688

Signed-off-by: Eric Ocasio <eric.ocasio@nxp.com>
2025-11-07 21:25:29 +02:00
Ruibin Chang
3bdf10308b soc/ite/it8xxx2: make ARCH_IRQ_VECTOR_TABLE_ALIGN constant
The IQR vector table changed size since a825e01 and it is
causing issues with downstream applications, for example,
data stored in bin specific field is shifted by
the ARCH_IRQ_VECTOR_TABLE_ALIGN, so I make
ARCH_IRQ_VECTOR_TABLE_ALIGN constant.

Signed-off-by: Ruibin Chang <Ruibin.Chang@ite.com.tw>
2025-11-07 21:25:18 +02:00
Lucien Zhao
9da1b3cba1 boards: nxp: frdm_mcxe31b: add zephyr,shell-uart node
Add missing zephyr,shell-uart device tree node to enable
shell functionality.

Signed-off-by: Lucien Zhao <lucien.zhao@nxp.com>
2025-11-07 19:25:29 +02:00
Szymon Janc
d660d38fca Bluetooth: MPL: Fix NULL pointer dereference in on_obj_selected
Track may not have next track and thus this must be checked before
trying to match ID.

This was affecting following qualification test cases:
GMCS/SR/MCP/BV-38-C
GMCS/SR/MCP/BV-39-C
GMCS/SR/MCP/BV-40-C

Signed-off-by: Szymon Janc <szymon.janc@codecoup.pl>
2025-11-07 19:24:42 +02:00
Ali Hozhabri
85830bf48d boards: 96boards: carbon: Increase main stack size when using Bluetooth
Increase main stack size when MBEDTLS_INIT is enabled to avoid stack
overflow as it consumes 1536 bytes.

Signed-off-by: Ali Hozhabri <ali.hozhabri@st.com>
2025-11-07 19:23:36 +02:00
Jordan Yates
3ad0946ce7 doc: tfm: document output files
Document the useful output files that exist, which files they are
constructed from, and what they can be used for.

Update other sections that are no longer correct with changes.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-11-07 19:23:26 +02:00
Jordan Yates
74a23eacd5 modules: tf-m: generate tfm_merged.bin from tfm_merged.hex
Since `tfm_merged.bin` now contains BL2, it can only be used for the
same purposes as `tfm_merged.hex` (intial firmware loading). Therefore
it should be using the confirmed images that `tfm_merged.hex` does.

Since the only difference between the two files with that change is now
the output format, we can directly generate `tfm_merged.bin` from
`tfm_merged.hex` with `objcopy` instead of going through `mergehex.py`.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-11-07 19:23:26 +02:00
Jordan Yates
db339e46b5 modules: tf-m: generate tfm_s_zephyr_ns_signed.bin
Generate a binary version of `tfm_s_zephyr_ns_signed.hex` with objcopy.
This file is valid for performing OTA upgrades, unlike `tfm_merged.bin`,
which contains BL2.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-11-07 19:23:26 +02:00
Jordan Yates
15e8305ce9 modules: tf-m: remove S_NS_CONFIRMED_HEX_FILE
`S_NS_CONFIRMED_HEX_FILE` was never generating a confirmed file, just
the same file contents as `S_NS_HEX_FILE`. Since no logic needs a
confirmed merge of `tfm_s.hex` and `zephyr.hex`, just remove the logic
instead of fixing it.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-11-07 19:23:26 +02:00
Jordan Yates
2219a875b2 modules: tf-m: fix CMake formatting
Fix formatting errors that cause CI to complain.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-11-07 19:23:26 +02:00
Jordan Yates
c127388eaf scripts: build: mergehex: fix --output-bin
Stop `--output-bin` from consuming the first trailing argument that
should have been in `input_files`.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-11-07 19:23:26 +02:00
Łukasz Stępnicki
3f90574ad3 soc: nordic: vpr: align ESF_SW_IRQ_SIZEOF when new exception debug is used
There is new exception debugging mechanism for RISC-V which needs
additional member in arch_esf structure. VPRs handle stacking
partially in hw so exact position of some stack members needs
to be at the end of arch_esf, so explicit padding is needed.
Aligned also ESF_SW_IRQ_SIZEOF when exception debug is used.

Signed-off-by: Łukasz Stępnicki <lukasz.stepnicki@nordicsemi.no>
2025-11-07 19:22:58 +02:00
Benjamin Cabé
1078e59a13 boards: stm32n6570_dk: Remove invert-y property from LVGL pointer input
Removed the invert-y property from the LVGL pointer input configuration
as it's causing the touch events to be "flipped" vertically.

Confirmed that this gets samples/subsys/display/lvgl back to correctly
detecting touch events, and for good measure tested
samples/subsys/input/draw_touch_events which keeps working as expected
(like it should since it's not using the LVGL pointer input ;-))

Fixes zephyrproject-rtos/zephyr#98933

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-11-07 19:22:49 +02:00
Pieter De Gendt
be0f5b0dc7 drivers: syscon: Cleanup some doxygen return commands
Documenting return values with doxygen should use the retval tags.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-11-07 19:22:40 +02:00
Tomasz Chyrowicz
6a4af2486d mcumgr: img_mgmt: Fix minor issues
Fix a few typos inside img_mgmt.c file.

Signed-off-by: Tomasz Chyrowicz <tomasz.chyrowicz@nordicsemi.no>
2025-11-07 19:22:29 +02:00
Julien Racki
dbcfb77ce3 boards: stm32: stm32n6570_dk: Reduce the Tx clock signal skew
Reduce the Tx clock signal skew to 1ns
as it caused around 30% packet loss during ping
on some boards.

Signed-off-by: Julien Racki <julien.racki-ext@st.com>
2025-11-07 08:25:29 -05:00
Pavel Vasilyev
bb006dc971 bluetooth: mesh: Increase BT RX Stack Size for PB-GATT
Increase BT RX Thread Stack Size which is needed for successfull
provisioning over PB-GATT.

Output from `kernel thread stacks` shell command:
```
BT RX WQ (real size 4096): unused 1408 usage 2688 / 4096 (65 %)
```

Fixes #98521

Signed-off-by: Pavel Vasilyev <pavel.vasilyev@nordicsemi.no>
2025-11-07 08:25:22 -05:00
Etienne Carriere
bd943a0ffa checkpatch: ignore COMPARISON_TO_NULL
Ignore COMPARISON_TO_NULL since it conflicts with Zephyr coding
guidelines main rule 85:
  The controlling expression of an if statement and the
  controlling expression of an iteration-statement shall have
  essentially Boolean type

Link: https://docs.zephyrproject.org/latest/contribute/coding_guidelines
Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-11-07 08:24:21 -05:00
Charles Hardin
5c7ce0950e drivers: ethernet: lan9250: check for errors during the init calls
During board bringup the spi interface was not working as expected
and the lna9250 driver should have errored early when the chip was
not detected and reset but ended up busy waiting on setup. So, this
will error out on the init path when the chip can not be reset at
the driver instance.

Signed-off-by: Charles Hardin <ckhardin@gmail.com>
2025-11-07 08:22:06 -05:00
Vinayak Kariappa Chettimada
c102a8e30e Bluetooth: Controller: Add BT_HCI_VS_FATAL_ERROR_SUPPORT
Add BT_HCI_VS_FATAL_ERROR_SUPPORT Kconfig to allow
out-of-tree Controllers to control Zephyr HCI Vendor-
Specific Fatal Error event support.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2025-11-07 06:58:27 -05:00
farsin NASAR V A
36465ec3c4 tests: drivers: uart: Added uart test files
Added sam_e54 overlay file for uart_errors test project
Added sam_e54 platform allow in testcase.yaml

Signed-off-by: farsin NASAR V A <farsin.nasarva@microchip.com>
2025-11-07 06:57:39 -05:00
Szymon Janc
184f053bca tests: Bluetooth: Tester: Fix NULL pointer dereference
PA sync can be terminated before BIG sync is stopped. This results
in ps_sync being NULL and thus crash in stop callback. Simply store
address needed by BTP events and don't rely on pa_sync.

Signed-off-by: Szymon Janc <szymon.janc@codecoup.pl>
2025-11-07 06:52:03 -05:00
Aksel Skauge Mellbye
28edc26cc0 modules: hal_silabs: Simplify HFRCO frequency selection
Recent versions of the HAL rely on interpreting the HFRCO frequency
selection as a plain integer in preprocessor comparisons. The
adaptation layer in Zephyr created a C expression that was not
possible to evaluate by the preprocessor. Simplify the logic to
directly passing the devicetree value to the driver.

This slightly changes the behavior of the code by no longer accepting
arbitrary frequencies and mapping them to the closest HFRCO band.
However, the binding documentation already states that the frequency
should match the band.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-11-07 06:51:31 -05:00
Aksel Skauge Mellbye
e6cb52e8a5 dts: arm: silabs: Remove CMU clock controller node for HFRCO
The CMU clock controller node for HFRCO was wrongly interpreted
as a PLL reference clock. This prevented configuring the HFRCO
in open-loop mode. Since the node isn't used for anything,
remove it as a minimal stopgap solution.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-11-07 06:51:31 -05:00
Lyle Zhu
27c245a44d Bluetooth: Classic: RFCOMM: Fix NULL pointer access issue
When received the DLC disconnect request, after prime the DLC
disconnect response, the DLC will be cleared and the `dlc->session`
is cleared. If the no DLC is linked in current session, the idle
timer of the session will be scheduled.

In current implementation, the `dlc->session` is used to get the
session pointer, but it is invalid in this time. And the unexpected
fault occurs.

Fix the issue by getting the session pointer from parameter of the
function `rfcomm_handle_disc()` instead of `dlc->session`.

Fix issue #99035.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-11-07 06:50:42 -05:00
Martin Hoff
b38054bbae devicetree: fix DT_SPI_DEV_HAS_CS_GPIOS macro
This fix ensures that the implementation matches the documented
behavior, where the macro return 1 when the cs-gpios property has
an entry matching the reg address of the child device.

This restores the behavior of the devicetree init API prior to
<a60f93d742a48660882af5785fb4352f414ecd11>, which accidentally
introduced this issue by relying on the `DT_SPI_DEV_HAS_CS_GPIOS`
macro, which has deviated from its documented behavior ever since
it was originally introduced 6 years ago.

Signed-off-by: Martin Hoff <martin.hoff@silabs.com>
Co-authored-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-11-07 10:27:58 +02:00
Anas Nashif
4e9a4e385a cpu_load: rename conflicting API
We have two places defining cpu_load_get() and trying to the same thing,
one is a core kernel feature supported on all architecture, the other is
part of debug, requires tracing and supported only on a subset of
architectures. Both deliver different results and accuracy.

While we figure our how to merge those into one API and with the
advanatges of both, rename the API so there is no confusion about what
is being used.

Fixes #97845

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-11-07 10:27:50 +02:00
Ulrich KAMDEM
f2428c68ff boards: st: nucleo_u385rg_q: change arduino_spi to spi1
According to user manual(UM3062, table 16), arduino_spi is connected
to spi1 instead of spi3.

Enable spi1 node and affect the SPI_NSS pin with I/O function
to do the chip select.

Remove i2c3 to avoid conflict with PA7 pin.

Move the status property of dac1 node to maintain consistency
in the ordering of node properties.

NB: The SPI_NSS pin is not listed as an alternate function
for SPI1 in the user manual (UM3062, Table 17).

Signed-off-by: Ulrich KAMDEM <kamdemulricharmel@gmail.com>
2025-11-06 16:36:12 -05:00
Ulrich KAMDEM
49c15bc8d8 tests: drivers: nucleo_u385rg_q: update i2c tests drivers
Enable and add pinctrl for the I2C3 node, and disable the SPI1 node
since it is enabled by default on this board (via the Arduino connector),
which causes a conflict with the I2C3 pinctrl configuration.

Signed-off-by: Ulrich KAMDEM <kamdemulricharmel@gmail.com>
2025-11-06 16:36:12 -05:00
William Tambe
926efb8fc1 xtensa: fix error: use of undeclared identifier 'intenable2'
This is likely a miss from:
df40dff6fb arch: xtensa: clean up interrupt handling

Signed-off-by: William Tambe <williamt@cadence.com>
2025-11-06 16:30:43 -05:00
Seppo Takalo
74bea00174 modem: cmux: Don't set flow-control too easily
Only track the available buffer space, if
CONFIG_MODEM_CMUX_MSC_FC_THRESHOLD is configured.
When less than required amount fit into the ringbuffer,
indicate the RX buffer is full.

Otherwise, only mark RX buffer full when incoming data is being
dropped.

When RX buffer is detected to be full, send Modem Status Command
with flow-controll bit set.

Flow control is released once the incoming buffer has at least
MODEM_CMUX_MTU bytes free again.

Fixes #98644

Signed-off-by: Seppo Takalo <seppo.takalo@nordicsemi.no>
2025-11-06 16:30:13 -05:00
Daniel DeGrasse
5575d3b238 drivers: flash: flash_mspi_nor: indicate support for flash page layout
Flash MSPI NOR driver already has support for flash page layout, but did
not select the Kconfig symbol indicating so. Add the selection so
drivers can use the page layout api.

Signed-off-by: Daniel DeGrasse <ddegrasse@tenstorrent.com>
2025-11-06 16:28:58 -05:00
Abderrahmane JARMOUNI
12f5e5bd0e doc: develop: twister: fix titles underline inconsistency
Fix underline inconsistency of titles of level 4 by replacing + with -.

Signed-off-by: Abderrahmane JARMOUNI <git@jarmouni.me>
2025-11-06 16:25:44 -05:00
Loic Domaigne
6750f4a5d6 doc: services: logging: add limitation when using logging thread name
Add a note about a limitation when using deferred logging + thread name
together with dynamically allocated struct k_thread. This limitation has
been raised in issue #95077.

Signed-off-by: Loic Domaigne <tech@domaigne.com>
2025-11-06 14:02:51 -05:00
Loic Domaigne
1b0950035e drivers: crypto: crypto_ataes132a fix missing count check
Coverity reported an untrusted loop bound caused by a missing check on
the count value in ataes132a_send_command() for the response received
from the device.  As per datasheet section 6.1, count should be at least
3 bytes (1 byte for count, and 2 bytes for the 16 bits CRC).

While I'm expecting this condition to be very rare, it doesn't hurt to
implement a proper checking and report an error if count<3.

Coverity CID: 434625

Signed-off-by: Loic Domaigne <tech@domaigne.com>
2025-11-06 14:02:39 -05:00
Pavel Vasilyev
cce11a5e2b tests: bsim: bluetooth: mesh: Fix brg duplicate filtering test
Add delay to avoid missed packet by tester.

This fixes brg_subnet_duplicate_filtering test.

Signed-off-by: Pavel Vasilyev <pavel.vasilyev@nordicsemi.no>
2025-11-06 14:01:29 -05:00
Pavel Vasilyev
1ab799f872 tests: bsim: bluetooth: mesh: Fix pb_cancel test
Enable retransmissions of Generic Provisioning PDUs. This should fix
pb_cancel test where provisionee fails to receive Link Open PDU due to
parallel PB-GATT advertisement, but since Link Open PDU is not
retransmitted, test fails.

Signed-off-by: Pavel Vasilyev <pavel.vasilyev@nordicsemi.no>
2025-11-06 14:01:29 -05:00
Valerio Setti
f60f04d7dc doc: release-notes: notify about Mbed TLS version upgrade
Add a note about Mbed TLS version upgrade from 3.6.4 to 3.6.5.
Update also the CVE list accordingly.

Signed-off-by: Valerio Setti <vsetti@baylibre.com>
2025-11-06 14:01:29 -05:00
Valerio Setti
f6d24f7aa4 manifest: mbedtls: bump to 3.6.5
Update Mbed TLS revision from 3.6.4 to 3.6.5.

Signed-off-by: Valerio Setti <vsetti@baylibre.com>
2025-11-06 14:01:29 -05:00
Henrik Brix Andersen
bfbb9714ae samples: drivers: adc: sequence: use fully qualified board names
Use fully qualified boards names for boards with more than one SoC.

Signed-off-by: Henrik Brix Andersen <hebad@vestas.com>
2025-11-06 13:57:22 -05:00
Fabrice DJIATSA
6dab9df6e2 samples: drivers: adc: adc_sequence: remove stm32f3 from allow list
The stm32f3_disco board requires an external AD4114 sensor for the
ADC test to pass. Since this sensor is not available by default in
CI environments, the test fails.
Removing stm32f3 from the allow list prevents false negatives during
automated testing.

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2025-11-06 13:54:32 -05:00
Benjamin Cabé
bdb314d036 net: lib: ocpp: fix misnamed State of Charge (SoC) measurand
As per OCPP 1.6, "State of charge of charging vehicle in percentage" is
"Soc", not "SoCState".

Fixes: zephyrproject-rtos/zephyr#98870

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-11-06 13:53:53 -05:00
Aleksandar Stanoev
9d06fca87a Bluetooth: Decode Bluetooth 6.2 version number
Bluetooth 6.2 has version number 0x10 and was released in November 2025.
This commit ensures this version number is properly decoded.

Signed-off-by: Aleksandar Stanoev <aleksandar.stanoev@nordicsemi.no>
2025-11-06 13:53:30 -05:00
Abderrahmane JARMOUNI
5679689f90 doc: develop: test: twister: fix doc titles level issue
fix doc titles level issue reported in CI

Signed-off-by: Abderrahmane JARMOUNI <git@jarmouni.me>
2025-11-06 15:49:28 +02:00
Abderrahmane JARMOUNI
acb1071b4e doc: test: twister: document DT filtering expressions
Add documentation for the DT filtering expressions in 'expr_parser.py',
used by Twister to filter boards based on their DT nodes/properties when
selecting test scenarios.

Signed-off-by: Abderrahmane JARMOUNI <git@jarmouni.me>
2025-11-06 15:49:28 +02:00
Abderrahmane JARMOUNI
5be6aa13b9 scripts: pylib: twister: expr_parser: some enhancements
Rename dt_node_prop_enabled filtering expression to
dt_nodelabel_prop_enabled as it takes a node label as a 1st argument.

Enhance dt_node_has_prop inline doc and param name.

Signed-off-by: Abderrahmane JARMOUNI <git@jarmouni.me>
2025-11-06 15:49:28 +02:00
Badr Bacem KAABIA
ae5b69c112 eeprom: fram: Fix read/write length and buffer pointer arithmetic
Fixes two critical bugs in the Fujitsu MB85RCxx I2C FRAM driver when
handling transfers that cross page boundaries:

Fixes incorrect write length: The mb85rcxx_write function was
incorrectly passing the total remaining length (len) to the
underlying I2C transfer instead of the page-limited length (len_in_page).
This resulted in I2C errors or data corruption when writing past a page
boundary.

Fixes buffer pointer update: Corrects the loop's buffer pointer
arithmetic in both mb85rcxx_read and mb85rcxx_write. The original
code used incorrect casting (*(char *)&buf += len_in_page;), leading
to a strict aliasing violation and potentially undefined behavior.
The pointer is now correctly advanced using explicit casting:

- mb85rcxx_read: buf = (char *)buf + len_in_page;
- mb85rcxx_write: buf = (const char *)buf + len_in_page;

Signed-off-by: Badr Bacem KAABIA <badrbacemkaabia@gmail.com>
2025-11-06 15:49:17 +02:00
Vincent Tardy
bfdfe99e5b west.yml: update hal_stm32 revision for 802.15.4 data transmission fix
Update hal_stm32 revision to update the stm32wba link layer
802.15.4 libraries including 802.15.4 data transmission fix.

Signed-off-by: Vincent Tardy <vincent.tardy@st.com>
2025-11-06 15:49:07 +02:00
Maureen Helm
8b208b0d5a drivers: hwspinlock: Fix context initializer build warning
Fixes a build warning in the hwspinlock context initializer macro that
occurs when struct k_spinlock has no members ("warning: excess elements
in struct initializer"). This change is consistent with other struct
k_spinlock initializers in kernel.h.

Signed-off-by: Maureen Helm <maureen.helm@analog.com>
2025-11-06 12:31:04 +02:00
Maochen Wang
a7f4150cd9 hostap: avoid configuring region domain when SAP is enabled
Configuring the region domain while SAP is enabled may lead to instability
in SAP's state and functionality. This change ensures the region domain
is not set when SAP is active.

Signed-off-by: Maochen Wang <maochen.wang@nxp.com>
2025-11-06 12:30:46 +02:00
BUDKE Gerson Fernando
55ecc63444 drivers: modem: bg9x: Update help description
Add note about PSM/eDRX modes to make it clear that off-load driver
still important when using in baterry powered devices.

Signed-off-by: BUDKE Gerson Fernando <gerson.budke@leica-geosystems.com>
2025-11-06 12:30:29 +02:00
BUDKE Gerson Fernando
40530d6f3e Revert "drivers: modem: deprecate MODEM_QUECTEL_BG9X"
This reverts commit da5eef665a.

Signed-off-by: BUDKE Gerson Fernando <gerson.budke@leica-geosystems.com>
2025-11-06 12:30:29 +02:00
Sreeram Tatapudi
e23ef53769 dts: arm: Infineon: cyw20289: Fix incorrect bootstrap configuration
This commit fixes CYW20829 that was broken on main after the
below commit
https://github.com/zephyrproject-rtos/zephyr/pull/95333

The root cause of the issue is that, bootstrap section is located at
the end of the RAM. So the start address of the section needs to
be calculated based on the size of the section.

Signed-off-by: Sreeram Tatapudi <sreeram.praveen@infineon.com>
2025-11-06 12:30:18 +02:00
Szymon Janc
0ab5005304 tests: Bluetooth: Tester: Fix GATT Notify Multiple BTP command
This fix multiple issues with command implementation:
 - lack of LE to host convertion
 - using strtoul() on non-string data
 - passing stack variable as attr data (which must be present until
   notification is sent)

This was affecting GATT/SR/GAN/BV-02-C qualification test case.

Signed-off-by: Szymon Janc <szymon.janc@codecoup.pl>
2025-11-06 12:29:59 +02:00
Pisit Sawangvonganan
b1cf15b9a4 dts: fix typo in (boards, dts)
Utilize a code spell-checking tool to scan for and correct spelling errors
in `.dts` and `.dtsi` files within the `boards` and `dts` directories.

Note: To pass CI compliance checks, also fix the formatting in
`/dts/arm/infineon/edge/pse84/system_clocks.dtsi`

Signed-off-by: Pisit Sawangvonganan <pisit@ndrsolution.com>
2025-11-06 12:29:48 +02:00
Daniel Leung
33b4a3fd70 kernel: add compiler barrier in k_is_pre_kernel between...
...checking whether we are in user context and accessing
a kernel mode only variable.

For some unknown reasons only knew to Cadence engineers,
the Cadence toolchain will always read z_sys_boot_kernel
at the beginning of k_is_pre_kernel() instead of after
k_is_user_context() is called. So it would always result
in access violation if this is called in user mode.
Forcing a compiler barrier seems to fix that. So force it
here.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-11-06 12:29:40 +02:00
Badr Bacem KAABIA
91d2dcf350 drivers: gnss: Fix snprintk return value check in gnss_dump
The snprintk function returns the number of characters that *would have
been* written if the buffer was large enough. This means if the return
value `ret` is greater than or equal to the buffer size `strsize`, the
output was truncated.

The existing check `(strsize < ret)` was incorrect as it did not
handle the case where `ret == strsize` (output fits exactly, but no
room for null terminator) and did not check for negative return values
which indicate an encoding error.

This commit corrects the check to `(ret < 0 || ret >= strsize)` to
properly detect truncation and errors, returning -ENOMEM in these
cases. This fix is applied to `gnss_dump_nav_data`, `gnss_dump_time`,
and `gnss_dump_satellite` functions.

Signed-off-by: Badr Bacem KAABIA <badrbacemkaabia@gmail.com>
2025-11-06 12:29:24 +02:00
Nicolas Pitre
f5f258f0cc tests: kernel: smp_abort: add delay to ensure circular dependency
The test_smp_thread_abort_deadlock test assumes all CPUs will
simultaneously establish a circular abort dependency (each thread
aborts the next in a ring). However, on platforms with large
emulator/simulator quantum sizes, one thread's ISR may complete
and return before another thread even calls k_thread_abort() on it,
preventing the circular dependency from forming.

This manifested on ARMv8-R FVP but not on QEMU or ARMv8-A/ARMv9-A FVP
due to different timing characteristics and quantum sizes.

Add a k_busy_wait(100) after k_thread_abort() to give all CPUs time
to call abort before any ISR completes.

Signed-off-by: Nicolas Pitre <npitre@baylibre.com>
2025-11-06 12:29:02 +02:00
Camille BAUD
8b2c75a2fb arch: riscv: thead: Fix range size
Only partial range operation was done, fix this

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-11-05 15:39:02 -05:00
Camille BAUD
4b96632e54 drivers: dma: BFLB DMA flush cache also for source
also flush cache for source, not just dest

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-11-05 15:39:02 -05:00
Khoa Nguyen
2ffa9aca58 boards: renesas: Correct reg for ethernet-phy node on ek_ra6m3
Correct reg value for ethernet-phy node on ek_ra6m3 board

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-11-05 15:37:46 -05:00
Liam Ogletree
9b4cc182ae drivers: flash: Fix devicetree API typo in AT25XV021A flash driver
Fix typos in the driver instantiation macro, which leads to page_size
and timeout_erase defaulting to 0 regardless of whether the
devicetree instance has the read-only property or not.

DT_INST_NODE_PROP_OR() -> DT_INST_PROP_OR()

Signed-off-by: Liam Ogletree <liam.ogletree@cirrus.com>
2025-11-05 15:37:04 -05:00
Imran Sajjad
3a5dad8831 drivers: i2s: stm32 i2s bit clock continuous mode
Added check for continuous or gated bit clock. Now clock does
not stop if I2S_OPT_BIT_CLK_CONT is selected.

Signed-off-by: Imran Sajjad <imransajjad89@gmail.com>
2025-11-05 15:36:46 -05:00
Daniel Leung
7a3bef480a doc: release-notes/4.3: add new kconfigs for Xtensa
There are some kconfig additions on Xtensa. Add them to
the release notes.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-11-05 15:35:58 -05:00
Nicolas Pitre
408da59cc4 net: lwm2m: fix format specifiers for size_t in LOG_DBG
Fix incorrect format specifiers in lwm2m_read_cached_data() where
size_t variables were printed using %u and %d instead of %zu. This
caused CI failures on ARM64 platforms where size_t is long unsigned
int, triggering -Werror=format warnings.

Signed-off-by: Nicolas Pitre <npitre@baylibre.com>
2025-11-05 15:35:38 -05:00
Nicolas Pitre
bd5806d828 samples: zbus: benchmark: also filter SMP from MSG_SUBSCRIBERS test
Commit d93561da68 ("samples: zbus: benchmark: Filter SMP from
benchmark_sync test") avoided the SMP race condition for the
SUBSCRIBERS variant (benchmark_sync) by filtering out SMP configurations,
but the MSG_SUBSCRIBERS variant (benchmark_async_msg_sub) has the
identical race condition and needs the same filter.

Both variants use the same threading model:
- Producer thread: priority 5 (lower priority, runs later)
- Consumer threads: priority 3 (higher priority, runs first)
- Both use asynchronous delivery via queues (msgq vs fifo)

The race condition on SMP (detailed in d93561da68):
  CPU 0 (Producer):              CPU 1-3 (Consumers):
  -----------------              ----------------------
  Publish all messages           Still processing...
  atomic_get(&count)             atomic_add() comes later
  → Reports incomplete count!

The LISTENERS variant (benchmark_async) does NOT need filtering because
listeners are synchronous callbacks. Looking at subsys/zbus/zbus.c:130,
the listener callback executes directly within zbus_chan_pub():

  case ZBUS_OBSERVER_LISTENER_TYPE: {
      obs->callback(chan);  /* Synchronous! */
      break;
  }

All atomic_add() operations complete before the producer checks the
count, so there is no race condition with LISTENERS.

Signed-off-by: Nicolas Pitre <npitre@baylibre.com>
2025-11-05 15:35:23 -05:00
Benjamin Cabé
cac77c31be doc: releases: add Zephyr 4.3 release highlights
Complete the section about major highlights for Zephyr 4.3.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-11-05 15:32:21 -05:00
Daniel Skinstad Drabitzius
bc9a5ef8c5 doc: services: device_mgmt: add mender-mcu to OTA examples
Add mender-mcu entry to `Examples of OTA` list.

Signed-off-by: Daniel Skinstad Drabitzius <daniel.drabitzius@northern.tech>
2025-11-05 15:22:21 -05:00
Benjamin Cabé
4f8e624404 doc: doxygen: add doxygen sitemap
In order to help search engines pick up _all_ our Doxygen documentation,
ensure that a sitemap.xml file is generated for it.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-11-05 13:30:50 -05:00
Badr Bacem KAABIA
a08c691e05 drivers: crc: renesas_ra: Fix state management and locking
Fix several issues related to the incremental CRC API usage:

1. Ensure the lock is not prematurely released in crc_set_config,
   preventing semaphore double-release (over-giving).
2. Reset the flag_crc_updated state on all error paths to prevent
   incorrect seeding in subsequent attempts.

Signed-off-by: Badr Bacem KAABIA <badrbacemkaabia@gmail.com>
2025-11-05 13:30:30 -05:00
Jamie McCrae
2ebd36f22c dts: vendor: nordic: Fix nRF5340 memory partition
Fixes some recently introduced issues with this file whereby
addresses were wrongly using global addresses instead of relative
to the parent node and whereby parent node names were not used
when they should have been

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-11-05 13:22:26 -05:00
Zhaoxiang Jin
c970afa409 boards: frdm_mcxn236: Change lpuart0 pin configuration
PR https://github.com/zephyrproject-rtos/zephyr/pull/96980/
changed the pins of lpuart0 from 'FC0_P0_PIO0_16' and
'FC0_P1_PIO0_17' to 'FC0_P2_PIO0_6' and 'FC0_P3_PIO0_7'.
This is actually unnecessary because lpuart0 is not enabled
by default, so micfil applications will not be affected.
Even if lpuart0 were enabled by default, we should disable
lpuart0 at the application layer rather than directly
modifying its default configuration, as this behavior lacks
backward compatibility.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-11-05 13:20:16 -05:00
Zhaoxiang Jin
1ca157ef14 samples: i2s_codec: Remove duplicate configurations
Remove duplicate configurations.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-11-05 13:20:16 -05:00
Robert Lubos
cc20b72ef2 doc: migration-guide-4.3: Document net_icmp_init_ctx() API change
Document that net_icmp_init_ctx() now also expects family argument.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-11-05 13:19:03 -05:00
Robert Lubos
486e8247c6 tests: net: icmp: Add test cases for ICMP family mismatch
Add test cases that respective ICMPv4/ICMPv6 handlers are not called for
packets where address family doesn't match (i.e. malformed ICMPv4 packet
imitating ICMPv6 one).

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-11-05 13:19:03 -05:00
Robert Lubos
587d9e6a4a net: icmp: Verify the address family before calling the callback
Check the address family of the packet before passing it to a ICMP
handler, to avoid scenarios where ICMPv4 packet is paseed to a ICMPv6
handler and vice versa.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-11-05 13:19:03 -05:00
BUDKE Gerson Fernando
80be486c87 docs: migration-guide-4.3: Add TF-M attestation issue
Add documentation describing a TF-M attestation issue that prevents
firmware-over-the-air (FOTA) upgrades between affected Zephyr releases.
Recommend a direct upgrade to Zephyr v4.3.0 to avoid attestation and
upgrade compatibility issues.

Signed-off-by: BUDKE Gerson Fernando <gerson.budke@leica-geosystems.com>
2025-11-05 11:36:02 +02:00
BUDKE Gerson Fernando
9a455998a4 west.yml: Bump TF-M to fix FOTA upgrade regression
Update TF-M to include fixes restoring FOTA upgrade compatibility
between Zephyr v3.7.1 and v4.3.0. This fix allow both forward and
rollback upgrades.

Signed-off-by: BUDKE Gerson Fernando <gerson.budke@leica-geosystems.com>
2025-11-05 11:36:02 +02:00
Lauren Murphy
c434ed8843 intel_adsp: select log_backend_xtensa_sim for simulator
ADSP logging backend requires winstream console,
which is turned off for simulator.

Signed-off-by: Lauren Murphy <lauren.murphy@intel.com>
2025-11-05 11:35:32 +02:00
Allen Zhang
abd43ae75c boards: mcxw23: Fix the compliance check issues
Fixed the indentation issue in dtsi files

Signed-off-by: Allen Zhang <chunfeng.zhang@nxp.com>
2025-11-05 11:35:22 +02:00
Allen Zhang
9edb892c7d boards: mcxw23: Use SYSTICK as the default kernel timer
SYSTICK is used as the default kernel timer.
The FRO 1M clock source for OSTIMER is trimmed to ± 15%
accuracy over the entire voltage and temperature. The FRO 1M
is not accurate enough on the silicon.

Signed-off-by: Allen Zhang <chunfeng.zhang@nxp.com>
2025-11-05 11:35:22 +02:00
Allen Zhang
2cb7364427 tests: watchdog: retain memory for frdm_mcxw23 and mcxw23_evk
The first 32KB will be used by BOOT ROM.
Added board shared sram bypass first 32KB overlay.
The overlay configure shall bypass first 32KB memory to avoid
being clear during system startup.

Signed-off-by: Allen Zhang <chunfeng.zhang@nxp.com>
2025-11-05 11:35:13 +02:00
Alain Volmat
679a6c6ec6 memc: stm32_xspi_psram: avoid XSPIM_Config if running from flash
Avoid calling the HAL_XSPIM_Config function if the app is running
from flash in order to avoid locking since HAL_XSPIM_Config is once
turning off each XSPI instance when performing the configuration.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-11-05 11:35:04 +02:00
Alain Volmat
299e067f8f drivers: memc: stm32_xspi_psram: avoid hardcode to XSPI1
The PSRAM could well be plugged to the XSPI2 instead of XSPI1
hence allow configuration of the IOPort and avoid forcing the
ChipSelect in order to allow working on both XSPI1 or XSPI2.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-11-05 11:35:04 +02:00
Alain Volmat
d604af86b0 drivers: memc: stm32_xspi_psram: use XSPI_HandleTypeDef ptr at init
Avoid copying the whole XSPI_HandleTypeDef structure into the
init function and use a pointer since the structure is already part
of the _data structure.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-11-05 11:35:04 +02:00
Vladislav Kulikov
45e0baf74a MAINTAINERS: SMF: add @vlad-kulikov as collaborator
I nominate my self as s collaborator for the State machine framework (SMF).
Rationale: sustained contributions to SMF (performance work, tests,
reviews).

@keith-zephyr @glenn-andrews - PTAL.

Signed-off-by: Vladislav Kulikov <vlad_kulikov_c@pm.me>
2025-11-05 11:34:52 +02:00
Alain Volmat
3b0704974c video: gc2145: perform first-second switch for CSI RGB565
Correct the RGB565 format generated by the GC2145 in case of CSI based
RGB565 by setting the Page 0 BYPASS_MODE register switch bit in order
to generate RGB565_LE instead of RGB565_BE.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-11-05 11:34:41 +02:00
Alain Volmat
6b7ad26213 video: stm32_dcmipp: fix parallel interface RGB565 handling
On parallel interface, the DCMIPP is expecting data in what
corresponds to the RGB565_BE formats, aka

	     D7 D6 D5 D4 D3 D2 D1 D0
	     -----------------------
cycle 1:     R4 R3 R2 R1 R0 G5 G4 G3
cycle 2:     G2 G1 G0 B4 B3 B2 B1 B0

The Zephyr RGB565 video format corresponds to the RGB565_LE
hence perform a SWAPCYCLE when RGB565 is used as input format
on parallel interface.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-11-05 11:34:41 +02:00
Jordan Yates
431a86eb1e dts: nordic: nrf91xx: fix NS partition references
`sram0_ns_modem` and `sram0_ns_app` are child nodes of `sram0_ns`, not
`sram`. Addresses should be relative to the former, not the later.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-11-05 11:34:31 +02:00
Jordan Yates
faa2101d4e tests: lib: heap_min: test Z_HEAP_MIN_SIZE
Validate that `Z_HEAP_MIN_SIZE` is the minimum required size.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-11-05 11:34:00 +02:00
Jordan Yates
8aa10bdab7 kernel: Z_HEAP_MIN_SIZE for runtime stats
Increase `Z_HEAP_MIN_SIZE` values to successfully allocate a 1 byte
chunk when `CONFIG_SYS_HEAP_RUNTIME_STATS=y`.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-11-05 11:34:00 +02:00
Andreas Schweigstill
869881ef21 drivers: disk: sdmmc_stm32.c: fix HAL_*_ConfigWideBusOperation
This fixes a compilation error in sdmmc_stm32.c. Depending on the
definition of CONFIG_SDMMC_STM32_EMMC now either
HAL_MMC_ConfigWideBusOperation() or HAL_SD_ConfigWideBusOperation()
gets called.

Signed-off-by: Andreas Schweigstill <andreas@schweigstill.de>
2025-11-04 19:07:52 -05:00
Mathieu Choplain
8619248629 drivers: usb: dc: stm32: fix usb_disable() deadlock on certain series
During a teardown sequence performed by the USB DC stack's "usb_disable()",
the controller is first disabled by calling "usb_dc_detach()", which turns
off the USB controller clock in the STM32 implementation. "usb_disable()"
then disables endpoints by calling "usb_dc_ep_disable()" on each of them,
which is merely forwarded to HAL_PCD_EP_Close() by the STM32 driver. This
order of operations means that the latter operation is actually operating
on the no-longer-clocks USB controller! Up until recently, memory accesses
to MMIO of unclocked peripherals in STM32 SoCs would not cause issues, even
if the resulting access was a no-op (read returns zero, write is ignored),
so everything worked fine even if the access was *technically* illegal...
However, on newer series with a different bus fabric, accesses to unclocked
peripherals will instead deadlock the SoC!

Prevent illegal accesses inside "usb_dc_stm32_ep_disable()" by checking if
the USB controller clock is enabled before calling HAL_PCD_EP_Close(), and
skipping the call if it isn't. This allows "usb_disable()" to complete on
series such as STM32N6.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-11-04 14:00:32 -05:00
Vlad Kulikov
8b31d2cad3 smf: simplify get_child_of() loop and rename local to 'state'
Replace the open-ended while(true) with a null-terminated parent walk.
Improves readability, behavior is unchanged.

Signed-off-by: Vlad Kulikov <vlad_kulikov_c@pm.me>
2025-11-04 13:59:52 -05:00
Firas Sammoura
2196d2a77d Revert "riscv: pmp: Add helper to write PMP configuration CSRs"
This reverts commit 9482f8df02.

Signed-off-by: Firas Sammoura <fsammoura@google.com>
2025-11-04 13:56:09 -05:00
Mathieu Choplain
f36f8d4fb9 runners: stlink_gdbserver: expose --external-init as runner argument
3cc9a843e8 added '--external-init' to the GDB
Server command line whenever an external loader is provided, but it is not
a *necessary* argument and sometimes causes issues.

Provide a new runner argument "--external-init" (for consistency) which
controls whether or not the argument is added to command line if an
external loader is used. (It is otherwise ignored)

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-11-04 13:50:56 -05:00
Mathieu Choplain
f890286d8e runners: stlink_gdbserver: make it possible to disable SWD mode
The "--swd" argument had both an action='store_true' and default value of
True so it wasn't possible to disable it: providing the argument would set
its value to True, and not providing it would use the default=True!

Add a new argument "--no-swd" which shares its destination variable with
"--swd", but with action='store_false', such that either can be provided
to enable/disable SWD mode. Both arguments are placed in a mutually
exclusive group and use a common help message.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-11-04 13:50:56 -05:00
Mario Paja
0b4819646c dts: st: l4: fix line sai feature
Fix SAI availability on STM32L4xx series

Signed-off-by: Mario Paja <mariopaja@hotmail.com>
2025-11-04 13:50:05 -05:00
Jérôme Pouiller
2113d56c68 soc: silabs: Fix SL_CODE_CLASSIFY conflict
SL_CODE_CLASSIFY() is a macro used by the upstream Simplicity SDK to mark
time sensitive functions (in order to relocate them in RAM). This macro
place the function in specific sections. So build scripts can identify
them.

However, Wiseconnect is not able to leverage this feature. Worse, this
mechanism conflict with gen_relocate_app.py and zephyr_code_relocate(). So,
we really need to disable this mechanism for Wiseconnect on Zephyr.

Fortunately, SLI_CODE_CLASSIFICATION_DISABLE allow to disable
SL_CODE_CLASSIFY().

Note that on Simplicity SDK, these macro also conflict with
zephyr_code_relocate(). However, the mechanism is officially supported by
Simplicity SDK and we could leverage the feature for the on going support
of Series-3.

Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
2025-11-04 13:48:41 -05:00
Daniel DeGrasse
3d075c4e68 drivers: i2c: i2c_dw: make target stop callback after read/write callbacks
In target mode, issue the stop callback from the I2C DW driver after the
read/write callbacks. This mirrors the behavior of other I2C target mode
drivers, and allows target handler code to correctly service any pending
read or write requests before it handles the stop condition.

Fixes #98675

Signed-off-by: Daniel DeGrasse <ddegrasse@tenstorrent.com>
2025-11-04 13:45:34 -05:00
Nicolas Pitre
af7ae5d61f kernel: sched: plug assertion race in z_get_next_switch_handle()
Commit d4d51dc062 ("kernel:  Replace redundant switch_handle assignment
with assertion") introduced an assertion check that may be triggered
as follows by tests/kernel/smp_abort:

CPU0              CPU1              CPU2
----              ----              ____
* [thread A]      * [thread B]      * [thread C]
* irq_offload()   * irq_offload()   * irq_offload()
* k_thread_abort(thread B)
                  * k_thread_abort(thread C)
                                    * k_thread_abort(thread A)
* thread_halt_spin()
* z_is_thread_halting(_current) is false
* while (z_is_thread_halting(thread B));
                  * thread_halt_spin()
                  * z_is_thread_halting(_current) is true
                  * halt_thread(_current...);
                  * z_dummy_thread_init()
                    - dummy_thread->switch_handle = NULL;
                    - _current = dummy_thread;
                  * while (z_is_thread_halting(thread C));
* z_get_next_switch_handle()
* z_arm64_context_switch()
* [thread A is dead]
                                    * thread_halt_spin()
                                    * z_is_thread_halting(_current) is true
                                    * halt_thread(_current...);
                                    * z_dummy_thread_init()
                                      - dummy_thread->switch_handle = NULL;
                                      - _current = dummy_thread;
                                    * while(z_is_thread_halting(thread A));
                  * z_get_next_switch_handle()
                    - old_thread == dummy_thread
                    - __ASSERT(old_thread->switch_handle == NULL) OK
                  * z_arm64_context_switch()
                    - str x1, [x1, #___thread_t_switch_handle_OFFSET]
                  * [thread B is dead]
                  * %%% dummy_thread->switch_handle no longer NULL %%%
                                    * z_get_next_switch_handle()
                                      - old_thread == dummy_thread
                                      - __ASSERT(old_thread->
                                             switch_handle == NULL) FAIL

This needs at least 3 CPUs and the perfect timing for the race to work as
sometimes CPUs 1 and 2 may be close enough in their execution paths for
the assertion to pass. For example, QEMU is OK while FVP is not.
Also adding sufficient debug traces can make the issue go away.

This happens because the dummy thread is shared among concurrent CPUs.
It could be argued that a per-CPU dummy thread structure would be the
proper solution to this problem. However the purpose of a dummy thread
structure is to provide a dumping ground for the scheduler code to work
while the original thread structure might already be reused and
therefore can't be clobbered as demonstrated above. But the dummy
structure _can_ be clobbered to some extent and it is not worth the
additional memory footprint implied by per-CPU instances. We just have
to ignore some validity tests when the dummy thread is concerned.

Signed-off-by: Nicolas Pitre <npitre@baylibre.com>
2025-11-04 13:45:24 -05:00
Nicolas Pitre
1c8f1c8647 kernel: sched: use clearly invalid value for halting thread switch_handle
When a thread halts and dummifies, set its switch_handle to (void *)1
instead of the thread pointer itself. This maintains the non-NULL value
required to prevent deadlock in k_thread_join() while making it obvious
that this value is not meant to be dereferenced or used.

The switch_handle should be an opaque architecture-specific value and
not be assumed to be a thread pointer in generic code. Using 1 makes
the intent clearer.

Signed-off-by: Nicolas Pitre <npitre@baylibre.com>
2025-11-04 13:45:24 -05:00
Mahesh Mahadevan
11dbae8a32 pm: Fix warning with pm_policy_priv_device_find_device_constraints
pm_policy_priv_device_find_device_constraints() function
is available only when zephyr_power_state is defined.

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2025-11-04 13:45:14 -05:00
Henrik Brix Andersen
103370782d tests: drivers: pwm: api: remove board configurations without overlays
Remove board configurations without a proper devicetree overlay. The test
suite relies on pwm-test alias to be defined in a board overlay, which is
not set for these boards.

Fixes: #98775

Signed-off-by: Henrik Brix Andersen <hebad@vestas.com>
2025-11-04 13:45:04 -05:00
Johan Hedberg
73b6f8bd4a Bluetooth: Host: Fix build error with observer-only config
When building an observer-only build the check_pending_conn label would
result in CI warnings/errors due to this only being a C23 feature:

scan.c:692:1: error: label at end of compound statement is a C23 extension

Turns out the #ifdefs are completely unnecessary, and the code can simply
take advantage of IS_ENABLED(), which should get rid of the warning.

Signed-off-by: Johan Hedberg <johan.hedberg@silabs.com>
2025-11-04 12:00:35 -05:00
Szymon Janc
d054025fa3 tests: Bluetooth: Tester: Implement TBS Terminate Call BTP command
This allows upper tester to terminate existing call.
Was affecting TMAP/CG/VRC/BV-01-C qualification test case.

Signed-off-by: Szymon Janc <szymon.janc@codecoup.pl>
2025-11-04 16:56:28 +02:00
Erwan Gouriou
9f26a42591 MAINTAINERS: stm32 module: Add missing collaborators
For better agility add etienne-lms, mathieuchopstm and djiatsaf-st
as collaborators to STM32 module.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2025-11-04 16:56:14 +02:00
Erwan Gouriou
35ccb92bc6 MAINTAINERS: stm32: Add juickar as collaborator
We need juickar to take part in reviews in these areas.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2025-11-04 16:56:14 +02:00
Erwan Gouriou
540607f46b MAINTAINERS: stm32: Remove inactive collaborators
@marwaiehm-st and @benothmn-st are not collaborating anymore
on those area.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2025-11-04 16:56:14 +02:00
Zhijie Zhong
87e351f8bc Bluetooth: Host: Fix handling of adv reports when scanning for connection
In some cases, the host starts scanning internally for establishing
connections (BT_LE_SCAN_USER_CONN), such as host-based resolving or
auto-connection. In this situation, even if the application does not
start explicit scan, the host still needs to handle the advertising
reports to continue the connection process.

Previously, both bt_hci_le_adv_report() and bt_hci_le_adv_ext_report()
will break or discard all reports when explicit scan is not active.
This causes the connection to stay in SCAN_BEFORE_INITIATING and never
move forward.

This patch adds checking of BT_LE_SCAN_USER_CONN to allow advertising
reports to be processed during connection-purpose scanning. When the
scan is started explicitly by application, the behavior remains the
same, only small comments are updated to describe this behavior and keep
the original code style unchanged.

Signed-off-by: Zhijie Zhong <zhongzhijie1@xiaomi.com>
2025-11-04 16:55:45 +02:00
Cristian Bulacu
11d74f2bfe modules: openthread: platform: udp: Fix otPlatUdpClose bug
This commit fixes a bug which occurred when a socket was closed.

It was observed when multiple attempts to obtain dataset using ephemeral
key were performed. Failure was seen starting with attempt number 2,
incoming packets were not processed.

In a open-close-open scenario, incoming traffic was dropped, most likely
because there was stale data in the corresponding socket service
structure.

By calling, `net_socket_service_register` after a socket in closed, the
problem was resolved, and data shown in `net sockets` cli command is now
updated and correct.

Signed-off-by: Cristian Bulacu <cristian.bulacu@nxp.com>
2025-11-04 16:55:31 +02:00
MBatuhan Altun
d9999a4884 boards: st: Clean up nodes with status = "disabled"
- drop redundant board-level disables already handled in the SoC .dtsi

- document intentional disables (pin conflicts, optional peripherals

  and shared resources)

- fix DTS lint spacing warnings (stm32h747i_disco)

Signed-off-by: MBatuhan Altun <mbatuhanaltun3388@gmail.com>
2025-11-04 16:54:34 +02:00
Tim Pambor
a4d99f5de2 net: core: only set l2_processed flag for NET_CONTINUE
If verdict is NET_OK net_pkt may already be unreferenced and reutilized,
so that setting the `l2_processed` flag would be set on a different
packet, corrupting its state. Avoid this situation by only setting the
l2_processed flag for NET_CONTINUE.

Signed-off-by: Tim Pambor <tim.pambor@codewrights.de>
2025-11-04 16:54:14 +02:00
Patryk Koscik
1bd934dbba drivers: uart: ambiq: enable driver for apollo4x
Enable Ambiq serial driver for the Apollo4x SoC series.

Signed-off-by: Patryk Koscik <pkoscik@antmicro.com>
2025-11-04 16:53:51 +02:00
Patryk Koscik
0b89d298a1 drivers: uart: ambiq: make driver compatible with apollo4x
This patch makes `uart_ambiq.c` compatible with the Apollo4x SoC series.

Signed-off-by: Patryk Koscik <pkoscik@antmicro.com>
2025-11-04 16:53:51 +02:00
Jamie McCrae
88176a795d doc: hardware: porting: board_porting: Fix outdated merged info
Fixes some information that is very outdated to do with board
Kconfig files, which are not merged, and multiple dts files

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-11-04 16:53:40 +02:00
Jamie McCrae
c060a33bb0 github: workflows: Disable getting all toolchains
This fixes an issue of CI failing due to the github runner being
out of memory when cleaning up, and speed up the build prep stage

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-11-04 16:53:31 +02:00
Georgios Vasilakis
6cc7bdb58a tests: secure_storage: Exclude nRF54H20 targets
Exclude the application and radio core targets for nRF54H20 since
they use Ironside as their PSA storage provider.

Signed-off-by: Georgios Vasilakis <georgios.vasilakis@nordicsemi.no>
2025-11-04 07:30:53 -05:00
Nicolas Pitre
6c6f1a5e99 arch: arm64: mmu: revert useless cache handling
This reverts the following commits:

commit c9b534c4eb
("arch: arm64: mmu: avoid using of set/way cache instructions")

commit c4ffadb0b6
("arch: arm64: avoid invalidating of RO mem after mem map")

The reason for the former is about Xen not virtualizing set/way cache
operations used by sys_cache_data_invd_all() originally used prior to
enabling the MMU and data cache. But the cure is worse than the Xen
issue as:

- Cache invalidation is performed on _every_ mapping change.

- Those invalidations are completely unnecessary with a PIPT data cache.
  ARM64 implementations use Physically Indexed, Physically Tagged (PIPT)
  data caches where cache maintenance is not needed during MMU operations.

- arch_mem_map() invoked with K_MEM_MAP_UNPAGED triggers page faults
  when accessing the unmapped region for cache operations. The page
  fault handler in do_page_fault() tries to reacquire z_mm_lock which
  is already held by the caller of arch_mem_map(). This results in a
  deadlock.

And the latter commit disables cache operations for read-only mappings,
effectively rendering the workaround described in the first commit
inoperative on half the mappings, making the performance cost of the
first commit's approach unjustifiable since it doesn't actually solve
the problem it set out to fix.

Given the above, the actual "fix" should simply have been the removal of
the sys_cache_data_invd_all() as, in theory, it isn't strictly needed
and its replacement is already ineffective on read-only areas as mentioned.

So let's revert them, which fixes the deadlock-induced CI test failures
on ARM FVP SMP configurations that were triggered when demand paging or
memory mapping operations were involved.

Signed-off-by: Nicolas Pitre <npitre@baylibre.com>
2025-11-04 07:22:39 -05:00
Nicolas Pitre
5b43674098 arch: arm64: Fix SMP TLB invalidation on SMP systems
Use Inner Shareable (IS) TLB invalidation instructions in SMP
configurations to broadcast TLB invalidations to all CPUs.

Use TLBI VMALLE1IS instead of VMALLE1 in invalidate_tlb_all().

While at it, implement proper page-specific invalidation using TLBI VAE1IS
in invalidate_tlb_page() instead of falling back to full invalidation.

This fixes many SMP test failures with userspace enabled onArm's FVP.

Signed-off-by: Nicolas Pitre <npitre@baylibre.com>
2025-11-04 07:22:03 -05:00
Mario Paja
fcaf35ccb3 drivers: i2s: stm32 sai code cleanup
Replace series-specific macros with generic macros shared across
multiple STM32 series to improve readability and maintainability.

Signed-off-by: Mario Paja <mariopaja@hotmail.com>
2025-11-04 07:19:50 -05:00
Ricardo Rivera-Matos
5cd5e152b3 MAINTAINERS: Adds Liam-Ogletree as a Haptics collaborator
Adds Liam-Ogletree as a collaborator for the haptic driver API.

Signed-off-by: Ricardo Rivera-Matos <rriveram@opensource.cirrus.com>
2025-11-04 07:13:34 -05:00
Jordan Yates
0c117869bc Revert "doc: Releases: Add notes about deprecated bt_ctlr_set_public_addr"
This reverts commit a60ed23d19.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-11-04 07:10:45 -05:00
Jordan Yates
3801d1d38c Revert "Bluetooth: Controller: Deprecate bt_ctlr_set_public_addr"
This reverts commit b07be641e7.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-11-04 07:10:45 -05:00
Martin Hoff
cd0448496a tests: uart: silabs: add board overlays to test silabs eusart peripheral
This patch introduces overlays to test the silabs eusart peripheral.
It requires 3 different boards in order to test minor differences
between peripheral chip IP versions.

Signed-off-by: Martin Hoff <martin.hoff@silabs.com>
2025-11-04 07:10:19 -05:00
Martin Hoff
730502ef62 tests: uart: silabs: add overlay files for slwrb4180b board
Introduce new overlay files for the slwrb4180b board in the UART test
suite.

Signed-off-by: Martin Hoff <martin.hoff@silabs.com>
2025-11-04 07:10:19 -05:00
David Leach
01e3b167af west: blobs: fix UnicodeDecodeError on Windows
Ensure the blobs command is trying to display the license file for
click-through approval. Ensure that special characters doesn't
cause a problem in Windows by opening the file with utf-8 encoding.

Fixes #98520

Signed-off-by: David Leach <david.leach@nxp.com>
2025-11-04 07:06:08 -05:00
Qingsong Gou
302064c9a5 drivers: i2c: fix CI CMakeStyle error
Replace CMAKE tabs with spaces

Signed-off-by: Qingsong Gou <gouqs@hotmail.com>
2025-11-04 07:05:39 -05:00
Vincent Tardy
0df9c5fb1f west.yml: update hal_stm32 revision for LL 802.15.4 lib url fix
Update hal_stm32 revision to fix url vulnerability of link layer
802.15.4 libraries for stm32wba.

Signed-off-by: Vincent Tardy <vincent.tardy@st.com>
2025-11-04 11:27:41 +02:00
Thomas Decker
eab91fe55f boards: st: nucleo_h7s3l8: Fix size of ext_memory and ram
Change size of ext_memory node to 32MB, as the board uses a Macronix
MX25UW25645GXDI00 with 256MBits.

Signed-off-by: Thomas Decker <decker@jb-lighting.de>
2025-11-04 11:27:29 +02:00
Thomas Decker
93df422d5b dts: arm: st: h7rs: Increase memory size of sram0
The h7rs option byte default setting configures the AXI SRAM1-4 as one
contiguous memory, sram0 can therefore be increased to 456k (3x128k + 72k).
The .yaml files of the boards nucleo_h7s3l8 and stm32h7s78_dk are adjusted
accordingly.

Signed-off-by: Thomas Decker <decker@jb-lighting.de>
2025-11-04 11:27:29 +02:00
Etienne Carriere
8510764505 boards: st: fix Bluetooth and BLE references
Add registered trademark symbol to Bluetooth where missing and
replace BLE with explicit Bluetooth Low Energy where applicable
in ST boards documentation.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-11-04 11:27:18 +02:00
Pete Johanson
f69f7b1b80 tests: drivers: flash: Fix for MAX32 flash1 testing
Remove the erronously added chosen node for the MAX32690EVKit, to ensure
the flash base address is correct for the build.

Signed-off-by: Pete Johanson <pete.johanson@analog.com>
2025-11-04 11:27:08 +02:00
Arun Kumar Nagelly
4b9bbc5006 drivers: bluetooth: hci: siwx91x: add RF power config
Add vendor-specific RF power mode configuration during HCI setup
for SiLabs SiWx91x devices. This configures the BLE TX power
index in the controller's RF subsystem.

The implementation sends a vendor command (OCF 0x0006) with
protocol mode (2) and power index (RSI_BLE_PWR_INX) during the
setup phase. This ensures proper RF power configuration before
normal Bluetooth operations begin.

Technical details:
- Uses bt_hci_cmd_alloc() with manual HCI header construction
- Command opcode: 0xFC06 (OGF=0x3F, OCF=0x0006)
- Parameters: protocol_mode=2, power_index from RSI_BLE_PWR_INX
- Executed during bt_hci_setup callback

Signed-off-by: Arun Kumar Nagelly <arnagell@silabs.com>
2025-11-04 09:26:46 +00:00
Keith Packard
3e615fa533 drivers: comparator: Silence GCC 14 uninitialized variable warning.
When the renesas-rv-lvd driver is built with SDK 1.0 using GCC 14, the
compiler emits a spurious uninitialized variable warning because it can't
follow the control flow to figure out that the variable wasn't ever used
without being initialized. Work around this by simply initializing it
to one of the valid values.

Signed-off-by: Keith Packard <keithp@keithp.com>
2025-11-04 11:26:34 +02:00
Benjamin Cabé
74572a787b include: drivers: sensor: doxygen docs for max17055
Fixup doxygen documentation

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-11-04 11:26:14 +02:00
Benjamin Cabé
dc0993f13f include: drivers: sensor: doxygen docs for max32664c
Fixup doxygen documentation

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-11-04 11:26:14 +02:00
Benjamin Cabé
344caf3ec1 include: drivers: sensor: doxygen docs for mmc56x3
Fixup doxygen documentation

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-11-04 11:26:14 +02:00
Benjamin Cabé
0d9c76012b include: drivers: sensor: doxygen docs for sht4x
Fixup doxygen documentation

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-11-04 11:26:14 +02:00
Benjamin Cabé
4c4c2ea7f6 include: drivers: sensor: doxygen docs for ccs811
Fixup doxygen documentation

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-11-04 11:26:14 +02:00
Szymon Janc
a3aa51393b Bluetooth: tester: Fix TBS Originate Call BTP command
bt_tbs_originate() returns assigned Call ID as non-negative value.

Signed-off-by: Szymon Janc <szymon.janc@codecoup.pl>
2025-11-03 17:00:08 +02:00
Stuart Alldritt
8af379516d mgmt: mcumgr: grp: img_mgmt: increment data_off after reading the SHA
Fix a bug where the image's SHA would be interpreted as TLV headers due
to missing a data_off increment.

Signed-off-by: Stuart Alldritt <s.k.alldritt@gmail.com>
2025-11-03 16:59:50 +02:00
Szymon Janc
4571485e16 Bluetooth: Mesh: Fix invalid write in private beacon server
There is no guarantess enum will be packed so passing uint8_t as
node_id to bt_mesh_subnet_priv_node_id_get() could (and likely will)
result in writing past stack variable.

Signed-off-by: Szymon Janc <szymon.janc@codecoup.pl>
2025-11-03 16:59:32 +02:00
Zhaoxiang Jin
393f542e51 doc: cpu_freq: Improve cpu_freq documentation.
Improve cpu_freq documentation.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-11-03 16:59:22 +02:00
Zhaoxiang Jin
f1f39e6a9e cpu_freq: Avoid redundant cpu_freq_policy_reset()
The current code calls cpu_freq_policy_reset() once within
the SMP branch of the cpu_freq_timer_handler function, and
then calls it again at the beginning of cpu_freq_next_pstate().
This causes repeated resets of 'pstate_best' and
'num_unprocessed_cpus', which prevents the 'last core' from
being reached. The initiating core should perform a reset
before broadcasting, and other cores should not reset again.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-11-03 16:59:22 +02:00
Zhaoxiang Jin
c924d8ba15 cpu_freq: remove redundant XOR calculation in k_ipi_work_add
In the current code, 'target_cpus ^= (1U << _current_cpu->id)'
is first used to remove the current core. Then, k_ipi_work_add
performs 'target_cpus ^ (1U << _current_cpu->id)' again when
passing parameters. This will add the current core to the mask
again, causing the current core to receive IPI and directly call
cpu_freq_next_pstate() at the end, which may lead to duplicate
execution.

This commit changed 'target_cpus ^ (1U << _current_cpu->id)' to
'target_cpus' in k_ipi_work_add to avoid the second XOR.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-11-03 16:59:22 +02:00
Marcelo Cunha
1c2d7f48ee sensor: bq274xx: fix design energy calculation
In the function bq274xx_gauge_configure it was being used an hardocded
value of 3.7V instead of using the design voltage parameter defined in
the device tree.

Signed-off-by: Marcelo Cunha <mcunha@petsafe.net>
2025-11-03 16:59:14 +02:00
Khaoula Bidani
c28d779432 drivers: spi: stm32: Fix race condition causing lockup in half-duplex mode
This patch adds a check for the EOT (End Of Transfer) flag
inside the polling loop in spi_stm32_half_duplex_switch_to_receive().
If EOT is set, the transfer is already complete and the loop
is exited, preventing the lockup.

Signed-off-by: Khaoula Bidani <khaoula.bidani-ext@st.com>
Signed-off-by: Julien Racki <julien.racki-ext@st.com>
2025-11-03 16:59:05 +02:00
Alain Volmat
b9a15a95ec samples: video: capture: fix index increment in caps display
Since the i index is already being incremented as part of the
for loop statement, the i++ done as part of the loop body should
not be done since this lead to skip of entries of the table and
moreover might lead to invalid access outside of the table.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-11-03 16:58:56 +02:00
Jordan Yates
25269118b5 net: lib: sockets: add socket service fd requirement
The net socket service implementation permanently opens a file
descriptor, which should be taken into account by the build system.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-11-03 10:42:06 +02:00
Sergei Ovchinnikov
38f8925a91 drivers: mfd: npm13xx: add delay between timer strobing and hibernate
When using I2C clock frequency >= 250 kHz, it's been observed that the
nPM1300 would unexpectedly wake up before requested time has expired. Add
a delay between applying a new timer value and triggering hibernate to
mitigate this.

Signed-off-by: Sergei Ovchinnikov <sergei.ovchinnikov@nordicsemi.no>
2025-11-03 10:41:55 +02:00
Diego Herranz
6fe24654b9 boards: imx93_evk_mimx9352_m33_ddr.yaml: remove 'flash: 0'
It was preventing this variant (imx93_evk/mimx9352/m33/ddr) to show up
in the boards documentation. Other similar boards with similar DDR variants
(e.g. imx95_evk/mimx9596/m7/ddr) don't include this 'flash: 0' line.

Signed-off-by: Diego Herranz <diegoherranz@diegoherranz.com>
2025-11-03 10:41:45 +02:00
Yuval Peress
bf0e0b3cad adc: esp32 add missing header
Without this header the logic in adc_esp32.c will never have either
ADC_CALI_SCHEME_CURVE_FITTING_SUPPORTED or
ADC_CALI_SCHEME_LINE_FITTING_SUPPORTED defined. This means
that we always see the warnings aout uncalibrated samples.

Signed-off-by: Yuval Peress <yuval.peress@gmail.com>
2025-11-02 12:34:34 -05:00
Immo Birnbaum
b6c5d91507 soc: xlnx: zynqmp: fix vectors and SRAM MPU region priority order
Place the 'vectors' region configuration behind the 'sram' and
'rom_region' configurations so that the MPU region for the
vectors takes precedence over the 'sram' region due to higher
region index = higher priority when resolving memory properties
/ permissions for overlapping regions. This is required for the
vectors to work properly if the SRAM base address is also at 0x0.

Fixes #96688.

Signed-off-by: Immo Birnbaum <mail@birnbaum.immo>
2025-11-02 12:32:32 -05:00
Chris Friedt
e438b57a8c release: Zephyr 4.3.0-rc2
Update the version to v4.3.0-rc2.

Signed-off-by: Johan Hedberg <johan.hedberg@silabs.com>
Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-11-01 10:33:13 -04:00
Chris Friedt
e4d193b5ed scripts: coccinelle: add fork as a reserved name
`fork()` is defined by POSIX and for creating a new child process.

It is the preferred method of doing so on systems with virtual memory and
the symbol should not be used outside of the context defined by the
POSIX standard.

https://pubs.opengroup.org/onlinepubs/9699919799/functions/fork.html

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-11-01 08:39:26 -04:00
Chris Friedt
8864ac4c1c samples: posix: philosophers: rename 'fork' to avoid POSIX conflict
There is a function, `fork()`, inside of the philosophers example that
conflicts with the POSIX `fork()` function.

Since it is customary to avoid using reserved names, adjust the sample
so that the function in question is called `philosopher_fork()`.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-11-01 08:39:26 -04:00
Chris Friedt
ec84b80981 samples: cmsis: philosophers: rename 'fork' to avoid POSIX conflict
There is a macro, `fork()`, inside of the philosophers example that
conflicts with the POSIX `fork()` function.

Since it is customary to avoid using reserved names, adjust the sample
so that the macro in question is called `philosopher_fork()`.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-11-01 08:39:26 -04:00
Chris Friedt
f6eb86fe6f samples: philosophers: rename 'fork' to avoid POSIX conflict
There is a macro, `fork()`, inside of the philosophers example that
conflicts with the POSIX `fork()` function.

Since it is customary to avoid using reserved names, adjust the sample
so that the macro in question is called `philosopher_fork()`.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-11-01 08:39:26 -04:00
Declan Snyder
63868e4301 drivers: mdio_nxp_enet: Remove mistaken busy wait
This busy wait was for debugging purposes and left in by mistake.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-11-01 08:38:28 -04:00
Declan Snyder
51f457088d drivers: ksz8081: Start monitoring phy after init
For some reason, a regression happened where the phy monitor was never
happening. Fix by starting the monitor at the end of init function. The
monitor will then reschedule itself from then on.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-11-01 08:38:28 -04:00
Mario Paja
497209c74e drivers: i2s: mcux sai update TX state after queue is empty
This change sets the TX state to ready after the TX queue
has been emptied.

Signed-off-by: Mario Paja <mariopaja@hotmail.com>
2025-10-31 20:04:53 -04:00
Benjamin Cabé
a6a520da26 drivers: fuel_gauge: remove dead code in set_prop functions
Remove useless assignments to `val` parameter in sbs_gauge_set_prop()
and bq27z746_set_prop(). Since `val` is passed by value, modifying it
has no effect. Also remove unused `tmp_val` variable.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-10-31 20:03:00 -04:00
Cristian Bulacu
72d8814b63 tests: net: route_mcast: Add test for route lookup by interface
Adding test case to validate new added function,
`net_route_mcast_lookup_by_iface`

Signed-off-by: Cristian Bulacu <cristian.bulacu@nxp.com>
2025-10-31 20:01:55 -04:00
Cristian Bulacu
c341838502 net: ip: route: Add support to search mcast route by iface
This commit adds the possibility to check for a multicast route on a
given interface

Signed-off-by: Cristian Bulacu <cristian.bulacu@nxp.com>
2025-10-31 20:01:55 -04:00
Jamie McCrae
2a09063289 cmake: Allow specifying custom VERSION file dependency
Allows applications and projects to specify their own requirements
for the application VERSION file to be re-generated, this fixes an
issue whereby the application git repository is updated with a new
commit but the old commit is still used by a build, users would
need to add a dependency in their application to the git index file

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-10-31 22:41:26 +02:00
Tomasz Chyrowicz
1b50f08ee9 mgmt: Handle slot version equality
If slots have equal version, but a secondary slot is the active one, the
next boot will switch to the primary slot.
Expose this through SMP commands by marking the primary slot as pending.

Signed-off-by: Tomasz Chyrowicz <tomasz.chyrowicz@nordicsemi.no>
2025-10-31 22:41:16 +02:00
Jukka Rissanen
60f83dca7d net: Do not access possibly freed net_pkt
As the net_pkt might have already been sent by net_if_try_send_data()
function, the pkt might already contain garbage data. So do not try
to access if after that send call but remember the used iface and family
and use them to update the statistics.

The issue was seen with qemu_x86_64 and qemu_cortex_a53 when CONFIG_SMP
was enabled.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-10-31 22:41:07 +02:00
Henrik Brix Andersen
6a95243e59 tests: drivers: can: host: apply ruff format and fixups
Apply ruff format and fixups to the CAN host test suite pytest files.

Signed-off-by: Henrik Brix Andersen <henrik@brixandersen.dk>
2025-10-31 22:40:58 +02:00
Martin Hoff
6366bd63af drivers: serial: silabs: fix eusart driver with xg22 soc
This commit introduces a compatibility layer for older EUSART hardware
that lacks the RXTO interrupt. It fix the test uart_async_api when using
xg22 soc.

Signed-off-by: Martin Hoff <martin.hoff@silabs.com>
2025-10-31 22:40:49 +02:00
Martin Hoff
504eb7d39e drivers: serial: silabs: fix eusart driver when parity param is nok
When running uart_elementary on the xg22 SoC, some tests are failing due
to the lack of checks inside the configuration function. This patch adds
a check for the parity parameter.
I've also noticed an error in the ISR function where we check all the
ISR flags and not only the enabled ones. It has no impact but needs to be
changed in order to be accurate.

Signed-off-by: Martin Hoff <martin.hoff@silabs.com>
2025-10-31 22:40:49 +02:00
Martin Hoff
e0fcca52ae dts: arm: silabs: fix missing euart interrupt
This patch adds the missing interrupts for euart peripheral
on xg22 soc.

Signed-off-by: Martin Hoff <martin.hoff@silabs.com>
2025-10-31 22:40:49 +02:00
Declan Snyder
70e45b7039 drivers: spi_mcux_flexcomm: Fix spi slave count check
The current implementation checking for the validity of the spi slave
number is wrong. First of all, there is an off by one error where it
allows SPI_CHIP_SELECT_COUNT value as a valid slave, when really it
should be that value minus one. Secondly, it doesn't take into account
the fact that having software controlled GPIO CS can technically have
any number of slaves on the bus. So fix by finding the max of these two
values and fixing the off by one mistake. Also, for RW612, only one HW
native CS is available due to SOC pinmux limitations.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-10-31 22:40:40 +02:00
Kyle Bonnici
d18c4db7f1 CI: dts-linter: Move package.json to ./scripts/ci
Move package.json and package-lock.json to ./scripts/ci

Signed-off-by: Kyle Bonnici <kylebonnici@hotmail.com>
2025-10-31 22:40:20 +02:00
Mathieu Choplain
02a99c6d4e boards: *: doc: add missing hyphen between "Cortex" and core name
The core name is usually sticked to the Cortex(R) trademark with an hyphen,
as in "Cortex(R)-M0+" rather than "Cortex(R) M0+".

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-10-31 22:40:11 +02:00
Mathieu Choplain
1588a7cf5a boards: *: doc: fix Arm Cortex trademark marker
Cortex is a registered trademark of Arm Limited and should thus be
annotated as (R), not TM. Update documentation of various boards using the
wrong symbol.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-10-31 22:40:11 +02:00
Luca Burelli
40c586fb66 llext: (cosmetic) fix bad file reference in comment
This was moved in 44c7a14 ("llext: add ELF inspection APIs"), but
the comment was not updated.

Signed-off-by: Luca Burelli <l.burelli@arduino.cc>
2025-10-31 22:39:59 +02:00
Carles Cufi
ed60236f76 arch: arm64: Depend on SMP being disabled for single threading
Disabling multithreading is not possible when enabling SMP (logically)
so depend on SMP being disabled to enable
ARCH_HAS_SINGLE_THREAD_SUPPORT.

Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
2025-10-31 22:39:49 +02:00
Etienne Carriere
91b9c3aad8 boards: st: add missing RAM and/or RAM size in board YAML files
Add system flash size and/or RAM size tags in ST boards YAML files
where the information is missing.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-10-31 10:38:25 -04:00
Etienne Carriere
627fa91e42 boards: st: correct RAM and/or Flash size in YAML board description
Fix several RAM size that are wrong regarding what is defined in the
related board device tree.

In many cases, SoC DTSI files have been changed to split internal RAMs
and related boards YAML file was not updated accordingly. This is the
case of H5xx, H7xx

In the case of stm32g081b_eval, polarity bytes are not default enabled
hence the internal SRAM size of 36kB, not 32kB.

Stm32mp135f was wrongly set with 256KB RAM and Flash whereas the board
assigns 256MB for each.

Stm32mp157c_dk2 assigned SRAM1, SRAM2 and SRAM3 to Zephyr hence
providing 320kB of system RAM.

Fix several typos setting RAM size to 786 whereas 768 is expected.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-10-31 10:38:25 -04:00
Jun Lin
62b1e1c28d driver: i2c: npcx: workaround invalid stop condition
The I2C state machine may fail to generate a valid STOP condition.
This may happen when the firmware sets the STOP bit in SMBCTL1 register
approximately half an SMB clock cycle following the last ACK bit in the
transaction.
Note:
  1. This issue is not expected to occur when the core clock runs at
    the default frequency (15 MHz). However, since more applications
    reuquires higher core clock frequency, this commit introduce the
    bypass to prevent the potential risk.
  2. Only NPCXn variant chips require this workaround.

Signed-off-by: Jun Lin <CHLin56@nuvoton.com>
2025-10-31 10:38:04 -04:00
Benjamin Cabé
1e8a5f7dd0 doc: twister: add/move doc for display harness
The display harness initial documentation was a separate, stale (had
references to a personal Github repo), README.rst buried in the
twister/scripts folder.
Move the docs to be a "first class" part of the Twister documentation
alongside other harnesses.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-10-31 10:36:57 -04:00
Jamie McCrae
2eef80996c doc: services: device_mgmt: smp_groups: Add update on settings save
Adds an optional field which has been added to save by subtree

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-10-31 10:36:42 -04:00
Bill Waters
62e0016bf0 boards: infineon: kit_pse84_ai: cmake fix
Fix to the .hex file path. This was breaking
twister runs.

Signed-off-by: Bill Waters <bill.waters@infineon.com>
2025-10-31 10:36:19 -04:00
Albort Xue
151e9b8b24 doc: services: pm: use pm_device_runtime_get in power_domain diagram
Update the power domain flow diagram in doc/services/pm/power_domain.rst
to use the current runtime PM API name pm_device_runtime_get instead of
the older pm_device_get. This keeps the documentation consistent with the
renamed device runtime power management APIs.

Signed-off-by: Albort Xue <yao.xue@nxp.com>
2025-10-31 10:35:54 -04:00
Flavio Ceolin
6c39a27446 doc: vuln: Add CVE under embargo
Add an entry to CVE-2025-9558.

Signed-off-by: Flavio Ceolin <flavio@hubblenetwork.com>
2025-10-31 10:35:03 -04:00
Flavio Ceolin
20210f5c25 doc: release/4.3: Add CVE under embargo
Add information about CVE under embargo.

Signed-off-by: Flavio Ceolin <flavio@hubblenetwork.com>
2025-10-31 10:35:03 -04:00
Flavio Ceolin
debc173612 doc: vuln: Add CVE under embargo
Add an entry to CVE-2025-9557.

Signed-off-by: Flavio Ceolin <flavio@hubblenetwork.com>
2025-10-31 10:35:03 -04:00
Flavio Ceolin
634e1c3062 doc: release/4.3: Add CVE under embargo
Add information about CVE under embargo.

Signed-off-by: Flavio Ceolin <flavio@hubblenetwork.com>
2025-10-31 10:35:03 -04:00
Flavio Ceolin
11f28ab11a doc: vuln: Add CVE under embargo
Add an entry to CVE-2025-9408.

Signed-off-by: Flavio Ceolin <flavio@hubblenetwork.com>
2025-10-31 10:35:03 -04:00
Flavio Ceolin
8c560135b6 doc: release/4.3: Add CVE under embargo
Add information about CVE under embargo.

Signed-off-by: Flavio Ceolin <flavio@hubblenetwork.com>
2025-10-31 10:35:03 -04:00
Fabrice DJIATSA
0e987438b8 tests: net: iface: increase ztest stack size in net.iface.iid.stable
Moving from legacy Mbed TLS crypto to the PSA API may cause some
STM32 platforms or other vendor platforms to fail due to stack overflow.
Increasing the ztest stack size solves this problem.

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2025-10-31 10:34:24 -04:00
Lyle Zhu
d95358e934 Bluetooth: Classic: L2CAP: Reset rx.cid when channel is deleted
rootcause: The dynamic L2CAP channel rx.cid is not reset, it
will be intercepted by the judgment condition of the fixed channel,
directly using the last alloced cid may cause cid conflict.

Co-authored-by: zhenwei fang <fangzhenwei@bytedance.com>
Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-10-31 10:34:04 -04:00
Jukka Rissanen
73315dd73d net: shell: stats: Fix undefined function call
If CONFIG_NET_STATISTICS_PER_INTERFACE is not set, then the
net_shell_print_statistics_all() function was not found and
the compilation was failing.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-10-31 10:33:47 -04:00
Robert Robinson
84dfdedc87 manifest: Update hal_nordic to pull file missing in mdk 8.72.4 release
Update hal_nordic to pull file missing change from mdk 8.72.4 release

Signed-off-by: Robert Robinson <robert.robinson@nordicsemi.no>
2025-10-31 10:23:33 -04:00
Chekhov Ma
f4522490b9 driver: gpio: pca_series: fix pca6416 test issue
There are multiple issues in this driver:
1. gpio_pca_series_part_cfg_pca6416 is not using correct macros
2. gpio_pca_series_interrupt_handler_standard not updating input when
   no interrupt configured

Fixing these issues.

Signed-off-by: Chekhov Ma <chekhov.ma@nxp.com>
2025-10-31 10:23:23 -04:00
Mathieu Choplain
2e998cf17d drivers: usb: udc: stm32: use instance MPS for IN endpoints capabilities
When setting endpoint capabilities, the driver uses the MPS stored in each
instance's configuration for OUT endpoints, but used a hardcoded 1023 for
IN endpoints.

Use the instance MPS when preparing IN endpoints' capabilities too.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-10-31 10:22:29 -04:00
Wojciech Slenska
0468c5fb42 drivers: serial: stm32: don't disable DMA in circular mode
When cyclic mode is enabled, do not disable RX.
This mode ensures continuous availability of RX buffers.

Signed-off-by: Wojciech Slenska <wsl@trackunit.com>
2025-10-31 10:21:47 -04:00
Benjamin Cabé
301b20aae3 include: drivers: edac: add doxygen documentation to edac_synopsys.h
This ensures the vendor-specific API provided in this header file is
fully documented and exposed in our API documentation.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-10-31 10:21:01 -04:00
Benjamin Cabé
52c8f88858 include: edac: use correct full name for edac_synopsys.h include guard
Minor change but ensures the include guard corresponds to the full path
of the file as done elsewhere in the tree.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-10-31 10:21:01 -04:00
Mathieu Choplain
acd7660bcb boards: st: *: add missing space before inline markup in documentation
Add missing space before |reg| or |trade| in documentation of ST boards
which prevents proper rendering.

Also add a few missing spaces in the `stm32wb5mmg` board documentation.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-10-31 10:18:51 -04:00
Mathieu Choplain
0063f15162 boards: st: *: fix USB Type-C trademark marker
USB Type-C is a registered trademark of USB Implementers Forum and should
thus be annotated as (R), not TM. Update documentation of STM32 boards
using the wrong symbol.

Also add a missing space in steval_stwinbx1 board documentation.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-10-31 10:18:51 -04:00
Erwan Gouriou
0f5e03f1fc boards: *: Fix wrong feature identifier for usb_device
`usb device` isn't a valid feature name, fix it, using the new "usbd" tag.
Remove it when not enabled on the board.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2025-10-30 18:40:27 -04:00
Simon Maurer
01a7ed9097 soc: xlnx: zynq7000: move SoC code to common folder
remove duplicate xc7zxxx and xc7zxxxs soc code

Signed-off-by: Simon Maurer <mail@maurer.systems>
2025-10-30 18:39:16 -04:00
Wenxi Xu
503df3e69e drivers: dma: stm32: add null callback checking
Fix the STM32 DMA driver did not check if the optional dma_callback was
set in dma_stm32_configure(). This could lead to a hard fault when an
interrupt occurs and the callback is NULL, even though the API allows
the callback to be omitted.

Fixes #97454
Signed-off-by: Wenxi Xu <xuwenxi0517@gmail.com>
2025-10-30 18:38:39 -04:00
Mathieu Choplain
2e7ad10247 drivers: usb: udc: stm32: use addr_before_status capability
Instead of snooping SETUP packets for SET_ADDRESS request to call the HAL
SetAddress() function manually, mark device with the addr_before_status
capability such that the UDC stack will call udc_stm32_set_address()
before submitting status by itself.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-10-30 18:38:29 -04:00
Ali Hozhabri
7a593ede3e drivers: bluetooth: hci: Fix the issue about the TRNG peripheral instance
Fix the issue regarding passing the TRNG peripheral instance to the driver.

Increase the SYSTEM_WORKQUEUE_STACK_SIZE when CONFIG_BT is set.
According to the log of thread analyzer for beacon sample, 1048 bytes
are needed. So, it's been increased to a safer value.

Signed-off-by: Ali Hozhabri <ali.hozhabri@st.com>
2025-10-30 18:38:02 -04:00
Ali Hozhabri
57ebf79d87 drivers: entropy: Modify the recover_seed_error function for WB0x
Exclude the WB0x series from discarding data 12 times from the RNG data
register.

Add a comment to the recover_seed_error function explaining the reason
for reading and discarding data from the RNG data register 12 times.

Signed-off-by: Ali Hozhabri <ali.hozhabri@st.com>
2025-10-30 18:38:02 -04:00
Ali Hozhabri
d7074f2747 drivers: entropy: Fix non-stop RNG ISR firing for STM32WB09
Fix the TRNG driver issue regarding non-stop ISR firing for STM32WB09 by
clearing RNG_IRQ_SR_ERROR_IRQ flag.

Signed-off-by: Ali Hozhabri <ali.hozhabri@st.com>
2025-10-30 18:38:02 -04:00
Jiafei Pan
04baf84eaf cmake: toolchain: cross_compile: check newlib and picolibc
Add support to check whether Cross Compile toolchain support newlib and
picolibc or not.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-10-30 18:37:44 -04:00
Sebastian Modersohn
8ae4195499 boards: stm32n6570_dk: fix overlapping partitions
* reducing mcuboot partition size so slot_0 and slot_1 can stay where
  they are
* fixes #97850

Signed-off-by: Sebastian Modersohn <im24@msohn.de>
2025-10-30 18:37:17 -04:00
Szymon Janc
973934c1e9 Bluetooth: Host: Fix crash on bt_disable() with limited advertising
When limited advertising is enabled there is pending deleyable work
for timing it out. If in such case struct bt_le_ext_adv is cleared by
memset system will crash on next tick.

Fix this by ensuring work is cancelled before clearing struct
bt_le_ext_adv. Using bt_le_ext_adv_foreach() ensures that this will
be correctly handled with and without extended advertising enabled.

Signed-off-by: Szymon Janc <szymon.janc@codecoup.pl>
2025-10-30 18:37:07 -04:00
William Tambe
45a4f381c7 xtensa: suppress warning on variable used uninitialized
This change suppress the warning:
variable 'ie' is used uninitialized whenever switch default is
taken [-Wsometimes-uninitialized]

Signed-off-by: William Tambe <williamt@cadence.com>
2025-10-30 18:36:49 -04:00
William Tambe
611f381ed9 xtensa: properly compute irq number
This is a miss from:
abeccfec28 xtensa: support for more than 32 interrupts

Signed-off-by: William Tambe <williamt@cadence.com>
2025-10-30 18:36:41 -04:00
Benjamin Cabé
00770f4f38 samples: instrumentation: remove unnecessary include of instrumentation.h
The instrumentation.h header is not needed to compile the
instrumentation sample and it can be misleading for folks to think they
have to include it in their code to use the subsystem, so remove it.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-10-30 18:36:32 -04:00
Benjamin Cabé
2838fb8be5 doc: releases: introduce release notes and migration guide docs for 4.4
This introduces the release notes and migration guide for Zephyr 4.4.0
earlier so that people have a placeholder to start adding content as
they line up pull requests for the 4.4 release.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-10-30 18:36:22 -04:00
Jukka Rissanen
3af17bf8b1 tests: posix: portability: fs: Increase number of fds
The test had too few file descriptors.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-10-30 14:23:46 -04:00
Jukka Rissanen
fe78f4d29a tests: posix: xsi_realtime: Set enough file descriptors
Earlier fix in commit bfd033df81
caused the Posix xsi_realtime test to fail. Set minimum amount
of file descriptors in the test to pass the build assert.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-10-30 14:23:46 -04:00
Jukka Rissanen
79a0dadef3 tests: net: lwm2m_engine: The test needs more fds
Set minimum amount of file descriptors in the test to pass
the tests.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-10-30 14:23:46 -04:00
Jukka Rissanen
0ad1a5ad6a tests: net: dns_resolver: The test needs more fds
Set minimum amount of file descriptors in the test to pass
the tests.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-10-30 14:23:46 -04:00
Allen Zhang
82f419de74 drivers: flash: Fixed the typo in clear_flash_caches
elif should be else

Signed-off-by: Allen Zhang <chunfeng.zhang@nxp.com>
2025-10-30 11:54:03 -04:00
Bartosz Miller
a8bf08bf4e tests: drivers: flash: Add test with buffer size over the bus packet limit
Applicable to flash devices with MSPI controller

Signed-off-by: Bartosz Miller <bartosz.miller@nordicsemi.no>
2025-10-30 15:16:37 +02:00
Pieter De Gendt
ed92ee5064 scripts: Bump ruff to 0.14.2
Update the ruff version to the latest 0.14.2 and update the excluded files
to match with the last checks for linter and formatting issues.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-10-30 15:16:25 +02:00
Khoa Tran
e72107e877 tests: drivers: i2c: Fix incorrect file paths in SCI I2C test support
The current paths to the .overlay and .conf files used for SCI I2C tests
are incorrect, as they include {NORMALIZED_BOARD_QUALIFIERS}, which does
not exist in the actual file names.

This commit corrects the file paths in the test support configuration.

Signed-off-by: Khoa Tran <khoa.tran.yj@bp.renesas.com>
2025-10-30 15:16:13 +02:00
Khoa Tran
141b88ed1d tests: subsys: fs: Update test configuration for Renesas RA
Remove redundant "partition" and "slot1_partition" nodes that are not
needed and conflict with the MRAM device node labeled "mram" on
Renesas RA boards. These conflicts caused build errors.

For the affected board overlays, the SDHC and SDMMC nodes are now
enabled at the board or shield layer, so they no longer need to be
defined in the test configuration.

Signed-off-by: Khoa Tran <khoa.tran.yj@bp.renesas.com>
2025-10-30 15:16:04 +02:00
Ayush Singh
5aa87d48aa dts: vendor: ti: k3-am62-main: Change license to Apache-2
This probably should have been caught much earlier, but well, here we
are. The original license came from the following linux dt that
BeagleBoard.org uses [0]. However, due to differences between linux and
zephyr dt and the fact that zephyr does not yet support most of the
devices on this soc, the only lines same between the two files are the
`status = "disabled";`, and some of the address (not all since things
like GPIO are handled differently). Keeping that in mind, this file
should never have used that license or have TI Copyright.

If it's too late to change the license now, we can probably add this
file to exceptions, since the current license of the file, i.e. GPL-2.0
and MIT should cover all cases where Apache-2 can be used. Again,
apologies since there was no reason for this file to use the dual
license.

[0]:https://github.com/beagleboard/BeagleBoard-DeviceTrees/blob/v6.12.x-Beagle/src/arm64/ti/k3-am62-main.dtsi

Signed-off-by: Ayush Singh <ayush@beagleboard.org>
2025-10-30 15:15:49 +02:00
Allen Zhang
e2c62743ea soc: mcxw2xx: Add clock enablement for flash controller
kCLOCK_Sysctl must be enabled for FLASH_CacheClear,
FLASH_CacheSpeculationControl and FLASH_CheckECC to have an effect.

Signed-off-by: Allen Zhang <chunfeng.zhang@nxp.com>
2025-10-30 15:15:35 +02:00
Allen Zhang
86b346e097 drivers: flash: Added clear_flash_caches function for MCXW2XX
MCXW2XX ROMAPI provide the function FLASH_CacheClear to clear the cache.
The SMSCM is not supported on MCXW2XX platform.

Signed-off-by: Allen Zhang <chunfeng.zhang@nxp.com>
2025-10-30 15:15:35 +02:00
Rubin Gerritsen
499102fc47 soc: nordic: nrf54h: s2ram: Fix compiling with FPU
This commit fixes a change introduced in #97025
where too many definitions where removed.

Fixes issue #98382

Signed-off-by: Rubin Gerritsen <rubin.gerritsen@nordicsemi.no>
2025-10-30 15:15:18 +02:00
Amneesh Singh
f0222a4e17 samples: adc_stream: fix sample filter
io-channels in zephyr,user is required for this sample to compile, so
add that to the filter and remove the redundant ifdef in the source code.

Signed-off-by: Amneesh Singh <amneesh@ti.com>
2025-10-30 15:15:08 +02:00
Jordan Yates
3dc72db57e wifi: nrf_wifi: named MAC address choice
Add a name to the "Wi-Fi MAC address type" choice symbol so that the
default can be updated on a per-board basis.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-10-30 15:14:59 +02:00
Marcin Jelinski
0a9f28fdef modules: nordic: select correct timer for NFCT on nRF54L
Set the appropriate default NFC timer for the nRF54L series SoCs.

Ref: NCSDK-31244

Signed-off-by: Marcin Jelinski <marcin.jelinski@nordicsemi.no>
2025-10-30 15:14:48 +02:00
Guotao Zhang
ec970a635e drivers: bluetooth: h4: Fix check for sufficient buffer size
When alloc the evt buffer,such as the adv report, only compare the
remaining data len, should aslo consider the hdr_len, because the
hdr also copy to alloced buffer.if not consider the hdr, then
hdr + remaining data may larger than alloced buffer, because the
alloced buffer is not enough,then will assert when receive the
remaining data.

Signed-off-by: Guotao Zhang <guotao.zhang@nxp.com>
2025-10-30 15:14:20 +02:00
Jamie McCrae
79faa6af5f doc: releases: release_notes: 4.3: Add new MCUmgr Kconfigs
Lists new Kconfigs for MCUmgr

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-10-30 15:14:10 +02:00
Jamie McCrae
b5c17b29c9 doc: release: migration_guide: 4.3: Add notes on TF-M and MCUboot
Adds notes of changes made to these

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-10-30 15:14:10 +02:00
Carles Cufi
093bb9972c scripts: compliance: Harden the execution of npx
Instead of relying on various exceptions that can happen when one tries
to execute a program that is not installed in the system (typically
FileNotFoundError but sometimes PermissionError), use shutil.which() to
ensure the npx executable is available before running it.

Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
2025-10-30 15:13:53 +02:00
Carles Cufi
cd8e773b32 kernel: events: Depend on multithreading
Kernel events depend on multithreading being enabled, and mixing them
with a non-multithreaded build gives linker failures internal to
events.c. To avoid this, make events depend on multithreading.

```
libkernel.a(events.c.obj): in function `k_event_post_internal':
175: undefined reference to `z_sched_waitq_walk'
events.c:183: undefined reference to `z_sched_wake_thread'
events.c:191: undefined reference to `z_reschedule'
libkernel.a(events.c.obj): in function `k_sched_current_thread_query':
kernel.h:216: undefined reference to `z_impl_k_sched_current_thread_query'
libkernel.a(events.c.obj): in function `k_event_wait_internal':
events.c:312: undefined reference to `z_pend_curr'
```

Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
2025-10-30 15:13:38 +02:00
Qingsong Gou
4bb1c676cc drivers: dma: sf32lb: fix dma compile error
Fix dma clock compile error

Signed-off-by: Qingsong Gou <gouqs@hotmail.com>
2025-10-30 15:13:25 +02:00
Jordan Yates
bfd033df81 modules: nrf_wifi: add missing Kconfig dependency
`ZVFS_OPEN_ADD_SIZE_NRF70_ENABLE_DUAL_VIF` should only exist in the
build if `NRF70_ENABLE_DUAL_VIF`, not for every application in tree.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-10-30 15:13:13 +02:00
Jordan Yates
1d357e042c tests: lib: fdtable: declare the fd used by test
Ensure that the test has a free file descriptor to use.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-10-30 15:13:13 +02:00
Michael Hope
fb01c781b6 samples: led: fix the CH32V003 overlay
The overlay was done before the PWM node was moved under the timer
node, breaking the build. Fix.

Signed-off-by: Michael Hope <michaelh@juju.nz>
2025-10-29 20:32:52 -04:00
Måns Ansgariusson
8c07902a90 tests: kernel: pipe: Add concurrency test for zero-length pipes
This commit adds a new test case to the pipe API concurrency tests to
verify the behavior of zero-length pipes. The test ensures that writing
to a zero-length pipe blocks until data is read, and reading from a
zero-length pipe blocks until data is written—unless the pipe is closed,
reset, or the operation times out.

The test creates two pipes with zero-length buffers and spawns a helper
thread that performs complementary read/write operations. The two threads
use the pipe API as their only synchronization mechanism, validating the
correct blocking and wake-up behavior of zero-length pipes under
concurrent access.

Signed-off-by: Måns Ansgariusson <Mansgariusson@gmail.com>
2025-10-29 20:32:38 -04:00
Raffael Rostagno
14d26b2093 samples: openthread: esp32c6: Add testcase
Add testcase for ESP32-C6 for compiling test.

Signed-off-by: Raffael Rostagno <raffael.rostagno@espressif.com>
2025-10-29 20:31:03 -04:00
Raffael Rostagno
a9eb90a20e soc: esp32c6: Add IEEE802.15.4 MAC setting
Select IEEE802.15.4 MAC option in Kconfig.

Signed-off-by: Raffael Rostagno <raffael.rostagno@espressif.com>
2025-10-29 20:31:03 -04:00
Raffael Rostagno
2909f812a9 west.yml: hal_espressif: Update for ESP32-C6 fix
Update HAL for ESP32-C6 IEEE802.15.4 compile fix.

Signed-off-by: Raffael Rostagno <raffael.rostagno@espressif.com>
2025-10-29 20:31:03 -04:00
Abhinav Kulkarni
c0d1519891 drivers: wifi: nxp: Fixed host sleep issue
Fixed hostsleep issue for IW416 and IW612 socs

Signed-off-by: Abhinav Kulkarni <abhinav.kulkarni@nxp.com>
2025-10-29 20:30:22 -04:00
S Mohamed Fiaz
5828ba5ea1 driver: pwm: pwm_silabs_siwx91x: fix pm actions when PM is enabled
This fix addresses the issue encountered when power management (pm)
is enabled, as the PWM test suites utilize the GPIO driver, which
now incorporates the latest power domain enhancements and requires
CONFIG_POWER_DOMAIN to be enabled. Power domain functionality
manages device power actions such as turning on and off.

Accordingly, the pm device support for the pwm_silabs_siwx91x
driver has been updated to align with the recent power domain
improvements.

Signed-off-by: S Mohamed Fiaz <Fiaz.Mohamed@silabs.com>
2025-10-29 14:29:34 -04:00
Filip Kokosinski
440b0c0915 doc/develop/manifest/external: add Zephelin
Add Zephelin [1], a Zephyr Profiling Library as an external module of the
Zephyr Project.

1: https://github.com/antmicro/zephelin

Signed-off-by: Filip Kokosinski <fkokosinski@antmicro.com>
2025-10-29 20:19:27 +02:00
Benjamin Cabé
20f3508443 doc: releases: Intermediate update for new 4.3 boards/samples/drivers
New boards, drivers, samples, and shields up to RC1 feature freeze

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-10-29 20:19:12 +02:00
Tomas Gudelevičius
e8043a48ac drivers: modem: use pm_device_driver_init() in modem_cellular.c
Remove Device Runtime PM "hack" used for modem cellular driver
initialization and use pm_device_driver_init() instead.

Signed-off-by: Tomas Gudelevičius <tomas.gudelevicius@draeger.com>
2025-10-29 20:19:00 +02:00
Tomasz Leman
45bfe066c7 ipc: intel_adsp_host_ipc: clear tx_ack_pending on PM resume
Fix IPC driver becoming non-operational after power management resume
due to stale tx_ack_pending state from before suspend.

After the IPC service backend refactor (commit cf7e2e63c1), the
intel_adsp_ipc_data structure contains function pointers for
suspend/resume handlers. This prevents using `memset` to clear the
entire structure during initialization, which was previously done in
intel_adsp_ipc_init.

Without clearing tx_ack_pending on resume, if the device enters D3 state
while still waiting for an IPC acknowledgment (e.g., from a previous
test iteration), the driver remains stuck in the waiting state after
resume. This prevents sending any new IPC messages, including the
FW_READY notification after D3 exit.

The fix explicitly clears tx_ack_pending during PM_DEVICE_ACTION_RESUME
to ensure the driver starts in a clean operational state after resume,
regardless of the state before suspend.

Fixes regression introduced in commit cf7e2e63c1

Signed-off-by: Tomasz Leman <tomasz.m.leman@intel.com>
2025-10-29 20:18:41 +02:00
Simon Walz
645e62fb8f tests: lwm2m: add test for senml cbor composite writer
This adds a test for the composite writer with time serialized resource and
resource instance values.

Signed-off-by: Simon Walz <simon.walz@autosen.com>
2025-10-29 20:18:30 +02:00
Simon Walz
fd780ae34e net: lwm2m: fix missing name entries for time-serialized resource instances
The LwM2M SENML JSON/CBOR decoder expects a name entry for every
time-serialized record. While this was already the case for resources,
resource instances were missing their corresponding name entries. This
change ensures consistency by adding name entries for resource instances
as well.

Signed-off-by: Simon Walz <simon.walz@autosen.com>
2025-10-29 20:18:30 +02:00
Jamie McCrae
20be667f16 mgmt: mcumgr: grp: settings_mgmt: Part revert settings save change
Partially reverts commit 7d2fb6c013,
it was originally thought that this commit added a method of saving
one specific key using the value that the device already has set,
but has been found to actually save the value that the user has
provided, bypassing the current value that the device has, which is
not compliant with the settings mgmt protocol, therefore remove
this change and it will need to be reworked in future to function
properly by saving one specific value from the device's current
configuration, not a user-specified value

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-10-29 20:18:20 +02:00
Sudan Landge
2408b808d2 tests: arm: exclude mps2/an385 on user stack test
Temporarily disable running the user stack tests on mps2/an385 to
unblock ci issues reported in #98494.

Signed-off-by: Sudan Landge <sudan.landge@arm.com>
2025-10-29 20:17:58 +02:00
Chaitanya Tata
05899583fd ipc: icmsg: Increase default stack size
For nRF71 Wi-Fi a higher stack size is needed.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-10-29 13:48:33 +02:00
Filip Kokosinski
8fb76723a5 doc/releases: add instrumentation subsystem notes for release 4.3
This commit adds release notes for the 4.3 release for the instrumentation
subsystem.

Signed-off-by: Filip Kokosinski <fkokosinski@antmicro.com>
2025-10-29 13:48:22 +02:00
Cristian Bulacu
536db93e8b samples: net: openthread: border_router: disable wifi blob for rw612
This commit disables monolithic wifi functionality for rw612 platform as
CI environement does not use binary blobs

Signed-off-by: Cristian Bulacu <cristian.bulacu@nxp.com>
2025-10-29 13:48:11 +02:00
Cristian Bulacu
90204a005a boards: nxp: rw612: Add openthread netif parameter
This commit aims to allow CI to be executed for samples that are
dependent on openthread requirement

Signed-off-by: Cristian Bulacu <cristian.bulacu@nxp.com>
2025-10-29 13:48:11 +02:00
Cristian Bulacu
9049964e52 samples: net: openthread: border_router: Fix compile issues
This commits fixes OpenThread border router application compile issues
generated by latest upstream changes

Signed-off-by: Cristian Bulacu <cristian.bulacu@nxp.com>
2025-10-29 13:48:11 +02:00
Joel Schaller
ba5b5debc8 linker_script: Remove some remaining SUBALIGN in iterable/linker sections
The zephyrproject-rtos#91219 missed some entries when doing the clean-up.
This removes some of remaining SUBALIGN entries in the iterable sections.
Fixes CMake Warning:
zephyr_linker_section(NAME ...) given unknown arguments: SUBALIGN 4

Signed-off-by: Joel Schaller <joel.schaller16@gmail.com>
2025-10-29 13:48:01 +02:00
Anas Nashif
bd3865cd36 doc: release: move tagging schema under release process
Move this section to a more appropriate section under the release
process.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-10-29 13:47:50 +02:00
Anas Nashif
1d8d8ce014 doc: release: release process tweaks/fixes
- remove duplication of text talking about release phases.
- fix release cadence, 4-month -> 6-month
- Remove reference to Linux, right now, we are not even close, was at
  some point inspired by, but we moved on.
- Minor language fixes and clarifications.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-10-29 13:47:50 +02:00
Anas Nashif
06ef9fafe5 doc: release: move merge criteria under release process
Merge criteria does not beling under project role, move it under release
process.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-10-29 13:47:50 +02:00
Pieter De Gendt
ca37494f09 include: zephyr: nvmem: Add retval doxygen to read/write functions
Document the return values for the read/write NVMEM functions.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-10-29 13:47:30 +02:00
Jukka Rissanen
a02414a9bc net: zperf: Use %zd when printing size_t variable
Wrong printf format was using for size_t variable which caused
compiler warning and a failure.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-10-29 13:47:21 +02:00
S Mohamed Fiaz
ff2e9b5836 modules: wiseconnect: kernel sleeptimer bug fix siwx91x
The fix resolves the drift test failure as part of kernel
timer behaviour and timer api test suite.
Moved sleeptimer-related source files to RAM using zephyr_code_relocate
when CONFIG_SILABS_SISDK_SLEEPTIMER is enabled, and removed duplicate
listing from PMGR backend.Updated Kconfig to select SRAM_VECTOR_TABLE
and CODE_DATA_RELOCATION_SRAM for the sleeptimer service.

Signed-off-by: S Mohamed Fiaz <Fiaz.Mohamed@silabs.com>
2025-10-29 11:47:10 +00:00
dependabot[bot]
67bc635f62 build(deps): bump starlette from 0.48.0 to 0.49.1 in /doc
Bumps [starlette](https://github.com/Kludex/starlette) from 0.48.0 to 0.49.1.
- [Release notes](https://github.com/Kludex/starlette/releases)
- [Changelog](https://github.com/Kludex/starlette/blob/main/docs/release-notes.md)
- [Commits](https://github.com/Kludex/starlette/compare/0.48.0...0.49.1)

---
updated-dependencies:
- dependency-name: starlette
  dependency-version: 0.49.1
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-10-29 13:47:01 +02:00
Lyle Zhu
354a63f401 bluetooth: classic: HFP_AG: Fix early SCO connection req sending
When creating the audio connection, the SCO connection request will be
sent before the response "OK" to AT command "AT+BCS" is issued.

It causes the issue that the HFP HF cannot response the SCO connection
request with the correct codec. Then the SCO connection cannot be
established properly.

Put all processing into the same context, thus avoiding non-sequential
execution caused by the different priorities of different threads.

Add a flag `BT_HFP_AG_AT_PROCESS` to flag the AT command is being
processed.

When the flag `BT_HFP_AG_AT_PROCESS` is set, put the pending
executions into temp list `tx_submit_pending`. After the AT response
`OK` or `ERROR` has been sent, move the pending executions from
`tx_submit_pending` to `tx_pending`.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-10-29 11:44:52 +02:00
Khoa Nguyen
7e74b833e8 manifest: Update hal_renesas revision to get the correct ofs1 label
Update hal_renesas revision to obtain the correct
`option_setting_ofs1_sec` label for RA4E2,

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-10-29 11:44:43 +02:00
Vinayak Kariappa Chettimada
ce89a157e3 samples: Bluetooth: central_hr: Fix prj_minimal.conf use
Fix prj_minimal.conf as the project configuration and not as
the extra configuration for the sample.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2025-10-29 11:44:31 +02:00
Anas Nashif
303af992e5 style: fix 'if (' usage in cmake files
Replace with 'if(' and 'else(' per the cmake style guidelines.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-10-29 11:44:13 +02:00
Mario Paja
f0da1d79ff samples: i2s: output: fix nucleo_f767zi pllsai clock config
This change fixes PLLSAI clock configuration clock on
nucleo_f767zi board

Signed-off-by: Mario Paja <mariopaja@hotmail.com>
2025-10-29 10:33:12 +02:00
Khoa Nguyen
195008b365 dts: arm: renesas: ra: Correct address and move sdram-ctrl to ra8x1
- Correct address and size for sdram-controller node
- Move sdram-controller node from r7fa8d1xh.dtsi to ra8x1.dtsi,
since all RA8x1 devices have this hardware IP

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-10-29 10:33:01 +02:00
Cristian Bulacu
ecb5db6c92 samples: net: openthread: border_router: Fix packet forwarding bug
This commit fixes an issue introduced in #97531. Multicast routes added
by application are now set to have a prefix length of 16 bits instead of
128. This will allow multicast routing to all IPv6 addresses from those
groups.

For the OpenThread multicast listener callback, route length will be set
to 128 bits, as a MLD event is expected when an address is subscribed.
Route lookup has been removed since one will always be found as the
application registers multicast routes with same scope, but with a
smaller prefix length.

Fixed issue regarding packet forwarding and BBR state. Previously, code
was covering only the case wehn BBR was secondary and packet was
received from backbone interface. A secondary BBR should not forward a
multicast packet from OT interface to backbone interface and vice versa.

Improved unicast forwarding function to return from the beginning if the
packet has a multicast destination.

Signed-off-by: Cristian Bulacu <cristian.bulacu@nxp.com>
2025-10-29 10:32:42 +02:00
Pisit Sawangvonganan
74b3617003 doc: rst: fix typo in (boards, doc, samples)
Utilize a code spell-checking tool to scan for and correct spelling errors
in `.rst` files within the `boards`, `doc`, and `tests` directories.

Signed-off-by: Pisit Sawangvonganan <pisit@ndrsolution.com>
2025-10-29 10:32:30 +02:00
Pisit Sawangvonganan
3678acf40d conf: fix typo in (samples, tests)
Utilize a code spell-checking tool to scan for and correct spelling errors
in `.conf` files within the `samples` and `tests` directories.

Signed-off-by: Pisit Sawangvonganan <pisit@ndrsolution.com>
2025-10-29 10:32:19 +02:00
Tim Schrader
a0096b719c doc: update KConfig style guidelines
Add/update guidelines on how KConfig files should be written and organized
by identifying a common style currenlty used in most areas of the project
and formalizing it.

This should provide an aid for future merge request, code reviews and
refactorings to enable the acting party to better enforce consistency
in KConfig files.

Signed-off-by: Tim Schrader <tim.schrader92@gmail.com>
2025-10-28 20:30:39 -04:00
WenBin Zhang
a43f48b15e twister: Enhanced Filtering Command Help
Collect filter commands into a single location and sort them in the
order: arch, vendor, platform, pattern, filter, tag. This enhances
the readability of help information and reduces the time spent
searching for filter command options.

Signed-off-by: WenBin Zhang <freey7955@gmail.com>
2025-10-28 20:27:20 -04:00
WenBin Zhang
30e5ea8eea twister: Enhanced device-testing Command Help
Collect device-testing commands into a single location to enhance
readability of help information and reduce the time spent
locating device-testing options.

Signed-off-by: WenBin Zhang <freey7955@gmail.com>
2025-10-28 20:27:20 -04:00
Thorsten Klein
d58bc085bd scripts: west_commands: rework run_tests.py
reworked run_tests.py script:
- removed obsolete arguments from commands called by this script
- avoid code duplication by using a for-loop

Signed-off-by: Thorsten Klein <thorsten.klein@bshg.com>
2025-10-28 20:22:55 -04:00
Thorsten Klein
54ebd72ed9 scripts: west_commands: add pyproject.toml file
added pyproject.toml config file which allows to set paths for tools
like mypy or pytest. With this config file it becomes possible to
directly run those tools in a local zephyr tree.

Signed-off-by: Thorsten Klein <thorsten.klein@bshg.com>
2025-10-28 20:22:55 -04:00
Michael Hope
184ee44620 drivers: clock_control: fix the ch32v003/006 build
A recent commit added support for the CH32V30x/20x PLL multiplier. The
code is protected by a `IS_ENABLED(...)` but uses a constant that
doesn't exist for the CH32V00x, breaking the build.

Tested by building samples/basic/blinky for the ch32v003evt and linkw.

Signed-off-by: Michael Hope <michaelh@juju.nz>
2025-10-28 20:20:49 -04:00
Zackery Backman
6edfdb99f4 doc: develop: manifests: external: add wolfSSL
Add documentation to external module section for adding wolfSSL to Zephyr

Signed-off-by: Zackery Backman <backman23@live.com>
2025-10-28 20:20:29 -04:00
Mohamed Moawad
3559dd93ea drivers: spi: dw: Skip version detection on aux-reg platforms
The version register is not accessible through aux-reg interface,
So skip it entirely on platforms with aux-reg device tree property.

Signed-off-by: Mohamed Moawad <moawad@synopsys.com>
2025-10-28 20:17:26 -04:00
Jiafei Pan
6930d71447 west.yml: update hal_nxp
To fix tpm building issue on imx9131:
west build -p -b frdm_imx91/mimx9131
tests/drivers/counter/counter_basic_api -T drivers.counter.basic_api

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-10-28 20:16:24 -04:00
Tim Pambor
084609a7bb drivers: spi: shell: fix deprecation warning
Remove deprecated delay parameter from SPI DT macro.

Signed-off-by: Tim Pambor <tim.pambor@codewrights.de>
2025-10-28 20:11:39 -04:00
Martin Hoff
f0cbba0f8e dts: arm: silabs: fix siwg917 default nwp power state
This patch fixes a bug where the siwg917 SoC didn't enter deep sleep
even when the CONFIG_PM Kconfig option was selected, due to the
default power state of the network coprocessor.

Users should only need to activate the CONFIG_PM Kconfig option
when they want to enable power management and be able to deep
sleep by default.

Signed-off-by: Martin Hoff <martin.hoff@silabs.com>
2025-10-28 08:47:22 -07:00
Jérôme Pouiller
f3e72b094f drivers: dma: siwx91x: Fix DMA_ADDR_ADJ_NO_CHANGE w/ memory destination
GPDMA does not support DMA_ADDR_ADJ_NO_CHANGE with a memory buffer. This
feature is required fro the SPI driver. Hopefully, SPI driver is the only
user of this feature.

Therefore, this commit introduces a hack for SPI. When the user want to
ignore the Rx data (= when he pass a NULL pointer for the Rx buffer),
rather than overwriting the destination in a loop, we just disable the rx
DMA.

This introduce a limitation: since Rx DMA stop early, any following Rx
request will start earlier than expected. Therefore, this patch breaks
cases with interleaved Rx buffers. In other words, the NULL buffer must be
the last one.

Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
2025-10-28 08:46:48 -07:00
Jérôme Pouiller
e515c414a8 drivers: spi: siwx91x: Fix compatibility with gpdma
Because of limitation of gpdma, DMA Rx won't run if user doesn't specify
destination buffer.

Thus, the DMA Rx may stop before the end of the full transaction. So, wait
on DMA Tx instead.

Then, the SPI data won't be consumed by the DMA. We need to properly reset
the fifo before to start a new transaction (it is better to ensure we start
with a clean state before every transaction).

Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
2025-10-28 08:46:48 -07:00
Jérôme Pouiller
42eff40bdc drivers: dma: siwx91x: Fix DMA_ADDR_ADJ_NO_CHANGE w/ memory source
GPDMA does not support DMA_ADDR_ADJ_NO_CHANGE with a memory buffer. This
feature is required for the SPI driver. Hopefully, SPI driver is the only
user of this feature.

Therefore, this commit introduces a hack for SPI. When the user request an
Rx transaction, rather than copying content of mosi_overrun parameter, it
configures the DMA to fill the destination memory (with either 0s or 1s).
Obviously, this only works if mosi_overrun is 0x00 or 0xFF. Hopefully, none
will need any other value.

Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
2025-10-28 08:46:48 -07:00
Jérôme Pouiller
b359d5d29b drivers: dma: siwx91x: Simplify variables naming
Since the single-linked list management is well localized, the variable
names can now be abbreviated a bit.

Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
2025-10-28 08:46:48 -07:00
Jérôme Pouiller
2fa6e07eef drivers: dma: siwx91x: Simplify descriptors list creation
The management of the single-linked list was made in various places:
  - RSI_GPDMA_BuildDescriptors()
  - after sys_mem_blocks_alloc()
  - at the end of the loop

Centralize it at the end of the loop.

Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
2025-10-28 08:46:48 -07:00
Aksel Skauge Mellbye
bca090958b soc: silabs: silabs_s2: Fix radio interrupt init condition
Radio interrupts were only initialized if CONFIG_ARM_SECURE_FIRMWARE=y,
but should be initialized independently of security configuration.

Move initialization from soc_prep_hook() to soc_early_init_hook(),
there is no reason to configure interrupts earlier.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-10-28 08:45:31 -07:00
Jamie McCrae
396466ed17 scripts: snippets: Update to use jsonschema instead of pykwalify
Updates the schema and script to use jsonschema

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-10-28 17:43:02 +02:00
Krzysztof Chruściński
182a6c62b1 drivers: timer: nrf_rtc: Kconfig clean up
Remove redundant enabling of NRF_RTC_TIMER in SoC specific files
and replace it with default y in the NRF_RTC_TIMER definition.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-10-28 17:42:38 +02:00
Sebastian Głąb
6ec763474f soc: nordic: nrf54h: Disable S2RAM on cpurad
On nrf54h20 only cpuapp supports s2ram low power cpu state.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
2025-10-28 17:42:27 +02:00
Yasushi SHOJI
3e4e1c52fb drivers: timer: Improve wording for AMD Xilinx PS TTC support
Clarify that the AMD Xilinx PS Triple Timer Counter (TTC) is used in both
Zynq UltraScale+ MPSoC (ZynqMP) and Versal platforms. Update the device
tree binding description and Kconfig accordingly.

Also, rephrase the Kconfig help text to fix grammar issues and improve
clarity.

Signed-off-by: Yasushi SHOJI <yashi@spacecubics.com>
2025-10-28 17:42:17 +02:00
Łukasz Stępnicki
a825e014d8 arch: riscv: core: vector_table alignement fix
For RISCV vector table needs to be aligned depending on
CONFIG_ARCH_IRQ_VECTOR_TABLE_ALIGN. This was missing
when using LTO making issues when direct ISR were in use.

Signed-off-by: Łukasz Stępnicki <lukasz.stepnicki@nordicsemi.no>
2025-10-28 17:41:48 +02:00
Benjamin Cabé
afa7b8c9e6 doc: _scripts: fix SIM905 linter rule in gen_devicetree_rest.py
replace str.split() with an actual set of strings

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-10-28 17:41:38 +02:00
Benjamin Cabé
c5e1b72b54 doc: _extensions: apply ruff format
Documentation extensions are often edited so bite the bullet and apply
`ruff format` on them and stop excluding them in ruff-excludes

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-10-28 17:41:38 +02:00
Alain Volmat
47d521fb38 tests: drivers: build_all: video: add STM32MP13 dcmipp
Add test compilation for the STM32MP13 platform as part of
drivers.video.stm32_dcmipp.build since this allow to test
build the driver when STM32_DCMIPP_HAS_PIXEL_PIPES is not
defined.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-10-28 17:41:28 +02:00
Alain Volmat
f547fb1af5 video: dcmipp: put Pipe1 / pipe2 caps within preproc if statement
Correct compilation error due to usage of DCMIPP_PIPE1 / DCMIPP_PIPE2
on platform which do not have pixel pipes by putting those caps
under #if defined(STM32_DCMIPP_HAS_PIXEL_PIPES)
Put also DCMIPP_VIDEO_FORMAT_CAP macro inside since this is only used
for AUX / MAIN pipes.

Fixes: 126aaf6b72 ("video: dcmipp: expose dcmipp caps for all 3 pipes.")

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-10-28 17:41:28 +02:00
Johann Fischer
8db71e3064 doc: remove "zephyr,usb-device" from chosen properties documentation
Chosen property "zephyr,usb-device" can be used with the deprecated
legacy USB device stack, but actually was never used in the tree. There
are no plans to use it in the future. Remove it from the documentation,
as there seems to be some misunderstanding and the property appears in
the board's DTS without any use or benefit.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-10-28 17:41:18 +02:00
Anas Nashif
8b0f33af04 MAINTAINERS file: make doc/build/dts unique to devicetree area
Exclude doc/build/dts from build system area.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-10-28 17:41:07 +02:00
Alberto Escolar Piedras
0528554720 drivers/ethernet/eth_native_tap: Fix use of deprecated kconfig
In 200b886d3c a deprecated kconfig
option was brought back into the driver.
Let's fix it.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-10-28 17:40:51 +02:00
Szymon Janc
6dfad60de7 tests: bt: host: mock z_sys_post_kernel
unit tests needs mocking for z_sys_post_kernel.

Signed-off-by: Szymon Janc <szymon.janc@codecoup.pl>
2025-10-28 17:40:42 +02:00
jhan bo chao
c0d973d170 drivers/espi: rts5912: handler all port 80 data until fifo is empty
The rts5912's port 80 has a FIFO. In the ISR (Interrupt Service Routine),
extract the FIFO data until the FIFO is empty, otherwise port 80 data will
be lost.

Signed-off-by: jhan bo chao <jhan_bo_chao@realtek.com>
2025-10-28 11:52:58 +02:00
Nulliu Z
a7f3c1b5e3 ib: multi_heap: fix out-of-bounds array access
Add bounds check to prevent accessing heaps array with index=-1
when the address parameter is NULL or too small.

Return NULL in such cases to match the API specification.

Signed-off-by: Nulliu Z <zophaisina@outlook.com>
2025-10-28 11:52:46 +02:00
Rob Barnes
5ce408b647 kernel: assert if k_current_get is called pre-kernel
k_current_get is not valid pre-kernel. It will return an invalid dummy
thread or invalid memory. The invalid memory case can occur when
CURRENT_THREAD_USE_TLS is enabled.

Assert in k_current_get when called pre-kernel so offending code may be
identified.

k_is_pre_kernel is moved up in kernel.h to avoid needing a prototype for
k_is_pre_kernel.

Signed-off-by: Rob Barnes <robbarnes@google.com>
2025-10-28 11:52:34 +02:00
Rob Barnes
ef844cee55 kernel: make k_is_pre_kernel safe to call from user mode
Make k_is_pre_kernel safe to call from user mode. Since
z_sys_post_kernel memory is not accessible to user threads, calling
k_is_pre_kernel would result in a memory access fault.

This change adds k_is_user_context guard. It can be assumed the system
is post-kernel if k_is_user_context is true.

Signed-off-by: Rob Barnes <robbarnes@google.com>
2025-10-28 11:52:34 +02:00
Tom Hughes
2487fe9a4d include: linker: Set eh_frame size to 0 when C++ exceptions are disabled
When building Zephyr with CONFIG_CPP_EXCEPTIONS=n and linking against a
libc++ built with support for exceptions, lld complains that the
eh_frame-related symbols are missing:

ld.lld: error: undefined symbol: __eh_frame_start
ld.lld: error: undefined symbol: __eh_frame_end
ld.lld: error: undefined symbol: __eh_frame_hdr_start
ld.lld: error: undefined symbol: __eh_frame_hdr_end

libunwind handles the zero size:

76e71e05d2/libunwind/src/AddressSpace.hpp (L520-L526)
76e71e05d2/libunwind/src/EHHeaderParser.hpp (L61-L64)

Signed-off-by: Tom Hughes <tomhughes@chromium.org>
2025-10-28 11:52:22 +02:00
Elmo Lan
2e9f29a67c MAINTAINERS: add maintainer for Realtek EC api and driver
This commit adds maintainers of Realtek EC to maintainers.yml

Signed-off-by: Elmo Lan <elmo_lan@realtek.com>
2025-10-28 11:52:12 +02:00
Etienne Carriere
751711accc include: zephyr: sys: correct sys_test_bit() and friends description
Correct the documentation of sys_test_bit() and its derivative helper
functions (listed below) since these return a bit mask value instead of
an essentially boolean value as previosuly described.

In tree implementation do conform with that: the result of these
functions are always implicitly tested against being 0 or a non-zero
value.

Helper functions which documentation is modified are sys_test_bit(),
sys_test_and_set_bit(), sys_test_and_clear_bit(), sys_bitfield_test_bit(),
sys_bitfield_test_and_set_bit() and sys_bitfield_test_and_clear_bit().

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-10-28 11:52:01 +02:00
Nicolas Pitre
b0d4580422 tests: lib: lockfree: Fix MPSC test consumer node return logic
The MPSC test consumer was incorrectly handling node returns to
producer free queues. It called spsc_acquire() without checking the
return value, then unconditionally called spsc_produce(). When the
SPSC free queue was full, spsc_acquire() would return NULL and not
increment the acquire counter, causing spsc_produce() to silently do
nothing (it only produces if acquire > 0). This resulted in lost nodes.

At least on QEMU, a 4-CPU configuration is needed for this bug to manifest.
Producers put all nodes in flight simultaneously with the single consumer
unable to keep up, causing frequent SPSC queue full conditions.

The Fix: Loop on spsc_acquire() until it succeeds before calling
spsc_produce(). This ensures nodes are always successfully returned to
producer queues.

Added board overlay for qemu_cortex_a53/smp to enable 4-CPU testing,
which reproduces the issue and validates the fix.

Signed-off-by: Nicolas Pitre <npitre@baylibre.com>
2025-10-28 11:51:42 +02:00
Jakub Rzeszutko
3ae4dfe490 shell: fix deadlock in the bypass function
Previously, the bypass() function was called while the shell mutex
was still held, preventing the use of shell APIs (e.g. shell_print())
inside the bypass context.

This change unlocks the shell mutex before invoking bypass() and
locks it again afterwards, restoring proper shell context handling
and preventing potential deadlocks.

Issue fixed by: roni1234321

Fixes #97722

Signed-off-by: Jakub Rzeszutko <jakub.rzeszutko@verkada.com>
2025-10-28 11:51:18 +02:00
Sylvio Alves
a4588c0bae tests: crypto_aes: add espressif support boards
Add ESP32 devkits in testcases.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2025-10-28 11:51:04 +02:00
Sylvio Alves
8aa8040401 tests: crypto: add AES cipher tests
Add AES test cases for ECB, CBC, CCM, and GCM modes with standard
test vectors from FIPS-197 and NIST specifications.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2025-10-28 11:51:04 +02:00
Sylvio Alves
654e4f51db tests: crypto: hash: expand test coverage for multiple SHA algorithms
Refactor hash tests to support SHA-224, SHA-256, SHA-384, and SHA-512
algorithms with a unified test vector framework.

This improves test coverage and makes it easier to verify hardware
crypto drivers that support multiple SHA variants.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2025-10-28 11:51:04 +02:00
Sylvio Alves
998d9ab04f drivers: crypto: expand mbedTLS shim driver capabilities
Select SHA24, SHA256 and SHA384 as part of the shim driver.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2025-10-28 11:51:04 +02:00
Sylvio Alves
4b4332ac18 drivers: crypto: return -ENOTSUP when needed
Make sure all crypto driver returns proper error
when feature is not supported.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2025-10-28 11:51:04 +02:00
Marek Matej
8ed51c0bdc boards: ESP32 related boards documentation fix
Providing documentation update for ESP32 related boards that was missed
during the first round.

Signed-off-by: Marek Matej <marek.matej@espressif.com>
2025-10-28 11:50:54 +02:00
Kyle Bonnici
c581297f2c Compliance check: no dts-linter installed
This PR fixes incorrect error message when dts-linter is not installed
and provide a proper message instead of:

`Failed to parse dts-linter JSON output: ...`

Signed-off-by: Kyle Bonnici <kylebonnici@hotmail.com>
2025-10-28 11:50:44 +02:00
Lyle Zhu
d3bae1d442 tests: Bluetooth: SDP: Wait for DUT connect event before send any cmd
There is a corner case found that the ACL connected event may be
printed when script is sending shell command by calling function
`shell.exec_command()`. The echo of shell command will mix with the
ACL connected event message. The received message cannot be
recognized by the function `shell.exec_command()`. It caused the
timeout exception reported by the function `shell.exec_command()`.

Before sending any shell commands, check the DUT connected event
after the connection is established on script side.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-10-28 11:50:26 +02:00
Pan Gao
40256a919d net: l2: wifi: Fix btwt_setup command parameter count
command btwt_setup maximum support max 12 optional parameters.

Signed-off-by: Pan Gao <pan.gao@nxp.com>
2025-10-28 11:50:02 +02:00
Yongxu Wang
b6e7a754d8 drivers: timer: mcux_lptmr: Fix prescaler bypass from devicetree
The previous implementation had a logical error where the prescaler
could never be bypassed due to incorrect use of BIT() macro:

This patch fixes the issue by:

1. Remove BIT() wrapper from LPTMR_PRESCALER macro to use raw
   devicetree property value
2. Update bypass logic to check for zero value explicitly
3. Map DTS values to hardware register values correctly:
   - prescale_glitch_filter = 0 -> bypass prescaler
   - prescale_glitch_filter = n -> divide by 2^n,
     using register value (n-1)

The devicetree semantic is now:
- prescale_glitch_filter = <0>: No prescaling (bypass)
- prescale_glitch_filter = <1>: Divide by 2
- prescale_glitch_filter = <2>: Divide by 4
- prescale_glitch_filter = <3>: Divide by 8
- And so on...

Signed-off-by: Yongxu Wang <yongxu.wang@nxp.com>
2025-10-28 11:49:53 +02:00
Gerard Marull-Paretas
6807fa35a1 drivers: i2c: i2c-priv: document i2c_map_dt_bitrate
Document the helper function.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2025-10-28 11:49:33 +02:00
Gerard Marull-Paretas
4dd6354a3b drivers: i2c: i2c-priv: drop logging
i2c_map_dt_bitrate uses LOG_ERR, however, one must define (or declare) a
log module where to sink the logs. Since this sits on a header file,
it creates a hidden include order dependency: you must include
i2c-priv.h after registering or declaring a log module on your driver.
Even worse, you are force to use logging in your drivers even if you do
not want to!

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2025-10-28 11:49:33 +02:00
Jamie McCrae
603e4df64d scripts: ci: check_compliance: Fix not checking CMakeLists.txt files
Fixes an oversight of only checking files that are exactly named
CMakeLists.txt - this includes the directory name, so that it
actually checks any file in the tree with this name

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-10-28 11:49:12 +02:00
Erwan Gouriou
5a71080638 boards: stm32n6570_dk: Clean up non-ASCII characters
Cf documentation guidelines specific note.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2025-10-28 11:49:03 +02:00
Erwan Gouriou
9096739a9f boards: stm32n6570_dk: Add link to Zephyr computer vision application
Put a link to the newly available Zephyr based People detection
application.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2025-10-28 11:49:03 +02:00
Khoa Nguyen
bde6bdd168 drivers: flash: Fix Kconfig style for Renesas RA Flash-HP Kconfig
Fix Kconfig style for Renesas RA Flash-HP Kconfig

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-10-28 11:48:44 +02:00
Alberto Escolar Piedras
14bc6564bf tests: drivers: counter: maxim_ds3231: Add missing assert print param
Add a missing assert print parameter.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-10-28 11:48:19 +02:00
Pieter De Gendt
169a92e255 docs: security: vulnerabilities: Add CVE 2025 section title
A section title for CVE reported in 2025 was missing.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-10-28 11:48:07 +02:00
Marek Matej
79f26e4bba boards: espressif: esp32_devkitc: Duplicit record
Remove duplicit string from list of supported peripherals.

Signed-off-by: Marek Matej <marek.matej@espressif.com>
2025-10-28 11:47:58 +02:00
David Leach
4ea4262ab8 samples: usb: uvc: fix target sample filters for board specific overlays
Recent addition of UVC Video encoder added sample targets to the sample
without the proper filter to ensure twister didn't try to automatically
build the sample target.

Not all boards have the zephyr_h264enc and zephyr_h264enc in their
device tree.

Fixes #98275

Signed-off-by: David Leach <david.leach@nxp.com>
2025-10-28 11:47:49 +02:00
Benjamin Cabé
be7c2e81cd scripts: gen_boards_catalog.py: add verbose flag to Twister
Pass verbose flag to Twister to get better insights into what boards are
being built and see progress.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-10-28 11:47:40 +02:00
Chris Friedt
b6d45e1def testsuite: coverage: use correct path to fnmatch.h
The minimal libc does not include `fnmatch.h` in its default search path.

This causes an issue when running coverage in CI as shown here.
https://github.com/zephyrproject-rtos/zephyr/actions/runs/18839500380/\
job/53748166725

That would technically be fixed with #97855 as well.

Testing Done:
```
west twister -c -p qemu_x86/atom -s kernel.pending.minimallibc --coverage\
 --coverage-tool gcovr
```

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-10-28 11:47:31 +02:00
Jamie McCrae
0ffef90a01 tests: ipc: ipc_session: Correct name from sample to test
This wrongly displayed in CI as a sample failing, when it is a
test and not a sample, this changes the name to have test in it

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-10-27 16:26:24 -04:00
Jamie McCrae
dd5a3f1a3e dts: vendor: nordic: nrf5340: Fix SRAM partitioning
Uses the correct way to partition memory as per the linux binding,
also fixes names which were not compliant with the zephyr
devicetree guidelines

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-10-27 16:26:24 -04:00
Jamie McCrae
f1e18c5e92 dts: vendor: nordic: nrf91: Fix SRAM partitioning
Uses the correct way to partition memory as per the linux binding,
also fixes names which were not compliant with the zephyr
devicetree guidelines

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-10-27 16:26:24 -04:00
Jamie McCrae
50b1732770 dts: arm: nordic: Add ranges and address/size cells to SRAM nodes
Allows these nodes to be partitioned

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-10-27 16:26:24 -04:00
Vinayak Kariappa Chettimada
533ef58157 Bluetooth: Controller: Fix use-after-release in lll_scan/lll_scan_aux
Fix use-after-release in lll_scan/lll_scan_aux when using
mayfly_enqueue to defer execution of the offset calculation
using ull_sched_mfy_after_cen_offset_get().

Apply suggestion from @Copilot

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2025-10-27 16:18:48 -04:00
Qingsong Gou
d0ab7a2d55 dts: bindings: clock_control: fix sf32lb clock error
fix clock id definition and clock ids

Signed-off-by: Qingsong Gou <gouqs@hotmail.com>
2025-10-27 16:17:03 -04:00
David Jewsbury
55af2824dc drivers: mspi_dw: Add CONFIG_MSPI_DW_DDR
Dual data rate isn't always supported so this
config enables/disables the relevant code in
the driver.

Signed-off-by: David Jewsbury <david.jewsbury@nordicsemi.no>
2025-10-27 16:15:58 -04:00
David Jewsbury
4bf6a75628 drivers: mspi_dw: Edit core disable to after PM init
There is a scenario where a Bus fault occurs as the
power management isn't initialised yet and the core
is attempted to be turned off via the ssienr register.
This commit edits this so the core register is written
to after the initialisation of the power management.

Signed-off-by: David Jewsbury <david.jewsbury@nordicsemi.no>
2025-10-27 16:15:58 -04:00
Erik Andersson
69bfd434e1 drivers: i2c_stm32_v2: fix assert in i2c event isr
For systems where the CPU / NVIC bus are considerably
faster than the peripheral bus used for I2C, there is
a risk that the isr handler returns before I2C controller
had time to clear its interrupt status flags

This would cause immediate re-entry to isr handler
which begins read from ISR register.
During time it take to re-enter and read from ISR register,
flags had time to be cleared
The isr handler expects that a flag is set, and in this case
when its not, an assert is triggered

The solution here is to make a dummy read from the ISR register before
returning from isr handler, this forces CPU to wait as long as needed
to ensure all writes to the I2C peripheral are completed

Fixes issue #97904

Signed-off-by: Erik Andersson <erian747@gmail.com>
2025-10-27 16:15:44 -04:00
Andrzej Głąbek
70fe961223 drivers: mspi_dw: Use uint32_t for dummy_bytes field
Since the driver allows transfer lengths up to `UINT16_MAX + 1` bytes,
and additionally the `dummy_bytes` field includes bytes sent to provide
wait cycles on the bus, the type of this field must be `uint32_t`,
otherwise it can be overflowed for RX transfers close to the maximum.

Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
2025-10-27 16:15:30 -04:00
Alberto Escolar Piedras
8fb6cb7537 tracing: ctf: Fix arguments for socket tracing functions (again)
Zephyr's socklen_t was changed in
c546c1cad1
to be uint32_t instea of size_t.
Let's fix accordingly the prototypes which expect it.

Note this was already fixed in
37ff1b254f
But it was reverted in
d849ab1263

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-10-27 16:14:50 -04:00
Alberto Escolar Piedras
dc930905d5 tests: i2c_ram: Fix assert message
Being pedantic, the second parameter to zassert_ok() is supposed to be
a literal format specifier string. (Just as for printf()). Not
directly a variable string to be printed. Let's fix it.

Fixes this build warning:
`warning: format not a string literal and no format arguments`

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-10-27 16:14:15 -04:00
Jukka Rissanen
ec3bcd3930 net: tcp: Close all connections when interface goes down
If the network interface goes down, close all TCP connections
that are bound to that interface. The reasoning here is that we
need a way to remove IP address from the interface and it might
not be possible if there is a TCP socket that is bound to that address.
If the interface comes back on, we might get the same IP address in
which case the socket closure was not really needed but it is not
possible to know in advance.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-10-27 07:32:28 -04:00
Jukka Rissanen
1f5c285279 net: tcp: Allow immediate connection tear down
If the network interface goes down, then we do not have any time
to tear down TCP connection gracefully because there is no more
a connection to send data to. In this case the TCP connection is
forcefully closed without going into FIN_WAIT_1 state.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-10-27 07:32:28 -04:00
Duy Nguyen
a0eb093734 drivers: i2c: Move merge buffer to driver data for RA i2c_sci_b
The merge buffer was previously declared as a static variable, causing it
to be shared across all I2C instances and risking data corruption when
used concurrently. Move the buffer into the driver data to make it
instance-specific and avoid race conditions.

Signed-off-by: Duy Nguyen <duy.nguyen.xa@renesas.com>
2025-10-27 07:32:20 -04:00
Hake Huang
0ce50a24c9 tests: drivers: gpio: GPIO_INT_DISABLE may not support
GPIO_INT_DISABLE may not support in some platform. skip it.

fixes: #98130

Signed-off-by: Hake Huang <hake.huang@oss.nxp.com>
2025-10-27 07:32:04 -04:00
Kyle Bonnici
36e5038f2e Fix compliance check: output > 64KB + annotations
Bump up dts-linter to 0.3.1 to fix issue when json output is not flushed
to stdout before dts-linter exits.

Bump up dts-linter to 0.3.2 to address undefined in annotation
messages

Signed-off-by: Kyle Bonnici <kylebonnici@hotmail.com>
2025-10-27 07:31:45 -04:00
Jonas Berg
5d4459f563 docs: Describe the different shield interfaces
Add descriptions of the most popular shield interfaces.

I moved the section on shield activation to the top of the page.

Signed-off-by: Jonas Berg <jonas.s.t.berg@gmail.com>
2025-10-27 11:00:17 +02:00
Chaitanya Tata
fa0d62393f manifest: hostap: Pull fix for SoftAP start
Due to the recent nRF70 driver changes, the driver ops are removed from
config, but few functions in hostap still depend on that, so, pull the
fix for hostap driver ops.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-10-27 10:59:49 +02:00
Lars Segerlund
fc813d9556 Bluetooth: Controller: Handle overlapping CIG and ACL
If the CIG and ACL overlap each other when the CIS is starting
zephyr will assert on negative time, so fit this special case.

Signed-off-by: Lars Segerlund <lrsu@demant.com>
2025-10-27 10:59:38 +02:00
Pavel Vasilyev
1a4f113d14 bluetooth: mesh: adv_ext: Fix scheduling with multiple relay adv sets
When multiple relay adv sets are used, the bt_mesh_adv_send function
calls bt_mesh_adv_relay_ready which should distribute relayed
advertisements across all relay adv sets.

Until the submitted relay adv set work is started, the ADV_FLAG_ACTIVE
is not set. Therefore, next call to bt_mesh_adv_send will try to
re-submit the same relay adv set work, instead of picking up another
relay set which is actually free and ready to send an advertisement.

This commit adds a check that checks if the adv set work is already
pending to be executed. And if so, schedule_send returns false to make
bt_mesh_adv_relay_ready pick next relay adv set.

This shouldn't brake advertising because once adv set is done
transmitting advertisment, it will pick up a next one.

The ADV_FLAG_PROXY check is added to do re-submit for adv set which was
used for proxy advertisement since we need to prioritize mesh messages
over proxy advertisements when those are running on the same adv set.

Signed-off-by: Pavel Vasilyev <pavel.vasilyev@nordicsemi.no>
2025-10-27 10:59:23 +02:00
Lingao Meng
bed07a5ebf tests: bluetooth: audio: fix bsim timing
move extending advertising start after periodic adv.

Signed-off-by: Lingao Meng <menglingao@xiaomi.com>
2025-10-27 10:59:23 +02:00
Lingao Meng
d59cd2e368 Bluetooth: Host: Fix Periodic Advertising random address update
update random address when periodic adv enabled.

Signed-off-by: Lingao Meng <menglingao@xiaomi.com>
2025-10-27 10:59:23 +02:00
Lingao Meng
f902f2ab0d Bluetooth: Host: Fix unnecessary random address update
The `bt_le_ext_adv_update_param` will set new random address when option
not select `BT_LE_ADV_OPT_USE_IDENTITY`, But `bt_le_ext_adv_start` will
also set random address again.

This will be affect bluetooth mesh, after this change, will ensure address
only change once for every advertising.

Signed-off-by: Lingao Meng <menglingao@xiaomi.com>
2025-10-27 10:59:23 +02:00
Johan Hedberg
433893e54b release: Zephyr 4.3.0-rc1
Update the version to v4.3.0-rc1.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
Signed-off-by: Johan Hedberg <johan.hedberg@silabs.com>
2025-10-25 10:34:18 -04:00
Biwen Li
e11e459b23 drivers: firmware: scmi: add CONFIG_ARM_SCMI_CHAN_SEM_TIMEOUT_USEC
Add option CONFIG_ARM_SCMI_CHAN_SEM_TIMEOUT_USEC
for users to change default timeout value.
Different platform has different delay time when
scmi agent get scmi response from scmi platform.

Signed-off-by: Biwen Li <biwen.li@nxp.com>
2025-10-25 15:59:49 +03:00
Emil Gydesen
a4450edd0f doc: releases: Add entry for bt_bap_unicast_client_unregister_cb
Add entry for new function
bt_bap_unicast_client_unregister_cb.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-10-25 15:59:40 +03:00
Emil Gydesen
02d0e96bf1 Bluetooth: BAP: Add bt_bap_unicast_client_unregister_cb
Add bt_bap_unicast_client_unregister_cb to unregister BAP
unicast client callbacks. This is required for unittests
to clean up between runs.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-10-25 15:59:40 +03:00
TaiJu Wu
d4d51dc062 kernel: Replace redundant switch_handle assignment with assertion
The switch_handle for the outgoing thread is expected to be NULL
at the start of a context switch.
The previous code performed a redundant assignment to NULL.

This change replaces the assignment with an __ASSERT(). This makes the
code more robust by explicitly enforcing this precondition, helping to
catch potential scheduler bugs earlier.

Also, the switch_handle pointer is used to check a thread's state during a
context switch. For dummy threads, this pointer was left uninitialized,
potentially holding a unexpected value.

Set the handle to NULL during initialization to ensure these threads are
handled safely and predictably.

Signed-off-by: TaiJu Wu <tjwu1217@gmail.com>
2025-10-25 15:59:29 +03:00
Anas Nashif
abeef13a2f manifest: update percepio sha with fix for condvar
Fix k_condvar arguments in percepio module.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-10-25 15:59:19 +03:00
Anas Nashif
d849ab1263 tracing: fix various style issues
run clang-format and fix various checkpatch issues.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-10-25 15:59:19 +03:00
Anas Nashif
fc4db3dd1d tracing: ctf: do not use signal as an argument
Violates coding guideline rule 21.2

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-10-25 15:59:19 +03:00
Anas Nashif
3af076db59 snippets: add semihost tracing snippet
Add semihost tracing to easy generating tracing data for existing
applications/tests.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-10-25 15:59:19 +03:00
Anas Nashif
21e44ea8d4 tracing: systemview: add tracing for mail boxes
Add missing hooks for mail boxes.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-10-25 15:59:19 +03:00
Anas Nashif
a6dee79282 tracing: systemview: add tracing for events
Add missing hooks for events.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-10-25 15:59:19 +03:00
Anas Nashif
59a3fe86d3 tracing: systemview: add tracing for stacks
Add missing hooks for stack objects.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-10-25 15:59:19 +03:00
Anas Nashif
539308f336 tracing: systemview: add tracing for message queues
Add missing hooks for message queues.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-10-25 15:59:19 +03:00
Anas Nashif
63582601f2 tracing: ctf: add event support
Add hooks for events.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-10-25 15:59:19 +03:00
Anas Nashif
61dd33445e tracing: ctf: add mbox support
Add hooks for mail boxes.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-10-25 15:59:19 +03:00
Anas Nashif
1823d4cf18 tracing: ctf: thread extended
Add more thread related tracing functions.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-10-25 15:59:19 +03:00
Anas Nashif
906db71942 tracing: ctf: add poll
Add hooks for poll object.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-10-25 15:59:19 +03:00
Anas Nashif
ba453c1337 tracing: ctf: add work queues
Add hooks for work queues.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-10-25 15:59:19 +03:00
Anas Nashif
e23d663b85 tracing: ctf: add condition variables
Add hooks for condition variables.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-10-25 15:59:19 +03:00
Anas Nashif
26fa18ef2d tracing: ctf: add tracing for message queues
Add hooks for message queues.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-10-25 15:59:19 +03:00
Anas Nashif
9e99699167 tracing: ctf: add tracing for memory slabs
Add hooks for memory slabs.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-10-25 15:59:19 +03:00
Anas Nashif
7b1e72474c tracing: ctf: add missing return value for mutex_unlock
Add missing return for mutex_unlock.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-10-25 15:59:19 +03:00
Anas Nashif
afef4b6a17 tracing: add semihosting backend
Using semihosting on supported architectures (arm, xtensa, riscv) it now
possible to generate tracing giles easily and without being restricted
by size.
Using qemu for example, it is now possible to generate the tracing file
simply by running:

 west build -p -b mps2/an385 tests/kernel/msgq/msgq_api/ \
 	-t run --snippet semihost-tracing

This will generate a tracing file in the build/ directory which can be
viewed with babeltrace.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-10-25 15:59:19 +03:00
Anas Nashif
a5728add11 kernel: msgq: return once to simplify tracing
Return once simplifying tracing macros.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-10-25 15:59:19 +03:00
Mohamed Azhar
c4f640c4bc boards: microchip: sam_e54_xpro: add led and button dts node
Adds the led and button dts nodes for sam_e54_xpro board

Signed-off-by: Mohamed Azhar <mohamed.azhar@microchip.com>
2025-10-25 15:59:08 +03:00
Mohamed Azhar
a809fb9e9a dts: arm: microchip: add gpio dts node for SAM D5x/E5x SoC series
Updates the Port DTS nodes to use microchip gpio g1 driver.
Updates the file structure as per the ordering information.

Signed-off-by: Mohamed Azhar <mohamed.azhar@microchip.com>
2025-10-25 15:59:08 +03:00
Fan Wang
4af34c49f4 board: ambiq: Add sdio0 aliases for apollo510_evb board.
Added sdhc0 aliases for apollo510_evb board.

Signed-off-by: Fan Wang <fan.wang@ambiq.com>
2025-10-25 10:47:28 +03:00
Fan Wang
ca3b80cf5b drivers: sdhc: Support SD Card for Apollo510
This commit support SD Card for Apollo510 SDIO

Signed-off-by: Fan Wang <fan.wang@ambiq.com>
2025-10-25 10:47:28 +03:00
Fan Wang
adb6461d8a drivers: sdhc: optimize cache related coding
Add buf_in_nocache to check buffer cacheability.

Signed-off-by: Fan Wang <fan.wang@ambiq.com>
2025-10-25 10:47:28 +03:00
Fan Wang
d770690176 drivers: sdhc:Updated sdhc driver for apollo510&apollo510L
Deleted PM device macro definition

Updated SDIO base for apollo510 and apollo510L

Signed-off-by: Fan Wang <fan.wang@ambiq.com>
2025-10-25 10:47:28 +03:00
Mario Paja
2290b95135 samples: i2s: output: add nucleo_f767zi
Add nucleo_f767zi board in samples/drivers/i2s/output

Signed-off-by: Mario Paja <mariopaja@hotmail.com>
2025-10-25 10:47:19 +03:00
Mario Paja
fc1c386a3c drivers: i2s: stm32 sai add support for stm32f7xx series
STM32F7xx series shares several DMA configurations with
the other platforms. These changes aim to enable platform
specific DMA configuration and align them to other platforms.

Signed-off-by: Mario Paja <mariopaja@hotmail.com>
2025-10-25 10:47:19 +03:00
Mario Paja
f1ceef58b7 dts: st: f7: add sai1 nodes
This change introduces SAI1 A/B nodes to STM32F7xx series

Signed-off-by: Mario Paja <mariopaja@hotmail.com>
2025-10-25 10:47:19 +03:00
Felix Wang
b5a1bff81d tests: drivers: counter: counter_basic_api: stm support
Add STM device tree macro in devices array
to enable test.

Signed-off-by: Felix Wang <fei.wang_3@nxp.com>
2025-10-25 10:47:09 +03:00
Felix Wang
659eccf5a3 drivers: clock_control: Configure STM clock
1.Add "mux-1-dc-0-div" and "mux-2-dc-0-div" property
 in mc_cgm device tree for STM clock divider setting
 and set these properties in frdm_mcxe31b.dts
2.Enable STM peripheral clock in mc_cgm_clock_control_on
 function
3.Support to get STM frequency from mc_cgm_get_subsys_rate
 function
4.Configure STM clock in mc_cgm_init function

Signed-off-by: Felix Wang <fei.wang_3@nxp.com>
2025-10-25 10:47:09 +03:00
Felix Wang
f3054437c2 dts: arm: nxp: Add STM device tree info
1. Add clocks property for stm_0 and stm_1
2. Set stm_0  status okay for frdm_mcxe31b board dts

Signed-off-by: Felix Wang <fei.wang_3@nxp.com>
2025-10-25 10:47:09 +03:00
Felix Wang
3621caaca6 drivers: Counter: STM Support on Zephyr
1.Add nxp,stm.yaml dts bindings
  2.Provide counter driver based on FTM driver from mcux-sdk-ng.

Signed-off-by: Felix Wang <fei.wang_3@nxp.com>
2025-10-25 10:47:09 +03:00
Gerard Marull-Paretas
a115cb3847 boards: coredevices: add pebble 2 duo
Add board for Pebble 2 Duo. Most peripherals are supported, however,
some upstream changes are needed to take full benefit of some.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2025-10-25 10:46:56 +03:00
Farsin Nasar V A
c01f86481f tests: drivers: pwm: Add SAM E54 test support for TCC
Added overlay files for sam_e54_xpro TCC nodes
Added sam_e54_xpro platform allow in testcase.yaml.
Added an extra scenario to testcase.yaml

Signed-off-by: Farsin Nasar V A <farsin.nasarva@microchip.com>
2025-10-25 10:46:47 +03:00
Abderrahmane JARMOUNI
4f7d982b60 boards: stm32h750b-dk: add ST-Link GDB Server runner
Add support for the ST-Link GDB Server runner to be able to debug
STM32H750B-DK apps, including those running from external flash.
Update the board's documentation accordingly.

Signed-off-by: Abderrahmane JARMOUNI <git@jarmouni.me>
2025-10-25 10:46:38 +03:00
Abderrahmane JARMOUNI
3cc9a843e8 scripts: west runners: ST-LINK GDB Server: add external-init cmd
When debugging boards with external Flash, to make it accessible for
read and write by the debugger, we need the --external-init option
together with --extload <file_path> option.
It allows the ST-LINK GDB server to make external memory accessible
after reset without any need for the app to set it up.
The external memory must be memory mapped and directly accessed because
normal memory read/write is used by gdb.

Signed-off-by: Abderrahmane JARMOUNI <git@jarmouni.me>
2025-10-25 10:46:38 +03:00
Yong Cong Sin
e8a4b9e303 shell: modules: devmem: support 64-bit read & write
Add support for 64-bit devmem operations for 64-bit devices.

Signed-off-by: Sergii Vystoropskyi <vistorop@meta.com>
Signed-off-by: Yong Cong Sin <ycsin@meta.com>
Signed-off-by: Yong Cong Sin <yongcong.sin@gmail.com>
2025-10-25 10:46:27 +03:00
Yong Cong Sin
df1cb88eec arch: arc: add sys_write64/sys_read64 functions
Added sys_read64 and sys_write64 functions for 64-bit memory
operations when building for 64-bit.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
Signed-off-by: Yong Cong Sin <ycsin@meta.com>
Signed-off-by: Yong Cong Sin <yongcong.sin@gmail.com>
2025-10-25 10:46:27 +03:00
Robin Kastberg
aebc427540 iar: linker_script: Parse LD style INPUT specifications
Add support for LD-style file specifications in the
IAR generator for
`zephyr_linker_section_configure(INPUT`

Signed-off-by: Robin Kastberg <robin.kastberg@iar.com>
2025-10-25 10:46:18 +03:00
Benjamin Cabé
010a7e3765 include: doc: fix trivial doxygen warnings
Fix incorrect/unbalanced usage of backticks in a bunch of headers
causing doxygen warnings.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-10-25 10:46:08 +03:00
TOKITA Hiroshi
cf76e4b16b manifest: Update hal_gigadevice to support CMSIS6
The register names of NVIC have been changed in CMSIS6,
so updates are required to match this.

Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@gmail.com>
2025-10-25 10:45:49 +03:00
Muhammed Asif
b0341e44f5 boards: microchip: pic32cx_sg61_cult: Add support for pinctrl
Added the pinctrl entry in the supported section of the board.

Signed-off-by: Muhammed Asif <muhammed.asif@microchip.com>
2025-10-25 10:45:38 +03:00
Muhammed Asif
41e7be1313 soc: microchip: pic32cx_sg: Adds the pinctrl header
Adds the pinctrl_soc.h file for parsing the pinctrl
macros in device tree.

Signed-off-by: Muhammed Asif <muhammed.asif@microchip.com>
2025-10-25 10:45:38 +03:00
Muhammed Asif
72cb0b2393 dts: arm: microchip: pic32cx_sg: Add pincontrol nodes
Adds the pinctrl node and encapsulates the port nodes within
the pinctrl node for pic32cx sg series of socs.

Signed-off-by: Muhammed Asif <muhammed.asif@microchip.com>
2025-10-25 10:45:38 +03:00
Muhammed Asif
a812f3285b west.yml: Update west.yml for updating hal directory
Update west.yml for adding the pincontrol definition in
hal_microchip

Signed-off-by: Muhammed Asif <muhammed.asif@microchip.com>
2025-10-25 10:45:38 +03:00
Keith Packard
046232a649 west: Sync picolibc with SDK 0.17.4
This updates the version of picolibc to match that used by SDK 0.17.4. In
the Zephyr picolibc fork, that's marked with the zephyr-sdk-0.17.4 tag now,
which is on the zephyr-sdk-0.17 branch.

Changes since the previous version which impact using the module:

 * machine/arm: Disable exception tables in ARM string asm code
 * cmake: Silence messages about core-isa.h
 * Correct return type of __non_atomic_*_ungetc functions
 * Delete obsoleted _syslist.h

Signed-off-by: Keith Packard <keithp@keithp.com>
2025-10-25 10:45:23 +03:00
Jiafei Pan
8ea7b114a6 modules: lvgl: fix build warning for print format
Fix the following building warning:
modules/lvgl/lvgl_shell.c:62:41: warning: format '%u' expects argument
of type 'unsigned int', but argument 3 has type 'size_t' {aka 'long
unsigned int'} [-Wformat=]

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-10-24 20:19:17 -04:00
Winteri Wang
077b41d198 soc: imx93: a55: add missing stdint header
Without sdtint.h in soc.h, compiling failure might occur in
some cases.

Signed-off-by: Winteri Wang <dongjie.wang@nxp.com>
2025-10-24 20:19:17 -04:00
Winteri Wang
3bb88d3f3c driver: mucx_lcdifv3: support both full and partial refresh
If the framebuffer size is same as the full screen, full refresh
is applied. Otherwise, partial refresh is applied.

Signed-off-by: Winteri Wang <dongjie.wang@nxp.com>
Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
Signed-off-by: Ruoshan Shi <ruoshan.shi@nxp.com>
2025-10-24 20:19:17 -04:00
Winteri Wang
0da5142e99 boards: nxp: add shield of 7inch DSI LCD(C) for FRDM_IMX93
The panel is 7inchi DSI LCD on i2c bus.
Also added display into feature list.

Signed-off-by: Winteri Wang <dongjie.wang@nxp.com>
Signed-off-by: Ruoshan Shi <ruoshan.shi@nxp.com>
2025-10-24 20:19:17 -04:00
Winteri Wang
25b2de3b07 driver: display: add waveshare dsi panel driver support
Added waveshare dsi panel driver. It is on I2C bus.

Signed-off-by: Winteri Wang <dongjie.wang@nxp.com>
Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
Signed-off-by: Ruoshan Shi <ruoshan.shi@nxp.com>
2025-10-24 20:19:17 -04:00
Winteri Wang
66e878bcc5 soc: imx93: enable mipi dsi
Add mipi dsi instance to soc dtsi.

Signed-off-by: Winteri Wang <dongjie.wang@nxp.com>
Signed-off-by: Ruoshan Shi <ruoshan.shi@nxp.com>
2025-10-24 20:19:17 -04:00
Ruoshan Shi
b815f5f481 drivers: mipi dsi: Update dsi nxp dwc driver to support i.MX93 A55
Updated dsi nxp dwc driver and enabled runtime mmio configuration.

Signed-off-by: Ruoshan Shi <ruoshan.shi@nxp.com>
Signed-off-by: Winteri Wang <dongjie.wang@nxp.com>
Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-10-24 20:19:17 -04:00
Ruoshan Shi
a541647a6e drivers: mipi dsi: Add dsi nxp dwc driver support
Added mipi dsi nxp dwc driver support

Signed-off-by: Ruoshan Shi <ruoshan.shi@nxp.com>
2025-10-24 20:19:17 -04:00
Winteri Wang
4e070e2647 soc: imx93: enable mcux lcdifv3
Add lcdifv3 instance to soc dtsi.

Signed-off-by: Winteri Wang <dongjie.wang@nxp.com>
2025-10-24 20:19:17 -04:00
Winteri Wang
a13c3f001b driver: mcux_lcdifv3: add mcux_lcdifv3 driver support
Added mcux_lcdifv3 driver and enabled runtime mmio configuration.

Signed-off-by: Winteri Wang <dongjie.wang@nxp.com>
Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
Signed-off-by: Ruoshan Shi <ruoshan.shi@nxp.com>
2025-10-24 20:19:17 -04:00
Winteri Wang
2ea7fb8e12 [nxp toup] soc: imx93: enable imx93 mediamix
Add mediamix instance to soc dtsi.

Signed-off-by: Winteri Wang <dongjie.wang@nxp.com>
2025-10-24 20:19:17 -04:00
Winteri Wang
8432f0123f driver: mcux_mediamix: add mcux_mediamix driver support
Added mcux_mediamix driver and enabled runtime mmio configuration.

Signed-off-by: Winteri Wang <dongjie.wang@nxp.com>
2025-10-24 20:19:17 -04:00
Winteri Wang
a1d76b2572 soc: imx93: a55: initialize video pll
Setup video pll with fixed 400MHz.

Signed-off-by: Winteri Wang <dongjie.wang@nxp.com>
2025-10-24 20:19:17 -04:00
Winteri Wang
6cfc76ffbf drivers: clock: ccm_rev2: add imx93 common clocks set support
Setup most clocks with common_clock_set_freq().
PLL and mux are preset.

Signed-off-by: Winteri Wang <dongjie.wang@nxp.com>
Signed-off-by: Ruoshan Shi <ruoshan.shi@nxp.com>
2025-10-24 20:19:17 -04:00
Camille BAUD
3b2d8e944d dts: bflb: Add and enable PSRAM controller
Adds PSRAM controller node and enable it on bl61x

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-10-24 20:19:06 -04:00
Camille BAUD
b75a846ad0 divers: memc: Add BL61x PSRAM controller
Driver for BL61x's PSRAM controller

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-10-24 20:19:06 -04:00
Brett Peterson
4301e69f29 tests: drivers: spi: spi_loopback: pse84 support
- Adding pse84 overlay files for the spi_loopback test

Signed-off-by: Brett Peterson <brett.peterson@infineon.com>
2025-10-24 20:17:57 -04:00
Brett Peterson
b25251e632 tests: drivers: spi: spi_loopback: kit_psc3m5_evk support
- Adding kit_psc3m5_evk overlay for the spi_loopback test

Signed-off-by: Brett Peterson <brett.peterson@infineon.com>
2025-10-24 20:17:57 -04:00
Brett Peterson
8e4e766c09 drivers: spi: add psc3 and pse84 support
- Updating spi_ifx_cat1_pdl driver to support psc3 and pse84 devices

Signed-off-by: Brett Peterson <brett.peterson@infineon.com>
2025-10-24 20:17:57 -04:00
Tomas Barak
34fa5ea3ad tests: dmic_api: support mcxn9xx boards
- add mcxn9xx boards overlay to support 2 channels tests

Signed-off-by: Tomas Barak <tomas.barak@nxp.com>
2025-10-24 20:17:20 -04:00
Tomas Barak
e82bbb6b03 tests: dmic_api: configure the parameters with Kconfig
- add Kconfig parameters for sample bit width and number of channels
- remove the conditional compilation from main.c to support the Kconfig
  configuration
- BYTES_PER_SAMPLE need to correspond to BIT_WIDTH

Signed-off-by: Tomas Barak <tomas.barak@nxp.com>
2025-10-24 20:17:20 -04:00
Tomas Barak
71a51d384d samples: dmic: Add sample bit width configuration
- in order to support different bit widths introduce a Kconfig parameter
  SAMPLE_BIT_WIDTH used in the main.c - default is 16 bits
- for platforms with NXP micfil peripheral, default is 32 bits
- BYTES_PER_SAMPLE needs to correspond to BIT_WIDTH

Signed-off-by: Tomas Barak <tomas.barak@nxp.com>
2025-10-24 20:17:20 -04:00
Tomas Barak
2366f18772 samples: dmic: enable on mcxn9xx boards
- add overlays for frdm_mcxn947 and mcxn_n9xx_evk boards in order to
  enable micfil for the dmic sample

Signed-off-by: Tomas Barak <tomas.barak@nxp.com>
2025-10-24 20:17:20 -04:00
Henrik Brix Andersen
58a334f2f9 scripts: pylib: twister: hardwaremap: add Tigard support
Add support for the Tigard multi-protocol hardware hacking tool from
SecuringHardware.com.

More information available at https://github.com/tigard-tools/tigard

Signed-off-by: Henrik Brix Andersen <henrik@brixandersen.dk>
2025-10-24 20:17:04 -04:00
Jukka Rissanen
f778646cfb manifest: Update net-tools to the latest
Update net-tools project to the latest version.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-10-24 20:16:49 -04:00
Jukka Rissanen
d491422f6b MAINTAINERS: Mark net-tools as maintained
The net-tools is actively maintained and fixes are welcomed
so mark the project as maintained in the maintainers file.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-10-24 20:16:49 -04:00
Benjamin Cabé
2d153c87e6 include: tracing: doxygen coverage and cleanup
Gets tracing API to 100% coverage as well as some wordsmithing to
improve readability.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-10-24 23:07:48 +03:00
Benjamin Cabé
d2fc3385f1 doc: doxygen: show global _track_list_k_xxx variables in Doxygen
This makes for a not so pretty regex, so there might be better options,
meanwhile this ensures that what are effectively API symbols are
properly documented and visible in the API documentation.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-10-24 23:07:48 +03:00
Stephan Linz
64bf18299a tests: can: api: changing the test thread priority
The test thread and the system workqueue have the same priority,
mostly some specific CAN driver threads a lower preemptive priority,
so it is a bit arbitrary whether the workqueue cleans up the send
context before the next send.

Signed-off-by: Stephan Linz <linz@li-pro.net>
2025-10-24 23:07:37 +03:00
Bill Waters
b35a32b8ae drivers: watchdog: add support for Infineon PSE84 device
Update the driver to support the PSE84 device

Signed-off-by: Bill Waters <bill.waters@infineon.com>
2025-10-24 23:07:28 +03:00
Tim Pambor
473d90ba62 west.yml: Bump TF-M to include fixes for stm32h5
Bump TF-M to fix a linker error and address several warnings
when compiling for STM32H5.

Signed-off-by: Tim Pambor <tim.pambor@codewrights.de>
2025-10-24 23:07:16 +03:00
Kamil Krzyżanowski
1b84618e33 drivers: timer: stm32_lptim: Support all LPTIM instances
The LPTIM timer driver previously had hardcoded assumptions about
using LPTIM1 or LPTIM3, which prevented it from working with other
LPTIM instances like LPTIM2, LPTIM4, LPTIM5, and LPTIM6.

This change makes the driver work with any LPTIM instance by:

1. Adding lptim_enable_autonomous_mode() function that dynamically
   detects which LPTIM instance is in use and enables autonomous
   mode for instances that support it (LPTIM1, LPTIM3, LPTIM4).
   LPTIM2, LPTIM5, LPTIM6 do not support autonomous mode.

2. Adding lptim_freeze_during_debug() function that handles debug
   freeze configuration for all LPTIM instances across different
   APB buses:
   - LPTIM1: APB1_GRP1, APB3_GRP1, or APB7_GRP1
   - LPTIM2: APB1_GRP1, APB1_GRP2, APB3_GRP1, or APB4_GRP1
   - LPTIM3: APB1_GRP2, APB3_GRP1, or APB4_GRP1
   - LPTIM4: APB3_GRP1 or APB4_GRP1
   - LPTIM5: APB3_GRP1
   - LPTIM6: APB3_GRP1

Both functions use DT_REG_ADDR() to compare the base address of the
configured LPTIM instance at compile time, ensuring zero runtime
overhead.

Tested on STM32U5A5 with all four LPTIM instances (LPTIM1-4).

Signed-off-by: Kamil Krzyżanowski <kamnxt@kamnxt.com>
2025-10-24 23:07:05 +03:00
Valerio Setti
26ca2cfd6c drivers: entropy: nrf5: add dependency on MULTITHREADING
The driver internally uses semaphores which are only available if
CONFIG_MULTITHREADING is enabled in the build.

Signed-off-by: Valerio Setti <vsetti@baylibre.com>
2025-10-24 23:06:47 +03:00
Valerio Setti
25a71f3972 modules: mbedtls: let CSPRNG_AVAILABLE select ENTROPY_GENERATOR
It might happen that some boards have "zephyr,entropy" node set, but under
the hood the driver is not available (ex: entropy_bt_hci not being
available because CONFIG_BT_HOST is not enabled in the build).

This commit changes the behavior so that:
1. if "zephyr,entropy" is set in the DT then CONFIG_CSPRNG_AVAILABLE get
   enabled;
2. CONFIG_CSPRNG_AVAILABLE selects CONFIG_ENTROPY_GENERATOR
3. if there really is a driver available then CONFIG_ENTROPY_HAS_DRIVER
   will be enabled by that driver;
4. CONFIG_ENTROPY_HAS_DRIVER selects CONFIG_CSPRNG_ENABLED;
4. Mbed TLS can consume the CONFIG_CSPRNG_ENABLED information to
   decide whethere to enable CONFIG_MBEDTLS_PSA_CRYPTO_EXTERNAL_RNG or
   the legacy CONFIG_MBEDTLS_PSA_CRYPTO_LEGACY_RNG.

Signed-off-by: Valerio Setti <vsetti@baylibre.com>
2025-10-24 23:06:47 +03:00
Aymeric Aillet
b4556ea923 doc: update SDK supported architectures
Architecture list comes directly from SDK readme
This list is accurate since SDK 0.17.1

Signed-off-by: Aymeric Aillet <aymeric.aillet@iot.bzh>
2025-10-24 13:29:15 -04:00
Aymeric Aillet
ea1f394b22 doc: centralizes doc for installing SDK for Linux
- rename ubuntu to linux for sdk install
- redirect duplication to linux sdk install guide

Signed-off-by: Aymeric Aillet <aymeric.aillet@iot.bzh>
2025-10-24 13:29:15 -04:00
Tony Han
18d8ee51de boards: microchip: sam: enable nodes for GMAC0 to sama7g54_ek dts file
Enable gmac0, gmac0_mdio and gmac0_phy nodes.

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-10-24 13:28:18 -04:00
Tony Han
a6a686a259 boards: microchip: sam: remove extra new lines from sama7g54_ek.dts
Remove extra new lines to satisfy the requirement of DevicetreeLinting.

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-10-24 13:28:18 -04:00
Tony Han
9b66f72191 drivers: ethernet: sam_gmac: update for support RGMII mode
Update to use the RGMII mode which is supported by SAMA7G54.

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-10-24 13:28:18 -04:00
Tony Han
4f75a702a5 soc: microchip: sam: configure the clocks for sama7g5 GMAC0
Configure the generic clocks to 125MHz for GMAC0.

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-10-24 13:28:18 -04:00
Tony Han
ed4348dca5 soc: microchip: sam: update MMU for sama7g5 GMAC0
Enable strong ordered access to the GMAC0 registers.

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-10-24 13:28:18 -04:00
Tony Han
284d623780 dts: microchip: sam: add nodes for GMAC0 to sama7g5.dtsi
Add gmac1 and gmac1_mdio nodes.

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-10-24 13:28:18 -04:00
Tony Han
3036fa88dd drivers: ethernet: phy: ksz9131: save link state for get
Get the link state in the monitor and save it for get_link api
implementation to use.

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-10-24 13:28:18 -04:00
Tony Han
034ce6927c drivers: ethernet: phy: ksz9131: add getting status for gigabit mode
Read gigabit status from Master Slave Status Register.

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-10-24 13:28:18 -04:00
Tony Han
e7cfa722c4 drivers: ethernet: phy: ksz9131: add support for phy interrupt mode
Enable Link-Up and Link-Down interrupts. On the interrupt handling
the monitor work is scheduled to update the link status and calling
corresponding callback routine.

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-10-24 13:28:18 -04:00
Tony Han
d7a78736fb tests: drivers: build_all: ethernet: add KSZ9131 entry
Add build tests for Microchip KSZ9131.

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-10-24 13:28:18 -04:00
Tony Han
b3362a335e tests: drivers: build_all: ethernet: add new lines between PHY nodes
New lines are expected between PHY nodes by DevicetreeLinting.

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-10-24 13:28:18 -04:00
Tony Han
b305faff1f drivers: ethernet: phy: add Microchip's KSZ9131 PHY support
Add support for KSZ9131 (Gigabit Ethernet Transceiver with RGMII Support).
As first starter, 100MBit/s mode is tested.
https://www.microchip.com/en-us/product/ksz9131

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-10-24 13:28:18 -04:00
Valerio Setti
1962ab564a modules: mbedtls: fix prompts and help messages for Kconfigs
Minor fixes to prompt and help messages for some of the Mbed TLS' Kconfigs.

Signed-off-by: Valerio Setti <vsetti@baylibre.com>
2025-10-24 13:27:59 -04:00
Valerio Setti
fd932e15c9 doc: migration-guide: add note for Mbed TLS' Kconfigs renaming
Some Mbed TLS' Kconfigs were renamed in order to improve the 1:1 matching
between them and the build symbols used in Mbed TLS. This commit add a note
on the migration-guide document for this change.

Signed-off-by: Valerio Setti <vsetti@baylibre.com>
2025-10-24 13:27:59 -04:00
Valerio Setti
a60803bebe modules: mbedtls: add a specific file for deprecated Kconfigs
This is to preserve backward compatibility until the deprecation period of
the old names expires. After that time entries from that file can be
removed.

Signed-off-by: Valerio Setti <vsetti@baylibre.com>
2025-10-24 13:27:59 -04:00
Valerio Setti
315fbc5932 modules: mbedtls: rename MBEDTLS_HMAC_DRBG_ENABLED
Align Kconfig name to the Mbed TLS build symbol.

Signed-off-by: Valerio Setti <vsetti@baylibre.com>
2025-10-24 13:27:59 -04:00
Valerio Setti
f8c94f2f44 modules: mbedtls: rename MBEDTLS_CTR_DRBG_ENABLED
Align Kconfig name to the Mbed TLS build symbol.

Signed-off-by: Valerio Setti <vsetti@baylibre.com>
2025-10-24 13:27:59 -04:00
Valerio Setti
69e27673fa modules: mbedtls: rename MBEDTLS_TLS_SESSION_TICKETS
Align Kconfig name to the Mbed TLS build symbol.

Signed-off-by: Valerio Setti <vsetti@baylibre.com>
2025-10-24 13:27:59 -04:00
Valerio Setti
62f0b2c5c8 modules: mbedtls: rename MBEDTLS_TLS_VERSION_1_3
Align Kconfig name to the Mbed TLS build symbol.

Signed-off-by: Valerio Setti <vsetti@baylibre.com>
2025-10-24 13:27:59 -04:00
Valerio Setti
fa911df90c modules: mbedtls: rename MBEDTLS_DTLS
Align Kconfig name to the Mbed TLS build symbol.

Signed-off-by: Valerio Setti <vsetti@baylibre.com>
2025-10-24 13:27:59 -04:00
Valerio Setti
f960db846c modules: mbedtls: rename MBEDTLS_TLS_VERSION_1_2
Align Kconfig name to the Mbed TLS build symbol.

Signed-off-by: Valerio Setti <vsetti@baylibre.com>
2025-10-24 13:27:59 -04:00
Valerio Setti
851a20481b modules: mbedtls: rename MBEDTLS_LMS
Align Kconfig name to the Mbed TLS build symbol.

Signed-off-by: Valerio Setti <vsetti@baylibre.com>
2025-10-24 13:27:59 -04:00
Valerio Setti
e1117f18fc modules: mbedtls: rename MBEDTLS_MD
Align Kconfig name to the Mbed TLS build symbol.

Signed-off-by: Valerio Setti <vsetti@baylibre.com>
2025-10-24 13:27:59 -04:00
Marco Widmer
e2fcd640b7 drivers: gpio: pca953x: add pull-up/pull-down support
Some variants of the PCA953x family support pull-up / pull-down
resistors through registers 0x43 and 0x44 (mostly the TCAL9538 variant).
We already support input latching and interrupt masking (which is also
only present on a few variants), so let's also add support for pull-up
and pull-down resistors.

The feature can be enabled with the has-pud property in the device tree.

Signed-off-by: Marco Widmer <marco.widmer@bytesatwork.ch>
2025-10-24 13:27:49 -04:00
BUDKE Gerson Fernando
a7fbbb00d3 docs: services: tfm: Add note about confirmed images
Extend the Signing Images section in the build documentation to
highlight the differences between confirmed and unconfirmed images
with respect to the PSA Certified Firmware Update API.

Signed-off-by: BUDKE Gerson Fernando <gerson.budke@leica-geosystems.com>
2025-10-24 13:27:24 -04:00
BUDKE Gerson Fernando
97e4ec9e62 docs: migration-guide-4.3: Add TF-M sign note
Add a note about BL2 (MCUboot) signing updates when the board is built
as TF-M NS.

Signed-off-by: BUDKE Gerson Fernando <gerson.budke@leica-geosystems.com>
2025-10-24 13:27:24 -04:00
BUDKE Gerson Fernando
bbc73af78f trusted-firmware-m: Generate tfm_merged.bin
When CONFIG_TFM_MCUBOOT_IMAGE_NUMBER is 1, all images are merged.
Currently, there is no tfm_merged.bin file for use in FOTA. This
adds file generation to fulfill that requirement.

Signed-off-by: BUDKE Gerson Fernando <gerson.budke@leica-geosystems.com>
2025-10-24 13:27:24 -04:00
BUDKE Gerson Fernando
d1534c5395 trusted-firmware-m: Prepare to generate tfm_merged.bin
When CONFIG_TFM_MCUBOOT_IMAGE_NUMBER is 1, the process to create the
final tfm_merged.bin file is more complex. This prepares the content
to introduce the generation of tfm_merged.bin for use in FOTA
applications.

Signed-off-by: BUDKE Gerson Fernando <gerson.budke@leica-geosystems.com>
2025-10-24 13:27:24 -04:00
BUDKE Gerson Fernando
6334838cdb scripts: build: mergehex: Add --output-bin parameter
The optional --output-bin parameter instructs the IntelHex class to
save the content as a binary file instead of the Intel Hex format.

Signed-off-by: BUDKE Gerson Fernando <gerson.budke@leica-geosystems.com>
2025-10-24 13:27:24 -04:00
BUDKE Gerson Fernando
7fe5574fa2 trusted-firmware-m: Use cmake_parse_arguments in tfm_sign
Use cmake_parse_arguments() for more idiomatic code. This makes the
code more readable and easier to extend with new options.

Signed-off-by: BUDKE Gerson Fernando <gerson.budke@leica-geosystems.com>
2025-10-24 13:27:24 -04:00
BUDKE Gerson Fernando
5b4cd27f55 trusted-firmware-m: Create multi image bin files
A fundamental use of Trusted Firmware-M is to provide security for
IoT applications, where firmware upgrades (FOTA) are almost always
mandatory. The current file signing process does not produce the
necessary binaries for multi-image S/NS FWU, since hex images are
not suitable for this use case. This introduces the missing signed
binary files for use by the FWU partition. The changes were tested
in multi-image FWU scenarios, and support for single-image scenarios
can be easily added in the future.

Signed-off-by: BUDKE Gerson Fernando <gerson.budke@leica-geosystems.com>
2025-10-24 13:27:24 -04:00
BUDKE Gerson Fernando
69f277cdcb trusted-firmware-m: Make hex files variables explicit
Make variables that define output files explicitly include 'HEX' in the
name. This refactoring step allows for the introduction of BIN file
generation.

Signed-off-by: BUDKE Gerson Fernando <gerson.budke@leica-geosystems.com>
2025-10-24 13:27:24 -04:00
BUDKE Gerson Fernando
6cee10c5b9 trusted-firmware-m: Set --confirm when signing
The current behavior when signing an image adds --pad but does not
confirm the image. This appears to be a mistake, as the user should
inspect the image status in the Firmware Upgrade software. If an image
is not --confirmed, the FSM cannot infer the correct states. This sets
the image as confirmed to resolve the issue.

Signed-off-by: BUDKE Gerson Fernando <gerson.budke@leica-geosystems.com>
2025-10-24 13:27:24 -04:00
BUDKE Gerson Fernando
b21ea79784 trusted-firmware-m: Define header and trailer options
The current behavior when signing an image is to always set --pad and
--pad-header for all images unless TFM_USE_NS_APP is set. This does not
allow for easy creation of signed images for FOTA applications. Rewrite
the PAD parameter as HEADER and TRAILER to simplify the setup of more
signing options.

Another important reason for this change is that the NS image, when
signed without --pad, runs on the hardware but does not perform the
MCUboot test, and the FWU never upgrades the image. This fixes the NS
image signing process to correctly support TF-M FWU using the PSA API
functions.

Signed-off-by: BUDKE Gerson Fernando <gerson.budke@leica-geosystems.com>
2025-10-24 13:27:24 -04:00
BUDKE Gerson Fernando
99a2e4931e trusted-firmware-m: Set --max-sectors when signing
The --max-sectors option helps catch problems with flash overlap when
merging images. If there is a misalignment in flash partitions, the
merge process usually fails. This uses information from Zephyr flash
partitions and the flash controller to automatically determine the
max sectors value and apply it when signing an image.

Signed-off-by: BUDKE Gerson Fernando <gerson.budke@leica-geosystems.com>
2025-10-24 13:27:24 -04:00
BUDKE Gerson Fernando
debb59830b trusted-firmware-m: Set --align when signing
The current version of TF-M script that sign MCUboot image uses a
default alignment of 1. This value varies between flash devices
and not all accept the default 1. This improve the script picking
the write-block-size property from the current flash controller
and pass as the --align parameter when signing an image.

Note: This solution works out-of-box for the vast majority of
devices in the Zephyr tree and an exception will throw when
a device is not supported.

Signed-off-by: BUDKE Gerson Fernando <gerson.budke@leica-geosystems.com>
2025-10-24 13:27:24 -04:00
BUDKE Gerson Fernando
332ebc3be5 boards: st: stm32l562e_dk: ns: Align partitions
The partitions for the stm32l562e_dk/stm32l562xx/ns board are not aligned
with TF-M. This fixes the partition alignment.

Signed-off-by: BUDKE Gerson Fernando <gerson.budke@leica-geosystems.com>
2025-10-24 13:27:24 -04:00
BUDKE Gerson Fernando
35cae82033 boards: st: stm32l562e_dk: Move external partitions
The external partitions are defined dependent from S and NS images. This
move the external partitions from common to the S image. The NS image
will be defined in future to allow correct usage of MCUboot.

Signed-off-by: BUDKE Gerson Fernando <gerson.budke@leica-geosystems.com>
2025-10-24 13:27:24 -04:00
BUDKE Gerson Fernando
803d817be6 boards: arm: mps3: Fix NS flash layout and SRAM size
The mps3/foo/ns configuration defines flash layouts in TF-M to support
CONFIG_TFM_MCUBOOT_IMAGE_NUMBER values of 1 or 2. In the Zephyr
project, when building samples, the selected value is 2.

The layout changes are necessary to support the --max-sectors option
when signing images, ensuring that the flash layout is respected. To
enable this, the compatible "soc-nv-flash" was added to the reserved
memory, and fixed-partitions were defined.

Additionally, the ISRAM was redefined to expose the correct size and
values for both S and NS firmware, clarifying memory selection for the
user.

For example, see general details in:
https://git.trustedfirmware.org/plugins/gitiles/TF-M/trusted-firmware-m.git/%2B/refs/heads/main/platform/ext/target/arm/mps3/corstone310/common/partition/region_defs.h#116
https://git.trustedfirmware.org/plugins/gitiles/TF-M/trusted-firmware-m.git/%2B/refs/heads/main/platform/ext/target/arm/mps3/corstone310/common/config.cmake#13

Note:
 - Not all mps3 ISRAM have the same size and design should take that
   in consideration.

Signed-off-by: BUDKE Gerson Fernando <gerson.budke@leica-geosystems.com>
2025-10-24 13:27:24 -04:00
BUDKE Gerson Fernando
691aa5e6e0 boards: arm: mps3: Remove mps3/corstone300/an547/ns QEMU
Exclude mps3/corstone300/an547/ns from PSA tests because QEMU does not
model the QSPI flash in MPS3 boards as real QSPI flash, but only as
simple ROM. Attempting to rewrite the flash from the guest will fail.

https://github.com/zephyrproject-rtos/zephyr/pull/94470#issuecomment-3197729501

Signed-off-by: BUDKE Gerson Fernando <gerson.budke@leica-geosystems.com>
2025-10-24 13:27:24 -04:00
BUDKE Gerson Fernando
0d254d38f0 boards: arm: mps2: Fix NS flash layout
The mps2/an521/cpu0/ns define flash layouts in tf-m to allow
CONFIG_TFM_MCUBOOT_IMAGE_NUMBER be 1 or 2. In the Zephyr project when
building the samples the value selected is 2.

The layout changes are necessary to allow use the --max-sectors options
when signing the images. It ensures that flash layout is respected. To
allow this the compatible "soc-nv-flash" was added in the reserved
memory and the fixed-partitions were defined.

Signed-off-by: BUDKE Gerson Fernando <gerson.budke@leica-geosystems.com>
2025-10-24 13:27:24 -04:00
BUDKE Gerson Fernando
2697953876 modules: tf-m: Kconfig.tfm: Update TFM_BOARD
Reorder TFM_BOARD entries by vendor name for improved clarity.

Signed-off-by: BUDKE Gerson Fernando <gerson.budke@leica-geosystems.com>
2025-10-24 13:27:24 -04:00
Mohamed Moawad
4bdcc53de9 tests: stackprot: add guard area to ensure portable overflow behavior
The stackprot test currently depends on compiler-generated stack frame
layouts, which can vary between toolchains and optimization levels.
This makes the overflow check fragile and may cause unintended faults.

Add a small guard buffer in alternate_thread so the intentional overflow
is always contained within the thread stack. This ensures the test
behaves consistently across toolchains, architectures, and optimization
settings.

Signed-off-by: Mohamed Moawad <moawad@synopsys.com>
2025-10-24 13:27:06 -04:00
Thorsten Klein
03a58604d7 doc: develop: west: config option build.dir-fmt
new format arguments for config option build.dir-fmt are documented
accordingly.

Signed-off-by: Thorsten Klein <thorsten.klein@bshg.com>
2025-10-24 13:26:37 -04:00
Thorsten Klein
5ee522efc0 scripts: west_commands: added tests for config build.dir-fmt
Tests are added for different build.dir-fmt format string arguments.

Signed-off-by: Thorsten Klein <thorsten.klein@bshg.com>
2025-10-24 13:26:37 -04:00
Thorsten Klein
122edfef5b scripts: west_commands: extend build.dir-fmt format args
build.dir-fmt format string arguments are extended. New format args are
'west_topdir' (absolute path to the west workspace directory) and
'source_dir_workspace' (relative path of the source directory to
west_topdir).

Signed-off-by: Thorsten Klein <thorsten.klein@bshg.com>
2025-10-24 13:26:37 -04:00
Kim Seer Paller
6e3760b6cd tests: drivers: build_all: Add build test for AD4170 ADC
Add build test for AD4170, AD4190, and AD4195 SPI-based ADC.

Signed-off-by: Kim Seer Paller <kimseer.paller@analog.com>
2025-10-24 13:26:26 -04:00
Kim Seer Paller
fcd7842ca8 drivers: adc: Add AD4170-4, AD4190-4, and AD4195-4 ADC driver
Add initial support for the AD4170-4, AD4190-4, and AD4195-4 24-bit
ADCs, including reference selection, programmable gain amplifier, ADC
conversion modes, configurable analog inputs, filter settings, and both
bipolar and unipolar operation. Supports internal and external buffered
references, and operation from a 4.75-5.25V analog supply and a
1.7-5.25V digital supply.

Signed-off-by: Kim Seer Paller <kimseer.paller@analog.com>
2025-10-24 13:26:26 -04:00
Kim Seer Paller
2d141260de dts: bindings: adc: Add AD4170-4, AD4190-4, and AD4195-4 ADCs
Document the AD4170-4, AD4190-4, and AD4195-4 low noise, high precision
24-bit ADCs, each supporting 4 differential or 8 single-ended inputs,
integrated PGA (0.5-128). All devices feature internal and external
buffered references, operate from 4.75-5.25V analog and 1.7-5.25V
digital supply.

Signed-off-by: Kim Seer Paller <kimseer.paller@analog.com>
2025-10-24 13:26:26 -04:00
TaiJu Wu
91f1acbb85 kernel: Add more debug info and thread checking in run queue
1. There are debug info within k_sched_unlock so we shoulld add
   same debug info to k_sched_lock.

2. The thread in run queue should be normal or metairq thread, we should
   check it is not dummy thread.

Signed-off-by: TaiJu Wu <tjwu1217@gmail.com>
2025-10-24 13:26:15 -04:00
TaiJu Wu
4da13b8a5e test: increase mps2/an385 ISR stack size
The next patch will cause mps2/an385 board fail.

The original code access 0x2000a10 but the interrupt statck
start at 0x20002000 with size 2048 byte(end at 20001800)
so the access causes stack overflow.

Increase ISR stack size to resolve this issue.

Signed-off-by: TaiJu Wu <tjwu1217@gmail.com>
2025-10-24 13:26:15 -04:00
Jordan Yates
dbb45ddd18 scripts: checkpatch.pl: relax Missing a blank line
Relax the `Missing a blank line after declarations` checkpatch error by
loosening the requirements for a macro to be treated as one that
declared a variable.

Currently the regex matches the pattern `DECLARE` or `DEFINE`, as long
as there are between 1 and 6 trailing `_FOO` components to the macro
name (e.g. `DECLARE_MY_TYPE()`). Zephyr however contains many macros
that don't have the trailing components but still resolve to variables
(e.g. `ATOMIC_DEFINE`, `K_MUTEX_DEFINE, etc`).

By changing `{1,6}` to `{0,6}`, we remove the requirement for the
trailing `_FOO` component(s) while still allowing them. This stops
checkpatch from erroring on patterns like this:
```
struct driver_data {
	uint16_t some_value;
	ATOMIC_DEFINE(some_atomic, 16);
};
```

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-10-24 13:26:04 -04:00
Simon Maurer
31d16f353e drivers: i2c: cdns: add broken hold bit workaround for Zynq-7000
The Xilinx Zynq 7000 I2C controller has the following bugs:
- completion indication is not given to the driver at the end of
a read/receive transfer with HOLD bit set.
- Invalid read transaction are generated on the bus when HW timeout
condition occurs with HOLD bit set.
- If the delay between address register write and
control register write in cdns_i2c_mrecv function is more, the xfer size
register rolls over and controller is stuck.

As a result of the above, this patch disallows message transfers with
a repeated start condition following a read operation. Also disables
interrupts between the address register write and control register write
during message reception, to prevent transfer size register rollover.

Signed-off-by: Simon Maurer <mail@maurer.systems>
2025-10-24 13:25:54 -04:00
Diego Herranz
23aef46644 boards: phytec: phyboard_nash: doc: fix core name
It's M33 rather than M7.

Signed-off-by: Diego Herranz <diegoherranz@diegoherranz.com>
2025-10-24 13:25:43 -04:00
Alain Volmat
0f6a0d94fe samples: usb: uvc: add h264 / jpeg encoder test entries
Add entries in sample.yaml for enabling h264enc / jpegenc
uvc based test on the stm32n6570_dk/stm32n657xx/sb platform.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-10-24 13:25:34 -04:00
Alain Volmat
1b39e52399 boards: stm32n6570_dk: add zephyr_h264enc / zephyr_jpegenc labels
Add zephyr_h264enc and zephyr_jpegenc labels on node in order to
be able to use VENC and JPEG codec from samples.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-10-24 13:25:34 -04:00
Alain Volmat
e761fd7f0f samples: usb: uvc: add h264/jpeg suffixed overlay
Add overlay files in order to enable usage of
the encoder in the UVC sample.
This work with platform defining node label
    zephyr_jpegenc
    zephyr_h264enc

Mode can be selected by using -DFILE_SUFFIX="jpegenc" or
-DFILE_SUFFIX="h264enc" when building the sample while
also adding -DCONFIG_VIDEO_ENCODER_JPEG or
-DCONFIG_VIDEO_ENCODER_H264 as well in the command line.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-10-24 13:25:34 -04:00
Alain Volmat
6a7aefaadd samples: video: tcpserversink: check video_enqueue/dequeue return values
Add proper check of the return value of video_enqueue / video_dequeue.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-10-24 13:25:34 -04:00
Alain Volmat
e7ae828f70 usb: usbd_uvc: add frame_based support (currently only H264)
The frame_based descriptors differ from the frame descriptors
in that there is no dwMaxVideoFrameBufferSize field.
In order to do that, add a new uvc_frame_based_discrete_descriptor
structure to be used to fill in proper information into the
frame descriptor. In addition to that, a new format descriptor
is also added for frame based transfer.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-10-24 13:25:34 -04:00
Alain Volmat
0e3de8e3ca usb: uvc: use struct uvc_frame_descriptor in most of function parameters
This commit prepares introduction of the UVC Frame Based support by
using the struct uvc_frame_descriptor as parameter of most of the UVC
functions. struct uvc_frame_descriptor contains the common fields for
all supported frame type and then depending on the DescriptorSubtype
the pointer is casted in the correct struct definition.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-10-24 13:25:34 -04:00
Alain Volmat
065754373a video: add H264 estimate in video_estimate_fmt_size
Add rough estimate of a worth case H264 output size.

The video_estimate_fmt_size would need more information
such as quality, profile in order to give a better
estimate for each formats so for the time being just
stick to 16bpp based size, same as for JPEG.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-10-24 13:25:34 -04:00
Alain Volmat
ac4566fa23 samples: usb: uvc: add video encoder support
Allow creating a pipeline as follow
   camera receiver -> encoder -> uvc

If the chosen zephyr,videoenc is available, the sample will pipe
the camera receiver to the encoder and then the UVC device instead
of directly the camera receiver to the UVC.

Current implementation has several points hardcoded for the time
being:
1. intermediate pixel format between the camera receiver and encoder
   is set to NV12. This shouldn't be hardcoded and should instead be
   discovered as a commonly capable format from the encoder / video dev
2. it is considered that encoder device do NOT perform any resolution
   change and that encoder output resolution is directly based on the
   camera receiver resolution.  Thanks to this, UVC exposed formats
   are thus the encoder output pixel format & camera receiver
   resolutions.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-10-24 13:25:34 -04:00
Alain Volmat
261e25fe28 samples: usb: uvc: add indirection for UVC source device
In preparation for the introduction of video encoder support
add an indirection for handling of the buffers of the UVC
source device. Currently this is only video_dev however it
can also be an encoder device when encoder is introduced
between video capture device and the UVC device.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-10-24 13:25:34 -04:00
Alain Volmat
0812c110d7 samples: usb: uvc: use video_transfer_buffer helper function
Replace video_dequeue / video_enqueue buffer exchange code by
video_transfer_buffer helper function.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-10-24 13:25:34 -04:00
Alain Volmat
a6ceee976e video: addition of video_transfer_buffer helper function
Addition of a helper function which takes care of dequeue
from a source video device and queue into a sink video device.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-10-24 13:25:34 -04:00
Jamie McCrae
189f3646b7 doc: hardware: porting: soc_porting: Fix inconsistencies
Fixes some errors and inconsistencies to show a fuller example of
a Kconfig.soc file

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-10-24 13:25:18 -04:00
Jamie McCrae
ef2f264ab5 doc: build: kconfig: setting: Replace text
Replaces text to clarify a setting

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-10-24 13:25:18 -04:00
Daniel Leung
d04f91bce4 west: update Xtensa HAL to latest SHA
This updates the SHA for Xtensa HAL to latest.
This brings in the SoC configuration for intel_adsp/ace40,
and will be used with the next SDK release.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-10-24 13:25:06 -04:00
Ryan McClelland
c4a70b4d01 drivers: i3c: cdns: handle ibi len of 0
Section 4.3.7.3.6 of the I3C v1.2 specification states that a value of
0 for the max ibi size indicates an unlimited payload size. Set it to
the max it can be configured for.

Signed-off-by: Ryan McClelland <ryanmcclelland@meta.com>
2025-10-24 13:24:54 -04:00
Guillaume Gautier
b18a70e959 dts: arm: st: fix linter
Fix formatting errors reported by the dts linter.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2025-10-24 13:24:44 -04:00
Guillaume Gautier
05972b3b7e doc: releases: update migration guide for stm32 adc
Update the 4.3 migration guide to include the change made on the STM32
ADC clocks.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2025-10-24 13:24:44 -04:00
Guillaume Gautier
b07f90fd88 dts: bindings: adc: update binding description
Update STM32 ADC binding description now that the STM32F3 ADC asynchronous
prescaler is set through the clock property.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2025-10-24 13:24:44 -04:00
Guillaume Gautier
0cf6b7775a drivers: clock: stm32: remove adc prescaler setting
Now that the ADC prescaler are set within the driver using the clock
system, remove the specific setting of the prescaler from the clock driver.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2025-10-24 13:24:44 -04:00
Guillaume Gautier
1f2034e16f dts: arm: st: remove specific rcc compatible for stm32f1 and f3
Now that the ADC prescaler are set within the driver using the clock
system, the specific rcc compatibles for F1 and F3 are no longer useful.
Replace them with the standard one (from which they were derived).

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2025-10-24 13:24:44 -04:00
Guillaume Gautier
7c4d42b4fd drivers: adc: stm32: add support for rcc prescaler clock
Some series like F1, F3, N6 and U3 use an ADC prescaler defined in the RCC.
Instead of adding specific properties in the RCC driver, use the secondary
clock system to configure the prescaler.

The ADC driver now configures the clocks depending on their presence and
their name. Three clocks can be defined:
- the register clock (mandatory for all series)
- the kernel clock (depends on series)
- the prescaler value (depends on series)

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2025-10-24 13:24:44 -04:00
Guillaume Gautier
cc245368dc dts: adc: stm32: make clock-names property required in adc binding
To easily differentiate between the different clocks that can be configured
in device tree, make their naming mandatory, and explicit what the expected
names are.

Add these names in all dtsi and dts files that need them.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2025-10-24 13:24:44 -04:00
Guillaume Gautier
b02dacf065 include: dt-bindings: clock: stm32: add adc prescaler for f1, f3, n6 and u3
This commit adds the RCC configurations for ADC prescaler for STM32F1, F3,
N6 and U3.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2025-10-24 13:24:44 -04:00
Guillaume Gautier
d891aad2ed include: dt-bindings: clock: stm32: rework STM32_DT_CLOCK_SELECT details
Reworks the way the STM32_DT_CLOCK_SELECT builds its elements. Instead of
taking a mask, it takes the MSB of the field. From the MSB and LSB, we
calculate the width of the field, and this width is then stored (instead
of the mask). This allows to gain space for higher values for the fields.

This larger space is necessary to add the selection of the ADC prescaler
on STM32N6 because it is an 8-bit long field.

The allowed width is from 1 to 8 (and internally stored as 0-7 to fit on
3 bits).

STM32_DT_CLKSEL_MASK_GET keeps the same name, since we still need the mask,
and returns the bitmask from the width with the BIT_MASK macro. Other
STM32_DT_CLKSEL_MASK_* macros are renamed with WIDTH.

All call to STM32_DT_CLOCK_SELECT are updated to reflect the change and use
a width instead of a mask.

This also fixes a few issues like STM32H7 MCO macros, and adds MCO_PRE for
STM32N6.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2025-10-24 13:24:44 -04:00
Fabrice DJIATSA
2133ad7f07 boards: st: nucleo_h753zi: update and reorder flash partitions
- Increase the size of the storage partition to 2 sectors
because a single sector makes it unusable as reported
by test_flash_copy.

This change will breaks backward compatibility regarding
MCUboot firmware update support.

Add a migration guide note about changes to the flash layout
and warn users about potential firmware upgrade failures.

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2025-10-24 13:24:29 -04:00
Fabrice DJIATSA
9018212695 tests: drivers: flash: common: boards: set flash size of nucleo_wb55rg
update CONFIG_TEST_DRIVER_FLASH_SIZE to match actual flash size.
The test was previously failing due to a mismatch between the expected
flash size (827392 bytes) and the actual size reported by flash_get_size()
(1048576 bytes).
This update sets CONFIG_TEST_DRIVER_FLASH_SIZE to 1048576 to reflect the
correct size of the flash device as defined in the reference manual for
the NUCLEO_WB55RG board.
The increase in required flash size (216K) for the full stack M0 binary
also justifies aligning the test configuration with the actual hardware
capabilities.

This change ensures the test passes and accurately reflects the flash
memory layout.

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2025-10-24 13:24:29 -04:00
Liam Ogletree
7275e44146 docs: releases: Add documentation for Haptics shell
Add line documenting CONFIG_HAPTICS_SHELL in 4.3 release notes.

Signed-off-by: Liam Ogletree <liam.ogletree@cirrus.com>
2025-10-24 13:24:08 -04:00
Liam Ogletree
91caa2f2f8 drivers: haptics: Add Shell support for haptics drivers
Expose the haptics API through a shell interface. Tested locally
with dummy haptics driver.

Signed-off-by: Liam Ogletree <liam.ogletree@cirrus.com>
2025-10-24 13:24:08 -04:00
Khaoula Bidani
66e8451780 drivers: i2c: stm32: add target error callback
Allow applications to be notified of target I2C transfer
error usingthe recently added target error callback mechanism.

Signed-off-by: Khaoula Bidani <khaoula.bidani-ext@st.com>
Signed-off-by: Julien Racki <julien.racki-ext@st.com>
2025-10-24 13:23:57 -04:00
Khaoula Bidani
5e81c84a93 drivers: i2c: Support target error callbacks
Support I2C target error callback in I2C driver when
registered by the bus target consumer.

Signed-off-by: Khaoula Bidani <khaoula.bidani-ext@st.com>
Signed-off-by: Julien Racki <julien.racki-ext@st.com>
2025-10-24 13:23:57 -04:00
Nicolas Pitre
c03653eab9 samples: posix: env: Add delay before printing environment variables
Add a 1 second delay before printing environment variables to give the
shell time to initialize and print its prompt. This prevents a race
condition where the shell prompt could interleave with the environment
variable output on SMP systems, causing test failures.

Without this delay, the output could appear as:
  BUILD_VERSIuart:~$ ON=v4.2.0...

With the delay, the shell completes initialization first:
  uart:~$
  BOARD=...
  BUILD_VERSION=...
  ALERT=

This fixes the sample.posix.env test timeout on FVP v9a/smp where the
test harness regex failed to match the corrupted output.

Signed-off-by: Nicolas Pitre <npitre@baylibre.com>
2025-10-24 13:22:19 -04:00
William Tambe
ee149a3fd9 tests: kernel/common: skip test_nested_irq_offload if more than 1 CPU
test_nested_irq_offload is meant for single CPU.
Skip it if there is more than 1 CPU.

Signed-off-by: William Tambe <williamt@cadence.com>
2025-10-24 13:22:09 -04:00
Jeppe Odgaard
7d7a317fa0 lib: heap: return -ENOMEM if heap_array is full
Replace -EINVAL which indicates an invalid input parameter.

Signed-off-by: Jeppe Odgaard <jeppe.odgaard@prevas.dk>
2025-10-24 13:21:57 -04:00
Fin Maaß
24669df207 arch: riscv: use RISCV_ISA_EXT_F to set CPU_HAS_FPU
use CONFIG_RISCV_ISA_EXT_F to set CONFIG_CPU_HAS_FPU.
Same for CONFIG_RISCV_ISA_EXT_D and
CONFIG_CPU_HAS_FPU_DOUBLE_PRECISION.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-10-24 13:21:47 -04:00
Fin Maaß
3be1b9ca7a arch: riscv: use RISCV_ISA_RV64I to set 64BIT
use CONFIG_RISCV_ISA_RV64I to set CONFIG_64BIT.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-10-24 13:21:47 -04:00
Sylvio Alves
b487d53d81 tests: crypto: hash: allow espressif boards testing
Allow Espressif SoCs to be tested properly.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2025-10-24 13:21:24 -04:00
Sylvio Alves
1bc2378085 samples: driver: crypto: add ESP32 AES compat
Allow ESP32 SoCs to run AES sample.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2025-10-24 13:21:24 -04:00
Sylvio Alves
d6227d4fb8 boards: espressif: add crypto tag
Add support crypto tag into espressif boards.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2025-10-24 13:21:24 -04:00
Sylvio Alves
9b3bb86855 drivers: crypto: add Espressif HW AES support
Add hardware-accelerated AES driver for Espressif SoCs supporting
ECB, CBC, and CTR cipher modes with AES-128, AES-192, and AES-256
key lengths.

Supported modes:
- ECB (Electronic Codebook)
- CBC (Cipher Block Chaining)
- CTR (Counter)

Supported SoCs:
- ESP32: All modes, all key sizes
- ESP32-S2/S3: All modes, AES-128/256 only
- ESP32-C2/C3/C6/H2: All modes, all key sizes

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2025-10-24 13:21:24 -04:00
Sylvio Alves
391ffabd66 drivers: crypto: add Espressif HW SHA support
Add hardware-accelerated SHA driver for Espressif SoCs supporting
SHA-224, SHA-256, SHA-384, and SHA-512 algorithms.

Supported SoCs:
- ESP32: SHA-224/256/384/512 (single-shot operations)
- ESP32-S2/S3: SHA-224/256/384/512 (with multi-part support)
- ESP32-C2/C3/C6/H2: SHA-224/256 (with multi-part support)

Tested with Zephyr crypto subsystem hash_compute() API.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2025-10-24 13:21:24 -04:00
Sylvio Alves
ae11a8b40a dtsi: espressif: add AES and SHA entries
Add into device tree SHA and AES peripherals.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2025-10-24 13:21:24 -04:00
Erwan Gouriou
e532f6a8c4 boards: st: stm32h7s78_dk: Fix ram size in board yaml file
Actual available internal RAM size was wrong, fix it.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2025-10-24 13:21:10 -04:00
Erwan Gouriou
508162e733 boards: st: stm32h7s78_dk: Add debug using stlink gdbserver
Add debug using stlink gdbserver as an alternative to pyocd.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2025-10-24 13:21:10 -04:00
Erwan Gouriou
fc15b749ab samples: sysbuild: with_mcuboot: stm32h7s78_dk: Use ext_flash_app variant
Now that ext_flash_app variant is available, it should be used for
mcuboot related apps on this board.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2025-10-24 13:21:10 -04:00
Erwan Gouriou
e805518b71 boards: st: stm32h7s78_dk: Add ext_flash_app variant
Add ext_flash_app variant to stm32h7s78_dk to allow building
application running on ext flash.

Largely based on A.Jarmouni's work to enable the same on stm32h750_dk
in PR 97037.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2025-10-24 13:21:10 -04:00
Jamie McCrae
cd2079f23c west.yml: MCUboot synchronization from upstream
Update Zephyr fork of MCUboot to revision:
  96576b341ee19f1c3af6622256b0d4f3d408e1e3

Brings following Zephyr relevant fixes:

  - 96576b34 boot: zephyr: socs: stm32h7s7xx: Add support for
    ext_flash_app variant
  - 56538cf6 bootutil: Move update-independent code
  - fccd8905 loader: Move boot_get_max_app_size(..) API
  - 0248a023 bootutil: Move state-independent area APIs
  - f2d3f00a loader: Unify image check API.
  - dcc66e51 loader: Unify header_valid(..) API
  - 257265c8 loader: Optimize boot_check_header_erased(..)
  - 76e56e4f loader: Rename boot_version_cmp
  - 5311589b loader: Fix compile-time issues in loader.c
  - 606a1934 boot: zephyr: socs: add overlay & conf for
    stm32h573xx_ext_flash_app
  - 521fc0bf bootutil: Conditionally include mbedtls/ oid.h,
    asn1.h
  - 71b41e38 boot: zephyr: boards: remove nrf54h20dk overlay
  - 2fc1bd84 bootutil: Drop slot number and boot_state from most
    boot_enc functions
  - 1dd8ae60 boot: zephyr: rework stm32h750b_dk board overlay &
    conf

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-10-24 13:21:10 -04:00
Erdem Simsek
aec9da060b tests: drivers: Trigger drop event for proper clean-up
Add I2S_TRIGGER_DROP call in the error test to ensure proper cleanup
after stopping the I2S device. This validates that the drop trigger
is properly handled in error conditions and resources are released.

Signed-off-by: Erdem Simsek <erdem.simsek@nordicsemi.no>
2025-10-24 13:20:31 -04:00
Erdem Simsek
8338097b1d drivers: i2s: Support audio auxpll in TDM driver
Add support for audio_auxpll clock source as an alternative to audiopll
in the i2s_nrf_tdm driver. This enables TDM functionality on platforms
that use the auxiliary PLL for audio clocking.

- Add audio_auxpll node detection and configuration
- Update clock management to support both audiopll and audio_auxpll
- Add build assertions for supported frequency configurations

Signed-off-by: Erdem Simsek <erdem.simsek@nordicsemi.no>
2025-10-24 13:20:31 -04:00
Luca Burelli
ae2dec824c dts: vendor/arduino: fix firmware partition location
The Wi-Fi firmware image in the QSPI flash has always been located in
the last 512kB of the 16MB Flash device. This offset is 0xf80000, not
0xe80000 as it was mistakenly set. Fix.

Signed-off-by: Luca Burelli <l.burelli@arduino.cc>
2025-10-24 13:20:20 -04:00
Luca Burelli
dd50f3f914 dts: vendor/arduino: add missing 'mbr' partition
Add the definition for the Master Boot Record partition at the
beginning of the flash. This is used by existing Arduino 'Storage'
libraries to store partition table information.

Signed-off-by: Luca Burelli <l.burelli@arduino.cc>
2025-10-24 13:20:20 -04:00
Krzysztof Chruściński
9d017467cc drivers: serial: Remove deprecated uart_nrfx_uarte2 driver
Use of uart_nrfx_uarte2 driver was deprecated before 4.1 release
and now can be removed.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-10-24 13:20:07 -04:00
Martin Hoff
15eeb3d40c soc: silabs: siwx91x_nwp: fix coex_mode in nwp initialization
Change the default coex mode when there is neither WiFi or BT activated.
Switch from BLE_ONLY to WLAN_ONLY. It fix a bug where we can't go in
deepsleep if we didn't select CONFIG_WIFI.

Signed-off-by: Martin Hoff <martin.hoff@silabs.com>
2025-10-24 13:19:56 -04:00
Filip Kokosinski
67085f1e2a include/zephyr/instrumentation: add missing @return docstrings
This commit add missing `@return` docstrings to the instrumentation
subsystem public header.

Signed-off-by: Filip Kokosinski <fkokosinski@antmicro.com>
2025-10-24 13:19:45 -04:00
Bartosz Miller
219d16e1b8 tests: drivers: flash: Add MSPI single I/O test with 1M bus frequency
Longer transfers and lower frequency to verify proper FIFO handling.

Signed-off-by: Bartosz Miller <bartosz.miller@nordicsemi.no>
2025-10-24 13:19:35 -04:00
Pieter De Gendt
d43b48daf5 net: l2: wifi: mgmt: Fix auto-connect with multiple saved credentials
Using the Wi-Fi credentials system, we need to stop connecting with stored
credentials once a connection has been successful.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-10-24 13:19:21 -04:00
Jeppe Odgaard
e54093ba9a drivers: sensor: add tach_gpio
Add tachometer sensor driver using GPIO interrupts.

Signed-off-by: Jeppe Odgaard <jeppe.odgaard@prevas.dk>
2025-10-24 13:19:04 -04:00
WenBin Zhang
47855127a0 script: west: completion: add missing west completion for zsh
this path only provides autocompletion for the `west` command
itself, not for its subcommands. (i.e. `west [tab]` rather than
`west packages [tab]`). However, it remains highly userful,
significantly reducing typing time and errors when using longer
commands like `west packages`.

Signed-off-by: WenBin Zhang <freey7955@gmail.com>
2025-10-24 13:18:52 -04:00
WenBin Zhang
84a53e5ecc script: west: completion: add missing west completion for fish
this path only provides autocompletion for the `west` command
itself, not for its subcommands. (i.e. `west [tab]` rather than
`west packages [tab]`). However, it remains highly userful,
significantly reducing typing time and errors when using longer
commands like `west packages`.

Signed-off-by: WenBin Zhang <freey7955@gmail.com>
2025-10-24 13:18:52 -04:00
WenBin Zhang
fe3a02d234 script: west: completion: add missing west completion for bash
this path only provides autocompletion for the `west` command
itself, not for its subcommands. (i.e. `west [tab]` rather than
`west packages [tab]`). However, it remains highly userful,
significantly reducing typing time and errors when using longer
commands like `west packages`.

Signed-off-by: WenBin Zhang <freey7955@gmail.com>
2025-10-24 13:18:52 -04:00
Jérôme Pouiller
46b498ad16 drivers: adc: siwx91x: Fix clock name
All the clocks names on SiWx91x follow the pattern "SIWX91X_CLK_xxx".
SIWX91X_ADC_CLK was an exception.

Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
2025-10-24 13:18:42 -04:00
Benjamin Cabé
1cc1e83b3d drivers: usb-c: prevent Kconfigs for logging from bleeding
CONFIG_USBC_LOG_* options should be gated by the higher level USBC
Kconfig.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-10-24 13:18:28 -04:00
Benjamin Cabé
b48ef99495 drivers: virtio: prevent Kconfigs for logging from bleeding
CONFIG_VIRTIO_LOG_* options shoul be gated by the main VIRTIO Kconfig.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-10-24 13:18:28 -04:00
Valerio Setti
b43dbf149a doc: release-notes: fix typo in JWT note
It should have been 'CONFIG_', not 'CONIFG_'.

Signed-off-by: Valerio Setti <vsetti@baylibre.com>
2025-10-24 13:18:13 -04:00
Julien Racki
4197931643 drivers: ethernet: stm32: add PTP HAL flag for N6
Add depends on SOC_SERIES_STM32N6X to
PTP_CLOCK_STM32_HAL in order to use PTP on the STM32N6 series.

Signed-off-by: Julien Racki <julien.racki-ext@st.com>
2025-10-24 13:18:02 -04:00
Mahesh Mahadevan
b25a218738 west.yml: Update NXP HAL to get fix for Build failure
Add TPM_CONTROLS_COUNT inside the HAL file for MIMX9xxx
SoC's

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2025-10-24 09:02:31 -07:00
Martin Hoff
40c9653c6d soc: silabs: siwx91x: increase main stack size when nwp is active
Update the default MAIN_STACK_SIZE to 2048 bytes to accommodate
the initialization requirements of the network coprocessor (nwp),
particularly when power management is enabled. It resolves a bug
where we can't boot when PM is enabled with multiple active
peripherals.

Signed-off-by: Martin Hoff <martin.hoff@silabs.com>
2025-10-24 09:02:04 -07:00
Khaoula Bidani
ba35b4d076 driver: uart: stm32: Disable UART DMA before shutdown
Use LL_USART_DisableDMAReq_RX to disable UART RX DMA requests.
This should be called before entering shutdown mode.

Force to use UART_STM32U5_ERRATA_DMAT_LOWPOWER
when POWEROFF is selected. This ensure the system to shut down
properly instead of hanging due to DMA staying active.

Signed-off-by: Khaoula Bidani <khaoula.bidani-ext@st.com>
Signed-off-by: Julien Racki <julien.racki-ext@st.com>
2025-10-24 09:01:50 -07:00
Jeremy Dick
0a878179f7 drivers: mipi-dbi-spi: Fix initialization of GPIO CS
Access the correct node to get the SPI device GPIO CS.
It comes from the parent spi-dev node, not the bus

Signed-off-by: Jeremy Dick <jdick@pivotint.com>
2025-10-24 09:01:21 -07:00
Jamie McCrae
298a35b714 modules: tf-m: Remove some download Kconfigs
Removes two Kconfig which seemed to indicate downloading of a
project would happen automatically, which does not abide by how
to get additional module code in Zephyr. Due to TF-M always setting
these to "DOWNLOAD" in the repo, they are set even if the modules
do not exist so that they do not download e.g. in CI. Unfortunately
it seems that the qcbor one cannot be removed at this time due to
being needed in some applications and is not apache licensed,
though instructions should be provided to users instead describing
how to add it to a module manifest instead, in a later task

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-10-24 09:00:59 -07:00
Fengming Ye
514d7e2b5a modules: hostap: fix hostapd_cli cannot find default hostapd iface
Default find soft ap wifi iface in hostapd_cli shell command.

Signed-off-by: Fengming Ye <frank.ye@nxp.com>
2025-10-24 09:00:18 -07:00
Tomasz Moń
35620e20a9 drivers: udc_dwc2: Fix deactivate when hibernated
It is possible for usbd_disable() to be called when the core is
hibernated. When done so, the USB stack will attempt to deactivate all
the endpoints. Because the core is hibernated, register reads are
really undefined. This can lead to udc_dwc2_ep_deactivate() not calling
udc_dwc2_ep_disable() which will leave struct udc_ep_config busy flag
set.

When endpoint 0x00 busy flag is left to true, the driver won't allocate
buffer to receive SETUP data which is mandatory in Buffer DMA mode. This
leads to essentially dead device after reconnect, because the device
will not respond to any control transfers.

Solve the issue by modifying backup register value instead of real one
when endpoint is deactivated while core is hibernated.

Signed-off-by: Tomasz Moń <tomasz.mon@nordicsemi.no>
2025-10-24 08:59:47 -07:00
Anas Nashif
6ea5f0abd7 twister: prefer 'fork' on POSIX to maintain pre-3.14 behavior
multiprocessing no longer defaults to fork, so force it to maintain pre
3.14 behavior. We will need to revisit the implementation and at some
point move to forkserver

Fixes #95058

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-10-24 08:59:30 -07:00
Carles Cufi
0679c05712 scripts: runners: nrfutil: Add a new --dry-run parameter
In order to allow for users to invoke "west flash" without actual
hardware connected but still running the logic and pregeneration of
commands, specifically the json file.

Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
2025-10-24 08:59:13 -07:00
Carles Cufi
146fd2c88e scripts: runners: nrf: Generalize the use of --erase-mode for all ICs
Until now, for historical reasons (see
f42cef9c81 and
58e0e31c7e), the use of the --erase-mode
command-line switch was reserved for the nRF54L family. But in fact this
can be used (instead of --erase) for any of the Nordic ICs. This patch
extends the usage of this switch regardless of family.

Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
2025-10-24 08:59:13 -07:00
Guillaume Gautier
684779ec23 drivers: usb_c: tcpc: stm32: use dedicated bitops functions
Use dedicated set/clear bits function instead of reading/masking/writing
manually.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2025-10-24 08:58:25 -07:00
Guillaume Gautier
9074528435 drivers: i2c: stm32: v2: simplify reg operation
Call stm32_reg_set_bits instead of stm32_reg_read then stm32_reg_write.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2025-10-24 08:58:25 -07:00
Guillaume Gautier
004c613e25 drivers: stm32: replace MODIFY_REG HAL macro by stm32_reg_modify_bits
For all STM32 drivers and SoC, replace the MODIFY_REG macro (defined in
the STM32 HAL) by stm32_reg_modify_bits defined in Zephyr.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2025-10-24 08:58:25 -07:00
Guillaume Gautier
124448582f drivers: stm32: replace READ_REG HAL macro by stm32_reg_read
For all STM32 drivers and SoC, replace the READ_REG macro and the
LL_xxx_ReadReg functions (defined in the STM32 HAL) by
stm32_reg_read defined in Zephyr.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2025-10-24 08:58:25 -07:00
Guillaume Gautier
2a52a2b7ff drivers: stm32: replace WRITE_REG HAL macro by stm32_reg_write
For all STM32 drivers and SoC, replace the WRITE_REG macro and the
LL_xxx_WriteReg functions (defined in the STM32 HAL) by
stm32_reg_write defined in Zephyr.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2025-10-24 08:58:25 -07:00
Guillaume Gautier
44415b5af8 drivers: stm32: replace READ_BIT HAL macro by stm32_reg_read_bits
For all STM32 drivers and SoC, replace the READ_BIT macro (defined in
the STM32 HAL) by stm32_reg_read_bits.
Fixes some cases where the return value was tested like a boolean
despite not being one.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2025-10-24 08:58:25 -07:00
Guillaume Gautier
a2339c9b91 drivers: stm32: replace CLEAR_BIT HAL macro by stm32_reg_clear_bits
For all STM32 drivers, replace the CLEAR_BIT macro (defined in
the STM32 HAL) by stm32_reg_clear_bits defined in Zephyr.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2025-10-24 08:58:25 -07:00
Guillaume Gautier
73e9749c68 drivers: stm32: replace SET_BIT HAL macro by stm32_reg_set_bits
For all STM32 drivers, replace the SET_BIT macro (defined in
the STM32 HAL) by stm32_reg_set_bits defined in Zephyr.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2025-10-24 08:58:25 -07:00
Guillaume Gautier
07f19537d1 soc: st: stm32: common: add common bitops functions
Add a set of bitops functions in order to replace the STM32 HAL bitops
macros throughout the drivers.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2025-10-24 08:58:25 -07:00
Etienne Carriere
464d929651 drivers: usb: udc: stm32: split variable definition in multi-line
Split variables definition into 2 line as per Zephyr coding style
expectations since they are of different type.

No functional changes.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-10-24 08:57:55 -07:00
Etienne Carriere
0b297bdbb8 drivers: usb: udc: stm32: remove useless test on buffer length
Remove useless test on buffer length in handle_msg_setup() since the
buffer was allocated few lines above with a known non zero size.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-10-24 08:57:55 -07:00
Etienne Carriere
f8addbaa28 drivers: usb: udc: stm32: inline comment reference to selected_speed
Clarify inline comment referring to field selected_speed of
struct udc_stm32_config.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-10-24 08:57:55 -07:00
Etienne Carriere
7df2ce80ae drivers: usb: udc: stm32: remove useless OR operation on return value
Remove useless OR operation on return value is udc_stm32_enable()
since the return value is always 0 before it's OR-ed with a new return
value.

No functional changes.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-10-24 08:57:55 -07:00
Etienne Carriere
86616fd406 drivers: usb: udc: stm32: test essentially boolean value
Change implementation to ensure all boolean test are done on essentially
boolean values.

No functional changes.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-10-24 08:57:55 -07:00
Etienne Carriere
16237e4147 drivers: usb: udc: stm32: rename endpoint config variable
Rename endpoint configuration pointer variable in HAL_PCD_ResetCallback(),
udc_stm32_ep_mem_config() and udc_stm32_ep_disable() from ep to ep_cfg
to prevent confusion since ep is usually used as endpoint address.

For consistency, also use ep_cfg elsewhere where an endpoint config
pointer is used, instead of using either cfg, ecfg and ep_cfg.

No functional changes.

Suggested-by: Johann Fischer <johann.fischer@nordicsemi.no>
Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-10-24 08:57:55 -07:00
Etienne Carriere
66478fd11a drivers: usb: udc: stm32: test HAL return value
Add missing test of some HAL functions return value.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-10-24 08:57:55 -07:00
TOKITA Hiroshi
2cce5ed488 drivers: gpio: aw9523b: Fix the condition for changing Push-pull
The condition for setting the GPOMD bit when `port0_push_pull`
is enabled was reversed.
Fix this problem.

Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@gmail.com>
2025-10-24 08:57:29 -07:00
Ruijia Wang
41b3824f4a samples: Update XSPI memc and flash samples on RT700
Add memc sample for XSPI PSRAM.
Add spi_flash sample for XSPI Nor Flash.

Signed-off-by: Ruijia Wang <ruijia.wang@nxp.com>
2025-10-24 08:56:59 -07:00
Ruijia Wang
4f5cf51c59 soc: Update code to get flash size from dts
Update the Kconfig to parse the dts.

Signed-off-by: Ruijia Wang <ruijia.wang@nxp.com>
2025-10-24 08:56:59 -07:00
Ruijia Wang
9560a96523 boards: Update related configuration for RT700 xspi case
Add flash and psram dts based on RT700 board resource.
Add the clock and power setting for XSPI in board specfic initilization
function.

Signed-off-by: Ruijia Wang <ruijia.wang@nxp.com>
2025-10-24 08:56:59 -07:00
Ruijia Wang
b1dc69e0d1 dts: Enable the xspi flash and psram cases on NXP RT700
Move nxp,xspi.yaml from spi bindings to mtd, it should be flash
controllor rather than simple bus controller.
Delete the xspi flash mx25um51345g bindling yaml file which is useless.
Enable flash and two psrams on RT700 core0 and one psram on core1.

Signed-off-by: Ruijia Wang <ruijia.wang@nxp.com>
2025-10-24 08:56:59 -07:00
Ruijia Wang
e8bb85ee69 drivers: xspi: add NXP xspi driver
Add mcux xspi driver suppport. Add the flash and psram driver support
based on xspi driver.

Signed-off-by: Ruijia Wang <ruijia.wang@nxp.com>
2025-10-24 08:56:59 -07:00
Jun Lin
d5aad385c1 drivers: i2c: npcx: add support for NPCKn variant
In NPCXn variant, the I2C peripheral hardware uses FIFO for data
transfer, while in NPCKn variant, it uses DMA.
This change separates the FIFO-specific code from the common controller
logic and adds support for DMA mode.

Signed-off-by: Mulin Chao <mlchao@nuvoton.com>
Signed-off-by: Jun Lin <CHLin56@nuvoton.com>
2025-10-24 08:56:39 -07:00
Jun Lin
612c32429c dts: bindings: i2c: npcx: intruduce a new propery dma-driven
Add an new boolean property `dma-driven` to indicate if the I2C
hardware module has a dedicated DMA support for the data transfer.
Add this property to `i2c_ctrlx` nodes in NPCKn variant SoCs.

Signed-off-by: Jun Lin <CHLin56@nuvoton.com>
2025-10-24 08:56:39 -07:00
S Mohamed Fiaz
4c33c7e24a drivers: i2c: silabs: remove dev arg from PM state lock helpers
Dropped the device argument from i2c_silabs_pm_policy_state_lock_get/put.
Updated all internal usage.

Signed-off-by: S Mohamed Fiaz <Fiaz.Mohamed@silabs.com>
Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-10-24 08:55:25 -07:00
S Mohamed Fiaz
fa3087f8c4 drivers: i2c: silabs: Update i2c driver with HAL changes
Updated the I2C driver for EFR Series 2 devices based on the
design improvements in the SiSDK I2C implementation

Signed-off-by: S Mohamed Fiaz <Fiaz.Mohamed@silabs.com>
Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-10-24 08:55:25 -07:00
Mickael Bosch
d27b654eb5 drivers: dac: add AD56x1 devices
The Analog Device AD5601, AD5611, and AD5621 devices are 8, 10 and 12
bits DAC respectively.

These devices use a 16 bits SPI communication protocol.
The 2 first bit encode the low power mode (this driver do not use the
low power mode, it always run in the 'normal' mode).
The next 14 bits contain the left aligned value. The 2, 4, or 6
remaining bits (depending on the resolution) are set to 0.

Signed-off-by: Mickael Bosch <mickael.bosch@linux.com>
2025-10-24 08:55:03 -07:00
Marko Sagadin
f3b3739fd8 drivers: spi: enhance spi shell
This commit enhances the SPI shell in a number of different ways:
- Previously only spi buses could be specified in the shell.
  Now both spi buses and spi devices (physical device on the spi bus,
  not the device struct) can be specified.
- Both spi buses and spi devices can be specified by their node name or
  by any of their node labels.
- Instead of having a single instance of a spi config struct, each spi
  bus/device has it's own dedicated config. This means that
  users only have to configure spi config once for each device and use
  them freely, without needing to reconfigure them every time after
  switching between different spi buses/devices.
- Spi devices get their spi configs automatically from the devicetree at
  compile time. This means that once a good working configuration is
  found for a spi device, that can be specified as a "default" in the
  devicetree.
- Spi devices don't need to have their status set to "okay" or be
  initialized by their driver to be accessible from the spi shell. As
  long as the spi bus that they are on has status="okay", they can
  be accessed.
- When changing a cs pin with spi cs command, the spi device/bus
  needs to first be specified before specifying the gpio device.
  The nested dynamic subcommands enable users to autocomplete both
  of the arguments.

Implementation details

- It was possible to gather all the information about the spi devices
  from the devicetree at the compile time, but not for the spi buses.
  For the spi devices we have a way to get spi device nodes that are
  on an okay spi bus with a devicetree macros and extract data from
  those nodes. For the spi buses that is not possible,
  since there is no macro to get all spi bus nodes at once.
- So, for the spi buses this discovery step has to be done at the
  runtime, with the help of SYS_INIT macro and shell_device_filter
  function.
- Since we now allow users to either specify a spi bus or a spi device
  by their node label or their node name, we needed to have a way to map
  those strings to the correct spi config struct, so we can later pass
  it to the spi API functions or do some configuration on it. That is
  made possibly by the find_spec_by_label and the two arrays,
  spi_things and maps.

Signed-off-by: Marko Sagadin <marko.sagadin42@gmail.com>
2025-10-24 08:54:43 -07:00
Josuah Demangeon
1ac86c4925 samples: drivers: video: capture: use DEVICE_DT_GET_OR_NULL for display
Allow the display to also use if() instead of #if by leveraging the
DEVICE_DT_GET_OR_NULL() that permit display_dev to always be defined.
The compiler will const-fold all the unused variables and functions.

Signed-off-by: Josuah Demangeon <me@josuah.net>
2025-10-24 08:52:57 -07:00
Josuah Demangeon
db27102be6 samples: drivers: video: make capture sample failure more visible
Centralize exit of all helper functions and display a common message
that indicates clearly that the sample is not blocking on any function
but instead stopped running.

Signed-off-by: Josuah Demangeon <me@josuah.net>
2025-10-24 08:52:57 -07:00
Josuah Demangeon
6893bc10cd samples: drivers: video: capture: move code to functions
Move blocks of code into individual functions to make the sample more
modular, component-based.

Signed-off-by: Josuah Demangeon <me@josuah.net>
2025-10-24 08:52:57 -07:00
Josuah Demangeon
15daa447ed tests: drivers: video: test_pattern: new test from the sample
Turn the test part of the sample code into a dedicated test into the
tests/ directory instead of just samples/.

Signed-off-by: Josuah Demangeon <me@josuah.net>
2025-10-24 08:52:57 -07:00
Josuah Demangeon
ecc54ff0af samples: drivers: video: capture: use the same error handling idiom
Use the same error handling implementation as everywhere else in the
video area and the majority of Zephyr:

  ret = error();
  if (ret < 0) {
      return ret;
  }

Signed-off-by: Josuah Demangeon <me@josuah.net>
2025-10-24 08:52:57 -07:00
Josuah Demangeon
6ad6945ed6 samples: drivers: video: capture: use app_ prefix
Use an "app_" prefix for all functions local to the application.
This avoids accidentally using "display_" or "video_" prefix that
are reserved for the respective area.

Signed-off-by: Josuah Demangeon <me@josuah.net>
2025-10-24 08:52:57 -07:00
Josuah Demangeon
2250672c43 samples: drivers: video: capture: use if() instead of #ifdef
When possible, make use of C if statements instead of preprocessor #ifdef.
This still allow conditional compilation by letting the compiler
garbage-collect unused code.

Signed-off-by: Josuah Demangeon <me@josuah.net>
2025-10-24 08:52:57 -07:00
Josuah Demangeon
d2f2ba7485 samples: drivers: video: capture: change log verbosity
Increase log verbosity to print one line per captured frames and make
it like in the README by default. This avoids giving the impression
that the capture sample does not work. Users desiring to get better
performance can disable logging or reduce verbosity from INF to WRN.

Signed-off-by: Josuah Demangeon <me@josuah.net>
2025-10-24 08:52:57 -07:00
Josuah Demangeon
eb01f1d451 samples: drivers: video: capture: use static initializers
When possible, use static initializer instead of memset() and
initialization at runtime. Fixes a bug where uninitialized memory of caps
would be used, in case drivers do not initialize them like they should.

Signed-off-by: Josuah Demangeon <me@josuah.net>
2025-10-24 08:52:57 -07:00
Josuah Demangeon
c765b99887 drivers: video: sw_generator: support test pattern CID
Add an always-on CID for enabling the test pattern, which makes
it possible to use it in tests enabling the test first enabling
the pattern.

Signed-off-by: Josuah Demangeon <me@josuah.net>
2025-10-24 08:52:57 -07:00
Yong Cong Sin
c262e588a1 tests: arch: riscv: fatal: test z_riscv_fault() path
- Updated the testcase to test `z_riscv_fault()` error handling path.
- The main file is now fully assembly so that we can use precompiler
  guards more easily to test with/without frame pointer enabled.

Signed-off-by: Yong Cong Sin <yongcong.sin@gmail.com>
Signed-off-by: Yong Cong Sin <ycsin@meta.com>
2025-10-24 08:51:15 -07:00
Yong Cong Sin
643e09febf arch: riscv: streamline fatal handling code
`CONFIG_EXTRA_EXCEPTION_INFO` that was added in #78065 doesn't
seem necessary, as we were already storing and printing the
callee-saved-registers before that. All `CONFIG_EXTRA_EXCEPTION_INFO`
does in RISCV is to add an additional `_callee_saved_t *csf` in the
`struct arch_esf`, which overhead is negligible to what's being enabled
by `CONFIG_EXCEPTION_DEBUG`.

Let's remove `CONFIG_EXTRA_EXCEPTION_INFO`, and have that extra
`_callee_saved_t *csf` in the `struct arch_esf` as long as
`CONFIG_EXCEPTION_DEBUG` is enabled.

TL;DR: it doesn't make sense to not enable `CONFIG_EXTRA_EXCEPTION_INFO`
when `CONFIG_EXCEPTION_DEBUG` is enabled, so let's merge them.

Then, since `*csf` is always available in the `struct arch_esf` when
`CONFIG_EXCEPTION_DEBUG=y`, we can simply rely on that pointer in
`z_riscv_fatal_error()` instead of an additional argument in
`z_riscv_fatal_error_csf()`, rendering the latter redundant and thus
can be removed.

Additionally, save the callee-saved registers before jumping to
to `z_riscv_fault()`, so that callee-saved-registers are printed on
generic CPU exception as well.

Signed-off-by: Yong Cong Sin <yongcong.sin@gmail.com>
Signed-off-by: Yong Cong Sin <ycsin@meta.com>
2025-10-24 08:51:15 -07:00
Vinayak Kariappa Chettimada
4428c1a868 Bluetooth: Controller: nRF54Lx: Enable Controller Privacy Support
Enable Controller Privacy support for nRF54Lx as default.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2025-10-24 08:50:49 -07:00
Vinayak Kariappa Chettimada
6d79d52118 Bluetooth: Controller: nRF54Lx: Add Controller Privacy Support
Add Controller Privacy support for nRF54Lx by porting to
use NRF_AAR00 h/w peripheral.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2025-10-24 08:50:49 -07:00
Vinayak Kariappa Chettimada
7a1e7c9fba tests: bsim: Bluetooth: Conditionally compile Controller Privacy
Conditionally compile Controller Privacy testing and enable
advertising test for nRF54L15bsim.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2025-10-24 08:50:49 -07:00
Michael Klammt
0876b5a2de drivers: gpio: fix SN74HC595 reset GPIO prop name
The reset GPIO for the SN74HC595 driver was not working anymore since
c407fbc. That commit made it optional among other changes but
accidently removed the s from reset_gpios property name causing the
driver not being able to retrieve the specified reset-gpios property
from the devicetree anymore. Add the missing s back to fix this.

Signed-off-by: Michael Klammt <michael.klammt@automatic-research.de>
2025-10-24 11:42:42 +02:00
Dominik Ermel
7cd7f8ba36 west.yml: Update FATFS revision to fix window alignment setting
Last FATFS update accidentally made window alignment setting
ineffective.

Fixes #96485

Signed-off-by: Dominik Ermel <dominik.ermel@nordicsemi.no>
2025-10-24 11:35:12 +02:00
Axel Utech
cf5fc97b06 drivers: dma: stm32: enable isr only if needed
Improve the STM32 DMA driver to only enable transfer and half-transfer
interrupts if the interrupt handler has effects beside clearing the
isr flag. This improves system performance as unnecessary interrupts
are no longer raised by the hardware.

Signed-off-by: Axel Utech <utech@sofiha.de>
2025-10-24 11:35:03 +02:00
Jason Yu
ce3a3da9dd drivers: gpio: gpio_mcux: Fix port index mismatch issue
When GPIO works with IOPCTL, the PIO instance offset in IOPCTL
can't be calculated easily. It should be recorded in DTS based on
SOC integration.
When IOPCTL is used, add PIO reigster address in DTS, gpio_mcux
driver will configure the PIO register based on this address.

Signed-off-by: Jason Yu <zejiang.yu@nxp.com>
2025-10-24 11:34:53 +02:00
Jason Yu
69f797c6d2 drivers: gpio: gpio_mcux: Improve IRQ control macro usage
Add more direct macro GPIO_IRQ_CTRL to control different
IRQ implementation.

Signed-off-by: Jason Yu <zejiang.yu@nxp.com>
2025-10-24 11:34:53 +02:00
Jason Yu
2e64d67fad drivers: gpio: gpio_mcux: Fix bug that cannot set IOPCTL drive strength
The macro FSL_FEATURE_PORT_HAS_DRIVE_STRENGTH should only be used
for PORT but not IOPCTL.

Signed-off-by: Jason Yu <zejiang.yu@nxp.com>
2025-10-24 11:34:53 +02:00
Kai Cheng
038523c63b Bluetooth: Conn: add connection type helper functions
Introduce dedicated helper functions for connection type checking:
- bt_conn_is_br() for BR/EDR connections
- bt_conn_is_le() for LE connections
- bt_conn_is_iso() for ISO connections
- bt_conn_is_sco() for SCO connections

Replace direct conn->type comparisons with these new helper functions
throughout the connection management code. This improves code readability,
maintainability, and provides proper configuration checks for each
connection type.

Signed-off-by: Kai Cheng <chengkai@xiaomi.com>
2025-10-24 11:34:41 +02:00
Lyle Zhu
74e94fd8e9 Bluetooth: SDP: Optimize functions bt_sdp_get_XXX()
Use a combination of multiple helper functions to implement the
functionality of existing interfaces starting with `bt_sdp_get_`.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-10-24 11:34:32 +02:00
Lyle Zhu
922da6cc4d Bluetooth: classic: shell: Support attribute parsing helper
Update the command `sdp-find` to support attribute parsing helper.
If the argument count is 1, the general SDP discovery will be used
to discover the protocol `L2CAP`.

In the SDP record discovered callback, call attribute parsing helper
functions to parse the SDP record and SDP attributes. And print all
parsed attribute values.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-10-24 11:34:32 +02:00
Lyle Zhu
7f04884eab Bluetooth: SDP: Add helper functions to parse discovered record
The current implementation does not support multiple attributes with
the same attribute identifier in a discovered SDP record.

Add function `bt_sdp_record_parse()` to parse the received SDP record.

Add function `bt_sdp_has_attr()` to check if the specified attribute
identifier has been discovered.

Add function `bt_sdp_get_attr()` to get the attribute of specified
attribute identifier.

Add function `bt_sdp_attr_value_parse()` to parse the attribute value.

Add function `bt_sdp_attr_has_uuid()` to check if the attribute
contains the specified UUID.

Add function `bt_sdp_attr_read()` to read the value of the attribute.

Add function `bt_sdp_attr_addl_proto_parse()` to parse the protocol
descriptor from the additional protocol descriptor list.

Add function `bt_sdp_attr_addl_proto_count()` to get the protocol
descriptor count of the additional protocol descriptor list.

Add function `bt_sdp_attr_addl_proto_read()` to read the attribute
value from the additional protocol descriptor list for specific index
and UUID.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-10-24 11:34:32 +02:00
Lyle Zhu
8365ed718e Bluetooth: Classic: SDP: Add protocol identifier codes
Add all protocol identifier codes defined in Assigned Numbers
specification.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-10-24 11:34:32 +02:00
Bjarki Arge Andreasen
306c3d483e drivers: nrf: remove handling of cross domain pins
Remove the handling of cross domain pins from nrf drivers. To use
cross domain in tests, force on constlat and disable power domains
for the test.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-10-24 11:33:28 +02:00
Laurentiu Mihalcea
74b51136a4 soc: nxp: imx93: drop SOF-specific region mapping
Remove SOF-specific region mappings. These should be handled inside of
SOF (external module), instead of Zephyr. This way, we avoid creating
a cyclic dependency between the two.

Needed for #91061.

Signed-off-by: Laurentiu Mihalcea <laurentiu.mihalcea@nxp.com>
2025-10-24 11:33:22 +02:00
Laurentiu Mihalcea
ff9835b8b1 boards: nxp: imx95_evk: drop rimage support
rimage is used in the context of Sound Open Firmware (SOF) to sign the
resulting firmware image. Since SOF is an external module, code found in
mainline Zephyr should not depend on it, but, rather, the other way
around. Therefore, drop the rimage signing support from the imx95_evk
board. This should be handled in SOF instead of Zephyr.

Needed for #91061.

Signed-off-by: Laurentiu Mihalcea <laurentiu.mihalcea@nxp.com>
2025-10-24 11:33:22 +02:00
The Nguyen
d8cb02aa24 modules: renesas: provide configuration for r_sce build
Add configuration to select the security engine for r_sce build

Signed-off-by: The Nguyen <the.nguyen.yf@renesas.com>
2025-10-24 11:33:04 +02:00
John Batch
bec09e2bf1 tests: drivers: gpio: kit_pse84_ai gpio_api test support
Adding overlays to support gpio_api test on the kit_pse84_ai m33 and m55
cores.  The test expects jumpers between P16_0 (J14_6) and P16_1
(J14_5).

Signed-off-by: John Batch <john.batch@infineon.com>
2025-10-24 11:32:57 +02:00
John Batch
5db1df0453 boards: infineon: Add kit_pse84_ai board support
Adds basic support for the Infineon kit_pse84_ai board, including:
 * samples/hello_world
 * samples/basic/blinky
 * tests/driver/uart/uart_api

Signed-off-by: John Batch <john.batch@infineon.com>
2025-10-24 11:32:57 +02:00
Maochen Wang
dfd6efc972 manifest: update hostap to fix EAP-FAST connection issue
DUT Failed to associate fast-gtc/fast-mscahpv2 enterprise network, there
is error log shows 'EAP-FAST: Compound MAC did not match'.
tls_connection_get_eap_fast_key() gets wrong key, currently using
mbedtls_ssl_tls_prf to derive key, and it's not PSA API.
Therefore, conn->expkey_keyblock_size can't be set as 0, the correct
expkey_keyblock_size should contain keylen + mac_key_len + ivlen.
Remove MBEDTLS_USE_PSA_CRYPTO to get keyblock_size correctly.

Signed-off-by: Maochen Wang <maochen.wang@nxp.com>
2025-10-24 11:32:38 +02:00
Sunil Abraham
9f4c02edd2 boards: microchip: SAM_D5x_E5x: configure clock source and frequency
Configure CPU clock using FDPLL, sourced from XOSC to achieve 120Mhz.
Also configure UART clock to support bootup initialization.

Signed-off-by: Sunil Abraham <sunil.abraham@microchip.com>
2025-10-24 11:32:30 +02:00
Sunil Abraham
158cb294be drivers: clock_control: SAM D5x/E5x: add more functionality
Add more functionality in clock control driver.
Implement bootup clock initialization, async on and set_rate API.

Signed-off-by: Sunil Abraham <sunil.abraham@microchip.com>
2025-10-24 11:32:30 +02:00
Sunil Abraham
acf34f5ef3 dts: clock: SAM D5x/E5x: add more functionality
Add more functionality in clock control driver.
Add bindings for dfll, fdpll, gclk generator, mclk cpu, osc32k, rtc clock
and xosc.

Signed-off-by: Sunil Abraham <sunil.abraham@microchip.com>
2025-10-24 11:32:30 +02:00
Sai Santhosh Malae
9f53d7e270 drivers: gpio: silabs-siwx91x: Refactor config structures
Drop usage of `pcfg` and `pdata` in favor of unified `cfg`
for common configuration and `port_cfg`, `port_data` for
port-specific configurations.

Signed-off-by: Sai Santhosh Malae <Santhosh.Malae@silabs.com>
2025-10-24 11:32:20 +02:00
Sai Santhosh Malae
77f5ddadec drivers: gpio: silabs-siwx91x: clang format corrections
Apply clang format corrections

Signed-off-by: Sai Santhosh Malae <Santhosh.Malae@silabs.com>
2025-10-24 11:32:20 +02:00
Sai Santhosh Malae
0ad01eee42 drivers: gpio: silabs-siwx91x: Device runtime PM
This commit enables the pm device runtime support
for the siwx91x gpio driver.

Signed-off-by: Sai Santhosh Malae <Santhosh.Malae@silabs.com>
2025-10-24 11:32:20 +02:00
Sai Santhosh Malae
da94b1afbf drivers: gpio: silabs-siwx91x: Differentiate port count
Add the port_count field to the configuration structure
and allocate different sizes for the ports array based
on whether the node is HP or ULP.

Signed-off-by: Sai Santhosh Malae <Santhosh.Malae@silabs.com>
2025-10-24 11:32:20 +02:00
Sai Santhosh Malae
a45ecd1ccd dts: arm: silabs-siwx91x: Update GPIO nodes
Add soc power domain and zephyr,pm-device-runtime-auto

Signed-off-by: Sai Santhosh Malae <Santhosh.Malae@silabs.com>
2025-10-24 11:32:20 +02:00
S Mohamed Fiaz
082f5b5025 driver: i2s: i2s_silabs_siwx91x: Add pm device support for i2s driver
This commit enables the pm device driver support
for the i2s_silabs_siwx91x driver.

Signed-off-by: S Mohamed Fiaz <Fiaz.Mohamed@silabs.com>
2025-10-24 11:32:06 +02:00
The Nguyen
55614f99f2 dts: renesas: ra: fix dts format issue
Update dts format for Renesas RA to fix failed compliance check

Signed-off-by: The Nguyen <the.nguyen.yf@renesas.com>
2025-10-24 11:31:52 +02:00
Khoa Nguyen
cafaaf0a71 tests: drivers: flash: common: Add support for Renesas RA4, RA2
Add support test app `flash/common` for ek_ra4m1, ek_ra4w1,
ek_ra2a1, ek_ra2l1

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-10-24 11:31:43 +02:00
Khoa Nguyen
7196845954 boards: renesas: Add support Flash-LP for Renesas RA4, RA2
Add support Flash-LP for Renesas boards:
- RA4: ek_ra4m1, ek_ra4w1
- RA2: ek_ra2a1, ek_ra2l1

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-10-24 11:31:43 +02:00
Khoa Nguyen
95e87712ce dts: arm: renesas: Add support Flash LP for Renesas RA4, RA2
Add dts node to support Flash LP for:
- RA4: RA4M1, RA4W1
- RA2: RA2A1, RA2L1

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-10-24 11:31:43 +02:00
Khoa Nguyen
7d438adcf7 drivers: flash: Initial support Flash-LP driver for Renesas RA
Initial support Flash-LP driver for Renesas RA

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
Signed-off-by: Phi Tran <phi.tran.jg@bp.renesas.com>
2025-10-24 11:31:43 +02:00
Michał Stasiak
40f07a0532 samples: nordic: nrfx_prs: remove deprecated UARTE API
nrfx_uarte_rx is deprecated and will be soon removed.
Replaced by new API.

Signed-off-by: Michał Stasiak <michal.stasiak@nordicsemi.no>
2025-10-24 09:45:52 +03:00
Hongbo Wang
a8197bf8e8 samples: subsys: shell: shell_module: add support for FRDM-IMX93
Add reboot support in shell for FRDM-IMX91.
Compile commands:
west build -p always -b frdm_imx93/mimx9352/a55 \
	     samples/subsys/shell/shell_module

Signed-off-by: Hongbo Wang <hongbo.wang@nxp.com>
Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-10-24 09:45:42 +03:00
Hongbo Wang
706309d6d2 tests: gpio_basic_api: add support for FRDM-IMX93
Added board overlay for FRDM_IMX93 board.
Compile command:
west build -p always -b frdm_imx93/mimx9352/a55 \
	     tests/drivers/gpio/gpio_basic_api

Signed-off-by: Hongbo Wang <hongbo.wang@nxp.com>
Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-10-24 09:45:42 +03:00
Hongbo Wang
bc26514c7c boards: nxp: frdm_imx93: enable tpm2 for test case counter_basic_api
Enable TPM2 counter support on FRDM_IMX93 board.
Compile commands:
west build -p always -b frdm_imx93/mimx9352/a55 \
             tests/drivers/counter/counter_basic_api/

Signed-off-by: Hongbo Wang <hongbo.wang@nxp.com>
Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-10-24 09:45:42 +03:00
Hou Zhiqiang
266b3aeddc tests: counter_basic_api: add imx943 evk support
Add i.MX 943 EVK support for counter_basic_api test application.

Signed-off-by: Hou Zhiqiang <Zhiqiang.Hou@nxp.com>
Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-10-24 09:45:33 +03:00
Hou Zhiqiang
bc0fc4485a boards: imx943: add counter to support list of CA55 yaml
Update the yaml files of i.MX 943 CA55 for adding TPM counter
to the support list.

Signed-off-by: Hou Zhiqiang <Zhiqiang.Hou@nxp.com>
Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-10-24 09:45:33 +03:00
Hou Zhiqiang
a8826adefa dts: arm64: imx943: add TPM device nodes
Added TPM device tree nodes for i.MX943 CA55.

Signed-off-by: Hou Zhiqiang <Zhiqiang.Hou@nxp.com>
Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-10-24 09:45:33 +03:00
Khai Cao
81c2a48abe tests: i2c: add support for i2c sci on Renesas RA boards
Add board support for EK_RA6M5, EK_RA6M4 i2c test use sci_i2c:
- tests/drivers/i2c/i2c_api

Example for i2c use sci_i2c:

west build -b ek_ra6m5 tests/drivers/i2c/i2c_api/ -p always \
 -DDTC_OVERLAY_FILE=boards/ek_ra6m5_sci_i2c.overlay \
 -DCONF_FILE="boards/ek_ra6m5_sci_i2c.conf"

Signed-off-by: Khai Cao <khai.cao.xh@renesas.com>
2025-10-24 09:45:22 +03:00
Duy Nguyen
97c3efcec1 boards: renesas: Add SCI I2C node on Renesas RA boards
Enable support of i2c sci driver on these boards: ek_ra6m5,
ek_ra6m4

Signed-off-by: Khai Cao <khai.cao.xh@renesas.com>
Signed-off-by: Duy Nguyen <duy.nguyen.xa@renesas.com>
2025-10-24 09:45:22 +03:00
Khai Cao
bcef6d66f3 dts: arm: add SCI I2C device node for RA2 series
Add I2C device nodes for the SCI peripheral on RA2 series

Signed-off-by: Khai Cao <khai.cao.xh@renesas.com>
2025-10-24 09:45:22 +03:00
Khai Cao
4d936a4585 dts: arm: add SCI I2C device node for RA4 series
Add I2C device nodes for the SCI peripheral on RA4 series

Signed-off-by: Khai Cao <khai.cao.xh@renesas.com>
2025-10-24 09:45:22 +03:00
Khai Cao
0af2b96677 dts: arm: add SCI I2C device node for RA6 series
Add I2C device nodes for the SCI peripheral on RA6 series

Signed-off-by: Khai Cao <khai.cao.xh@renesas.com>
2025-10-24 09:45:22 +03:00
Khai Cao
78cb9c5eb2 drivers: i2c: Initial support for i2c sci driver on Renesas RA
First commit to add support for Renesas RA i2c sci driver

Signed-off-by: Khai Cao <khai.cao.xh@renesas.com>
2025-10-24 09:45:22 +03:00
Can Wang
d64c8a9c0f tests: Bluetooth: BR: fix import error in smp_general test suite.
Because HCI_XXX_IO_CAPABILITY is removed from bumble v0.0.214.

Signed-off-by: Can Wang <can.wang@nxp.com>
2025-10-24 09:45:11 +03:00
Tahsin Mutlugun
2a5a1d4afa tests: logging: log_core_additional: Skip usermode test on max32657evkit
logging.log_user test requires 3 free MPU regions, however MAX32657 only
has 2 free MPU regions available after boot. Skip this test on
MAX32657EVKIT since it does not meet this requirement.

Signed-off-by: Furkan Akkiz <hasanfurkan.akkiz@analog.com>
Signed-off-by: Tahsin Mutlugun <Tahsin.Mutlugun@analog.com>
2025-10-24 09:45:01 +03:00
Erwan Gouriou
b5ab96b098 doc: dts: dt-vs-kconfig: Add a supplement of sw/vs hw comparison
If the other examples are not sufficient, put the problematic in the
angle of the impact of using two different components has on application,
which seems to me as a simple rule of thumb.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2025-10-24 09:44:49 +03:00
Emilio Benavente
11f9959372 tests: drivers: Adding zc143ac72mipi to display tests
Updated display tests to run the zc143ac72mipi shield.

Signed-off-by: Emilio Benavente <emilio.benavente@nxp.com>
2025-10-24 09:44:22 +03:00
Emilio Benavente
b0e9915242 boards: shield: Add shield support for zc143ac72mipi
Adding shield support for zc143ac72mipi.
A bridge board for the co5300 display controller.

Signed-off-by: Emilio Benavente <emilio.benavente@nxp.com>
2025-10-24 09:44:22 +03:00
Emilio Benavente
bb5904af32 drivers: display: Add co5300 support.
Added driver controller co5300 in an effort
to support the zc143ac72mipi shield.

Signed-off-by: Emilio Benavente <emilio.benavente@nxp.com>
2025-10-24 09:44:22 +03:00
Rex Chen
efab1ca23b drivers: wifi: nxp: Add libcsi feature
CSI feaure switch to use static library.

A.Binary blob origin:
https://github.com/NXP/wifi_nb_fw/raw/nxp-v4.2.2/

B.Type of blob (precompiled library, firmware image):
Precompiled library

C.Zephyr module that the blob(s) will be referenced from:
wifi_nxp

D.Brief description of what the blob(s) do:
Implemented an algorithm for processing CSI information

E.What other components do the blob(s) depend on, if any?
Does not depend on any component

F.License the blob(s) are distributed under:
LA_OPT_NXP_Software_License

Signed-off-by: Rex Chen <rex.chen_1@nxp.com>
2025-10-24 09:44:12 +03:00
John Batch
cfab75d748 tests: adc: Adding Infineon AutAnalog ADC driver tests
Adding files to allow running the following tests for the Infineon
AutAnalog SAR ADC driver on the PSOC Edge family of MCUs:
  * tests/drivers/adc/adc_api
  * tests/drivers/adc/adc_error_cases

Signed-off-by: John Batch <john.batch@infineon.com>
2025-10-24 09:44:03 +03:00
John Batch
e176894744 samples: adc: Adding Infineon AutAnalog ADC samples
Adding files to allow running the following samples for the Infineon
AutAnalog SAR ADC driver on the PSOC Edge family of MCUs:
  * samples/drivers/adc_dt
  * samples/drivers/adc_sequence

Signed-off-by: John Batch <john.batch@infineon.com>
2025-10-24 09:44:03 +03:00
John Batch
7fe5875aac drivers: adc: Infineon AutAnalog SAR ADC driver
Adds AutAnalog SAR ADC driver files to support ADC conversions in the
PCSOC Edge family of MCUs.

Signed-off-by: John Batch <john.batch@infineon.com>
2025-10-24 09:44:03 +03:00
John Batch
9427e31861 soc: infineon: Enable AutAnalog subsystem init
Changes initialization to use a function from hal_infineon.  This
initialization function will initialize the AutAnalog system if needed
as well as the SystemInit.

Signed-off-by: John Batch <john.batch@infineon.com>
2025-10-24 09:44:03 +03:00
John Batch
765f54a969 modules: hal_infineon: Adding AutAnalog files to build
*Adds AutAnalog related files to the cmakeu list and adding KConfig
 definitions for AutAnalog and AutAnalog SAR ADC.
*Updates hal_infineon in west manifest.
*Updates infineon_kconfig.h to prevent multiple declarations of defines.

Signed-off-by: John Batch <john.batch@infineon.com>
2025-10-24 09:44:03 +03:00
John Batch
4b330a02bf dts: infineon: pse84 device tree changes to support AutAnalog ADC
*Separates AutAnalog and AutAnalog ADC in device tree.
*Makes AutAnalog SAR ADC a child of the AutAnalog system to reflect
 hardware architecture.
*Adds binding file for AutAnalog SAR ADC driver.

Signed-off-by: John Batch <john.batch@infineon.com>
2025-10-24 09:44:03 +03:00
Jonas Berg
dcf8e3ef71 boards: shields: Add Adafruit AD5693 DAC shield
The product photo is from
https://learn.adafruit.com/assets/124731 and has the
license CC BY-SA 3.0.

Tested with the command in the index.rst file. Compile testing of
the overlay file is done via the samples/drivers/dac sample.

Signed-off-by: Jonas Berg <jonas.s.t.berg@gmail.com>
2025-10-24 09:43:50 +03:00
Luca Burelli
338a8b1e48 west: bindesc: add extract subcommand
Add a new 'west bindesc extract' subcommand that dumps all binary
descriptors into a separate binary file. It will also report the range
(offset and length) of the dumped data within the original image.

Signed-off-by: Luca Burelli <l.burelli@arduino.cc>
2025-10-24 09:43:40 +03:00
Ian Morris
0a5427b0fe drivers: spi: renesas_ra8: fix for issue with gpio based chip select
This patch fixes an issue in the SPI driver that caused the chip select
line to remain low after a transaction completed (when using a GPIO and
operating in non-interrupt mode).

Signed-off-by: Ian Morris <ian.d.morris@outlook.com>
2025-10-24 09:43:31 +03:00
Jerzy Kasenberg
9aeb7e7669 tests: kernel: sched: Fix for variable hw cycles systems
Code was using CONFIG_SYS_CLOCK_HW_CYCLES_PER_SEC value.
System can have non constant value for cycle counter when
this constant is not valid.

Now code calls sys_clock_hw_cycles_per_sec() that will expand
to CONFIG_SYS_CLOCK_HW_CYCLES_PER_SEC (as before) when needed.
It only impacts systems that can change hw cycles per second
at runtime (due to calibration or some other clock change).

Signed-off-by: Jerzy Kasenberg <jerzy.kasenberg@codecoup.pl>
2025-10-24 09:43:15 +03:00
Sylvio Alves
ad7beb530a west.yml: hal_espressif: fix missing sw-coex source
Update hal to include missing software-coex source.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2025-10-23 16:34:36 -07:00
Lin Yu-Cheng
ad320ee4f2 driver: input: implement input PM function
Add the pm device for rts5912 input driver

Signed-off-by: Lin Yu-Cheng <lin_yu_cheng@realtek.com>
2025-10-24 01:12:49 +03:00
Wajdi ELMuhtadi
ffdf184b86 drivers: sensor: wsen_pdms_25131308XXX05: add sensor driver
Add wsen_pdms_25131308XXX05 driver.

Signed-off-by: Wajdi ELMuhtadi <wajdi.elmuhtadi@we-online.com>
2025-10-24 01:12:21 +03:00
Wajdi ELMuhtadi
c555a2969d manifest: hal_wurthelektronik: update to sensors sdk v2.7.0
Update the hal to have the latest Sensors SDK
version 2.7.0

Signed-off-by: Wajdi ELMuhtadi <wajdi.elmuhtadi@we-online.com>
2025-10-24 01:12:21 +03:00
Felix Wang
ac10b0b9c9 test: drivers: counter_basic_api: Enable TPM test
This patch enable TPM on frdm_mxw71 and mimxrt1180_evk/cm33

This patch covers following test cases:
- test_all_channels
- test_multiple_alarms
- test_set_top_value_with_alarm
- test_single_shot_alarm_notop
- test_single_shot_alarm_top
- test_valid_function_without_alarm
- test_set_top_value_without_alarm

Signed-off-by: Felix Wang <fei.wang_3@nxp.com>
2025-10-24 01:12:05 +03:00
Felix Wang
1f2ec45a12 drivers: Counter: TPM improvement
1.Include barrier.h to fix barrier_dsync_fence_full() not found issue
2.Support multiple channels for alarm function

Signed-off-by: Felix Wang <fei.wang_3@nxp.com>
2025-10-24 01:12:05 +03:00
Mahesh Mahadevan
04b94b605c soc: mcxw: Add Power Management support
Add PM support for MCXW SoC's

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2025-10-24 01:11:33 +03:00
Mahesh Mahadevan
0d4d0cf8b7 modules: hal_nxp: Pull in SDK cmc, spc, vbat, wuu drivers
Add bindings for the power related modules. Use the bindings
Kconfig to pull in SDK drivers for cmc, spc, vbat and wuu.

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2025-10-24 01:11:33 +03:00
Mahesh Mahadevan
776b659192 dts: mcxw7x: Add Power Management support
Add support for power management states

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2025-10-24 01:11:33 +03:00
Tim Pambor
91c5e82e7b tests: boot: test_mcuboot: add stm32h573i_dk
Add stm32h573i_dk and the ext_flash_app board to the allowed boards
for the mcuboot tests.

Signed-off-by: Tim Pambor <tim.pambor@codewrights.de>
2025-10-24 01:11:22 +03:00
Tim Pambor
7a7f6db04d samples: sysbuild: with_mcuboot: Replace overlay with new board variant
Replace overlay for stm32h573i_dk with new board variant designed to
run in external flash. Keep stm32h573i_dk as it also can run mcuboot.

Signed-off-by: Tim Pambor <tim.pambor@codewrights.de>
2025-10-24 01:11:22 +03:00
Tim Pambor
c275d4ebcc samples: mgmt: hawkbit: Replace overlay with new board variant
Replace overlay for stm32h573i_dk with new board variant designed to
run from external flash.

Signed-off-by: Tim Pambor <tim.pambor@codewrights.de>
2025-10-24 01:11:22 +03:00
Tim Pambor
f6a9f1f44e boards: st: stm32h573i_dk: Add board variant for app in external flash
Restore old internal flash layout as default and make app in external
flash a new board variant

Switch mcuboot to use swap mode and remove the no longer required
scratch partitions from the internal and external flash layout.

Introduce a 'soc-nv-flash' node in the stm32h573i_dk board DTS file
to define the external flash memory parameters used for MCUBoot
integration. This way BOOT_MAX_IMG_SECTORS_AUTO can be used to
automatically calculate the maximum number of image sectors based
on the actual external flash configuration.

Signed-off-by: Tim Pambor <tim.pambor@codewrights.de>
2025-10-24 01:11:22 +03:00
Tim Pambor
7845481eba soc: st: stm32: Use flash-controller to detect running from external flash
Use the zephyr,flash-controller node and the respective compatible
'st,stm32-xspi-nor' to detect if the device is running from external
flash, instead of assuming that the parent node of the flash is the
SPI controller. This fixes an issue when soc-nv-flash is used as the
zephyr,flash node.

Signed-off-by: Tim Pambor <tim.pambor@codewrights.de>
2025-10-24 01:11:22 +03:00
Kyle Bonnici
0df11fc46b DTS: Align *-map-mask, *-map-pass-thru types
This PR aligns all the bindings types for Nexus nodes.

Now all are the same as ./zephyr/dts/bindings/pwm/pwm-nexus.yaml

Signed-off-by: Kyle Bonnici <kyle.bonnici@nordicsemi.no>
2025-10-24 01:11:12 +03:00
Siratul Islam
0974e9b471 drivers: display: add HUB12 LED matrix driver
Add driver for HUB12 interface monochrome LED matrix displays.

Features:
- 32x16 pixel resolution, 1-bit monochrome (PIXEL_FORMAT_MONO01)
- SPI-based data transfer with shift registers
- Configurable brightness control
- Thread-safe framebuffer access with semaphore

The driver implements the standard Zephyr display API

Signed-off-by: Siratul Islam <sirat4757@gmail.com>
2025-10-24 01:10:57 +03:00
Siratul Islam
1230358e4c dts: bindings: display: add HUB12 LED matrix binding
Add device tree binding for HUB12 interface monochrome LED matrix
displays (32x16 pixels).

The HUB12 interface uses SPI for data transfer to shift registers,
with additional GPIO pins for row address selection (PA, PB),
output enable (PE), and data latching (PLAT).

Signed-off-by: Siratul Islam <sirat4757@gmail.com>
2025-10-24 01:10:57 +03:00
Fabio Baltieri
700a1a5a28 lib, kernel: use single evaluation min/max/clamp
Replace all in-function instances of MIN/MAX/CLAMP with the single
evaluation version min/max/clamp.

There's probably no race conditions in these files, but the single
evaluation ones save a couple of instructions each so they should save
few code bytes and potentially perform better, so they should be
preferred in general.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2025-10-24 01:10:40 +03:00
Peter Mitsis
3d93fa23e0 tests: Fix warning found with arcmwdt toolchain
In the lib/notify test, the callback function pointer should be cast
to the proper type when calling it. This fixes a warning found when
using the arcmwdt toolchain.

Signed-off-by: Peter Mitsis <peter.mitsis@intel.com>
2025-10-24 01:10:29 +03:00
George Stefan
e25a7417f1 drivers: ieee802154: mcxw: disable poll optimization
The 802.15.4 PHY has the poll optimization enabled by default.
Disable it until the driver state machine is updated.

Signed-off-by: George Stefan <george.stefan@nxp.com>
2025-10-24 01:10:20 +03:00
Axel Le Bourhis
4e886d4d39 soc: nxp: mcxw72: update shared memory placement
mcxw72 shared memory placement has been changed with MCUXSDK 25.09
update.
Moving the shared memory declaration to mcxw71 and mcxw72 specific dts
since the placement is now different.

Signed-off-by: Axel Le Bourhis <axel.lebourhis@nxp.com>
2025-10-24 01:10:20 +03:00
Axel Le Bourhis
e038b27e95 manifest: update hal_nxp
Update MCXW7x nbu_ble blobs for MCUXSDK 25.09.

Signed-off-by: Axel Le Bourhis <axel.lebourhis@nxp.com>
2025-10-24 01:10:20 +03:00
Kyle Micallef Bonnici
1dc7eb995d CI: devicetree: linting to check_compliance.py
Use dts-linter to check each touched file in PR

Signed-off-by: Kyle Micallef Bonnici <kylebonnici@hotmail.com>
2025-10-23 16:04:38 -04:00
Abhinav Kulkarni
0d2e8954a0 boards: shields: nxp_m2_wifi_bt: overlay update
- Updated shield overlay file for RT1060 with sdio power and reset pins
- added device tree node in sdhc for sd reset pin
- added power gpio toggle logic

Signed-off-by: Abhinav Kulkarni <abhinav.kulkarni@nxp.com>
2025-10-23 16:04:22 -04:00
Sanjay Yadav
84b2bd5ccc samples: net: wifi: nxp: update conf for memory optimization
Updated config file to optimize memory by configuring net related settings
and thread priority settings

Signed-off-by: Sanjay Yadav <sanjay.yadav@nxp.com>
2025-10-23 16:04:22 -04:00
Alain Volmat
66b8139053 samples: usb: uvc: select applicable resolutions from range
Select from commonly used resolution when the video device
advertise capabilities using range.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-10-23 16:03:10 -04:00
Alain Volmat
4642de5d40 samples: usb: uvc: use video_set_compose_format
Use the helper video_set_compose_format in order to
allow controlling the compose.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-10-23 16:03:10 -04:00
Alain Volmat
1257c50122 samples: usb: uvc: ensure video buffer is properly aligned
Honor the CONFIG_VIDEO_BUFFER_POOL_ALIGN config by using the
video_buffer_aligned_alloc function instead of video_buffer_alloc
in order to provide properly aligned buffers to drivers.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-10-23 16:03:10 -04:00
Alain Volmat
e7bae6ce88 samples: video: capture: use video_set_compose_format helper
Simplify the code by using the video_set_compose_format helper.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-10-23 16:03:10 -04:00
Alain Volmat
38a21cc1a2 video: introduce video_set_compose_format helper
Some devices allow for downscale / upscale via the set_selection
compose API. When using it, it is necessary to perform a
set_selection of the compose target prior to setting the format.
In order to allow non-compose aware application to benefit from
it, introduce a helper which take care of setting the compose
prior to setting the format.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-10-23 16:03:10 -04:00
Alain Volmat
126aaf6b72 video: dcmipp: expose dcmipp caps for all 3 pipes.
Currently the DCMIPP driver rely on a Kconfig in order to
select the right sensor resolution / format to pick.
This also makes the exposure of caps easier since it can
be exposed as:
  DUMP pipe: same caps as mentioned in Kconfig
  MAIN pipe: any format supported on this pipe and resolution
             starting at sensor selected resolution down to
             64 times smaller (which is the maximum of the
             downscale)
  AUX pipe: same as MAIN except without the semi-planar and
            planar formats

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-10-23 16:03:10 -04:00
Mario Paja
c8092a647d samples: i2s: output: add nucleo_wba55cg
Add nucleo_wba55cg in samples/drivers/i2s/output

Signed-off-by: Mario Paja <mariopaja@hotmail.com>
2025-10-23 16:03:01 -04:00
Mario Paja
6108065ee5 dts: st: wba: add sai1 node
Add SAI1 A & B to STM32WBA55/65 Series

Signed-off-by: Mario Paja <mariopaja@hotmail.com>
2025-10-23 16:03:01 -04:00
Mario Paja
2029ef309f dts: bindings: clock: stm32wba pll clock add div-p
Add missing div-p division factor for pll clock and
respective tests in test/clock_control/stm32_clock_configuration

Signed-off-by: Mario Paja <mariopaja@hotmail.com>
2025-10-23 16:03:01 -04:00
Mario Paja
6ee8d74a0d dt-bindings: clock: stm32wba add SAI1_SEL()
Add SAI1_SEL() clock sourse for SAI1

Signed-off-by: Mario Paja <mariopaja@hotmail.com>
2025-10-23 16:03:01 -04:00
Ryan Erickson
631dbd98b4 drivers: can: tcan4x5x: Add device PM support
Add support for device runtime power management.
Suspending the device will place it into sleep mode, its lowest
power state.
All config will be lost when suspending the device.
Do not allow suspending the device if it is started or has
RX filters registered.
The application has to reconfigure the CAN device to resume
expected operation.

Signed-off-by: Ryan Erickson <ryan.erickson@ezurio.com>
2025-10-23 16:02:36 -04:00
Nilesh Vyas
9ca3cad57d script: footprint: Improve C++ static variable reporting
Enhance the `size_report` script to correctly categorize static C++
variables in the memory report.

Static C++ variables are currently listed under the "No paths"
category in the size report. This occurs because the script's
address-based mapping logic is designed for functions, which
occupy an address range, but fails to handle variables that
have only a single memory address.

This commit improves the `do_address_range_matching` function
to handle single-address mappings. The updated logic now correctly
identifies and assigns static C++ variables to their corresponding
source file paths in the report tree, providing a more accurate and
comprehensive memory footprint analysis for C++ applications.

This enhancement ensures that all symbols, regardless of their
linkage or type, are correctly placed in the report, providing a
more accurate overview of memory usage.

Signed-off-by: Nilesh Vyas <nileshvyas1112@gmail.com>
2025-10-23 16:02:23 -04:00
Tomas Barak
bb5df8e150 samples: i2s_codec: enable i2s_codec sample for mcx_n5xx_evk
- in order to test the loopback from PDM to I2S on the mcx_n5xx_evk
  it is necessary to add the dts nodes for SAI1 and MICFIL channels
- note that the configuration is using the newly introduced stream
  parameters (bytes_per_sample, sample_width, extra_blocks)
- add mcx_n5xx_evk/mcxn547/cpu0 to sample.yaml in order to allow this
  platform to be part of the CI tests

Signed-off-by: Tomas Barak <tomas.barak@nxp.com>
2025-10-23 16:02:09 -04:00
Tomas Barak
12ce37e7de board: mcx_nx4x: format board.c
- format mcx_nx4x_evk board.c which is not formatted according to the
  coding standards
- improve code readability and maintainability

Signed-off-by: Tomas Barak <tomas.barak@nxp.com>
2025-10-23 16:02:09 -04:00
Tomas Barak
c0b505b07b board: mcx_n5xx: Enable MICFIL and da7212 codec on mcx_n5xx
- in order to enable micfil on the mcx_n5xx board, it is necessary to
  enable the appropriate clock in the board.c
- create the proper pin_mux for micfil and da7212 codec and i2c which is
  used to communicate with the codec to enable micfil and da7212 codec
  in the mcx_n5xx dts

Signed-off-by: Tomas Barak <tomas.barak@nxp.com>
2025-10-23 16:02:09 -04:00
Tomas Barak
9f5d7374e4 soc: nxp: mcxn: remove trgmux dependency
- since trgmux IP is not present on mcxn5xx platform, remove
  the dependency to fix build issues

Signed-off-by: Tomas Barak <tomas.barak@nxp.com>
2025-10-23 16:02:09 -04:00
Vit Stanicek
8650b623f5 soc: mcxnx4x: Instantiate MICFIL
Add the micfil node to nxp_mcxnx4x_common.dtsi.

Signed-off-by: Vit Stanicek <vit.stanicek@nxp.com>
2025-10-23 16:02:09 -04:00
The Nguyen
69bd248b3d soc: ra8t2: add linker cmake generation directive
Add section define for ra8t2 when using with cmake linker generator

Signed-off-by: The Nguyen <the.nguyen.yf@renesas.com>
2025-10-23 16:01:59 -04:00
Jérôme Pouiller
d30c4ec76c test: siwx91x: Align SPI tests
We now support GPDMA with SPI. So update the tests to reflect this changes.

Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
2025-10-23 16:01:37 -04:00
Jérôme Pouiller
f6f3dcfd86 test: siwx91x: Fix undefined CS
No GPIO was defined for CS 1. It caused NULL pointer exception during the
test.

Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
2025-10-23 16:01:37 -04:00
Jérôme Pouiller
1f1f3e4594 drivers: spi: siwx91x: Use GPDMA rather than UDMA
Silabs siwx91x offer two DMA hardware block: GPDMA and UDMA.

While UDMA has some benefit when running in low power modes, GPDMA offer
better performances. So GDMA is probably better suited for SPI device.

Ideally, we would like to leave the ability to switch back to UDMA.
Unfortunately, UDMA and GPDMA are not configured in the same way:
  - the maximum length of the block are different (1024 or 2048 for UDMA
    and 4096 for GPDMA)
  - the burst length is different

So, we only support GPDMA.

Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
2025-10-23 16:01:37 -04:00
Jérôme Pouiller
0594a1872c drivers: spi: siwx91x: Fix indentation
Since various macros don't end with a colon, the code formatters give bad
results. Let's fix that.

Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
2025-10-23 16:01:37 -04:00
Jérôme Pouiller
f563f123aa drivers: spi: siwx91x: Add support for dma_slot attribute
The siwx91x platform provides two DMA block: UDMA and GPDMA. GPDMA require
the dma_slot attribute.

Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
2025-10-23 16:01:37 -04:00
Jérôme Pouiller
627aeb84f7 drivers: spi: siwx91x: Fix memory alignements
The DMAs expect a 32 bits aligned address as source.

Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
2025-10-23 16:01:37 -04:00
Jérôme Pouiller
fb0dd841ff drivers: dma: siwx91x: Check buffers alignments
GPDMA hardware block has some requirement regarding the buffers alignments.

Note the previous condition was too permissive. It ignored
source_burst_length during the check of the transaction size.

Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
2025-10-23 16:01:37 -04:00
Jérôme Pouiller
7e90e45b7a drivers: dma: siwx91x: Fix log messages
LOG_*() macros automatically add \n at the end of the messages. Code
shouldn't add one.

Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
2025-10-23 16:01:37 -04:00
Jérôme Pouiller
4901638d85 boards: silabs: swix91x: Reorder DMA nodes
Group the DMA nodes in the same place.

Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
2025-10-23 16:01:37 -04:00
Raffael Rostagno
d18ecc06bd soc: esp32h2: esp32c6: Add coex support
Add coexistance support when enabling IEEE802.15.4 with another
radio device (BT or Wi-Fi), for ESP32-H2 and ESP32-C6.

Signed-off-by: Raffael Rostagno <raffael.rostagno@espressif.com>
2025-10-23 16:01:25 -04:00
Raffael Rostagno
5f5466e302 west.yml: hal_espressif: Update for coex support
Update HAL to add IEEE802.15.4. coex support for ESP32-C6 and
ESP32-H2.

Signed-off-by: Raffael Rostagno <raffael.rostagno@espressif.com>
2025-10-23 16:01:25 -04:00
Jamie McCrae
4023752a5c arch: riscv: core: vector_table: Fix local ISR generation
Fixes local ISR generation so that devices actually boot, also
allows enabling LTO for these builds (tested working on nrf54l15
flpr device)

Signed-off-by: Jamie McCrae <spam@helper3000.net>
2025-10-23 16:01:12 -04:00
Vladislav Kulikov
ffd1403093 lib: smf: rename share_parent() to is_descendant_of()
Make the name more descriptive.

Signed-off-by: Vladislav Kulikov <vlad_kulikov_c@pm.me>
2025-10-23 16:00:50 -04:00
Jilay Pandya
7c87d89bf5 drivers: stepper: adi_tmc: refactor common headers
currently adi_tmc5xxx_common.h and adi_tmc_reg.h are placed
directly in the adi_tmc folder, however placing them in a
common folder and adding to the include directories results
in the drivers not having to include these files using relative
paths.

Signed-off-by: Jilay Pandya <jilay.pandya@outlook.com>
2025-10-23 16:00:41 -04:00
Benjamin Cabé
7150693b9d doc: _extensions: kconfig: implement basic scoring of search results
This implements a few improvements to make Kconfig search results more
relevant:

- A match in a symbol's name is given more weight than a match in its
  prompt.
- Field-length normalization is applied so that the shorter the field,
  the higher its relevance (e.g. searching for "sensor" will basically
  yield CONFIG_SENSOR as the top result as the query basically matches
  100% of the symbol's name.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-10-23 16:00:32 -04:00
Keith Short
028cf7f3d9 twister: fix environment:os tag
Set the environment:os tag to the return value of platform.system(),
which is more useful than os.name() which always returns "posix".

Signed-off-by: Keith Short <keithshort@google.com>
2025-10-23 15:59:41 -04:00
Flavio Ceolin
755deaa669 doc: vuln: Add CVE under embargo
Add an entry to CVE-2025-12035

Signed-off-by: Flavio Ceolin <flavio@hubblenetwork.com>
2025-10-23 15:59:30 -04:00
Flavio Ceolin
b2f42f17ac doc: release/4.3: Add CVE under embargo
Add information about CVE under embargo.

Signed-off-by: Flavio Ceolin <flavio@hubblenetwork.com>
2025-10-23 15:59:30 -04:00
Nicolas Pitre
16905f5475 riscv: pmp: move the null pointer trap first
Let's move the null pointer trap first so to give set_pmp_entry() the
opportunity to use a single-slot TOR entry.

Signed-off-by: Nicolas Pitre <npitre@baylibre.com>
2025-10-23 15:59:19 -04:00
Dawid Niedzwiecki
283365a496 drivers: flash: andes_xip: update include
Include a new andes_csr.h file instead of soc_v5.h.

Signed-off-by: Dawid Niedzwiecki <dawidn@google.com>
2025-10-23 15:59:11 -04:00
Henrik Brix Andersen
9f425d915c tests: drivers: can: shell: remove Kconfig based can_recover() skip
Remove false Z_TEST_SKIP_IFNDEF(CONFIG_CAN_MANUAL_RECOVERY_MODE) from the
CAN shell test suite.

The cmd_can_recover() shell function must always be tested and
CONFIG_CAN_MANUAL_RECOVERY_MODE is enabled in the test suite
prj.conf.

The test suite already relies on the capabilities of the CAN controller
driver for determining how to validate the API contract.

Signed-off-by: Henrik Brix Andersen <henrik@brixandersen.dk>
2025-10-23 15:57:23 -04:00
Henrik Brix Andersen
139acd3e78 tests: drivers: can: api: classic: remove Kconfig based can_recover() skip
Remove false Z_TEST_SKIP_IFNDEF(CONFIG_CAN_MANUAL_RECOVERY_MODE) from the
CAN classic test suite.

The can_recover() API function must always be tested and
CONFIG_CAN_MANUAL_RECOVERY_MODE is enabled in the test suite prj.conf.

The test suite already relies on the capabilities of the CAN controller
driver for determining how to validate the API contract.

Signed-off-by: Henrik Brix Andersen <henrik@brixandersen.dk>
2025-10-23 15:57:23 -04:00
Szymon Janc
b79ef27f14 tests: Bluetooth: Tester: Fix accessing out of scope variables in VCP
Input and output descriptors are writable storage for VCP parameters
and shall be valid for use duration. This fix usage of variables being
used outside of their declaration scope.

Signed-off-by: Szymon Janc <szymon.janc@codecoup.pl>
2025-10-23 15:55:31 -04:00
Benjamin Cabé
c57c00939e boards: microchip: fix webp image for pic32cm_jh01_cpro
This image was an avif file with a webp extension, which can cause
warnings when building docs.
Replace with webp version, with transparent background as a bonus.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-10-23 15:53:20 -04:00
Patryk Duda
a1a91262c4 testsuite: Do not specify dump method if hardware coverage is not set
After #94079, CONFIG_COVERAGE_DUMP is enabled even if CONFIG_COVERAGE is
not set. As a result CONFIG_ZTEST_NO_YIELD is disabled which has some
implications on other tests.

Coverage dump method is necessary only if coverage is collected on
hardware, which is enabled by CONFIG_COVERAGE_GCOV. Let's specify
default dump method, only if CONFIG_COVERAGE_GCOV is set.

Fixes: #94079
Signed-off-by: Patryk Duda <patrykd@google.com>
2025-10-23 15:53:10 -04:00
Declan Snyder
302e4d25eb tests: flash_interface_test: Only test if flash has driver
Add filter to check if there is actually a flash driver enabled. If not,
we can't run this test.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-10-23 15:53:00 -04:00
Andreas Kurz
0b5b6b827e native_simulator: Get latest from upstream
Align with native_simulator's upstream main
95f560a2140aacb03a74b8c933f3b27a59c56d50

Which includes:
95f560a: nct: fix possible redefinition of GNU_SOURCE

Signed-off-by: Andreas Kurz <info@akurz.net>
2025-10-23 18:08:14 +02:00
Guillaume Gautier
72cef9b458 tests: drivers: spi: loopback: boards: adjust scaling for stm32 boards
Adjust transfer duration scaling config for STM32 boards

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2025-10-23 18:07:18 +02:00
Guillaume Gautier
a80b420dda tests: drivers: spi: loopback: add stm32 spi rtio test case
Add a test case for STM32 SPI RTIO.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2025-10-23 18:07:18 +02:00
Guillaume Gautier
8f06e7616f drivers: spi: stm32: add rtio support
Add SPI RTIO support for STM32. SPI RTIO required interrupts.
DMA is not supported yet.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-10-23 18:07:18 +02:00
Etienne Carriere
3b856ccb11 drivers: spi: stm32: replace an #if with an if() in transceive()
Replace a #ifndef directive with a if(!IS_ENABLED()) instrcution
in transceive() function. This change makes later integration of RTIO
support in this function smoother, polluting a bit less this function
with #if based directives.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-10-23 18:07:18 +02:00
Etienne Carriere
21827ce8e3 drivers: spi: stm32: remove useless inline keywords
Remove useless inline keywords in STM32 SPI driver.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-10-23 18:07:18 +02:00
Etienne Carriere
2c62291d22 drivers: spi: stm32: fix missing braces in conditioned instruction
Fix a missing braces pair around a conditioned instruction in
STM32 SPI driver. Fix that by aggregating the 2 if() instructions
into a single ANDed one.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-10-23 18:07:18 +02:00
Etienne Carriere
21dd1db3dd drivers: spi: stm32: correct indentation
Correct some indentation issues, a few useless line escapes,
double space characters or parentheses pair in STM32 SPI driver.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-10-23 18:07:18 +02:00
Etienne Carriere
c0fdf66991 drivers: spi: stm32: explicit boolean test
Use explicit boolean tests in STM32 SPI driver.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-10-23 18:07:18 +02:00
Etienne Carriere
24530175c0 drivers: spi stm32: remove bits2byte()
Remove bits2byte() helper function than was not always used. Replace it
with a division by BITS_PER_BYTE that is explicit enough.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-10-23 18:07:18 +02:00
Etienne Carriere
5ad47994da drivers: spi: stm32: remove useless LOG_LEVEL
Remove useless LOG_LEVEL in STM32 SPI RTIO driver.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-10-23 18:07:18 +02:00
Etienne Carriere
87e752495b drivers: spi: stm32: reorder header inclusion
Reorder inclusions of header files to clarify and simplify later changes.
By the way, remove #ifdef CONFIG_SPI_STM32_DMA condition to include
DMA header files as its not required.

Keep zephyr/log.h with use of LOG_MODULE_REGISTER() first since included
local spi_context.h depends on log resources to be defined.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-10-23 18:07:18 +02:00
Etienne Carriere
88db1357b6 drivers: spi: stm32: don't include zephyr/arch/cache.h
Remove inclusion of zephyr_arch/cache.h header file from STM32 SPI
driver. This header file is included by zephyr/cache.h if applicable
(e.g. CONFIG_ARCH_CACHE is enabled) and should not be used when
CONFIG_EXTERNAL_CACHE is enabled.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-10-23 18:07:18 +02:00
Guillaume Gautier
720ee56137 drivers: spi: stm32: prepare for rtio integration
Move some code into a new function to prepare for RTIO integration.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-10-23 18:07:18 +02:00
Bjarki Arge Andreasen
d7a7cca3b7 tests: drivers: spi_loopback: increase latency limit for nrf54h
The nrf54h20 needs a slightly increased latency limit as the latency
is around 650us at 8MHz, which is right above the current limit of
648us (CONFIG_SPI_IDEAL_TRANSFER_DURATION_SCALING=12).

Increase CONFIG_SPI_IDEAL_TRANSFER_DURATION_SCALING to 15 to match
cpuppr_xip and match the observed latency.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-10-23 18:06:30 +02:00
Bjarki Arge Andreasen
e9b7925992 tests: arch: arm: irq_vector_table: disable POWER_DOMAIN for nRF54H20
The nRF54H20s power domains use NRFS, which uses the irq vectors used
for this test suite. Disable power domains to not conflict with the
test suite.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-10-23 18:06:30 +02:00
Bjarki Arge Andreasen
beacd7c181 dts: drivers: nordic: nrf54h: Don't manage clocks from drivers
Clocks are requested automatically by hardware on the nRF54H.

Remove additional handling from device drivers, and disable
the now unmanaged clocks in the devicetree.

Updates:
  - can_nrf
  - counter_nrfx_timer
  - uart_nrfx_uarte
  - spi_nrfx_spim
  - spi_nrfx_spis

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-10-23 18:06:30 +02:00
Bjarki Arge Andreasen
bbad3d9717 drivers: nordic: support pin retention for AIN
Devices which use AIN (COMP, LPCOMP, SAADC) don't use pinctrl to
configure their pins, thus pinctrl can't manage pin retention like
is done for other devices. Thus for now, add manually disabling
pin retention to the drivers.

In the future, we should probably use pinctrl for these inputs
as well, at which point this commit can be reverted.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-10-23 18:06:30 +02:00
Bjarki Arge Andreasen
e092eae90a drivers: gpio: remove pad group integration
Replace the pad group integration with directly setting/clearing
pin retention for output pins if required, since the pad group
integration is redundant if the quirky cross domain feature is
managed by the application.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-10-23 18:06:30 +02:00
Bjarki Arge Andreasen
0a8888d000 drivers: pinctrl: nrf: simplify pin retention
GPIO pad power domain management is not neccesary if the quirky
cross domain feature is handled at the application level. Replace it
with directly setting/clearing pin retention, as hardware will force
power domains on automatically.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-10-23 18:06:30 +02:00
Bjarki Arge Andreasen
3a74ed7013 dts: vendor: nordic: nrf54h: remove gpio-pad-groups
The gpio pad groups are redundant if pin retention is handled per
pin, and the quirky cross domain feature is managed by the
application. Remove it entirely.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-10-23 18:06:30 +02:00
Bjarki Arge Andreasen
191c9e47fd dts: vendor: nordic: nrf54h: remove power-domains from devices
All devices used in their "normal"/intended configuration do not
require management of the power domains, as the hardware itself will
request them automatically. Thus by default, don't specify the
power domains to avoid redundant resume/suspend cycles, which are
slow and require threading (IPC) making devices not isr ok.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-10-23 18:06:30 +02:00
Torsten Rasmussen
bbfcaa2e1b tests: remove misuse of snippets
Tests cases which needs to apply a single overlay file for testing
should not use snippets.

Cleanup the test case by reordering the snippet to be SoC specific and
adjust overlay selection using FILE_SUFFIX.

Signed-off-by: Torsten Rasmussen <Torsten.Rasmussen@nordicsemi.no>
2025-10-23 18:04:54 +02:00
Tahsin Mutlugun
4b1f9bab42 boards: adi: Correct flash node assignment for MAX32655 boards
Fixes a regression introduced in commit ef6aad9ca6 where the flash
node was incorrectly set to code_partition, causing FLASH_BASE_ADDRESS
to default to 0x0 and making the device unprogrammable.

Signed-off-by: Tahsin Mutlugun <Tahsin.Mutlugun@analog.com>
2025-10-23 18:04:45 +02:00
Jordan Yates
0d86ebb83b llext: load: memcpy section header
When loading from `.elf` files, it is not guaranteed that section
headers are word aligned with the `.elf` file. Attempting to perform
a direct assignment results in the compiler assuming the input pointer
is aligned, resulting in usage faults if the assumption is broken.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-10-23 18:04:34 +02:00
Ricardo Cañuelo Navarro
61e177f521 Bluetooth: Host: remove unnecessary assignment in bt_conn_unref()
This local pointer assignment does nothing and readers may get a wrong
interpretation of the intention of the function.

Signed-off-by: Ricardo Cañuelo Navarro <rcn@igalia.com>
2025-10-23 18:04:18 +02:00
Yurii Lozynskyi
dc842e1673 boards: infineon: fixed documentation for kit_pse84_eval board
Fixed documentation for the PSOC Edge E84 Evaluation Kit

Signed-off-by: Yurii Lozynskyi <yurii.lozynskyi@infineon.com>
2025-10-23 18:04:06 +02:00
Kamil Krzyżanowski
0a047679fe drivers: serial: stm32: don't allow async TX on a suspended UART
Return an error if trying to send data using a suspended UART,
instead of blocking, possibly forever, for a transmission that will never
succeed.

Signed-off-by: Kamil Krzyżanowski <kamnxt@kamnxt.com>
2025-10-23 18:03:49 +02:00
Fabrice DJIATSA
9defa3cd65 samples: net: zperf: update async_tx scenario configuration
Add console harness and a dedicated regex word for test validation

on STM32 platforms compatible with HAL_API_V2.

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2025-10-23 18:03:27 +02:00
Alvis Sun
acc8fdfd4f drivers: i3c: npcx: add device only when IBI enable succeeds
Ensure the device is added to the list only if the ENEC I3C
transaction succeeds.
Adding the device before enabling IBI may cause IBI retry failures
due to the device already being present in the list.

Signed-off-by: Alvis Sun <yfsun@nuvoton.com>
2025-10-23 18:03:15 +02:00
Valerio Setti
9c13bfd5d7 net: ip: ipv6: replace legacy crypto with PSA API
Zephyr's long term goal for crypto support is to use only PSA API. This
commit replaces usages of MD with proper PSA API for HMAC.

Signed-off-by: Valerio Setti <vsetti@baylibre.com>
2025-10-23 18:02:56 +02:00
Valerio Setti
d33c4ef96f tests: net: iface: increase main stack size in net.iface.iid.stable
Moving from legacy Mbed TLS crypto to PSA API would cause mps2/an385
platform to fail due to stack overflow. This commit increases
the stack size to solve this problem.

Signed-off-by: Valerio Setti <vsetti@baylibre.com>
2025-10-23 18:02:56 +02:00
Valerio Setti
6115d590ca west: mbedtls: include a fix for static key slot key material buffer size
Include a fix for the allocated buffers in case of static key slots.

Signed-off-by: Valerio Setti <vsetti@baylibre.com>
2025-10-23 18:02:56 +02:00
Valerio Setti
00eee1ad78 jwt: deprecate CONFIG_JWT_SIGN_RSA_LEGACY
With the long term goal to transition all crypto support toward PSA API,
this commit deprecates CONFIG_JWT_SIGN_RSA_LEGACY.

Signed-off-by: Valerio Setti <vsetti@baylibre.com>
2025-10-23 18:02:37 +02:00
David Jewsbury
d9677bbd7b drivers: mspi: mspi_dw: Add DMA support
Initial DMA support. DMA supports implementation of SSI IP but using vendor
specific DMA in the wrapper. The setup of the DMA is done in
mspi_dw_vendor_specific.h.

Signed-off-by: David Jewsbury <david.jewsbury@nordicsemi.no>
2025-10-23 18:00:13 +02:00
David Jewsbury
a18fd95004 drivers: mspi_dw: Add support for slave mode
MSPI slave mode is selected through devicetree using the
op-mode property. Mode selected by SSIISMST bit in the
CTRLR0 register. EXMIF can only be Master (controller).

Signed-off-by: David Jewsbury <david.jewsbury@nordicsemi.no>
2025-10-23 18:00:13 +02:00
David Jewsbury
2f1ee737b3 drivers: mspi_dw: Add support for asynchronous transfers
Handling of asynchronous transfers uses the system workqueue,
hence they are not available when multithreading is disabled.

Also add missing dependency on multithreading in the
MSPI_DW_HANDLE_FIFOS_IN_SYSTEM_WORKQUEUE Kconfig option.

Signed-off-by: David Jewsbury <david.jewsbury@nordicsemi.no>
Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
2025-10-23 18:00:13 +02:00
David Jewsbury
032ca4c894 dts: mspi: Align op-mode binding with mspi.h enum
enum mspi_op_mode in mspi.h has different syntax to this binding.
Aligning these will allow for cleaner code in the implmented drivers.

Signed-off-by: David Jewsbury <david.jewsbury@nordicsemi.no>
2025-10-23 18:00:13 +02:00
David Jewsbury
a322957f59 drivers: mspi: Add timeout callback to MSPI API
This is a new callback option that drivers can use for when a request
or xfer has timed out. E.g if an Async RX request never received
anything, this callback can be used so a user can clean up their
application.

Signed-off-by: David Jewsbury <david.jewsbury@nordicsemi.no>
2025-10-23 18:00:13 +02:00
David Jewsbury
ac94ca7894 drivers: pinctrl: nrf: add support for MSPI
Support for new MSPI peripheral where there is no PSEL
so pins are setup through CTRLSEL.

Signed-off-by: David Jewsbury <david.jewsbury@nordicsemi.no>
2025-10-23 18:00:13 +02:00
David Jewsbury
72dd539cba dts: nordic: Add nrf-qspi-v2 binding
The nrf-qspi-v2 peripheral is similar to EXMIF on nrf54h20
but supports DMA and slave-mode. The wrapper around
the SSI IP is also different with DMA features.

Signed-off-by: David Jewsbury <david.jewsbury@nordicsemi.no>
2025-10-23 18:00:13 +02:00
Aksel Skauge Mellbye
b960514cdc boards: silabs: Add xg26 radio boards
Add radio boards for EFR32xG26 and xGM260P.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-10-23 17:57:39 +02:00
Aksel Skauge Mellbye
1304142e80 boards: silabs: Add xg26 explorer kits
Add explorer kits for EFM32PG26, EFR32xG26 and xGM240P.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-10-23 17:57:39 +02:00
Aksel Skauge Mellbye
ca4164bf0b soc: silabs: Add xg26 soc support
Add hwmv2 integration for xg26 device families:

* efm32pg26
* efr32bg26
* efr32mg26
* bgm26
* mgm26

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-10-23 17:57:39 +02:00
Aksel Skauge Mellbye
630ac65cf2 soc: silabs: Support devices with 3 PPU registers
Support xg26, which has a third PPU security attribution register.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-10-23 17:57:39 +02:00
Aksel Skauge Mellbye
73151ad79c include: zephyr: dt-bindings: Add Silicon Labs xg26 binding headers
Add binding headers for clock control and pinctrl for Silicon Labs
xg26 socs.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-10-23 17:57:39 +02:00
Aksel Skauge Mellbye
117973287f dts: arm: silabs: Add xg26 devicetree files
Add .dtsi files for xg26 device families:

* efm32pg26
* efr32bg26
* efr32mg26
* bgm26
* mgm26

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-10-23 17:57:39 +02:00
Gerard Marull-Paretas
c04139ed56 boards: coredevices: add pebble time 2
Add board for Pebble Time 2. Just a subset of the peripherals is
supported right now.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2025-10-23 17:57:25 +02:00
Gerard Marull-Paretas
e97d1c0d40 dts: bindings: vendor-prefixes: add coredevices
Add entry for Core Devices LLC

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2025-10-23 17:57:25 +02:00
Martin Hoff
83a052f190 driver: dma: dma_silabs_siwx91x_gpdma: Add pm support
This commit introduce power management in gpdma driver.

Signed-off-by: Martin Hoff <martin.hoff@silabs.com>
2025-10-23 17:57:14 +02:00
Biwen Li
bd3dab0461 board: nxp: imx943_evk: Fixes phy addr
Correct phy address.

Signed-off-by: Biwen Li <biwen.li@nxp.com>
2025-10-23 17:56:36 +02:00
Vinayak Kariappa Chettimada
d737e285e5 Bluetooth: Controller: Add code comments related to short prepare
Add code comments explaining the handling of short prepare
that can be enqueued out of order and present in use of FIFO
for prepare pipeline.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2025-10-23 17:56:05 +02:00
Khoa Nguyen
e5e1edde72 tests: drivers: flash: common: Remove storage_partition definition
Remove storage_partition definition for Renesas ek_ra8p1, mck_ra8t2

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-10-23 17:55:38 +02:00
Khoa Nguyen
7fb956b44d boards: renesas: Add support MCUBoot for ek_ra8p1 and mck_ra8t2
Add support MCUBoot for ek_ra8p1 and mck_ra8t2

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-10-23 17:55:38 +02:00
Khoa Nguyen
bc35c10247 manifest: Update hal_renesas revision to get MCUBoot support
Update hal_renesas revision to get MCUBoot support

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-10-23 17:55:38 +02:00
Qingsong Gou
039389187f drivers: clock_control: fix sf32lb clock_control typo
fix a sf3232lb_clock_is_ready_dt typo

Signed-off-by: Qingsong Gou <gouqs@hotmail.com>
2025-10-23 17:53:25 +02:00
Riadh Ghaddab
ac3e7cb6da tests: boards: nrf: add rram_throttling test
Verifies that the throttling is working for boards that enable
CONFIG_SOC_FLASH_NRF_THROTTLING

Signed-off-by: Riadh Ghaddab <riadh.ghaddab@nordicsemi.no>
2025-10-23 17:52:08 +02:00
Emil Gydesen
f487439fbc Bluetooth: ISO: Fix issue with CIG being terminated
In the case of a CIG having multiple CIS, and all CIS has been
requested to being disconnected (i.e. they all enter the
BT_ISO_STATE_DISCONNECTING state), then when the first disconnect
complete is handled in bt_iso_chan_disconnected, then the
cig->state was prematurely set to BT_ISO_CIG_STATE_INACTIVE.
This meant that if the application called bt_iso_cig_terminate
when the 2nd CIS entered bt_iso_chan_disconnected and called
chan->ops->disconnected(chan, reason) then the CIG would be
removed. When the CIS then entered bt_iso_cleanup_acl, it
would access removed data from cleanup_cig.

Change bt_iso_chan_disconnected to not allow the termination
of the CIG until all CIS have entered the BT_ISO_STATE_DISCONNECTED
state.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-10-23 17:51:18 +02:00
Chris Friedt
da60309b10 drivers: smbus: stm32: implement smbus_stm32_pcall() with pec
Implement smbus_stm32_pcall() with packet error correction.

For more information, please see chapter 6.5.6 of the SMBus specification.
https://smbus.org/specs/SMBus_3_1_20180319.pdf

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-10-23 17:51:09 +02:00
Chris Friedt
ee135a8a3c drivers: smbus: stm32: implement smbus_stm32_block_pcall() with pec
Add SMBus Block Write-Block Read Process Call API for STM32.

This implementation also supports PEC mode (packet error checking) and is
dependent on PEC support already being supported in-tree.

Signed-off-by: James Growden <jgrowden@tenstorrent.com>
Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-10-23 17:51:09 +02:00
Rubin Gerritsen
43cd4caee8 soc: nordic: nrf54h: s2ram: Use ARM FPU save/restore funcs
This reduced the amount of duplicate code and unifies the code
with other platforms.

With this change the caller and callee status registers are
stored separately. Also, a different set of status registers
are stored:
 - FPSCR instead of FPDSCR. FPDSCR contains the default values
   to be assigned to FPSCR when a new floating-point context
   is created. It therefore seems more correct to store the
   FPSCR.
 - FPCCR and FPCAR are no longer stored.

FPU retention was originally added in:
8a5365c26c.

Signed-off-by: Rubin Gerritsen <rubin.gerritsen@nordicsemi.no>
2025-10-23 17:50:43 +02:00
Rubin Gerritsen
4c0d478576 soc: nordic: nrf54h: s2ram: Use ARM SCB save/restore funcs
This reduced the amount of duplicate code and unifies the code
with other platforms.

With this change fewer registers are stored and restored.
See also comment in scb.h for scb_context stating that
only essential registers are stored and restored.

No longer stored:
- ICSR
- SCR
- CFSR
- HFSR
- DFSR
- MMFAR
- BFAR
- AFSR

No longer used:
- SHPR[3..12]. This backup register was declared in the wrong way.
  In core_cm33.h and core_cm4.h this is declared as an array of
  12 uint8_t's. That is 3 uint32_t's.

Orignal SCB retention was added in
2055f7d595.

Signed-off-by: Rubin Gerritsen <rubin.gerritsen@nordicsemi.no>
2025-10-23 17:50:43 +02:00
Rubin Gerritsen
b45d7a8a62 soc: nordic: nrf54h: s2ram: Use ARM MPU save/restore funcs
This reduced the amount of duplicate code and unifies the code
with other platforms.

MPU retention was originally added in
ee9d23945f.

Signed-off-by: Rubin Gerritsen <rubin.gerritsen@nordicsemi.no>
2025-10-23 17:50:43 +02:00
Fabin V Martin
ea07b16f39 tests: boot: test_mcuboot: Add sam_e54_xpro to platform allow list
Enable mcuboot test for sam_e54_xpro board.

Signed-off-by: Fabin V Martin <Fabinv.Martin@microchip.com>
2025-10-23 17:50:29 +02:00
Fabin V Martin
4010667669 samples: sysbuild: update list of allowed platforms
Add sam_e54_xpro board to test mcuboot builds.

Signed-off-by: Fabin V Martin <Fabinv.Martin@microchip.com>
2025-10-23 17:50:29 +02:00
Fabin V Martin
81089841ec boards: microchip: Update sam_e54_xpro device tree
Add zephyr,flash-controller to the chosen node and
add partitions for mcuboot support

Signed-off-by: Fabin V Martin <Fabinv.Martin@microchip.com>
2025-10-23 17:50:29 +02:00
Fabin V Martin
0bd56429d3 drivers: flash: microchip: add flash g1 driver
Add flash driver for Microchip NVMCTRL g1

Signed-off-by: Fabin V Martin <Fabinv.Martin@microchip.com>
2025-10-23 17:50:29 +02:00
Fabin V Martin
41f9d4cd26 dts: arm: microchip: add flash node and bindings
Add flash node and binding parameters for nvmctrl
flash driver

Signed-off-by: Fabin V Martin <Fabinv.Martin@microchip.com>
2025-10-23 17:50:29 +02:00
Biwen Li
a0c5465ea7 boards: nxp: imx943_evk: doc: spell fix
This commit fixes spell and add info
to debugging system via JTAG interface.

Signed-off-by: Biwen Li <biwen.li@nxp.com>
2025-10-23 17:49:28 +02:00
Biwen Li
9f0c21daf1 boards: nxp: imx943_evk: m33: add lpuart3 node for debugging
Add lpuart3 node for debugging via JTAG interface

Signed-off-by: Biwen Li <biwen.li@nxp.com>
2025-10-23 17:49:28 +02:00
Biwen Li
6364fde3e0 samples: enable openamp sample for imx943 evk
Enable openamp sample for imx943 evk.

Default configuration in openamp sample(as master):
m33 as master, m7_1 as remote.
m7_0 as master, m33 as remote.
m7_1 as master, m33 as remote.

Default configuration in openamp/remote sample(as remote):
m7_1 as master, m33 as remote.
m33 as master, m7_0 as remote.
m33 as master, m7_1 as remote.

Signed-off-by: Biwen Li <biwen.li@nxp.com>
2025-10-23 17:49:28 +02:00
Biwen Li
0c2fe0c387 samples: enable ipc static vrings for imx943 evk
Enable ipc static vrings sample for imx943 evk.

Default configuration in static_vrings sample(as master):
m33 as master, m7_1 as remote.
m7_0 as master, m33 as remote.
m7_1 as master, m33 as remote.

Default configuration in static_vrings/remote sample(as remote):
m7_1 as master, m33 as remote.
m33 as master, m7_0 as remote.
m33 as master, m7_1 as remote.

Signed-off-by: Biwen Li <biwen.li@nxp.com>
2025-10-23 17:49:28 +02:00
Biwen Li
2e4cab8088 samples: enable mbox_data sample for imx943 evk
Enable mbox_data sample for imx943 evk.

Default configuration in mbox_data sample(as master):
m33 as master, m7_1 as remote.
m7_0 as master, m33 as remote.
m7_1 as master, m33 as remote.

Default configuration in mbox_data/remote sample(as remote):
m7_1 as master, m33 as remote.
m33 as master, m7_0 as remote.
m33 as master, m7_1 as remote.

Signed-off-by: Biwen Li <biwen.li@nxp.com>
2025-10-23 17:49:28 +02:00
Biwen Li
895e9ee85d samples: enable mbox sample for imx943 evk
Enable mbox sample for imx943 evk.

Default configuration in mbox sample(as master):
m33 as master, m7_1 as remote.
m7_0 as master, m33 as remote.
m7_1 as master, m33 as remote.

Default configuration in mbox/remote sample(as remote):
m7_1 as master, m33 as remote.
m33 as master, m7_0 as remote.
m33 as master, m7_1 as remote.

Signed-off-by: Biwen Li <biwen.li@nxp.com>
2025-10-23 17:49:28 +02:00
Biwen Li
c048b219ec boards: nxp: imx943_evk: remove robust comments
Remove robust comments.

Signed-off-by: Biwen Li <biwen.li@nxp.com>
2025-10-23 17:49:28 +02:00
Biwen Li
b79c449eff dts: arm: nxp: imx943: add mu and mbox nodes
This commit adds mu and mbox nodes
for Inter Processor Communication
and reuse nodes.

Signed-off-by: Biwen Li <biwen.li@nxp.com>
2025-10-23 17:49:28 +02:00
Mark Wang
3c4b4e1ae2 usb: device_next: msc: do not copy SCSI data
Support only power-of-two disk sector sizes to enable significant
throughput improvements:
  * SCSI data zero-copy
  * allow queuing multi-packet transfers

Previously large SCSI buffers did not improve performance. With this
change, larger SCSI buffer allows scheduling bigger USB transfers which
reduces overhead.

Co-authored-by: Tomasz Moń <tomasz.mon@nordicsemi.no>
Signed-off-by: Tomasz Moń <tomasz.mon@nordicsemi.no>
Signed-off-by: Mark Wang <yichang.wang@nxp.com>
2025-10-23 17:47:23 +02:00
Josuah Demangeon
ef3e8cc5cc doc: release: 4.3: add UVC changes
Add USB UVC device's new uvc_add_format() function to the release note,
and document the semantic changes of UVC APIs in the migration guide.

Signed-off-by: Josuah Demangeon <me@josuah.net>
2025-10-23 17:47:12 +02:00
Josuah Demangeon
ac808a5b2f samples: usb: uvc: add filtering of the format
The UVC class now lets the application select the format list sent to the
host. Leverage this in the sample to filter out any format that is not
expected to work (buffer too big, rarely supported formats).

Signed-off-by: Josuah Demangeon <me@josuah.net>
2025-10-23 17:47:12 +02:00
Josuah Demangeon
74e147e886 usb: device_next: uvc: remove application decisions from the UVC class
The UVC class was deciding itself which formats were sent to the host.
Remove this logic out of the UVC class and introduce uvc_add_format() to
give the application the freedom of which format to list.

Signed-off-by: Josuah Demangeon <me@josuah.net>
2025-10-23 17:47:12 +02:00
Josuah Demangeon
9771105768 usb: device_next: uvc: use fmt->size instead of computing it every time
Make use of the recently merged fmt->size to know the maximum size of the
frame to be allocated, which works for both compressed and uncompressed
video.

Signed-off-by: Josuah Demangeon <me@josuah.net>
2025-10-23 17:47:12 +02:00
Josuah Demangeon
bd1f72b0ba usb: device_next: uvc: propagate descriptor error to the application
When running out of descriptor, return an error instead of ignoring it.
The application need to make sure to adjust the Kconfig macros to have
enough descriptors for all formats to add.

Signed-off-by: Josuah Demangeon <me@josuah.net>
2025-10-23 17:47:12 +02:00
Vinayak Kariappa Chettimada
8aba2e3f3a Bluetooth: Controller: Enable OUTPUT_DISASSEMBLY_WITH_SOURCE with LTO
Enable OUTPUT_DISASSEMBLY_WITH_SOURCE when using LTO to help
find the assertion check in the source code corresponding to
the faulting instruction address.

arm-none-eabi-addr2line tool is not able to resolve the
source file and line number when using LTO.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2025-10-23 11:43:10 +03:00
Vinayak Kariappa Chettimada
29cf367568 samples: Bluetooth: hci_ipc: Enable HCI vendor-specific h/w error event
Enable HCI vendor-specific h/w error event generation in
samples and tests.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2025-10-23 11:43:10 +03:00
Vinayak Kariappa Chettimada
fb679ad2d8 samples: Bluetooth: hci_uart: Reuse hci_vs_err_assert
Reuse hci_vs_err_assert implementation to generate the HCI
vendor-specific hardware error event.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2025-10-23 11:43:10 +03:00
Vinayak Kariappa Chettimada
696d618bdc samples: Bluetooth: hci_uart: Make bt_ll_sw_split conf consistent
Make overlay-all-bt_ll_sw_split configs consistent with the
one used in hci_ipc for nRF5340 SoC.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2025-10-23 11:43:10 +03:00
Vinayak Kariappa Chettimada
5db80f0d57 Bluetooth: Controller: Reduce assertion check code size
Reduce Controller assertion check code size for ARM Cortex-M
CPUs by using the undefined instruction exception.

`arm-none-eabi-addr2line` commandline can be used to get the
source file and line number.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2025-10-23 11:43:10 +03:00
Vinayak Kariappa Chettimada
796c0002f8 Bluetooth: Controller: Introduce LL_ASSERT_DBG/ERR
Introduce development and fatal assertion classification
in the Controller implementation.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2025-10-23 11:43:10 +03:00
Abderrahmane JARMOUNI
caa21ac284 samples: mgmt: hawkbit: add stm32h750b_dk to CI platforms
Add stm32h750b_dk/stm32h750xx/ext_flash_app target to CI platforms of
the Hawkbit sample.

Signed-off-by: Abderrahmane JARMOUNI <git@jarmouni.me>
2025-10-23 11:42:39 +03:00
Abderrahmane JARMOUNI
6a1945be56 tests: boot: test_mcuboot: add stm32h750b_dk to CI platforms
Add stm32h750b_dk/stm32h750xx/ext_flash_app target to CI platforms.

Signed-off-by: Abderrahmane JARMOUNI <git@jarmouni.me>
2025-10-23 11:42:39 +03:00
Abderrahmane JARMOUNI
2fe301d98f samples: sysbuild: with_mcuboot: add stm32h750b_dk to CI platforms
Add stm32h750b_dk/stm32h750xx/ext_flash_app target to CI platforms

Signed-off-by: Abderrahmane JARMOUNI <git@jarmouni.me>
2025-10-23 11:42:39 +03:00
Abderrahmane JARMOUNI
8beda69df8 boards: stm32h750b_dk: introduce board variant for apps in ext Flash
Introduce a board variant for storing an app in external QSPI NOR Flash
and chainloading it with MCUboot (placed in internal Flash) to be executed
in place (uses MCUboot's swap-using-offset mode, set via Sysbuild).

The new variant requires on MCUboot app side: a board/SoC DT overlay to
set the internal Flash & Flash controller as the chosen 'zephyr,flash' &
'zephyr,flash-controller', and CONFIG_STM32_MEMMAP=y (this was upstreamed
to MCUboot.)

Change external Flash memory attribute "zephyr,memory-attr" to
DT_MEM_ARM_MPU_FLASH, since ATTR_MPU_IO (corresponds to
"DEVICE_NON_SHAREABLE & P_RW_U_NA") is actually for memory-mapped devices
(with registers...) and was causing access issues with apps like LVGL that
would freeze the target. Also, change the size of the external flash
"zephyr,memory-region" node, since we only need to define accesss rights
to the memory space actually used by the external flash chips, not the
total addresssable QSPI memory.

The 2nd QSPI NOR contoller node was removed, since it does not reflect the
actual hardware layout, that has only one controller and the 2 NOR flash
chips are connected to it in parallel with a shift register.

Signed-off-by: Abderrahmane JARMOUNI <git@jarmouni.me>
2025-10-23 11:42:39 +03:00
Valerio Setti
fc422beb68 lib: uuid: replace legacy crypto support with PSA API
Legacy crypto support is going to be removed in the next Mbed TLS release
(which will be named TF-PSA-Crypto for the crypto support) so this
commit transitions UUID library from legacy crypto to PSA API.

Signed-off-by: Valerio Setti <vsetti@baylibre.com>
2025-10-23 11:42:11 +03:00
Khoa Nguyen
4147a8ff9a samples: modules: lgvl: Update code mram for Renesas ek_ra8p1
Since the sample build is oversized for the RA8P1 CM85,
I’ve realigned the code MRAM size for both cores (CM85 and CM33)
to allow the CM85 build to run the sample successfully

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-10-23 11:41:48 +03:00
Khoa Tran
75d766f713 tests: subsys: fs: Add tests support for Renesas ek_ra8m2 board
Add tests support for Renesas ek_ra8m2 boards:
- tests/subsys/fs/ext2
- tests/subsys/fs/fat_fs_api

Signed-off-by: Khoa Tran <khoa.tran.yj@bp.renesas.com>
2025-10-23 11:41:48 +03:00
Khoa Tran
eeef30fcc6 tests: driver: disk: Add tests support for Renesas ek_ra8m2 board
Add tests support for Renesas ek_ra8m2 boards:
- tests/drivers/disk/disk_access
- tests/drivers/disk/disk_performance

Signed-off-by: Khoa Tran <khoa.tran.yj@bp.renesas.com>
2025-10-23 11:41:48 +03:00
Khoa Tran
560d81db06 tests: subsys: sd: Add tests support for Renesas ek_ra8m2 board
Add tests support for Renesas ek_ra8m2 boards:
- tests/subsys/sd/sdmmc

Signed-off-by: Khoa Tran <khoa.tran.yj@bp.renesas.com>
2025-10-23 11:41:48 +03:00
Khoa Nguyen
07e9573d7f tests: subsys: pm: Add support for power_mgmt_soc on ek_ra8m2
Add support for test app `power_mgmt_soc` on Renesas ek_ra8m2

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
Signed-off-by: Khoa Tran <khoa.tran.yj@bp.renesas.com>
2025-10-23 11:41:48 +03:00
Khoa Tran
ea62a20cde tests: drivers: sdhc: Add tests support for Renesas ek_ra8m2 board
Add tests support for Renesas ek_ra8m2 boards

Signed-off-by: Khoa Tran <khoa.tran.yj@bp.renesas.com>
2025-10-23 11:41:48 +03:00
Khoa Tran
fc05a95f5a tests: drivers: dma: Add test support dma driver on ek_ra8m2
This commit adds testing support for dma driver on ek_ra8m2:
- tests/drivers/dma/chan_blen_transfer
- tests/drivers/dma/loop_transfer

Signed-off-by: Khoa Tran <khoa.tran.yj@bp.renesas.com>
2025-10-23 11:41:48 +03:00
Khoa Tran
93c9677d05 tests: drivers: i2s: Add tests support on Renesas ek_ra8m2
Add support for i2s test app on Renesas RA ek_ra8m2:
- tests/drivers/i2s/i2s_api
- tests/drivers/i2s/i2s_speed

Signed-off-by: Khoa Tran <khoa.tran.yj@bp.renesas.com>
2025-10-23 11:41:48 +03:00
Khoa Tran
35ea44d1c9 tests: drivers: counter: Add support test on Renesas ek_ra8m2
Add support for test app on Renesas ek_ra8m2:
- tests/drivers/counter/counter_basic_api

Signed-off-by: Khoa Tran <khoa.tran.yj@bp.renesas.com>
2025-10-23 11:41:48 +03:00
Khoa Nguyen
9070473e5e tests: drivers: uart: Add support for uart_async_api on ek_ra8m2
Add support for test app `uart_async_api` on Renesas ek_ra8m2

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
Signed-off-by: Khoa Tran <khoa.tran.yj@bp.renesas.com>
2025-10-23 11:41:48 +03:00
Khoa Nguyen
a64b626a8b tests: drivers: spi: Add support for spi_loopback on ek_ra8m2
Add support for test app `spi_loopback` on Renesas ek_ra8m2

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
Signed-off-by: Khoa Tran <khoa.tran.yj@bp.renesas.com>
2025-10-23 11:41:48 +03:00
Khoa Nguyen
e6754ea500 tests: drivers: pwm: Add support for pwm tests on ek_ra8m2
Add support for test apps on Renesas ek_ra8m2:
- tests/drivers/pwm_api
- tests/drivers/pwm_loopback

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
Signed-off-by: Khoa Tran <khoa.tran.yj@bp.renesas.com>
2025-10-23 11:41:48 +03:00
Khoa Nguyen
b9c8ce2935 tests: drivers: comparator: Add support gpio_loopback on ek_ra8m2
Add support for test app `gpio_loopback` on Renesas ek_ra8m2

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-10-23 11:41:48 +03:00
Khoa Nguyen
63ac2e0ddb tests: drivers: i2c: Add support for i2c_api on ek_ra8m2
Add support for test app `i2c_api` on Renesas ek_ra8m2

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
Signed-off-by: Khoa Tran <khoa.tran.yj@bp.renesas.com>
2025-10-23 11:41:48 +03:00
Khoa Nguyen
e4cb0f4e8e samples: boards: renesas: Add support for comparator on ek_ra8m2
Add support for sample app `renesas/comparator` on ek_ra8m2

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-10-23 11:41:48 +03:00
Khoa Tran
f8454a3525 samples: subsys: fs: Add tests support for Renesas ek_ra8m2 board
Add tests support for Renesas ek_ra8m2 boards:
- samples/subsys/fs

Signed-off-by: Khoa Tran <khoa.tran.yj@bp.renesas.com>
2025-10-23 11:41:48 +03:00
Khoa Tran
5e46dce290 samples: drivers: i2s: Add tests support for i2s ssie on ek_ra8m2
Add support for i2s samples app on Renesas RA ek_ra8m2:
- samples/drivers/i2s/output

Signed-off-by: Khoa Tran <khoa.tran.yj@bp.renesas.com>
2025-10-23 11:41:48 +03:00
Khoa Nguyen
1868eaf17c samples: drivers: counter: Add support for alarm on ek_ra8m2
Add support for sample app `alarm` on Renesas ek_ra8m2

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-10-23 11:41:48 +03:00
Khoa Nguyen
9aa19fc16a boards: renesas: Add support Renesas ek_ra8m2 board
Add support Renesas ek_ra8m2 board

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
Signed-off-by: Khoa Tran <khoa.tran.yj@bp.renesas.com>
2025-10-23 11:41:48 +03:00
Khoa Tran
c41b08caa4 dts: arm: renesas: ra: Add support Renesas r7ka8m2jflcac SoC
Add support Renesas r7ka8m2jflcac SoC

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
Signed-off-by: Khoa Tran <khoa.tran.yj@bp.renesas.com>
2025-10-23 11:41:48 +03:00
Khoa Nguyen
51ffd9052e soc: renesas: ra: Add support Renesas ra8m2 SoC
Add support Renesas ra8m2 SoC

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
Signed-off-by: Khoa Tran <khoa.tran.yj@bp.renesas.com>
2025-10-23 11:41:48 +03:00
Aleksandr Khromykh
7546d5e534 tests: bluetooth: mesh: remove its emulation leftovers
Commit removes missed its emulation leftovers.

Signed-off-by: Aleksandr Khromykh <aleksandr.khromykh@nordicsemi.no>
2025-10-23 11:41:35 +03:00
Vinayak Kariappa Chettimada
625f3052f5 Bluetooth: Controller: nRF54L: Fix PPIB interface include cond compile
Fix trivial PPIB interface include conditional compile.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2025-10-23 11:41:25 +03:00
Andre Heinemans
929e55106a tests: flash: add interface tests
Tests for validating the robustness of the interface between the controller
and the flash chip using pattern-based testing.

Signed-off-by: Andre Heinemans <andre.heinemans@nxp.com>
2025-10-23 10:40:06 +02:00
Tony Han
faec659d45 board: microchip: sam: sama7g54_ek enable NET_L2_ETHERNET
Enable NET_L2_ETHERNET in Kconfig.defconfig.

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-10-23 10:39:50 +02:00
Tony Han
edc150e88f boards: microchip: sam: add nodes for GMAC1 to sama7g54_ek dts file
Add gmac1 and gmac1_mdio nodes.

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-10-23 10:39:50 +02:00
Tony Han
ac1c5bb1af drivers: ethernet: sam_gmac: update for support sama7g54
Use proper settings of clock, data bus width for sama7g54.
Update queue number checking and the macro definition in header file.

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-10-23 10:39:50 +02:00
Tony Han
0c1f48ebc2 drivers: ethernet: sam_gmac: add GMAC Reference Clock support
Add property for selecting the source for GMAC Reference Clock to dts
bindings yaml file.
Choose the source for the GMAC Reference Clock by GMAC_UR register.

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-10-23 10:39:50 +02:00
Tony Han
6a9a01a7d3 drivers: mdio: sam: update clocks for supporting sama7g54
Do not config the clocks as they are already done in soc.c.

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-10-23 10:39:50 +02:00
Tony Han
415450cbd8 soc: microchip: sam: configure the clocks for sama7g5 GMAC1
Configure ETH PLL to 625MHz.
Configure the generic clocks to 125MHz for GMAC1.

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-10-23 10:39:50 +02:00
Tony Han
ce23ab6d11 soc: microchip: sam: update MMU for sama7g5 GMAC1
Enable strong ordered access to the GMAC1 registers.

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-10-23 10:39:50 +02:00
Tony Han
0d50447c7d dts: microchip: sam: add nodes for GMAC1 to sama7g5.dtsi
Add gmac1 and gmac1_mdio nodes.

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-10-23 10:39:50 +02:00
Tony Han
b33f7bd06b drivers: ethernet: sam_gmac: use sys_cache_data_foo() for coherence
Replace cache coherence functions:
 - SCB_InvalidateDCache_by_Addr() to sys_cache_data_invd_range()
 - SCB_CleanDCache_by_Addr() to sys_cache_data_flush_range()

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-10-23 10:39:50 +02:00
Antonino Scarpaci
54ca22a626 drivers: video: Himax HM01B0 camera sensor driver
Add Himax HM01B0 camera sensor driver.
It depends on I2C and it is required to configure the camera.

Signed-off-by: Antonino Scarpaci <antonino.scarpaci@gmail.com>
2025-10-23 10:39:41 +02:00
Siratul Islam
d75f2edfd0 tests: drivers: auxdisplay: Add TM1637 build test
Add build test coverage for the TM1637 auxdisplay driver.

Creates gpio_devices.overlay for GPIO-based auxdisplay devices
and adds corresponding test case to verify the driver builds
correctly on native_sim platforms.

Signed-off-by: Siratul Islam <sirat4757@gmail.com>
2025-10-23 10:39:18 +02:00
Siratul Islam
cc0178489b drivers: auxdisplay: Add TM1637 7-segment display driver
Add a new auxdisplay driver for TM1637 7-segment LED displays.

The driver supports:
- 4-digit 7-segment display output
- Decimal point positioning
- Brightness control (0-7 levels)
- Display on/off control
- All digits (0-9)
- Basic cursor positioning

The driver implements the standard AUXDISPLAY API

Signed-off-by: Siratul Islam <sirat4757@gmail.com>
2025-10-23 10:39:18 +02:00
Siratul Islam
3c95305276 dts: bindings: auxdisplay: Add TM1637 binding
Add device tree binding for TitanMicro TM1637 7-segment LED
display controller. The TM1637 uses a GPIO bit-banging protocol
with clock and data pins.

Properties:
- clk-gpios: Clock GPIO pin
- dio-gpios: Data I/O GPIO pin
- bit-delay-us: Bit delay for GPIO protocol timing

Signed-off-by: Siratul Islam <sirat4757@gmail.com>
2025-10-23 10:39:18 +02:00
Jordan Yates
51b424e2f0 tests: modem: ppp: test custom ACCM's
Test the wrapping functions with custom asynchronous command character
maps.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-10-23 08:02:28 +02:00
Jordan Yates
4494b42372 modem: ppp: use peer control character map
Use the peers asychronous control character map to only escape
characters that need to be, instead of always escaping bytes 0 to 31.

For data packets with values randomly distributed, this results in 11%
fewer bytes needing to be transmitted over the link, if no bytes need to
be escaped (256+2)/(256+2+32).

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-10-23 08:02:28 +02:00
Jordan Yates
fbb84c7c0c net: l2: ppp: lcp: accept ASYNC_CTRL_CHAR_MAP option
Accept the `ASYNC_CTRL_CHAR_MAP` option in configuration messages from
the peer. The map is reset to the default value each time the interface
comes up.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-10-23 08:02:28 +02:00
Jordan Yates
13d35288bd net: l2: ppp: expose the peer ACCM
Expose the currently configured value for the PPP peers Asynchronous
Control Character Map through a public function.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-10-23 08:02:28 +02:00
The Nguyen
d64f570bd3 soc: ra4e2: fix IAR build failed
Correct the input section define for the device reset configuration
setting when enabling the CMake Linker Generator, which cause a build
failed when using the IAR build tool.

Signed-off-by: The Nguyen <the.nguyen.yf@renesas.com>
2025-10-23 08:02:09 +02:00
Khoa Tran
a368dc9949 tests: drivers: pwm: Add pwm_test alias for Renesas devices
Add pwm_test alias to support test pwm_api on Renesas RA devices

Signed-off-by: Khoa Tran <khoa.tran.yj@bp.renesas.com>
2025-10-23 08:01:21 +02:00
Khoa Tran
9548457715 drivers: i2s: Remove redundant condition check causing transfer error
When enabling the DTC (Data Transfer Controller) for the I2S SSIE driver
on Renesas RA8x2 boards, a redundant condition check prevented the
interrupt service routines from entering  during data transfer. This
caused the transfer to fail when DTC was active.

This commit removes the unnecessary condition check, allowing the DTC to
operate correctly with I2S SSIE transfers on RA8x2 devices.

Signed-off-by: Khoa Tran <khoa.tran.yj@bp.renesas.com>
2025-10-23 08:01:21 +02:00
Khoa Tran
1ad2bc04b3 drivers: spi: Correct condition for continuing data transfer
When performing polling-based data transfer without enabling interrupts,
the current implementation stops transferring as soon as either the TX or
RX buffer becomes NULL. This causes the transfer to stop prematurely,
even if the other direction still has data to send or receive.

This commit fixes the condition so that data transfer continues
as long as one direction (TX or RX) still has data remaining.

Signed-off-by: Khoa Tran <khoa.tran.yj@bp.renesas.com>
2025-10-23 08:01:21 +02:00
Khoa Tran
184a0e00f4 tests: subsys: pm: Add support for power_mgmt_soc on ek_ra8d2
Add support for test app power_mgmt_soc on Renesas ek_ra8d2

Signed-off-by: Khoa Tran <khoa.tran.yj@bp.renesas.com>
2025-10-23 08:01:03 +02:00
Khoa Tran
b4e45853fd tests: subsys: fs: Add tests support for Renesas ek_ra8d2 board
Add tests support for Renesas ek_ra8d2 boards:
- tests/subsys/fs/ext2
- tests/subsys/fs/fat_fs_api

Signed-off-by: Khoa Tran <khoa.tran.yj@bp.renesas.com>
2025-10-23 08:01:03 +02:00
Khoa Tran
b2e1cc6ed4 tests: subsys: sd: Add tests support for Renesas ek_ra8d2 board
Add tests support for Renesas ek_ra8d2 boards:
- tests/subsys/sd/sdmmc

Signed-off-by: Khoa Tran <khoa.tran.yj@bp.renesas.com>
2025-10-23 08:01:03 +02:00
Khoa Tran
4647a6fdc3 tests: drivers: disk: Add tests support for Renesas ek_ra8d2 board
Add tests support for Renesas ek_ra8d2 boards:
- tests/drivers/disk/disk_access
- tests/drivers/disk/disk_performance

Signed-off-by: Khoa Tran <khoa.tran.yj@bp.renesas.com>
2025-10-23 08:01:03 +02:00
Khoa Tran
c185f1cb93 tests: drivers: sdhc: Add tests support for Renesas ek_ra8d2 board
Add tests support for Renesas ek_ra8d2 boards

Signed-off-by: Khoa Tran <khoa.tran.yj@bp.renesas.com>
2025-10-23 08:01:03 +02:00
Khoa Tran
9ca2d227ad tests: drivers: display: Add support display_read_write on ek_ra8d2
Add support test app display_read_write for
Renesas RA ek_ra8d2 board

Signed-off-by: Khoa Tran <khoa.tran.yj@bp.renesas.com>
2025-10-23 08:01:03 +02:00
Khoa Tran
ab828cdbb4 tests: drivers: dma: Add test support dma driver on ek_ra8d2
This commit adds testing support for dma driver on ek_ra8d2:
- tests/drivers/dma/chan_blen_transfer
- tests/drivers/dma/loop_transfer

Signed-off-by: Khoa Tran <khoa.tran.yj@bp.renesas.com>
2025-10-23 08:01:03 +02:00
Khoa Tran
aa7a4ba0f5 tests: drivers: i2s: Add tests support for Renesas ek_ra8d2
Add support for i2s tests app on Renesas RA ek_ra8d2:
- tests/drivers/i2s/i2s_api
- tests/drivers/i2s/i2s_speed

Signed-off-by: Khoa Tran <khoa.tran.yj@bp.renesas.com>
2025-10-23 08:01:03 +02:00
Khoa Tran
08864ba3ef tests: drivers: counter: Add test support for Renesas ek_ra8d2
Add support for test app on Renesas ek_ra8d2:
- tests/drivers/counter/counter_basic_api

Signed-off-by: Khoa Tran <khoa.tran.yj@bp.renesas.com>
2025-10-23 08:01:03 +02:00
Khoa Tran
7fcabf95df tests: drivers: comparator: Add support gpio_loopback on ek_ra8d2
Add support for test app "gpio_loopback" on Renesas ek_ra8d2

Signed-off-by: Khoa Tran <khoa.tran.yj@bp.renesas.com>
2025-10-23 08:01:03 +02:00
Khoa Tran
c400fa7b76 tests: drivers: pwm: Add pwm tests support for ek_ra8d2
Add support for test apps on Renesas ek_ra8d2:
- tests/drivers/pwm/pwm_api
- tests/drivers/pwm/pwm_loopback

Signed-off-by: Khoa Tran <khoa.tran.yj@bp.renesas.com>
2025-10-23 08:01:03 +02:00
Khoa Tran
1974e61cc6 tests: drivers: spi: Add support for spi_loopback on ek_ra8d2
Add support for test app "spi_loopback" on Renesas ek_ra8d2

Signed-off-by: Khoa Tran <khoa.tran.yj@bp.renesas.com>
2025-10-23 08:01:03 +02:00
Khoa Tran
352b232bb5 tests: drivers: uart: Add support for uart_async_api on ek_ra8d2
Add support for test app "uart_async_api" on Renesas ek_ra8d2

Signed-off-by: Khoa Tran <khoa.tran.yj@bp.renesas.com>
2025-10-23 08:01:03 +02:00
Khoa Tran
7b8eb26506 tests: drivers: i2c: Add support for i2c_api on ek_ra8d2
Add support for test app "i2c_api" on Renesas ek_ra8d2

Signed-off-by: Khoa Tran <khoa.tran.yj@bp.renesas.com>
2025-10-23 08:01:03 +02:00
Khoa Tran
754db2a240 samples: modules: lvgl: demos: add support for ek_ra8d2
Add support for ek_ra8d2/r7ka8d2kflcac/cm85 running on
rtklcdpar1s00001be display shield

Signed-off-by: Khoa Tran <khoa.tran.yj@bp.renesas.com>
2025-10-23 08:01:03 +02:00
Khoa Tran
253bc85b6c samples: subsys: fs: Add tests support for Renesas ek_ra8d2 board
Add tests support for Renesas ek_ra8d2 boards:
- samples/subsys/fs

Signed-off-by: Khoa Tran <khoa.tran.yj@bp.renesas.com>
2025-10-23 08:01:03 +02:00
Khoa Tran
ddffe4907b samples: drivers: i2s: Add sample support for Renesas ek_ra8d2
Add support for i2s sample app on Renesas RA ek_ra8d2:
- samples/drivers/i2s/output

Signed-off-by: Khoa Tran <khoa.tran.yj@bp.renesas.com>
2025-10-23 08:01:03 +02:00
Khoa Tran
740074632f samples: drivers: counter: Add support for alarm on ek_ra8d2
Add support for sample app alarm on Renesas ek_ra8d2

Signed-off-by: Khoa Tran <khoa.tran.yj@bp.renesas.com>
2025-10-23 08:01:03 +02:00
Khoa Tran
7b2103fd63 boards: shields: Add support rtklcdpar1s00001be for ek_ra8d2
Add support rtklcdpar1s00001be display shield for Renesas RA
ek_ra8d2 board

Signed-off-by: Khoa Tran <khoa.tran.yj@bp.renesas.com>
2025-10-23 08:01:03 +02:00
Khoa Tran
8b6ea777a6 boards: shields: Add support ArduCam CU450 OV5640 for ek_ra8d2
Add support ArduCam CU450 OV5640 shield for Renesas ek_ra8d2 board

Signed-off-by: Khoa Tran <khoa.tran.yj@bp.renesas.com>
2025-10-23 08:01:03 +02:00
Khoa Tran
90ce526b43 boards: renesas: Add support Renesas ek_ra8d2 board
Add support Renesas ek_ra8d2 board

Signed-off-by: Khoa Tran <khoa.tran.yj@bp.renesas.com>
Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-10-23 08:01:03 +02:00
Khoa Tran
b47faeef83 dts: arm: renesas: ra: Add support Renesas r7ka8d2kflcac SoC
- Add support Renesas r7ka8d2kflcac SoC.
- Move sdram-controller node from r7ka8p1kflcac.dtsi to ra8x2.dtsi
since this device node is available for all RA8x2 SoCs

Signed-off-by: Khoa Tran <khoa.tran.yj@bp.renesas.com>
2025-10-23 08:01:03 +02:00
Khoa Tran
e86367bc01 dts: arm: renesas: ra: Correct number of port pins for RA8x2 series
Fix the GPIO port "ngpios" for RA8x2 series SoCs to match
the values specified in the Hardware User’s Manual (HUM).

Signed-off-by: Khoa Tran <khoa.tran.yj@bp.renesas.com>
2025-10-23 08:01:03 +02:00
Khoa Tran
718d8397f9 soc: renesas: ra: Add support Renesas RA8D2 SoC
Add support Renesas RA8D2 SoC

Signed-off-by: Khoa Tran <khoa.tran.yj@bp.renesas.com>
Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-10-23 08:01:03 +02:00
Khoa Tran
beb75f0852 manifest: update rev of hal_renesas to latest
Update rev of hal_renesas to latest

Signed-off-by: Khoa Tran <khoa.tran.yj@bp.renesas.com>
2025-10-23 08:01:03 +02:00
Hieu Nguyen
05b2ea635f tests: drivers: dma: Add DMA support for Renesas RZ/V2L, A3UL, T2M, N2L
Add DMA test for Renesas RZV2L-SMARC, RZA3UL-SMARC, RZT2M-RSK, RZN2L-RSK

Signed-off-by: Hieu Nguyen <hieu.nguyen.ym@bp.renesas.com>
Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
2025-10-23 08:00:49 +02:00
Hieu Nguyen
1119548c76 boards: renesas: Add DMA support for Renesas RZ/V2L, A3UL, T2M, N2L
Add DMA support for Renesas RZ/V2L, A3UL, T2M, N2L

Signed-off-by: Hieu Nguyen <hieu.nguyen.ym@bp.renesas.com>
Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
2025-10-23 08:00:49 +02:00
Hieu Nguyen
d9e67e3235 dts: renesas: Add DMA support for Renesas RZ/V2L, A3UL, T2M, N2L
Add DMA nodes to Renesas RZ/V2L, A3UL, T2M, N2L

Signed-off-by: Hieu Nguyen <hieu.nguyen.ym@bp.renesas.com>
Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
2025-10-23 08:00:49 +02:00
Hieu Nguyen
1f4979975d drivers: dma: Add DMA support for Renesas RZ/V2L, A3UL, T2M, N2L
Add DMA driver support for Renesas RZ/V2L, A3UL, T2M, N2L

Signed-off-by: Hieu Nguyen <hieu.nguyen.ym@bp.renesas.com>
Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
2025-10-23 08:00:49 +02:00
Benjamin Cabé
ef818fecc1 doc: scripts: gen_devicetree_rest: add link to board catalog in sidebar
This adds a link to the board catalog in the sidebar of each binding
page, directing users to boards using the compatible.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-10-22 18:14:12 -04:00
Benjamin Cabé
e3ec8a6bb5 doc: _extensions: allow to filter boards by compatible strings in catalog
This adds the ability to filter boards in the catalog by compatible
strings. It supports wildcards so e.g. one can quickly find all boards
with an "st,lsm*" accelerometer.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-10-22 18:14:12 -04:00
Benjamin Cabé
67c01cb1c7 doc: _extensions: make tag handling for supported HW caps more generic
There might be different UI widgets that deal with tags so make sure
that we use identifiers and selectors that are not too generic.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-10-22 18:14:12 -04:00
Benjamin Cabé
9e081a7ca9 doc: _scripts: capture boards' compatibles in board catalog
This commits adds a `compatibles` field to each board entry in the board
catalog, similar to the `supported_features` field.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-10-22 18:14:12 -04:00
Andreas Klinger
c93788a0ea drivers: sensor: remove redundancies in veml6031 and veml6046
- create common header file veml60xx-common.h for sensors VEML6031 and
  VEML6046.

Signed-off-by: Andreas Klinger <ak@it-klinger.de>
2025-10-22 18:14:02 -04:00
Andreas Klinger
7caae03a4c samples: sensor: veml6046: add attribution test application
- Test all attribute combinations of Vishay RGBIR color sensor VEML6046.
- Print OVERFLOW in case of saturation of sensor.
- This small program is intended to be helping when finding appropriate
  attributes for an application of the sensor.

Signed-off-by: Andreas Klinger <ak@it-klinger.de>
2025-10-22 18:14:02 -04:00
Andreas Klinger
1e80842749 drivers: sensor: add Vishay veml6046 RGBIR color sensor
- add driver for Vishay VEML6046 RGBIR color sensor
- add new compatible "vishay,veml6046"
- support fetch and get sensor subsystem operations
- triggered mode and interrupts are not yet supported

Signed-off-by: Andreas Klinger <ak@it-klinger.de>
2025-10-22 18:14:02 -04:00
Stoyan Bogdanov
eadd4d57b7 drivers: counter: cc23x0: Add power management to LGPT
Add PM support for LGPT0, LGPT1, LGPT2 and LGPT3 to cc23x0 SoC.

Signed-off-by: Stoyan Bogdanov <sbogdanov@baylibre.com>
2025-10-22 18:13:44 -04:00
Stoyan Bogdanov
2b646bf702 drivers: counter: cc23x0: Add power management to RTC
Add PM support for RTC to cc23x0 SoC.

Signed-off-by: Stoyan Bogdanov <sbogdanov@baylibre.com>
2025-10-22 18:13:32 -04:00
Zacck Osiemo
9a48b1a35d tests: spi: include correct overlay for sc18is606
Apply correct device tree overlay is applied for SC18IS606

Signed-off-by: Zacck Osiemo <coderv63@gmail.com>
2025-10-22 18:13:18 -04:00
Zacck Osiemo
eb676f8711 drivers: spi: Introduce SC18IS606 SPI bridge driver
Added the driver implementation and Kconfig choices

Signed-off-by: Zacck Osiemo <coderv63@gmail.com>
2025-10-22 18:13:18 -04:00
S Mohamed Fiaz
bae6364995 driver: spi: silabs_siwx91x_gspi: Add pm device support for gspi driver
This commit enables the pm device driver support
for the spi_silabs_siwx91x_gspi driver.

Signed-off-by: S Mohamed Fiaz <fiaz.mohamed@silabs.com>
2025-10-22 18:13:04 -04:00
Marek Matej
7e9e678569 boards: Update all vendors documentation related with Espressif SoCs
Update the documentation of ESP32 related boards:

* use included sections for common parts
* fix the `References` links if applicable.

Signed-off-by: Marek Matej <marek.matej@espressif.com>
2025-10-22 18:12:42 -04:00
Declan Snyder
3ddbce5a06 tests: spi_loopback: Fix MCXW timing parameters
The LPSPI and SOC hardware has some electrical timing characteristics
that need to be met in order to pass these test properly, these values
should be fine for the purpose.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-10-22 18:12:27 -04:00
Declan Snyder
c4fe7750fa boards: nxp: Remove old LPSPI timing properties
The old controller based timing properties being present in boards DTS
is making it so that overlays cannot specify timing parameters of spi
devices, because the old controller properties take precedence in the
driver still. We should remove these anyways, so first step is to remove
from board level, luckily there is only these two cases.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-10-22 18:12:27 -04:00
Stephan Linz
0925811371 samples: frdm_rw612: exclude various tests
Disable various samples because they require certain digital or
analog signals from the Arduino header, which are not connected
and therefore not defined via the connector gpio-map.

Signed-off-by: Stephan Linz <linz@li-pro.net>
2025-10-22 18:12:06 -04:00
Stephan Linz
fcd8201bcc boards: nxp: frdm_rw612: add mikrobus labels
Added mikrobus_serial, mikrobus_i2c, mikrobus_spi and mikrobus_header
node labels to FRDM-RW612 device tree board definition, allowing
compatible shield boards to be used. Also extend the FlexComm SPI
pinmux to support CS0 (Arduino connector) and CS1 (MicroBus connector)
as hardware controlled CS pin.

Signed-off-by: Stephan Linz <linz@li-pro.net>
2025-10-22 18:12:06 -04:00
Stephan Linz
ff51a86d86 boards: nxp: frdm_rw612: add arduino_spi labels
Added arduino_spi label to FRDM-RW612 device tree board definition,
allowing compatible shield boards to be used. Also extend the board
YAML file with related support tags arduino_gpio, arduino_i2c and
arduino_spi.

Signed-off-by: Stephan Linz <linz@li-pro.net>
2025-10-22 18:12:06 -04:00
Pieter De Gendt
5f5e328a2c doc: develop: gsg: Update windows installation steps
The Python version installed with winget defaults to 3.8, make a more
recent version the default.
Also add a note on the execution policy for activating the Python virtual
environment.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-10-22 18:11:45 -04:00
Sylvio Alves
e40e39c302 boards: luatos_core: esp32c3: fix board pinout
Fix wrong SPI, UART and TWAI pins.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2025-10-22 18:11:13 -04:00
Martin Koehler
17c1b0131c dts: bindings: sensor: ti,ina226: Description indention fix
- as the pull request is just running I can also properly indent

Signed-off-by: Martin Koehler <koehler@metratec.com>
2025-10-22 18:09:43 -04:00
Martin Koehler
3ad124a842 dts: bindings: sensor: ti,ina226: Added missing enum
- Removal of double enum (by me) caused wrong later enum entries
  - See commit 36abe5efec
- Added the second power down state (but with different name)
  -> This restores the old function but still fixes the double enum issue
- The second power down state equals a different valid value
  in the mode register. Documentation does not state if they
  are equal but it is likely that they only differ in readback value.
  -> With this change all possible register values are mapped
  -> The power down state values are 0b000 and 0b100

Signed-off-by: Martin Koehler <koehler@metratec.com>
2025-10-22 18:09:43 -04:00
Luis Ubieda
7e317201cc bmi08x: Add support for Read-decode and Streaming Mode
One-shot reads through Read-Decode API matches functionality
from Fetch-Get API, but asynchronously.

Streaming mode supporting FIFO Watermark Interrupts. Works for both
Gyro and Accel drivers.

These changes are covered under the build-all test for sensor async
api.

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-10-22 18:09:24 -04:00
Fabrice DJIATSA
be071fa58a dts: arm: st: h7rs: Add zephyr,memory-attr to SRAM1 and SRAM2 regions
adds the `zephyr,memory-attr` property to the SRAM1 and SRAM2
memory nodes to explicitly define their MPU attributes as normal
RAM. This ensures proper memory protection and caching behavior
when these regions are used by the kernel or application.

Resolve a Data Access Violation encountered during
test, where the faulting address was 0x30000000.

Note: add the zephyr,memory-attr property in the board overlay for SRAM2
to avoid conflict with the support of h7rs ethernet with MPU regions
enabled.
see link below for more details :
https://github.com/zephyrproject-rtos/zephyr/pull/97364/files#r2439668915

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2025-10-22 18:09:14 -04:00
Fabrice DJIATSA
3eedfcc21c drivers: clock_control: stm32: enable clocks for SRAM1 and SRAM2
enables the AHB2 peripheral clocks for SRAM1 and SRAM2
on STM32H7RSX series using LL_AHB2_GRP1_EnableClock.

These clocks are required to access the corresponding SRAM regions
during runtime.

Fixes potential access faults when using SRAM1 and SRAM2.

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2025-10-22 18:09:14 -04:00
Siratul Islam
db54c4c179 boards: arm: Rename WeAct STM32U585
Update board.yml for naming consistency throughout the weact family

Signed-off-by: Siratul Islam <sirat4757@gmail.com>
2025-10-22 18:08:44 -04:00
Stoyan Bogdanov
d7bf8c0644 drivers: i2c: cc23x0: Add power management
Add PM support to cc23x0 I2C.

Signed-off-by: Stoyan Bogdanov <sbogdanov@baylibre.com>
2025-10-22 18:08:26 -04:00
Stoyan Bogdanov
afd2962dfc drivers: pwm: cc23x0: Add power management
Add PM support for PWM (LGPT0, LGPT1, LGPT2 and LGPT3) to cc23x0 SoC.

Signed-off-by: Stoyan Bogdanov <sbogdanov@baylibre.com>
2025-10-22 18:07:42 -04:00
Diego Herranz
b04384b485 boards: doc: use board-supported-hw directive in imx7-based boards
Use the zephyr:board-supported-hw directive for the documentation
of every imx7-based which board which didn't use it yet.

Bonus: remove redundant image from 96boards/meerkat96.

Signed-off-by: Diego Herranz <diegoherranz@diegoherranz.com>
2025-10-22 18:07:20 -04:00
Aksel Skauge Mellbye
c00f8c66c7 drivers: counter: gecko_stimer: Use chosen node
Use the `silabs,sleeptimer` chosen node instead of a devicetree
compatible to select the devicetree node for the counter.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-10-22 18:07:07 -04:00
Aksel Skauge Mellbye
a13c810f3a drivers: timer: silabs_sleeptimer: Use chosen node
Use the `silabs,sleeptimer` chosen node instead of a devicetree
compatible to select the devicetree node for the RTC.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-10-22 18:07:07 -04:00
Aksel Skauge Mellbye
a8b5ab1c1d dts: arm: silabs: Add rtcc and sysrtc bindings
Different Series 2 devices have different RTC IPs, despite sharing
a HAL driver. Introduce separate bindings for the different IPs, and
use a chosen node to select the node to use for timekeeping.

A chosen node was selected over a nodelabel since chosen nodes can
be overridden by board-level dts and devicetree overlays, while
nodelabels can't.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-10-22 18:07:07 -04:00
Hugues Fruchet
0d2f910d3d drivers: video: stm32_venc: fix coding style
Fix coding style issues in venc video driver.

Signed-off-by: Hugues Fruchet <hugues.fruchet@foss.st.com>
2025-10-22 18:06:55 -04:00
Hugues Fruchet
a186c72165 drivers: video: stm32_venc: log an error in case of hardware timeout
Log an error in case of hardware timeout.

Signed-off-by: Hugues Fruchet <hugues.fruchet@foss.st.com>
2025-10-22 18:06:55 -04:00
Hugues Fruchet
8ad4282f4c drivers: video: stm32_venc: fix return value
Avoid mixing encoder library return code and driver return value to
fix wrong value returned by enqueue() in nominal case.

Signed-off-by: Hugues Fruchet <hugues.fruchet@foss.st.com>
2025-10-22 18:06:55 -04:00
Roy Jamil
42e899d06a scripts: puncover: Fix compatibility with v0.6.0
Signed-off-by: Roy Jamil <roy.jamil@ac6.fr>

Puncover v0.6.0 renamed the command-line argument
`--gcc_tools_base` to `--gcc-tools-base`.

Fixes compatibility error when running `west build -t puncover`
with puncover v0.6.0 or newer.
2025-10-22 18:06:41 -04:00
John Batch
daef6e4766 modules: hal_infineon: Remove board reference from module cmake
*Removes a reference to kit_pse84_eval from modules cmake file.  These
 includes aren't board specific.
*Removes reference to non-secure M33, which aren't currently supported.

Signed-off-by: John Batch <john.batch@infineon.com>
2025-10-22 18:05:58 -04:00
John Batch
d67ab6df8a soc: infineon: PSOC Edge: Remove board references from soc cmake
Removes references to the kit_pse84_eval board from the soc cmake file.

Signed-off-by: John Batch <john.batch@infineon.com>
2025-10-22 18:05:58 -04:00
Michael Zimmermann
4b2cbe8d4d net: mqtt_sn: fix returning address from zsock_recvfrom
The fix in 1264a923f3 was incomplete, because
it doesn't initialize the variable. To quote from opengroup [1]:
address_len
    Either a null pointer, if address is a null pointer, or a pointer to a
    socklen_t object which on input specifies the length of the supplied
    sockaddr structure, and on output specifies the length of the stored
    address.

This caused the returned address to be incomplete, because it got truncated
depending on what addrlen_local got initialized with implicitly. This broke
talking to discovered MQTT-SN gateways.

I intend to implement integration tests for the MQTT-SN UDP transport to
prevent such issues in future, but that will be done in a separate PR.

[1] https://pubs.opengroup.org/onlinepubs/9699919799/functions/recvfrom.html

Signed-off-by: Michael Zimmermann <michael.zimmermann@sevenlab.de>
2025-10-22 18:05:41 -04:00
Yasushi SHOJI
f3017a441b doc: kernel: services: interrupts: Add markup for generated files
Apply `:file:` markup to file names in the "Files generated by the script"
section under "Implementation Details" to improve clarity and readability.

Signed-off-by: Yasushi SHOJI <yashi@spacecubics.com>
2025-10-22 18:04:55 -04:00
Rodrigo Peixoto
555590ec15 doc: zbus: fix benchmark sample execution command error
Fixes #98070

Signed-off-by: Rodrigo Peixoto <rodrigopex@gmail.com>
2025-10-22 18:04:01 -04:00
Henrik Brix Andersen
8a885bfb4f MAINTAINERS: add the newly added CANPico shield to the CAN area
Add the newly added Canis Labs CANPico shield to the CAN area, similar to
other CAN shields.

Signed-off-by: Henrik Brix Andersen <henrik@brixandersen.dk>
2025-10-22 18:03:47 -04:00
Tahsin Mutlugun
b1c497ce02 drivers: fuel_gauge: ltc2959: Fix build warnings from declarations
C standards prior to C23 do not allow variable declarations immediately
after labels. Wrap such declarations in blocks to eliminate build
warnings.

Signed-off-by: Tahsin Mutlugun <Tahsin.Mutlugun@analog.com>
2025-10-22 18:03:30 -04:00
Tahsin Mutlugun
540278c1e8 tests: subsys: pm: Enable testing on MAX78002EVKIT
Enable SoC power management tests on MAX78002EVKIT board.

Signed-off-by: Tahsin Mutlugun <Tahsin.Mutlugun@analog.com>
2025-10-22 17:43:03 +02:00
Steve Boylan
468a18032a boards: shields: Add support for Canis Labs CANPico Shield
Add support for shields based on the Microchip MCP251xFD CAN Bus
controllers, along with the Canis Automotive Labs CANPico shield
for the Raspberry Pi Pico.

Updated to focus on only the CANPico shield.
Use alternate image for shield.
Corrected image file extension.

Signed-off-by: Steve Boylan <stephen.boylan@beechwoods.com>
2025-10-22 17:42:46 +02:00
Steve Boylan
f0a8777a82 dts: bindings: vendor-prefixes: Add canis prefix
Add Canis Automotive Labs vendor prefix.

Signed-off-by: Steve Boylan <stephen.boylan@beechwoods.com>
2025-10-22 17:42:46 +02:00
S Mohamed Fiaz
b5061da0e2 driver: dma: dma_silabs_siwx91x: Add pm policy state support for dma driver
This commit enables the pm policy state lock support
for the dma_silabs_siwx91x driver.

Signed-off-by: S Mohamed Fiaz <fiaz.mohamed@silabs.com>
2025-10-22 17:42:22 +02:00
Nathan Winslow
72fac96c53 drivers: fuelgauge: Added test for ADI LTC2959
Adds test and native sim support for ADI LTC2959 fuel gauge.

Signed-off-by: Nathan Winslow <natelostintimeandspace@gmail.com>
2025-10-22 18:35:37 +03:00
Nathan Winslow
22710b7a14 drivers: fuelgauge: Added properties to prop_type.
Adds properties to fuel gauge api to support ADI LTC2959.

Signed-off-by: Nathan Winslow <natelostintimeandspace@gmail.com>
2025-10-22 18:35:37 +03:00
Josuah Demangeon
45746780fc shields: st_b_cams_imx_mb1854: introduce csi_gpio1_hogs
The "gpio-hog;" devicetree property configuring the "power enable" pin at
boot was not working, due to being placed on a gpio-nexus. This is not
supported and lead the gpio-hog inactive. Instead, let the board specify
their CSI_IO0 and CSI_IO1 pin as GPIO hogs with status = "disabled",
letting shields enable them and set the direction as needed.

Signed-off-by: Josuah Demangeon <me@josuah.net>
2025-10-22 18:35:25 +03:00
Josuah Demangeon
40c7c934d4 boards: nucleo_n657x0_q: add DCMIPP and CSI connector support
Add an instance for DCMIPP as well as devicetree definitions to allow
plugging Raspberry Pi 22 pins or 15 pins shields via the csi_* devicetree
labels.

Signed-off-by: Josuah Demangeon <me@josuah.net>
Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-10-22 18:35:25 +03:00
Daniel Kampert
cc3c0d04cf drivers: sensor: Add driver for MAX32664C
- Add DTS for MAX32664C
- Add driver for MAX32664C
- Add example for MAX32664C Heart rate measurement with Bluetooth
- Add private attributes and channels for health measurement

Closes: #93473

Signed-off-by: Daniel Kampert <DanielKampert@kampis-elektroecke.de>
2025-10-22 18:35:14 +03:00
Lucien Zhao
8f4f546030 boards: nxp: add frdm_mcxe31b board support
- support XIP way to boot
- add board doc and picture
- enable cases below:
    hello_world/blinky/button/
    philosophers/synchronization/
    gpio_basic_api

Signed-off-by: Lucien Zhao <lucien.zhao@nxp.com>
2025-10-22 18:35:01 +03:00
Lucien Zhao
c96b378dbe dts: arm: nxp: add mcxe31x device tree
- Generate a full devices device tree file
- Use specific_part.dtsi + full_devices.dtsi way to
  desribe all devices

Signed-off-by: Lucien Zhao <lucien.zhao@nxp.com>
2025-10-22 18:35:01 +03:00
Lucien Zhao
8f5dd1a2fb soc: nxp: mcx: add mcxe31 series soc
- create 'mcxe' as family and 'mcxe31x' as series
- add pinctrl_soc.h
- add soc.c/.h to do some soc level initialization
- add ecc initialization in mcxe31x_soc_initialization.S

Signed-off-by: Lucien Zhao <lucien.zhao@nxp.com>
2025-10-22 18:35:01 +03:00
Lucien Zhao
80c32929a1 driver: pinctrl: adapt for mcxe31x series
- add binding files: nxp,mcxe31x-siul2-pinctrl.yaml
- Enable PINCTRL_NXP_SIUL2 when nxp,mcxe31x-siul2-pinctrl is ok

Signed-off-by: Lucien Zhao <lucien.zhao@nxp.com>
2025-10-22 18:35:01 +03:00
Lucien Zhao
48245312bf drivers: interrupt_controller: adapt for mcxe31x series
- adapt for mcxe31x series
- due to some bit defined in header files
  add some conditional macro to separate

Signed-off-by: Lucien Zhao <lucien.zhao@nxp.com>
2025-10-22 18:35:01 +03:00
Lucien Zhao
3179b6be53 drivers: clock_control: add nxp_mc_cgm clock driver
- add clock_init function to initialize clock sources according
  devicetree settings
- finish basic clock api function

Signed-off-by: Lucien Zhao <lucien.zhao@nxp.com>
2025-10-22 18:35:01 +03:00
Luca Burelli
6200c672c7 tests/kconfig: add Kconfig origin tracing test
Add a test case that verifies Kconfig value origin traces are correctly
generated in both JSON and pickle formats. The test includes a sample
Kconfig configuration with dependencies, selections, and choices to
cover various scenarios. A validation script checks the generated source
origin data against expected values.

In addition, the 'traceconfig' target is called to test the generation
of the Markdown file with the Kconfig trace report.

Signed-off-by: Luca Burelli <l.burelli@arduino.cc>
2025-10-22 18:34:49 +03:00
Luca Burelli
e4fa6a8f61 traceconfig: add target to export value origin traces to Markdown
The new 'traceconfig' target generates a Markdown file listing all
configuration symbols, their values, and where those values originated
(user assignment, default, selection, implication, or unset).

Signed-off-by: Luca Burelli <l.burelli@arduino.cc>
2025-10-22 18:34:49 +03:00
Luca Burelli
bce4b9af4f kconfig: collect and save trace data
Collect and save trace data for all symbols in the merged configuration.
This includes information about where each symbol was defined or
assigned, which can be useful for debugging complex Kconfig setups.

The trace data includes the following information for each symbol:
- Name
- Visibility
- Type
- Value
- Kind and location of value origin (as defined in kconfiglib)

The trace data is saved for later use in two formats: a binary pickle
file and a human-readable JSON file.

Signed-off-by: Luca Burelli <l.burelli@arduino.cc>
2025-10-22 18:34:49 +03:00
Luca Burelli
5d2c97d3c1 kconfiglib: track origin for symbol values
Track information about what caused a value to be set in the 'origin'
property of Symbol. 'imply' and 'select' dependencies do not have a
location associated with them, so in those cases the location is
a string representation of the dependency expression. For defaults and
user values, the location in the Kconfig file is stored.

Signed-off-by: Luca Burelli <l.burelli@arduino.cc>
2025-10-22 18:34:49 +03:00
Luca Burelli
125d0daaa1 kconfiglib: add 'loc' to reverse dependencies
Store the location (filename and line number) where a 'select', 'imply',
'range' or 'default' was added to a Symbol or Choice.

Signed-off-by: Luca Burelli <l.burelli@arduino.cc>
2025-10-22 18:34:49 +03:00
Luca Burelli
45bea950a2 kconfiglib: add 'user_loc' to Symbol and Choice classes
The 'user_loc' stores the location (filename and line number) where a
symbol or choice was last set via a direct user selection.

Signed-off-by: Luca Burelli <l.burelli@arduino.cc>
2025-10-22 18:34:49 +03:00
Luca Burelli
9d842ab955 kconfiglib: refactor Kconfig._warn() to use 'loc'
Replace filename and linenr parameters to _warn() with a single loc
element, which is a constant (filename, linenr) tuple that can be more
efficiently passed and stored.

Signed-off-by: Luca Burelli <l.burelli@arduino.cc>
2025-10-22 18:34:49 +03:00
Luca Burelli
1337f839cd kconfiglib: node: add 'loc' attribute
Replace 'filename' and 'linenr' usages with a single 'loc' attribute,
which is a (filename, linenr) tuple. This simplifies code dealing with
locations, and makes it explicitly constant. The original attributes are
now provided via properties for compatibility.

Signed-off-by: Luca Burelli <l.burelli@arduino.cc>
2025-10-22 18:34:49 +03:00
Kai Cheng
1de17dcf0a Bluetooth: shell: add sniff mode control command
Add shell command for testing BR/EDR power mode control. Supports
entering sniff mode with configurable parameters (min/max interval,
attempt, timeout) and exiting back to active mode. Provides real-time
feedback on mode change requests and status.

Signed-off-by: Kai Cheng <chengkai@xiaomi.com>
2025-10-22 18:34:33 +03:00
Kai Cheng
e2f962137f Bluetooth: Classic: add mode change notification for sniff mode
Implement mode change event handling and callback notification for
BR/EDR power mode transitions. Adds br_mode_changed callback to
notify applications when connection switches between active and
sniff modes. Handles HCI mode change events and propagates mode
and interval information to registered callbacks.

Signed-off-by: Kai Cheng <chengkai@xiaomi.com>
2025-10-22 18:34:33 +03:00
Kai Cheng
84abd9351f Bluetooth: Classic: add power mode control for sniff mode
Implement BR/EDR power mode control with sniff mode functionality.
Adds APIs bt_conn_br_enter_sniff_mode() and bt_conn_br_exit_sniff_mode()
to manage power saving modes. Includes parameter validation and HCI
command handling for sniff mode configuration with min/max intervals,
attempt count, and timeout parameters.

Signed-off-by: Kai Cheng <chengkai@xiaomi.com>
2025-10-22 18:34:33 +03:00
Zhaoxiang Jin
b0a0aba444 samples: i2s_codec: Enable nxp micfil sample
Enable nxp micfil sample with 'CONFIG_USE_DMIC=y',
you can hear the voice played from the on-board micphone.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-10-22 18:34:20 +03:00
Zhaoxiang Jin
6de5831a92 board: frdm_mcxn236: Enable MICFIL on frdm_mcxn236
1. Enable MICFIL on frdm_mcxn236 board.
2. MICFIL CLOCK and DATA Pins are conflict with
flexcomm0_lpuart pins, so change flexcomm0_lpuart
pins to 'FC0_P2_PIO0_6' and 'FC0_P3_PIO0_7'.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-10-22 18:34:20 +03:00
Zhaoxiang Jin
eeea3bddee drivers: audio: Add NXP MICFIL driver
Add NXP MICFIL driver base DMIC device driver model.
MICFIL reference manual:https://www.nxp.com/products/MCX-N23X#documentation
chapter 58.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-10-22 18:34:20 +03:00
Zhaoxiang Jin
eaa07d0e0f drivers: mcux_syscon: enable MICFIL clock control
Enable MICFIL clock control for NXP MCUX SoCs.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-10-22 18:34:20 +03:00
Lei Xu
3efbbe66c1 samples: fs: fs_sample: Increase CONFIG_MAIN_STACK_SIZE for imx91
Increase CONFIG_MAIN_STACK_SIZE to 8192 to avoid possible crash.

Signed-off-by: Lei Xu <lei.xu@nxp.com>
Signed-off-by: Jiafei Pan <jiafei.pan@nxp.com>
2025-10-22 18:34:09 +03:00
Lei Xu
b0e2e3d4bc boards: frdm_imx91: enable SDHC on the board
Added pinctrl and dts nodes for uSDHC1 and uSDHC2, they are disabled
by default, and provided overlay files to enable them if needed.

Signed-off-by: Lei Xu <lei.xu@nxp.com>
Signed-off-by: Jiafei Pan <jiafei.pan@nxp.com>
2025-10-22 18:34:09 +03:00
Lei Xu
4137d18a07 soc: imx91: add empty soc.h
Some drivers need header file soc.h, according to Zephyr SoC Porting Guide
soc.h must be provided for each SoC, so created an empty one.

Signed-off-by: Lei Xu <lei.xu@nxp.com>
Signed-off-by: Jiafei Pan <jiafei.pan@nxp.com>
2025-10-22 18:34:09 +03:00
Lei Xu
feed595506 dts: arm64: imx9131: add USDHC device nodes
Add device nodes for SDHC.

Signed-off-by: Lei Xu <lei.xu@nxp.com>
Signed-off-by: Jiafei Pan <jiafei.pan@nxp.com>
2025-10-22 18:34:09 +03:00
Etienne Carriere
6ae0efacb8 dts: arm: st: correct exti #address-cells value
Correct #address-cells property in exti interrupt controller nodes
for STM32 SoCs that defined it to 1 whereas value 0 is more applicable
as that interrupt does not expect sub-node nor interrupt mapping.

No functional changes as the value is ignored. This change rather targets
STM32 SoCs DTSI files consistency.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-10-22 18:33:57 +03:00
Etienne Carriere
39206aaa69 dts: arm: st: wba: add missing #address-cells in exti node
Add missing #address-cells property in exti interrupt controller node.
This change prevents build warning messages when using DTC v1.6.1. With
former or later DTC versions, missing #address-cells property is ignored
but it remains requires as per DT schemas, e.g. [1]

Link: https://github.com/devicetree-org/dt-schema/blob/v2025.08/dtschema/schemas/interrupt-controller.yaml#L18 [1]
Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-10-22 18:33:57 +03:00
Etienne Carriere
93cbd2d7a5 dts: arm: st: l5: add missing #address-cells in exti node
Add missing #address-cells property in exti interrupt controller node.
This change prevents build warning messages when using DTC v1.6.1. With
former or later DTC versions, missing #address-cells property is ignored
but it remains requires as per DT schemas, e.g. [1]

Link: https://github.com/devicetree-org/dt-schema/blob/v2025.08/dtschema/schemas/interrupt-controller.yaml#L18 [1]
Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-10-22 18:33:57 +03:00
Cla Mattia Galliard
80d00b5ec1 net: tc-mapping: Fix SKIP_FOR_HIGH_PRIO
Adjust the way the SKIP option worked. Before this patch, a constant
priority offset was considered "high priority" this had the effect, that
the threads assigned to work on the priority were effectively usesless.
To fix it, consider this immediate handling as a pseudo-queue and compute
the tc-thead-mapping based on the effective count (+1 if skipping is
enabled). This makes it so that all threads are usefull and the
high-priority skip-path is considered as a pseudo tc-thread.

Signed-off-by: Cla Mattia Galliard <clamattia@gmail.com>
2025-10-22 18:33:43 +03:00
Cla Mattia Galliard
27effdb727 net: tc_mapping: Use preprocessor
Avoid token pasting and use preprocessor more for additional flexibility.

Signed-off-by: Cla Mattia Galliard <clamattia@gmail.com>
2025-10-22 18:33:43 +03:00
Allen Zhang
7022eac5bb tests: drivers: spi: add overlay and conf file to run test on MCXW23 boards
Support spi_loopback example for frdm_mcxw23 and mcxw23_evk boards.
Test using tests/drivers/spi/spi_loopback.

Signed-off-by: Allen Zhang <chunfeng.zhang@nxp.com>
2025-10-22 18:33:31 +03:00
Allen Zhang
b8a3319fc3 boards: mcxw23: Add support for OSTIMER, SPI and DMA
Enable board support for OSTIMER, SPI and DMA

Signed-off-by: Allen Zhang <chunfeng.zhang@nxp.com>
2025-10-22 18:33:31 +03:00
Allen Zhang
820fdf842e soc: mcxw: enable OSTIMER for MCXW2xx
Enable OSTIMER for MCXW2XX

Signed-off-by: Allen Zhang <chunfeng.zhang@nxp.com>
2025-10-22 18:33:31 +03:00
Allen Zhang
c09159317f dts: mcxw23x: add OSTIMER and DMA support in dts
add dts support for OSTIMER and DMA

Signed-off-by: Allen Zhang <chunfeng.zhang@nxp.com>
2025-10-22 18:33:31 +03:00
Arthur Gay
43738e6927 drivers: disk: sdmmc_stm32: Add API to retrieve SD card CSD register
Introduce a new API function in the sdmmc_stm32 driver that allows
applications to access the Card Specific Data (CSD) register of the
SD/MMC card. This functionality, already available in the SPI-based SD
and MMC subsystems, was previously missing from the STM32 SDMMC driver.

This enhancement enables use cases such as verifying the correct SD card
during manufacturing, ensuring that OEMs use the specified SD card, and
preventing mismatches.

Signed-off-by: Arthur Gay <arthur.gay@marshmallow.kids>
2025-10-22 18:33:18 +03:00
Pieter De Gendt
ef7c370187 scripts: west_commands: runners: Replace ToggleAction
Replaces the custom ToggleAction with the argparse.BooleanOptionalAction.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-10-22 18:33:01 +03:00
Pieter De Gendt
e2b3d2a893 scripts: west_commands: sign: Replace ToggleAction
Replaces the custom ToggleAction with the argparse.BooleanOptionalAction.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-10-22 18:33:01 +03:00
Cristian Bulacu
5cd223bc4b net: l2: openthread: openthread_border_router: Update address events
This commit refactored IPV6 and IPV4 address events. Events have been
defined independently for each installed callback.
Previously, IPV6 address event was not triggered due to a mix of IPV4
and IPV6 flags.

Signed-off-by: Cristian Bulacu <cristian.bulacu@nxp.com>
2025-10-22 18:32:49 +03:00
Cristian Bulacu
e73714bb33 modules: openthread: platform: mdns_socket: Update AIL address monitor
This commit improves AIL address monitoring; Associated function will be
called after OpenThread mDNS module starts platform code by
'otPlatMdnsSetListeningEnabled`.
A new flag, `mdns_socket_is_enabled` has been added to support this new
logic.

Signed-off-by: Cristian Bulacu <cristian.bulacu@nxp.com>
2025-10-22 18:32:49 +03:00
Immo Birnbaum
582e7df9b5 soc: st: stm32h7rsx: adjust MPU header include
Update include of header file arm_mpu_mem_cfg.h which has been moved
to a Cortex-M/-R-agnostic include directory.

Signed-off-by: Immo Birnbaum <mail@birnbaum.immo>
2025-10-22 18:32:27 +03:00
Immo Birnbaum
33ab25e4e7 soc: infineon: pse84: adjust MPU header include
Update include of header file arm_mpu_mem_cfg.h which has been moved
to a Cortex-M/-R-agnostic include directory.

Signed-off-by: Immo Birnbaum <mail@birnbaum.immo>
2025-10-22 18:32:27 +03:00
Immo Birnbaum
8b210fdff7 boards: nxp: mimxrt1180_evk: adjust MPU header include
Update include of header file arm_mpu_mem_cfg.h which has been moved
to a Cortex-M/-R-agnostic include directory.

Signed-off-by: Immo Birnbaum <mail@birnbaum.immo>
2025-10-22 18:32:27 +03:00
Immo Birnbaum
94daa23cb0 soc: adi: max32: adjust MPU header include
Update include of header file arm_mpu_mem_cfg.h which has been moved
to a Cortex-M/-R-agnostic include directory.

Signed-off-by: Immo Birnbaum <mail@birnbaum.immo>
2025-10-22 18:32:27 +03:00
Immo Birnbaum
3d49cfff0c soc: infineon: cyq20829: adjust MPU header include
Update include of header file arm_mpu_mem_cfg.h which has been moved
to a Cortex-M/-R-agnostic include directory.

Signed-off-by: Immo Birnbaum <mail@birnbaum.immo>
2025-10-22 18:32:27 +03:00
Immo Birnbaum
a0f75042a9 soc: nordic: nrf54hx: nrf92x: adjust MPU header include
Update include of header file arm_mpu_mem_cfg.h which has been moved
to a Cortex-M/-R-agnostic include directory.

Signed-off-by: Immo Birnbaum <mail@birnbaum.immo>
2025-10-22 18:32:27 +03:00
Immo Birnbaum
4cd2e61a73 soc: nuvoton: npcx7: adjust MPU header include
Update include of header file arm_mpu_mem_cfg.h which has been moved
to a Cortex-M/-R-agnostic include directory.

Signed-off-by: Immo Birnbaum <mail@birnbaum.immo>
2025-10-22 18:32:27 +03:00
Immo Birnbaum
a54226d87a soc: nuvoton: m55m1x: adjust MPU header include
Update include of header file arm_mpu_mem_cfg.h which has been moved
to a Cortex-M/-R-agnostic include directory.

Signed-off-by: Immo Birnbaum <mail@birnbaum.immo>
2025-10-22 18:32:27 +03:00
Immo Birnbaum
83112f4b28 soc: nxp: imx8m: adjust MPU header include
Update include of header file arm_mpu_mem_cfg.h which has been moved
to a Cortex-M/-R-agnostic include directory.

Signed-off-by: Immo Birnbaum <mail@birnbaum.immo>
2025-10-22 18:32:27 +03:00
Immo Birnbaum
e076ad18ca soc: nxp: imxrt: adjust MPU header include
Update include of header file arm_mpu_mem_cfg.h which has been moved
to a Cortex-M/-R-agnostic include directory.

Signed-off-by: Immo Birnbaum <mail@birnbaum.immo>
2025-10-22 18:32:27 +03:00
Immo Birnbaum
d43ed03652 soc: nxp: s32k3: adjust MPU header include
Update include of header file arm_mpu_mem_cfg.h which has been moved
to a Cortex-M/-R-agnostic include directory.

Signed-off-by: Immo Birnbaum <mail@birnbaum.immo>
2025-10-22 18:32:27 +03:00
Immo Birnbaum
2e416b26b2 soc: renode: cortex_r8_virtual: adjust MPU header include
Update include of header file arm_mpu_mem_cfg.h which has been moved
to a Cortex-M/-R-agnostic include directory.

Signed-off-by: Immo Birnbaum <mail@birnbaum.immo>
2025-10-22 18:32:27 +03:00
Immo Birnbaum
5be0f2d789 soc: st: stm32h7x: adjust MPU header include
Update include of header file arm_mpu_mem_cfg.h which has been moved
to a Cortex-M/-R-agnostic include directory.

Signed-off-by: Immo Birnbaum <mail@birnbaum.immo>
2025-10-22 18:32:27 +03:00
Immo Birnbaum
e21dd9504c soc: ti: am6x: adjust MPU header include
Update include of header file arm_mpu_mem_cfg.h which has been moved
to a Cortex-M/-R-agnostic include directory.

Signed-off-by: Immo Birnbaum <mail@birnbaum.immo>
2025-10-22 18:32:27 +03:00
Immo Birnbaum
a6966363ac soc: xlnx: zynqmp: adjust MPU header include
Update include of header file arm_mpu_mem_cfg.h which has been moved
to a Cortex-M/-R-agnostic include directory.

Signed-off-by: Immo Birnbaum <mail@birnbaum.immo>
2025-10-22 18:32:27 +03:00
Immo Birnbaum
34d346288e arch: arm: core: mpu: adjust MPU header include
Update include of header file arm_mpu_mem_cfg.h which has been moved
to a Cortex-M/-R-agnostic include directory.

Signed-off-by: Immo Birnbaum <mail@birnbaum.immo>
2025-10-22 18:32:27 +03:00
Immo Birnbaum
61b145f427 arch: arm: mpu: move MPU memory configuration header
Move the helper file arm_mpu_mem_cfg.h, which translates the values
of the Kconfig symbols CONFIG_FLASH_SIZE and CONFIG_SRAM_SIZE to size
definitions to be used during MPU setup, from a Cortex-M-specific
include directory to the Cortex-agnostic zephyr/arch/arm/mpu directory,
as:

- the contents of this header file are not dependent on the target being
  an ARMv7M, only ARMv8M is excluded, but the contents are identical
  for the ARMv7/8 Cortex-R MPU implementation,
- the header file zephyr/arch/arm/mpu/arm_mpu.h, included within
  arm_mpu_mem_cfg.h, is also compatible with both Cortex-M and Cortex-R,
  the distinction between the two implementations takes place at an
  even lower level,
- several ARMv7/8 Cortex-R targets now reference this header file in their
  MPU region setup (Xilinx ZynqMP, TI K3, Renode cortex_r8_virtual) while
  so far referencing it in an ARMv7 Cortex-M-specific include directory.

Signed-off-by: Immo Birnbaum <mail@birnbaum.immo>
2025-10-22 18:32:27 +03:00
Fin Maaß
c821bf3493 mgmt: hawkbit: exclude DIRECT_XIP
DIRECT_XIP requires different images based on
the slot where there it is saved, in hawkbit we
currently have no way of telling the server that or
chosing a image to download based on it, so
make sure it is not used.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-10-22 18:32:16 +03:00
Luca Burelli
e87ff255ed MAINTAINERS: add dts/vendor/arduino/ to Arduino Platforms section
Files in that directory relate to Arduino hardware products, so it makes
sense to include them in the Arduino Platforms section.

Signed-off-by: Luca Burelli <l.burelli@arduino.cc>
2025-10-22 18:32:05 +03:00
Benjamin Cabé
9d061156f2 Revert "shell: modules: devmem: support 64-bit read & write"
This reverts commit 5149463f79
which causes issue for ARC64 architectures in main

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-10-22 18:31:56 +03:00
Benjamin Cabé
5e590e4171 Revert "arch: arc: add sys_write64/sys_read64 functions"
This reverts commit 3462a489f0 that
was marked as hotfix and merged despite reservations from
ARC maintainer

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-10-22 18:31:56 +03:00
Benjamin Cabé
3462a489f0 arch: arc: add sys_write64/sys_read64 functions
Added sys_read64 and sys_write64 functions for 64-bit memory operations,
similar to sys_read32 and sys_write32.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-10-22 09:17:06 -04:00
Martin Hoff
45179f895c drivers: serial: silabs: Fix uart tx abort at high baudrate
At high baudrate when using async api of the uart, the abort
function in not giving the right informations since we're stopping
the dma after getting the status of it. It makes the uart_async_api test
failed on high baudrate.

Signed-off-by: Martin Hoff <martin.hoff@silabs.com>
2025-10-22 15:03:23 +02:00
Martin Hoff
6ef3ea4080 drivers: serial: silabs: Correction of dma/peripheral isr exec order
This patch correct a bug where the uart/eusart tx callback might be
triggered before the dma complete callback at high baudrate when using
async transfer.

Signed-off-by: Martin Hoff <martin.hoff@silabs.com>
2025-10-22 15:03:23 +02:00
Håvard Reierstad
b6252b57aa Bluetooth: Host: shell: Don't use BT_FIXED_PASSKEY
Updates the bt shell API to use the new Kconfig option
BT_APP_PASSKEY instead of BT_FIXED_PASSKEY as this is being
deprecated.

Signed-off-by: Håvard Reierstad <haavard.reierstad@nordicsemi.no>
2025-10-22 16:01:08 +03:00
Håvard Reierstad
82cfb5a056 Bluetooth: Host: Deprecate BT_FIXED_PASSKEY
The BT_FIXED_PASSKEY Kconfig option is being deprecated, and is replaced
by BT_APP_PASSKEY. The reason for the deprecation is an upcoming
errata, ES-24489, which mandates that a new passkey shall be generated
for each pairing procedure.

Signed-off-by: Håvard Reierstad <haavard.reierstad@nordicsemi.no>
2025-10-22 16:01:08 +03:00
Håvard Reierstad
6c64054d6e Bluetooth: Host: Add BT_APP_PASSKEY Kconfig option
Adds the BT_APP_PASSKEY Kconfig, which allows the application to provide
passkeys for pairing using the new `app_passkey()` callback.
This is an alternative to BT_FIXED_PASSKEY, which will be deprecated in
a later commit.

Signed-off-by: Håvard Reierstad <haavard.reierstad@nordicsemi.no>
2025-10-22 16:01:08 +03:00
Dave Rensberger
bd01638716 drivers: wifi: infineon: add .iface_status method
The .iface_status method of the wifi_mgmt_ops API needs to be added
so that the "wifi status" command on the network shell will work.

Signed-off-by: Dave Rensberger <davidr@beechwoods.com>
2025-10-22 16:00:27 +03:00
Emil Gydesen
fad9f4d612 Bluetooth: BAP: BASE: Split bt_bap_base_get_base_from_ad
Split the subgroup validation from
bt_bap_base_get_base_from_ad into a new function
base_pull_subgroup to make the function simpler and
make Sonarcloud happy.

The new function, base_pull_subgroup, is also used
in the bt_bap_base_foreach_subgroup to reduce
code duplication.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-10-22 16:00:17 +03:00
Sylvio Alves
c80424818e drivers: udc_dwc2: increase stack size for ESP32-S3
Increase default UDC DWS stack size for ESP32-S3 in order
to guarantee quirks are executed without issues.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2025-10-22 15:59:59 +03:00
Sylvio Alves
afdfe74de6 drivers: udc_dwc2: add Espressif pre-enable and shutdown hooks
Ensure the USB clock is enabled before initializing the
controller by invoking the pre_enable hook. This avoids
initialization failures when the HAL has not yet configured
the clock.

Adds shutdown hook to allow interrupt and clock deinit.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2025-10-22 15:59:59 +03:00
Bartlomiej Buczek
7d68c8032e boards: nordic: nrf54h20: Add adc to supported features
Enable twister tests execution on nrf54h20dk/nrf54h20/cpuppr target.

Signed-off-by: Bartlomiej Buczek <bartlomiej.buczek@nordicsemi.no>
2025-10-22 15:59:49 +03:00
Quang Le
d92a870a10 samples: drivers: spi: Add support for RZT2M
Enable SPI driver sample for RZT2M

Signed-off-by: Quang Le <quang.le.eb@bp.renesas.com>
Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
2025-10-22 15:59:39 +03:00
Quang Le
d247b4b72d tests: drivers: spi: Add support for RZN2L, T2M
Enable SPI driver tests for RZN2L, T2M

Signed-off-by: Quang Le <quang.le.eb@bp.renesas.com>
Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
2025-10-22 15:59:39 +03:00
Quang Le
fcea8d3205 boards: renesas: Add SPI support for RZN2L, T2M
Add SPI support for board RZ/N2L-RSK, RZ/T2M-RSK

Signed-off-by: Quang Le <quang.le.eb@bp.renesas.com>
Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
2025-10-22 15:59:39 +03:00
Quang Le
39a7b92038 dts: renesas: Add SPI support for RZN2L, T2M
Add SPI nodes to Renesas RZN2L, T2M devicetree

Signed-off-by: Quang Le <quang.le.eb@bp.renesas.com>
Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
2025-10-22 15:59:39 +03:00
Quang Le
d5f143b406 drivers: spi: Initial support for RZN2L, T2M
Add SPI driver support for Renesas RZN2L, T2M

Signed-off-by: Quang Le <quang.le.eb@bp.renesas.com>
Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
2025-10-22 15:59:39 +03:00
Mathieu Choplain
e056cceae0 boards: st: nucleo_wba65ri: add support for USB
Configure and enable the USB controller on Nucleo-WBA65RI.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-10-22 15:59:27 +03:00
Mathieu Choplain
f95b84b501 drivers: usb: udc: stm32: add support for USB on STM32WBA6x
Add support for USB on STM32WBA6x series, along with a tiny rework of how
the st,stm32u5-otghs-phy is handled to make the code more generic by
actually consuming DT information.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-10-22 15:59:27 +03:00
Mathieu Choplain
8221d078d7 dts: arm: st: wba: add USB to STM32WBA6x DTSI
Add missing nodes for USB feature to STM32WBA6x DTSI.

(Note: only WBA65 DTSI exists today, but USB is available in other SoCs of
the series - this should be reworked later)

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-10-22 15:59:27 +03:00
Mathieu Choplain
541f7f7ff2 include: bindings: stm32wba: add OTGHS mux selector
Add missing OTGHS_SEL macro to STM32WBA clock header. This macro applies
only to certain SoCs of STM32WBA6x series.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-10-22 15:59:27 +03:00
Quy Tran
a570b0564f drivers: serial: Support PM device for serial driver
Support PM for serial driver of Renesas RX

Signed-off-by: Quy Tran <quy.tran.pz@renesas.com>
2025-10-22 15:59:01 +03:00
Phi Tran
3bc9d9b6c6 soc: renesas: rx: initial support pm for RX130
Add initial support power management for Renesas RX130

Signed-off-by: Phi Tran <phi.tran.jg@bp.renesas.com>
2025-10-22 15:59:01 +03:00
Quy Tran
6680cff956 manifest: hal_renesas: Update revision for hal_renesas
Update revision for hal_renesas for lpc support

Signed-off-by: Quy Tran <quy.tran.pz@renesas.com>
2025-10-22 15:59:01 +03:00
Valerio Setti
e2c054be2c doc: migration-guide: add note for crypto updates in McuMGR
Add note for the removal of Mbed TLS' legacy crypto support in favor of
PSA API.

Signed-off-by: Valerio Setti <vsetti@baylibre.com>
2025-10-22 15:58:51 +03:00
Valerio Setti
bed1cd1ea9 tests: subsys: mgmt: mcumgr: remove selection of Mbed TLS in tests
MCUMGR_GRP_FS_HASH_SHA256 now already selects Mbed TLS and its PSA Crypto
support if TF-M is not enabled in the build, so there is no need to do
that in test configuration files.

Signed-off-by: Valerio Setti <vsetti@baylibre.com>
2025-10-22 15:58:51 +03:00
Valerio Setti
f779adf8e0 mgmt: mcumgr: remove usage of legacy Mbed TLS crypto for hash
The long-term goal of Zephyr is to rely exclusively on PSA Crypto API for
crypto support. At the same time Mbed TLS is going to remove legacy crypto
support starting from the next relase (v4.0).

Therefore this commit removes usage of legacy Mbed TLS crypto in favor
of PSA Crypto API. Mbed TLS will still be used in case of a build where
TF-M is not enabled.

Signed-off-by: Valerio Setti <vsetti@baylibre.com>
2025-10-22 15:58:51 +03:00
Etienne Carriere
b6b75d9901 doc: migration guide: OpenOCD deprecation of ST-Link HLA interface
A recent change in OpenOCD deprecates ST-Link HLA interface requiring
changes in some board OpenOCD configuration files in the Zephyr tree.
Since this deprecation, in order to support old and recent OpenOCD
tool we needed to change of debug driver interface for these boards,
potentially causing trouble to user to have a recent OpenOCD and
an old ST-Link adapter firmware. Therefore add an entry in the migration
guide to give some hints on the potential issue and how to address
it.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-10-22 15:58:41 +03:00
Etienne Carriere
073fd96832 boards: st: address recent OpenOCD deprecation of HLA interface
This change aims to address a compatibility issue with recent OpenOCD
pre-release and what is planned in OpenOCD v1.0.0 planned end of 2025.
OpenOCD commit 34ec5536c0ba ("stlink: deprecate HLA support") [1] was
merged in December 2024 after release tag 0.12.0 and before coming
release v1.0.0. It deprecates the legacy HLA driver interface (also
called transport) in favor to the generic DAP interface that is
supported by ST-Link firmware v2.1 (that is version v2j24) and later.

Since the referred commit, OpenOCD config script must source a new
config file (interface/stlink-hla.cfg) in order to select hla_swd
transport. This change breaks many ST-Link based OpenOCD config files
of Zephyr. Alternatively, already existing interface/stlink-dap.cfg
can be used together with dapdirect_swd interface to use direct DAP
interface.

To overcome the issue and support older and newer OpenOCD releases,
this change uses OpenOCD native board config script files when
available or if none, we select the dapdirect_swd transport ID that
is supported since a long time and still maintained thank to
OpenOCD native interface/stlink-dap.cfg config script file.

One may potentially face connection issues if using both a recent
OpenOCD tool and an ST-Link adapter that embeds a old ST-Link
firmware v1.x. This ST-Link firmware only supports HLA interface.
It is not shipped by ST in ST-Link adapter since 2015. This situation
however may happen with old STM32 L0/L1/L4/F4 Nucleo/Discovery
boards or with old ST-Link adapter devices. ST-Link firmware v1.0 do not
support DAP direct SWD interface. In such a case, either upgrade the
ST-Link firmware (see STM32CubeProgrammer guide), or revert the change
made here to explicitly use hla_swd transport based on stlink-hla.cfg.
Alternatively, use an older OpenOCD release which may not be desired.

Link: 34ec5536c0/ [1]

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-10-22 15:58:41 +03:00
Greter Raffael
a6eaa54f64 sys: util_macro: Support macros as arguments
Adjusted GET_ARG_N and GET_ARGS_LESS_N to use UTIL_CAT instead of simple
concatenation. This allows to use a macro as the argument N instead of
only numbers.

Adjusted the unit tests to showcase this.

Signed-off-by: Greter Raffael <rgreter@baumer.com>
2025-10-22 15:58:10 +03:00
Jamie McCrae
7ab42e51f0 dts: arm: nordic: nrf5340: Add missing ranges property for QSPI
This was missing the XIP region

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-10-22 15:57:44 +03:00
Jamie McCrae
4edc35772b dts: vendor: nordic: nrf54lm20a: Fix invalid reg for USB
Fixes an invalid reg value which duplicated the parents range
property

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-10-22 15:57:34 +03:00
Sudan Landge
a55053b216 tests: fix arch.arm.user.stack test failure
Fixes #97473 by:
- Marking the test as passed if the hardware executes user threads for a
  while without triggering a stack corruption, instead of waiting
    indefinitely.
- Adding a timeout to ensure the test exists gracefully if the issue is
  not reproduced.

Also fixes a stack corruption issue on QEMU targets, caused by
insufficient stack size and revealed by the timer change.

Signed-off-by: Sudan Landge <sudan.landge@arm.com>
2025-10-22 15:57:24 +03:00
Jordan Yates
95a3110624 tests: drivers: gnss: gnss_emul: test driver
Test the behaviour of the emulated GNSS driver.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-10-22 15:57:08 +03:00
Jordan Yates
70b0e17d60 gnss: gnss_emul: decouple realtime and gnss time
Allow the emulator to be set to an arbitrary UTC time, instead of being
locked to reporting the current system uptime as UTC.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-10-22 15:57:08 +03:00
Jordan Yates
7c3beaf6e4 gnss: gnss_emul: allow direct config queries
Provide an escape hatch from the GNSS API requirement that a device
be active to run the configuration `get` functions. This is useful in
the context of an emulator device to query how other software modules
have configured the GNSS.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-10-22 15:57:08 +03:00
Jordan Yates
802f4a3fbf gnss: gnss_emul: halt callbacks when not ACTIVE
Ensure that callbacks do not continue to fire after `ACTION_SUSPEND`.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-10-22 15:57:08 +03:00
Jordan Yates
9bc84b9359 gnss: gnss_emul: init with pm_device_driver_init
Remove the custom initialisation logic that attempts to duplicate
`pm_device_driver_init`.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-10-22 15:57:08 +03:00
Jordan Yates
711c8ce9e1 gnss: gnss_emul: manual data update mode
Add an option for the GNSS fix state reported by the emulated GNSS modem
to be manually configured by test code, instead of being hardcoded to
always achieve a fix of hardcoded parameters after 5 seconds.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-10-22 15:57:08 +03:00
Stoyan Bogdanov
f3f332c40e MAINTAINERS: Add cc23xx and collaborator for TI SimpleLink Platforms
- Add cc23xx SoCs to files in TI SimpleLink
- Add bogdanovs as colaborator for TI SimpleLink

Signed-off-by: Stoyan Bogdanov <sbogdanov@baylibre.com>
2025-10-22 15:56:57 +03:00
Artur Dobrynin
6f29b25ed4 tests: bsim: bluetooth: host: robust subscription proc
GATT subscription in conn_stress test was failing and stalling the test
due to lack of TX buffers. Retry mechanism added as a workaround.

Removing this workaround would make the test fail due to deadlocks,
and require allocating more buffers with CONFIG_BT_L2CAP_TX_BUF_COUNT
set to 10 as a workaround.

Signed-off-by: Artur Dobrynin <artur.dobrynin@nordicsemi.no>
2025-10-22 15:56:46 +03:00
Artur Dobrynin
bb7463fbdd tests: bsim: bluetooth: host: enable conn_stress
Adding some minor modifications in order to be able to run
host conn_stress test on CI.

Signed-off-by: Artur Dobrynin <artur.dobrynin@nordicsemi.no>
2025-10-22 15:56:46 +03:00
Ricardo Cañuelo Navarro
f18e0ff280 boards: seeed: xiao_nrf54l15: fix led0 polarity
led0 in this board is active low according to the schematic.
Tested on a XIAO-nRF54L15 and a XIAO-nRF54L15 sense.

Signed-off-by: Ricardo Cañuelo Navarro <rcn@igalia.com>
2025-10-22 15:56:15 +03:00
Alberto Escolar Piedras
dd06e7ec72 drivers timer nrf_rtc: Fix dependency
8498c39e13 seems to have introduce
an incorrect dependency which prevents the RTC timer from
been built if any of the RTC's are enabled.
It should only depend on the rtc1.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-10-22 15:56:04 +03:00
Diego Herranz
1d5c148045 soc: nxp: imx: imx7d: soc.c: enable uart1/3/4/5/7 if used in DT
Only uart2 and uart6 were considered before, so if any other uart
was used, it wouldn't work and even worse, it would crash when
trying to access it because the RDC wasn't configured.

Signed-off-by: Diego Herranz <diegoherranz@diegoherranz.com>
2025-10-22 15:55:53 +03:00
Alain Volmat
df6857bbe1 video: stm32: enable STM32 VENC / JPEG build_all tests
Allow building the STM32 VENC and STM32 JPEG HW codec as part
of the build_all tests.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-10-22 15:55:42 +03:00
Alain Volmat
e33595e4f5 dts: bindings: video: stm32: add title entry on stm32 video bindings
Add missing title entry in stm32 video device bindings.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-10-22 15:55:42 +03:00
Cristian Bulacu
b08a034628 modules: openthread: platform: Enable mDNS auto enable functionality
As per OpenThread API documentation, it is recommended for a Border Router
to use this functionality

Signed-off-by: Cristian Bulacu <cristian.bulacu@nxp.com>
2025-10-22 15:55:32 +03:00
Pieter De Gendt
5709b55875 scripts: west_commands: Convert sysbuild argument to BooleanOptionalAction
Instead of using a mutually exclusive group for sysbuild/no-sysbuild
argparse arguments, use the argparse.BooleanOptionalAction to allow passing
multiple arguments, where the last one is applied.

This is consistent with for example gcc compiler flags.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-10-22 15:55:21 +03:00
Alexander Svensen
4896194be8 tests: bluetooth: Recycle ext_adv_sets when stopping adv
- We want to reuse ext_advs when first stopped and restarted
- This ensures SID is the same
- Fixes CAP/CL/ADV/BV-03-C

Signed-off-by: Alexander Svensen <alexander.svensen@nordicsemi.no>
2025-10-22 15:55:10 +03:00
Sebastian Bøe
8e59980f01 scripts: ci: check_compliance: Add missing gen_uicr UNDEF's
Add missing gen_uicr UNDEF's.

Signed-off-by: Sebastian Bøe <sebastian.boe@nordicsemi.no>
2025-10-22 15:54:59 +03:00
Johan Hedberg
0fd8af97fb Bluetooth: Host: Make use of common array helper macros
There's a bunch of convenience macros in sys/util.h that are intended to
help out with translating array indices and determining if an element is
part of an array or not. Use those instead of custom code.

Signed-off-by: Johan Hedberg <johan.hedberg@silabs.com>
2025-10-22 15:54:48 +03:00
Fin Maaß
45fc6fedf3 riscv: remove unneeded select ATOMIC_OPERATIONS_BUILTIN
When RISCV_ISA_EXT_A is enabled,
ATOMIC_OPERATIONS_BUILTIN automaticly enabled,
we don't need to do it at the soc level again.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-10-22 15:54:37 +03:00
Fabio Baltieri
b0b5c083fb input: use single evaluation clamp
Use single evaluation clamp for few input drivers. No reason not to,
make some sense for the input_kbd_matrix call since one of the arguments
is a function.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2025-10-22 15:54:25 +03:00
Benjamin Cabé
2f91d64997 drivers: sensor: pni: rm3100: drop unused inline function
settings_changed() is not used, causing warnings when building with
clang. Drop it

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-10-22 15:54:12 +03:00
Benjamin Cabé
8e7599af34 drivers: sensor: adxl345: fix uninitialized variable warning
Fix -Wsometimes-uninitialized warning by initializing data_opt directly
from fifo_wmark_cfg->opt. At this point in the code flow, fifo_wmark_cfg
is guaranteed to be non-NULL because we can only reach this code after
fifo_full_irq is true, which requires fifo_wmark_cfg to be non-NULL.

Added an assertion to document this invariant.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-10-22 15:54:12 +03:00
Bill Waters
f39f9bd38f soc: infineon: cat1b: psc3: noinit linker update
This device needs a custom noinit.ld file to account
for how ROM uses RAM during boot.

Signed-off-by: Bill Waters <bill.waters@infineon.com>
2025-10-22 09:08:58 +02:00
Stephan Linz
7cd1fbd73f boards: nxp: frdm_mcxn947: add mikrobus labels
Added mikrobus_i2c, mikrobus_spi and mikrobus_header node labels
to FRDM-MCXN947 device tree board definition, allowing compatible
shield boards to be used. Also add new FlexComm SPI pinmux for the
LPSPI6 on LPFLEXCOMM6 and enable required GPIO3 and GPIO5.

Signed-off-by: Stephan Linz <linz@li-pro.net>
2025-10-22 09:08:26 +02:00
Stephan Linz
d66a3d6ded boards: nxp: frdm_mcxn947: add arduino labels
Added arduino_serial, arduino_i2c, arduino_spi and arduino_header
node labels to FRDM-MCXN947 device tree board definition, allowing
compatible shield boards to be used. Also extend the board YAML file
with related support tags arduino_gpio, arduino_i2c, arduino_serial
and arduino_spi.

Signed-off-by: Stephan Linz <linz@li-pro.net>
2025-10-22 09:08:26 +02:00
Maochen Wang
e9cdd6869d hostap: fix cmd error for wifi reg_domain
When CONFIG_WIFI_NM_HOSTAPD_AP is enabled, input 'wifi reg_domain', there
is error log shows 'zephyr_get_hapd_handle_by_ifname: Unable to get hapd
hanl, Interface ml not found'. The reason is the parameter dev of
hostapd_ap_reg_domain is from STA not SAP interface. Getting the correct
SAP dev can fix this issue.

Signed-off-by: Maochen Wang <maochen.wang@nxp.com>
2025-10-22 09:04:44 +02:00
Felix Wang
c11cf177c7 drivers: timer: Use prescale_glitch_filter for prescale setting
In eb785ef, "prescaler" has been deprecated and
"prescale_glitch_filter" is used for prescale setting.

This patch removes "prescaler" parameter and use
"prescale_glitch_filter" to simplify code and fix build
error caused by "precsaler" parameter.

Signed-off-by: Felix Wang <fei.wang_3@nxp.com>
2025-10-22 09:04:33 +02:00
Nicolas Pitre
b5363d5fff kernel: usage: Fix CPU stats retrieval in z_sched_cpu_usage()
The z_sched_cpu_usage() function was incorrectly using _current_cpu
instead of the requested cpu_id parameter when retrieving CPU usage
statistics. This caused it to always return stats from the current CPU
rather than the specified CPU.

This bug manifested in SMP systems when k_thread_runtime_stats_all_get()
looped through all CPUs - it would get stats from the wrong CPU for
each iteration, leading to inconsistent time values. For example, in
the times() POSIX function, this caused time to appear to move backwards:

  t0: utime: 59908
  t1: utime: 824

The fix ensures that:
1. cpu pointer is set to &_kernel.cpus[cpu_id] (the requested CPU)
2. The check for "is this the current CPU" is correctly written as
   (cpu == _current_cpu)

This fixes the portability.posix.muti_process.newlib test failure
on FVP SMP platforms where times() was reporting backwards time.

Signed-off-by: Nicolas Pitre <npitre@baylibre.com>
2025-10-22 09:04:13 +02:00
Yong Cong Sin
5149463f79 shell: modules: devmem: support 64-bit read & write
Add support for 64-bit devmem operations for 64-bit devices.

Signed-off-by: Sergii Vystoropskyi <vistorop@meta.com>
Signed-off-by: Yong Cong Sin <ycsin@meta.com>
Signed-off-by: Yong Cong Sin <yongcong.sin@gmail.com>
2025-10-22 09:03:55 +02:00
Jordan Yates
cc257ddd75 modem: cellular: configurable initialisation priority
Make the initialisation priority of cellular modems configurable, and
move it earlier in the sequence by default to provide room for devices
to be initialised later.

The updated default value is set to one earlier than
`GNSS_INIT_PRIORITY`, as LTE modems often embed a GNSS modem, whose
driver may depend on the baseline modem driver (GNSS user pipes, etc).

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-10-22 09:03:42 +02:00
Jonas Berg
df9af472b9 boards: shields: Add Adafruit LPS22 pressure sensor shield
Product photo from https://learn.adafruit.com/assets/91880

Tested with the command in the index.rst file.

Compile testing of the overlay file is done with the
samples/sensor/pressure_polling sample.

Signed-off-by: Jonas Berg <jonas.s.t.berg@gmail.com>
2025-10-22 09:03:28 +02:00
Aksel Skauge Mellbye
440755bd9e soc: silabs: Move Kconfig symbols for HAL selection to HAL
The Kconfig symbols for selecting HAL content should be part
of the HAL module integration, not defined by the SoC. Split the
symbols between the Series 0/1 Gecko HAL and Series 2 SiSDK HAL
when moving them.

For now, the Series 0/1 HAL symbols retain their name, while new
names consistent with the symbols already defined in the module
integration layer are used for the Series 2 HAL.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-10-22 09:03:15 +02:00
Aksel Skauge Mellbye
5d0e9f5cca soc: silabs: Move Series 2 specific defconfigs to Series 2
Series 2 specific defconfigs for Bluetooth related options should
be set in the Series 2 specific defconfig file.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-10-22 09:03:15 +02:00
Aksel Skauge Mellbye
d9e9f24cdf soc: silabs: Move Kconfig symbol for SE to HAL
Move the Kconfig symbol for the SE HAL to hal_silabs.
Select the symbol in the entropy driver rather than unconditionally
at the SoC level.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-10-22 09:03:15 +02:00
Aksel Skauge Mellbye
fab26ef69e soc: silabs: Move Series 2 specific TRNG symbol to Series 2 Kconfig
CRYPTO_ACC_GECKO_TRNG only applies to Series 2. Don't define it at
the top level.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-10-22 09:03:15 +02:00
Aksel Skauge Mellbye
2781be95c5 soc: silabs: Remove duplicate Kconfig symbol
COUNTER_GECKO_STIMER is defined by the counter driver. It should
not be present in SoC Kconfig.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-10-22 09:03:15 +02:00
Aksel Skauge Mellbye
cf1fbbcf83 soc: silabs: Move Kconfig symbol for clock/device init to HAL
Kconfig symbols for selecting HAL content should be part of the
HAL module integration, not defined in the SoC tree.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-10-22 09:03:15 +02:00
Aksel Skauge Mellbye
2b54dfa8aa soc: silabs: Select PM implementation per family directly
The indirection through a backend symbol for PM implementation
isn't necessary. Define symbol for PM HAL in HAL Kconfig, and
leverage it at SoC level.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-10-22 09:03:15 +02:00
Aksel Skauge Mellbye
4602300a27 soc: silabs: Move Kconfig symbol for sleeptimer to HAL
Kconfig symbols for selecting HAL content should be part of the
HAL module integration, not defined in the SoC tree. Define the
sleeptimer symbol for WiSeConnect and SiSDK since both use it.

In the future, WiSeConnect should include the SiSDK configuration
and reuse it instead of redefining everything itself. This is a
larger scale refactor that this commit doesn't start tackling.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-10-22 09:03:15 +02:00
Aksel Skauge Mellbye
6786b4824f soc: silabs: Sort Series 2 dependencies
Sort symbol selections for Series 2 SoCs.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-10-22 09:03:15 +02:00
Aksel Skauge Mellbye
e9c51f9b95 boards: silabs: Remove unused defconfig symbols
Remove DCDC defconfigs from Series 2 boards. These have no effect,
Series 2 derives DCDC configuration from devicetree.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-10-22 09:03:15 +02:00
Lauren Murphy
a7be1ffb46 boards: intel_adsp: add ace40 sim .dts
Adds missing intel_adsp_ace40_nvl_sim.dts.

Signed-off-by: Lauren Murphy <lauren.murphy@intel.com>
2025-10-22 09:03:00 +02:00
Lauren Murphy
b3a7eeaa79 soc: intel_adsp: winstream only if not sim
Simulator console will not be used if winstream is
selected for simulators.

Signed-off-by: Lauren Murphy <lauren.murphy@intel.com>
2025-10-22 09:03:00 +02:00
Lauren Murphy
7f42d4c1c2 boards: intel_adsp/ace: remove kconfig to skip 2nd core flow
This removes CONFIG_INTEL_ADSP_SIM_NO_SECONDARY_CORE_FLOW for
both ACE15 and ACE30 simulator, as the latest simulator no
longer requires this workaround.

Signed-off-by: Lauren Murphy <lauren.murphy@intel.com>
2025-10-22 09:03:00 +02:00
Lauren Murphy
e8a14b2494 soc: intel_adsp: send fwready msg for sim
Sends FWREADY message for simulator.

Signed-off-by: Lauren Murphy <lauren.murphy@intel.com>
2025-10-22 09:03:00 +02:00
Anas Nashif
24e094ef5e lib: move cpu_load into lib/os
Move cpu_load to lib/os, as this functionality on its own does not
justify being a subsystem on its own.

Fixes #95498

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-10-22 09:02:38 +02:00
Alexander Apostolu
70951ee985 include: zephyr: drivers: sensor.h: updated doxygen for get_frame_count
Updated Doxygen for sensor_decoder_api.get_frame_count().

* Reworded grammar
* Changed channel to chan_spec to reflect data type
* Changed return value from ENOTSUP to EINVAL to be consistent with
    sensor_decoder_api.decode()

Signed-off-by: Alexander Apostolu <apostolu240@gmail.com>
2025-10-22 09:01:21 +02:00
Adrian Friedli
46507d626c samples: basic: blinky: fix readme
Update description to match code snippet.

Signed-off-by: Adrian Friedli <adi@koalatux.ch>
2025-10-22 09:00:50 +02:00
Dan Kalowsky
fd25c976e2 MAINTAINERS: move TF-A to non-maintained
Former maintainers povergoing and sgrrzhf have not been active for several
releases despite attempts to contact them. Instead of keeping PRs and
releases gating on having them respond remove them from the maintainers
list until they can return.

Unfortunately this moves TF-A from maintained to odd fixes.

Signed-off-by: Dan Kalowsky <dkalowsky@amperecomputing.com>
2025-10-22 08:58:52 +02:00
Gerard Marull-Paretas
f1fa897fbd dts: bindings: mtd: jedec,qspi-nor: set qspi bus
This binding is meant to sit on a QSPI bus.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2025-10-22 08:58:21 +02:00
Gerard Marull-Paretas
464bd3e649 dts: bindings: mtd: sifli,sf32lb-mpi-qspi-nor: set qspi bus type
This node defines a QSPI bus type.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2025-10-22 08:58:21 +02:00
Zhaoxiang Jin
08d394ade8 boards: nxp: Unify the use of macros
For nxp's board.c, the macro used in some places is
'DT_NODE_HAS_STATUS(DT_NODELABEL(<node_label>),okay)', and the
macro used in some places is
'DT_NODE_HAS_STATUS_OKAY(DT_NODELABEL(<node_label>))'.
The purpose of this PR is to unify the use of macros
and use the latter.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-10-22 08:58:06 +02:00
Mario Paja
e3005ec508 samples: i2s: output: add nucleo_f429zi
Add nucleo_f429zi board in samples/drivers/i2s/output

Signed-off-by: Mario Paja <mariopaja@hotmail.com>
2025-10-22 08:57:45 +02:00
Mario Paja
222416f71c drivers: i2s: stm32 sai add support for stm32f4xx series
STM32F4xx series shares several DMA configurations with
the other platforms. These changes aim to enable platform
specific DMA configuration and align them to other platforms.

Signed-off-by: Mario Paja <mariopaja@hotmail.com>
2025-10-22 08:57:45 +02:00
Mario Paja
0dde13e02e dts: st: f4: enable sai1 in stm32f4xx series
These changes enable SAI1 A & B nodes in STM32F4xx series.

Signed-off-by: Mario Paja <mariopaja@hotmail.com>
2025-10-22 08:57:45 +02:00
Tom Chang
4ab41ed47b drivers: ps2: npcx: update registers for NPCKn variant
This commit updates register definition for NPCKn variant to match the
datasheet.

Signed-off-by: Tom Chang <CHChang19@nuvoton.com>
2025-10-22 08:57:04 +02:00
Khoa Nguyen
21c4bcbecb samples: modules: tflite-micro: Support tflm_ethosu for ek_ra8p1
Add support sample app `tflm_ethosu` for Renesas ek_ra8p1 board

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-10-22 08:56:25 +02:00
Khoa Nguyen
4eefeb34b5 dts: arm: renesas: ra: Add support NPU on Renesas ra8p1 SoC dts
Add support NPU on Renesas ra8p1 SoC dts

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-10-22 08:56:25 +02:00
Khoa Nguyen
f7563b72ee soc: renesas: ra: Select the Ethos-U NPU configuration for RA8P1
Select the Ethos-U NPU configuration for RA8P1

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-10-22 08:56:25 +02:00
Khoa Nguyen
1daa161960 drivers: misc: ethos_u: Add support NPU on Renesas devices
Add support NPU driver on Renesas devices

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-10-22 08:56:25 +02:00
Venkatesh Odela
44b6327fb8 drivers: ethernet: phy: ti_dp83867: Fix warnings
Wrapp the 'done:' label with #if DT_ANY_INST_HAS_PROP_STATUS_OKAY
to avoid unused label warnings when reset_gpios is not defined.

Move declaration of 'val' under the corresponding #if block to limit
its scope and prevent “unused variable” warnings.

Signed-off-by: Venkatesh Odela <venkatesh.odela@amd.com>
2025-10-22 08:56:01 +02:00
Tien Nguyen
5341c88365 driver: flash: Add a macro to define the 32KB block size in spi_nor.h
Add a macro to define the 32KB block size in spi_nor.h

Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
2025-10-22 08:55:53 +02:00
Tien Nguyen
b270174b7e samples: drivers: spi_flash: Add Flash driver for RZ/A3UL, T2M, N2L
Add Flash driver for RZ/A3UL, T2M, N2L

Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
2025-10-22 08:55:53 +02:00
Tien Nguyen
480e539d23 samples: driver: jesd216: Add Flash driver for RZ/A3UL, T2M, N2L
Add Flash driver for RZ/A3UL, T2M, N2L

Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
2025-10-22 08:55:53 +02:00
Tien Nguyen
aaaee6f380 tests: driver: flash: Add Flash driver for RZ/A3UL, T2M, N2L
Add Flash driver for RZ/A3UL, T2M, N2L

Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
2025-10-22 08:55:53 +02:00
Tien Nguyen
f01d90bba2 boards: renesas: Add flash support for RZ/A3UL, N2L, T2M
Add flash support for RZ/A3UL, N2L, T2M

Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
2025-10-22 08:55:53 +02:00
Tien Nguyen
a481d4cab9 soc: renesas: Add flash memory regions for RZ/A3UL
Add flash memory regions for RZ/A3UL

Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
2025-10-22 08:55:53 +02:00
Tien Nguyen
61209f6999 dts: renesas: Add flash support for RZ/A3UL, N2L, T2M
Add SPIBSC node for RZ/A3UL
Add XSPI node for RZ/T2M, N2L

Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
2025-10-22 08:55:53 +02:00
Tien Nguyen
8359c4dbd9 driver: flash: initial support for Renesas RZ/A3UL, T2M, N2L
This driver is based on the XSPI driver for Renesas RZ/T2M and N2L,
and the SPIBSC driver for Renesas RZ/A3UL from the HAL.

Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
2025-10-22 08:55:53 +02:00
Tien Nguyen
6a3a76f809 hal: renesas: manifest: Update commit id for hal_renesas
Update commit id for hal_renesas to support Flash driver
for Renesas RZ/A, T, N series

Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
2025-10-22 08:55:53 +02:00
Henrik Grunmach
dbc16f4e46 dts: soc: nxp lpc55xxx: Add SWO support
Add ITM to common device tree and set the correct clock config
when using SWO as a logging backend

Signed-off-by: Henrik Grunmach <henrik.grunmach@rohde-schwarz.com>
2025-10-22 08:55:31 +02:00
Camille BAUD
3c224b4cbe boards: Add DMA to supported for bflb boards
Adds the dma to supported for testing

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-10-22 08:55:21 +02:00
Camille BAUD
b3d88c751a drivers: clock_control: Update clock control to support new peripherals
Guarantees De-gating the peripherals.

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-10-22 08:55:21 +02:00
Camille BAUD
5eb694e68a drivers: dma: Introduce BFLB DMA driver
Introduce BFLB's DMA.

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-10-22 08:55:21 +02:00
Camille BAUD
520ea0fa9a dts: bflb: Add DMA node for BFLB SoCs
Adds the DMA node

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-10-22 08:55:21 +02:00
Camille BAUD
1bef0eaaa3 west.yml: Update hal_bouffalolab revision
Update hal revision to fix double defines
and missing bl70x dma defines

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-10-22 08:55:21 +02:00
Luis Ubieda
b48e649040 icm4268x: Various driver Improvements for streaming mode
This patch makes the following improvements:
- Helper APIs for simplifying RTIO transfers.
- Simplify RTIO Streaming implementation to reduce processing time.
- Add streaming mode atomic state, in order to track overruning the
callback events generation.
- Add device pointer address to logging on error-occurrences, as it is
useful when the app has multiple instances of the driver (e.g: NXP's
VMU RT1170 has two).

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-10-22 08:52:29 +02:00
Luis Ubieda
f71c0c8898 icm4268x: Do not enable GPIO Interrupts on trigger_init
Wait until the trigger or streaming mode is configured. Otherwise,
rebooting in-between runs may cause multiple callbacks invoked when
the trigger may have not been enabled yet.

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-10-22 08:52:29 +02:00
Luis Ubieda
75ace90a2c icm4268x: Remove padding from Decoder struct
This induces extra-cycles in the encoding path while streaming, which
make it difficult to achieve high-bandidth performance. The use-case
being dealt with involves cranking the IMU at 8000 ODR in batches of
1.25 ms (10 samples at 800 Hz).

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-10-22 08:52:29 +02:00
Luis Ubieda
fa96f07a42 icm4268x: Remove RTIO Workqueue usage in streaming mode
As it introduces latencies due to switching to the threads pool.
Moreover, this is not required for streaming as it executes in a
non-blocking path.

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-10-22 08:52:29 +02:00
Luis Ubieda
9de11f529a icm4268x: Add defensive code to prevent invalid submissions
Missing packets or overrunning/underrunning the queue should not result
in a system crash.

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-10-22 08:52:29 +02:00
Luis Ubieda
2648e0190a icm4268x: Expand Bus RTIO queue
Based on performance observed when cranking the sensor at +1000 Hz ODR,
otherwise is not able to keep up with the pace.

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-10-22 08:52:29 +02:00
Stanley Huang
a78bf4f180 board: Rename raytac_an54l15q_db to raytac_an54lq_db_15
Renamed raytac_an54l15q_db to raytac_an54lq_db_15.

Signed-off-by: Stanley Huang <stanley@raytac.com>
2025-10-22 08:52:18 +02:00
Scott Worley
b61986b2f3 dts: arm: microchip: mec: Add MEC5 HAL based GIRQ information
Microchip MEC SoC's include an interrupt aggregator affecting
the routing of interrupt to the ARM NVIC. IA can not be treated
as a true second level interrupt controller. All interrupt sources
with the exception of GPIOs and eSPI virtual wires can be routed
by IA to individial NVIC inputs. Each bank of GPIOs and VWires
are aggregated into a single NVIC input per bank. For the NVIC
to receive the interrupt signal the respective GIRQ enable must
be set. We attempted to add this informatation by encoding the
DT irq property. This exeperiment failed due to how Zephyr
builds the interrupt tables and MEC IA is not a true second
level interrupt controller. Therefore, drivers for MEC peripherals
need to GIRQ number and bit position to pass to HAL API's or
if a driver is implemented in the linux style without using
the full MEC HAL the GIRQ information is present in DT.

Signed-off-by: Scott Worley <scott.worley@microchip.com>
2025-10-22 08:52:08 +02:00
Titouan Christophe
b677e828d0 drivers: crypto: hash_pkt.in_buf is now constant
Previous commit made the input buffer of the hash packet constant.
Let's therefore adapt typing where used, and remove inappropriate
casts of constant buffers to non-constant ones.

All the "backend" hashing functions already take a constant input,
these changes only affect the "plumbing" between the Zephyr crypto
API and the actual implementation where applicable.

Signed-off-by: Titouan Christophe <titouan.christophe@mind.be>
2025-10-21 22:55:24 +03:00
Titouan Christophe
ebad819d98 crypto: hash: in_buf should be constant
Hashing takes an input buffer, and writes the result in a separate
output buffer. Therefore, the input can be marked as constant, so that
constants can be supplied directly to the hashing context without any
intermediate copy, and without having to perform a type-unsafe cast
from (const uint8_t *) to (uint8_t *)

Signed-off-by: Titouan Christophe <titouan.christophe@mind.be>
2025-10-21 22:55:24 +03:00
Lucien Zhao
c21b6d9e95 boards: nxp: add frdm_mcxe247 board support
- support XIP way to boot
- add board doc and picture
- enable cases below:
    hello_world/blinky/button/
    philosophers/synchronization/
    gpio_basic_api/uart_async_api

Signed-off-by: Lucien Zhao <lucien.zhao@nxp.com>
2025-10-21 22:55:08 +03:00
Lucien Zhao
ae0725bd5c dts: arm: nxp: add mcxe24x device tree
- Use specific_part.dtsi + full_devices.dtsi way to
  desribe all devices

Signed-off-by: Lucien Zhao <lucien.zhao@nxp.com>
2025-10-21 22:55:08 +03:00
Lucien Zhao
057eb6d281 soc: nxp: mcx: add mcxe24x series soc
- create 'mcxe' as family and 'mcxe24x' as series
- add pinctrl_soc.h
- add soc.c/.h to do system initialization
- Support flash boot if CONFIG_MCXE_FLASH_CONFIG==1

Signed-off-by: Lucien Zhao <lucien.zhao@nxp.com>
2025-10-21 22:55:08 +03:00
Lucien Zhao
a044862790 drivers: clock_control: adapt clock driver for mcxe24x series
- add CONFIG_SOC_SERIES_MCXE24X judgment in driver

Signed-off-by: Lucien Zhao <lucien.zhao@nxp.com>
2025-10-21 22:55:08 +03:00
Lucien Zhao
eebdcb7b4b dts: bindings: flash_controller: add nxp,kinetis-ftfc.yaml
- add nxp,kinetis-ftfc.yaml for mcxe24x flash controller

Signed-off-by: Lucien Zhao <lucien.zhao@nxp.com>
2025-10-21 22:55:08 +03:00
Lucien Zhao
b53ba6043a drivers: clock_control: add nxp_mc_cgm clock driver
- add clock_init function to initialize clock sources according
  devicetree settings
- finish basic clock api function

Signed-off-by: Lucien Zhao <lucien.zhao@nxp.com>
2025-10-21 22:55:08 +03:00
John Batch
fd3770d687 drivers: adc: Adding Infineon HPPASS ADC tests
Adding files to allow running the following tests for the Infineon
HPPASS SAR ADC driver on the PSOC C3 family of MCUs:
  * tests/drivers/adc/adc_api
  * tests/drivers/adc/adc_error_case
Modifies the adc_error_cases test to use add a KConfig option
for the valid resolution.

Signed-off-by: John Batch <john.batch@infineon.com>
2025-10-21 22:54:55 +03:00
John Batch
1bb33cde81 drivers: adc: Adding Infineon HPPASS ADC samples
Adding files to allow running the following samples for the
Infineon HPPASS SAR ADC driver on the PSOC C3 family of MCUs:
  * samples/drivers/adc_dt
  * samples/drivers/adc_sequence

Signed-off-by: John Batch <john.batch@infineon.com>
2025-10-21 22:54:55 +03:00
John Batch
75c731cbcc drivers: adc: Infineon HPPASS SAR ADC Driver
Adds HPPASS SAR ADC driver and HPPASS Analog driver files to support
ADC conversion for the PSOC C3 family of MCUs.

Signed-off-by: John Batch <john.batch@infineon.com>
2025-10-21 22:54:55 +03:00
John Batch
3ef1ff3082 dts: infineon: psc3m5 devicetree changes to support HPPASS ADC
* Separates HPPASS and HPPASS SAR ADC in the device tree
 * Makes HPPASS SAR ADC a child of the HPPASS system to reflect hardware
   architecture.
 * Adds binding files for HPPASS SAR ADC driver.

Signed-off-by: John Batch <john.batch@infineon.com>
2025-10-21 22:54:55 +03:00
Daniel Leung
38d49efdac kernel: mem_domain: keep track of threads only if needed
Adds a new kconfig CONFIG_MEM_DOMAIN_HAS_THREAD_LIST so that
only the architectures requiring to keep track of threads in
memory domains will have the necessary list struct inside
the memory domain structs. Saves a few bytes for those arch
not needing this.

Also rename the struct fields to be most descriptive of what
they are.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-10-21 22:54:44 +03:00
Daniel Leung
579225f370 tests: kernel/smp: intel_adsp needs more relaxing NOPs
It has been observed that, during the switching stress test,
the context switching becomes very slow due to enough CPUs
doing RCW transaction on hardware bus (e.g. spin locks).
Since the number of NOPs are the same for all CPUs, they are
simply entering and exiting the relax loop at the same time,
and hitting the bus with RCW transactions at the same time.
Not exactly a deadlock but it slows down the execution
enough to result in the test timing out. The SoC layer has
added an option to offset the number of NOPs per CPU by
adding the CPU to the number of NOPs. So enabling it for
the Intel ADSP boards to workaround the above mentioned
issue. I haven't encountered another slowdown after turning
on this option. So hopefully this lowers the probability of
that happening such that a simple retry can pass the test.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-10-21 22:54:34 +03:00
Daniel Leung
5ec79bf556 soc: intel_adsp/ace: allows more spin relax loop per CPU
This allows adding the CPU ID to the number of NOPs in
the custom arch_spin_relax(). With the same number of NOPs
for all CPUs, it is possible to have them all doing RCW
transactions at the same time over and over again if they
enter and exit the spin relax loop at the same time.
This behavior has been observed when doing lots of context
switching, like in the SMP switching stress test. So adds
a new kconfig to fine tune the relax loop behavior if
needed. The new kconfig allows adding the CPU ID to
the number of NOPs which will add some minimal offsetting
to workaround the above mentioned situation.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-10-21 22:54:34 +03:00
Mathieu Choplain
bccf183531 samples: subsys: usb: testusb: improve usage instructions
Add some content in the testusb sample's README to provide a few more hints
that can be handy for USB newcomers trying to get the sample running along
with testusb.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-10-21 22:54:06 +03:00
Felix Wang
fe247a92c5 tests: drivers: pwm: pwm_loopback: Enable QTMR test.
Provide kconfig conf file to set timing parameters.
Provide overlay file for QTMR channel and pin configuration.

Signed-off-by: Felix Wang <fei.wang_3@nxp.com>
2025-10-21 22:53:53 +03:00
Felix Wang
8ebc2f42bc tests: drivers: pwm: pwm_loopback: test improvement.
Move TEST_PWM_PERIOD and TEST_PWM_PULSE to kconfig
and update macro name with "CONFIG_" prefix.

The default timing parameters may be too big for timer
peripheral, because they have high frequence, can not
generate such slow PWM wave.

To keep compatibility, the default value in kconfig
are consistent with the code.

Signed-off-by: Felix Wang <fei.wang_3@nxp.com>
2025-10-21 22:53:53 +03:00
Felix Wang
190c6dd567 drivers: pwm: Fix qtmr set cycles bug.
The mcux_qtmr_pwm_set_cycles can not set 100% and 0%
duty cycle PWM wave.
Set output compare setting based on pulse_cycles and
period_cycles:
1. If pulse_cycles is 0, generate 0% duty cycle wave.
2. If pulse_cycles equals period_cycles but not 0,
   generate 100% duty cycle wave.
3. Otherwise toggle output when compare value matched.

Signed-off-by: Felix Wang <fei.wang_3@nxp.com>
2025-10-21 22:53:53 +03:00
Felix Wang
8af0f0387f drivers: pwm: enable pwm capture for qtmr driver
Supported mode: single capture, continus capture,
pulse capture, period capture.

Signed-off-by: Felix Wang <fei.wang_3@nxp.com>
2025-10-21 22:53:53 +03:00
Felix Wang
cfd2e10d41 tests: drivers: pwm: pwm_api: enable qtmr test
Add mimxrt1180_evk_mimxrt1189_cm33_qtmr.overlay for test.

Signed-off-by: Felix Wang <fei.wang_3@nxp.com>
2025-10-21 22:53:53 +03:00
Biwen Li
8e97541ce4 drivers: dma: mcux_edma: get irq number for multi level int
Get irq number when multi level intrerrupts is enabled.

Signed-off-by: Biwen Li <biwen.li@nxp.com>
2025-10-21 22:53:41 +03:00
Biwen Li
fa68798528 drivers: dma: mcux_edma: print SADDR, DADDR
- Print SADDR, DADDR for debugging.

Signed-off-by: Biwen Li <biwen.li@nxp.com>
2025-10-21 22:53:32 +03:00
Luis Ubieda
cb8c8d666e tests: sensor: build_all: Add Async API test validation
This covers both Read-Decode and Streaming mode. Since we haven't had
it there have been a few issues (addressed prior to this commit). From
now on, we should maintain this test similar to the others.

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-10-21 22:53:20 +03:00
Luis Ubieda
c1b5cc4c3f tests: sensor: build_all: Add ADXL345 to SPI tests
Additionally, add fifo-watermark property required for Streaming mode.

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-10-21 22:53:20 +03:00
Luis Ubieda
4ca0f189fe sensor: icm45686: Fix build-time failure on I3C mode
Missed while simplifying RTIO bus transfers on #94832.

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-10-21 22:53:20 +03:00
Luis Ubieda
f28b1b74b1 sensor: all: Fix missing result argument on RTIO callbacks
If there's an error/result checked, consider the callback result in
such solution.

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-10-21 22:53:20 +03:00
Nicolas Pitre
8d1da57d57 kernel: mmu: k_mem_page_frame_evict() fix locking typo
... when CONFIG_DEMAND_PAGING_ALLOW_IRQ is set.

Found during code inspection. k_mem_page_frame_evict() is otherwise
rarely used,

Signed-off-by: Nicolas Pitre <npitre@baylibre.com>
2025-10-21 22:53:04 +03:00
Nicolas Pitre
d93561da68 samples: zbus: benchmark: Filter SMP from benchmark_sync test
The benchmark_sync test produces incorrect results on SMP systems due to
a race condition between the producer thread and subscriber threads that
only occurs with parallel execution.

Thread configuration:
- Producer thread: priority 5 (lower priority, runs later)
- Subscriber threads (8): priority 3 (higher priority, runs first)

Expected behavior on uniprocessor:
  1. Producer publishes message
  2. Subscriber immediately preempts producer (priority 3 < 5)
  3. Subscriber processes message, calls atomic_add(&count, 256)
  4. Producer resumes, continues to next message

  Result: All messages counted before producer checks final count.

Race condition on SMP:
  CPU 0 (Producer):              CPU 1-3 (Subscribers):
  -----------------              ----------------------
  Publish msg 1
  k_msgq_put(sub1) ✓
                                 k_msgq_get() → processing
  Publish msg 2
  k_msgq_put(sub2) ✓
                                 k_msgq_get() → processing
  ...continues...
  Publish msg 128 ✓
  atomic_get(&count)             Still processing...
  → Reports incomplete count!    atomic_add() comes later

On SMP, the producer doesn't get preempted since it runs on a different
CPU from the subscribers. It races ahead and checks atomic_get(&count)
while subscriber threads on other CPUs are still processing messages.

Observed results:
- Non-SMP: Bytes sent = 262144, received = 262144 ✓
- SMP: Bytes sent = 262144, received = 260352 ✗ (7 messages lost)

This is a benchmark test design issue, not a zbus bug. The test assumes
subscribers complete before the producer finishes, which doesn't hold on
SMP systems. Filter SMP configurations from this test variant for now.

Signed-off-by: Nicolas Pitre <npitre@baylibre.com>
2025-10-21 22:52:47 +03:00
Nicolas Pitre
43371bc7ee samples: zbus: msg_subscriber: Filter SMP from pool exhaustion tests
The "_too_small" test variants intentionally configure an isolated buffer
pool with only 2 buffers to validate proper error handling when the pool
is exhausted during notification of 16 msg_subscriber observers. These
tests are likely to fail on SMP systems due to a buffer recycling race
condition:

Expected behavior (uniprocessor):
  Publisher Thread:
    1. Allocate buf1 for bar_msg_sub1 ✓
    2. k_fifo_put(sub1_fifo, buf1)
    3. Allocate buf2 for bar_msg_sub2 ✓
    4. k_fifo_put(sub2_fifo, buf2)
    5. Try allocate buf3 for bar_msg_sub3 → FAIL -ENOMEM

  Subscriber threads process messages after notification completes,
  pool exhausts at subscriber #3 as expected.

SMP race condition:
  CPU 0 (Publisher):         CPU 1 (bar_msg_sub1):  CPU 2 (bar_msg_sub2):
  ------------------         ---------------------  ---------------------
  Alloc buf1 ✓
  k_fifo_put(sub1, buf1)
                             k_fifo_get() → buf1
                             zbus_sub_wait_msg()
                             net_buf_unref()
                             → buf1 FREED!
  Alloc buf2 ✓
  (reuses buf1!)
  k_fifo_put(sub2, buf2)
                                                    k_fifo_get() → buf2
                                                    net_buf_unref()
                                                    → buf2 FREED!
  Alloc buf3 ✓
  (reuses buf1 again!)
  ...continues...
  All 16 allocations succeed!

On SMP systems, subscriber threads on other CPUs may consume and free
buffers quickly enough that they are recycled back to the pool before the
publisher's notification loop can exhaust it. The test's assumption that
notification completes before subscribers run does not hold with parallel
execution.

Since this is a test design limitation (not a zbus bug), filter SMP
configurations from these specific test variants rather than attempt to
artificially slow down subscribers or change thread priorities.

Signed-off-by: Nicolas Pitre <npitre@baylibre.com>
2025-10-21 22:52:47 +03:00
Allen Zhang
35c3698448 dts: mcxw23x: Correct the flash0 in common dtsi
According to the RM, erasing must be done per sector. So, the start
address and the size of an erase operation must be a multiple of 8192
bytes. So, the erase-block-size should be 8192 bytes.
Programming can be done per phrase (start address and size a multiple
of 16 bytes). So, write-block-size should be 16 bytes.

Signed-off-by: Allen Zhang <chunfeng.zhang@nxp.com>
2025-10-21 22:52:37 +03:00
Neil Chen
8a11ef30f9 soc: nxp: mcx: update config NUM_IRQS value
Update mcxa NUM_IRQS value according to part number.
Correct mcxn NUM_IRQS value to 156.

Signed-off-by: Neil Chen <cheng.chen_1@nxp.com>
2025-10-21 22:52:11 +03:00
Alessandro Manganaro
6ceeb56d53 drivers: bluetooth: hci: fix a typo in stm32wbax ble hci driver
Typo fix in assert condition used by stm32wbax ble hci driver.

Signed-off-by: Alessandro Manganaro <alessandro.manganaro@st.com>
2025-10-21 22:52:02 +03:00
Robert Lubos
f7e51d7b5c net: sockets: tls: Remove leftover todo comment
Logs were added, but the todo comment about this was overlooked,
remove it.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-10-21 22:51:49 +03:00
Torsten Rasmussen
c6c08e0390 MAINTAINERS: mone Kconfig into maintained
Move Kconfig into maintained state and add tejlmand as maintainer.

Signed-off-by: Torsten Rasmussen <Torsten.Rasmussen@nordicsemi.no>
2025-10-21 22:51:29 +03:00
Eric Ocasio
196a1da504 pmci: mctp: samples: Add support for MCTP over USB.
Adds support for the USB device binding for MCTP. Binding created based on
the DMTF specification for USB Transport Binding. The overall design of
this binding follows the existing UART and I2C+GPIO bindings that already
exist in Zephyr.

Signed-off-by: Eric Ocasio <eric.ocasio@nxp.com>
2025-10-21 12:25:56 -04:00
Clément Laigle
fc2e63048b drivers: sensor: omron 2smpb_02e: add FPU selection
Co-authored-by: Luis Ubieda <luisubiedas@gmail.com>
Signed-off-by: Clément Laigle <c.laigle@catie.fr>
2025-10-21 12:25:45 -04:00
Clément Laigle
3920294751 drivers: sensor: add support for OMRON 2SMPB_02E pressure sensor
Support for the OMRON 2SMPB_02E digital barometric pressure sensor.

Signed-off-by: Clément Laigle <c.laigle@catie.fr>
2025-10-21 12:25:45 -04:00
Neil Chen
df4f70469e boards: frdm_mcxa344: add frdm_mcxa344 board
enable board support for frdm_mcxa344

Signed-off-by: Neil Chen <cheng.chen_1@nxp.com>
2025-10-21 12:25:29 -04:00
Neil Chen
4b3eb6cc69 soc: mcxa344: add SOC support for MCXA344
Add soc MCXA153 for board frdm_mcxa344

Signed-off-by: Neil Chen <cheng.chen_1@nxp.com>
2025-10-21 12:25:29 -04:00
Neil Chen
015c593303 dts: mcxa344: add dts for MCXA344
add dts support for board frdm_mcxa344

Signed-off-by: Neil Chen <cheng.chen_1@nxp.com>
2025-10-21 12:25:29 -04:00
Tahsin Mutlugun
9625f00929 boards: adi: Add MAX32658EVKIT secure and nonsecure boards
Adds MAX32658EVKIT board with secure and nonsecure variants.

Signed-off-by: Tahsin Mutlugun <Tahsin.Mutlugun@analog.com>
2025-10-21 12:25:13 -04:00
Tahsin Mutlugun
a97b2007cf soc: adi: max32: Add support for MAX32658 SoC
MAX32658 is the 1.8V variant of MAX32657. From a software perspective,
both SoCs are functionally equivalent. Reuse the existing MAX32657
backend for MAX32658 to enable support with minimal changes.

Signed-off-by: Tahsin Mutlugun <Tahsin.Mutlugun@analog.com>
2025-10-21 12:25:13 -04:00
Stephan Linz
af2e66ed9a boards: nxp: frdm_mcxa153: add mikrobus labels
Added mikrobus_serial, mikrobus_spi and mikrobus_header node labels
to FRDM-MCXA153 device tree board definition, allowing compatible
shield boards to be used.

Signed-off-by: Stephan Linz <linz@li-pro.net>
2025-10-21 12:25:01 -04:00
Stephan Linz
5fe5eeaea6 boards: nxp: frdm_mcxa153: add arduino labels
Added arduino_i2c, arduino_spi and arduino_header node labels
to FRDM-MCXA153 device tree board definition, allowing compatible
shield boards to be used. Also extend the board YAML file with
related support tags arduino_gpio, arduino_i2c and arduino_spi.

Signed-off-by: Stephan Linz <linz@li-pro.net>
2025-10-21 12:25:01 -04:00
Nicolas Pitre
4c30a9b405 tests: interrupt: Fix nested_irq test for Arm's GIC in Non-Secure state
Change SGI interrupt lines from 14-15 to 6-7 for nested interrupt
testing. SGI 8-15 are unaccessible from Non-Secure state (e.g., when
running with TF-A), causing test failures. SGI 0-2 are reserved for
Zephyr SMP IPIs, so use SGI 6-7 which work in both Secure and
Non-Secure configurations.

Fixes test failure: "isr0 did not execute" assertion at line 184.

Signed-off-by: Nicolas Pitre <npitre@baylibre.com>
2025-10-21 12:24:43 -04:00
Declan Snyder
bc9869851b drivers: eth_nxp_enet: Fix power mode control
The driver should not take the whole interface down and re-initialize on
every low power entry and exit. This is a lot of latency for no real gain
as far as I can tell. We can just do as the reference manual actually says
which is to set the sleep enable bit to put the module to sleep while still
being able to detect magic packets for wake on LAN.

Also, the only platform that this power action was "enabled" for was
kinetis, but that platform does not have any power management enabled in
Zephyr.  Which means this code was never getting called even with all the
PM configs on.  So basically this code is dead code. But it could be useful
for other platform, such as RT, so there's no reason not to remove the
dependency on kinetis and let it be used for any of the platform as long as
PM_DEVICE is enabled (hence the imply).

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-10-21 12:24:16 -04:00
Mohamed Azhar
5d7035ab68 boards: microchip: add PIC32CZ CA80 Curiosity Ultra Dev Board support
Add initial support for the PIC32CZ CA80 Curiosity Ultra Development Board
Product page: https://www.microchip.com/en-us/development-tool/ev51s73a

Signed-off-by: Mohamed Azhar <mohamed.azhar@microchip.com>
2025-10-21 12:24:04 -04:00
Mohamed Azhar
83092a114a soc: microchip: add support for PIC32CZ CA SoC series
Adds initial SoC-level support for the Microchip
PIC32CZ CA80/9x series, including SoC definition files.

Signed-off-by: Mohamed Azhar <mohamed.azhar@microchip.com>
2025-10-21 12:24:04 -04:00
Mohamed Azhar
a9b253dfd2 dts: arm: microchip: add dtsi files for Microchip PIC32CZ CA SoC series
Adds common and SoC-specific .dtsi files for the Microchip
PIC32CZ CA80 CA90 and CA91 family. These files define core
peripherals, address maps, and interrupt controller structure
shared across the PIC32CZ CA80 9x variants.

Signed-off-by: Mohamed Azhar <mohamed.azhar@microchip.com>
2025-10-21 12:24:04 -04:00
Benjamin Santon
e69ae4e5aa drivers: spi: spi_max32: Fix QSPI and half duplex, support hold on CS
Fix QSPI and half duplex
Support hold on CS flag
Create functions to assert and deassert CS

Signed-off-by: Benjamin Santon <benjamin.santon@analog.com>
2025-10-21 12:23:51 -04:00
Tim Pambor
fff32576b6 samples: canopennode: no_storage: disable program download
Boards that use MCUboot to start XIP from external flash default to
CONFIG_CANOPENNODE_PROGRAM_DOWNLOAD=y. However, in the no_storage
sample, dependencies such as CONFIG_FLASH are disabled. This causes
build errors. Work around this by explicitly disabling program download
in the no_storage sample configuration.

Signed-off-by: Tim Pambor <tim.pambor@codewrights.de>
2025-10-21 12:23:06 -04:00
Mathieu Choplain
41513d7813 dts: arm: st: stm32wl: include <mem.h> from series' root DTSI
Include <mem.h> from the series' root DTSI file and remove inclusion of
the file from other levels since it becomes redundant. This avoids the
current situation where the same #include directive is duplicated among
many files, and where the file is sometimes included multiple times when
walking up the inclusion chain up until the root DTSI file.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-10-21 12:22:30 -04:00
Mathieu Choplain
f72b0c7989 dts: arm: st: stm32wba: include <mem.h> from series' root DTSI
Include <mem.h> from the series' root DTSI file and remove inclusion of
the file from other levels since it becomes redundant. This avoids the
current situation where the same #include directive is duplicated among
many files, and where the file is sometimes included multiple times when
walking up the inclusion chain up until the root DTSI file.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-10-21 12:22:30 -04:00
Mathieu Choplain
58331dd596 dts: arm: st: stm32wb: include <mem.h> from series' root DTSI
Include <mem.h> from the series' root DTSI file and remove inclusion of
the file from other levels since it becomes redundant. This avoids the
current situation where the same #include directive is duplicated among
many files, and where the file is sometimes included multiple times when
walking up the inclusion chain up until the root DTSI file.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-10-21 12:22:30 -04:00
Mathieu Choplain
53ed2119f2 dts: arm: st: stm32u5: include <mem.h> from series' root DTSI
Include <mem.h> from the series' root DTSI file and remove inclusion of
the file from other levels since it becomes redundant. This avoids the
current situation where the same #include directive is duplicated among
many files, and where the file is sometimes included multiple times when
walking up the inclusion chain up until the root DTSI file.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-10-21 12:22:30 -04:00
Mathieu Choplain
e7dbaaaed8 dts: arm: st: stm32u3: include <mem.h> from series' root DTSI
Include <mem.h> from the series' root DTSI file and remove inclusion of
the file from other levels since it becomes redundant. This avoids the
current situation where the same #include directive is duplicated among
many files, and where the file is sometimes included multiple times when
walking up the inclusion chain up until the root DTSI file.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-10-21 12:22:30 -04:00
Mathieu Choplain
1b45342af7 dts: arm: st: stm32u0: include <mem.h> from series' root DTSI
Include <mem.h> from the series' root DTSI file and remove inclusion of
the file from other levels since it becomes redundant. This avoids the
current situation where the same #include directive is duplicated among
many files, and where the file is sometimes included multiple times when
walking up the inclusion chain up until the root DTSI file.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-10-21 12:22:30 -04:00
Mathieu Choplain
273d4ef86a dts: arm: st: stm32n6: include <mem.h> from series' root DTSI
Include <mem.h> from the series' root DTSI file and remove inclusion of
the file from other levels since it becomes redundant. This avoids the
current situation where the same #include directive is duplicated among
many files, and where the file is sometimes included multiple times when
walking up the inclusion chain up until the root DTSI file.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-10-21 12:22:30 -04:00
Mathieu Choplain
94219699ba dts: arm: st: stm32l5: include <mem.h> from series' root DTSI
Include <mem.h> from the series' root DTSI file and remove inclusion of
the file from other levels since it becomes redundant. This avoids the
current situation where the same #include directive is duplicated among
many files, and where the file is sometimes included multiple times when
walking up the inclusion chain up until the root DTSI file.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-10-21 12:22:30 -04:00
Mathieu Choplain
5a7c028041 dts: arm: st: stm32l4: include <mem.h> from series' root DTSI
Include <mem.h> from the series' root DTSI file and remove inclusion of
the file from other levels since it becomes redundant. This avoids the
current situation where the same #include directive is duplicated among
many files, and where the file is sometimes included multiple times when
walking up the inclusion chain up until the root DTSI file.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-10-21 12:22:30 -04:00
Mathieu Choplain
0a26950285 dts: arm: st: stm32l1: include <mem.h> from series' root DTSI
Include <mem.h> from the series' root DTSI file and remove inclusion of
the file from other levels since it becomes redundant. This avoids the
current situation where the same #include directive is duplicated among
many files, and where the file is sometimes included multiple times when
walking up the inclusion chain up until the root DTSI file.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-10-21 12:22:30 -04:00
Mathieu Choplain
535c056d3e dts: arm: st: stm32l0: include <mem.h> from series' root DTSI
Include <mem.h> from the series' root DTSI file and remove inclusion of
the file from other levels since it becomes redundant. This avoids the
current situation where the same #include directive is duplicated among
many files, and where the file is sometimes included multiple times when
walking up the inclusion chain up until the root DTSI file.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-10-21 12:22:30 -04:00
Mathieu Choplain
4581596a16 dts: arm: st: stm32h7rs: include <mem.h> from series' root DTSI
Include <mem.h> from the series' root DTSI file and remove inclusion of
the file from other levels since it becomes redundant. This avoids the
current situation where the same #include directive is duplicated among
many files, and where the file is sometimes included multiple times when
walking up the inclusion chain up until the root DTSI file.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-10-21 12:22:30 -04:00
Mathieu Choplain
2a14f656ca dts: arm: st: stm32h7: include <mem.h> from series' root DTSI
Include <mem.h> from the series' root DTSI file and remove inclusion of
the file from other levels since it becomes redundant. This avoids the
current situation where the same #include directive is duplicated among
many files, and where the file is sometimes included multiple times when
walking up the inclusion chain up until the root DTSI file.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-10-21 12:22:30 -04:00
Mathieu Choplain
20136226eb dts: arm: st: stm32h5: include <mem.h> from series' root DTSI
Include <mem.h> from the series' root DTSI file and remove inclusion of
the file from other levels since it becomes redundant. This avoids the
current situation where the same #include directive is duplicated among
many files, and where the file is sometimes included multiple times when
walking up the inclusion chain up until the root DTSI file.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-10-21 12:22:30 -04:00
Mathieu Choplain
4413b3b170 dts: arm: st: stm32g4: include <mem.h> from series' root DTSI
Include <mem.h> from the series' root DTSI file and remove inclusion of
the file from other levels since it becomes redundant. This avoids the
current situation where the same #include directive is duplicated among
many files, and where the file is sometimes included multiple times when
walking up the inclusion chain up until the root DTSI file.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-10-21 12:22:30 -04:00
Mathieu Choplain
817632a8c9 dts: arm: st: stm32g0: include <mem.h> from series' root DTSI
Include <mem.h> from the series' root DTSI file and remove inclusion of
the file from other levels since it becomes redundant. This avoids the
current situation where the same #include directive is duplicated among
many files, and where the file is sometimes included multiple times when
walking up the inclusion chain up until the root DTSI file.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-10-21 12:22:30 -04:00
Mathieu Choplain
a6a5793c87 dts: arm: st: stm32f7: include <mem.h> from series' root DTSI
Include <mem.h> from the series' root DTSI file and remove inclusion of
the file from other levels since it becomes redundant. This avoids the
current situation where the same #include directive is duplicated among
many files, and where the file is sometimes included multiple times when
walking up the inclusion chain up until the root DTSI file.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-10-21 12:22:30 -04:00
Mathieu Choplain
445fe1be66 dts: arm: st: stm32f4: include <mem.h> from series' root DTSI
Include <mem.h> from the series' root DTSI file and remove inclusion of
the file from other levels since it becomes redundant. This avoids the
current situation where the same #include directive is duplicated among
many files, and where the file is sometimes included multiple times when
walking up the inclusion chain up until the root DTSI file.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-10-21 12:22:30 -04:00
Mathieu Choplain
2f983bc9c7 dts: arm: st: stm32f3: include <mem.h> from series' root DTSI
Include <mem.h> from the series' root DTSI file and remove inclusion of
the file from other levels since it becomes redundant. This avoids the
current situation where the same #include directive is duplicated among
many files, and where the file is sometimes included multiple times when
walking up the inclusion chain up until the root DTSI file.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-10-21 12:22:30 -04:00
Mathieu Choplain
0b68eb1d60 dts: arm: st: stm32f2: include <mem.h> from series' root DTSI
Include <mem.h> from the series' root DTSI file and remove inclusion of
the file from other levels since it becomes redundant. This avoids the
current situation where the same #include directive is duplicated among
many files, and where the file is sometimes included multiple times when
walking up the inclusion chain up until the root DTSI file.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-10-21 12:22:30 -04:00
Mathieu Choplain
00d1308013 dts: arm: st: stm32f1: include <mem.h> from series' root DTSI
Include <mem.h> from the series' root DTSI file and remove inclusion of
the file from other levels since it becomes redundant. This avoids the
current situation where the same #include directive is duplicated among
many files, and where the file is sometimes included multiple times when
walking up the inclusion chain up until the root DTSI file.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-10-21 12:22:30 -04:00
Mathieu Choplain
4ae7819b0c dts: arm: st: stm32f0: include <mem.h> from series' root DTSI
Include <mem.h> from the series' root DTSI file and remove inclusion of
the file from other levels since it becomes redundant. This avoids the
current situation where the same #include directive is duplicated among
many files, and where the file is sometimes included multiple times when
walking up the inclusion chain up until the root DTSI file.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-10-21 12:22:30 -04:00
Mathieu Choplain
c0ac2199ee dts: arm: st: stm32c0: include <mem.h> from series' root DTSI
Include <mem.h> from the series' root DTSI file and remove inclusion of
the file from other levels since it becomes redundant.

There is no consistency about which level of the DTSI inclusion hierarchy
the macros from this header start being used, so including it from the root
file ensures they are always visible and available without headache. Today,
there are places where the header is included twice or more at different
DTSI inclusion hierarchy levels because of this ambiguity - this commit
solves the issue once and for all.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-10-21 12:22:30 -04:00
Alberto Escolar Piedras
499aa995f6 net: lib: shell: dns: Fix field precission specifier type
Explicitly cast down the string width to int, as otherwise it is
size_t which may have a bigger size.

Avoids the following build error:

subsys/net/lib/shell/dns.c:496:67: error: field precision specifier
‘.*’ expects argument of type ‘int’, but argument 4 has type ‘size_t’
{aka ‘long unsigned int’}

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-10-21 12:21:37 -04:00
Fin Maaß
43084fe77d doc: samples: drivers: clock_control: fix dts include
fix dts include for doc

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-10-21 17:20:33 +01:00
Tony Han
bbfd206a47 boards: microchip: sama7g5: add DMA to sama7g54-ek dts and yaml files
Add DMA nodes to sama7g54_ek.dts files.
Add DMA to sama7g54_ek.yaml support list.

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-10-21 17:26:20 +03:00
Tony Han
30b4e678ca drivers: dma: sam: implement finite state machine for DMA channel
Add state machine for config/start/stop/resume/suspend for DMA channels.

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-10-21 17:26:20 +03:00
Tony Han
a7f1b709d3 drivers: dma: sam: add DMA channel suspend and resume support
Add support for XDMA channel read write suspend and read write resume.

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-10-21 17:26:20 +03:00
Tony Han
56bc90bd68 drivers: dma: sam: update to support sama7g5 XDMAC peripheral
Update the driver to support sama7g5 XDMAC peripheral.

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-10-21 17:26:20 +03:00
Tony Han
cb8e055a4d drivers: dma: sam: support different num of channels for each instance
As the number of DMA channels could be different between DMA instances,
get the number from "XDMAC Global Type Register" and validate the
channel used.

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-10-21 17:26:20 +03:00
Tony Han
bb69252ccf drivers: dma: sam: update to support multiple DMA instances
This update xdmac driver to support multiple DMA instancess.

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-10-21 17:26:20 +03:00
Tony Han
7715e14efe soc: microchip: sam: update MMU for sama7g5 XDMAC
When the XDMAC is activated in the DT, configure it's register region
with strong ordered, read and write access.

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-10-21 17:26:20 +03:00
Tony Han
0f8698ccbc soc: microchip: sam: enable CACHE_MANAGEMENT for sama7g5 series
Enable cache manamegent for sama7g5 series.

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-10-21 17:26:20 +03:00
Tony Han
fc42cc662f dts: arm: microchip: sama7g5: add DMA Controller (XDMAC) support
Add dma nodes to sama7g5.dtsi file.

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-10-21 17:26:20 +03:00
Tony Han
7df7d8bcf1 boards: microchip: add new board sama7d65 Curiosity Kit
Product URL: https://www.microchip.com/en-us/development-tool/EV63J76A

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-10-21 17:26:09 +03:00
Tony Han
778232cf50 soc: microchip: sam: register clocks for sama7d65
Register sama7d65 clocks in sam_pmc_setup() which will be called by
the PMC driver.

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-10-21 17:26:09 +03:00
Tony Han
be03792d3d include: dt-bindings: sam_pmc: add PMC clocks for SAMA7D65
Add LVDSPLL, MCK3 and MCK5 clock definitions for microchip SAMA7D65.

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-10-21 17:26:09 +03:00
Tony Han
7b08b91f62 soc: microchip: sam: add new SoC sama7d65
Product URL: https://www.microchip.com/en-us/product/SAMA7D65

The files under 'soc/microchip/sam/sama7/' will be used for both
sama7d5 and sama7d65 SoCs after the directory structure for sama7g5
is reorganized.

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-10-21 17:26:09 +03:00
Tony Han
f373992271 dts: microchip: add the DTSI file for sama7d6 SoCs
Add the base DTSI file for Microchip sama7d6 SoCs.

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-10-21 17:26:09 +03:00
Tony Han
d7e355de73 soc: microchip: sam: optimize array size for sama7g5 registered clocks
Replace the array size for sama7g5 registered clocks with macros and
put the macros to soc.h with descriptions.

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-10-21 17:26:09 +03:00
Tony Han
4c6aa7da31 soc: microchip: sam: optimize name for sama7g5 programmable clock
Change the location of the names for programable clocks from the
stack to "static struct clk_programmable" array.

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-10-21 17:26:09 +03:00
Cla Mattia Galliard
630a496096 samples: net: QoS: Add quality of service sample
Add a sample, that shows the power of quality of service in Zephyr.

Signed-off-by: Cla Mattia Galliard <clamattia@gmail.com>
2025-10-21 17:25:56 +03:00
Cla Mattia Galliard
f3b6d77ad4 net: shell: filter: Update table
Adjust table to print newly available information.

Signed-off-by: Cla Mattia Galliard <clamattia@gmail.com>
2025-10-21 17:25:56 +03:00
Cla Mattia Galliard
4e3024b110 net: tc: allow to spread threads by more then 1 priority level
Allow to spread tc threads by more then one priority level and cleanup the
computation of the priority.

Signed-off-by: Cla Mattia Galliard <clamattia@gmail.com>
2025-10-21 17:25:56 +03:00
Cla Mattia Galliard
a4723d4a95 samples: net: pkt_filter: Add priority filters
Add some priority filters to the sample for demonstration purpose.

Signed-off-by: Cla Mattia Galliard <clamattia@gmail.com>
2025-10-21 17:25:56 +03:00
Cla Mattia Galliard
c8461a1aa6 doc: net_pkt_filter: Document priority rules
Add documentation for newly added priority rules.

Signed-off-by: Cla Mattia Galliard <clamattia@gmail.com>
2025-10-21 17:25:56 +03:00
Cla Mattia Galliard
8d38e720a4 net: pkt_filter: Filters to modify priority to incoming packets
To enable quality-of-service (QoS) applications, allow filters to modify
the priority of an incoming packet. This allows that processing can be
done on tc-queue-threads with different priorities.

Signed-off-by: Cla Mattia Galliard <clamattia@gmail.com>
2025-10-21 17:25:56 +03:00
Scott Worley
64ed0f70a1 soc: microchip: mec: Add common ECIA GIRQ and MMCR routines
We added ECIA GIRQ get/set/clear functions avaiable for
all MEC parts. Drivers can make use of these functions
to get, set, and clear GIRQ status and enables for
their peripheral. In cases where code requires 8/16 bit
access to these or other SoC registers we added inline
helpers modeled after Zephyr's 32-bit sys_read/write/test
routines. This commit is part of a long term goal to share
drivers among all the MEC parts.

Signed-off-by: Scott Worley <scott.worley@microchip.com>
2025-10-21 17:25:40 +03:00
Lin Yu-Cheng
fed6a9d9b5 driver: espi: implement espi PM function
1. add cs pin as espi driver wake up reference
2. removed the unnecessary update of the cached date
3. removed the unnecessary busy wait in notify funciton

Signed-off-by: Lin Yu-Cheng <lin_yu_cheng@realtek.com>
2025-10-21 17:25:10 +03:00
Marek Matej
45c9babce6 drivers: flash: esp32: Add asynchronous flash access using work queue
Direct flash access can cause exceptions when performed while the flash
memory is inaccessible or being modified — for example, when code is
executing from PSRAM. To avoid such invalid access, this change introduces
asynchronous flash operations that are executed from a safe runtime context
via a work queue. This ensures all flash accesses occur only when the flash
is valid and accessible.

Signed-off-by: Marek Matej <marek.matej@espressif.com>
2025-10-21 17:24:55 +03:00
Dag Erik Gjørvad
de402cb465 boards: nordic: Add initial support for nRF54LM20A/ns
Add board files for nRF54LM20A/ns.
Update existing nRF54LM20A board files to support this.

Signed-off-by: Dag Erik Gjørvad <dag.erik.gjorvad@nordicsemi.no>
2025-10-21 17:24:11 +03:00
Dag Erik Gjørvad
e151273543 manifest: Update commit id for trusted-firmware-m
Update commit id for trusted-firmware-m
to bring in support for nRF54LM20A/ns.

Signed-off-by: Dag Erik Gjørvad <dag.erik.gjorvad@nordicsemi.no>
2025-10-21 17:24:11 +03:00
Torsten Rasmussen
0371ffda18 samples: pass on board revision in sysbuild/hello_world
Pass on the board revision to remote image build if specified for the
application image board target.

Signed-off-by: Torsten Rasmussen <Torsten.Rasmussen@nordicsemi.no>
2025-10-21 17:24:00 +03:00
Torsten Rasmussen
1d827bc5f8 samples: cleanup sysbuild/hello_world sample
Remove the prompt for REMOTE_BOARD.
REMOTE_BOARD should not be having a prompt or be configurable on command
line.
Instead REMOTE_BOARD should be defined based on the SoC as this will
allow creation of new boards using the same SoC, and thereby be able
to build the sample out-of-the-box for any supported SoC.

This allows us to remove several single line config files.

For SoCs with more than two CPU clusters, such as the nRF54h20, then a
choice is provided to select specific core.

Remove the REMOTE_BOARD restriction, as this sample will build and run
even for single core SoCs, and may be useful for testing other sysbuild
multi-image features even for single cores SoCs.

Signed-off-by: Torsten Rasmussen <Torsten.Rasmussen@nordicsemi.no>
2025-10-21 17:24:00 +03:00
Matheus Marques
816489e321 mgmt: hawkbit: Add options to not confirm or erase at init
Current implementation forces confirmation of current boot image and
second slot erase at hawkbit_init() and it is impossible to communicate
with hawkBit server without running it. This makes impossible to notify
update failures to server (#71750)

Add option HAWKBIT_CONFIRM_IMG_ON_INIT to allow disabling the auto image
confirmation and HAWKBIT_ERASE_SECOND_SLOT_ON_CONFIRM to select if the
second partition slot shall be erased or not.

Disable those to handle of these behaviors on application code.

Signed-off-by: Matheus Marques <code@matheusmbar.com>
2025-10-21 17:23:45 +03:00
Jiafei Pan
bca62b6043 counter: add counter_ticks_to_ns()
Add new API to get nanosecond from counter ticks.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-10-21 17:23:34 +03:00
Hieu Nguyen
08ffc97e2a samples: drivers: spi: Add SPI support for Renesas RZ/V2L, A3UL
Add SPI sample support for Renesas RZ/V2L-SMARC, RZ/A3UL-SMARC

Signed-off-by: Hieu Nguyen <hieu.nguyen.ym@bp.renesas.com>
Signed-off-by: Nhut Nguyen <nhut.nguyen.kc@renesas.com>
2025-10-21 17:23:23 +03:00
Hieu Nguyen
03779aa85a tests: drivers: spi: Add SPI support for Renesas RZ/V2L, A3UL
Add SPI test support for Renesas RZ/V2L-SMARC, RZ/A3UL-SMARC

Signed-off-by: Hieu Nguyen <hieu.nguyen.ym@bp.renesas.com>
Signed-off-by: Nhut Nguyen <nhut.nguyen.kc@renesas.com>
2025-10-21 17:23:23 +03:00
Hieu Nguyen
e49263a51f boards: renesas: Add SPI support for Renesas RZ/V2L, A3UL
Add SPI support for board Renesas RZ/V2L-SMARC, RZ/A3UL-SMARC

Signed-off-by: Hieu Nguyen <hieu.nguyen.ym@bp.renesas.com>
Signed-off-by: Nhut Nguyen <nhut.nguyen.kc@renesas.com>
2025-10-21 17:23:23 +03:00
Hieu Nguyen
6ca258e9cc dts: renesas: Add SPI support for Renesas RZ/V2L, A3UL
Add SPI nodes to Renesas RZ/V2L, A3UL

Signed-off-by: Hieu Nguyen <hieu.nguyen.ym@bp.renesas.com>
Signed-off-by: Nhut Nguyen <nhut.nguyen.kc@renesas.com>
2025-10-21 17:23:23 +03:00
Hieu Nguyen
04018d6433 drivers: spi: Add SPI support for Renesas RZ/V2L, A3UL
Add SPI driver support for Renesas RZ/V2L, A3UL

Signed-off-by: Hieu Nguyen <hieu.nguyen.ym@bp.renesas.com>
Signed-off-by: Nhut Nguyen <nhut.nguyen.kc@renesas.com>
2025-10-21 17:23:23 +03:00
Adam BERLINGER
f97eba57d8 drivers: video: stm32_dcmipp: Initialize ISP only once
This fixes bug where stm32_dcmipp_isp_init is called multiple times.

Signed-off-by: Adam BERLINGER <adam.berlinger@st.com>
2025-10-21 17:23:13 +03:00
Muhammed Asif
6068f062b1 boards: microchip: sam_e54_xpro: Enabled blinky pwm support
Added the pinmuxing as well as the dts node for supporting
blinky on sam_e54_xpro board.

Signed-off-by: Muhammed Asif <muhammed.asif@microchip.com>
2025-10-21 17:23:02 +03:00
Muhammed Asif
8f6b71312f drivers: pwm: microchip: add support for pwm tcc g1 IPs
Add pwm driver using tcc g1 peripheral.
Adds the support for generating pwm output.
Supports both 16-bit and 24bit mode of tcc peripheral

Signed-off-by: Muhammed Asif <muhammed.asif@microchip.com>
2025-10-21 17:23:02 +03:00
Muhammed Asif
3c93b11a74 dts: arm: microchip: add tcc node for pwm peripheral
Adds the dts nodes for pwm driver using tcc peripheral.

Signed-off-by: Muhammed Asif <Muhammed.Asif@microchip.com>
2025-10-21 17:23:02 +03:00
Muhammed Asif
accc980a47 dts: bindings: microchip: add tcc node for pwm peripheral
Adds binding YAMLs for pwm peripheral

Signed-off-by: Muhammed Asif <Muhammed.Asif@microchip.com>
2025-10-21 17:23:02 +03:00
Etienne Carriere
d0c829a482 drivers: video: stm32: test HAL functions return value
Add missing test of some HAL functions return value.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-10-21 17:22:52 +03:00
Etienne Carriere
493993e0a6 drivers: video: stm32: don't mix HAL return value and errno
Clarify HAL return value is of type HAL_StatusTypeDef and not an
int in STM32 DCMI and DCMIPP drivers. For consistency, rename
the variable holding HAL return value from ret to hal_ret.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-10-21 17:22:52 +03:00
Fin Maaß
fc7a01a8b1 boards: litex: move changeable peripherals to board
move changeable peripherals from dtsi to board, as
in litex these can change and might be on
different registers on custom out of tree
boards. So we limit riscv32-litex-vexriscv.dtsi
to just the interrupt controller and the cpu,
which don't change.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-10-21 17:22:40 +03:00
Firas Sammoura
ef49739f06 riscv: pmp: Factor out PMP address reading logic
Refactor the code to read all PMP address CSRs (pmpaddr0 through
pmpaddrN) into a new helper function, `z_riscv_pmp_read_addr`.

This change encapsulates the register reading loop, improving code
organization and potential reusability. The new function includes size
assertions

Signed-off-by: Firas Sammoura <fsammoura@google.com>
2025-10-21 17:22:26 +03:00
Alberto Dalibor Rodda
2b5d0faa53 cmake: mcuboot: Fix build with RAM load and encryption
Fix wrong byproduct name for the unencrypted slot 1 image, avoiding
conflicts with the encrypted image.

Signed-off-by: Alberto Dalibor Rodda <fiabarod@proton.me>
2025-10-21 17:22:16 +03:00
Jukka Rissanen
29dd85aa36 tests: Make sure to use ZVFS_OPEN_SIZE define
As the CONFIG_ZVFS_OPEN_MAX is set to 0 by default, we must
use ZVFS_OPEN_SIZE in the tests.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-10-21 17:22:03 +03:00
Jukka Rissanen
7573a3a699 tests: Remove not needed CONFIG_ZVFS_OPEN_MAX option
Either remove the option from conf file or adjust its value
by using CONFIG_ZVFS_OPEN_ADD_SIZE_NET option because the
max number of socket descriptors is now calculated dynamically
at built time.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-10-21 17:22:03 +03:00
Jukka Rissanen
4b1c6b2882 tests: net: Allow setting CONFIG_ZVFS_OPEN_MAX
Add CONFIG_ZVFS_OPEN_IGNORE_MIN=y so that we can set the
CONFIG_ZVFS_OPEN_MAX without specifying individual sub values.
This is just specific to this test and not something that needs
to be done in other tests.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-10-21 17:22:03 +03:00
Jukka Rissanen
5d1f6d4569 samples: Remove not needed CONFIG_ZVFS_OPEN_MAX option
The number of file/socket descriptors is now determined by
CONFIG_ZVFS_OPEN_ADD_SIZE_* options and the networking side
already sets the minimum values so the CONFIG_ZVFS_OPEN_MAX
option is not needed.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-10-21 17:22:03 +03:00
Jukka Rissanen
0215b0aad1 samples: net: Remove / replace the CONFIG_ZVFS_OPEN_MAX option
Remove unneeded CONFIG_ZVFS_OPEN_MAX config option as it is now
controlled by number of net_context i.e., CONFIG_NET_MAX_CONTEXTS

Some of the samples now use CONFIG_ZVFS_OPEN_ADD_SIZE_NET_SAMPLE
to specify the sample socket needs.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-10-21 17:22:03 +03:00
Jukka Rissanen
1cd1959cfc snippets: wifi: Set default number of sockets to use
Set the minimum number of sockets that are used by the wifi snippets.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-10-21 17:22:03 +03:00
Jukka Rissanen
dbe59a5faf net: sockets: tls: Add ZVFS_OPEN_ADD_SIZE_TLS to count TLS sockets
Make sure that the CONFIG_NET_SOCKETS_TLS_MAX_CONTEXTS will
reflect the number of required file descriptors in the system.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-10-21 17:22:03 +03:00
Jukka Rissanen
bc44a27b26 net: context: Make sure to allocate enough sockets
The number of net_context now determines the minimum amount
of network sockets that are to be allocated.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-10-21 17:22:03 +03:00
Jukka Rissanen
867128011e scripts: compliance: Add ZVFS_OPEN_ADD_SIZE_ to undef whitelist
The ZVFS_OPEN_ADD_SIZE_ is used as a prefix for matching specific
Kconfig option names, i.e. it's not a real option in itself.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-10-21 17:22:03 +03:00
Jukka Rissanen
f39ee91940 samples: net: Allow app to control the amount of sockets used
Create a Kconfig entry that allows the application to control
how many sockets it needs.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-10-21 17:22:03 +03:00
Jukka Rissanen
5d4e4e5018 lib: posix: device_io: Add standard file descriptor sizes
Make sure we always allocate space for stdin, stdout and stderr file
descriptors if Posix device io option is enabled.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-10-21 17:22:03 +03:00
Jukka Rissanen
4e306364bd doc: migration-guide-4.3: Add entry about file descriptor table changes
The file descriptor table size is now controlled by adding together
the values of CONFIG_ZVFS_OPEN_ADD_SIZE_* options.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-10-21 17:22:03 +03:00
Jukka Rissanen
1cfdf7c8d1 lib: Introduce a way to set minimum file descriptors count
Instead of user trying to figure out what is the amount of file /
socket descriptors in the system, let the various subsystems etc.
specify their need using a Kconfig option. The build system will
then add these smaller values together and set a suitable file
descriptor count in the system.

This works the same way as the heap size calculation introduced
in commit 3fbf12487c

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-10-21 17:22:03 +03:00
Mathieu Choplain
f8c0da3444 drivers: usb: udc: stm32: fix FS mode on OTG_FS for STM32F4 series
On most parts of the STM32F4 series, when the OTG_HS controller is used in
FS mode, the ULIP **low-power** clock must also be disabled for proper
operation. This was done properly in an old version of the driver but was
lost as part of refactoring[1].

Re-introduce ULPI low-power clock disable when OTG_HS is used in FS mode.

[1] See commit e31ddec781

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-10-21 17:21:52 +03:00
Aksel Skauge Mellbye
3605c36b31 drivers: entropy: gecko_trng: Ensure bus clock is enabled
Ensure bus clock is enabled before accessing TRNG FIFO on
Series 2 VSE devices.

This is a minimal bugfix to work around an issue where certain
HAL APIs disable the bus clock after accessing the crypto block.
Long term, this driver should be rewritten to properly use
clock control APIs for clock management.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-10-21 17:21:39 +03:00
Tomas Pajurek
145637c04b Debugging: Fix GDB packet parsing for ARM Cortex M
When analyzing Zephyr coredumps from ARM Cortex M, sometimes the GDB
server fails with the error 'binascii.Error: Odd-length string'.
This happens because the GDB packet parsing logic does not correctly
handle the '=' separator in register write packets containing register
identifiers with more than one letter/digit. Fix it by properly
locating the '=' character and slicing the packet string accordingly.

Signed-off-by: Tomas Pajurek <tomas.pajurek@spotflow.io>
2025-10-21 17:21:28 +03:00
Mathieu Choplain
26f5469068 drivers: usb: device: stm32: fix N6 power-up sequence logic
Actually do what the comment says and wait for Vdd33USB to be ready,
instead of waiting for the opposite.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-10-21 17:21:18 +03:00
Mathieu Choplain
f413980cc0 drivers: usb: udc: stm32: fix N6 power-up sequence logic
Actually do what the comment says and wait for Vdd33USB to be ready,
instead of waiting for the opposite.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-10-21 17:21:18 +03:00
Tom Chang
2b1ea37ef2 driver: peci: npcx: prevent sleep during PECI transactions
This commit prevents enter deep sleep mode during PECI transactions
since clocks if PECI will stop.

Signed-off-by: Tom Chang <CHChang19@nuvoton.com>
Signed-off-by: Mulin Chao <mlchao@nuvoton.com>
2025-10-21 17:21:05 +03:00
Jordan Yates
3973aaa282 modem: modem_cellular: comms check result callback
Add a callback for the periodic script result so that applications have
a way of detecting dead links.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-10-21 14:16:49 +03:00
Tim Pambor
91d3d95313 drivers: ethernet: adin1100: add support for hardware reset
Add support for hardware reset via GPIO in the ADIN1100 PHY driver.

The reset pin is configured via device tree using the reset-gpios
property.

Signed-off-by: Tim Pambor <tim.pambor@codewrights.de>
2025-10-21 14:16:38 +03:00
Etienne Carriere
f6db1cb09a drivers: disk: sdmmc_stm32: test HAL init/deinit return values
Add tests of the value returned by initialization and deinitialization
HAL functions.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-10-21 14:16:19 +03:00
Etienne Carriere
4575afa515 drivers: disk: sdmmc_stm32: don't assume HAL return value is an int
Clarify HAL return value is of type HAL_StatusTypeDef and may not
be a int. This change aims preventing one from mixing standard "errno"
int return values and STM32 HAL return value finding misleading
implementation in existing code.

No functional change.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-10-21 14:16:19 +03:00
Etienne Carriere
fc44d0eeb0 drivers: disk: sdmmc_stm32: don't mix HAL return values and error
Ensure STM32 SDMMC driver returns proper errno values and not HAL return
codes.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-10-21 14:16:19 +03:00
Etienne Carriere
f81b1e81ab drivers: eeprom: stm32: test HAL return value
Add missing test of HAL_FLASHEx_DATAEEPROM_Unlock() return value.

By the way, add a error trace message when failing to relock the
EEPROM after we failed to program it.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-10-21 14:16:10 +03:00
Etienne Carriere
e943878418 drivers: eeprom: stm32: don't mix HAL return value and errno
Correct eeprom_stm32_write() to return a valid errno instead
of mixing HAL return values and errno return values.

Clarify HAL return value is of type HAL_StatusTypeDef and not an
int in eeprom_stm32_read().

Remove printing of HAL_FLASHEx_DATAEEPROM_Lock() error code since
not very useful.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-10-21 14:16:10 +03:00
Etienne Carriere
0e39d34998 drivers: flash: stm32: test HAL functions return value
Add missing test of some HAL fnuctions return value.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-10-21 14:15:59 +03:00
Declan Snyder
de2a5caadc boards: mcx_n5xx_evk: Add jlink runner
Add jlink runner arguments for mcxn5xxevk

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-10-21 14:15:42 +03:00
Farsin NASAR V A - I78438
976ac76b27 boards: microchip: sam_e54_xpro: add RESET to supported list
Update sam_e54_xpro.yml to include RESET in the supported
modules list.

Signed-off-by: Farsin NASAR V A - I78438 <Farsin.NASARVA@microchip.com>
2025-10-21 14:15:33 +03:00
farsin NASAR V A
574cff532d drivers: reset: microchip: Add reset driver
Add reset driver for Microchip RSTC G1 IP.

Signed-off-by: farsin NASAR V A <farsin.nasarva@microchip.com>
2025-10-21 14:15:33 +03:00
farsin NASAR V A
e37c115c36 dts: arm: microchip: add RSTC node and binding for G1 IP
Add the device tree node and the binding file for
microchip RSTC G1 IP.

Signed-off-by: farsin NASAR V A <farsin.nasarva@microchip.com>
2025-10-21 14:15:33 +03:00
David Jewsbury
9a3a954b34 tests: drivers: Update AUXPLL test to use frequency Macros
Eliminate the need for magic numbers when
setting AUXPLL_FREQ_OUT

Signed-off-by: David Jewsbury <david.jewsbury@nordicsemi.no>
2025-10-21 14:15:23 +03:00
David Jewsbury
eb605628ae drivers: audio: dmic_nrfx: Update AUXPLL control with frequency macros
Frequencies being for AUXPLL were register assignments and
not actual frequencies.

Signed-off-by: David Jewsbury <david.jewsbury@nordicsemi.no>
2025-10-21 14:15:23 +03:00
David Jewsbury
077021070c drivers: clock_control: Add macros for AUXPLL output frequencies
These represent the outputted frequencies of the AUXPLL of
different settings set in the device tree set using dt-bindings
in nrf-auxpll.h. This is added to remove the need for 'magic numbers'
in drivers and tests.

Signed-off-by: David Jewsbury <david.jewsbury@nordicsemi.no>
2025-10-21 14:15:23 +03:00
Benjamin Cabé
9e7903be3b boards: egis: egis_et171: drop figure from docs
Board image needs not to be manually included in the documentation, as
zephyr:board:: directive takes care of this already.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-10-21 14:15:14 +03:00
Benjamin Cabé
2ff90a48b5 boards: st: nucleo_c092rc: drop figure from docs
Board image needs not to be manually included in the documentation, as
zephyr:board:: directive takes care of this already.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-10-21 14:15:14 +03:00
Benjamin Cabé
7b9d5cb11e boards: infineon: fix full_name for kit_pse84_ev
This should be PSOC Edge E84 Evaluation Kit

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-10-21 14:15:14 +03:00
Benjamin Cabé
9386740c97 boards: amd: fix full_name for versalnet_apu
This should be Versal NET APU Development Board

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-10-21 14:15:14 +03:00
Jérôme Pouiller
fc4d7b25fd editorconfig: Trailing spaces are meaningful in patches
My editor (nvim) started to automatically source .editorconfig.
This new feature broke my git workflow when I edit my staging changes
(yes, I edit patches and they still apply).

It took me a bit of time to understand my editor striped the trailing space
(which are meaningful patches) because of .editorconfig.

Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
2025-10-21 14:14:57 +03:00
Ben Marsh
ce08f16a05 drivers: flash: stm32_{q|o|x}spi: Fix write unprotect logs
The STM32 QSPI, OSPI, and XSPI drivers support sending the ULBPR command
for flash ICs that require unlocking before writing to. This is done
conditionally based on the requires_ulbpr devicetree property.

Previously the driver would always log "Write Un-protected", even if a
write un-protect was not attempted. Fix this so that "Write Un-protected"
is only logged when a write un-protect is attempted and succeeds.

Signed-off-by: Ben Marsh <ben.marsh@helvar.com>
2025-10-21 14:14:48 +03:00
Jeppe Odgaard
46de640492 drivers: sensor: qdec_stm32: check counts/revoultion compile time
Use build assert to check counts_per_revolution DTS value compile time to
prevent runtime failure and also decrease flash usage slightly.

Signed-off-by: Jeppe Odgaard <jeppe.odgaard@prevas.dk>
2025-10-21 14:14:38 +03:00
Nhut Nguyen
9daff84666 drivers: eeprom: fm25xxx: Fix format warning
Use %zu for size_t to avoid build warning with arm64 compiler

Signed-off-by: Nhut Nguyen <nhut.nguyen.kc@renesas.com>
2025-10-21 14:14:28 +03:00
Nhut Nguyen
dd9fec8eac tests: drivers: uart_async_api: Fix format warnings
Use %zu for size_t to avoid build warning with arm64 compiler

Signed-off-by: Nhut Nguyen <nhut.nguyen.kc@renesas.com>
2025-10-21 14:14:28 +03:00
Tony Han
4a2140c81b boards: microchip: sam: add RNG to sama7g54-ek dts and yaml files
Enable TRNG in sama7g54_ek.dts files.
Add entropy for TRNG to sama7g54_ek.yaml support list.
Tested with tests/drivers/entropy/api.

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-10-21 11:43:39 +03:00
Tony Han
1a39f7ff75 soc: microchip: sama7g5: sam: update MMU setting for sama7g5 TRNG
Update TRNG registers with strong ordered, read and write access.

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-10-21 11:43:39 +03:00
Tony Han
cf694d7bf1 dts: microchip: sam: sama7g5: add node for TRNG
Add node TRNG (True Random Number Generator) to sama7g5.dtsi file.

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-10-21 11:43:39 +03:00
Andrew Featherstone
0848fd98c1 dts: bindings: clock: rpi_pico: Update default value to match v2.2.0 SDK
v2.1.1 onwards of the SDK increases the default. Update the binding to
match. See https://github.com/raspberrypi/pico-sdk/pull/2245

Signed-off-by: Andrew Featherstone <andrew.featherstone@gmail.com>
2025-10-21 11:43:28 +03:00
Andrew Featherstone
861f02d90d manifest: hal_rpi_pico: Update to SDK 2.2.0
Update the Raspberry Pi Pico HAL to be based on the latest release of
the upstream SDK (v2.2.0).

SDK v2.2.0 has new include directory structure, so update the relevant
CMakeLists.txt files accordingly.

Signed-off-by: Andrew Featherstone <andrew.featherstone@gmail.com>
2025-10-21 11:43:28 +03:00
Andrew Featherstone
b16b91c091 modules: hal_rpi_pico: Improve sorting of include directories
Sort some entries alphabetically to improve readability and
maintainability. This commit just reorders existing entries and does not
change any include paths.

Signed-off-by: Andrew Featherstone <andrew.featherstone@gmail.com>
2025-10-21 11:43:28 +03:00
Charles Dias
49261a75ab boards: shields: add ST MB1835 shield
Add support for the ST MB1835 2.47-inch round DSI TFT-LCD daughter board
designed for STM32 Discovery kits.

Signed-off-by: Charles Dias <charlesdias.cd@outlook.com>
2025-10-21 11:43:14 +03:00
Immo Birnbaum
08ece7f609 doc: releases: migration guide entry
Added the removal of the 'amba-ahb-dbus-width' devicetree property
from the binding of the Xilinx GEM Ethernet controller driver to the
current migration guide.

Signed-off-by: Immo Birnbaum <mail@birnbaum.immo>
2025-10-21 11:43:03 +03:00
Immo Birnbaum
61c9cbbbf1 drivers: ethernet: xlnx_gem: obtain AMBA AHB bus width from config register
Obtain the value for the AMBA AHB bus width (32 bit/64 bit/128 bit) from
the design_cfg5 register at init-time rather than specifying it in the
respective SoC's DT.

Signed-off-by: Immo Birnbaum <mail@birnbaum.immo>
2025-10-21 11:43:03 +03:00
Immo Birnbaum
cc44834d02 dts: xilinx: zynq7000: zynqmp: remove amba-ahb-dbus-width parameter
Remove the obsolete DT parameter "amba-ahb-dbus-width" from all GEM
controller instance declarations for both the Zynq-7000 and the
ZynqMP.

The value matching the current target SoC is now being read at
run-time from a design configuration register

Signed-off-by: Immo Birnbaum <mail@birnbaum.immo>
2025-10-21 11:43:03 +03:00
Immo Birnbaum
cdc8325307 dts: bindings: remove AMBA AHB bus width parameter from xlnx,gem binding
This parameter no longer needs to be configured at the SoC level in
the declarations of the GEM controller instances (used to require
different values for the Zynq-7000 and the ZynqMP) as the value matching
the current target SoC is now being read at run-time from a design
configuration register.

Signed-off-by: Immo Birnbaum <mail@birnbaum.immo>
2025-10-21 11:43:03 +03:00
Hou Zhiqiang
a73b55d153 samples: ipc: openamp_rsc_table: add imx93evk m33 support
Add openamp_rsc_table support on imx93evk Cortex-M33, communication
with Linux which runs on imx93 Cortex-A55.

Signed-off-by: Hou Zhiqiang <Zhiqiang.Hou@nxp.com>
2025-10-21 11:42:38 +03:00
Hou Zhiqiang
49229d3c2d soc: nxp: imx93: add resource table section for m33
Add .resource_table section to the linker script for the
i.MX93 Cortex-M33.

Signed-off-by: Hou Zhiqiang <Zhiqiang.Hou@nxp.com>
2025-10-21 11:42:38 +03:00
Hou Zhiqiang
998011cec6 dts: arm: imx93: add DT node for MU1
Add device-tree node for MU1 (Message Unit instance 1), which is used
for communication between Cortex-A55 and Cortex-M33.

Signed-off-by: Hou Zhiqiang <Zhiqiang.Hou@nxp.com>
2025-10-21 11:42:38 +03:00
Hou Zhiqiang
2b5d1d857c modules: hal_nxp: correct the MU driver for imx93
The MU1 driver should be used on imx93.

Signed-off-by: Hou Zhiqiang <Zhiqiang.Hou@nxp.com>
2025-10-21 11:42:38 +03:00
Lyle Zhu
99f26b02bd Bluetooth: Classic: HF: Fix invalid query current calls list issue
The current calls list should not be queried if the SLC is not
connected. Or the error `-ENOTCONN` will be returned by function
`hf_query_current_calls()`.

Check the connection status of HF before submitting a delay-able
worker. Only the SLC is established, submit the delay-able worker.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-10-21 11:42:28 +03:00
Lyle Zhu
c8a38806d2 Bluetooth: classic: shell: Add command query_calls for HFP HF
Add the command `query_calls` to query the current calls list.

The received current calls list will be printed in callback
`hf_query_call()`.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-10-21 11:42:28 +03:00
Lyle Zhu
e55bea247b Bluetooth: Classic: HFP_HF: Support users to query current call list
Add the function `bt_hfp_hf_query_list_of_current_calls()` to support
users to query current call list.

Add the callback `bt_hfp_hf_cb::query_call` to notify the received
current calls.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-10-21 11:42:28 +03:00
Arnaud Pouliquen
b18a71cf78 arch: arm: mmu: allow to select the K_MEM_ARM_NORMAL_NC memory type
Allow to configure the MMU for non-cacheable normal memories.
This mode is needed for instance by net samples to access to
to non word-aligned memory.

Signed-off-by: Arnaud Pouliquen <arnaud.pouliquen@foss.st.com>
2025-10-21 11:42:17 +03:00
Arnaud Pouliquen
d65fc29d43 arch: arm: mmu: introduce K_MEM_ARM_NORMAL_NC flag
Add new flag to allow to select normal non-cacheable memory.
This is needed for armV7 to be able to configure non cacheable
memories with "normal" attribute instead of "device" attribute.

Signed-off-by: Arnaud Pouliquen <arnaud.pouliquen@foss.st.com>
2025-10-21 11:42:17 +03:00
Zhaoxiang Jin
ce09e3d3c0 samples: i2s_codec: enable i2s_codec samples for frdm_mcxn236
Enable i2s_codec samples for frdm_mcxn236.
With 'CONFIG_USE_DMIC=n', you can hear the sine wave
from the codec.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-10-21 11:42:06 +03:00
Zhaoxiang Jin
eea88a5e93 boards: frdm_mcxn236: Enable da7212 on frdm_mcxn236
Enable da7212 on frdm_mcxn236

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-10-21 11:42:06 +03:00
Zhaoxiang Jin
96e70b08ef drivers: audio: Add dialog da7212 driver
Add dialog da7212 driver. dialog da7212
datasheet:https://www.farnell.com/datasheets/3962888.pdf

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-10-21 11:42:06 +03:00
farsin NASAR V A
4dd8e2b840 tests: drivers: pinctrl: mchp: added new test project
Added new test case for pinctrl
Added sam_e54 overlay file, testcase.yaml, CMakeLists.txt and prj.conf

Signed-off-by: farsin NASAR V A <farsin.nasarva@microchip.com>
2025-10-21 11:41:52 +03:00
Firas Sammoura
f3c6d7265a tests: riscv: Validate PMP stack protection under MULTITHREADING
The PMP stack guard test was previously limited to the non-multithreaded
(no-mt) configuration.

This commit updates the test implementation to conditionally handle
stack boundary lookup:

1. When CONFIG_MULTITHREADING is enabled, it uses thread-specific stack
   information (e.g., z_interrupt_stacks[_current_cpu->id] for ISR stack
   and k_current_get()->stack_info for the main thread stack).

2. New test configurations (arch.riscv.pmp.mt.*) are added to explicitly
   run the tests with CONFIG_MULTITHREADING=y.

This ensures PMP stack guards are correctly verified in a multi-threaded
environment.

Signed-off-by: Firas Sammoura <fsammoura@google.com>
2025-10-21 11:41:43 +03:00
Julien Racki
9c9d100839 drivers: clock: stm32: Move the MSI init after the LSE init
Moved the MSI init after the LSE init to respect the initialization flow
of the MSI PLL mode that need LSE to be enabled and ready.

Signed-off-by: Julien Racki <julien.racki-ext@st.com>
2025-10-21 11:41:33 +03:00
William Tang
7549d5155b drivers: can: mcux: flexcan: fix loop back error when CAN FD enabled
Fix mcux flexcan driver failed to transfer when both loop back mode
and CAN FD mode are enabled.

Transceiver Delay Compensation feature must be disabled in loopback
mode. For some platforms, both FDCTRL[TDCEN] and ETDC[ETDCEN] can
enable such feature. In this case, SDK API only configure ETDC register
and current driver do not clear ETDC[ETDCEN].

Fix this issue by add ETDC[ETDCEN] configuration according to SDK
macro `FSL_FEATURE_FLEXCAN_HAS_ENHANCED_BIT_TIMING_REG` vaule.

Test this commit on mimxrt1180_evk/mimxrt1189/cm33 and set both CAN FD
mode and loop back mode.

Signed-off-by: William Tang <william.tang@nxp.com>
2025-10-21 11:41:21 +03:00
Siratul Islam
eea0886f51 boards: arm: Update WeAct STM32G431 Core Board
- Add board Image

Signed-off-by: Siratul Islam <sirat4757@gmail.com>
2025-10-21 11:41:11 +03:00
Hao Luo
a1954bad80 soc: ambiq: define itcm_text for apollo5x
Define itcm_text in hal_internal.ld for apollo5x

Signed-off-by: Hao Luo <hluo@ambiq.com>
2025-10-21 11:41:00 +03:00
Aaron Ye
5026d81014 west: update hal_ambiq revision
This commit updates the latest revision of hal_ambiq module.

Signed-off-by: Aaron Ye <aye@ambiq.com>
2025-10-21 11:41:00 +03:00
Jonas Berg
78d7984ba8 boards: shields: Add Adafruit LIS3MDL magnetometer shield
Product photo from https://learn.adafruit.com/assets/86994

Tested with the command mentioned in the index.rst file.

Compile testing of the overlay file is done via the mag_polling
sample.

Signed-off-by: Jonas Berg <jonas.s.t.berg@gmail.com>
2025-10-21 11:40:50 +03:00
Ludvig Jordet
c49e3fe9a2 Bluetooth: Mesh: Test brg duplicate subnets filtering
This adds a babblesim test that checks

* That duplicate net key index pairs are filtered out in the bridged
  subnets list.
* That indexing into the filtered list works as expected (indexing
  happens into the already filtered list, not the full bridging table)

Signed-off-by: Ludvig Jordet <ludvig.jordet@nordicsemi.no>
2025-10-21 11:40:39 +03:00
Ludvig Jordet
cc8ac6bdee Bluetooth: Mesh: Filter duplicates in brg subnets list
This commit adds functionality to filter out duplicate entries in the
Bridged Subnets List message.

This is done by iterating through the part of the table we have already
processed, to check if this is the first time we see a given key pair or
not.

Signed-off-by: Ludvig Jordet <ludvig.jordet@nordicsemi.no>
2025-10-21 11:40:39 +03:00
Benjamin Cabé
ef2141987d drivers: sensor: ti_hdc302x: Fix double-promotion warnings
Change HDC_302X_TEMP_OFFSET_SCALE and HDC_302X_HUMIDITY_OFFSET_SCALE
from float literals to double literals to avoid implicit conversion
warnings when compiling with clang and -Wdouble-promotion flag.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-10-21 11:40:29 +03:00
Tony Han
76b510c5f8 samples: pwm: add sama7g54_ek.overlay file to the blink_pwm sample
The sama7g54-ek has the LEDs those can be driven by GPIO or PWM.

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-10-20 19:19:20 -04:00
Tony Han
2295d332ff boards: microchip: sam: add PWM to sama7g54-ek dts and yaml files
Add PWM and pwmled nodes to sama7g54_ek.dts file.
Add pwm to sama7g54_ek.yaml support list.

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-10-20 19:19:20 -04:00
Tony Han
802fdc4dd3 drivers: pwm: pwm_sam: update to support Soc SAMA7G5
Redefine some macros due to different naming scheme in the header file.
Get the clock rate from the device tree when 'SOC_ATMEL_SAM_MCK_FREQ_HZ'
is not defined.

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-10-20 19:19:20 -04:00
Tony Han
11844cd3cb soc: microchip: sam: update MMU for sama7g5 PWM
When the PWM is activated in the DT, configure it's register region
with strong ordered, read and write access.

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-10-20 19:19:20 -04:00
Tony Han
399ba3d373 dtsi: microchip: sam: add PWM nodes for sama7g5
Add the PWM node to sama7g5.dtsi file.

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-10-20 19:19:20 -04:00
COUSSEMENT Stijn
233a1abe59 drivers: sensor: ti: Add TI temp sensor HDC302x to tests
The HDC302x sensor is added to the i2c tests

Signed-off-by: COUSSEMENT Stijn <stijn.coussement@psicontrol.com>
2025-10-20 19:19:09 -04:00
COUSSEMENT Stijn
523eed2d08 drivers: sensor: ti: Add TI temp sensor HDC302x
The HDC302X sensor driver is added,
you can use this driver to read temperature and humidity.
Also set an offset, upper and lower limits to get warned
when temperature or humidity get out of band.
The sensor is build for ultra low power applications.

Signed-off-by: COUSSEMENT Stijn <stijn.coussement@psicontrol.com>
2025-10-20 19:19:09 -04:00
Johann Fischer
e295a387b9 samples: usb: hid-keyboard: allow to set polling period at runtime
Add an example of how to set the polling period at runtime.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-10-20 19:19:00 -04:00
Johann Fischer
bca0ce0870 usb: device_next: hid: allow to set polling period at runtime
Allow to set input or output report polling period at runtime.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-10-20 19:19:00 -04:00
Johann Fischer
c62575e7bf usb: device_next: fail on initialization if no HID device is registered
Do not register the device when the class instance has already been
initialised. Fail on initialization if no HID device is registered.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-10-20 19:19:00 -04:00
Zhaoxiang Jin
c6033d58e5 drivers: sensor: pmc_tmpsns: Reduce floating-point operations
Reduce floating-point operations in the nxp_pmc_tmpsns.
Provide new calculation method without floating-point operations.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-10-20 19:18:36 -04:00
Zhaoxiang Jin
9c8d93228e samples: enable rt700 die_temp_polling sample
1. The updated regex better matches device names
for various temperature sensors. If a device name
contains hyphens, the new regex can match it.

2. enable rt700 die_temp_polling sample

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-10-20 19:18:36 -04:00
Zhaoxiang Jin
ed66a1bbdb dts: nxp: add pmc-tmpsns to rt7xx dts
1. add pmc-tmpsns to rt7xx dts
2. add pmc-tmpsns to rt700 evk

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-10-20 19:18:36 -04:00
Zhaoxiang Jin
44bc475309 drivers: sensor: Enable NXP pmc tmpsns driver
This commit introduced NXP pmc temperature sensor
(pmc-tmpsns) driver.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-10-20 19:18:36 -04:00
Zhaoxiang Jin
5bbe45c478 modules: hal_nxp: Pull in romapi for RT7xx
Pull in romapi for RT7xx

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-10-20 19:18:36 -04:00
Jeremy Dick
6a8fb9f5f2 drivers: display: st7567: Obey the column offset property
Shift the output to the display by the configured column offset

Signed-off-by: Jeremy Dick <jdick@pivotint.com>
2025-10-20 19:18:27 -04:00
Muhammed Asif
6794ca7142 boards: microchip: add PIC32CX SG61 Curiosity Ultra Evaluation Kit support
Add initial support for the Microchip PIC32CX SG61 Curiosity Pro board

Product page: https://www.microchip.com/en-us/development-tool/ev09h35a

Signed-off-by: Muhammed Asif <muhammed.asif@microchip.com>
2025-10-20 19:18:18 -04:00
Muhammed Asif
abc755f596 soc: microchip: Add support for PIC32CX SG SoC series
Adds initial SoC-level support for the Microchip
PIC32CX SG series, including SoC definition files.

Signed-off-by: Muhammed Asif <muhammed.asif@microchip.com>
2025-10-20 19:18:18 -04:00
Muhammed Asif
03f19824c3 dts: arm: microchip: add dtsi files for Microchip PIC32CX SG SoC series
Adds common and SoC-specific .dtsi files for the Microchip
PIC32CX SG family. These files define core peripherals,
address maps, and interrupt controller structure shared
across the PIC32CX SG variants.

Signed-off-by: Muhammed Asif <muhammed.asif@microchip.com>
2025-10-20 19:18:18 -04:00
Sunil Abraham
ecc9f6ce71 drivers: uart: microchip/g1: add more functionality
Add more functionality in uart driver.
Implement interrupt API.

Signed-off-by: Sunil Abraham <sunil.abraham@microchip.com>
2025-10-20 19:18:03 -04:00
Sunil Abraham
4de1acd007 dts: uart: microchip/g1: add more functionality
Add more functionality in uart driver.
Add bindings for sercom in n and p SOC variants.

Signed-off-by: Sunil Abraham <sunil.abraham@microchip.com>
2025-10-20 19:18:03 -04:00
Logan Saint-Germain
4ff0457c24 samples: sensor: sensor_shell: Added channels count for sensor_shell tests
Use of the `sensor get` help. No channel provided allows the sensor_shell
to iterate through every channels. Getting the last channel gives the last
channel index and therefor the channel count. Provide futur proofing for
new channels.

Signed-off-by: Logan Saint-Germain <l.saintgermain@catie.fr>
2025-10-20 19:17:51 -04:00
Logan Saint-Germain
089ea66914 drivers: sensor: max30101: Enhanced sample_fetch to match datasheet
The max30101 allows to configure time slots in samples acquisition.
It is now supported by adding matrix mapping for the slot/fifo
indexing. When a channel is present multiple times, the resulting
sample from the `sensor_channel_get` is averaging each entry.
Added Die temperature sample acquisition with
`CONFIG_MAX30101_DIS_TEMPERATURE` Kconfig.

Signed-off-by: Logan Saint-Germain <l.saintgermain@catie.fr>
2025-10-20 19:17:51 -04:00
Logan Saint-Germain
52d0ad2c67 drivers: sensor: max30101: Enhanced driver to support triggers
The max30101 sensor driver doesn't support triggers.
Add `.trigger_set` API and corresponding Kconfig and
device tree parameters. Add `SENSOR_CHAN_AMBIENT_LIGHT`
and `SENSOR_TRIG_OVERFLOW`.

Signed-off-by: Logan Saint-Germain <l.saintgermain@catie.fr>
2025-10-20 19:17:51 -04:00
Logan Saint-Germain
8a1371c5d6 drivers: sensor: max30101: Enable support for multiple instance
The max30101 sensor driver doesn't support multiple instance.
Update Kconfig and maxim,max30101.yaml for instance based
configuration. Propagate changes over existing files.

Signed-off-by: Logan Saint-Germain <l.saintgermain@catie.fr>
2025-10-20 19:17:51 -04:00
Andre Heinemans
35396b1a0e drivers: memc_mcux_flexspi: force applying OVRDVAL
Enable this kconfig setting to force using a specific raw value for the
OVRDVAL field in the DLLCR registers.

This option gives more granularity than the 'data-valid-time' field in
the dts. The unit of 'data-valid-time' is nanoseconds while the unit of
OVRDVAL are raw delay cells.

Normally the 'data-valid-time' on any 'nxp,imx-flexspi-device' device
will set the OVRDVAL and OVRDEN fields in the DLLCR register
but works only when the 'rx-clock-source' is configured to '#0 External
input from DQS pad' and the frequency <= 100MHz.

Signed-off-by: Andre Heinemans <andre.heinemans@nxp.com>
2025-10-20 19:17:39 -04:00
Zhaoxiang Jin
43c223ed70 boards/nxp: mcxn: Enable LPUART pin internal pullup resistor
This commit enables MCXN236, MCXN947 LPUART pin internal
pullup resistor. For MCXN947 and MCXN236, during LPUAR
initialization, the RX pin is pulled down internally
and STAT[RAF] is set to one. In this state, attempting
to enter low power mode will trigger LPACK reset and
therefore cannot truly enter low power mode. The correct
setting should be to enable LPUART pin internal pullup
resistor.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-10-20 19:16:58 -04:00
Daniel Leung
3c2ecf79f5 west: update mipi-sys-t to lastest SHA
This updates the SHA for the mipi-sys-t module.
This brings in support for IAR compilers.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-10-20 19:16:27 -04:00
Seppo Takalo
1f996d07b8 modem: cmux: Implement Modem Status Command
Implement Modem Status Command(MSC) and a per DLC flow
control by using it.

Send flow control signals when our input buffer don't fit
full frame anymore.
Stop TX if we have received from controls on MSC.

Signed-off-by: Seppo Takalo <seppo.takalo@nordicsemi.no>
2025-10-20 19:16:10 -04:00
Tahsin Mutlugun
36a3a4c1e0 drivers: pwm: max32: Simplify prescaler calculation
Replace the look-up table used to obtain the prescaler enumeration with
a simple multiplication.

Signed-off-by: Tahsin Mutlugun <Tahsin.Mutlugun@analog.com>
2025-10-20 19:16:00 -04:00
Furkan Akkiz
914e6a1948 drivers: counter: max32: Fix prescaler configuration
The existing formula assumed prescaler enumerations were consecutive,
which led to incorrect values being passed to HAL functions. Update
the code to calculate correct prescaler enumerations.

Signed-off-by: Furkan Akkiz <hasanfurkan.akkiz@analog.com>
2025-10-20 19:16:00 -04:00
Alain Volmat
bc8eb83c36 drivers: dma: stm32: avoid clear flags if hal_override on unexpected irq
In case of using HAL_OVERRIDE, avoid clearing the FIFO ERROR flag
before calling the HAL DMA IrqHandler so that the HAL DMA code
handling can be used.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-10-20 19:15:44 -04:00
Alain Volmat
110c61bfea drivers: dma: stm32: avoid clear TE in case of hal_override
If hal_override is set, avoid reporting an error and clear the
transfer error (TE) bit so that HAL code can properly handle it.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-10-20 19:15:44 -04:00
Anthony Williams
3158211391 sensor: icm45686: Use explicit VLA for fifo encoded data
The size of icm45686_encoded_data fifo_payload is guaranteed
to span the full number of frames read as it was allocated during
icm45686_event_handler() buf_len_required size.

This update suppresses the static analysis warning of
out of bounds memory access at index 1 by explicitly declaring
fifo_payload to be a VLA at the end of icm45686_encoded_data.

Signed-off-by: Anthony Williams <anthony289478@gmail.com>
2025-10-20 19:15:30 -04:00
Anthony Williams
d0d29aa5e2 sensor: icm45686: Swap ASSERT to CHECKIF in fifo decode
Change the __ASSERT on unsupported fifo packet header to
CHECKIF so the user can choose how to handle the invalid
packet.

Signed-off-by: Anthony Williams <anthony289478@gmail.com>
2025-10-20 19:15:30 -04:00
Anthony Williams
2df6c368ba sensor: icm45686: Implement AN-000364 fix for fifo corruption
When operating in streaming mode, a FIFO empty event, which
is caused by host reading the last byte of the last FIFO frame,
can cause FIFO data corruption.

During subsequent reads to the FIFO, the first  frame that arrives
after the empty condition will be corrupted. Once the issue occurs,
the internal state cannot recover and the FIFO must be flushed in
bypass mode to clear the corrupted state.

The current workaround from TDK is to read M-1 frames when M frames
are reported by fifo_count. Since M is fixed by the fifo_watermark
DT parameter, and in cases where fifo_watermark == 1, the watermark
trigger threshold is set to M + 1 frames and M frames are read out
during a watermark threshold event.

Signed-off-by: Anthony Williams <anthony289478@gmail.com>
2025-10-20 19:15:30 -04:00
Anthony Williams
ee63650541 sensor: icm45686: Print unsupported fifo packet on assert
When an unsupported fifo packet triggers an assert, it is
helpful to see the packet as a hex value to help when debugging.

Signed-off-by: Anthony Williams <anthony289478@gmail.com>
2025-10-20 19:15:30 -04:00
Zhaoxiang Jin
18d037f0b1 dts: nxp_mcxnxxx: Fixes 'dma-requests' incorrect value
Fixes incorrect 'dma-requests' value in
dts/arm/nxp/nxp_mcxn23x_common.dtsi and
dts/arm/nxp/nxp_mcxnx4x_common.dtsi. The
'dma-requests' indicates the maximum value of
the DMA request sources (slots) index supported
by DMAMUX rather than the number of request sources.

Fixes: #97389 (which introduced the incorrect values)

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-10-20 19:15:18 -04:00
Zhaoxiang Jin
fcc1b62834 dts: nxp,mcux-edma: Added description for properties
Added description for 'dma-requests' and 'dma-channels' in
dts/bindings/dma/nxp,mcux-edma.yaml.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-10-20 19:15:18 -04:00
Benjamin Cabé
0191b0e921 ci: doc-build: fix the "on:" clause
In commit f3edf52264, I erroneously put
"main" under the existing "tags" entry which is obvisouly wrong, it
should be under "branches". Sorry :|

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-10-20 19:15:02 -04:00
WenBin Zhang
d7c1ec670f samples: zperf: Add STM32 eth_tx_async mode test
enable STM32 etc_tx_async mode for testing in CI

Signed-off-by: WenBin Zhang <freey7955@gmail.com>
2025-10-20 14:23:56 -04:00
WenBin Zhang
9094e026f7 drivers: ethernet: eth_stm32 add tx async mode
Enable TX transmission asynchronous mode to enhance performance

Tested on the nucleo_h743zi board using samples/net/zperf

west build -b nucleo_h743zi/stm32h743xx samples/net/zperf/ --pristine
-- -DCONFIG_NET_CONFIG_MY_IPV4_ADDR=\"192.168.1.199\"

upload cmd:
```
//linux
iperf -s -l 1K -p 5001
iperf -s -l 1K -p 5002 -u

//shell
zperf tcp upload 192.168.1.109 5001 10 1K
zperf udp upload 192.168.1.109 5002 10 1K 300M
```

download cmd:
```
//shell
zperf tcp download 5001 192.168.1.199
zperf ucp download 5002 192.168.1.199

//linux
iperf -l 1K -c 192.168.1.199 -p 5001
iperf -l 1K -c 192.168.1.199 -p 5002 -u
```

before:
udp upload:   73.5Mbps/s
tcp upload:   71.3Mbps/s
udp download: 93.9Mbps/s
tcp download: 70.5Mbps/s

after:
udp upload:   92.2Mbps/s
tcp upload:   78.1Mbps/s
udp download: 93.7Mbps/s
tcp download: 75.2Mbps/s

Signed-off-by: WenBin Zhang <freey7955@gmail.com>
2025-10-20 14:23:56 -04:00
WenBin Zhang
ab093c29c9 drivers: ethernet: eth_stm32 tx_in_sem limit set to 1
tx_int_sem serves solely as a signal indicator and does not require signal
counting. Within eth_stm32_tx, the semaphore is reset each time a packet
is transmitted. Upon receiving the transmission completion signal, the
function exits. Signal counting is unnecessary. Change to a binary
semaphore.

Signed-off-by: WenBin Zhang <freey7955@gmail.com>
2025-10-20 14:23:56 -04:00
Gerard Marull-Paretas
f8a76ef29c samples: drivers: jesd216: add support for SF32LB
Allow obtaining SFDP parameters using SF32LB driver.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2025-10-20 14:23:43 -04:00
Gerard Marull-Paretas
f64e7bcf5a boards: sf32lb52_devkit_lcd: adjust memory and QSPI NOR parameters
So that flash driver can be used (MPI2 works in QSPI mode).

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2025-10-20 14:23:43 -04:00
Gerard Marull-Paretas
f9cca217c3 drivers: flash: sf32lb_mpi_qspi_nor: add initial driver
Initial driver for the SF32LB MPI accessing QSPI NOR flash devices.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2025-10-20 14:23:43 -04:00
Gerard Marull-Paretas
aee81a86f8 soc: sifli: sf32: sf32lb52x: configure flash base address
Take it from the chosen flash node parent (MPI controller) 'nor'
register, which contains the memory mapped address for the NOR flash.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2025-10-20 14:23:43 -04:00
Gerard Marull-Paretas
4f484cd662 scripts: kconfig: kconfigfunctions: add dt_node_reg_addr_by_name_hex
So we can obtain a register address (as hex) given its name.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2025-10-20 14:23:43 -04:00
Gerard Marull-Paretas
ddc5810888 drivers: flash: spi_nor: add SPI_NOR_CMD_BE_32K_4B
Command was missing.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2025-10-20 14:23:43 -04:00
Gerard Marull-Paretas
7e0bbc0421 dts: bindings: mtd: add jedec,qspi-nor
Ideally we should be able to just use jedec,spi-nor (to keep Linux
compatibility), but, QSPI controllers live in a limbo in Zephyr. Adding
this binding won't make things worse than they are.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2025-10-20 14:23:43 -04:00
Gerard Marull-Paretas
a056da260f dts: bindings: memory-controllers: drop sifli,sf32lb-mpi
No longer used.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2025-10-20 14:23:43 -04:00
Gerard Marull-Paretas
1b5689f59c dts: arm: sifli: sf32lb52x: adjust mpi1/2 defaults
Compatible should be set at board level, depending on how MPI IP is used
(e.g. NOR, NAND, PSRAM).

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2025-10-20 14:23:43 -04:00
Gerard Marull-Paretas
30e8449356 dts: bindings: mtd: add sifli,sf32lb-mpi-qspi-nor
Add compatible for SiFli SF32LB MPI operating as QSPI NOR controller.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2025-10-20 14:23:43 -04:00
Benjamin Cabé
5bd42b35fd doc: releases: Intermediate update for new 4.3 boards/samples/drivers
New boards, drivers, samples, and shields since 4.2 went out

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-10-20 14:22:41 -04:00
Mathieu Choplain
dca6b87668 drivers: usb: udc: stm32: handle multi-packet-Data OUT Control transfers
During a Host-to-Device Control transfer, an arbitrary amount of data is
sent from Host to the Device using OUT Data packets. If the total amount of
data to transfer, communicated via the wLength field of the SETUP packet,
exceeds the EP0 MaxPacketSize, several Data packets until all data has been
transfered.

Combined with HAL behavior, the STM32 driver did not handle this situation
properly and always ended reception after a single Data packet was received
regardless of whether or not all data had actually been received from Host.

Modify driver to handle this situation properly by keeping track of how
much data has been received and restarting transfers until we have received
everything the Host promised it would send.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-10-20 14:22:28 -04:00
Mathieu Choplain
2a0a6f5cca drivers: usb: udc: stm32: empty transfer queue when SETUP packet arrives
Drop all existing transfers in control endpoints' queue when a new SETUP
packet is received. Also use the appropriate net_buf API in a nearby place.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-10-20 14:22:28 -04:00
Benjamin Cabé
e389df9754 ci: doc-build: increase timeout for html build
For a reason that escapes me for now, the doc build is not particularly
fast on our hosted runners, and we are starting to hit the 20 minutes
timeout. Increase to 60 minutes to be safe for now.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-10-20 14:22:17 -04:00
Benjamin Cabé
f3edf52264 ci: doc-build: build full docs on push, drop cron
Building the full docs every 3 hours is not really the best approach
given we end up building "for nothing" when things are quiet, and on the
other hand introduce a 3-hours-at-most delay for changes to be reflected
on the public docs after a merge/push.
Therefore, drop cron and do the full build on every push to main.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-10-20 14:22:17 -04:00
Yurii Lozynskyi
790dfb6545 doc: boards: update index.rst
Updated boards/index.rst to reflect corrected links.

Signed-off-by: Yurii Lozynskyi <yurii.lozynskyi@infineon.com>
2025-10-20 14:22:05 -04:00
Etienne Carriere
be62ee205a include: zephyr: arch: add missing stddef.h/stdbool.h in cache.h
Add missing inclusion of stddef.h and stdbool.h to respectively define
size_t and bool types used in some cache.h function declarations.

This change prevents build errors like:

.../include/zephyr/arch/cache.h:105:41: error: unknown type name 'size_t'
  105 | int arch_dcache_flush_range(void *addr, size_t size);
      |                                         ^~~~~~

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-10-20 14:21:33 -04:00
Stoyan Bogdanov
31abf236b4 drivers: gpio: cc23x0: Add power management to GPIO
Add PM support to cc23x0 GPIO driver.

Signed-off-by: Stoyan Bogdanov <sbogdanov@baylibre.com>
2025-10-20 11:35:41 -04:00
Benjamin Cabé
006e174004 boards: nxp: add mikrobus_i2c to lpcxpresso55s69
This was missing despite other mikrobus labels being there. Verified
against LPCXpresso55S69_Board_Schematic_RevA2_dec4.pdf

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-10-20 11:35:26 -04:00
Paul Oberosler
1889a879a2 scripts: west_commands: fix ZEPHYR_BASE env check
detect_version() used os.environ["ZEPHYR_BASE"],
which raises a KeyError when the variable is
absent, preventing the fallback path from running.
Switch to os.environ.get("ZEPHYR_BASE") and use
Path(__file__).resolve() for the fallback so the
path is absolute/canonical.

Signed-off-by: Paul Oberosler <paul.oberosler@raspberrypi.com>
2025-10-20 11:35:06 -04:00
Afonso Oliveira
4f2531cf80 soc: qemu: virt_riscv: refactor interrupt controller selection
Move interrupt controller selection from SOC_FAMILY_QEMU_VIRT_RISCV
to individual SoC configurations.

This follows Zephyr best practices where hardware capabilities should
be selected at the most specific level possible (SoC porting guide).
This enables conditional selection of mutually exclusive interrupt
controllers within the same SoC.

Changes:
- Remove 'select RISCV_HAS_PLIC' from SOC_FAMILY_QEMU_VIRT_RISCV
- Add 'select RISCV_HAS_PLIC' to each individual SoC:
  * SOC_QEMU_VIRT_RISCV32
  * SOC_QEMU_VIRT_RISCV32E
  * SOC_QEMU_VIRT_RISCV64

No functional change - all existing QEMU RISC-V boards continue to
use PLIC as before.

Signed-off-by: Afonso Oliveira <afonsoo@synopsys.com>
2025-10-20 11:34:54 -04:00
Benjamin Cabé
312688d7ea Revert "posix: xsi: streams: deprecate CONFIG_XOPEN_STREAMS"
This reverts commit b762a43738
which was merged without enough time in review.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-10-20 11:28:54 -04:00
Benjamin Cabé
df5e488d59 Revert "doc: release: 4.3: deprecate CONFIG_XOPEN_STREAMS"
This reverts commit 169fd6a4a9
which was merged without enough time in review.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-10-20 11:28:54 -04:00
Nicolas Pitre
d9141b2b9b tests: net: mqtt_sn: Fix format specifier for uint16_t
The msg.len field is of type uint16_t, so the correct format
specifier is %u, not %zu.

Signed-off-by: Nicolas Pitre <npitre@baylibre.com>
2025-10-20 11:28:44 -04:00
Jordan Yates
cc5757cbf0 modem: cmux: debug message on DLCI open/close
Add simple debug messages when a DLCI command opening or closing a
channel is sent.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-10-20 11:28:33 -04:00
Siratul Islam
cee0d2ddd5 boards: xtensa: Add support for WeAct Studio ESP32-S3-MINI
Add board support for WeAct Studio ESP32-S3-MINI, a compact
development board based on ESP32-S3-MINI-1-N4R2.

Features:
- ESP32-S3 dual-core Xtensa LX7 @ 240MHz
- 512KB SRAM, 4MB flash, 2MB PSRAM
- USB Type-C connector for flashing and debugging
- Wi-Fi 802.11b/g/n and Bluetooth 5 LE
- On-board RGB WS2812 LED (GPIO48)
- Boot button (GPIO0)
- 36 programmable GPIOs

Supported peripherals:
- UART, I2C, SPI, I2S
- TWAI (CAN) controller
- RMT, LED PWM (up to 8 channels), MCPWM
- General DMA (5 TX / 5 RX channels)
- Watchdog timers
- SAR ADCs, temperature sensor, touch sensing IOs
- Power management with ULP-RISC-V and ULP-FSM
- Security: secure boot, flash encryption, OTP, crypto accelerators

Signed-off-by: Siratul Islam <sirat4757@gmail.com>
2025-10-20 11:28:21 -04:00
Cristian Bulacu
7503b317a6 modules: openthread: platform: Add support to query for PTR & SRV records
This commit enhances DNS upstream resolver functionality by adding
support to query for PTR and SRV records.

Signed-off-by: Cristian Bulacu <cristian.bulacu@nxp.com>
2025-10-20 11:28:08 -04:00
Mark Wang
5c62e60d6c bluetooth: avdtp: fix the pointer check
should check codec_info_element not *codec_info_element.

Signed-off-by: Mark Wang <yichang.wang@nxp.com>
2025-10-20 11:27:55 -04:00
Pieter De Gendt
aca4027726 scripts: ci: check_compliance: Run Python linter not only on changed files
The linter is super fast, no need to limit to only changed files.

For example if the linter configuration changes, all Python files need to
be validated.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-10-20 11:27:46 -04:00
Benjamin Cabé
cd6b1f5c61 doc: _extensions: add :zephyr:board-catalog: role
This adds a role that can be used to reference the board catalog page,
optionally with filter parameters to pre-filter the list of boards.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-10-20 11:27:35 -04:00
Johann Fischer
4df50a057f boards: remove supported feature 'usb'
Suppoted feature 'usb' is not required or used in any of the USB
samples or tests. The only valid feature for USB is `usbd`, or
`usb_device` for the legacy samples and tests.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-10-20 11:27:05 -04:00
Jamie McCrae
fbdc8b2d7b west.yml: MCUboot synchronization from upstream
Update Zephyr fork of MCUboot to revision:
  b192716c969ad358bb3a1db60c898212f3275c55

Brings following Zephyr relevant fixes:

  - b192716c Revert "loader: Allow to specify slot number in
    version"
  - 5b7bccf9 boot: bootutil: swap_offset: Fix not including
    unprotected TLVs
  - ee9efe01 bootutil: Replace boot_write_enc_key with
    boot_write_enc_keys
  - 80a39c64 bootutil: Replace literal slot indexes with
    identifiers

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-10-20 11:26:56 -04:00
Firas Sammoura
52084a9321 riscv: pmp: Use XLEN-derived PMPCFG_STRIDE for array sizing
Replace `sizeof(unsigned long)` with `PMPCFG_STRIDE` (defined as
`__riscv_xlen / 8`) for dimensioning PMP configuration register arrays
(`pmpcfg_regs`).

The size of PMP configuration registers should be derived directly from
the target architecture's XLEN. Using `sizeof(unsigned long)` can cause
size mismatches, particularly with static analysis tools like SonarQube.
These tools might assume a host-specific size for `unsigned long`,
leading to spurious out-of-bounds access warnings when analyzing code
for different RISCV base architectures (e.g., RV32 vs. RV64).

This change ensures the array sizing is correctly and consistently tied
to the target's register width (XLEN).

Signed-off-by: Firas Sammoura <fsammoura@google.com>
2025-10-20 11:26:43 -04:00
Robert Lubos
22918935c1 tests: net: sockets tls: Add test cases for invalid TLS credentials
Add test cases verifying that invalid credentials are rejected by the
socket when configured on TLS/DTLS socket with TLS_SEC_TAG_LIST socket
option.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-10-20 11:26:26 -04:00
Robert Lubos
139ebb3128 net: sockets: tls: Validate credentials when registering on a socket
So far the TLS/DTLS credentials would only be validated upon first use,
i. e. when TLS/DTLS handshake was initiated. This could lead to some
confusion, especially when trying to understand the reason of the
handshake failure, as it wasn't clear whether the handshake failed due
to peer sending bad certificate or due to local configuration issues.

This commit attempts to improve this, by pre-validating the credentials
as soon as they are configured on a socket with TLS_SEC_TAG_LIST socket
option. That way, in case bad credentials are configured on a socket, or
more commonly, mbed TLS is misconfigured to handle certain credential
type, it will be caught early during socket configuration, instead of
during the handshake.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-10-20 11:26:26 -04:00
Valerio Setti
fe1ff7f973 doc: migration-guide: add note for changes in UpdateHub
Add a note about the removal of legacy Mbed TLS crypto support from
UpdateHub.

Signed-off-by: Valerio Setti <vsetti@baylibre.com>
2025-10-20 11:26:13 -04:00
Valerio Setti
0854d239bf samples: subsys: updatehub: remove PSA overlay and test case
Updatehub now only use PSA Crypto API for crypto support and it
automatically enables Mbed TLS when TF-M is not available in the build,
so there is no need for neither a specific test case for PSA nor
the overlay file.

Signed-off-by: Valerio Setti <vsetti@baylibre.com>
2025-10-20 11:26:13 -04:00
Valerio Setti
db7bafbcdb mgmt: updatehub: simplify code
Following the removal of legacy crypto support the code could be further
simplified so this commit accomplish to this part.

Signed-off-by: Valerio Setti <vsetti@baylibre.com>
2025-10-20 11:26:13 -04:00
Valerio Setti
b2dd3b4ba9 mgmt: updatehub: remove legacy Mbed TLS crypto support
The long-term Zephyr's goal is rely only on PSA Crypto API for crypto
support in Zephyr and at the same time Mbed TLS will remove this support
from the next release.

Therefore this commit removes usage of legacy crypto hash support from
updatehub.

Signed-off-by: Valerio Setti <vsetti@baylibre.com>
2025-10-20 11:26:13 -04:00
Morten Kristensen
f33dff5102 scripts: ci: use vermin 1.7.0
Update workflow to use the new version of Vermin to enrich the Python
minimum version checks in the CI pipelines.

Signed-off-by: Morten Kristensen <me@mortens.dev>
2025-10-20 11:25:55 -04:00
Stanislav Bobokalo
9a5634a1b7 dts: ra8: fix syntax error in r7fa8XXXX.dtsi files
The "status" property was defined after the pllX subnodes
in pll node, which violates the Devicetree Specification
v0.4, section 6.3:

"Nodes may contain property definitions and/or child node
definitions. If both are present, properties shall come
before child nodes."

This caused the Device Tree Compiler error: "Properties
must precede subnodes. Unable to parse input tree"

This commit moves the "status" property to precede all pll subnodes,
fixing the syntax error and ensuring compliance with the Devicetree
Specification.

Signed-off-by: Stanislav Bobokalo <stas.gurland@gmail.com>
2025-10-20 11:25:48 -04:00
Declan Snyder
dac0464b3a include: spi.h: Fix anonymous initialization order
Apparently some compiler may expect the fields initialized in a certain
order when there are anonymous fields in a struct.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-10-20 11:25:23 -04:00
Jesper Puge Nielsen
7387473d9e logging: rtt: Add binary dictionary logging
A previous commit (84163d3) changed the RTT backend from outputting a
binary stream to a hex encoded stream when dictionary logging is
enabled.

This commit adds a Kconfig option to keep the binary format, which is
required for live_log_parser.py, and also for log_parser.py when the
--hex argument is not used.

Signed-off-by: Jesper Puge Nielsen <jpni@demant.com>
2025-10-20 11:24:31 -04:00
Khoa Nguyen
9eb682a4ac boards: renesas: Add support USB on ek_ra8p1 and mck_ra8t2
Add support USB on Renesas ek_ra8p1 and mck_ra8t2 boards

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-10-20 11:24:17 -04:00
Khoa Nguyen
4add0d3222 dts: arm: renesas: ra: Add support USB on Renesas RA8x2 devices
Add support USB on Renesas RA8x2 devices

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-10-20 11:24:17 -04:00
Anas Nashif
ec0e798cd5 doc: releases: update with new release cadence
Update docs to reflect new release cadence proposal of 2 releases a
year.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-10-20 11:23:51 -04:00
Tim Lin
53cfd6e1b2 tests: flash: ite: Add M1K test overlay for it515xx_evb
Add a new overlay for testing the M1K flash controller:

it515xx_m1k.overlay (only supported on it515xx_evb)

Update testcase.yaml to include this overlay with DTC_OVERLAY_FILE
and platform_allow accordingly.

example:
west twister -p it515xx_evb -s drivers.flash.common.it515xx_m1k

Signed-off-by: Tim Lin <tim2.lin@ite.corp-partner.google.com>
2025-10-20 11:23:25 -04:00
Tim Lin
aa795269c6 tests: flash: ite: Move flash0 node to test-specific indirect overlay
Refactor the flash common test setup by moving the flash0 node from
it8xxx2_evb, it82xxx2_evb, and it515xx_evb board DTS files into
dedicated test-specific overlays under
tests/drivers/flash/common/boards:

it8xxx2_indirect.overlay for indirect flash testing

Update testcase.yaml to reference this overlay using DTC_OVERLAY_FILE
and restrict platform availability with platform_allow for the three
supported board: it8xxx2_evb, it82xxx2_evb, and it515xx_evb

example:
west twister -p it8xxx2_evb -s drivers.flash.common.it8xxx2_indirect

Signed-off-by: Tim Lin <tim2.lin@ite.corp-partner.google.com>
2025-10-20 11:23:25 -04:00
Tim Lin
0ea524e0ae drivers: flash: ite: Add ex_op support for flash target and address mode
Extend the IT51XXX M1K flash controller driver to implement the flash
extended operation (ex_op) API. This allows runtime selection of both
the flash device and the addressing mode:

Flash target selection:
- FLASH_IT51XXX_INTERNAL: on-chip SPI eFlash
- FLASH_IT51XXX_EXTERNAL_FSPI_CS0: external SPI flash on FSCE0#
- FLASH_IT51XXX_EXTERNAL_FSPI_CS1: external SPI flash on FSCE1#

Addressing mode selection:
- FLASH_IT51XXX_ADDR_3B: 3-byte (24-bit) addressing mode, supports
  flash devices up to 16MB capacity
- FLASH_IT51XXX_ADDR_4B: 4-byte (32-bit) addressing mode, required
  for devices larger than 16MB

Signed-off-by: Tim Lin <tim2.lin@ite.corp-partner.google.com>
2025-10-20 11:23:25 -04:00
Declan Snyder
de6b5dba60 scripts: flash: Add west config for flash skip rebuild
Add a west config option to skip rebuilds by default or not when doing
west flash. Also add corresponding symmetrical CLI options.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-10-20 11:22:52 -04:00
Khoa Tran
f424ac2853 tests: drivers: rtc: Add tests support for RTC driver on Renesas RA
Add tests support for RTC driver on these Renesas RA boards:
- ek_ra8m1
- ek_ra8d1
- ek_ra8p1
- ek_ra4l1

Signed-off-by: Khoa Tran <khoa.tran.yj@bp.renesas.com>
2025-10-20 11:19:13 -04:00
Khoa Tran
180fbf21dc samples: drivers: rtc: Add tests support for rtc driver on Renesas
RA boards

Add samples test support for RTC driver on these Renesas RA boards:
- ek_ra8m1
- ek_ra8d1
- ek_ra8p1
- ek_ra4l1

Signed-off-by: Khoa Tran <khoa.tran.yj@bp.renesas.com>
2025-10-20 11:19:13 -04:00
Khoa Tran
6035038a2e dts: arm: Add rtc device node for Renesas RA family
Add rtc device node to support rtc
driver on Renesas RA SoCs:
- r7fa8d1bhecbd
- r7ka8p1kflcac
- r7fa8m1ahecbd
- r7fa4l1bd4cfp

Signed-off-by: Khoa Tran <khoa.tran.yj@bp.renesas.com>
2025-10-20 11:19:13 -04:00
Khoa Tran
ab8b5764b2 drivers: rtc: Initial driver support for RTC on Renesas RA
Add driver support for RTC on Renesas RA

Signed-off-by: Khoa Tran <khoa.tran.yj@bp.renesas.com>
2025-10-20 11:19:13 -04:00
Khoa Tran
95eafaef9a drivers: clock_control: Add clock control driver for sub-clock on Renesas
RA family

Add clock control driver support for sub-clock Renesas RA family

Signed-off-by: Khoa Tran <khoa.tran.yj@bp.renesas.com>
2025-10-20 11:19:13 -04:00
Khoa Tran
c42fc3aed1 soc: renesas: ra: Add battery backup support for RA8 family
Add support for the battery backup (VBAT) functionality on
Renesas RA8 family. This allows the RTC to retain timekeeping
data when the main power supply is lost by switching to the
VBAT domain automatically. This commit add support for these
SoC series: ra8m1, ra8p1, ra8d1

Signed-off-by: Khoa Tran <khoa.tran.yj@bp.renesas.com>
2025-10-20 11:19:13 -04:00
Khoa Tran
5c64067880 dts: arm: renesas: ra: Add battery backup node for Renesas
RA8 family

Add a battery backup (VBAT) node to the device tree for the Renesas
RA8 family. This enables support for RTC VBAT domain switching when main
power is lost.

Signed-off-by: Khoa Tran <khoa.tran.yj@bp.renesas.com>
2025-10-20 11:19:13 -04:00
Khoa Tran
93b1fe2ee6 dts: bindings: renesas: Add battery backup node bindings for
Renesas RA family

Add dts bindings for the battery backup (VBAT) node used
on the Renesas RA family.

Signed-off-by: Khoa Tran <khoa.tran.yj@bp.renesas.com>
2025-10-20 11:19:13 -04:00
Duy Nguyen
c73ecab2d4 manifest: Update hal_renesas commit ID to support Renesas RA RTC
This commit update the hal_renesas to support Renesas RA RTC

Signed-off-by: Duy Nguyen <duy.nguyen.xa@renesas.com>
2025-10-20 11:19:13 -04:00
Sebastian Bøe
e57676a4f5 soc: nordic: nrf54h: uicr: Improve deps for uicr/zephyr/zephyr.hex
uicr/zephyr/zephyr.hex needs to be built after all other zephyr
images.

Instead of adding a dependency on uicr, we check the sysbuild_images
property to find images.

Also, we check it as late possible by using the cmake_language(DEFER
DIRECTORY feature. Which will ensure that running this code will be
one of the last things that the CMake sysbuild program does at
Configure time.

Signed-off-by: Sebastian Bøe <sebastian.boe@nordicsemi.no>
2025-10-20 12:00:00 +02:00
Ren Chen
b5dddedcf0 dts: bindings: it8xxx2-power-elpm: add latch-enable property
This commit adds `latch-enable` property to power elpm child
node and marks the `polarity` property as required.

Signed-off-by: Ren Chen <Ren.Chen@ite.com.tw>
2025-10-20 11:59:31 +02:00
Ren Chen
0d886da068 soc: it8xxx2: move gpio-q and elpm initial to early preparation hook
Relocate the initialization of the gpio-q group and the elpm
module to early SoC preparation hook. The elpm xlpout signal
is connected to the main power rail and is driven by firmware
after bootup. Initializing these modules early ensures that
the power rail remains stable and does not drop.

Signed-off-by: Ren Chen <Ren.Chen@ite.com.tw>
2025-10-20 11:59:31 +02:00
Robert Lubos
98e0ddecc0 net: lib: sntp: Fix transmit timestamp
Fix the transmit timestamp value sent in SNTP queries:

 * Use sys clock as a time source instead of the uptime,
 * As NTP epoch is different from Unix epoch (starts in 1900), adjust
   the seconds value with appropriate offset,
 * Finally, adjust the fraction calculation to the nanoseconds value
   from struct timespec. Do the math in 64-bit to avoid overflows and do
   the division at the end for more accurate results.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-10-20 11:58:59 +02:00
Cheng Chang
f5dd765e88 bluetooth: shell: a2dp: fix warning when enable sink or source only
add #if defined() to control unused codes.

Signed-off-by: Cheng Chang <cheng.chang@nxp.com>
2025-10-20 11:57:53 +02:00
Andrzej Kuros
e5b1ff11ef modules: hal_nordic: nrf_802154: remove setting of deprecated macro
The macro `NRF_802154_TX_STARTED_NOTIFY_ENABLED` has been removed
from the nRF 802.15.4 Radio Driver.
Setting it in CMakeLists.txt became pointless and is removed.

Signed-off-by: Andrzej Kuros <andrzej.kuros@nordicsemi.no>
2025-10-20 11:57:35 +02:00
Lyle Zhu
cf7ab6985f Bluetooth: Classic: HFP: Fix fixed MTU issue
The MTU of HFP HF or AG is fixed value. It cannot be configured.

Fix the issue to make the MTU of RFCOMM is consistency with the MTU
of L2CAP.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-10-20 11:57:26 +02:00
Gerard Marull-Paretas
a5e8386723 boards: sf32lb52_devkit_lcd: enable watchdog
Enable watchdog node, add alias used in samples and add 'watchdog' to
the supported list (for twister).

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2025-10-20 11:57:13 +02:00
Gerard Marull-Paretas
36849ca15e samples: drivers: watchdog: add support for SF32LB watchdog
So sample can be used by SF32LB based boards.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2025-10-20 11:57:13 +02:00
Quy Tran
f49e20c1bc tests: drivers: uart: Add overlay for uart_async_api test
Add overlay and conf for ek_rx261 and fpb_rx261

Signed-off-by: Quy Tran <quy.tran.pz@renesas.com>
2025-10-20 11:57:03 +02:00
Quy Tran
336abc6a78 drivers: serial: add contition for tx_buf_len check in async api
Add condition checking for uart async api of Renesas RX

Signed-off-by: Quy Tran <quy.tran.pz@renesas.com>
2025-10-20 11:57:03 +02:00
Quy Tran
2b24a923f7 dts: renesas: rx: Add dtc support for RX261 dts
Add dtc support on RX261, and support dtc for uart

Signed-off-by: Quy Tran <quy.tran.pz@renesas.com>
2025-10-20 11:57:03 +02:00
Quy Tran
a34dafd724 soc: renesas: rx: Add dtc support for Renesas RX261
Add dtc support for RX261 and ram section for dtc vector
table

Signed-off-by: Quy Tran <quy.tran.pz@renesas.com>
2025-10-20 11:57:03 +02:00
Siratul Islam
07571d4b35 boards: riscv: Add support for WeAct Studio ESP32-C3-Mini
Add board support for WeAct Studio ESP32-C3-Mini, a compact
development board based on ESP32-C3FH4 with 4MB internal flash.

Features:
- ESP32-C3 RISC-V single-core @ 160MHz
- 400KB RAM, 4MB flash
- USB Serial/JTAG for flashing and debugging
- Wi-Fi 802.11b/g/n and Bluetooth 5 LE
- On-board blue LED (GPIO8)
- Boot button (GPIO9)
- Exposed GPIOs: 0-10, 18-19, 20-21

Supported peripherals:
- USB Serial/JTAG
- I2C (GPIO0, GPIO1)
- SPI (GPIO3-6)
- GPIO
- Watchdog
- TRNG
- Wi-Fi
- Bluetooth

Signed-off-by: Siratul Islam <sirat4757@gmail.com>
2025-10-20 11:56:35 +02:00
Fabio Baltieri
245881ad73 drivers: leds_strip: rename modulino smartleds to pixels
Rename the modulino pixels driver to use the official marketing name,
the "smartleds" one was picked incorrectly from the source code of the
on board mcu of the module itself, but that was clearly out of date.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2025-10-20 11:56:08 +02:00
Benjamin Cabé
3bd604d819 doc: samples: remove manually added links to sample sources
The zephyr:code-sample directive automatically adds a link to the sample
source code on GitHub -- remove all manually added links that are just
redundant and subject to bitrot / copy-paste errors.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-10-20 11:55:55 +02:00
Seppo Takalo
72701683be drivers: modem: cellular: Close down CMUX before shut down
Properly close down the CMUX channel before shutting down
the modem.

The CMUX Close-Down command should indicate the remote end
to clean up, even if we don't have shutdown script or power-key GPIO.

Signed-off-by: Seppo Takalo <seppo.takalo@nordicsemi.no>
2025-10-20 11:55:43 +02:00
Seppo Takalo
a9bc72a22a modem: cmux: Send disconnect event only after responding to CLD
If we immediately send disconnected event when CLD is received,
we might close the UART pipe before the response is actually send.

Also, shutdown_handler should not retry indefinitely.

Signed-off-by: Seppo Takalo <seppo.takalo@nordicsemi.no>
2025-10-20 11:55:43 +02:00
Seppo Takalo
822a501828 modem: cmux: Handle CLD response
Instead of dropping all responses, handle the CLD.

Signed-off-by: Seppo Takalo <seppo.takalo@nordicsemi.no>
2025-10-20 11:55:43 +02:00
Siratul Islam
635f739295 boards: arm: add support for WeAct STM32G030 Core Board
This patch adds support for the WeAct Studio STM32G030 Core Board,
a compact and low-cost development platform based on the STM32G030F6P6
microcontroller.

Main features:
- STM32G030F6P6 MCU (32 KB Flash, 8 KB SRAM)
- User LED
- Exposed SWD header for programming/debugging
- UART1 (PB6/PB7) as default console
- I2C2 (PA11/PA12) and SPI1 (PA1/PA6/PA7) peripheral mapping
- 3.3V or 5V input power options with onboard regulator

The board has been tested with the following Zephyr samples:
- samples/basic/blinky
- samples/hello_world

Signed-off-by: Siratul Islam <sirat4757@gmail.com>
2025-10-20 11:55:29 +02:00
Robert Lubos
524b91972e doc: net: sockets: Document mbed TLS limitation for non-blocking case
mbedtls_ssl_write() function has a limitation, that when the function
returns MBEDTLS_ERR_SSL_WANT_WRITE, the consecutive call to this
function have to contain the same data as the previous call. As there
doesn't seem to be a viable workaround for this at the socket layer
(other than dropping non-blocking support which is not an option), we
need to carry this requirement for non-blocking sockets as well,
therefore document this case in secure sockets documentation.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-10-20 11:55:18 +02:00
Aleksander Wasaznik
27b56955d6 Bluetooth: Host: Invoke tx callbacks when channel is deleted
When bt_l2cap_send_pdu() succeeds, it transfers buffer ownership to the
stack, which must eventually invoke the provided callback. This contract
is honored in all paths where transmission becomes impossible:

- Normal transmission: callback invoked with err=0 after HCI Number of
  Completed Packets event (tx_notify_process)
- Send errors (after tx allocated): callback invoked with err=-ESHUTDOWN
  via conn_tx_destroy
- Send errors (before tx allocated): callback invoked with the specific
  error code in send_buf error_return path
- Connection disconnect: callbacks invoked with err=-ESHUTDOWN via
  process_unack_tx -> conn_tx_destroy for all PDUs in tx_pending

However, when a channel is deleted (l2cap_chan_del), PDUs remaining in
the tx_queue are dropped without invoking their callbacks, violating the
ownership contract.

Fix this by extracting and invoking any non-NULL callbacks from the
closure stored in buf->user_data before releasing the buffers. The
callback is invoked with err=-ESHUTDOWN, making this path analogous to
process_unack_tx: both drain queues of unsent PDUs when transmission
becomes impossible due to external events (channel deletion vs connection
disconnect). The only difference is the buffer lifecycle stage - in
l2cap_chan_del, PDUs are still in tx_queue (closure in buf->user_data),
while in process_unack_tx, they've progressed to tx_pending (callback in
bt_conn_tx struct).

Note: conn_tx_destroy() cannot be used here because no bt_conn_tx struct
has been allocated yet - the closure is still in buf->user_data.

Signed-off-by: Aleksander Wasaznik <aleksander.wasaznik@nordicsemi.no>
2025-10-20 11:54:42 +02:00
Aleksander Wasaznik
70dd38a9b4 Bluetooth: Host: Add documentation for L2CAP tx buffer callbacks
Document the ownership contract and callback semantics for L2CAP
transmission buffers:

- Extend tx_queue documentation in bt_l2cap_le_chan to explain SDU/PDU
  storage, callback handling, and transmission order semantics
- Document bt_l2cap_create_frag responsibilities regarding callback
  invocation after HCI Number of Completed Packets or on disconnect
- Document bt_l2cap_send_pdu callback contract: invoked exactly once
  after transmission completes or with -ESHUTDOWN on disconnect

These documentation additions clarify the requirements for proper
buffer lifecycle management and callback invocation throughout the
L2CAP transmission path.

Signed-off-by: Aleksander Wasaznik <aleksander.wasaznik@nordicsemi.no>
2025-10-20 11:54:42 +02:00
Muhammed Asif
9295c2b6e0 boards: pcbcupid: glyph: Add minimal support for glyph_c6 board
This PR adds support for glyph c6 board based on esp32c6.
Tested using blinky,hello world and button.
Adapted from esp32c6_devkitc

Signed-off-by: Muhammed Asif <asifp3104@gmail.com>
2025-10-20 11:54:30 +02:00
muhammed asif
d912330e95 dts: pcbcupid: Add new vendor name in the vendor prefix
This PR adds the vendor name to the vendor prefix list

Signed-off-by: muhammed asif <asifp3104@gmail.com>
2025-10-20 11:54:30 +02:00
Kenneth Lu
eddacedcc7 boards: rakwireless: Add support for RAK3112
The RAK3112 WisDuo is a low-power, long-range LoRaWAN module
based on the Espressif ESP32-S3

Signed-off-by: Kenneth Lu <kuohsianglu@gmail.com>
2025-10-20 11:52:49 +02:00
Felix Kolbe
689a0277f0 net: coap: Correct parameter constness in func signature
fix(coap_link_format): Correct parameter constness in func signature

For function coap_link_format:coap_well_known_core_get_len()
the request parameter is declared to be a pointer-to-const,
but the const is missing for one of the two function definitions,
that are chosen via CONFIG_COAP_WELL_KNOWN_BLOCK_WISE.

With this fix the code also compiles when enabling
CONFIG_COAP_WELL_KNOWN_BLOCK_WISE.

Signed-off-by: Felix Kolbe <felix.kolbe@gmail.com>
2025-10-20 11:52:39 +02:00
Marcio Ribeiro
1a31b0a513 tests: boards: esp32: add simplified i2s test
Adds simplified i2s test for the following platforms:
- esp32_devkitc/esp32/procpu
- esp32s2_saola

Signed-off-by: Marcio Ribeiro <marcio.ribeiro@espressif.com>
2025-10-20 11:52:31 +02:00
Marcio Ribeiro
7632635026 tests: drivers: i2s_api: add esp32 boards
adds the following boards ot i2s_api test:
- esp32c3_devkitm
- esp32c6_devkitc/esp32c6/hpcore
- esp32s3_devkitc/esp32s3/procpu
- esp32h2_devkitm

Signed-off-by: Marcio Ribeiro <marcio.ribeiro@espressif.com>
2025-10-20 11:52:31 +02:00
Marcio Ribeiro
0c1863461d boards: esp32: rework i2s pin config on dtsi, dts, and overlay files
Reworks i2s entries on esp32 pinctrl.dtsi and .dts board files and
adequates overlay files regarding to i2s samples

Signed-off-by: Marcio Ribeiro <marcio.ribeiro@espressif.com>
2025-10-20 11:52:31 +02:00
Marcio Ribeiro
cde048094e drivers: i2s: esp32: fix driver state management and I2S_DIR_BOTH behavior
Rework to fix state management and I2S_DIR_BOTH behavior across the driver

Signed-off-by: Marcio Ribeiro <marcio.ribeiro@espressif.com>
2025-10-20 11:52:31 +02:00
Marcio Ribeiro
8397c408a9 drivers: i2s: esp32: optimize stream structs and add sanity check
Optimizes i2s_esp32_stream_data and i2s_esp32_stream_conf structs and adds
property sanity check according to soc series based on SOC_GDMA_SUPPORTED
feature

Signed-off-by: Marcio Ribeiro <marcio.ribeiro@espressif.com>
2025-10-20 11:52:31 +02:00
Marcio Ribeiro
ee4da4260a drivers: i2s: esp32: log messages rework
Reworks log messages to avoid timing issues

Signed-off-by: Marcio Ribeiro <marcio.ribeiro@espressif.com>
2025-10-20 11:52:31 +02:00
Marcio Ribeiro
2ef4438fe6 drivers: i2s: esp32: allow deferred processing of an empty tx queue
Allows to defer processing of an empty tx queue when tx_callback is
executed. This prevents error conditions if the tx dma interrupt is
generated too early, as occurs with esp32 and esp32s2.

Signed-off-by: Marcio Ribeiro <marcio.ribeiro@espressif.com>
2025-10-20 11:52:31 +02:00
Marcio Ribeiro
1745582838 drivers: i2s: consistent use of stream state
Reworks i2s_esp32_read() and i2s_esp32_write() to allow consistent use of
stream->data->state

Signed-off-by: Marcio Ribeiro <marcio.ribeiro@espressif.com>
2025-10-20 11:52:31 +02:00
Marcio Ribeiro
2232acf3b0 drivers: i2s: esp32: add missing checks
Adds missing checks regarding mem_slab and data_format during each stream
configuration

Signed-off-by: Marcio Ribeiro <marcio.ribeiro@espressif.com>
2025-10-20 11:52:31 +02:00
Marcio Ribeiro
075cbe67a7 drivers: i2s: esp32: fix redundant pin configuration
Moves the pinctrl_apply_state() call to avoid calling it twice

Signed-off-by: Marcio Ribeiro <marcio.ribeiro@espressif.com>
2025-10-20 11:52:31 +02:00
Marcio Ribeiro
2d19d96b9e drivers: i2s: esp32: fix last block loss
Avoids erroneous memory block freeing when stopping transfers

Signed-off-by: Marcio Ribeiro <marcio.ribeiro@espressif.com>
2025-10-20 11:52:31 +02:00
Chris Friedt
169fd6a4a9 doc: release: 4.3: deprecate CONFIG_XOPEN_STREAMS
Deprecate the CONFIG_XOPEN_STREAMS Kconfig option in favour of
CONFIG_XSI_STREAMS, which matches the naming conventions of other XSI
Kconfig options and the actual Option Group name in the specification.

Please use CONFIG_XSI_STREAMS instead.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-10-19 20:53:48 -04:00
Chris Friedt
b762a43738 posix: xsi: streams: deprecate CONFIG_XOPEN_STREAMS
CONFIG_XOPEN_STREAMS does not follow the pattern of other XSI Option
Groups, where the Option Group name is not the same as the feature
test macro that indicates it is supported by the implementation.

Deprecate CONFIG_XOPEN_STREAMS and rename it to CONFIG_XSI_STREAMS.

For more information, please see
https://pubs.opengroup.org/onlinepubs/9699919799/basedefs/\
V1_chap02.html#tag_02_01_05_09

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-10-19 20:53:48 -04:00
Chris Friedt
2d652e363e doc: migration guide: posix_time.h, posix_signal.h, posix_limits.h
Add notes in the migration guide that users should no longer include
`<zephyr/posix/time.h>` or `<zephyr/posix/signal.h>`, and to include
them in the standard paths, along with `<limits.h>`.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-10-19 20:51:52 -04:00
David Boullie
a040028412 modules: hal_silabs: Add config for SiSDK Protocol Crypto
A Kconfig options for the SiSDK Protocol Crypto library, which provides
accelerated cryptographic primitives using the RADIOAES peripherals for
Series-2 devices.

Signed-off-by: David Boullie <David.Boullie@silabs.com>
2025-10-19 20:51:44 -04:00
The Nguyen
a463cc4b5e tests: drivers: build_all: add renesas_lvd test configurations
Add build test configuration for renesas_lvd on Renesas RA boards
that currently support the comparator driver on LVD.

Signed-off-by: The Nguyen <the.nguyen.yf@renesas.com>
2025-10-19 20:51:30 -04:00
Minh Tang
41de20103b dts: renesas: ra: Add dts node for LVD support
Add dts node for LVD support on RA8 MCUs

Signed-off-by: Minh Tang <minh.tang.ue@bp.renesas.com>
2025-10-19 20:51:30 -04:00
Minh Tang
70a67385d0 drivers: comparator: Add comparator LVD driver support for RA
Add comparator support for RA with LVD module

Signed-off-by: Minh Tang <minh.tang.ue@bp.renesas.com>
2025-10-19 20:51:30 -04:00
The Nguyen
1d1e2022ba manifest: update rev of hal_renesas to latest
Update hal_renesas revision to add r_lvd support

Signed-off-by: The Nguyen <the.nguyen.yf@renesas.com>
2025-10-19 20:51:30 -04:00
Minh Tang
a944ba23b8 soc: renesas: ra: Support NMI Handler for RA8P1 SoC
Add register NMI_Handler for NMI when CONFIG_RUNTIME_NMI is enabled on
RA8P1

Signed-off-by: Minh Tang <minh.tang.ue@bp.renesas.com>
2025-10-19 20:51:30 -04:00
Kurt Eckhardt
eb7e332b1b video: stm32_dcmi: DMA Error recovery
On several boards, such as the Arduino Giga and
Portenta H7, they are often times setup with their
camera buffers and potentially video buffers in
SDRam.  This can lead to a significant number of
DMA errors, which currently stops the camera from
returning any additional frames.

Signed-off-by: Kurt Eckhardt <kurte@rockisland.com>
2025-10-19 20:51:20 -04:00
Kurt Eckhardt
3d11ffd849 video: stm32_dcmi: forward selection
Forward the get_selection and set_selection APIs
to the camera objects, to allow some of the
selections to be supported at the camera level.

Signed-off-by: Kurt Eckhardt <kurte@rockisland.com>
2025-10-19 20:51:20 -04:00
Kurt Eckhardt
0cbfe585df video: gc2145: support for CROP
Implements the set_selection and get_selection APIs,
if forwarded to it by a camera controller.
It uses the new messages
to allow you to set a crop window on top of the
current format window.  It also then allows you
to move this crop window around in the frame
window.

With this driver I also updated it to allow any resolution
from the displays min to max limits.
static const struct video_format_cap fmts[] = {
  GC2145_VIDEO_FORMAT_CAP_HL(128, 1600, 128, 1200,
                              VIDEO_PIX_FMT_RGB565),
GC2145_VIDEO_FORMAT_CAP_HL(128, 1600, 128, 1200,
                              VIDEO_PIX_FMT_YUYV),

When the resolution is set, it computes the scale factor.

Using the set_selection(VIDEO_SEL_TGT_CROP) allows you
define a crop window within the format window.

It clamps the ratio to a max of 3 as some other
drivers limit it saying it helps with frame rates.

Signed-off-by: Kurt Eckhardt <kurte@rockisland.com>
2025-10-19 20:51:20 -04:00
Valerio Setti
4ecb6d3cf7 storage: flash_map: deprecate legacy Mbed TLS crypto
The long-term goal of the Zephyr project is to rely exclusively on PSA
Crypto API for the crypto support. In parallel Mbed TLS is going to remove
legacy crypto support from the next (4.0) release.

Therefore this commit deprecates CONFIG_FLASH_AREA_CHECK_INTEGRITY_MBEDTLS
and it also updates the migration guide document about this change.

Signed-off-by: Valerio Setti <vsetti@baylibre.com>
2025-10-19 20:50:48 -04:00
Ian Wakely
8a72d776c5 shields: Adding Adafruit INA228 Power Monitor.
This adds the shield definition for the Adafruit INA228 Power Monitor.
It connects to boards using the STEMMA-QT interface.

Product photo from https://learn.adafruit.com/assets/125551, with the
license CC BY-SA 3.0

Signed-off-by: Ian Wakely <raveious.irw@gmail.com>
2025-10-18 20:35:25 -04:00
Krzysztof Chruściński
e60fa1e07e tests: drivers: uart: uart_errors: Use runtime PM if enabled
Use PM device runtime API is it is enabled to power up the receiving
UART during the test.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-10-18 20:35:14 -04:00
Vlad Kulikov
20425ec6cc tests: smf: replace raw smf_ctx casts with SMF_CTX() macro
Use SMF_CTX() in SMF unit tests instead of (struct smf_ctx *) casts for
clarity and consistency. No functional change.

Signed-off-by: Vlad Kulikov <vlad_kulikov_c@pm.me>
2025-10-18 20:35:00 -04:00
Chris Friedt
7d95a0fd7b posix: signal.h: include sigev_notify_function field in struct sigevent
Previously, the `sigev_notify_function` field was missing from
`struct sigevent`. Additionally, `sigev_notify_attributes` were
incorrectly named `sigev_thread_attr`.

Add it back to ensure that we are able to support realtime signals.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-10-18 20:33:57 -04:00
Chris Friedt
0fec926941 posix: signal.h: reorder where sigval and siginfo_t are declared
In order to avoid warnings, declare `union sigval` ahead of
`struct sigevent` and declare `siginfo_t` ahead of `struct sigaction`.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-10-18 20:33:57 -04:00
Chris Friedt
c606c3cdff posix: signal.h: sigevent is a struct not a typedef
A previous typo went undetected that declared a type-defined
`sigevent_t`, which is obviously incorrect, since it is only specified as
`struct sigevent`.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-10-18 20:33:57 -04:00
Chris Friedt
d11f05d93c posix: time.h: timepsec is a struct not a typedef
A previous typo went undetected that declared a type-defined
`timespec_t`, which is obviously incorrect, since it is only specified as
`struct timespec`.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-10-18 20:33:57 -04:00
Chris Friedt
9a82d409af posix: signal.h: do not define struct timespec when >= c11
C11 requires `<time.h>` to define `struct timespec`, so do not define
it when C11 is already known.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-10-18 20:33:57 -04:00
Chris Friedt
b069de68d8 posix: signal.h: always pull in time_t definition from libc
Avoid redefining `time_t` by always including the definition from
`<time.h>`, since the C library may use something other than `long`.

This is still safe according to the specification, since it explicitly
states:

> Inclusion of the <signal.h> header may make visible all symbols from
> the <time.h> header.

For more information, please see
https://pubs.opengroup.org/onlinepubs/9699919799/basedefs/signal.h.html

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-10-18 20:33:57 -04:00
Chris Friedt
9f13274c00 libc: indicate timeval is defined
In order to avoid multiple definition errors, indicate that struct
timeval is declared.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-10-18 20:33:57 -04:00
Chris Friedt
192b721732 libc: indicate timespec is defined
In order to avoid multiple definition errors, indicate that struct
timespec is declared.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-10-18 20:33:57 -04:00
Chris Friedt
8017e17ff6 libc: newlib + picolibc: indicate sigevent and sigval are declared
Indicate that C library headers have declared `struct sigevent` and
`struct sigval` to avoid redefinition warnings / errors.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-10-18 20:33:57 -04:00
Qingsong Gou
e3ba8bcb95 MAINTAINERS: add ck-telecom as SF32LB collaborator
Add myself as SF32LB collaborator.

Signed-off-by: Qingsong Gou <gouqs@hotmail.com>
2025-10-18 19:21:21 +02:00
Bill Waters
bd2760aabf boards: infineon: kit_pse84_eval: cmake fix
Fix to the .hex file path.  This was breaking
twister runs.

Signed-off-by: Bill Waters <bill.waters@infineon.com>
2025-10-18 19:21:06 +02:00
Alessandro Manganaro
fd51dde8f5 samples: net: wpan_serial: Excluding nucleo_wba65ri platform
As CONFIG_BUILD_ONLY_NO_BLOBS feature is not implemented for
stm32wbax socs, we have temporarily excluded
nucleo_wba65ri platform from CI build tests.

Issue https://github.com/zephyrproject-rtos/zephyr/issues/95495
will be updated accordingly

Signed-off-by: Alessandro Manganaro <alessandro.manganaro@st.com>
2025-10-17 21:06:54 -04:00
Benjamin Cabé
405d187fa5 ci: doc-build.yml: do not tweak manifest.project-filter unnecessarily
The documentation build shouldn't need to pull in anything beyond what's
active by default in the west.yml manifest. In fact, due to the way the
manifest_projects_table.py script currently works, it is important that
have a local west config that's "vanilla" so that the table of
active/inactive projects is correct.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-10-17 21:06:24 -04:00
Benjamin Cabé
a1c54f5815 doc: css: make sidebar style available globally
The sidebar used for the "wikipedia"-style card in the documentation
pages of board is actually something that is worth reusing elsewhere
so move the corresponding styles from board.css to global custom.css

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-10-17 21:06:24 -04:00
Declan Snyder
3f66f0ba08 drivers: ksz8081: Fix fault on boot in handler thread
Issue was that the gpio interrupt was happening before the work item was
initialized, and then trying to schedule it, resulting null pointer
dereference and fault occurring.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-10-17 21:05:44 -04:00
Declan Snyder
57312acd18 drivers: ksz8081: Remove 100ms busy waits
These busy waits were only introduced during a debugging exercise and
not supposed to have made their way into mainline.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-10-17 21:05:44 -04:00
Stephan Linz
14cdbb9740 spi: stm32: move SPI context init to PM resume
In case of hardware controlled CS pins the SPI context must be
initialized after the clock and pin control have been initialized.
Otherwise, corresponding STM32 LL operations would access a SoC
functional unit that is not yet supplied with a clock and fail
silently without error handling.

Signed-off-by: Stephan Linz <linz@li-pro.net>
2025-10-17 21:05:36 -04:00
Szymon Janc
719fd299ab tests: Bluetooth: Tester: Enable CONFIG_ASAN for native target
This helps in finding issues in code and produces helpfull trace
in case of segmentation fault.

Signed-off-by: Szymon Janc <szymon.janc@codecoup.pl>
2025-10-17 21:04:57 -04:00
Adam BERLINGER
5f1a952291 boards: st: stm32u083c_dk: Add USB support
Adds USB Device support to stm32u083c_dk board

Signed-off-by: Adam BERLINGER <adam.berlinger@st.com>
2025-10-17 21:04:42 -04:00
Adam BERLINGER
f6cd77a7aa dts: arm: st: u0: Add CK48 multiplexer
Adds CK48 mutliplexer for STM32U0 families.

Signed-off-by: Adam BERLINGER <adam.berlinger@st.com>
2025-10-17 21:04:42 -04:00
Adam BERLINGER
987ca0f566 dts: arm: st: u0: Move HSI48 to USB capable STM32U0 family
HSI48 is not available on all families, only on those where USB is present.

Signed-off-by: Adam BERLINGER <adam.berlinger@st.com>
2025-10-17 21:04:42 -04:00
Jonas Berg
f484cc7835 boards: shields: Add Adafruit SHT40 SHT41 and SHT45 humidity shields
Product photo from https://learn.adafruit.com/assets/99220
with the license CC BY-SA 3.0

The bindings file for the sensor does not give any guidance on the
"repeatability" property, so I did choose "high".

Tested with the SHT40 and SHT41 shields (not SHT45).
Compile-testing of the overlay file is done via the dht_polling sample.

Signed-off-by: Jonas Berg <jonas.s.t.berg@gmail.com>
2025-10-17 21:04:29 -04:00
Carles Cufi
f3d22db213 doc: naming: Refine the statement about public APIs and prefixes
Clarify that the rule applies to APIs being introduced to Zephyr, and it
is not necessarily retroactive to apply to existing APIs.

Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
2025-10-17 21:03:51 -04:00
Pisit Sawangvonganan
563af6f596 modbus: serial: use gpio_is_ready_dt() for GPIO readiness check
Simplify code by using gpio_dt_spec pointer-based API

Signed-off-by: Pisit Sawangvonganan <pisit@ndrsolution.com>
2025-10-17 21:03:27 -04:00
Pisit Sawangvonganan
b202835160 modbus: serial: use gpio_pin_set_dt() for de/re pin control
Just simplifies the code by using the `gpio_dt_spec` directly instead.

Signed-off-by: Pisit Sawangvonganan <pisit@ndrsolution.com>
2025-10-17 21:03:27 -04:00
Chaitanya Gaikwad
ee3daf89f6 drivers: wifi: Infineon whd-expansion 1.2.1
Updated CMakeLists.txt to use bins directly with whd-expansion.
Updated Kconfig.airoc to include CYW55513UBG_SM.
Updated west.yml to latest hal_infineon revision.

Signed-off-by: Chaitanya Gaikwad <ChaitanyaSandeep.Gaikwad@infineon.com>
2025-10-17 21:03:03 -04:00
Robert Perkel
228f0a424c tests: drivers: sensor: Added MTCH9010 Tests
Added testsuite to verify MTCH9010 sensor driver

Signed-off-by: Robert Perkel <robert.perkel@microchip.com>
2025-10-17 21:02:44 -04:00
Robert Perkel
1d5ffe5cc5 drivers: sensor: microchip: mtch9010 Added mtch9010 support
Added support for MTCH9010 and applied edits from reviewers.

Signed-off-by: Robert Perkel <robert.perkel@microchip.com>
2025-10-17 21:02:44 -04:00
Riadh Ghaddab
a5f0c965c5 zms: fix init if a faulty bit is detected in the next free location
For devices that need an erase before a write, ZMS do not verify that
the next available location in the open sector is filled with the
erase_value.
Fix this by adding a check at init.

Signed-off-by: Riadh Ghaddab <rghaddab@baylibre.com>
2025-10-17 21:02:20 -04:00
Fabian Barraez
6b8fcaeecf drivers: sensor: add support for ALS31300 3D Hall Effect Sensor
Add driver for Allegro Microsystems ALS31300 3-axis linear Hall Effect
sensor. The driver supports:
- I2C communication interface
- X, Y, Z magnetic field measurements
- Device temperature readings

Signed-off-by: Fabian Barraez <fabianbarraez@gmail.com>
2025-10-17 22:02:28 +03:00
Charles Dias
5bad29fa38 drivers: mipi_dsi: Add STM32U5 support to DSI driver
These changes enhance the driver's compatibility with the STM32U5 series,
enabling its use in applications requiring MIPI.

Signed-off-by: Charles Dias <charlesdias.cd@outlook.com>
2025-10-17 22:02:16 +03:00
Charles Dias
a2d7d64818 dts: arm: stm32u5: add MIPI DSI support for STM32U59x/5Ax series
Add DSI host controller node definition for STM32U59x/5Ax series.

Signed-off-by: Charles Dias <charlesdias.cd@outlook.com>
2025-10-17 22:02:16 +03:00
Charles Dias
9c34b18cff dts: bindings: mipi-dsi: extend STM32 MIPI DSI support
These additions enhance the flexibility of the MIPI DSI host configuration
for STM32U5 series, enabling finer control over the DSI PLL and PHY
settings.

Signed-off-by: Charles Dias <charlesdias.cd@outlook.com>
2025-10-17 22:02:16 +03:00
Aksel Skauge Mellbye
7f670c078e modules: mbedtls: add Kconfig symbol MBEDTLS_PSA_CRYPTO_BUILTIN_KEYS
Add a new Kconfig symbol MBEDTLS_PSA_CRYPTO_BUILTIN_KEYS to wrap the
Mbed TLS configuration option with the same name. Built-in key
support enables platforms implementing
mbedtls_psa_platform_get_builtin_key() to use keys derived from a
hardware unique key or stored in a secure element.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-10-17 22:02:05 +03:00
Flavio Ceolin
31e84adf49 west: tf-a: Bump TF-A to v2.13.0
Bump TF-A to the latest release v2.13.0

Signed-off-by: Flavio Ceolin <flavio@hubble.com>
2025-10-17 22:01:55 +03:00
Alain Volmat
1061b8bc87 samples: video: tcpserversink: add stm32n6570_dk jpeg conf
Add conf / overlay files in order to enable the jpeg encoder
on the stm32n6570_dk.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-10-17 22:01:44 +03:00
Alain Volmat
36805edfb6 boards: stm32n6570_dk: enable the JPEG HW codec
Enable the JPEG HW codec on the stm32n6570_dk board.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-10-17 22:01:44 +03:00
Alain Volmat
9e298077be dts: stm32n6: add jpeg codec node in stm32n6.dtsi
Add the node describing the JPEG HW codec within the stm32n6

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-10-17 22:01:44 +03:00
Alain Volmat
320425847e video: stm32: addition of the STM32 JPEG HW Codec support
Initial version of the support for the STM32 JPEG HW codec,
currently supporting only NV12 to JPEG without DMA support
and using SW based conversion from NV12 to MCU required
for the JPEG codec.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-10-17 22:01:44 +03:00
Alain Volmat
f1c5b806b0 dts-bindings: video: addition of ST JPEG HW codec description
Add description of the ST JPEG HW codec IP node.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-10-17 22:01:44 +03:00
Shreehari HK
371a27c849 drivers: sensor: tdk: icm42x70: update temperature data processing
Update the temperature data processing to
handle different data sizes based on FIFO configuration.
The temperature sensor data size and conversion
formula vary depending on the FIFO mode:
1. FIFO disabled: Uses 20-bit data format
2. FIFO enabled (standard resolution): 16-bit data
3. FIFO enabled (high resolution): 20-bit data

The implementation now:
- Uses the 'fifo_highres_enabled' flag
  to determine the correct data size
- Applies the appropriate conversion formula
  based on the resolution mode
- Handles all three possible FIFO configurations
- Ensures accurate temperature readings in all modes

Signed-off-by: Shreehari HK <shreehari.hk@alifsemi.com>
2025-10-17 22:01:32 +03:00
Mathieu Choplain
02e6169f32 doc: migration_guide: 4.3: add note about CONFIG_CLOCK_STM32_HSE_CLOCK
Document that CONFIG_CLOCK_STM32_HSE_CLOCK is no longer user-configurable
and the replacement mechanism for setting its value (through Device Tree).

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-10-17 22:01:22 +03:00
Mathieu Choplain
ef15c3d9ba drivers: clock_control: stm32: define STM32_HSE_CLOCK based only on DT
Ensure the CONFIG_CLOCK_STM32_HSE_CLOCK symbol cannot be overridden by
making it depend on the Device Tree node "clk_hse" being enabled. The
symbol's value is also directly sourced from that node instead of being
user-configurable.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-10-17 22:01:22 +03:00
Mathieu Choplain
5f1ced737f boards: oct: osd32mp1_brk: provide HSE clock frequency in DTS
Provide the HSE clock frequency by enabling and configuring its Device Tree
node in the board's DTS instead of using Kconfig.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-10-17 22:01:22 +03:00
Mathieu Choplain
7162afe6a3 boards: st: stm32mp157c_dk2: provide HSE clock frequency in DTS
Provide the HSE clock frequency by enabling and configuring its Device Tree
node in the board's DTS instead of using Kconfig.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-10-17 22:01:22 +03:00
Mathieu Choplain
00f7559015 dts: arm: st: mp1: add HSE clock to DTSI
Add the HSE clock to STM32MP1 series DTSI.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-10-17 22:01:22 +03:00
Maureen Helm
14bea5fb2c boards: adi: max32666fthr: Remove sdhc from supported list of features
SDHC support was disabled in commit
e67470933a2005d82bfa3a7f0328196a139b2cc0 due to unresolved runtime
twister failures observed after rebasing adi-main to Zephyr v4.1,
however the feature was still left in the board's list of supported
features. This caused twister to continue selecting
tests/drivers/disk/disk_performance for the board, which fails to build,
and thus continued failures in ci. It was mainly observed on push events
because recent PRs haven't changed anything in this area.

Signed-off-by: Maureen Helm <maureen.helm@analog.com>
2025-10-17 22:01:13 +03:00
Yasin Ustuner
d411ab9bbd boards: adi: max32666fthr: Disable SDHC
Some SDHC related tests fail on CI checks when
rebase adi-main on to Zephyr v4.1 release
candidate.

This commit disables SDHC until the problem is
solved.

Signed-off-by: Yasin Ustuner <Yasin.Ustuner@analog.com>
2025-10-17 22:01:13 +03:00
Thomas Decker
18f1d33013 boards: st: nucleo_h7s3l8: Fix format in doc/index.rst
Fix wrong heading type in index.rst introduced with PR #95388

Signed-off-by: Thomas Decker <decker@jb-lighting.de>
2025-10-17 22:01:03 +03:00
Thomas Decker
cebdc0bc84 boards: st: nucleo_h7s3l8: Add ethernet
Enable support for ethernet on nucleo_h7s3l8 board.

Signed-off-by: Thomas Decker <decker@jb-lighting.de>
2025-10-17 22:01:03 +03:00
Thomas Decker
bfdf070b7d soc: st: stm32: h7rs: Add memory region to MPU region list
Add ethernet DMA buffer/descriptor region (sram2) and read only
flash region 0x08FFF800 with unique device ID registers to MPU region
list. The unique device ID is used to create a random mac address by
the ethernet driver. Ethernet DMA buffer/descriptor memory section is
also added to linker script.

Signed-off-by: Thomas Decker <decker@jb-lighting.de>
2025-10-17 22:01:03 +03:00
Thomas Decker
0cd6f90da6 drivers: ethernet: stm32: Add support for SOC H7RS-Family
Add SOC_SERIES_STM32H7RSX to applicable Kconfig parameters and enable
use of .eth_stm32_desc and .eth_stm32_buf linker sections for ethernet
dma.

Signed-off-by: Thomas Decker <decker@jb-lighting.de>
2025-10-17 22:01:03 +03:00
Thomas Decker
de03e7c209 dts: arm: st: h7rs: Add ethernet node to dts
Add ethernet node with mac and mdio subnodes to dts similar to h7-family.

Signed-off-by: Thomas Decker <decker@jb-lighting.de>
2025-10-17 22:01:03 +03:00
Jilay Pandya
fa4d1c2104 drivers: stepper: Kconfig: fix bleeding Kconfigs
currently Kconfigs in stepper area are not uniformly organized
some folders have config while the others follow menuconfig

Also without having activated drivers explicitly following
Kconfigs appear in autoconf.h

CONFIG_STEPPER_ADI_TMC 1
CONFIG_STEPPER_ADI_TMC50XX_RAMPSTAT_POLL_INTERVAL_IN_MSEC 100
CONFIG_STEPPER_ADI_TMC51XX_RAMPSTAT_POLL_INTERVAL_IN_MSEC 100
CONFIG_STEPPER_ALLEGRO 1

refactor Kconfig.tmc51xx to tmc51xx folder
refactor adi_tmc bus related Kconfigs in adi_tmc/bus

Signed-off-by: Jilay Pandya <jilay.pandya@outlook.com>
2025-10-17 22:00:39 +03:00
Xavier Razavet
cf2ec35726 dts: arm: nxp: MCXW71 stcm RAM size increased to 112K
To prevent a RAM overflow in the zephyr/samples/net/openthread/shell
application

Signed-off-by: Xavier Razavet <xavier.razavet@nxp.com>
2025-10-17 22:00:29 +03:00
Xavier Razavet
a9e111f6a9 samples: openthread: shell: boards folder creation to support MCXW7x
Creation of the zephyr/samples/net/openthread/shell/boards to support
the MCXW7x boards components.

Signed-off-by: Xavier Razavet <xavier.razavet@nxp.com>
2025-10-17 22:00:29 +03:00
Aksel Skauge Mellbye
27a7cd5cc9 drivers: retained_mem: Add driver for Silicon Labs BURAM
Add retained memory driver for BURAM on Silicon Labs Series 2
devices. This is a 128-byte register-based backup memory available
in all power states.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-10-17 22:00:18 +03:00
Aksel Skauge Mellbye
10f5c8f044 dts: arm: silabs: Add silabs,buram binding for retained memory
Add binding for the 128-byte Backup RAM.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-10-17 22:00:18 +03:00
Benjamin Cabé
3de6a264bc doc: doxygen: enable Doxygen parallel build
Parallel build for Doxygen has been available since v1.9, and allows to
claim a few seconds off the build time (only the input processing can be
done in parallel, but that's still a noticeable performance
improvement).

Set NUM_PROC_THREADS to 0 to use as many cores as available on the
system (21 seconds build-time down to 16 on my machine).

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-10-17 22:00:08 +03:00
Sylvio Alves
884155d4c8 west.yml: update hal_espressif
Make common mbedTLS linking into BLE/Wi-Fi builds.
Fix wrong lock in regi2c sources.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2025-10-17 21:59:56 +03:00
Adam Kondraciuk
03f537733e boards: nordic: nrf54h: fix pm_ramfunc region
Fix region for PM ram function on radiocore.

Signed-off-by: Adam Kondraciuk <adam.kondraciuk@nordicsemi.no>
2025-10-17 21:59:46 +03:00
Julien Panis
052ded1682 drivers: spi: cc23x0: Add power management
Add PM support to cc23x0 SPI module. This implies listing states which
cause power loss and enabling device runtime PM for the DMA in the DT.

Signed-off-by: Julien Panis <jpanis@baylibre.com>
2025-10-17 17:04:18 +03:00
Fabrice DJIATSA
3574533ca2 soc: st: stm32l0x: remove kernel stack size definitions
These kconfig symbols will be handle in family Kconfig
Level

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2025-10-17 17:04:04 +03:00
Fabrice DJIATSA
540d2d3220 soc: st: stm32g0x: remove kernel stack size definitions
These kconfig symbols will be handle in family Kconfig
level

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2025-10-17 17:04:04 +03:00
Fabrice DJIATSA
7b90f58ad0 soc: st: stm32f0x: remove kernel stack size definitions
These kconfig symbols will be handle in family Kconfig
level.

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2025-10-17 17:04:04 +03:00
Fabrice DJIATSA
84dc8d21b6 soc: st: stm32: add common kconfig symbols for kernel stack size
Provide default values for common kconfig symbols for main, idle and
isr stack sizes, which apply on all STM32 MCU families with low RAM
memory(less than 8 KiB).
These kconfig symbols help reduce kernel sizes to fit within
limited RAM.

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2025-10-17 17:04:04 +03:00
Luna Pes
caae24e20e drivers: eeprom: fm25xxx: add support for infineon fm25xxx FRAM
This driver adds support for the Infineon FM25XXX series of chips.
Has been tested on Infineon FM25CL64B-G.

Signed-off-by: Luna Pes <zephyr@orangemurker.com>
2025-10-17 17:03:53 +03:00
Sylvio Alves
4eeb8fa95e mdio: esp32: fix gpio0 clock output
When GPIO0 is set as RMII clock, configure its
mux to clockout properly.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2025-10-17 17:03:41 +03:00
Anthony Williams
3d5417e654 sensor: icm45686: Move watermark threshold mode to DT config
Move the watermark threshold trigger mode to a configurable dt boolean.

When using the default configuration of watermark threshold
interrupt greater than or equals, extra interrupts are serviced
to icm45686_event_handler().

When `fifo-watermark-equals;` is added to the sensor DT overlay,
the new behavior is only one interrupt is generated per watermark
threshold crossing. Until the host drains the fifo, no extra interrupts
will be generated.

Signed-off-by: Anthony Williams <anthony289478@gmail.com>
2025-10-17 17:03:27 +03:00
Tom Hughes
b76911d8e0 arch: riscv: Fix warning when C++ is enabled
When compiling with C++ enabled (CONFIG_CPP), add an unused member to
prevent an empty struct; this makes the struct size the same for both C
and C++.

Fixes the following warnings:

In file included from include/zephyr/drivers/gpio.h:22:
In file included from include/zephyr/tracing/tracing.h:9:
In file included from include/zephyr/kernel.h:17:
In file included from include/zephyr/kernel_includes.h:32:
In file included from include/zephyr/kernel_structs.h:29:
In file included from include/zephyr/arch/structs.h:29:
include/zephyr/arch/riscv/structs.h:11:1: error: empty struct has size 0
in C, size 1 in C++ [-Werror,-Wextern-c-compat]
   11 | struct _cpu_arch {
      | ^

In file included from include/zephyr/drivers/gpio.h:22:
In file included from include/zephyr/tracing/tracing.h:9:
In file included from include/zephyr/kernel.h:17:
In file included from include/zephyr/kernel_includes.h:36:
In file included from include/zephyr/arch/cpu.h:25:
In file included from include/zephyr/arch/riscv/arch.h:18:
include/zephyr/arch/riscv/thread.h:68:1: error: empty struct has size 0
in C, size 1 in C++ [-Werror,-Wextern-c-compat]
   68 | struct _thread_arch {
      | ^

Signed-off-by: Tom Hughes <tomhughes@chromium.org>
2025-10-17 17:03:16 +03:00
Pavel Vasilyev
a360ff7cc3 bluetooth: mesh: Fix build without settings under asan
When Mesh is built without CONFIG_BT_SETTINGS and with CONFIG_ASAN
(and CONFIG_NO_OPTIMIZATION), the call to bt_mesh_settings_set is not
optimized out. Since settings.c isn’t compiled when CONFIG_BT_SETTINGS
is disabled, the linker reports an undefined reference.

Guard the call with !IS_ENABLED(CONFIG_BT_SETTINGS) so the call and the
subsequent code is compiled out when settings are disabled.

Signed-off-by: Pavel Vasilyev <pavel.vasilyev@nordicsemi.no>
2025-10-17 17:03:06 +03:00
Jeppe Odgaard
25d5c73b0a net: config: sntp: optionally set rtc
Set RTC when an SNTP response is received if enabled via Kconfig option.

Signed-off-by: Jeppe Odgaard <jeppe.odgaard@prevas.dk>
2025-10-17 17:02:55 +03:00
Alberto Escolar Piedras
691486de83 modules: mbedtls: Fix build with address sanitizer and size opt
When building with the address sanitizer and size optimizations some of
the mbedtls assembler fails to build, with an error like:
error: ‘asm’ operand has impossible constraints or there are not enough
       registers

Avoid this issue by forcing speed optimizations for this problematic
file if any optimization is chosen.

A similar fix was originally introduced in the module:
https://github.com/zephyrproject-rtos/mbedtls/commit/4f1e8f5a78d
but it seems to have stoped working when the content of the file was
moved.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-10-17 17:02:43 +03:00
Chris Friedt
d47c68f937 samples: net: capture: use EXTRA_CONF_FILE for native_sim
The generated docs for building this sample suggested using
`-DCONF_FILE=overlay-tunnel.conf`, but that was just an artifact of
using the `:conf:` directive in the kind of generic app-command.

Without specifying `-DEXTRA_CONF_FILE=overlay-tunnel.conf`, which
also pulls in `prj.conf`, there were a few build errors.

Update the docu to provide a concrete example of building for
`native_sim` with `:gen-args: -DEXTRA_CONF_FILE=overlay-tunnel.conf`.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-10-17 17:02:34 +03:00
Daniel Kampert
7a4c4a6f9b sensors: apds9306: Fix I2C write/read pointer issue
- Fix i2c_write_read_dt read buffer pointer
- Initialize val2 in apds9306_attr_get with 0

Closes #97623

Signed-off-by: Daniel Kampert <DanielKampert@kampis-elektroecke.de>
2025-10-17 17:02:24 +03:00
Camille BAUD
ecada5749b soc: bflb: Fix cache code relocation
The location of the cache code file was changed, update it here

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-10-17 17:02:14 +03:00
Axel Le Bourhis
188c93ec67 soc: nxp: nxp_nbu: Fix IMU IRQ enabled too early in NXP NBU driver
This commit addresses an issue where the IMU interrupt is enabled too
early by the nxp_nbu driver, this leads to a race condition where the
interrupt can be triggered even though the IMU driver is not fully
initialized.
The interrupt shall not be enabled at Zephyr level since this will
be done by the low level driver in the hal_nxp.

Signed-off-by: Axel Le Bourhis <axel.lebourhis@nxp.com>
2025-10-17 17:02:02 +03:00
Dan Kalowsky
440896aa73 MAINTAINERS: add dkalowsk as MCTP collaborator
Add dkalowsk as a collaborator to the MCTP sections.

Signed-off-by: Dan Kalowsky <dkalowsky@amperecomputing.com>
2025-10-17 17:01:50 +03:00
Jeppe Odgaard
57a5b86b7f debug: thread_analyzer: replace #if IS_ENABLED
Use of IS_ENABLED in a #if statement is discouraged. Replace with #ifdef.

Signed-off-by: Jeppe Odgaard <jeppe.odgaard@prevas.dk>
2025-10-17 17:01:30 +03:00
Axel Le Bourhis
f30ae377cc manifest: update hal_nxp
Integrate connectivity framework from MCUXSDK 25.09 release.

Signed-off-by: Axel Le Bourhis <axel.lebourhis@nxp.com>
2025-10-17 17:01:11 +03:00
Sylvio Alves
ca5b09c03c tests: driver: pwm_loopback: fix zassert string formatting
Add missing "%" symbol.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2025-10-17 17:00:59 +03:00
Lyle Zhu
fa61e87f1f doc: Bluetooth: shell: Add document for Classic GOEP
Add a document to show how to use the Classic GOEP shell commands.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-10-17 12:55:53 +02:00
Lyle Zhu
2f630e3a16 doc: Bluetooth: shell: Add document for Classic RFCOMM
Add a document to show how to use the Classic RFCOMM shell commands.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-10-17 12:55:53 +02:00
Lyle Zhu
78fffbeca4 doc: Bluetooth: shell: Add document for Classic HFP
Add a document to show how to use the Classic HFP shell commands.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-10-17 12:55:53 +02:00
Lyle Zhu
40aaeca375 doc: Bluetooth: shell: Add document for Classic L2CAP
Add a document to show how to use the Classic L2CAP shell commands.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-10-17 12:55:53 +02:00
Tim Pambor
5b5c057cb4 west.yml: hal_stm32: update to fix compiling with clang and pin updates
Update hal_stm32 to include
- fix for compiling for STM32H5 with clang
- ale/cle pin definitions for FMC peripheral

Signed-off-by: Tim Pambor <tim.pambor@codewrights.de>
2025-10-17 12:55:29 +02:00
cyliang tw
635de75e87 boards: nuvoton: add support for numaker m3334ki
Add new development board numaker_m3334ki for m3334kig.

Signed-off-by: cyliang tw <cyliang@nuvoton.com>
2025-10-17 12:55:17 +02:00
cyliang tw
1e216d5b1e soc: nuvoton: numaker: add support for m333x series
Add initial support for Nuvoton NuMaker-M333x SoC series,
including basic initialization and device tree includes.

Signed-off-by: cyliang tw <cyliang@nuvoton.com>
2025-10-17 12:55:17 +02:00
Jonas Berg
9434b2cb92 boards: shields: Add Adafruit DS2484 1-Wire shield
Product photo from https://learn.adafruit.com/assets/130701
with license CC BY-SA 3.0

Tested with command mentioned in the index.rst page.

Signed-off-by: Jonas Berg <jonas.s.t.berg@gmail.com>
2025-10-17 12:55:06 +02:00
Jamie McCrae
d99cddd4ec samples: mgmt: mcumgr: smp_svr: Add udp_dtls sample
Adds a sample which demonstrates how to use DTLS over UDP. This
copies the certificate files from the echo server sample to use as
dummy certificates

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-10-17 18:28:08 +09:00
Jamie McCrae
a44efd9a95 mgmt: mcumgr: transport: udp: Add support for DTLS
Adds support for using DTLS for the transport

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-10-17 18:28:08 +09:00
Martin Koehler
1667602b76 drivers: sensor: ti,ina226: Fixed calibration value
Issue:
- The calibration value had the correct elements but false operations
- This leads to wrong values or even saturation

Changes:
- Added explenation of formula
- Moved constant from MACRO into formula to get rid of the
  confusing 10000000ULL constant
- Added rounding for better results

Signed-off-by: Martin Koehler <koehler@metratec.com>
2025-10-17 11:18:38 +02:00
Aksel Skauge Mellbye
c81245ff10 samples: basic: button: Disable led on slwrb4311a
Button 0 and LED 0 share a GPIO pin on slwrb4311a. Remove the
`led0` alias in a board overlay to make the button sample work
out of the box.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-10-17 11:18:28 +02:00
Aksel Skauge Mellbye
03bee9cd2e boards: silabs: Add xg22 radio boards
Add SLWRB4182A, a radio board for EFR32MG22, as well as SLWRB4311A,
a radio board for BGM220. The boards have similar pinout, but with
some differences to the LED and enable pins.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-10-17 11:18:28 +02:00
Aksel Skauge Mellbye
81ea07279d boards: silabs: Add bg22 explorer kit
Add bg22_ek4108a board definition for the EFR32BG22 Explorer Kit.
The board has similar pinout to the other xg22 explorer kits.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-10-17 11:18:28 +02:00
Aksel Skauge Mellbye
493fdf317e boards: silabs: Refactor xg22 explorer kits
Move to explorer_kits directory, share configuration between
bgm220_ek4314a and xg22_ek2710a, as their pinouts are similar.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-10-17 11:18:28 +02:00
Sebastian Głąb
9ff2c0ff9d tests: boards: nrf: hwinfo: Add latest reset causes
Reset cause API was expanded with two more reset causes.
These are RESET_BOOTLOADER and RESET_FLASH.

Add handling of RESET_BOOTLOADER and RESET_FLASH to reset_cause test.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
2025-10-17 11:18:08 +02:00
Siratul Islam
8be5011c04 boards: add WeAct ESP32-C6 Mini board support
Add support for WeAct Studio ESP32-C6 Mini development board.

The WeAct ESP32-C6 Mini is a compact development board based on the
ESP32-C6FH4 chip (QFN32 package) with 4 MB in-package flash. This
board features complete Wi-Fi 6, Bluetooth LE 5.3, Zigbee, and Thread
support.

Key features:
- ESP32-C6FH4 chip (RISC-V 32-bit, up to 160 MHz)
- 4 MB in-package flash
- 22 GPIOs
- USB Type-C connector with USB Serial/JTAG
- Boot and reset buttons
- RGB LED

Unlike the ESP32-C6-DevKitC which uses the ESP32-C6-WROOM-1 module,
this board has the ESP32-C6FH4 chip directly mounted in QFN32 package.

Signed-off-by: Siratul Islam <sirat4757@gmail.com>
2025-10-17 11:17:51 +02:00
Chris Friedt
4fd03230d6 samples: net: capture: avoid net_ip.h conflicts with CONFIG_NATIVE_LIBC
The net capture sample is likely one application that does rely on linking
against the native C library rather than Picolibc, since it needs to hook
into Linux's tun / tap interfaces.

However, after removing `<zephyr/posix/...h>` from the default search
path, a number of conflicts appear between the native libc socket types
and Zephyr's in `net_ip.h`.

Issue 97050 already captures this partially. However, there seems to be
some confusion about POSIX headers and types and ISO C headers and types.

There are C libraries that do not include all of the necessary POSIX
headers and types that Zephyr depends on. For example:

* minimal libc
* IAR
* newlib
* picolibc

The latter two might surprise some.

In any case, the work required to properly namespace `net_ip.h` constants
and types is well out of the scope of the current release cycles, so this
small workaround should suffice.

A non-exhaustive list of constants and types from `net_ip.h` that conflict
with native types are

* PF_INET
* PF_INET6
* PF_PACKET
* PF_CAN
* PF_LOCAL
* SOCK_STREAM
* SOCK_DGRAM
* SOCK_RAW
* struct iovec
* struct msghdr
* struct cmsghdr
* struct sockaddr
* struct sockaddr_storage

A non-exhaustive list of errors that arise are of the form(s) below:
```shell
In file included from $HOME/../zephyr/net/ethernet.h:21,
                 from $HOME/../samples/net/capture/src/main.c:15:
../zephyr/net/net_ip.h:45: warning: "PF_INET" redefined
   45 | #define PF_INET      1     /**< IP protocol family version 4. */
      |
/usr/include/bits/socket.h:45: note: this is the location of the previous \
  definition
   45 | #define PF_INET         2       /* IP protocol family.  */
      |
In file included from /usr/include/bits/socket.h:38:
$HOME/zephyrproject/zephyr/include/zephyr/net/net_ip.h:89:9: error: \
  redeclaration of enumerator ‘SOCK_STREAM’
   89 |         SOCK_STREAM = 1,           /**< Stream socket type   */
      |         ^~~~~~~~~~~
/usr/include/bits/socket_type.h:26:3: note: previous definition of \
  ‘SOCK_STREAM’ with type ‘enum __socket_type’
   26 |   SOCK_STREAM = 1,              /* Sequenced, reliable,...
      |   ^~~~~~~~~~~
$HOME/zephyrproject/zephyr/include/zephyr/net/net_ip.h:250:8: error: \
  redefinition of ‘struct iovec’
  250 | struct iovec {
      |        ^~~~~
In file included from /usr/include/sys/socket.h:26:
/usr/include/bits/types/struct_iovec.h:26:8: note: originally defined here
   26 | struct iovec
      |        ^~~~~
```

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-10-17 11:17:40 +02:00
Martin Hoff
ccd505ffdc drivers: bluetooth: hci: siwx91x: create dependency with nwp
The bluetooth hci on silabs siwx91x depends on the nwp
(network coprocessor). This patch allows to check for the correct
initialization of the nwp before using bt hci on siwx91x.

Signed-off-by: Martin Hoff <martin.hoff@silabs.com>
2025-10-17 11:17:30 +02:00
Martin Hoff
ba1d267c62 soc: silabs: siwx91x: transform nwp soc files into a driver
The goal of this patch is to switch from the nwp.c and nwp.h soc files
to the new nwp driver. During this transition, we also renamed
CONFIG_WISECONNECT_NETWORK_STACK to CONFIG_SILABS_SIWX91X_NWP which are
a better naming to let the user knows that the network coprocessor files
will be added to the compilation.

The switch from a soc file to a driver device introduce a notion of nwp
device that allows us to check for good initialization and ressources
allocation.

Before this patch, it is not possible to know if the nwp have booted
successfully or not. We can now check if the device driver is ready
or not before trying to do operation related to the nwp.

Signed-off-by: Martin Hoff <martin.hoff@silabs.com>
2025-10-17 11:17:30 +02:00
Arunmani Alagarsamy
bdb64d1bbf drivers: wifi: siwx91x: fix client idle timeout in AP mode
The firmware interprets the client idle timeout in units of 32 beacon
intervals, not in milliseconds. This mismatch caused the applied timeout
to be higher than the configured value.

Fix the driver to use the correct unit.

Signed-off-by: Arunmani Alagarsamy <arunmani.a@silabs.com>
2025-10-17 11:17:01 +02:00
Lei Xu
53f7d8ca5a samples: fs: fs_sample: Increase CONFIG_MAIN_STACK_SIZE for imx93
Increase CONFIG_MAIN_STACK_SIZE to 8192 to avoid possible crash.

Signed-off-by: Lei Xu <lei.xu@nxp.com>
Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-10-17 11:16:48 +02:00
Lei Xu
b8f256cbb3 boards: frdm_imx93: enable SDHC on the board
Added pinctrl and dts nodes for uSDHC1 and uSDHC2, they are disabled
by default, and provided overlay files to enable them if needed.

Signed-off-by: Lei Xu <lei.xu@nxp.com>
Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-10-17 11:16:48 +02:00
Valerio Setti
34259fa2c3 doc: releases: add note about CONFIG_PSA_CRYPTO addition in Mbed TLS
Update release-notes about the following additions:
- CONFIG_PSA_CRYPTO
- CONFIG_PSA_CRYPTO_PROVIDER_TFM
- CONFIG_PSA_CRYPTO_PROVIDER_MBEDTLS
- CONFIG_PSA_CRYPTO_PROVIDER_CUSTOM

Signed-off-by: Valerio Setti <vsetti@baylibre.com>
2025-10-17 11:16:25 +02:00
Valerio Setti
019e26aecf bluetooth: mesh: use new Kconfig CONFIG_PSA_CRYPTO
Remove previous Kconfig choices CONFIG_BT_MESH_USES_MBEDTLS_PSA and
CONFIG_BT_MESH_USES_TFM_PSA and use CONFIG_PSA_CRYPTO instead.
This commit also updates test code accordingly.

Signed-off-by: Valerio Setti <vsetti@baylibre.com>
2025-10-17 11:16:25 +02:00
Valerio Setti
1bc2db575f modules: mbedtls: add new helper Kconfig symbol PSA_CRYPTO
The goal of new Kconfig PSA_CRYPTO_PROVIDER is to automatically enable
any of the PSA Crypto API provider available for the platform without
having the user to manually pick the proper one. This provider can be
either TF-M, if that's enabled in the build, or Mbed TLS otherwise.

PSA_CRYPTO_PROVIDER simplifies also modules/subsystem Kconfigs removing
blocks as:
	select MBEDTLS if !BUILD_WITH_TFM
	select MBEDTLS_PSA_CRYPTO_C if !BUILD_WITH_TFM

Kconfig PSA_CRYPTO_PROVIDER_CUSTOM is also added to allow the end user
to add a custom implementation of PSA Crypto API instead of TF-M or
Mbed TLS ones.

Signed-off-by: Valerio Setti <vsetti@baylibre.com>
2025-10-17 11:16:25 +02:00
Valerio Setti
7b7b4fcde2 drivers: bluetooth: hci: do not select MBEDTLS_ENTROPY_C in BT_SILABS_EFR32
The driver only uses psa_generate_random() so ENTROPY_C is not required.

Signed-off-by: Valerio Setti <vsetti@baylibre.com>
2025-10-17 11:16:25 +02:00
Valerio Setti
76037cec36 drivers: bluetooth: esp32: remove selection of MBEDTLS_PSA_CRYPTO_C
The driver code only relies on legacy Mbed TLS crypto, not on PSA API, so
enabling MBEDTLS_PSA_CRYPTO_C is not needed here.

Signed-off-by: Valerio Setti <vsetti@baylibre.com>
2025-10-17 11:16:25 +02:00
Valerio Setti
46614ded36 modules: openthread: fix dependency for OPENTHREAD_CRYPTO_PSA
The dependency should be PSA_CRYPTO_CLIENT and not
MBEDTLS_PSA_CRYPTO_CLIENT because the former is more generic. TF-M can
indeed provide PSA Crypto API, not only Mbed TLS.

Signed-off-by: Valerio Setti <vsetti@baylibre.com>
2025-10-17 11:16:25 +02:00
Kiara Navarro
bf535a4166 logging: document log_backend_std_get_flags
The function `log_backend_std_get_flags` was not documented.
Create a doxygen style documentation for it.

Signed-off-by: Kiara Navarro <knavarro@paltatech.com>
2025-10-17 11:16:03 +02:00
Rickey Fehr
c9b2803069 boards: Add sparkfun samd21 dev breakout board
Adding the sparkfun samd21 dev breakout board. This will work with the
basic blinky sample. Link attached to the boards info page.

Link: https://www.sparkfun.com/sparkfun-samd21-dev-breakout.html

Signed-off-by: Rickey Fehr <ric@rf3.xyz>
2025-10-17 11:15:50 +02:00
Pieter De Gendt
1da7a115cc net: l2: wifi: shell: Add bgscan command
Add a shell command to configure the background scanning.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-10-17 11:15:37 +02:00
Pieter De Gendt
93c4dbd2e0 modules: hostap: Support bgscan
Add configuration options for background scanning (bgscan) in
wpa_supplicant.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-10-17 11:15:37 +02:00
Pieter De Gendt
5a503644ba manifest: update hostap revision for bgscan fix
The hostap module is updated with a build fix fetched from upstream.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-10-17 11:15:37 +02:00
Mark Wang
ad474e2513 doc: bluetooth: add a2dp API doc
add a2dp to the doc

Signed-off-by: Mark Wang <yichang.wang@nxp.com>
2025-10-17 11:15:10 +02:00
Seppo Takalo
2cfd92410e modem: cmux: Combine state and event
Refactor internal event bits to use state enum values
and define set_state() and wait_state() so we don't need
two set of variables to maintain.

Signed-off-by: Seppo Takalo <seppo.takalo@nordicsemi.no>
2025-10-16 22:40:21 -04:00
Artur Wilczak
de183df157 tests: pm: Fix collecting data after fail
Fix for collecting and presenting measured data.
During verify measured values, the test skipped all results
after the first incorrect one. Furthermore, it duplicated
already collected data on the output list. So in this case the
result list include wrong data.

Signed-off-by: Artur Wilczak <arturx.wilczak@intel.com>
2025-10-16 22:38:01 -04:00
Artur Wilczak
a90cc800bc tests: pm: adjust state_1 expected value
From the analysis of the the masurments so far it follows that
the expected value of the state_1 is too hight.
Change expected value of state_1 from 0.14 to 0.12.
Regarding the test:
  tests/subsys/pm/power_states

Signed-off-by: Artur Wilczak <arturx.wilczak@intel.com>
2025-10-16 22:38:01 -04:00
TOKITA Hiroshi
a52088c63b boards: shields: rpi_pico_uno_flexypin: Fix conflicting connector node
The `/connector` node conflicts with
`boards/raspberrypi/rpi_pico/rpi_pico-common.dtsi` definition.

Renaming it to `connector_arduino` to avoid conflict with that.

Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@gmail.com>
2025-10-16 22:37:23 -04:00
Mathieu Choplain
0211d440f4 arch: *: prep_c: remove check for CONFIG_SOC_PREP_HOOK
soc_prep_hook() is always called from z_prep_c() which is implemented
as a C function. As such, there is no need to check for the associated
CONFIG_SOC_PREP_HOOK since the platform/hooks.h header will define hooks
as no-op function-like macros if their associated Kconfig isn't enabled.

Remove the Kconfig check from all arch implementations of z_prep_c() and
call soc_prep_hook() directly instead, to avoid duplicating the Kconfig
check already performed in platform/hooks.h

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-10-16 22:35:45 -04:00
Mathieu Choplain
a50720bafe doc: add hooks to arch porting documentation
Document the expected early boot sequence and when platform hooks should be
called by the arch-specific coode, and under what conditions.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-10-16 22:35:45 -04:00
Mathieu Choplain
6a414b6fff kernel: hooks: clean up the top-level documentation comment
Clean up the top-level comment in the platform hooks header which is used
when generating documentation:
- capitalize "soc" as "SoC"
- capitalize "zephyr"
- simplify "soc and board specific" -> "SoC/board-specific"

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-10-16 22:35:45 -04:00
Mathieu Choplain
6f92735d28 kernel: hooks: make definitions appear in Doxygen
The hooks' signature was not visible to Doxygen due to preprocessor
conditionals - instead, the dummy no-op implementation was seen instead.

Update #ifdef guard to make the hooks' signature and the associated
documentation visible to Doxygen such that it appears in docs.

Also fix a tiny typo on soc_reset_hook()'s documentation comment.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-10-16 22:35:45 -04:00
Qiang Zhao
56098d60b4 drivers: dsa_nxp_imx_netc: add Qbv capability
add Qbv capability for dsa_nxp_imx_netc

Signed-off-by: Qiang Zhao <qiang.zhao@nxp.com>
2025-10-16 22:34:41 -04:00
Qiang Zhao
d4928e8419 net: shell: Add Qbv shell
Added Qbv shell subcommand to net command.
Supported enable, set_config, set_time and get_info functions.

Signed-off-by: Qiang Zhao <qiang.zhao@nxp.com>
2025-10-16 22:34:41 -04:00
Qiang Zhao
d507bf9a37 drivers: dsa_nxp_imx_netc: add DSA Qbv support
Add DSA Qbv support, add set_config/get_config to set and get
Qbv configuration. support enable/disable, set/get times,
set/get list length and set/get gate control list.

Signed-off-by: Qiang Zhao <qiang.zhao@nxp.com>
2025-10-16 22:34:41 -04:00
Qiang Zhao
16d6c46a0f net: ethernet: add NET_QBV Kconfig
Add NET_QBV in Kconfig, Qbv is Enhancements for Scheduled Traffic (EST),
one feature of TSN. The PTP clock provides the time reference for Qbv

Signed-off-by: Qiang Zhao <qiang.zhao@nxp.com>
2025-10-16 22:34:41 -04:00
Qiang Zhao
a12c664b53 net: dsa: add set/get_config support
Supported set/get_config API.

Signed-off-by: Qiang Zhao <qiang.zhao@nxp.com>
2025-10-16 22:34:41 -04:00
Dan Kalowsky
27afe41b10 debug: thread_analyzer: add thread analyzer option to reset frame
Use THREAD_ANALYZER_LONG_FRAME_PER_INTERVAL config to reset
longest frame value to zero after printing so that longest frame
now represents longest frame for the most recent interval.  The
longest overall frame is often at startup and this modification
allows one to observe subsequent long frames.

Signed-off-by: Jay Lawlor <jlawlor@amperecomputing.com>
Signed-off-by: Dan Kalowsky <dkalowsky@amperecomputing.com>
2025-10-16 22:33:22 -04:00
Ren Chen
381fdbb124 tests: gen_isr_table: exclude it8xxx2_evb platforms
This commit excludes it8xxx2_evb platform for gen_isr_table
test since it8xxx2 soc don't support software triggering
interrupts.

Fixes issue #94382.

Signed-off-by: Ren Chen <Ren.Chen@ite.com.tw>
2025-10-16 22:32:33 -04:00
Stoyan Bogdanov
bc9fce18f2 drivers: serial: cc23x0: Replace incorrect macros
Replace CONFIG_PM with CONFIG_PM_DEVICE to include pm_lock
in cc23x0 UART driver in struct uart_cc23x0_data

Signed-off-by: Stoyan Bogdanov <sbogdanov@baylibre.com>
2025-10-16 22:31:52 -04:00
Stoyan Bogdanov
ad77e10362 dts: arm: ti: cc23x0: Add power management support
Add support for PM to cc23x0 SoC.

Signed-off-by: Stoyan Bogdanov <sbogdanov@baylibre.com>
Signed-off-by: Julien Panis <jpanis@baylibre.com>
2025-10-16 22:31:52 -04:00
Stoyan Bogdanov
f393ae607f soc: ti: cc23x0: Add support for RTC alarms in power.c
In power management, add support to take into account the alarms
set in RTC. Alarm from RTC is processed like any other from SYSTIM.
This prevents from missing interrupts.

Signed-off-by: Stoyan Bogdanov <sbogdanov@baylibre.com>
2025-10-16 22:31:52 -04:00
Stoyan Bogdanov
a286540dbc soc: ti: cc23x0: Add conditions for RTC as timer in power.c
In power management, add conditions to handle the case where
RTC is used as main timer.

Signed-off-by: Stoyan Bogdanov <sbogdanov@baylibre.com>
2025-10-16 22:31:52 -04:00
Stoyan Bogdanov
f5bcee5d8d soc: ti: cc23x0: Add power management
Add power management capabilities for cc23x0:
- runtime-idle
- standby
- soft-off

Signed-off-by: Stoyan Bogdanov <sbogdanov@baylibre.com>
2025-10-16 22:31:52 -04:00
Julien Panis
a473d268c3 boards: ti: lp_em_cc2340r5: Add external low-frequency oscillator
Enable external 32 kHz crystal oscillator.

Signed-off-by: Julien Panis <jpanis@baylibre.com>
2025-10-16 22:31:52 -04:00
Julien Panis
13c0a98acc dts: bindings: clock: Add TI cc23x0 external low-frequency oscillator
External 32.768 kHz crystal oscillator (LFXT) connected across
the X32P input and X32N output pins.

Signed-off-by: Julien Panis <jpanis@baylibre.com>
2025-10-16 22:31:52 -04:00
Stoyan Bogdanov
9ec8ad9b47 soc: ti: cc23x0: Add clock definition for RTC
Add conditonal definition for RTC and SYSTIM with different
values for both of them respecting clock speed and ticks
per minute.

Signed-off-by: Stoyan Bogdanov <sbogdanov@baylibre.com>
2025-10-16 22:31:52 -04:00
Stoyan Bogdanov
b82e7418c5 drivers: counter: cc23x0: Add dependency for RTC
In case RTC is used for system timer, it should not be used
as counter device. Dependency restricts counter driver to work
only with SYSTIM.

Signed-off-by: Stoyan Bogdanov <sbogdanov@baylibre.com>
2025-10-16 22:31:52 -04:00
Stoyan Bogdanov
6bb5378fbe drivers: timer: cc23x0: Add option to select between RTC and SYSTIM
Add choice menu where could be selected between RTC or SYSTIM for
system timer.

Signed-off-by: Stoyan Bogdanov <sbogdanov@baylibre.com>
2025-10-16 22:31:52 -04:00
Stoyan Bogdanov
ca6b18d808 drivers: timer: Add RTC timer driver for cc23x0
Add support for RTC as timer for cc23x0 SoC.

Signed-off-by: Stoyan Bogdanov <sbogdanov@baylibre.com>
2025-10-16 22:31:52 -04:00
Marcelo Roberto Jimenez
7777a39b63 drivers: net: Make slip use the interface name declared on Kconfig
Make the slip initialization code actually use the interface name set on
Kconfig.

Signed-off-by: Marcelo Roberto Jimenez <marcelo.jimenez@gmail.com>
2025-10-16 22:30:28 -04:00
Marcelo Roberto Jimenez
fca3d161ed drivers: net: Fix the slip initialization of the MAC address
This patch fixes a slip_get_mac() call in the wrong place, which was
causing the MAC address set in Kconfig not to be used.

Signed-off-by: Marcelo Roberto Jimenez <marcelo.jimenez@gmail.com>
2025-10-16 22:30:28 -04:00
Tim Pambor
30cdbd3dfc tests: bluetooth: controller: Fix too many arguments for format error
Remove additional NULL argument passed to zassert_not_null that caused
a -Wformat error.

Signed-off-by: Tim Pambor <tim.pambor@codewrights.de>
2025-10-16 17:15:11 -07:00
Tim Pambor
a3d355e19c tests: posix: Fix -Wformat error
Use %ld format specifier for variables of type clock_t.

Signed-off-by: Tim Pambor <tim.pambor@codewrights.de>
2025-10-16 17:15:11 -07:00
Tomasz Chyrowicz
86a46c48be tests: flash_map: Add tests for subpartitions
Add additional tests for subpartitions support in flash_map macros.

Signed-off-by: Tomasz Chyrowicz <tomasz.chyrowicz@nordicsemi.no>
2025-10-16 15:06:12 -04:00
Tomasz Chyrowicz
3ae8a43667 storage: Allow to use subpartitions in flash_map
Allow to use both partition and subpartition names when suing the
flash_map API.
That way it is possible to introduce a hierarchy within DTS in a
backward compatible way.

Signed-off-by: Tomasz Chyrowicz <tomasz.chyrowicz@nordicsemi.no>
2025-10-16 15:06:12 -04:00
Tomasz Chyrowicz
5c010ed9a3 devicetree: Fix ADDRESS macro for non-nv-flash
Currently the DT_FIXED_PARTITION_ADDR as well as
DT_FIXED_SUBPARTITION_ADDR works only for partitions under the
soc,nv-flash -compatible nodes.

Signed-off-by: Tomasz Chyrowicz <tomasz.chyrowicz@nordicsemi.no>
2025-10-16 15:06:12 -04:00
Tomasz Chyrowicz
e4ecd4b290 devicetree: Fix MTD macro for subpartitions
The DT_MTD_FROM_FIXED_SUBPARTITION must go one level more than the
DT_MTD_FROM_FIXED_PARTITION counterpart.

Signed-off-by: Tomasz Chyrowicz <tomasz.chyrowicz@nordicsemi.no>
2025-10-16 15:06:12 -04:00
James Bennion-Pedley
99b0c25d01 soc: wch: Add CH32V307 Support
Fixes PLL Issues with PR#95814.
Based on the work of Thomas Boje <info@andocs.biz>

Signed-off-by: James Bennion-Pedley <james@bojit.org>
2025-10-16 15:06:01 -04:00
James Bennion-Pedley
344241718a drivers: clock_control: Load correct PLL Multipliers based on look up table
Replaces inline PLL calculation with a LUT (to be based on WCH package)

Signed-off-by: James Bennion-Pedley <james@bojit.org>
2025-10-16 15:06:01 -04:00
James Bennion-Pedley
484218ac70 modules: wch: Fix Incorrect CH32FUN macro configuration
fixes bugs in setting of correct WCH classification abbreviations.
Required for future CH32V307 support.

Signed-off-by: James Bennion-Pedley <james@bojit.org>
2025-10-16 15:06:01 -04:00
Zhaoxiang Jin
b6c66b7858 west: update hal_nxp to mcux sdk 25.09.00
1. update hal_nxp to mcux sdk 25.09.00
2. Updated imxrt7xx part numbers to align with SDK.
3. Fixed typo in member of dsi_transfer_t structure. The sendDscCmd
and dscCmd shall be sendDcsCmd and dcsCmd.
4. Remove the call to the function 'CLOCK_OSC_GateOscRc400M'. This
function has been removed from the SDK.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-10-16 15:05:20 -04:00
Tim Pambor
99fd6d4f4e ztest: Add validation of zassert strings
Add __printf_like attribute to ztest assertion functions
zassert, zassume, zexpect to validate format strings and arguments
at compile time.

Signed-off-by: Tim Pambor <tim.pambor@codewrights.de>
2025-10-16 15:05:07 -04:00
Etienne Carriere
6e0acef0cf tests: subsys: modem: backend: uart: stm32: fix dma DTS phandle lists
Correct b_u585i_iot02a board DTS overlay file DMA lists that was not
split by phandle and seemed to form a unique phandle. This is not
currently an issue with existing DT parsing macros and tools but may
generate build errors if tools are more strict on the DTS implementation
format.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-10-16 15:04:31 -04:00
Etienne Carriere
84f4ebc823 tests: drivers: uart: uart_async_api: stm32: fix dma DTS phandle lists
Correct STM32 boards DTS overlay files DMA lists that were not split
by phandle and seemed to form a unique phandle. This is not currently
an issue with existing DT parsing macros and tools but may generate
build errors if tools are more strict on the DTS implementation format.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-10-16 15:04:31 -04:00
Etienne Carriere
309422f86d tests: drivers: spi: spi_loopback: stm32: fix dma DTS phandle lists
Correct STM32 boards DTS overlay files DMA lists that were not split
by phandle and seemed to form unique phandles. This is not currently
an issue with existing DT parsing macros and tools but may generate
build errors if tools are more strict on the DTS implementation format.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-10-16 15:04:31 -04:00
Etienne Carriere
b5db94d31c samples: net: cellular_modem: stm32: fix dma DTS phandle lists
Correct b_u858i_iot02a DTS overlay file DMA lists that was not split
by phandle and seemed to form a unique phandle. This is not currently
an issue with existing DT parsing macros and tools but may generate
build errors if tools are more strict on the DTS implementation format.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-10-16 15:04:31 -04:00
Etienne Carriere
14cb3e2c10 samples: drivers: spi_flash: stm32: fix dma DTS phandle lists
Correct stm32h573i_dk DTS overlay file DMA list that was not split
by phandle and seemed to form unique phandle. This is not currently
an issue with existing DT parsing macros and tools but may generate
build errors if tools are more strict on the DTS implementation format.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-10-16 15:04:31 -04:00
Etienne Carriere
775b03af0f samples: boards: st: power_mgmt: suspend_to_ram: fix dma DTS phandle lists
Correct nucleo_wba55cg board DTS overlay file DMA lists that was not
split by phandle and seemed to form a unique phandle. This is not
currently an issue with existing DT parsing macros and tools but may
generate build errors if tools are more strict on the DTS implementation
format.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-10-16 15:04:31 -04:00
Etienne Carriere
c79d3d5505 samples: boards: st: uart: circular_dma: fix dma DTS phandle lists
Correct DTS file DMA lists that were not split by phandle and
seemed to form unique phandles. This is not currently as issue with
existing DT parsing macros and tools but may generate build errors
if tools are more strict on the DTS implementation formats.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-10-16 15:04:31 -04:00
Etienne Carriere
5f0dcdac1e dts: arm:st: stm32h7: fix dma phandle lists
Correct STM32H7xx SoCs DMA lists that were not split by phandle and
seemed to form unique phandles. This is not currently as issue with
existing DT parsing macros and tools but may generate build errors
if tools are more strict on the DTS implementation formats.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-10-16 15:04:31 -04:00
Etienne Carriere
d5430545df dts: arm:st: stm32h5: fix dma phandle lists
Correct STM32H5xx SoCs DMA lists that were not split by phandle and
seemed to form unique phandles. This is not currently as issue with
existing DT parsing macros and tools but may generate build errors
if tools are more strict on the DTS implementation formats.

Clean indentation by the ways for the modified DTSI file lines.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-10-16 15:04:31 -04:00
Etienne Carriere
f9e67876b4 dts: arm:st: stm32f4: fix dma phandle lists
Correct STM32F4xx SoCs DMA lists that were not split by phandle and
seemed to form unique phandles. This is not currently as issue with
existing DT parsing macros and tools but may generate build errors
if tools are more strict on the DTS implementation formats.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-10-16 15:04:31 -04:00
Holt Sun
69cdf1952d tests: drivers: rtc: rtc_api: add new test case.
add drivers.rtc.rtc_api.rtc_counter test case
for counter rtc.

Signed-off-by: Holt Sun <holt.sun@nxp.com>
2025-10-16 15:04:18 -04:00
Holt Sun
8a0d621d9d samples: drivers: rtc: add mimxrt10xx board configs
enable alarm and init priority for mimxrt10xx
sample/drivers/rtc

Signed-off-by: Holt Sun <holt.sun@nxp.com>
2025-10-16 15:04:18 -04:00
Holt Sun
2fb04ff274 boards: nxp: add rtc into supported board.
Add "rtc" into supported board.yaml.

Signed-off-by: Holt Sun <holt.sun@nxp.com>
2025-10-16 15:04:18 -04:00
Holt Sun
13983de5bb boards: nxp: mimxrt10xx: enable SNVS counter_rtc
enable SNVS counter_rtc for mimxrt10xx board.

Signed-off-by: Holt Sun <holt.sun@nxp.com>
2025-10-16 15:04:18 -04:00
Holt Sun
3adf133020 dts: nxp: rt10xx: add zephyr,rtc-counter child under SNVS
The counter_rtc child node is for rtc-counter.

Signed-off-by: Holt Sun <holt.sun@nxp.com>
2025-10-16 15:04:18 -04:00
Holt Sun
d4c6cdfd4f drivers: counter: mcux_snvs: update driver codes.
1. Add SRTC helper macros.
2. Implement start/stop APIs.

Signed-off-by: Holt Sun <holt.sun@nxp.com>
2025-10-16 15:04:18 -04:00
Zacck Osiemo
7f6937dac5 samples: video: capture: Configure frame width and heght for mcxn236
SDMA as the video interface on this board requires
this size frame to be set for the sample to work

Signed-off-by: Zacck Osiemo <coderv63@gmail.com>
2025-10-16 12:17:29 -04:00
Zacck Osiemo
6d60beffb9 drivers: video: mcux_sdma: Reconfigure the source when getting format
Reconfigure the sensor format with the only supported format of the
sdma when getting format

Signed-off-by: Zacck Osiemo <coderv63@gmail.com>
2025-10-16 12:17:29 -04:00
Keith Packard
7321231a64 west: Add mbedtls fix for gcc 14.3
This patch (merged upstream and to zephyr fork) avoids an incorrect warning
generated by gcc 14.3 about array bounds. It should not change the
generated code at all.

Signed-off-by: Keith Packard <keithp@keithp.com>
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-10-16 12:17:21 -04:00
Charles Dias
c52ed3921c test: drivers: add HX8379C driver into test app
Include HX8379C in test app.

Signed-off-by: Charles Dias <charlesdias.cd@outlook.com>
2025-10-16 12:17:12 -04:00
Charles Dias
3a26535818 drivers: display: add HX8379C driver files
Add driver files for Himax HX8379C panel.

Signed-off-by: Charles Dias <charlesdias.cd@outlook.com>
2025-10-16 12:17:12 -04:00
Charles Dias
f9d4ec974e dts: bindings: display: add HX8379C binding file
Add binding file for Himax HX8379C panel driver.

Signed-off-by: Charles Dias <charlesdias.cd@outlook.com>
2025-10-16 12:17:12 -04:00
Felix Wang
a8a2eefb56 dts: arm: nxp: Update lptmr prescaler setting
For lptmr counter driver, since "prescaler" has been
deprecated and replaced by prescale-glitch-filter.
Update related setting in device tree files.

Signed-off-by: Felix Wang <fei.wang_3@nxp.com>
2025-10-16 12:16:59 -04:00
Felix Wang
eb785ef63b drivers: Counter: Fix LPTMR prescaler setting not work issue
In current code, if timer-mode-sel is 0(Timer Counter Mode),
bypass_prescaler_glitch will be 1, that makes prescaler setting
be bypassed. But this setting is very useful, especially for
long timing count.

In this patch, we update prescale-glitch-filter default value to 0,
to indicate prescaler and glitch filter are disabled, which comply
the existing devices DTS setting (prescaler = 1).
And if user sets prescale-glitch-filter properity other than 0,
we should set bypass_prescaler_glitch to false to make prescaler work,
and the clock frequence should be calculated with prescaler setting.

Update prescaler field in dt-bindings to tell developer should use
prescale-glitch-filter instead.

Signed-off-by: Felix Wang <fei.wang_3@nxp.com>
2025-10-16 12:16:59 -04:00
Felix Wang
fac2034dc1 tests: drivers: counter_basic_api: Enable lptmr test for mimxrt1180_evk
The lptmr0 has been enabled with default settings defined in
dts/arm/nxp/nxp_rt118x.dtsi. Enable lptmr3 to test with
designated prescaler.

Signed-off-by: Felix Wang <fei.wang_3@nxp.com>
2025-10-16 12:16:59 -04:00
Alessandro Manganaro
077e5a3584 drivers: ieee802154: STM32WBA cube fw 1.7.0 updates
Changes required to update STM32WBA ieee802154 driver
according STM32WBA Cube FW 1.7.0 version.

Signed-off-by: Alessandro Manganaro <alessandro.manganaro@st.com>
2025-10-16 12:16:31 -04:00
Alessandro Manganaro
25e91c8df2 drivers: bluetooth: hci: STM32WBA cube fw 1.7.0 updates
Changes required to update STM32WBA bluetooth HCI driver
according STM32WBA Cube FW 1.7.0 version.

Signed-off-by: Alessandro Manganaro <alessandro.manganaro@st.com>
2025-10-16 12:16:31 -04:00
Declan Snyder
cc72789e1a dts: nxp: Fix opamp addresses
The opamp addresses were wrong given the ranges translations.
This resulted in using the NS addresses on a S build.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-10-16 12:16:13 -04:00
Erwan Gouriou
84bba8742a dts: arm: stm32n6: Add NPU Cache clock and reset lines
Add the description of NPU Cache (aka cacheaxi) to allow configuring
them in NPU Cache driver.
I intentionally chose this over creating a new dedicated node as
the exclusive user is NPU Cache and this could be done as part of
NPU driver initialization.

Update the NPU driver to take those into account as part of its init
routine.

Signed-off-by: Mickael Guene <mickael.guene@st.com>
Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2025-10-16 12:15:58 -04:00
Jukka Rissanen
5795b51ece cmake: extensions: Fix compliance errors
Change "if ()" to "if()" so that CI compliance checker passes.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-10-16 12:15:47 -04:00
Jeremy Dick
034e88ebb3 drivers: mipi-dbi-spi: Fix the delay for gpio CS
Fix a typo in the argument passed to SPI_CS_CONTROL_INIT_GPIO
in MIPI_DBI_SPI_CONFIG_DT

Signed-off-by: Jeremy Dick <jdick@pivotint.com>
2025-10-16 12:15:39 -04:00
Ryan Erickson
282e2c78b1 samples: net: lwm2m_client: support Pinnacle 100 with HL78xx driver
Add support for using the HL78XX modem driver with Pinnacle 100
modem boards.

Signed-off-by: Ryan Erickson <ryan.erickson@ezurio.com>
2025-10-16 17:17:24 +03:00
Ryan Erickson
9f517efce2 samples: net: aws_iot_mqtt: support Pinnacle 100 with HL78xx driver
Add support for using the HL78XX modem driver with Pinnacle 100
modem boards.

Signed-off-by: Ryan Erickson <ryan.erickson@ezurio.com>
2025-10-16 17:17:24 +03:00
Ryan Erickson
b12d6e22ee samples: drivers: modem: hello_hl78xx: add support for pinnacle 100
Add support for Pinnacle 100 modem (HL7800) platforms.

Signed-off-by: Ryan Erickson <ryan.erickson@ezurio.com>
2025-10-16 17:17:24 +03:00
Zafer SEN
7af20e41dd boards: shields: add swir_hl78xx_ev kit
add support for HL78xx driver

Signed-off-by: Zafer SEN <zafersn93@gmail.com>
2025-10-16 17:17:24 +03:00
Zafer SEN
268b86aad0 samples: net: lwm2m_client/aws_iot_mqtt: add hl78xx driver config file
add support for HL78xx driver

Signed-off-by: Zafer SEN <zafersn93@gmail.com>
2025-10-16 17:17:24 +03:00
Zafer SEN
e7de32617a samples: drivers: modem: hello_hl78xx sample
Add HL78xx driver sample application

Signed-off-by: Zafer SEN <zafersn93@gmail.com>
2025-10-16 17:17:24 +03:00
Zafer SEN
a103ef0406 drivers: modem: HL78XX Modem Driver
Adding HL78XX Modem Driver Implementation Using Modem Chat Framework

Signed-off-by: Zafer SEN <zafersn93@gmail.com>
2025-10-16 17:17:24 +03:00
Emilio Benavente
8e8056324d soc: nxp: mcxw: Enable EDMA
Add DMA nodes for MCXW7X SOC DTS.
This SOC used TRIGMUX instead of DMAMUX.
Enable EDMAv3 for the frdm_mcxw71 and frdm_mcxw72
platforms.

Signed-off-by: Emilio Benavente <emilio.benavente@nxp.com>
Co-authored-by: Declan Snyder <declan.snyder@nxp.com>
2025-10-16 17:17:12 +03:00
Declan Snyder
728eff4756 drivers: dma_mcux_edma: Support EDMAv3 without dmamux
Support EDMAv3 platform that do not have dmamux or always on capability.
Therefore, memory to memory transfer is limited in this environment.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
Co-authored-by: Emilio Benavente <emilio.benavente@nxp.com>
2025-10-16 17:17:12 +03:00
Declan Snyder
d8dbd3fade drivers: mcux_edma: refactor configure func more
Split this function up even more

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-10-16 17:17:12 +03:00
Mark Wang
a713aedb53 bluetooth: a2dp: check the reject response's error code
If the reject response's error codes is success, change as FORMAT ERROR.

Signed-off-by: Mark Wang <yichang.wang@nxp.com>
2025-10-16 17:16:53 +03:00
Mark Wang
60c7ec6915 bluetooth: a2dp: set req->status as 0
create internal bt_a2dp_init_req and bt_a2dp_init_ctrl_req to init `req`,
then the `req->status` will not be forgotten to be cleared as 0.

Signed-off-by: Mark Wang <yichang.wang@nxp.com>
2025-10-16 17:16:53 +03:00
Mark Wang
c994c9e02e bluetooth: a2dp set right endpoint state for start and abort cmd
If the start cmd fail, need set back as OPEN state.

Signed-off-by: Mark Wang <yichang.wang@nxp.com>
2025-10-16 17:16:53 +03:00
Dejiang He
c0a9eadb1e boards: ruiside: art_pi: add board support
Add support for the Ruiside ART-Pi (STM32H750XB).

Signed-off-by: Dejiang He <2995560796@qq.com>
2025-10-16 17:16:42 +03:00
Francois Ramu
2fba115143 drivers: clock control: stm32 common clock enables clk48
This commit enables the clk48 clock mux if STM32_CK48_ENABLED
is set by the device tree.

Signed-off-by: Francois Ramu <francois.ramu@st.com>
2025-10-16 17:16:31 +03:00
Francois Ramu
02f000084f include: drivers: stm32 clock mux CK48 definition
Define the STM32_CK48_ENABLED especially for the stm32F4 series
when ck48 node is enabled to leverage its already implemented support.

Signed-off-by: Francois Ramu <francois.ramu@st.com>
2025-10-16 17:16:31 +03:00
Quang Le
c4a522eeae boards: renesas: Add Watchdog support for RZ/A3UL, N2L, T2M
Add Watchdog support for board Renesas RZ/A3UL, N2L, T2M

Signed-off-by: Quang Le <quang.le.eb@bp.renesas.com>
Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
2025-10-16 17:16:19 +03:00
Quang Le
078af6b159 dts: renesas: Add Watchdog support for RZ/A3UL, N2L, T2M
Add Watchdog nodes to Renesas RZ/A3UL, N2L, T2M devicetree

Signed-off-by: Quang Le <quang.le.eb@bp.renesas.com>
Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
2025-10-16 17:16:19 +03:00
Quang Le
0611b01ca3 drivers: watchdog: Initial support for RZ/A3UL, N2L, T2M
Add Watchdog driver support for Renesas RZ/A3UL, N2L, T2M

Signed-off-by: Quang Le <quang.le.eb@bp.renesas.com>
Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
2025-10-16 17:16:19 +03:00
Quang Le
349de6a9c7 manifest: Update commit id for hal_renesas
Update commit id for hal_renesas

Signed-off-by: Quang Le <quang.le.eb@bp.renesas.com>
Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
2025-10-16 17:16:19 +03:00
Duy Nguyen
7157d15df6 MAINTAINERS: Update maintainer role for RX platform
Create Renesas RX Platform, add duynguyenxa as maintainer

Signed-off-by: Duy Nguyen <duy.nguyen.xa@renesas.com>
2025-10-16 17:16:03 +03:00
Lyle Zhu
40bba4057f Bluetooth: Classic: HFP_HF: Fix AT+CLCC can not be sent issue
Due to the flag `BT_HFP_HF_FLAG_CLCC_PENDING` is set when receiving
the +CIEV or +CIND notification, the command `AT+CLCC` will be
pending due to the flag is not cleared.

Add a flag `BT_HFP_HF_FLAG_INITIATING` to indicate the HF
initialization is ongoing.

Add a flag `BT_HFP_HF_FLAG_QUERY_CALLS` to indicate the current calls
list needs to be queried.

Set the flag `BT_HFP_HF_FLAG_INITIATING` at the beginning of the HF
initialization. Set the flag `BT_HFP_HF_FLAG_QUERY_CALLS` instead of
setting the flag `BT_HFP_HF_FLAG_CLCC_PENDING` if the current calls
list needs to be queried and the flag `BT_HFP_HF_FLAG_INITIATING` is
set.

After the HF initialization is done, query list of the current calls
by calling the function `hf_query_current_calls()` if the flag
`BT_HFP_HF_FLAG_QUERY_CALLS` is set.

Set the flag `BT_HFP_HF_FLAG_CLCC_PENDING` if it is not set in the
function `hf_query_current_calls()`.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-10-16 17:15:51 +03:00
Sylvio Alves
8d209b0926 timer: espressif: keep alarm disable support only for mcuboot
There is no need to disable systimer in application level
as the restart procedure automatically handles it.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2025-10-16 17:15:41 +03:00
Jun Lin
28434f8003 drivers: uart: npcx: support additional capabilities
This commit adds the following functionality support:
1. More baudrate setting.
2. 7 bit data moded.
3. Tx (CR_SOUT) and Rx (CR_SIN) signal invert.

Signed-off-by: Jun Lin <CHLin56@nuvoton.com>
2025-10-16 17:15:30 +03:00
Krzysztof Chruściński
3595c9d0d4 tests: pm: policy_api: Add test for locking all PM states
Add test case that validates behavior of pm_policy_state_all_lock_get
and pm_policy_state_all_lock_put.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-10-16 17:15:20 +03:00
Krzysztof Chruściński
336e89efd6 pm: policy: Add option to lock all power states
Add function for getting and putting a lock for all power states.
It is much faster version of requesting 0 us latency with actual
intention to disable all power states.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-10-16 17:15:20 +03:00
Jordan Yates
9f1e166abd modem: modem_ppp: optimise frame wrapping
Optimise the PPP frame wrapping process by performing all work inside a
single function into a contiguous buffer, instead of operating on the
ring buffer one byte at a time.

On a nRF54L15 (M33 @ 128 MHz) before the change:
```
Wrapping 1062 byte packet: ~4.1 ms
Wrapping 1355 byte packet: ~5.0 ms
```
After the change:
```
Wrapping 1026 byte packet: ~2.4 ms
Wrapping 1341 byte packet: ~3.1 ms
```

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-10-16 17:15:08 +03:00
Tom Burdick
6b350da5ec dma: Drop syscalls
DMA syscalls as they were implemented were unsafe. Accepting a void* was
never acceptable as many things could not be verified about it.
Accepting a channel identifier meant that a user mode thread could
start/stop any DMA channel which in theory could be owned by any other
driver. This shouldn't be possible.

Signed-off-by: Tom Burdick <thomas.burdick@intel.com>
2025-10-16 17:14:59 +03:00
Emil Gydesen
572d4d438b Bluetooth: BAP: BA: Improve some logging
Fix additional space in active receive states.
Add additional information when logging duplicate
broadcasts.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-10-16 17:14:20 +03:00
Emil Gydesen
cb9c64947f Bluetooth: CAP: Add missing failed_conn for reception_start
When cap_commander_broadcast_reception_start is called during the
handover, the failed_conn was not correctly.
It is now being set by cap_commander_broadcast_reception_start
and if that is called via handover, it will be correctly set.
If it is called via bt_cap_commander_broadcast_reception_start
then it will be cleared in case of error.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-10-16 17:14:08 +03:00
Pete Johanson
759eeb6fcd drivers: spi: Ensure MAX32 config is applied fully
Add a miniscule delay to ensure the MAX32 SPI config is applied and active
before returning and initiating any transactions.

Signed-off-by: Pete Johanson <pete.johanson@analog.com>
2025-10-16 17:13:55 +03:00
Arunprasath P
fc34981ea4 boards: microchip: pic32cm_jh01_cpro: Add PyOCD runner support
Add PyOCD runner support to enable flashing and programming
the pic32cm_jh01_cpro board using the PyOCD tool.

Signed-off-by: Arunprasath P <arunprasath.p@microchip.com>
2025-10-16 17:13:39 +03:00
Etienne Carriere
3884641585 drivers: mipi_dsi: stm32: don't mix HAL return value and errno
Correct mipi_dsi_stm32_host_init() and mipi_dsi_stm32_attach()
to return a valid errno instead of mixing HAL return values and
errno return values.

Clarify HAL return value is of type HAL_StatusTypeDef and not an
int in mipi_dsi_stm32_transfer().

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-10-16 17:13:28 +03:00
Etienne Carriere
99d1c5db09 drivers: display: stm32_ltdc: don't mix HAL return value and errno
Correct stm32_ltdc_set_pixel_format() to return a valid errno instead
of mixing HAL return values and errno return values.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-10-16 17:13:28 +03:00
Etienne Carriere
1c809f3c8a drivers: memc: test STM32 HAL return value in SDRAM driver
Add missing test of some HAL functions return value.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-10-16 17:13:16 +03:00
Etienne Carriere
b4a9874baf drivers: memc: test STM32 HAL return value in OSPI PSRAM driver
Add missing test of some HA functions return value.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-10-16 17:13:16 +03:00
Rob Cornall
ef6aad9ca6 boards: adi: add default max32655 storage partition
Add a default 64K storage partition for max32655 boards.
Remove no longer required overlays.

Signed-off-by: Rob Cornall <Rob.Cornall@analog.com>
2025-10-16 17:13:06 +03:00
Mahesh Mahadevan
2b0befcfbe drivers: hal_nxp: Disable quick access for Cortex-A only
Not needed on Cortex-A as all code and data is in DDR
memory and there is no quickaccess section in the Cortex-A
linker script.

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2025-10-16 17:12:55 +03:00
Abderrahmane JARMOUNI
3fe6fcf3d4 soc: stm32: Kconfig: fix options leak
Fix various Kconfig options leak

Signed-off-by: Abderrahmane JARMOUNI <git@jarmouni.me>
2025-10-16 17:12:27 +03:00
Abderrahmane JARMOUNI
ea71891fa2 drivers: usb: nrf_usbd_common: fix Kconfig leak
Fix Kconfig Log options leak

Signed-off-by: Abderrahmane JARMOUNI <git@jarmouni.me>
2025-10-16 17:12:27 +03:00
Vinayak Kariappa Chettimada
5e7f23f50f tests: bsim: Bluetooth: Fail on advertising start error
Add back test failure that was missed when fixing double
and redundant advertising start in
commit 7a672c05b3 ("Bluetooth: tests: bsim: Fix double
advertising in test_connect2").

Also, relates to commit 8cfad44852 ("Bluetooth: Deprecate
adv auto-resume").

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2025-10-16 17:12:17 +03:00
Ben Marsh
bb8e8e9c91 drivers: flash: stm32_{o|x}spi: Add Microchip-specific special case
Commit 76740ae added a special case to the STM32 QSPI driver to support
Microchip QSPI flash ICs, such as the SST26VF series,
which use the PP_1_1_4 opcode in PP_1_4_4 mode.

This commit adds the same special case to the STM32 OSPI and XSPI drivers.

Signed-off-by: Ben Marsh <ben.marsh@helvar.com>
2025-10-16 17:12:06 +03:00
Ben Marsh
633e9c75a2 drivers: flash: stm32_{o|x}spi: Add ULBPR support
Commits 72370b2 and ff34d57 added the requires-ulbpr
(Unlock Block Protection Register) property to the devicetree binding
for devices controlled by the STM32 QSPI peripheral, and support for
this property to the STM32 QSPI driver.
Some QSPI flash ICs (e.g. Microchip SST26VF series) require this
command to be sent before writing/erasing is possible.

This commit adds the same support to the STM32 OSPI and XSPI drivers.

Signed-off-by: Ben Marsh <ben.marsh@helvar.com>
2025-10-16 17:12:06 +03:00
Marcelo Roberto Jimenez
a96a4e7ee3 drivers: ethernet: Allow changing the MAC address of the slip interface
This patch adds the necessary switch option to the slip configuration
callback to enable the dynamic configuration of the MAC address of this
interface.

Signed-off-by: Marcelo Roberto Jimenez <marcelo.jimenez@gmail.com>
2025-10-16 17:11:55 +03:00
Cristian Bulacu
b6f5d6c93f samples: net: openthread: border_router: Update configuration
Updating border router configuration to increase sistem stability and
enable additional features required by Thread certification suite

-common:
Increased some thread stacks and enabled stack sentinel
Stack sentinel will be disabled once the sample will not be marked as
EXPERIMENTAL
Enabled link metrics, mac filtering, MLD reports
-nxp-wifi-rcp:
Increased number of multicast ipv6 address for conformance testing
Increased number of DNS SERVERS

Signed-off-by: Cristian Bulacu <cristian.bulacu@nxp.com>
2025-10-16 17:11:43 +03:00
Bartosz Miller
4ad24ca8b9 tests: drivers: flash: Add missing fixtures for nrf54h
All nrf54h flash tests require 'gpio_loopback' fixture

Signed-off-by: Bartosz Miller <bartosz.miller@nordicsemi.no>
2025-10-16 17:11:32 +03:00
Hake Huang
eacdaa315d tests: gpio: enable gpio_basic_api on arduino for frdm_rw612
enable gpio test on frdm_rw612 board
add hsgpio test on frdm_rw612

Signed-off-by: Hake Huang <hake.huang@nxp.com>
2025-10-16 17:11:22 +03:00
Guillaume Gautier
625e2acda8 drivers: adc: stm32: Rename sequencer and oversampler and fix macro issue
In STM32 ADC binding, rename the possible values of the sequencer and
oversampler properties to use lowercase string, similar to the internal
regulator.

Adapts the driver and the dtsi with the new values.

Fixes a macro issue in the driver. Since the value from the dtsi didn't
start with internal_regulator_, the reconstruction of the defines by
the macro ANY_ADC_INTERNAL_REGULATOR_TYPE_IS was missing this prefix and
the comparison failed. Add a new argument to the IS_EQ_STRING_PROP to be
able to insert such a prefix.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2025-10-16 17:11:12 +03:00
Mohamed Moawad
7920c385dc tests: kernel: fatal: Add ARC-specific stack protection test
Add ARC-specific variant of kernel.common.stack_protection test that
omits frame pointers to work around GNU toolchain code generation issue.

The GNU toolchain generates FP-relative memory accesses (st r0,[fp,-8])
for local variables when frame pointers are enabled, which bypasses ARC
hardware stack checking that only monitors SP-based instructions. This
causes the test to fail with MPU violations instead of
stack check violations.

Signed-off-by: Mohamed Moawad <moawad@synopsys.com>
2025-10-16 17:11:01 +03:00
Cristian Bulacu
a2b554c699 net: l2: openthread: Improve Border Router packet forwarding logic
There are some cases when OpenThread opens a sockets and doesn't choose
as default it's internal interface, this leading to usage of
platform UDP module which will then send back the packet to the
OpenThread interface. In this case, the packet should not be treated as
originated from backbone interface.

Backbone router multicast listener callback functionality is improved.
A route with a prefix length of 128 is set
and a multicast address is added for each listener registration.
OpenThread interface joins that multicast address group.

Enabled forwarding capabilities for Backbone interface.
A border router should be able to perform default packet forwarding for
destination addresses with a multicast scope greater than admin-local.
In order to achieve this, multicast routes have been added to those
addreses. [https://datatracker.ietf.org/doc/rfc7346/]

For Border Router application, `ip6_addr_cb` is not installed.
otIp6SubscribeMulticastAddress call would re-register an IPV6 multicast
address which might have been registered by an OpenThread node using
`ipmadd add` command and even if that node performed `ipmaddr del`,
the address was still present in multicast listener table. This also
led to a missing MLDv2 message with that specific multicast IPV6
address.

Signed-off-by: Cristian Bulacu <cristian.bulacu@nxp.com>
2025-10-16 17:10:51 +03:00
Divin Raj
f00aeb4b7b soc: fvp_aemv8r: Flash mpu region can't be set in case of no flash
Some platforms do not have flash memory. The flash mpu region cannot
be created in case CONFIG_FLASH_SIZE is zero.

Signed-off-by: Yanqin Wei <yanqin.wei@arm.com>
Signed-off-by: Divin Raj <divin.raj@arm.com>
2025-10-16 17:10:35 +03:00
Julien Vermillard
9ee47f2856 net: lwm2m: add cache filtering
Introduce `lwm2m_set_cache_filter()` so applications can drop cached
samples before they reach the LwM2M SEND path.

Fixes #91590

Signed-off-by: Julien Vermillard <julien@clunkymachines.com>
2025-10-16 17:10:24 +03:00
Mathieu Choplain
70a1a49930 release-notes: 4.3: add STM32 LPTIM clock source Kconfig removal notice
Add notice about removal of LPTIM clock source configuration through
Kconfig in the Zephyr 4.3 release notes.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-10-16 17:10:11 +03:00
Mathieu Choplain
0a5a607c77 drivers: timer: stm32_lptim: drop clock source configuration via Kconfig
Remove the possibility to configure the LPTIM timer clock source
through Kconfig. The deprecation warning was added 3 years ago in
Zephyr 3.2 by commit bbac316be7867d44bcb9f3600fcb2e77f7237223; more
than enough time has elapsed for this option to be removed.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-10-16 17:10:11 +03:00
Felix Wang
94f525eeb9 dirvers: pwm: Fix pwm_mcux_tpm build error.
Combine mode is not for all TPM IP depneds
on IP version, which is necessary for PWM capture feature.
Add pre-process check and wrap
mcux_tpm_capture_data with CONFIG_PWM_CAPTURE macro.

Signed-off-by: Felix Wang <fei.wang_3@nxp.com>
2025-10-16 17:09:56 +03:00
Alberto Escolar Piedras
8e90dc222f manifest: update EDTT to latest
Update the HW models module to:
c282625e694f0b53ea53e13231ea6d2f49411768

Including the following:
c282625 Fix broken link in Readme.md

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-10-16 17:09:47 +03:00
Benjamin Cabé
61d38979fc ci: doc-build.yml: do not tweak manifest.project-filter unnecessarily
The documentation build shouldn't need to pull in anything beyond what's
active by default in the west.yml manifest. In fact, due to the way the
manifest_projects_table.py script currently works, it is important that
have a local west config that's "vanilla" so that the table of
active/inactive projects is correct.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-10-16 17:09:36 +03:00
Alberto Escolar Piedras
499f23f236 drivers: modem: sim7080: Remove orphan file
drivers/modem/simcom-sim7080.c is not built.
And the author indicates it was added to the tree in error.
Let's remove it.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-10-16 17:09:25 +03:00
Alberto Escolar Piedras
d6420bb1c7 drivers: modem: sim7080: Fix invalid call to strtok_r
The second parameter to strtok_r cannot be null.
It is the separator strtok is meant to search for, and it is
not kept anywhere in the saved state (the saved state
is just a pointer to the next piece of the original string).

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-10-16 17:09:25 +03:00
Alberto Escolar Piedras
0778076972 drivers: modem: sim7080: Fix missing prototype of strtok_r
strtok_r is a POSIX extension of string.h. To ensure this C library
header provides the prototype we need to define _POSIX_C_SOURCE.
So let's do so.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-10-16 17:09:25 +03:00
Pieter De Gendt
aad2408b30 scripts: Don't use isort known-first-party
Partially revert 1bcc065224

This change impacts all other scripts that import those modules, while
those weren't updated.

It will be hard to maintain this list, whilst keeping the entire tree
compliant.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-10-16 17:09:14 +03:00
Qingsong Gou
bcc4689cd0 drivers: watchdog: add watchdog driver for sf32lb platform
Add initial watchdog driver for SF32LB platform

Signed-off-by: Qingsong Gou <gouqs@hotmail.com>
2025-10-15 17:38:09 -04:00
Qingsong Gou
7bd0604631 dts: arm: sifli: sf32lb52x: add watchdog def
Add watchdog controller

Signed-off-by: Qingsong Gou <gouqs@hotmail.com>
2025-10-15 17:38:09 -04:00
Qingsong Gou
69c6cc79c9 dts: bindings: watchdog: add watchdog bindings
Add watchdog bingdings for sf32lb

Signed-off-by: Qingsong Gou <gouqs@hotmail.com>
2025-10-15 17:38:09 -04:00
Lukas Gehreke
9e69628d5e drivers: modem: sim7080: Made dns timeout and retry configurable
Timeout and retries for DNS lookups were hardcoded. This commit
introduces kconfig settings for the default values and functions
for runtime configuration.

Signed-off-by: Lukas Gehreke <lk.gehreke@gmail.com>
2025-10-15 17:37:58 -04:00
Lukas Gehreke
d81dbba660 drivers: modem: sim7080: Added missing doxygen docu to public header.
Added missing doxygen comments to public header.

Signed-off-by: Lukas Gehreke <lk.gehreke@gmail.com>
2025-10-15 17:37:58 -04:00
Lukas Gehreke
11710b6cf1 drivers: modem: sim7080: removed error label in modem_setup
Removed label because the compliance checks fail.

Signed-off-by: Lukas Gehreke <lk.gehreke@gmail.com>
2025-10-15 17:37:58 -04:00
Lukas Gehreke
2659d38a9a drivers: modem: Fixed style issues of sim7080 driver
Fixed zephyr style violations.

Signed-off-by: Lukas Gehreke <lk.gehreke@gmail.com>
2025-10-15 17:37:58 -04:00
Lukas Gehreke
7e20fd8842 drivers: modem: sim7080: Allwing ftp when networking is already active
Added check that makes sure ftp works when the network context is
already active.

Signed-off-by: Lukas Gehreke <lk.gehreke@gmail.com>
2025-10-15 17:37:58 -04:00
Lukas Gehreke
aa270c04e8 drivers: modem: sim7080: added force reset function.
Added function to forcefully reset the modem by holding the pwrkey
for 15 seconds.

Signed-off-by: Lukas Gehreke <lk.gehreke@gmail.com>
2025-10-15 17:37:58 -04:00
Lukas Gehreke
b991d778ed drivers: modem: sim7080: querying xtra validity during gnss start
Starting gnss with xtra functionality is only possible if the
validity of the xtra file was queried. Enabling xtra will be skipped
if the file is not valid

Signed-off-by: Lukas Gehreke <lk.gehreke@gmail.com>
2025-10-15 17:37:58 -04:00
Lukas Gehreke
e8b9a8a88e drivers: modem: sim7080: added function to query local time
Added funtion to query local time and added injection time to
gnss xtra validity query function.

Signed-off-by: Lukas Gehreke <lk.gehreke@gmail.com>
2025-10-15 17:37:58 -04:00
Lukas Gehreke
bc6584cd8b drivers: sim7080: implemented gnss xtra functionality.
Added funtions to download a gnss xtra file, query its validity
and use it in gps.

Signed-off-by: Lukas Gehreke <lk.gehreke@gmail.com>
2025-10-15 17:37:58 -04:00
Lukas Gehreke
0a0c595c12 drivers: modem: sim7080: added command to inquire ue system information
Added command to query ue system information from the modem.

Signed-off-by: Lukas Gehreke <lk.gehreke@gmail.com>
2025-10-15 17:37:58 -04:00
Lukas Gehreke
2727c2d461 drivers: modem: sim7080: added function to query the modem state.
Added function to query the modem state from application side.

Signed-off-by: Lukas Gehreke <lk.gehreke@gmail.com>
2025-10-15 17:37:58 -04:00
Lukas Gehreke
0d4757b07c drivers: modem: Added battery measurement function for sim7080
Added function to measure battery voltage, battery charge status
and battery connection level.

Signed-off-by: Lukas Gehreke <lk.gehreke@gmail.com>
2025-10-15 17:37:58 -04:00
Lukas Gehreke
c1e765dcad drivers: modem: sim7080: added function to get iccid
Added function to get the iccid number.

Signed-off-by: Lukas Gehreke <lk.gehreke@gmail.com>
2025-10-15 17:37:58 -04:00
Lukas Gehreke
08e665360e drivers: modem: sim7080: added gpio set function
Added functionality to set modem gpio pins.

Signed-off-by: Lukas Gehreke <lk.gehreke@gmail.com>
2025-10-15 17:37:58 -04:00
Lukas Gehreke
60fa41300a drivers: modem: sim7080: preventing recvfrom hangup on closed socket
If a socket gets closed by the network while waiting on data
in offload_recvfrom this would hangup forever since modem_socket_wait_data
does not support timeouts. When the socket gets closed this wait is
unblocked.

Signed-off-by: Lukas Gehreke <lk.gehreke@gmail.com>
2025-10-15 17:37:58 -04:00
Lukas Gehreke
c4ee364d48 drivers: modem: sim7080: socket can be closed if not connected
Removed connected check from offload_close in order to be able
to close non-connected sockets.

Signed-off-by: Lukas Gehreke <lk.gehreke@gmail.com>
2025-10-15 17:37:58 -04:00
Lukas Gehreke
c72f903a00 drivers: modem: sim7080: fixed socket connect behavior
The modem handler error can not be used to transport the result
of CAOPEN since it is overwritten by the trailing OK.
Socket does not get closed forcefully when connecting failed.

Signed-off-by: Lukas Gehreke <lk.gehreke@gmail.com>
2025-10-15 17:37:58 -04:00
Lukas Gehreke
5dcab4fb7a drivers: modem: sim7080: Corrected socket send sequence.
Query available tx size before sending data instead of using
hardcoded number. Removed unnecessary strg+z send after data.

Signed-off-by: Lukas Gehreke <lk.gehreke@gmail.com>
2025-10-15 17:37:58 -04:00
Lukas Gehreke
b2cd9f98d2 drivers: modem: fixed offload_connect for sim7080
Connection id and pdp index were swapped. Corrected this and
hardcoded pdp index since 0 is always used as index.

Signed-off-by: Lukas Gehreke <lk.gehreke@gmail.com>
2025-10-15 17:37:58 -04:00
Lukas Gehreke
8324f86754 drivers: modem: sim7080: removed sleep from offload_sendmsg
Removed sleep to prevent infinite loop in sendmsg.

Signed-off-by: Lukas Gehreke <lk.gehreke@gmail.com>
2025-10-15 17:37:58 -04:00
Lukas Gehreke
534a758863 drivers: modem: corrected sim7080 socket error codes.
Socket functions return EINVAL instead of EAGAIN when modem is
not in networking mode. Using EAGAIN could lead to a infinite sleep
loop in offload_sendmsg().

Signed-off-by: Lukas Gehreke <lk.gehreke@gmail.com>
2025-10-15 17:37:58 -04:00
Lukas Gehreke
0347fc80c6 drivers: modem: moved sim7080 socket related urc handling to socket file
Moved socket related urc handling to dedicated file.

Signed-off-by: Lukas Gehreke <lk.gehreke@gmail.com>
2025-10-15 17:37:58 -04:00
Lukas Gehreke
fcf9bdce36 drivers: modem: sim7080: added stop functions for network and gnss
Network and gnss can be disabled with stop functions instead of power
cycling the modem. The start functions will also not power cycle the
modem. In order to call the start functions the modem needs to be
booted.

Signed-off-by: Lukas Gehreke <lk.gehreke@gmail.com>
2025-10-15 17:37:58 -04:00
Lukas Gehreke
3f011f1313 drivers: modem: Implemented boot modes for sim7080
Modem can either attach to network after initialization or be turned
off.

Signed-off-by: Lukas Gehreke <lk.gehreke@gmail.com>
2025-10-15 17:37:58 -04:00
Lukas Gehreke
a720cade17 drivers: modem: sim7080: own file for pdp handling
PDP context handling takes place in separate source file for better
readability.

Signed-off-by: Lukas Gehreke <lk.gehreke@gmail.com>
2025-10-15 17:37:58 -04:00
Lukas Gehreke
8c7c5f4ec1 drivers: modem: Added modem model check to sim7080 driver
Check the modem model on boot.

Signed-off-by: Lukas Gehreke <lk.gehreke@gmail.com>
2025-10-15 17:37:58 -04:00
Lukas Gehreke
1e95b68a08 drivers: modem: Using fixed baudrate for sim7080
On first boot a fixed baudrate is set for the sim7080. This makes power
on detection more reliable.

Signed-off-by: Lukas Gehreke <lk.gehreke@gmail.com>
2025-10-15 17:37:58 -04:00
Lukas Gehreke
4527709919 drivers: sim7080: Own simcom modem driver directory
Placed sim7080 driver in separate directory and split it in multiple
source files for better readability.

Signed-off-by: Lukas Gehreke <lk.gehreke@gmail.com>
2025-10-15 17:37:58 -04:00
Arunmani Alagarsamy
2c4c38dd88 doc: wifi: siwx91x: Add documentation for Wi-Fi features
Add documentation for regulatory domain configuration, maximum TX
power, and RTS threshold support in the SiWx91x Wi-Fi driver.

Signed-off-by: Arunmani Alagarsamy <arunmani.a@silabs.com>
2025-10-15 17:37:22 -04:00
Maochen Wang
1bb4e5dacd boards: nxp: set default value for NXP_FW_DUMP_FLASH_START_ADDR
Set different default value for NXP_FW_DUMP_FLASH_START_ADDR, based on
mimxrt1060_evk board and rw612 soc.

Signed-off-by: Maochen Wang <maochen.wang@nxp.com>
2025-10-15 17:37:11 -04:00
Maochen Wang
2043603363 samples: net: wifi: enable NXP_WIFI_FW_DEBUG for RW612 and IW610
Enable NXP_WIFI_FW_DEBUG for RW612 and IW610 to support save FW dump
into flash for debug purpose.

Signed-off-by: Maochen Wang <maochen.wang@nxp.com>
2025-10-15 17:37:11 -04:00
Maochen Wang
fdbc464489 modules: hal_nxp: build flexspi and mflash for FW dump case
Build flexspi and mflash to support save the FW dump into flash for
debug purpose.

Signed-off-by: Maochen Wang <maochen.wang@nxp.com>
2025-10-15 17:37:11 -04:00
Maochen Wang
8bb7d35d75 drivers: wifi: nxp: update Kconfig to support FW dump
Remove the redundant dependency of NXP_WIFI_EXTRA_DEBUG in Kconfig.
Add NXP_FW_DUMP_FLASH_START_ADDR for the start address in flash to
store FW dump.
Add NXP_FW_DUMP_FLASH_ERASE_LENGTH for the erased length in flash
to store FW dump.

Signed-off-by: Maochen Wang <maochen.wang@nxp.com>
2025-10-15 17:37:11 -04:00
Maochen Wang
078d9729fd manifest: sync hal_nxp to upgrade NXP wifi driver
upgrade wifi driver version to r52.p11.
fix several bugs and support fw dump.

Signed-off-by: Maochen Wang <maochen.wang@nxp.com>
2025-10-15 17:37:11 -04:00
Sebastian Bøe
35b89abd61 soc: nordic: uicr: Add safety flag for permanent device transition
Add --permit-permanently-transitioning-device-to-deployed safety flag
to gen_uicr.py, required when enabling both UICR.LOCK and
UICR.ERASEPROTECT together. This prevents accidental permanent locking
of devices since this combination makes the configuration irreversible.

Signed-off-by: Sebastian Bøe <sebastian.boe@nordicsemi.no>
2025-10-15 17:37:02 -04:00
Sebastian Bøe
1438f8ae69 soc: nordic: uicr: Add support for UICR.APPROTECT
Add support for UICR.APPROTECT configuration, which controls debugger
and access-port permissions through the TAMPC peripheral.

This introduces three Kconfig options that allow independent control
over access port protection for different processor domains:

- GEN_UICR_APPROTECT_APPLICATION_PROTECTED: Controls debug access to
  the application domain processor
- GEN_UICR_APPROTECT_RADIOCORE_PROTECTED: Controls debug access to
  the radio core processor
- GEN_UICR_APPROTECT_CORESIGHT_PROTECTED: Controls access to the
  CoreSight debug infrastructure

When enabled, each option sets the corresponding UICR.APPROTECT
register to PROTECTED (0xFFFFFFFF), which disables debug access for
that domain. When disabled, the registers remain at their erased value
(UNPROTECTED), allowing full debug access.

This feature is critical for production devices where debug access must
be restricted to prevent unauthorized access to sensitive code and data.

Signed-off-by: Sebastian Bøe <sebastian.boe@nordicsemi.no>
2025-10-15 17:37:02 -04:00
Sebastian Bøe
e20352d80a soc: nordic: uicr: Add support for UICR.ERASEPROTECT
Add support for UICR.ERASEPROTECT configuration, which blocks ERASEALL
operations to prevent bulk erasure of protected memory.

This introduces a Kconfig option GEN_UICR_ERASEPROTECT that enables
blocking of ERASEALL operations on NVR0, preserving UICR settings even
if an attacker attempts a full-chip erase.

This is a critical security feature for production devices. When enabled
together with UICR.LOCK, it becomes impossible to modify the UICR in
any way, establishing a permanent device protection scheme. Due to this
irreversibility, it should only be enabled during the final stages of
production.

When enabled, the gen_uicr.py script sets UICR.ERASEPROTECT to
0xFFFFFFFF, which prevents the ERASEALL command from affecting the
NVR0 page.

Signed-off-by: Sebastian Bøe <sebastian.boe@nordicsemi.no>
2025-10-15 17:37:02 -04:00
Sebastian Bøe
1ffdf09c25 soc: nordic: uicr: Add support for UICR.LOCK
Add support for UICR.LOCK configuration, which locks the entire UICR
configuration in NVR0 to prevent unauthorized modifications.

This introduces a Kconfig option GEN_UICR_LOCK that enables locking
of the UICR. Once locked, the UICR can only be modified by performing
an ERASEALL operation.

This is a critical security feature for production devices, typically
enabled alongside UICR.APPROTECT, UICR.PROTECTEDMEM, and
UICR.ERASEPROTECT to establish a complete device protection scheme.

When enabled, the gen_uicr.py script sets UICR.LOCK to 0xFFFFFFFF,
which configures the NVR0 page as read-only and enforces integrity
checks on the UICR content.

Signed-off-by: Sebastian Bøe <sebastian.boe@nordicsemi.no>
2025-10-15 17:37:02 -04:00
Sebastian Bøe
c3f6b8cb34 soc: nordic: uicr: Add support for UICR.SECONDARY.PROTECTEDMEM
Add support for UICR.SECONDARY.PROTECTEDMEM configuration, which enables
configuration of the protected memory region for secondary firmware.

This introduces Kconfig options for configuring:
- GEN_UICR_SECONDARY_PROTECTEDMEM - Enable/disable protected memory
  for secondary firmware
- GEN_UICR_SECONDARY_PROTECTEDMEM_SIZE_BYTES - Size of the protected
  memory region in bytes

The implementation validates that the configured size is divisible by
4096 bytes (4 KiB) as required by the hardware, and converts it to
4 KiB units when writing to UICR.SECONDARY.PROTECTEDMEM.SIZE4KB.

Signed-off-by: Sebastian Bøe <sebastian.boe@nordicsemi.no>
2025-10-15 17:37:02 -04:00
Sebastian Bøe
9dc2b614d6 soc: nordic: uicr: Add support for UICR.SECONDARY.TRIGGER
Add support for UICR.SECONDARY.TRIGGER configuration, which enables
automatic booting of secondary firmware based on specific reset reasons.

This introduces Kconfig options for configuring:
- UICR.SECONDARY.TRIGGER.ENABLE - Enable/disable automatic triggers
- UICR.SECONDARY.TRIGGER.RESETREAS - Bitmask of reset reasons that
  trigger secondary firmware boot

Individual Kconfig options are provided for each reset reason:
- APPLICATIONWDT0/1 - Application core watchdog timeouts
- APPLICATIONLOCKUP - Application core CPU lockup
- RADIOCOREWDT0/1 - Radio core watchdog timeouts
- RADIOCORELOCKUP - Radio core CPU lockup

Signed-off-by: Sebastian Bøe <sebastian.boe@nordicsemi.no>
2025-10-15 17:37:02 -04:00
Sebastian Bøe
af32ebd198 soc: nordic: uicr: Add support for UICR.WDTSTART
Add support for UICR.WDTSTART.

UICR.WDTSTART configures the automatic start of a local watchdog timer
before the application core is booted. This provides early system
protection ensuring that the system can recover from early boot
failures.

Signed-off-by: Sebastian Bøe <sebastian.boe@nordicsemi.no>
2025-10-15 17:37:02 -04:00
Max Meidinger
24321d5b98 drivers: serial: virtio_console: fix port adding during poll
Fix an issue where it was not possible to use a console port for
receiving data when the console port was added after receiving was
already requested

Signed-off-by: Max Meidinger <mmeidinger@internships.antmicro.com>
2025-10-15 17:36:48 -04:00
Qingsong Gou
4e2dfe348d drivers: reset: add reset driver support for sf32lb
add reset driver for sf32lb platform

Signed-off-by: Qingsong Gou <gouqs@hotmail.com>
2025-10-15 17:36:32 -04:00
Qingsong Gou
03f020a9f7 dts: arm: sifli: sf32lb52x: define reset
Add node for Reset peripheral

Signed-off-by: Qingsong Gou <gouqs@hotmail.com>
2025-10-15 17:36:32 -04:00
Qingsong Gou
58ae2c98cc dts: bindings: reset: sf32lb: add reset define
Add reset controller

Signed-off-by: Qingsong Gou <gouqs@hotmail.com>
2025-10-15 17:36:32 -04:00
Łukasz Fundakowski
2d60533558 twister: Refactor twister tests
- Removed redundant `sys.path.insert`
- Fixed imports order to follow PEP8 style

Signed-off-by: Łukasz Fundakowski <lukasz.fundakowski@nordicsemi.no>
2025-10-15 17:36:11 -04:00
Firas Sammoura
9482f8df02 riscv: pmp: Add helper to write PMP configuration CSRs
Introduce `z_riscv_pmp_write_config` to abstract writing to pmpcfg
registers. This function handles the differing register layouts and slot
counts between RV32 and RV64 architectures, writing to the appropriate
pmpcfg0, pmpcfg1, pmpcfg2, or pmpcfg3 CSRs as needed based on
CONFIG_PMP_SLOTS.

Signed-off-by: Firas Sammoura <fsammoura@google.com>
2025-10-15 17:35:51 -04:00
Alain Volmat
b24004fa5d samples: video: tcpserversink: add STM32N6570_DK VENC support
Add STM32N6570_DK specific conf files and overlays in order to enable
the VENC encoder.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-10-15 17:35:25 -04:00
Alain Volmat
dca21b45ac Revert "snippets: stm32: addition of video-stm32-venc"
This reverts commit 2654845b93.

The conf file embedded within the snippet are setting sample
specific Kconfig, making its usage impossible with other
application.
Remove the snippet and introduce instead board specific
config & overlay including venc file_suffix in order to allow
future addition of other encoders available on the same
board.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-10-15 17:35:25 -04:00
Alain Volmat
3a4f17454f drivers: video: stm32-venc: depends on VIDEO_ENCODER_H264
Make the STM32 VENC driver depends on the VIDEO_ENCODER_H264
in order to be compiled only if VIDEO_ENCODER_H264 is
enabled by an application.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-10-15 17:35:25 -04:00
Alain Volmat
f556a1b908 drivers: video: add encoders related Kconfig entries
Add video subsystem related Kconfig in order to allow an
application to enable encoder support.
This is useful for platforms having several video devices
available as well as several video encoders, since it allows
to only compile / enable part of those devices depending on
their kind.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-10-15 17:35:25 -04:00
Alain Volmat
7835d6e354 boards: st: stm32n6570_dk: enable the venc driver
The stm32n6570_dk device-tree describing the hardware available
on this board, the Video ENCoder (VENC) status should be enabled,
and its usage should be enabled or not based on the
sample / application configuration.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-10-15 17:35:25 -04:00
Lena Voytek
eca747a72d boards: add the zephyr_i2c to adafruit_feather_esp32
Match the behavior of other Adafruit boards by including the
zephyr_i2c label to allow the use of JST SH I2C shields.

Signed-off-by: Lena Voytek <lena@voytek.dev>
2025-10-15 17:35:15 -04:00
Benjamin Cabé
3397fde58c doc: doxygen: add Zephyr favicon
Ensure doxygen docs have a favicon in the browser tab

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-10-15 17:34:56 -04:00
Daniel Leung
545d40e314 tests: mem_protect/userspace: add thread switching tests
This adds a few tests to test switching between threads where
they are under different memory domains. This is mainly to test
if permissions are set correctly during context switch.

By default the new tests are disabled and must be explicitly
enabled. This is due to some architectures requiring some config
changes (for example, x86 needing more reserved memory domains,
and ARM64 needing more translation tables). To avoid causing
mass CI failures, only enable platforms that have been tested,
for now.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-10-15 11:47:25 -04:00
Daniel Leung
1a6a1bf28b tests: mem_protect/userspace: fix privilege stack ptr for Xtensa
The priv_stack_ptr for reading and writing tests was not set
correctly on Xtensa, and was always 0. Test would pass since
the NULL page should always generate access faults on most
Xtensa platforms. However, those tests are supposed to test
reading and writing to the privilege stack. So fix that by
populating the priv_stack_ptr correctly.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-10-15 11:47:25 -04:00
Daniel Leung
95d260e77e xtensa: mmu/ptables: rename flags to attrs under arch_mem_map()
arch_mem_map() takes in some flags to describe the to-be mapped
memory regions' permissions and cache status. When the flags are
translated, they become attributes in PTEs. So for functions
being called by arch_mem_map() and beyond, rename flags to
attrs to better describe its purpose.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-10-15 11:47:25 -04:00
Daniel Leung
84ade183ed xtensa: mmu: cosmetic changes to page table variable names
In functions which manipulate both L1 and L2 tables, make
the variable names obvious by prefixing them with l1_ or l2_.
This is mainly done to avoid confusion when reading through
those functions.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-10-15 11:47:25 -04:00
Daniel Leung
e709cbe3c8 xtensa: mmu: fix __arch_mem_map assert message
The assert error messages when l2_page_table_map() fails are not
correct. It returns false when it cannot allocate new L2 table,
and it is not able the address having already mapped. So correct
the error message.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-10-15 11:47:25 -04:00
Daniel Leung
1f07b5b190 xtensa: userspace: save PS to thread struct later
This is simply done to conserve code space in the vector text
areas. These vector text areas are very small and we should
only put code that is absolutely necessary for interrupt and
exception entrance. The saving of PS into the thread struct
can be deferred a bit. So do that.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-10-15 11:47:25 -04:00
Daniel Leung
4709e3feb9 xtensa: rename xtensa_asm2_s.h to xtensa_asm2.inc.S
xtensa_asm2_s.h is not exactly a C header. Rename it to
xtensa_asm2.inc.S to clearly state that it is has assembly
code in it as its main purpose is to declare assembly macros.
This is being done to keep checkpatch.pl from treating it as
C file and complaining about non-C syntax.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-10-15 11:47:25 -04:00
Daniel Leung
6b082061cc xtensa: move saved FPU and HIFI registers to end of BSA
This moves the block of FPU and HIFI registers in the Base Save
Area (BSA), used during interrupts and exceptions, to the end of
the block. This is done to minimize code usage in the vector
text section. During interrupt entrance, the code stores a small
set of registers first before jumping to the long handler. When
the offset to these registers from the beginning of BSA is small
enough, the compiler will emit S32I.N instead of S32I. This
saves us one byte per store (2 vs 3 bytes). This is mainly done
to avoid overflowing the vector text area.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-10-15 11:47:25 -04:00
Daniel Leung
6877bc8644 xtensa: userspace: handle DTLB multihit exception
This adds a function to handle DTLB multihit exception when
userspace is enabled, as this exception may be raised due to
the same page being able to accessed by both kernel and user
threads. The auto-refill DTLBs may contain entries for same
page, one for kernel and one for user under some situations.
We need to invalidate those existing DTLB entries so that
hardware can reload from the page table.

This is an alternative to the kconfig invalidating DTLBs on
every swap: CONFIG_XTENSA_MMU_FLUSH_AUTOREFILL_DTLBS_ON_SWAP.
Although this does not have extra processing per context
switching, exception handling itself has a high cost. So
care needs to be taken on whether to enable that kconfig.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-10-15 11:47:25 -04:00
Daniel Leung
d3a126cb5d xtensa: userspace: handle load/store ring exception
When a page can be accessed by both kernel and user threads,
the autofill DTLB may contain an entry for kernel thread.
This will result in load/store ring exception when it is
accessed by user thread later. In this case, we need to
invalidate all associated TLBs related to kernel access so
hardware can reload the page table the correct permission
for user thread.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-10-15 11:47:25 -04:00
Daniel Leung
9f0f59649b xtensa: save EXCCAUSE/EXCVADDR in BSA during exception
This saves the EXCCAUSE and EXCVADDR into BSA during exception.
These will then be used during exception handling. The reason
for doing this instead of reading from both registers during
exception handing is that another exception will override
the value in these register (e.g. DTLB miss). When returning to
the previous exception handler, these register no longer
contains the original exception cause and address. We need to
save it so that we are actually handling the orignal exception.

Coredump also now uses the EXCCAUSE and EXCVADDR from BSA
instead of reading the registers.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-10-15 11:47:25 -04:00
Daniel Leung
c76b338ec4 xtensa: mmu: properly restore PTE attributes via reset_region()
The software bits inside PTE are used to store original PTE
attributes and ring value, and those bits are used to
restore PTE to previous state.

This modifies reset_region() to properly restore attributes
and ring value when resetting memory regions to the same as
when the system boots.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-10-15 11:47:25 -04:00
Daniel Leung
f2cf818f67 xtensa: fatal: use named macros for PS register bits...
...instead of magic numbers when printing exception information.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-10-15 11:47:25 -04:00
Khoa Nguyen
0f8f14e478 samples: subsys: ipc: Update sram label for Renesas devices
Update sram label for Renesas devices

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-10-15 11:47:07 -04:00
Khoa Nguyen
ed03475489 tests: drivers: flash: Add support flash/common to test MRAM
Add support test app `flash/common` to test MRAM on
Renesas ek_ra8p1, mck_ra8t2

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-10-15 11:47:07 -04:00
Khoa Nguyen
9b97367765 boards: renesas: Update zephyr,flash to MRAM label
Update zephyr,flash to MRAM label for ek_ra8p1 and mck_ra8t2

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-10-15 11:47:07 -04:00
Khoa Nguyen
90ab7501cd dts: arm: renesas: ra: Add support MRAM node on SoC dts layer
- Add support MRAM node on Renesas SoC dts layer for RA8P1, RA8T2
- Move the MRAM and SRAM resource defination to SoC dts layer

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-10-15 11:47:07 -04:00
Khoa Nguyen
cf66b0cb65 drivers: flash: Add support Renesas MRAM driver
Add support Renesas MRAM driver for RA devices

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-10-15 11:47:07 -04:00
Elmo Lan
87a6d5b77d driver: espi_rts5912: Set STS0 only when input buffer has data
When using the eSPI peripheral channel for HOST_CMD,
the STS0 bit indicates that EC is busy.
To reflect this properly,
STS0 should only be set when there is actual input data to process.

This avoids falsely signaling a busy state when there is no data.

Signed-off-by: Elmo Lan <elmo_lan@realtek.com>
2025-10-15 11:46:47 -04:00
Flavio Ceolin
dabe815663 bt: host/classic: Fix possible integer overflow
Invalid header length and cause an integer overflow in
bt_br_acl_recv leading to undesired behavior.

Signed-off-by: Flavio Ceolin <flavio@hubblenetwork.com>
2025-10-15 11:46:13 -04:00
Chris Friedt
2b8e614dca doc: posix: move sched_yield() from to POSIX_THREADS_base
Move `sched_yield()` from the `_POSIX_PRIORITY_SCHEDULING` Option to the
`POSIX_THREADS_BASE` Option Group.

For more information, please see
https://pubs.opengroup.org/onlinepubs/9799919799/xrat/V4_subprofiles.html

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-10-15 11:46:00 -04:00
Chris Friedt
8f899db04d posix: sched: move sched_yield() to pthread.c
The `sched_yield()` function was originally included to facilitate the of
POSIX_REALTIME and POSIX_THREADS_EXT Option Groups in Issue 5.

It was then marked as part of the _POSIX_PROCESS_SCHEDULING Option in
Issue 6, but then was not clearly marked as part of the
POSIX_THREADS(_BASE) Option Group until Issue 7.

Moving it to `pthread.c` (and making it a function with regular
linkage rather than inline) ensures that it will be available with the
`POSIX_THREADS` Option Group.

For more information, please see `POSIX_THREADS_BASE` in
https://pubs.opengroup.org/onlinepubs/9699919799/xrat/\
V4_subprofiles.html and
https://pubs.opengroup.org/onlinepubs/9799919799/xrat/\
V4_subprofiles.html

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-10-15 11:46:00 -04:00
Tommi Kangas
c01c4e9242 boards: nrf9280pdk: Add workaround for SoC1.1 data cache issue
Added a workaround for nRF9280 SoC1.1 data cache related issue.

Signed-off-by: Tommi Kangas <tommi.kangas@nordicsemi.no>
2025-10-15 11:45:49 -04:00
Arunprasath P
51ab0a29b4 boards: microchip: add PIC32CM JH01 Curiosity Nano Evaluation Kit support
Add initial support for the Microchip PIC32CM JH01 Curiosity Nano board
Product page: https://www.microchip.com/en-us/development-tool/ev29g58a

Signed-off-by: Arunprasath P <arunprasath.p@microchip.com>
2025-10-15 11:45:41 -04:00
Travis Lam
0042c1d299 soc: nordic: instantiate NRF_PLATFORM_LUMOS kconfig
Instantiate NRF_PLATFORM_LUMOS for all nrf lumos product,
Add NRF_SKIP_CLOCK_CONFIG kconfig to be a general kconfig
in nordic soc Kconfig, so that it can be used by other
lumos product.

Signed-off-by: Travis Lam <travis.lam@nordicsemi.no>
2025-10-15 11:43:33 -04:00
Peter van der Perk
268179035c drivers: i3c_mcux: Improve timeout handling
Don't wait indefinitely on registers instead do a timeout and
restore to the IDLE state. Further fixes an issue that errnwarn
mask got shared by multiple instances of i3c

Signed-off-by: Peter van der Perk <peter.vanderperk@nxp.com>
2025-10-15 11:43:19 -04:00
Ludvig Jordet
f998357015 Bluetooth: Mesh: Minor cleanup of prov link close on success
Changes the link close upon success to use the `prov_link_close` helper
function instead of doing it manually, as minor cleanup.

Signed-off-by: Ludvig Jordet <ludvig.jordet@nordicsemi.no>
2025-10-15 11:43:00 -04:00
Ludvig Jordet
1c6f98aaf2 Bluetooth: Mesh: Provisioner closes link on failed
According to MshPrt 5.4.4, The Provisioner, upon receiving the
Provisioning Failed PDU, shall assume that the provisioning failed and
immediately disconnect the provisioning bearer.

Signed-off-by: Ludvig Jordet <ludvig.jordet@nordicsemi.no>
2025-10-15 11:43:00 -04:00
Jamie McCrae
9f8f441300 samples: net: common: Fix variable usage
Fixes variable usage to not use long deprecated environmental
values

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-10-15 11:42:45 -04:00
Tomi Fontanilles
cc40382ef1 MAINTAINERS: remove tomi-font from modem collaborators
Remove myself from this area. I'm not working with this anymore and I
don't really have the bandwidth to properly review significant changes.

Signed-off-by: Tomi Fontanilles <tomi.fontanilles@nordicsemi.no>
2025-10-15 11:42:01 -04:00
Benjamin Cabé
1962a63beb include: storage: stream_flash: doc: hide stream_flash_ctx internals
stream_flash_ctx is opaque so actually ensure that Doxygen treat all its
fields as hidden from the public documentation.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-10-15 11:41:49 -04:00
Jordan Yates
7c82c06159 doc: networking: conn_mgr: document idle timeouts
Add documentation for the new idle timeout feature of the connection
manager.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-10-15 15:39:25 +03:00
Jordan Yates
b4025e89e2 tests: net: conn_mgr_nsos: test idle timeout
Test the behaviour of the idle timeout on native sockets. Only tests
a subset of the "active" paths to not require any external services.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-10-15 15:39:25 +03:00
Jordan Yates
7521782ce6 net: nsos_sockets: conn_mgr_connectivity usage calls
Add interface usage notifications to the native socket offload code
paths.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-10-15 15:39:25 +03:00
Jordan Yates
e655c0ed1a net: ip: conn_mgr_connectivity usage calls
Add interface usage notifications to the `NET_NATIVE` code paths.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-10-15 15:39:25 +03:00
Jordan Yates
b92a43d7c0 net: conn_mgr_connectivity: idle timeouts
Implement idle timeouts, primarily in the common connectivity library,
with individual interfaces notifying the library when the interface has
been used.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-10-15 15:39:25 +03:00
Jordan Yates
3a107e583c tests: net: conn_mgr_conn: test idle timeout param
Add tests for the idle timeout parameter.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-10-15 15:39:25 +03:00
Jordan Yates
e3a7bb30bd net: conn_mgr_connectivity: idle timeout parameter
Add an interface idle timeout parameter to the connectivity
binding structure. This will be used to track idle timeouts for
interfaces.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-10-15 15:39:25 +03:00
Jordan Yates
65b616f6d8 net: conn_mgr: connectivity: replace !binding
Replace all `!binding` checks with `binding == NULL` for MISRA
compliance.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-10-15 15:39:25 +03:00
Jordan Yates
cfe0a68743 net: net_if: add NET_IF_DECLARE
Add a helper macro to declare a network interface, enabling the use of
`NET_IF_GET` in the driver before the call to `NET_DEVICE_OFFLOAD_INIT`
or `NET_DEVICE_INIT`.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-10-15 15:39:25 +03:00
Fabian Otto
8d097554dd logging: backend: add KConfig option for SWO sync packets
Add KConfig LOG_BACKEND_SWO_SYNC_PACKET to allow disabling SWO
synchronization packets. Useful if the SWO is used as a UART replacement
to avoid that the sync packets show up as special characters in a terminal
application.

Signed-off-by: Fabian Otto <fabian.otto@rohde-schwarz.com>
2025-10-15 15:39:01 +03:00
Sergei Ovchinnikov
3ae0d39de7 drivers: sensor: npm13xx_charger: improve sample fetching
Change the npm13xx_charger fetch function to first trigger a sample
and then block until the result is available.

Signed-off-by: Sergei Ovchinnikov <sergei.ovchinnikov@nordicsemi.no>
2025-10-15 15:38:48 +03:00
Etienne Carriere
376d9cb3b7 samples: boards: st: power_mgmt: wkup_pins: add WBA65 boards
Add WBA65RI Nucleo board to ST wkup_pins board sample.
By the way, sort the board names in sample.yaml.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-10-15 15:38:33 +03:00
Etienne Carriere
182a97e5ae boards: st: nucleo_wba65ri: Add 'ns' variant for TF-M support
Add variant 'ns' to nucleo_wba65ri board to embed TF-M in the SoC
secure world.

The flash layout is synced with the layout defined in Zephyr TF-M
integration of platform STM32WBA65I.

- samples/tfm_integration/psa_crypto
- samples/tfm_integration/psa_protected_storage
- samples/tfm_integration/tfm_ipc
- samples/tfm_integration/tfm_regression_test
- samples/tfm_integration/tfm_secure_partition
- tests/subsys/secure_storage/psa/crypto
- tests/subsys/secure_storage/psa/its
  (with CONFIG_TFM_ITS_MAX_ASSET_SIZE_OVERRIDE=y
  and CONFIG_TFM_ITS_MAX_ASSET_SIZE=256)

Support for PSA Arch Tests (samples/tfm_integration/tfm_psa_test) is
not yet merged but is in under review [1].

Link: https://github.com/ARM-software/psa-arch-tests/pull/406 [1]
Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-10-15 15:38:33 +03:00
Etienne Carriere
acc7266b74 boards: st: nucleo_wba65ri: add low power numbers in board doc
Add missing low power consumption numbers in nucleo_wba65ri board
documentation. These numbers are dumped from the SoC datashhet.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-10-15 15:38:33 +03:00
Etienne Carriere
56452c8620 boards: st: nucleo_wba65ri: fix special characters in board doc
Replace (R) and (TM) special charaters with |reg| and |trade|
aliases in nucleo_wba65ri board documentation file. By the way
also fix some characters case, add info and move Cortex-M description
in the overview section to prevent information duplication.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-10-15 15:38:33 +03:00
Etienne Carriere
9fbcddfa3b boards: st: nucleo_wba65ri: rename documentation file
Rename nucleo_wba65ri board documentation file for consistency
within Zephyr file tree.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-10-15 15:38:33 +03:00
Etienne Carriere
39ec5c254d boards: st: stm32wba65i_dk1: Add 'ns' variant for TF-M support
Add variant ns to stm32wba65i_dk1 board to embed TF-M in the SoC
secure world. The flash layout is synced with the layout defined
in Zephyr TF-M integration of platform STM32WBA65I.

Successfully tested against a few samples and test samples:
- samples/tfm_integration/psa_crypto
- samples/tfm_integration/psa_protected_storage
- samples/tfm_integration/tfm_ipc
- samples/tfm_integration/tfm_regression_test
- samples/tfm_integration/tfm_secure_partition
- tests/subsys/secure_storage/psa/crypto
- tests/subsys/secure_storage/psa/its
  (with CONFIG_TFM_ITS_MAX_ASSET_SIZE_OVERRIDE=y
  and CONFIG_TFM_ITS_MAX_ASSET_SIZE=256)

Support for PSA Arch Tests (samples/tfm_integration/tfm_psa_test) is
not yet merged but is in under review [1].

Link: https://github.com/ARM-software/psa-arch-tests/pull/406 [1]
Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-10-15 15:38:33 +03:00
Etienne Carriere
f85932ab33 soc: st: stm32wba: TF-M does not support BL2 for WBA65x
Enable TFM_BL2_NOT_SUPPORTED configuration for STM32WBA65x SoC since
TF-M does not implement the BL2 boot stage for this SoC series.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-10-15 15:38:33 +03:00
Etienne Carriere
f4b9e5f68e modules: trusted-firmware-m: Add STM32_FLASH_LAYOUT_BEGIN_OFFSET
Add TF-M directive STM32_FLASH_LAYOUT_BEGIN_OFFSET needed to specify
the gap needed by external boot stage resources at flash beginning.
The offset tells STM32 TF-M firmware the base offset in the flash
where the several TF-M and non-secure image areas shall be located.

The CMake directive was introduced mainline TF-M commit [1] and merged
in Zephyr TF-M repository [2].

Link: fc035b874e [1]
Link: 954dc80541 [2]
Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-10-15 15:38:33 +03:00
Etienne Carriere
0218849c48 modules: trusted-firmware-m: Declare stm32wba65i support
Declare stm32wba65i-dk1 and nucleo_wba65ri boards support in TF-M.
Both comply with TF-M integration of platform stm/stm32wba65i-dk.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-10-15 15:38:33 +03:00
Etienne Carriere
1dd6c2bb66 boards: st: Add stm32wba65i-dk1
Add stm32wba65i-dk1 board support with UART console, LEDs, joystick keys
using ADC channel 6.

Board YAML file does not list 'supported' tags since the board is
very similar to nucleo_wba65ri for which supported features are already
covered.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-10-15 15:38:33 +03:00
Graham Roff
d5f8b8d03d size_report: Add a report showing total memory use.
The current size_report generates "ram" and "rom" reports, but not one
showing the total of all run-time memory used (the "ram" report does not
include memory required to load the code for non-XIP boards).
Summing the existing reports does not work as it double-counts
statically initialized data.
The new "all" report shows the correct accounting of all run-time memory
used.
To support this functionality the "targets" argument has been extended
to allow multiple arguments, for example to generate all three reports:
$ size_report -k ... -z ... --output=. ram rom all

In the JSON output, the location ("ram" or "rom") is included in the
"loc" property for each symbol.

Signed-off-by: Graham Roff <grahamr@qti.qualcomm.com>
2025-10-15 15:38:22 +03:00
Zhaoxiang Jin
757ffe5d22 dts: arm: nxp: correct mcxn23x/x4x edma properties
1. MCXN23x edma1 has 8 channels, not 16.
2. MCXN23x edma0 and edma1 have 94 requests, not 120.
3. MCXNx4x edma0 and edma1 have 117 requests, not 120.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-10-15 15:38:12 +03:00
Chris Friedt
c617ede1bd libc: minimal: sys/types.h: move mem_word_t to string.c
The `sys/types.h` header is part of POSIX, which is optional in Zephyr and
is mostly unimplemented by Zephyr's minimal C library.

Additionally, the only reason `sys/types.h` is included in `string.c` (in
the minimal libc) is because of the non-standard `mem_word_t` type.

`mem_word_t` is not used anywhere else in-tree or in modules hosted by the
Zephyr project. It is only used in `string.c` in the minimal c library.

It's definitely not specified here
https://pubs.opengroup.org/onlinepubs/9699919799/basedefs/sys_types.h.html
and so does not really belong in `sys/types.h`.

Move `mem_word_t` into the minimal libc's `string.c`. If needed, it can be
removed at a later date and switched for `uintptr_t`.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-10-15 15:38:03 +03:00
Siratul Islam
aebd75dc21 boards: arm: add support for WeAct STM32WB55 Core Board
Add initial support for the WeAct Studio STM32WB55 Core Board based on the
STM32WB55CGU6 dual-core MCU (Cortex-M4 + Cortex-M0+).

The board configuration supports:
 - 64 MHz system clock from 32 MHz HSE crystal
 - Console over USART1 (PA9/PA10)
 - Default LED on PB2
 - DFU and STM32CubeProgrammer flashing
 - External SWD debugging

Bluetooth functionality requires flashing a compatible STM32WB HCI Layer
wireless coprocessor binary before use. The extended HCI binary
(stm32wb5x_BLE_HCILayer_extended_fw.bin) has been verified.

Tested with:
 - samples/basic/blinky
 - samples/hello_world
 - samples/bluetooth/peripheral
 - samples/bluetooth/beacon

Signed-off-by: Siratul Islam <sirat4757@gmail.com>
2025-10-15 15:37:51 +03:00
Andrzej Głąbek
c3469a6764 drivers: flash_mspi_nor: Take into account MSPI controller packet limit
Use information provided in the dts node for the MSPI controller
regarding maximum amount of data that can be transferred in one
packet and split the requested transfers if necessary.

Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
2025-10-15 15:37:40 +03:00
Andrzej Głąbek
b42a33d49f dts: bindings: mspi-controller: Add "packet-data-limit" property
Add a property with which MSPI controllers can indicate their limits
on the maximum amount of data they can transfer in one packet.
Use the property for the SSI controller, for which the clock stretching
feature requires the use of the NDF field of the CTRLR1 register, which
is 16-bit wide, hence the data length limit is 64 kB.

Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
2025-10-15 15:37:40 +03:00
Emil Gydesen
0ebe84cc5a Bluetooth: Host: bt_iso_reset before bt_conn_cleanup_all
Move the call to bt_iso_reset to before bt_conn_cleanup_all.
The reason for this is that bt_conn_cleanup_all will disconnect
all the ACL connections, which will put the CIS in a disconnecting
state, without finalizing them.
This means that if we get a num_completed_packet event between
the call to bt_conn_cleanup_all and before the BT_HCI_OP_RESET
request has been completed, we will trigger an assert in the
hci_num_completed_packets function as the CIS still exists,
but where we would already have cleaned up the pending TX
without telling the controller.

Moving the call to bt_iso_reset means that the CIS will have
been fully terminated at this point, which will prevent
the assert from happening. Since CIS depends on ACLs, this
is also the logical order for resetting them.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-10-15 15:37:21 +03:00
Zhaoxiang Jin
ce9481d3bb tests: adc: fix adc test run failure on NXP platforms
Commit: bf12516cb4
added several features to the NXP MCUX ADC16 driver, such as:
support for selecting the reference voltage between ADC_REF_EXTERNAL0
and ADC_REF_VDD_1. However, many NXP platforms with ADC16 previously
specified ADC_REF_INTERNAL as the reference voltage in the DT. This
caused these platforms to fail in ADC tests/examples.

This commit updates the reference voltage configuration for these
platforms to ADC_REF_EXTERNAL0. This update is backward compatible.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-10-15 15:37:06 +03:00
Jamie McCrae
1c756cbef5 mgmt: mcumgr: transport: udp: Increase default stack size to 1KiB
Fixes an issue in a board using ethernet that faults with the
default 512 byte size by doubling the default to 1KiB. The actual
size of the thread depends upon the device and application
configuration so needs to be fine tined for each application
anyhow

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-10-15 15:36:53 +03:00
Kevin Gillespie
01ccfb4404 drivers: serial: uart_max32: add power management support.
Add power management support to UART driver.

Signed-off-by: Kevin Gillespie <Kevin.Gillespie@analog.com>
2025-10-15 15:36:42 +03:00
Alberto Escolar Piedras
4ef316c72d manifest: Update nRF hw models to latest
Update the HW models module to:
26ed181181eed53e400db8f63fa83c566a05d971

Including the following:
26ed181 54L CLOCK: Fix: Handle clock being stopped before it is fully
	started
b643b28 54L CLOCK: Account for relationship between PLLs and XO

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-10-15 15:36:31 +03:00
Piotr Kosycarz
55207aa8cd tests: drivers: watchdog: remove ovarlays for nrf L15 and LM20 flpr
WDT at L15 and LM20 for FLPR core is not enabled.

Signed-off-by: Piotr Kosycarz <piotr.kosycarz@nordicsemi.no>
2025-10-15 15:36:15 +03:00
Piotr Kosycarz
21076a7426 samples: drivers: watchdog: remove ovarlays for nrf L15 and LM20 flpr
WDT at L15 and LM20 for FLPR core is not enabled.

Signed-off-by: Piotr Kosycarz <piotr.kosycarz@nordicsemi.no>
2025-10-15 15:36:15 +03:00
Michael Zimmermann
f2bed4d6af net: mqtt_sn: Add support for publishing with QOS=-1
This doesn't try to optimize memory usage for QOS=-1 publications, because
it's easier to use existing structs and allocators instead of adding new
ones with less fields.

Signed-off-by: Michael Zimmermann <michael.zimmermann@sevenlab.de>
2025-10-15 15:35:58 +03:00
Michael Zimmermann
be0adf76b5 net: mqtt_sn: add support for short topics
The publish and subscribe APIs allocate topics implicitly, but don't
support allocating predefined or short topics. Additionally, we don't want
to force using short topics in case the passed topic is 2 bytes long, in
case the user doesn't want that (e.g. because the server doesn't support
it).

So instead, we add a new API which works similar to
mqtt_sn_predefine_topic, which allows allocating a short topic before using
any of these APIs.

Signed-off-by: Michael Zimmermann <michael.zimmermann@sevenlab.de>
2025-10-15 15:35:58 +03:00
Michael Zimmermann
e82b8cb150 net: mqtt_sn: never clear predefined and short topics
- These are independent from connections since they are always valid.
- Implicitly created topics(e.g. from publish or subscribe) can't be
  deleted either, so that doesn't make things worse compared to those.

Signed-off-by: Michael Zimmermann <michael.zimmermann@sevenlab.de>
2025-10-15 15:35:58 +03:00
Hake Huang
6e2e76ca39 boards: lpcxpresso55s69: support jlink when CONFIG_SECOND_CORE_MCUX
when config CONFIG_SECOND_CORE_MCUX we can use cpu0 to flash all
test for mbox cases.

Signed-off-by: Hake Huang <hake.huang@nxp.com>
2025-10-15 15:35:48 +03:00
Chris Friedt
dd09402803 modules: simplelink: remove unneeded REQUIRES_FULL_LIBC
I guess a very long time ago, before `stdint.h` was included in the
minimal libc, the SimpleLink module required a full C library.

It's definitely there now, so remove the stale comment and drop the
unnecessary `select REQUIRES_FULL_LIBC`.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-10-15 15:35:39 +03:00
Chris Friedt
4b29d6d424 modules: simplelink: select necessary POSIX kconfig dependencies
Select the `POSIX_SYSTEM_INTERFACES` and `POSIX_SEMAPHORES` options for
the SimpleLink Host WiFi driver to fix a build issue in CI.

Update the stale comment to be more accurate of each required POSIX
Kconfig option.

https://github.com/zephyrproject-rtos/zephyr/actions/runs/18523743005/\
job/52789581990

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-10-15 15:35:39 +03:00
Chris Friedt
aaf391405c posix: options: add keep-sorted-start and -stop
Add zephyr-keep-sorted-start and zephyr-keep-sorted-stop
comments.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-10-15 12:08:00 +03:00
Chris Friedt
8a48177130 posix: profiles: make POSIX_AEP_CHOICE_ZEPHYR the default
Default POSIX_AEP_CHOICE to POSIX_AEP_CHOICE_ZEPHYR

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-10-15 12:08:00 +03:00
Chris Friedt
27bc1fed47 posix: profiles: add custom Zephyr POSIX subprofile
Add a custom Zephyr POSIX subprofile specifically for enabling the
default features that Zephyr requires as per the coding guidelines.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-10-15 12:08:00 +03:00
Chris Friedt
c64974cc75 posix: c_lib_ext: apply clang-format to getopt sources
The getopt sources were not formatted according to our codying style
conventions, so apply formatting rules as a separate commit.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-10-15 12:08:00 +03:00
Chris Friedt
12fd61d6c7 posix: separate option groups into c library ext and system interfaces
Separate the POSIX implementation into two categories:

- Extensions to ISO C
- System Interfaces

The first category include standalone functions that generally do not
require OS support or depend on any other features within the POSIX
specification. The Option Groups that comprise this category include

- POSIX_C_LIB_EXT: e.g. strnlen(), fnmatch()
- POSIX_C_LANG_SUPPORT_R: e.g. gmtime_r(), strtok_r()

The second category includes the majority of other POSIX Option Groups
that do require OS support. The latter group may also be categorized
generally as being NATIVE_LIBC_INCOMPATIBLE, although that might
eventually become more granular.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-10-15 12:08:00 +03:00
Chris Friedt
ed0ae68f77 eventfd: bring config to top-level of posix dir, since it is not posix
The eventfd configuration does not need to be so deeply nested within
POSIX since it does not depend on POSIX completely.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-10-15 12:08:00 +03:00
Quy Tran
7e1fc96a7a samples: boards: renesas: Add LVD sample for Renesas
Add a simple sample using Comparator API to monitor the
voltage on Renesas boards

Signed-off-by: Quy Tran <quy.tran.pz@renesas.com>
2025-10-15 12:07:46 +03:00
Quy Tran
ef5b94b975 dts: renesas: rx: Add dts property nodes for LVD support
Add DTS node for LVD support on RX130

Signed-off-by: Quy Tran <quy.tran.pz@renesas.com>
2025-10-15 12:07:46 +03:00
Quy Tran
8d98b4acbd drivers: comparator: Add comparator driver support for RX
Add comparator support for Renesas RX with LVD

Signed-off-by: Quy Tran <quy.tran.pz@renesas.com>
2025-10-15 12:07:46 +03:00
Quy Tran
7e83409368 manifest: hal: renesas: Update commit ID for Renesas HAL
Update the latest commit ID for HAL Renesas

Signed-off-by: Quy Tran <quy.tran.pz@renesas.com>
2025-10-15 12:07:46 +03:00
Mark Wang
b3d56349a1 bluetooth: shell: a2dp: use static for functions
add static for functions and variables.

Signed-off-by: Mark Wang <yichang.wang@nxp.com>
(cherry picked from commit 1282bf7b8d814ef7a217c6f0c424aa4b2f34d363)
2025-10-15 12:06:56 +03:00
Mark Wang
a1cbaf77a6 bluetooth: shell: a2dp: remove unused function
remove app_configured

Signed-off-by: Mark Wang <yichang.wang@nxp.com>
(cherry picked from commit c0be42f10341ea4a6ed1df152375335a5f514c92)
2025-10-15 12:06:56 +03:00
Mark Wang
e468dd3371 bluetooth: avdtp: add copyright
add copyright to avdtp.c

Signed-off-by: Mark Wang <yichang.wang@nxp.com>
(cherry picked from commit 8761b2884726ccc33f953e4679a3d9c86b17da84)
2025-10-15 12:06:56 +03:00
Mark Wang
ef1b4463aa bluetooth: a2dp: remove the digital hardcode
use the sizeof of struct or variable; use macro to do the data shift.

Signed-off-by: Mark Wang <yichang.wang@nxp.com>
(cherry picked from commit d6d567355d08cefd1e11d88563fc300928af4972)
2025-10-15 12:06:56 +03:00
Mark Wang
642dc278d1 bluetooth: a2dp: save configuration when cmd success
In the cmd result callback, save the configuration to stream if result is
success.

Signed-off-by: Mark Wang <yichang.wang@nxp.com>
(cherry picked from commit 9a9477fa0214f245a66e24a2edd90132293d5086)
2025-10-15 12:06:56 +03:00
Mark Wang
c8763596c9 bluetooth: avdtp: unify the avdtp error code based on Zephyr err code
get the avdtp error code based on Zephyr err code to make the codes more
clear.

Signed-off-by: Mark Wang <yichang.wang@nxp.com>
(cherry picked from commit 1d4d97fdb41791501eb63934f096bcc88cb2da81)
2025-10-15 12:06:56 +03:00
Mark Wang
1032b1e567 bluetooth: a2dp: avoid clearing the cmd req
If the previous cmd req is triggered, the cmd fail to trigger again and
keep the previous cmd req.

Signed-off-by: Mark Wang <yichang.wang@nxp.com>
(cherry picked from commit f4197d51b62799748a75c97bd0b68778185ff293)
2025-10-15 12:06:56 +03:00
Mark Wang
eb3af0b9a6 bluetooth: a2dp: remove meaningless if
The `a2dp` is got by `req` through CONTAINER_OF, then the if always is
true.

Signed-off-by: Mark Wang <yichang.wang@nxp.com>
(cherry picked from commit 24ef59d835c69a30fe8a8e6569405791532d9e0d)
2025-10-15 12:06:56 +03:00
Mark Wang
d5fb16bd31 bluetooth: a2dp: use avdtp struct to fill data to net buf
avdtp defines the data format by struct, use it to fill net buf.

Signed-off-by: Mark Wang <yichang.wang@nxp.com>
(cherry picked from commit a89f4eddac6f13f981f2ca0b94f07edaad104afa)
2025-10-15 12:06:56 +03:00
Mark Wang
8e6a853654 bluetooth: avdtp: check buf tail room
check the buf tail room before adding data to buf.

Signed-off-by: Mark Wang <yichang.wang@nxp.com>
(cherry picked from commit 65f8a9e03baf899684198e707170ad17817f7ce5)
2025-10-15 12:06:56 +03:00
Mark Wang
0fd58cc20c bluetooth: a2dp: implement get_config
implement get configuration

Signed-off-by: Mark Wang <yichang.wang@nxp.com>
(cherry picked from commit 54cae2e75bcb7ee38ec4d7c24cef8835e3836a05)
2025-10-15 12:06:56 +03:00
Mark Wang
3d81dc086d bluetooth: a2dp: implement delay report
implement delay report

Signed-off-by: Mark Wang <yichang.wang@nxp.com>
2025-10-15 12:06:56 +03:00
Lyle Zhu
64a544935b Bluetooth: HFP_AG: Fix SLC connected event early notify issue
In current implementation, the SLC connected event will be early
notified. It causes the SLC state of AG is not aligned with the state
of HF.

The SLC connected event should be notified after the procedure of HF
indicators is done if the HF indicators feature is supported by both
devices.

Do not notify the SLC connected event after the AG has successfully
responded with information about how call hold and multiparty services
are supported if the HF indicators feature is supported by both
devices.

Notify the SLC connected event after the procedure of HF indicators is
done.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-10-15 12:06:22 +03:00
Abhinav Kulkarni
2ccb1128b9 drivers: wifi: nxp: Add host sleep support
Added host sleep support for IW416 and IW61X soc.

Signed-off-by: Abhinav Kulkarni <abhinav.kulkarni@nxp.com>
2025-10-15 12:06:12 +03:00
Chaitanya Tata
9a13407e3e drivers: nrf_wifi: Rejig band config
nRF71 supports tri-band, so, to cater both nRF70 and nRF71, rejig the
configuration and add a helper to convert from Kconfig to the interface
structs.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-10-15 12:06:01 +03:00
Chaitanya Tata
91c0e15720 drivers: nrf_wifi: Use new nRF71 interface files
nRF70 and nRF71 now use different interface files, fix the build.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-10-15 12:06:01 +03:00
Chaitanya Tata
8c5a5ae199 drivers: nrf_wifi: Fix NRF71 build
NRF71 doesn't have direct memory access, so, disabled the rpu stats
memory variant.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-10-15 12:06:01 +03:00
Chaitanya Tata
9f8bb3cda3 manifest: nrf_wifi: Pull nRF71 support
Pull nRF71 OSAL support, full support is till TBD.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-10-15 12:06:01 +03:00
Richard Wheatley
51b51f6d44 dts: arm: ambiq: update apollo4x to use proper uart
update ambiq apollo4x uart to ambiq,uart

Signed-off-by: Richard Wheatley <richard.wheatley@ambiq.com>
2025-10-15 12:05:45 +03:00
Tahsin Mutlugun
5dfc4a2723 drivers: i3c: i3c_max32: Init bus only if known devices exist
CCC operation fails when no known devices exist, causing whole bus
initialization procedure to fail. Do not initialize the bus if no known
devices exist.

Signed-off-by: Tahsin Mutlugun <Tahsin.Mutlugun@analog.com>
2025-10-15 12:05:34 +03:00
Tahsin Mutlugun
dcd16cabd3 drivers: spi: spi_max32: Fix race condition on dma_stat
A race condition occurs when the TX DMA callback is triggered before
the `dma_stat` variable is initialized to zero. This leads to
`dma_stat` being reset after the DMA TX done flag is already set.

To prevent this, move the initialization of `dma_stat` before starting
the DMA load operation.

Signed-off-by: Tahsin Mutlugun <Tahsin.Mutlugun@analog.com>
2025-10-15 12:05:24 +03:00
Charles Hardin
7158f33c2b net: dns: extend the service resolver command line for ptr, srv, addr
The address resoution from RFC6763 is generally a PTR, SRV, TXT, and
an A or AAAA. Records, so this change is mainly to start drawing a
clear functional change between the DNS query shell and the DNS
service shell that should be more of a "avahi-browse" or "dns-sd"
functional style.

So, this is not a very robust implementation since it is a chain of
queries when the goal should be to get additional records from the
message itself but those changes can be added iteratively.

Basic point of this change is to show the procedure for the "browse"

- PTR service resolution
- SRV query from the result of the PTR
- AAAA (or A) from the result of the SRV

TXT records are ignored for now but should be added into this as
additional record support is extended.

Signed-off-by: Charles Hardin <ckhardin@gmail.com>
2025-10-15 12:05:14 +03:00
Jamie McCrae
6f41b3e2a2 west.yml: MCUboot synchronization from upstream
Update Zephyr fork of MCUboot to revision:
  48b0f6da9af8d009eb8eafba023998a7d85320a1

Brings following Zephyr relevant fixes:

  - 48b0f6da imgtool: support producing images in test mode
  - 2b9f2a2f boot: zephyr: fix getting base address for certain
    boards
  - 028d80c3 bootutil: Move boot_enc_init in boot_swap_image
  - 15d43f20 zephyr: Deprecate MCUBOOT_VERIFY_IMG_ADDRESS
  - fd2c1428 zephyr: Added MCUBOOT_CHECK_HEADER_LOAD_ADDRESS
    Kconfig
  - 1035cc01 bootutil: Add MCUBOOT_CHECK_HEADER_LOAD_ADDRESS
  - 17a6ecd2 boot: bootutil: fix image_index definition
  - cc985298 boot: zephyr: Fix IO-based entrance method
  - 9ca08817 bootutil: Fix minor issues
  - 8a07053d bootutil: Fix log module registration
  - 5e1be19f boot: bootutil: write_sz fix
  - aed3fb95 docs: Add release note entry for
    MCUBOOT_BOOT_MAX_ALIGN Zephyr change

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-10-15 12:04:53 +03:00
Furkan Akkiz
3b60683906 dt-bindings: gpio: Update bit position of MAX32 GPIO flags
Shift GPIO pad control flags by one bit so that they do not overlap with
drive strength flags.

Signed-off-by: Furkan Akkiz <hasanfurkan.akkiz@analog.com>
2025-10-15 12:04:40 +03:00
Ian Morris
0f375b2820 boards: renesas: ek_ra6m4: added pmod node labels
Added pmod_serial and pmod_header node labels to EK-RA6M4 device tree
board definition, allowing compatible shield boards to be used.

Signed-off-by: Ian Morris <ian.d.morris@outlook.com>
2025-10-15 12:04:29 +03:00
Hui Bai
87619e3e00 samples: wifi: shell: Enable TLSv1.3 in wifi shell example
Enable TLSv1.3 for NXP wifi chips when hostap is enabled.

Signed-off-by: Hui Bai <hui.bai@nxp.com>
2025-10-15 12:04:18 +03:00
Jiafei Pan
04c9da22d7 drivers: ram_console: fix code typo
It should use semicolon.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-10-15 12:03:51 +03:00
Jilay Pandya
89aeff7532 tests: stepper_shell: rename project and drop drivers.stepper.shell_async
rename project from can_shell to stepper_shell
drivers.stepper.shell_async is a relic of the past

Signed-off-by: Jilay Pandya <jilay.pandya@outlook.com>
2025-10-15 12:03:35 +03:00
Jilay Pandya
6832a80f10 tests: drv84xx: move tests out of emul folder
- move drv84xx/emul tests to drv84xx
- combine tests test_enable_gpios and test_enable_on_off_gpios
- drop drv84xx_emul_before and drv84xx_emul_after

Signed-off-by: Jilay Pandya <jilay.pandya@outlook.com>
2025-10-15 12:03:35 +03:00
Sebastian Dauenhauer
3c648649d7 boards: st: stm32n6570_dk: fix active state for cd gpio
CD pin of the SDMMC on the STM32N6570-DK board was incorrectly set as
active high, but is actually active low

Signed-off-by: Sebastian Dauenhauer <info@magical.rocks>
2025-10-15 12:03:19 +03:00
Chris Friedt
84f0ca3278 tests: c_lib: common: remove test_time_t
Previously, `time_t` was only checked in some C libraries to be greater
than or equal to a 64-bit integer and it was skipped in other C libraries.

The C standard still does not make this guarantee, and other code within
Zephyr already has been changed to accomodate both 32-bit `time_t` and
64-bit `time_t`.

There really is no point in having this test, since it is inconsistent
at best.

Until Zephyr changes to a 64-bit `time_t` (e.g. `time64_t`), then there
is no guarantee of safety against the Y2038 problem.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-10-15 12:03:05 +03:00
Luis Ubieda
a762327546 icm45686: fix: Add and use result from completion callback
Issue based on rebasing with in-flight changes where the callback adds
an argument on the readout transfers. Moreover, handle that result and
error if failure.

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-10-15 12:02:54 +03:00
Luis Ubieda
5dd5a519e3 icm45686: fix helper function to not receive int_status
As such decision is taken based on the streaming configuration.
Addresses compilation issue.

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-10-15 12:02:54 +03:00
Lukasz Fundakowski
9c5325df29 twister: Add unit tests for Pytest harness
Added unit tests for parsing JUnitXml report by Pytest harness.

Signed-off-by: Lukasz Fundakowski <lukasz.fundakowski@nordicsemi.no>
2025-10-14 17:41:32 -04:00
Luca Burelli
fa69daa6e9 arduino_uno_q: enable CI tests
Enable relevant Twister tests for the Arduino Uno Q board.

Signed-off-by: Luca Burelli <l.burelli@arduino.cc>
2025-10-14 17:40:07 -04:00
Martino Facchin
10d35ceb02 boards: add Arduino UNO Q
Uses an STM32U585 microcontroller.
Some drivers will need to be developed (led matrix, internal RPC)

Signed-off-by: Martino Facchin <m.facchin@arduino.cc>
Signed-off-by: Luca Burelli <l.burelli@arduino.cc>
2025-10-14 17:40:07 -04:00
Jérôme Pouiller
6ddb4aadac tests: portability: cmsis: Fix test_event_flags_signalled()
Until now, the main thread preempted thread2 between k_event_post() and
k_event_test(). Then main thread consumed the event before it was tested by
thread2.

This behavior was not correct since the caller can't know the event is in
fact consumed (the CMSIS-RTOS specification says osEventFlagsSet() "returns
the event flags stored in the event")

This behavior is now fixed. So we can fix the test.

Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
2025-10-14 17:39:51 -04:00
Jérôme Pouiller
505969a09e portability: cmsis: Fix possible race in osEventFlagsSet()
The CMSIS-RTOS specification says "The function returns the event flags
stored in the event control block".

In the original code, osEventFlagsSet() called k_event_post() and then
k_event_test(). It worked mostly fine if the thread has higher priority
than the waiter thread. In the opposite case, the event was not reported
to the user.

With the last changes, the waiter thread use k_event_wait_safe(). So, the
event is posted and consumed in an atomic way. So, the issue above happen
even if the waiter thread has a lower priority then the poster.

This patch fixes the both cases.

Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
2025-10-14 17:39:51 -04:00
Jérôme Pouiller
316452ca15 portability: cmsis: Fix possible race in osEventFlagsClear()
The CMSIS-RTOS specification says "The function returns the event flags
before clearing".

In the original code, if another thread set an event between k_event_test()
and k_event_clear(), there was a risk the function clear a flag without
reporting it to the caller:

        T1                                   T2
  k_event_test(..) == 0                      ...
        ...                             k_event_post(.. 1)
  k_event_clear(.. 1)                        ...
  return 0 (while event 1 has been cleared)

Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
2025-10-14 17:39:51 -04:00
Jérôme Pouiller
fd500168f1 portability: cmsis: Fix possible race in osEventFlagsWait()
In osEventFlagsWait(), if an event raises after the call to k_event_wait()
and before the call to k_event_clear(), we may clear it while it is not
going to be report to the caller.

Reported-by: Rahul Gurram <rahul.gurram@silabs.com>
Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
2025-10-14 17:39:51 -04:00
Anas Nashif
720897d993 tests: increase stacks to allow coverage
Increase stack sizes to allow coverage to complete.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-10-14 17:32:46 -04:00
Anas Nashif
6240b0ddb9 kernel: set DYNAMIC_THREAD_STACK_SIZE to 4096 for coverage
Increase stack sizes to allow coverage to complete.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-10-14 17:32:46 -04:00
Anas Nashif
9198b9d1ba tests: increase stack sizes to support coverage
Increase stack sizes to allow coverage to complete.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-10-14 17:32:46 -04:00
Anas Nashif
de8200c53a tests: workqueue: increase stacks to allow coverage
Test was failing to build on some scenarios when coverage was enabled.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-10-14 17:32:46 -04:00
Anas Nashif
8607714da0 testsuite: split coverage kconfig into own file
Coverage options deserve their own kconfig, otherwise the testsuite
Kconfig will be very crowded and difficult to read.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-10-14 17:32:46 -04:00
Anas Nashif
f22a0afc74 testsuite: coverage: Support semihosting
Use semihosting to collect coverage data instead of dumping data to
serial console.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-10-14 17:32:46 -04:00
Rémy Dziemiaszko
c34e224a1b drivers: uart_mcux_flexcomm: fix dma rx config
The DMA configurations for TX and RX  were mixed-up
letting the DMA RX channel not fully configured.

This fix correctly configures the DMA RX channel
with DMA_ADDR_ADJ_NO_CHANGE.

Signed-off-by: Rémy Dziemiaszko <remy.dziemiaszko@smile.fr>
2025-10-14 17:27:29 -04:00
Chris Friedt
f02391af0b tests: posix: multi process: add a testsuite for POSIX_MULTI_PROCESS
Add a testsuite for the POSIX_MULTI_PROCESS Option Group.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-10-14 17:27:08 -04:00
Chris Friedt
20cda02d11 posix: multi process: add support for times()
Add support for the `times()` function, which can be used to get the
number of ticks spent in "system" and "user" mode, and which returns
the "real time" that has expired, since an arbitrary point in the past.

The following invariant should always hold:

rtime <= stime + utime

The `times()` function measures time for the calling process and all
of it's child processes. In Zephyr, we don't support separate processes
(yet), so the time spent in child processes is zero.

Additionally, in Zephyr we do not differentiate between "system" time
(i.e. time spent executing kernel code) and "user" time (time spent
executing application code). We only have information on "total time"
(time spent executing code) and "execution time" (time spent executing
code plus idle time).

For now, only report utime, since it is not clear how to obtain other
values.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-10-14 17:27:08 -04:00
Jeremy Dick
011a357db0 drivers: mipi-dbi-spi: fix initialization of SPI CS
Set cs_is_gpio only if there is a GPIO CS, configure the CS as
a native hardware CS if not

This fixes incorrectly trying to use a GPIO CS when there isn't one

Signed-off-by: Jeremy Dick <jdick@pivotint.com>
2025-10-14 17:26:59 -04:00
Vladislav Kulikov
beb5f45a76 smf: use get_child_of() for topmost in smf_set_initial()
Replace get_last_of(init_state) with get_child_of(init_state, NULL),
and add a brief comment to avoid relying on a trivial wrapper. Also,
the wrapper name get_last_of() is not very descriptive; using
get_child_of() with an comment makes the intent more explicit.

Signed-off-by: Vladislav Kulikov <vlad_kulikov_c@pm.me>
2025-10-14 17:25:55 -04:00
Abhinav Kulkarni
2de3cb9e6d Drivers: wifi: nxp: kconfig update
Update kconfig file to support CSI feature on IW416 and IW612 soc's.

Signed-off-by: Abhinav Kulkarni <abhinav.kulkarni@nxp.com>
2025-10-14 17:25:45 -04:00
Yehuda Eisenberg
b4cd1a258f modules: lvgl: include lv_arclabel.c in Zephyr build
Add the lv_arclabel.c source file to modules/lvgl/CMakeLists.txt
so that the Arclabel widget is compiled and available in Zephyr projects.

Previously, the arclabel widget was not included, making it unusable.

Signed-off-by: Yehuda Eisenberg <yehuda@yehudae.net>
2025-10-14 18:55:36 +02:00
Sebastian Bøe
362f6535ab soc: nordic: uicr: Change how secondary images are detected
Detect secondary images by checking a Kconfig value instead of a
marker file.

Signed-off-by: Sebastian Bøe <sebastian.boe@nordicsemi.no>
2025-10-14 18:55:08 +02:00
Etienne Carriere
014caf77ba dts: arm: st: stm32wl: remove U suffix from "resets" in DTSI
STM32 reset controller position argument provided to STM32_RESET()
macro sometime uses an unnecessary U suffix. Remove these useless
suffixes for this series for consistency among STM32 SoCs DTSI files.

No functional change.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-10-14 18:54:40 +02:00
Etienne Carriere
6254b12d87 dts: arm: st: stm32wba: remove U suffix from "resets" in DTSI
STM32 reset controller position argument provided to STM32_RESET()
macro sometime uses an unnecessary U suffix. Remove these useless
suffixes for this series for consistency among STM32 SoCs DTSI files.

No functional change.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-10-14 18:54:40 +02:00
Etienne Carriere
0651081fc3 dts: arm: st: stm32wb: remove U suffix from "resets" in DTSI
STM32 reset controller position argument provided to STM32_RESET()
macro sometime uses an unnecessary U suffix. Remove these useless
suffixes for this series for consistency among STM32 SoCs DTSI files.

No functional change.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-10-14 18:54:40 +02:00
Etienne Carriere
38aaec4630 dts: arm: st: stm32u0: remove U suffix from "resets" in DTSI
STM32 reset controller position argument provided to STM32_RESET()
macro sometime uses an unnecessary U suffix. Remove these useless
suffixes for this series for consistency among STM32 SoCs DTSI files.

No functional change.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-10-14 18:54:40 +02:00
Etienne Carriere
78bfa3a6e2 dts: arm: st: stm32mp1: remove U suffix from "resets" in DTSI
STM32 reset controller position argument provided to STM32_RESET()
macro sometime uses an unnecessary U suffix. Remove these useless
suffixes for this series for consistency among STM32 SoCs DTSI files.

No functional change.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-10-14 18:54:40 +02:00
Etienne Carriere
aee59d3fee dts: arm: st: stm32l5: remove U suffix from "resets" in DTSI
STM32 reset controller position argument provided to STM32_RESET()
macro sometime uses an unnecessary U suffix. Remove these useless
suffixes for this series for consistency among STM32 SoCs DTSI files.

No functional change.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-10-14 18:54:40 +02:00
Etienne Carriere
939e2a1de0 dts: arm: st: stm32l4: remove U suffix from "resets" in DTSI
STM32 reset controller position argument provided to STM32_RESET()
macro sometime uses an unnecessary U suffix. Remove these useless
suffixes for this series for consistency among STM32 SoCs DTSI files.

No functional change.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-10-14 18:54:40 +02:00
Etienne Carriere
756969d176 dts: arm: st: stm32l1: remove U suffix from "resets" in DTSI
STM32 reset controller position argument provided to STM32_RESET()
macro sometime uses an unnecessary U suffix. Remove these useless
suffixes for this series for consistency among STM32 SoCs DTSI files.

No functional change.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-10-14 18:54:40 +02:00
Etienne Carriere
e1e3b37a9e dts: arm: st: stm32l0: remove U suffix from "resets" in DTSI
STM32 reset controller position argument provided to STM32_RESET()
macro sometime uses an unnecessary U suffix. Remove these useless
suffixes for this series for consistency among STM32 SoCs DTSI files.

No functional change.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-10-14 18:54:40 +02:00
Etienne Carriere
588a3be7e0 dts: arm: st: stm32h7: remove U suffix from "resets" in DTSI
STM32 reset controller position argument provided to STM32_RESET()
macro sometime uses an unnecessary U suffix. Remove these useless
suffixes for this series for consistency among STM32 SoCs DTSI files.

No functional change.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-10-14 18:54:40 +02:00
Etienne Carriere
9810f6e0b7 dts: arm: st: stm32h5: remove U suffix from "resets" in DTSI
STM32 reset controller position argument provided to STM32_RESET()
macro sometime uses an unnecessary U suffix. Remove these useless
suffixes for this series for consistency among STM32 SoCs DTSI files.

No functional change.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-10-14 18:54:40 +02:00
Etienne Carriere
05fc17bacc dts: arm: st: stm32g4: remove U suffix from "resets" in DTSI
STM32 reset controller position argument provided to STM32_RESET()
macro sometime uses an unnecessary U suffix. Remove these useless
suffixes for this series for consistency among STM32 SoCs DTSI files.

No functional change.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-10-14 18:54:40 +02:00
Etienne Carriere
f7d389050c dts: arm: st: stm32g0: remove U suffix from "resets" in DTSI
STM32 reset controller position argument provided to STM32_RESET()
macro sometime uses an unnecessary U suffix. Remove these useless
suffixes for this series for consistency among STM32 SoCs DTSI files.

No functional change.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-10-14 18:54:40 +02:00
Etienne Carriere
2328f0df7f dts: arm: st: stm32f7: remove U suffix from "resets" in DTSI
STM32 reset controller position argument provided to STM32_RESET()
macro sometime uses an unnecessary U suffix. Remove these useless
suffixes for this series for consistency among STM32 SoCs DTSI files.

No functional change.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-10-14 18:54:40 +02:00
Etienne Carriere
74e0776fba dts: arm: st: stm32f4: remove U suffix from "resets" in DTSI
STM32 reset controller position argument provided to STM32_RESET()
macro sometime uses an unnecessary U suffix. Remove these useless
suffixes for this series for consistency among STM32 SoCs DTSI files.

No functional change.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-10-14 18:54:40 +02:00
Etienne Carriere
1b24071086 dts: arm: st: stm32f3: remove U suffix from "resets" in DTSI
STM32 reset controller position argument provided to STM32_RESET()
macro sometime uses an unnecessary U suffix. Remove these useless
suffixes for this series for consistency among STM32 SoCs DTSI files.

No functional change.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-10-14 18:54:40 +02:00
Etienne Carriere
6c4899b2d1 dts: arm: st: stm32f2: remove U suffix from "resets" in DTSI
STM32 reset controller position argument provided to STM32_RESET()
macro sometime uses an unnecessary U suffix. Remove these useless
suffixes for this series for consistency among STM32 SoCs DTSI files.

No functional change.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-10-14 18:54:40 +02:00
Etienne Carriere
f1fd0f60c5 dts: arm: st: stm32f1: remove U suffix from "resets" in DTSI
STM32 reset controller position argument provided to STM32_RESET()
macro sometime uses an unnecessary U suffix. Remove these useless
suffixes for this series for consistency among STM32 SoCs DTSI files.

No functional change.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-10-14 18:54:40 +02:00
Etienne Carriere
0909af9240 dts: arm: st: stm32f0: remove U suffix from "resets" in DTSI
STM32 reset controller position argument provided to STM32_RESET()
macro sometime uses an unnecessary U suffix. Remove these useless
suffixes for this series for consistency among STM32 SoCs DTSI files.

No functional change.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-10-14 18:54:40 +02:00
Etienne Carriere
2fa06e5101 dts: arm: st: stm32c0: remove U suffix from "resets" in DTSI
STM32 reset controller position argument provided to STM32_RESET()
macro sometime uses an unnecessary U suffix. Remove these useless
suffixes for this series for consistency among STM32 SoCs DTSI files.

No functional change.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-10-14 18:54:40 +02:00
Etienne Carriere
179e169aff dts: bindings: reset: stm32: remove useless U suffix on bit position
Remove the useless U suffix used for STM32_RESET() macro bit position
argument in the DTS example snippet to prevent it spreads in DTS/DTSI
files while useless.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-10-14 18:54:40 +02:00
Erwan Gouriou
45c87c955e samples: fs: Enable building of STM32F7 platform
Add required sample test variant to enable systematic build of
stm32f7 platform using DMA configuration.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2025-10-14 18:54:10 +02:00
Ajay Neeli
4c16ab590a boards: amd: kv260_r5: Remove I2C, EEPROM from kv260_r5_defconfig
Remove I2C and EEPROM from kv260_r5_defconfig. As they can be enabled by
the application as needed.

Fixes #97323

Signed-off-by: Ajay Neeli <ajay.neeli@amd.com>
2025-10-14 18:53:57 +02:00
Jérôme Pouiller
5ea24f0647 drivers: memc: siwx91x: Fix clock
Siwx91x memory controller is currently 4 times slower than expected.
Investigations point out the clock is not correct.

Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
2025-10-14 18:53:47 +02:00
Jérôme Pouiller
e4c3090586 drivers: memc: siwx91x: Do not override clock configuration
In the original HAL, sl_si91x_psram_init() and sl_si91x_psram_uninit() were
also in charge of configuring the pinctrl and the clocks. A workaround
have been introduced to avoid change in pinctrl but they still changed the
clock configuration.

We definitely need to expose the clock configuration to Zephyr users. The
HAL has been patched to split the sl_si91x_psram_*init() function in
smaller pieces. So it is possible to configure the devic without changing
the clock or the pinctrl. Let's use these new functions.

Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
2025-10-14 18:53:47 +02:00
Jérôme Pouiller
bb0b45dd53 drivers: memc: siwx91x: Drop orphan struct
PSRAMSecureSegments is in fact orphan.

Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
2025-10-14 18:53:47 +02:00
Ian Morris
9ce5beef8f boards: renesas: da1469x_dk_pro: added mikrobus node labels
Added mikrobus_header, mikrobus_i2c and mikrobus_spi node labels to
da1469x_dk_pro device tree board definition, allowing compatible shield
boards to be used.

Signed-off-by: Ian Morris <ian.d.morris@outlook.com>
2025-10-14 18:53:18 +02:00
Johan Hedberg
0e57061424 Bluetooth: tests: bsim: Restore auto PHY config
Restore the auto-phy config for tests which seem particularly sensitive
to timings related to this.

Signed-off-by: Johan Hedberg <johan.hedberg@silabs.com>
2025-10-14 18:53:08 +02:00
Johan Hedberg
3fa1b98c4f Bluetooth: Update TX buffer calculation with auto PHY changes
Make sure to consider both the new peripheral and central Kconfig options
when calculating needed TX buffers.

Signed-off-by: Johan Hedberg <johan.hedberg@silabs.com>
2025-10-14 18:53:08 +02:00
Johan Hedberg
46dddc5e51 Bluetooth: samples/tests: Update auto PHY usage to recent changes
Remove deprecated Kconfig option usage, and replace it with corresponding
options which yield the same behavior as before.

Signed-off-by: Johan Hedberg <johan.hedberg@silabs.com>
2025-10-14 18:53:08 +02:00
Johan Hedberg
eb8426d6d7 doc: release-notes-4.3: Document Bluetooth auto PHY update changes
Document the changes related to Bluetooth auto PHY update Kconfig options.

Signed-off-by: Johan Hedberg <johan.hedberg@silabs.com>
2025-10-14 18:53:08 +02:00
Johan Hedberg
30b4c3e438 Bluetooth: Host: Add role-specific auto PHY update options
The BT_AUTO_PHY_UPDATE option was problematic in the sense that it didn't
really allow any kind of fine-tuning of what automation is desired. In
particular, it didn't allow specifying which PHY was the preferred one (it
was hardcoded to 2M) and also didn't allow specifying role-specific
(central vs peripheral) preferences.

To solve this, deprecate the old option, and instead introduce
role-specific options that allow specifying 1M/2M/Coded/None as the
preference. The new options have slightly different defaults than the new:
for central role 2M stays as the preference, however since it's uncommon to
require automated changes on the peripheral side the default is set to
None there.

Signed-off-by: Johan Hedberg <johan.hedberg@silabs.com>
2025-10-14 18:53:08 +02:00
Johan Hedberg
7a672c05b3 Bluetooth: tests: bsim: Fix double advertising in test_connect2
There's a regression from commit 8cfad44852
which introduced trying to enable advertising twice. Remove the other
attempt.

Signed-off-by: Johan Hedberg <johan.hedberg@silabs.com>
2025-10-14 18:53:08 +02:00
Andrej Butok
5b2afd4bdb boards: nxp: frdm_mcxa156: enable the default MCU-Boot swap mode
Enables MCU-Boot default Swap mode (was overwrite only)
for the FRDM-MCXA156, after the flash program size switched
to the 16-bytes (was 128).

Signed-off-by: Andrej Butok <andrey.butok@nxp.com>
2025-10-14 18:52:55 +02:00
Szymon Janc
aa24a28809 Revert "Bluetooth: tester: Tune native_sim HCI configuration"
Those are not applied properly as subsequent overlays may (and
actually do!) overwrite some of configurations tuned in here.
Also with latest improvements in userchannel HCI driver low
buffers are handled in similar way as on real boards so no extra
tuning is needed anyway.

This reverts commit b6e7b650a2.

Signed-off-by: Szymon Janc <szymon.janc@codecoup.pl>
2025-10-14 18:52:37 +02:00
Tim Pambor
47813b0df9 tests: lib: timespec_util: fix format specifiers
Fix format specifiers for zassert strings for 64-bit platforms and
32-bit platforms that use 64-bit time_t.

Signed-off-by: Tim Pambor <tim.pambor@codewrights.de>
2025-10-14 18:52:19 +02:00
Tim Pambor
7e8a1f8c5e tests/mem_blocks_stats: Improve compatibility with 64-bit platforms
Use %zu format specifier only for size_t type to ensure compatibility with
both 32-bit and 64-bit platforms.

Signed-off-by: Tim Pambor <tim.pambor@codewrights.de>
2025-10-14 18:52:09 +02:00
Tim Pambor
951bf54920 tests/mem_blocks: Improve compatibility with 64-bit platforms
Use %zu format specifier for size_t type to ensure compatibility with both
32-bit and 64-bit platforms.

Signed-off-by: Tim Pambor <tim.pambor@codewrights.de>
2025-10-14 18:52:09 +02:00
Tim Pambor
ed3cfbb439 tests/sprintf: Improve compatibility with 64-bit platforms
Use %zu format specifier for size_t type to ensure compatibility with both
32-bit and 64-bit platforms.

Signed-off-by: Tim Pambor <tim.pambor@codewrights.de>
2025-10-14 18:52:09 +02:00
David Boullie
8249ca582a soc: silabs: s2: Move RAIL interrupts installer
Move the RAIL interrupts installer from the Bluetooth HCI driver
to the SoC layer so that it can be used by other subsystems
as well.

Signed-off-by: David Boullie <David.Boullie@silabs.com>
2025-10-14 18:51:57 +02:00
Aymen LAOUINI
4312c881f3 soc: ironside: Add UUID to boot report
- The UUID is the device unique identifier read from the
OTP and made available in boot report to avoid the repetitive
slow reads from OTP.

Signed-off-by: Aymen LAOUINI <aymen.laouini@nordicsemi.no>
2025-10-14 18:51:37 +02:00
Afonso Oliveira
3dcc6f5f8f doc: boards: nsim_arc_v: add RHX100 to board documentation
Add RHX100 board target to the nsim_arc_v platform documentation.
Update supported boards list and toolchain checking examples to
include both RMX100 and RHX100 references.

Signed-off-by: Afonso Oliveira <afonsoo@synopsys.com>
2025-10-14 18:51:25 +02:00
Afonso Oliveira
598d4cc097 boards: snps: nsim: arc_v: add RHX100 board configuration
Add board configuration for RHX100 RISC-V processor.
Provides device tree files for RHX100 and RHX1xx series,
YAML configuration for nSIM simulator integration,
and board-specific default configuration.

Signed-off-by: Afonso Oliveira <afonsoo@synopsys.com>
2025-10-14 18:51:25 +02:00
Afonso Oliveira
e7c6a28a1f soc: snps: nsim: arc_v: rhx: add RHX SoC configuration
Add RISC-V RHX SoC series configuration for ARC-V RHX cores.
Enables RV32IMAC ISA with bitmanip extensions (ZBA, ZBB, ZBC, ZBS).
Configures PMP with 16 slots and 8-byte granularity.
Sets RISCV_SOC_INTERRUPT_INIT enabled for interrupt initialization.
Configures 32 IRQs.
Adds MetaWare CCAC toolchain support with RHX-specific compiler flags.

Signed-off-by: Afonso Oliveira <afonsoo@synopsys.com>
2025-10-14 18:51:25 +02:00
Afonso Oliveira
6927160adf soc: snps: nsim: arc_v: rmx: add PMP_GRANULARITY configuration
Add explicit PMP_GRANULARITY default value of 8 to RMX SoC configuration.
This makes the PMP configuration more explicit and easier to understand.

No functional change as RISCV_PMP was already enabled and PMP_GRANULARITY
already defaulted to this value.

Signed-off-by: Afonso Oliveira <afonsoo@synopsys.com>
2025-10-14 18:51:25 +02:00
Afonso Oliveira
bf5412ebb5 soc: snps: nsim: arc_v: rmx: drop hardcoded MWDT flags
- Remove SoC-level ccac core/ISA flags (-av5rmx, -Z*)
- Depend on arcmwdt toolchain to derive flags from Kconfig
- Keep SOC linker script selection unchanged

Signed-off-by: Afonso Oliveira <afonsoo@synopsys.com>
2025-10-14 18:51:25 +02:00
Afonso Oliveira
d0de9456f2 soc: snps: nsim: arc_v: rmx: revert to shorter SOC configuration names
Uses shorter names for the RMX SOC configuration.

Changes:
- SOC_SERIES_NSIM_ARC_V_RMX -> SOC_SERIES_RMX
- SOC_NSIM_ARC_V_RMX100 -> SOC_RMX100

Also updates board Kconfig to use the shorter names.

Signed-off-by: Afonso Oliveira <afonsoo@synopsys.com>
2025-10-14 18:51:25 +02:00
Afonso Oliveira
aa5e13f227 dts: cpu: add device tree bindings for Synopsys ARC-V RMX RISC-V CPU
Add device tree binding file for the Synopsys ARC-V RMX RISC-V
CPU core. This binding enables proper device tree property parsing by
the Enhanced Device Tree (EDT) system, allowing Kconfig device tree
macros to access CPU properties like clock-frequency.

The binding includes the standard RISC-V CPU properties by extending
riscv,cpus.yaml, which provides access to properties defined in cpu.yaml
such as clock-frequency.

Also removes hardcoded SYS_CLOCK_HW_CYCLES_PER_SEC from board level
and adds DT-derived value to RMX SoC level.

Signed-off-by: Afonso Oliveira <afonsoo@synopsys.com>
2025-10-14 18:51:25 +02:00
Afonso Oliveira
1c52f45aec cmake: arcmwdt: riscv: derive ccac flags from Kconfig
Add arcmwdt RISC-V core/ISA mapping in target_riscv.cmake to
automatically derive compiler flags from Kconfig settings.

- Select series core flag from SoC Kconfig: -av5rmx/-av5rhx
- Map RISC-V Kconfig to ccac -Z flags (M/A/C/Zicsr/Zifencei/Zicntr)
- Handle compressed logic correctly: -Zc or individual Zc* sub-extensions
- Add F/D and compressed FPU (-Zf/-Zd, -Zcf/-Zcd)
- Add -Zmmul when M is not selected and ZMMUL is enabled
- Use OPTIONAL include to allow for arch-specific target files

Keep early compiler checks stable by not pushing -Z flags into
CMAKE_REQUIRED_FLAGS.

Co-authored-by: Torsten Tejlmand Rasmussen <torsten.rasmussen@nordicsemi.no>
Signed-off-by: Afonso Oliveira <afonsoo@synopsys.com>
Signed-off-by: Afonso Oliveira <afonso.oliveira707@gmail.com>
Signed-off-by: Torsten Tejlmand Rasmussen <torsten.rasmussen@nordicsemi.no>
2025-10-14 18:51:25 +02:00
Stefan Schwendeler
cb772579f4 driver: spi: spi_release() implementations requires an owner check
Without this check, `spi_context_unlock_unconditionally()` is capable
to release the SPI bus semaphore (ctx->lock) which might be taken by
another SPI slave device in the meantime.

Actually, this race condition happens when `spi_release()` is called
when the SPI slave device in question (spi_cfg) has already released
its chip select and also the SPI bus lock semaphore.

So, any not required call of `spi_release()` may result in a SPI
communication issue where the SPI bus lock, held by another SPI
slave device, is prematurely released.
The observable result is the simultaneous engagement of two SPI
chip selects after such an SPI release call.

Signed-off-by: Stefan Schwendeler <Stefan.Schwendeler@husqvarnagroup.com>
2025-10-14 07:45:13 -04:00
Xiang Liu
8e9fa6a273 bluetooth: remove blocking operation in bt_conn_get_info
bt_conn_get_info API is used to retrieve connection-related
information. However, bt_conn_get_info sends the HCI command
BT_HCI_OP_READ_ENCRYPTION_KEY_SIZE to retrieve current
key_size, causing excessive blocking time.

Signed-off-by: Xiang Liu <liuxiang18@xiaomi.com>
2025-10-14 07:45:01 -04:00
Chaitanya Tata
b71d290405 manifest: nrf_wifi: Pull script to parse nRF70 FW stats blob
A helper script is added to the nrf_wifi repo for parsing and dumping
nRF70 FW stats blob.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-10-14 07:44:51 -04:00
Chaitanya Tata
f6cd5c0e7e net: lib: shell: Add options t display vendor data
Along with key-value pairs, add an option to dump vendor values as a
blob, use can choose either one or both.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-10-14 07:44:51 -04:00
Chaitanya Tata
fdd7100933 drivers: nrf_wifi: Implement vendor stats
Populate the vendor stats with nRF70 FW statistics, this is handy in
debugging.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-10-14 07:44:51 -04:00
Quy Tran
153c9e6030 soc: renesas: rx: Add ofsm header file for RX26T
Add ofsm header file for option setting on RX26T MCU

Signed-off-by: Quy Tran <quy.tran.pz@renesas.com>
2025-10-14 07:44:34 -04:00
Quy Tran
899752322d dts: renesas: rx: Add non-mask interrupt reg for RX26T
Add NMISR, NMIER, NMICLR regs for RX26T

Signed-off-by: Quy Tran <quy.tran.pz@renesas.com>
2025-10-14 07:44:34 -04:00
Quy Tran
df638db93a arch: rx: Enable HAS_MAPPED_INTERRUPTS config on RX26T
RX26T MCU support mapped interrupt features, add dependency config to
enable zephyr library source from hal

Signed-off-by: Quy Tran <quy.tran.pz@renesas.com>
2025-10-14 07:44:34 -04:00
Quy Tran
7da22497ff manifest: hal_renesas: update revision for hal_renesas
Update revision for hal_renesas to latest

Signed-off-by: Quy Tran <quy.tran.pz@renesas.com>
2025-10-14 07:44:34 -04:00
Niyas Hameed
6740d82e04 MAINTAINERS: Add a collaborator for Microchip SAM
Add ArunMCHP as collaborator for Microchip SAM devices from vendor.

Signed-off-by: Niyas Hameed <niyas.hameed@microchip.com>
2025-10-14 07:44:24 -04:00
Jakub Klimczak
e783292ebd drivers: serial: virtio_console: Remove superfluous spinlocks
Spinlocks in functions virtconsole_control_recv_cb and
virtconsole_send_control_msg were unnecessary since those were called
from virtio_pci_isr or virtio_mmio_isr, which already use spinlocks.

Signed-off-by: Jakub Klimczak <jklimczak@internships.antmicro.com>
2025-10-14 07:44:12 -04:00
Jakub Klimczak
ff19a01868 drivers: serial: virtio_console: Make Kconfig more informative
Add descriptions to the Kconfig file and restructure it slightly.

Signed-off-by: Jakub Klimczak <jklimczak@internships.antmicro.com>
2025-10-14 07:44:12 -04:00
Jakub Klimczak
64b321f72c drivers: serial: virtio_console: Postpone transmission of control messages
There was a bug in the VIRTIO Console driver which could cause a deadlock
by attempting to add buffers to the control-tx virtqueue too fast and
with an infinite timeout.
This commit fixes it by placing messages that couldn't be sent in a FIFO
queue and taking care of them later in a callback function.

Signed-off-by: Jakub Klimczak <jklimczak@internships.antmicro.com>
2025-10-14 07:44:12 -04:00
Qingsong Gou
24a579bd18 dts: arm: sf32lb52x: add more uart node def
sf32lb52x series has 3xUSART, adding missing device node

Signed-off-by: Qingsong Gou <gouqs@hotmail.com>
2025-10-14 07:44:02 -04:00
Chris Friedt
2870082ad9 drivers: mfd: npm13xx: namespace TIMER_MAX to avoid conflict
`TIMER_MAX` is part of POSIX and defined in limits.h.

To avoid conflict with the standard, namespace the local definition with a
`NPM13XX_` prefix.

This fixes an issue that appeared in weekly CI:

https://github.com/zephyrproject-rtos/zephyr/actions/runs/18437938778/\
job/52533996345

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-10-14 07:43:49 -04:00
Phi Tran
93674a6dbe tests: serial: Add overlay for RSK-RX130@512KB board
Add uart property in tests/uart/uart_async_api for test
async APIs on RSK-RX130-512KB board.

Signed-off-by: Phi Tran <phi.tran.jg@bp.renesas.com>
2025-10-14 12:53:49 +03:00
Phi Tran
889a21d69d drivers: serial: Add DTC support for serial driver and implement Async API
Update serial driver support for RX MCU:
- Add DTC support for SCI UART driver.
- Implementation Async APIs for serial driver.

Signed-off-by: Phi Tran <phi.tran.jg@bp.renesas.com>
2025-10-14 12:53:49 +03:00
Phi Tran
58dac199c2 drivers: dtc: support dtc driver on RSK_RX130_512KB.
Initial commit to support DTC driver on Renesas RX130.
* drivers: DTC: implementation for DTC driver on RX130.
* dts: rx: update dts node in SoC layer to support DTC on RX130.

Signed-off-by: Phi Tran <phi.tran.jg@bp.renesas.com>
2025-10-14 12:53:49 +03:00
Phi Tran
e3aeb4bfd9 soc: renesas: rx: Add section data for dtc_vector_table region on RX130
Add support section data for dtc_vector_table to RAM region
on RSK-RX130.

Signed-off-by: Phi Tran <phi.tran.jg@bp.renesas.com>
2025-10-14 12:53:49 +03:00
Sudan Landge
826742fca2 boards: mps4: Enable non-secure variant support
Zephyr's TF-M has been aligned with upstream TF-M v2.2.0, which adds
support for Corstone-320 (CS320). The previous commit also updates TF-M
to fix compiler warnings seen with MPS4. So, with this update, enable
build and execution of non-secure variants of MPS4-based boards.

Signed-off-by: Sudan Landge <sudan.landge@arm.com>
2025-10-14 12:53:38 +03:00
Sudan Landge
ddb0da1521 manifest: update TF-M to fix MPS4 warnings
Use TF-M that has cherry-picked commits from upstream to fix compiler
warnings for MPS4.

Signed-off-by: Sudan Landge <sudan.landge@arm.com>
2025-10-14 12:53:38 +03:00
Sudan Landge
59a19f045f boards: arm: mps4: update ns variant flash layout
Use the flash layout recommended by mcuboot for consistency.

Signed-off-by: Sudan Landge <sudan.landge@arm.com>
2025-10-14 12:53:38 +03:00
Sudan Landge
fed87e6bb4 doc: update TF-M requirements
The TF-M requirements document contained a hard-coded list of Python
packages which is incomplete and can easily drift out of sync with the
TF-M project. Replace this list with a reference to TF-M’s own
``tools/requirements.txt`` so that all required dependencies are covered.

Also update the list of boards that support TF-M.

Signed-off-by: Sudan Landge <sudan.landge@arm.com>
2025-10-14 12:53:38 +03:00
Sudan Landge
837aa0c96d boards: arm: fix generation of DDR4 memory section
What is the change?
Split and redefine the DDR4 device tree nodes, in their respective board
variants so that linker scripts automatically generates a memory section
for each node.

Why do we need this change?
According to the official memory map of Corstone-320 available here:
https://developer.arm.com/documentation/109760/0000/SSE-320-FVP/SSE-320-FVP-memory-map
the non-secure world alias of DDR4 starts at 0x6000_0000 and
the secure world alias starts at 0x7000_0000.

Previously, the shared DDR4 node in mps4_common.dtsi listed multiple
regions, but Zephyr generated a linker memory region **only** for the
first address (0x6000_0000). This broke samples like `tflm_ethosu`,
on Corstone-320, which expect DDR4 memory region to start at 0x7000_0000
for secure variants of the MPS4 board.

Moving DDR4 definitions to per-board dts files ensures Zephyr creates
correct memory regions for each variant.
This also makes all the DDR4 regions available for applications to use
not just the first (applications would otherwise have to use some linker
magic to make those regions available in linker script).

Signed-off-by: Sudan Landge <sudan.landge@arm.com>
2025-10-14 12:53:38 +03:00
Mark Wang
5422e3f21f bluetooth: avdtp: save avdtp session to ep
when ep is configured, the ep is used by the avdtp session, so combine
them together when ep is configured.

Signed-off-by: Mark Wang <yichang.wang@nxp.com>
2025-10-14 12:53:27 +03:00
Mark Wang
02c5974e04 bluetooth: a2dp: ep->stream is cleared when stream l2cap is released
ep->stream is cleared when stream l2cap is released, it should not be
cleared by close and abort cmd procedure.

Signed-off-by: Mark Wang <yichang.wang@nxp.com>
2025-10-14 12:53:27 +03:00
Mark Wang
39eaec0513 bluetooth: a2dp: improve the stream l2cap release
When signal l2cap is disconnected, use `release_work` to release the
related stream l2cap connections. When releasing the sep's stream l2cap,
use `delay_work` to check the stream l2cap disconnecting result.
Move the stream l2cap disconnecting callback to sep because the chan is
in sep, then use this callback to indicate the sep stream chan is
released and sep is idle.

Signed-off-by: Mark Wang <yichang.wang@nxp.com>
2025-10-14 12:53:27 +03:00
Mark Wang
b9dc6a7fde bluetooth: a2dp: remove the aborted stream callback
The `released` callback is enough indicate that the stream is
invalid/released, so remove the `aborted` callback.

Signed-off-by: Mark Wang <yichang.wang@nxp.com>
2025-10-14 12:53:27 +03:00
Qingsong Gou
ee9843cfe4 drivers: serial: sf32lb: add uart interrupt support
add sf32lb52x uart interrupt support

Signed-off-by: Qingsong Gou <gouqs@hotmail.com>
2025-10-14 12:53:11 +03:00
Minh Tang
90d032a0e7 samples: boards: renesas: Add sample for CTSU input driver
Add sample for CTSU input driver using QE config files on
RSK-RX130-512KB

Signed-off-by: Minh Tang <minh.tang.ue@bp.renesas.com>
2025-10-14 12:52:50 +03:00
Minh Tang
63fbe63af2 boards: renesas: Add support CTSU for RSK-RX130 board
Add Pinctrl, status okay for CTSU node on RSK-RX130

Signed-off-by: Minh Tang <minh.tang.ue@bp.renesas.com>
2025-10-14 12:52:50 +03:00
Minh Tang
34cecdf3ec dts: rx: renesas: Add CTSU node for RX130
Add support CTSU device tree node for Renesas RX130

Signed-off-by: Minh Tang <minh.tang.ue@bp.renesas.com>
2025-10-14 12:52:50 +03:00
Minh Tang
4c74ff8a0b drivers: ctsu: Add support CTSU driver for RX MCUs
Add support for Capatitive Touch Sensing Unit driver for RX MCUs

Signed-off-by: Minh Tang <minh.tang.ue@bp.renesas.com>
2025-10-14 12:52:50 +03:00
Seppo Takalo
b1942ced1a modem: cmux: Handle C/R bit from address field
The C/R bit in the address field should be handled as explained
in 5.2.1.2 in the spec (3GPP TS 127.010).

To detect if the frame is a command or a response,
we need to know who was the initiator of the CMUX channel.

>    Initiator is the station that take the initiative to initialize
>    the multiplexer (i.e. sends the SABM command at DLCI 0 )

See the table from given section of the specification.

Also, on UIH frames 5.4.3.1 says
>    The frames sent by the initiating station have the C/R bit set to 1
>    and those sent by the responding station have the C/R bit set to 0.

NOTE: This is different than a C/R bit in the Type field.

Signed-off-by: Seppo Takalo <seppo.takalo@nordicsemi.no>
2025-10-14 12:52:39 +03:00
Måns Ansgariusson
6528605a87 shell: Remove shell history initialization function
The shell history initialization function doesn't work in if the shell
instance hasn't been created through the shell macro. This removes the
function to avoid confusion.

Signed-off-by: Måns Ansgariusson <Mansgariusson@gmail.com>
2025-10-14 12:52:27 +03:00
Måns Ansgariusson
683819f862 shell: history rewrite to use k_heap instead of ring_buffer
The ring_buffer API was not ideal for this use case, as it is designed for
concurrent access, which is not needed here. The new implementation using
k_heap is more readable and easier to maintain.

There is a slight penalty in memory usage & effectiveness due to the
overhead of k_heap, but since this isn't a production-critical path, the
trade-off is acceptable.

Signed-off-by: Måns Ansgariusson <Mansgariusson@gmail.com>
2025-10-14 12:52:27 +03:00
Petri Pitkanen
022de69491 tests: Bluetooth: Tester: Add support for scan parameters
Add new command to set scanning parameters, including scan window,
scan interval, and physical interface (1M and coded PHYs).

Signed-off-by: Petri Pitkanen <petri.pitkanen@silabs.com>
2025-10-14 12:52:13 +03:00
Piotr Krzyzanowski
5bf970516b tests: drivers: gpio: add nrf54h20dk_nrf54h20_cpuppr
Enable GPIO tests on nRF54H20 CPUPPR.

Signed-off-by: Piotr Krzyzanowski <piotr.krzyzanowski@nordicsemi.no>
2025-10-14 12:52:03 +03:00
Bartlomiej Buczek
005cf8fce8 samples: drivers: adc: Enable samples for nrf54h20 PPR.
Fill in necessary config files with platforms data.

Signed-off-by: Bartlomiej Buczek <bartlomiej.buczek@nordicsemi.no>
2025-10-14 12:51:44 +03:00
Felix Wang
d318537b21 test: drivers: pwm: Enable test cases for frdm_mcxw71
Enable pwm_api and pwm_loopback test.
All test cases passed.

Signed-off-by: Felix Wang <fei.wang_3@nxp.com>
2025-10-14 12:51:33 +03:00
Felix Wang
705a015b53 drivers: pwm: Enable PWM capture feature for TPM
This implementation refers to the code from FTM,
which supports to capture pulse and period.

Signed-off-by: Felix Wang <fei.wang_3@nxp.com>
2025-10-14 12:51:33 +03:00
Declan Snyder
eeabcd84f9 soc: mcxn947: Enable TRNG
Enable TRNG driver of MCXN947.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-10-14 12:51:22 +03:00
Declan Snyder
4770b8293f drivers: entropy: Add basic driver for ELS RNG
Adds a very rudimentary driver for getting some entropy from the
edgelock subsystem random number generator.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-10-14 12:51:22 +03:00
Can Wang
0610da60e6 tests: Bluetooth: BR: fix import error in smp_io_cap test suite.
Because HCI_XXX_IO_CAPABILITY is removed from bumble v0.0.214.

Signed-off-by: Can Wang <can.wang@nxp.com>
2025-10-14 12:51:13 +03:00
Alain Volmat
f2a3f11427 samples: video: avoid K_FOREVER wait on initial buffer allocation
On samples startup, video buffers are being allocated in order to
hold the captured data. Currently the timeout is set to K_FOREVER,
leading to having those samples waiting forever if there isn't
enought memory available on the platform.
Considering that this is done at beginning of the sample and at
that moment there isn't reason to having to wait for the
availability of memory, the timeout is replaced by K_NO_WAIT which
will allow to have the function returning with an error if the
allocation is failing.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-10-14 12:50:54 +03:00
Robert Lubos
140f193839 doc: migration-guide-4.3: Add entry about CoAP client request changes
Cover struct coap_client_request changes in the migration guide.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-10-14 12:50:39 +03:00
Robert Lubos
75ef63921d net: coap_client: Move send buffer into request context
Keep a separate buffer for each request context instead of having a
single common buffer for the entire client context. This allows to
simplify the retransmission logic, as parallel requests will no longer
overwrite the buffer for each other. That way, we can simply retransmit
the packet w/o a need to recreate it, and thus reach to the payload
pointer or callback.

This removes the requirement to keep the payload pointer, provided to
asynchronous coap_client_req() call, valid throughout the exchange
lifetime for simple cases (i.e. no block transfer used). In case of
block transfer, this is unavoidable and needs to be documented.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-10-14 12:50:39 +03:00
Robert Lubos
c5c51f23d8 net: coap: Define a symbol for fixed header size
Move the definition from the test suite to a public header.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-10-14 12:50:39 +03:00
Robert Lubos
f7e9d21936 net: coap_client: Use buffers instead of pointers for path and options
Use buffers instead of pointers for path and extra options provided in
the struct coap_client_request, so that the library keeps a copy of the
path/options instead of pointers. That way, the library can still work
correctly in case of retransmissions or block transfer in case when the
original path or options were automatic variables that went out of
context.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-10-14 12:50:39 +03:00
Seppo Takalo
9d93594de9 modem: cmux: Define macros for header size
Define CMUX_HEADER_SIZE macro that is 6 or 7 bytes depending on
MTU.

Remove the previous CMUX_FRAME_SIZE_MAX that was a bit misleading
as it meant only the header size without data and was fixed to 7 bytes.

Redefine new macros CMUX_FRAME_SIZE_MAX and CMUX_FRAME_SIZE_MIN which
are actually frame sizes with data included.

Signed-off-by: Seppo Takalo <seppo.takalo@nordicsemi.no>
2025-10-14 12:50:30 +03:00
Bartosz Miller
1d0d6fb3a4 tests: drivers: flash: Exclude nrf54h from the 'default' test case
Test run on the nrf54h20dk requires 'gpio_loopback' fixture

Signed-off-by: Bartosz Miller <bartosz.miller@nordicsemi.no>
2025-10-14 12:50:20 +03:00
Benjamin Cabé
fb7a74ebbd doc: boards: nxp: common documentation snippets should not be in toctree
Ensure that common documentation snippets meant to be "literalinclude"d
in other pages are not treated as regular rst files and de facto
excluded from the documentation global toctree.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-10-13 21:11:50 -04:00
Benjamin Cabé
13075122cb doc: boards: nxp: mcx_nx4x_evk: remove unnecessary index page
This intermediate index page is unnecessary and causes the boards that
are included in its toctree to appear in multiple toctrees, which is a
Sphinx warning.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-10-13 21:11:50 -04:00
Benjamin Cabé
a1fdfece81 doc: boards: nxp: frdm_mcxaxx6: remove unnecessary index page
This intermediate index page is unnecessary and causes the boards that
are included in its toctree to appear in multiple toctrees, which is a
Sphinx warning.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-10-13 21:11:50 -04:00
Niyas Hameed
24790c965e MAINTAINERS: Add NhMchp as hal microchip maintainer
Add NhMchp to the list of hal_microchip maintainers.

Signed-off-by: Niyas Hameed <niyas.hameed@microchip.com>
2025-10-13 18:14:33 -04:00
Allen Zhang
67555218a2 tests: drivers: pwm: Support pwm_api on mcxw23 boards
Support pwm_api examples on frdm_mcxw23 and mcxw23_evk boards

Signed-off-by: Allen Zhang <chunfeng.zhang@nxp.com>
2025-10-13 18:14:11 -04:00
Allen Zhang
390b0a31d5 tests: drivers: watchdog: Support wdt_basic_reset_none on mcxw23 boards
Support wdt_basic_reset_none on frdm_mcxw23 and mcxw23_evk boards

Signed-off-by: Allen Zhang <chunfeng.zhang@nxp.com>
2025-10-13 18:14:11 -04:00
Allen Zhang
a324ecfcb8 dts: mcxw23x: Add dts support for MRT and SCTimer
Add dts support for MRT and SCTimer

Signed-off-by: Allen Zhang <chunfeng.zhang@nxp.com>
2025-10-13 18:14:11 -04:00
Allen Zhang
bd7c0cba39 soc: mcxw2xx: Add clock enablement for watchdog
Add clock enablement for watchdog

Signed-off-by: Allen Zhang <chunfeng.zhang@nxp.com>
2025-10-13 18:14:11 -04:00
Yves Wang
1f9e39752a drivers: watchdog: wdog32: add delay before init
WDOG32 requires at least 2.5 periods of wdog clock after start up or
before reconfig.

Signed-off-by: Yves Wang <zhengjia.wang@nxp.com>
2025-10-13 18:14:00 -04:00
Yves Wang
b1b32bfc3d drivers: watchdog: wdog32: format source code
Format code with clang format.

Signed-off-by: Yves Wang <zhengjia.wang@nxp.com>
2025-10-13 18:14:00 -04:00
Sylvio Alves
8c05389a74 west.yml: espressif: make longjmp/setjmp weak
Update hal_espressif to remove direct ROM linkage
of setjmp and longjmp calls to use the toolchain
implementations instead.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2025-10-13 18:13:32 -04:00
Tom Burdick
6c21c3f817 samples: mctp: Add sample.yaml's to samples
Adds the missing sample.yaml's for building these in CI and with
twister.

Fixes a build issue that came up along the way.

Signed-off-by: Tom Burdick <thomas.burdick@intel.com>
2025-10-13 18:13:23 -04:00
Łukasz Fundakowski
8201d20b24 twister: remove not needed try..except
Removed redundant try..except around the code
and fixed a test for that code which was false positive.

Signed-off-by: Łukasz Fundakowski <lukasz.fundakowski@nordicsemi.no>
2025-10-13 18:13:11 -04:00
Missael Maciel
4dee6c0cd2 drivers: memory: aps6404l: Removed addressshift field from APS6404L driver
Memory APS6404L does not support address shift feature.
Since it is being configured for different platforms that uses this
memory, this is cauing an error while building.

Signed-off-by: Missael Maciel <davidmissael.maciel@nxp.com>
2025-10-13 18:13:01 -04:00
Pieter De Gendt
6728e78576 Revert "shell: Add user data argument to shell_set_bypass"
Revert a change that broke the stable API function shell_set_bypass.
This reverts commit 6b876dba1b.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-10-13 18:12:42 -04:00
Pieter De Gendt
d358bc0e79 Revert "doc: releases: migration: 4.3: Add shell_set_bypass update"
Revert a change that broke the stable API function shell_set_bypass.
This reverts commit ad7b6aa6dd.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-10-13 18:12:42 -04:00
chao an
e83d8d957d net: dhcpv4_server: correct DHCPv4 lock scope for lease()
DHCPv4 server lease should release mutex correctly

Signed-off-by: chao an <anchao.archer@bytedance.com>
2025-10-13 11:28:11 -04:00
Paul Hepworth
58a21bf422 doc: fs: document preconditions with fs_open & fs_opendir
fs_open and fs_opendir rely on the structures in the first param
being intialized. (The init functions are documented with the type
declarations.) This simple documentation change mentions this need
to initialize (and emphasizes it). (Users of similar APIs such as
POSIX open and opendir do not expect this initialization need.)

Fixes #97205
Signed-off-by: Paul Hepworth <paulh@vpitech.com>
2025-10-13 11:28:00 -04:00
Etienne Carriere
1beb3d36dd drivers: mdio: stm32: don't mix HAL return value and errno
Correct mdio_stm32_read() and mdio_stm32_write() to return a valid errno
instead of mixing HAL return values and errno return values.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-10-13 11:27:34 -04:00
Etienne Carriere
617335951f drivers: ethernet: stm32: add missing empty line
Add missing empty line between local variable definitions and
instructions in eth_stm32_set_mac_config().

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-10-13 11:27:34 -04:00
Etienne Carriere
97ec44c909 drivers: ethernet: stm32: clean HAL_ETH_{Set|Get}DMAError() value test
Clean tests on HAL_ETH_SetDMAError() and HAL_ETH_GetDMAError() return
value to explicitly test against 0.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-10-13 11:27:34 -04:00
Etienne Carriere
83b1e12f4a drivers: ethernet: stm32: test HAL return value
Add missing test of some HAL functions return value

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-10-13 11:27:34 -04:00
Guillaume Gautier
88735a4aa1 drivers: adc: stm32: remove useless check of internal regulator state
Disabling the internal regulator is immediate so there is no need to check
the state of the Enable bit in the register.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2025-10-13 11:27:22 -04:00
Guillaume Gautier
67906ce049 drivers: adc: stm32: use the new differential support property
Use the new differential support property instead of relying on the series
name to determine if the ADC supports differential input channels.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2025-10-13 11:27:22 -04:00
Guillaume Gautier
7acd045e62 drivers: adc: stm32: use the new channel preselection property
Use the new channel preselection property instead of relying on the series
name to determine if the ADC channels need to be preselecting.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2025-10-13 11:27:22 -04:00
Guillaume Gautier
77be4b72eb drivers: adc: stm32: use the new deep powerdown property
Use the new deep powerdown property instead of relying on the series name
to determine if the ADC needs to be be put out or into deep powerdown mode.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2025-10-13 11:27:22 -04:00
Guillaume Gautier
7c719cefd5 drivers: adc: stm32: use the new internal regulator property
Use the new internal regulator property instead of relying on series name
to determine if the regulator should be enabled, and how to check that it
is ready.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2025-10-13 11:27:22 -04:00
Guillaume Gautier
a0cadb03c7 drivers: adc: stm32: relies on a ll define rather than series names
For managing the CCRDY flag, rely on the presence of the LL constant
LL_ADC_FLAG_CCRDY rather than a list of series.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2025-10-13 11:27:22 -04:00
Guillaume Gautier
5f0c63ea35 dts: arm: st: fill out adc nodes with the new properties
Fill out all ADC nodes of all STM32 with the new properties that apply to
them.
Also moves the status at the end of each node.
Also fixes ADC2 and 3 nodes for STM32F103 and ADC3 node for STM32L471 that
were missing some required properties.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2025-10-13 11:27:22 -04:00
Guillaume Gautier
c21cdd8569 dts: bindings: adc: stm32: add new properties to simplify the driver
Add a bunch of new property for the STM32 ADC in order to simplify the
driver. All these properties are hardware-specific and should not be
modified by users.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2025-10-13 11:27:22 -04:00
Chris Friedt
ee3402321f drivers: smbus: stm32: support packet-error-checking (pec)
Add support for SMBus packet error checking (PEC) to the stm32 driver.
This feature allows SMBust communication to be slightly more robust in
the presence of noise, in that packet errors can be detected on the
receive side.

Signed-off-by: Andrew Lewycky <alewycky@tenstorrent.com>
Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-10-13 11:27:13 -04:00
Chris Friedt
de9cf4ccaa tests: drivers: smbus: add packet error correction (pec) testsuite
Add tests for SMBus packet error correction (PEC). The two primary
utilities tested are

* smbus_pec(): compute the PEC byte for a Block Write
* smbus_read_check_pec(): verify a PEC after
  * Read Byte
  * Read Word
  * Block Read

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-10-13 11:27:13 -04:00
Chris Friedt
52ae0c5ed9 drivers: smbus: provide packet-error-checking (pec) routines
In the case that SMBus hardware does not automatically perform packet
error checking (PEC), provide generic inline functions in
`zephyr/drivers/smbus.h` that can be used by drivers to perform PEC in
software.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
Signed-off-by: Andrew Lewycky <alewycky@tenstorrent.com>
2025-10-13 11:27:13 -04:00
Jimmy Zheng
7edb310d02 arch: riscv: custom: add T-Head Xuantie CSR support
Move Xuantie supprot from arch/riscv/core/xuantie to the custom common
layer arch/riscv/custom/thead, with the following changes:

1. Rename Kconfig name
   CACHE_XTHEADCMO -> RISCV_CUSTOM_CSR_THEAD_CMO
2. Split the original arch/riscv/core/xuantie/Kconfig to
   a. arch/riscv/custom/thead/Kconfig: for T-Head extension
   b. arch/riscv/custom/thead/Kconfig.core: for T-Head CPU series
      (e.g. Xuantie E907)
3. Move cache line size defaults to SoC devicetree

Signed-off-by: Jimmy Zheng <jimmyzhe@andestech.com>
2025-10-13 11:26:28 -04:00
Jimmy Zheng
7732e66723 arch: riscv: custom: add OpenISA RI5CY and Zero-RISCY CSR support
Update OpenISA RI5CY and Zero-RISCY CSR handling to use RISC-V custom
CSR common code. Move these stuff to 'arch/riscv/custom/openisa':

1. Rename 'soc_ri5cy.h' to 'ri5cy_csr.h' for CSR definitions.
2. Rename 'soc_zero_riscy.h' to 'zero_riscy_csr.h' for CSR definitions.
3. Move CSR context to common macro '__custom_csr_save/restore_context'.
4. Move compiler option '-march=rv32imcxpulpv2' to common code.

Signed-off-by: Jimmy Zheng <jimmyzhe@andestech.com>
2025-10-13 11:26:28 -04:00
Jimmy Zheng
a6a11cc57d arch: riscv: custom: add OpenHW Group CVA6 CSR support
CVA6 supports custom CSR. Move 'cva6.h' to 'arch/riscv/custom/cva6_csr.h',
allowing other SoCs using the CVA6 core to reuse the same CSR definitions.

Signed-off-by: Jimmy Zheng <jimmyzhe@andestech.com>
2025-10-13 11:26:28 -04:00
Jimmy Zheng
8b27ffbecc arch: riscv: : custom: add Nuclei CSR support
GD32VF103 uses Nuclei-specific CSR. Move 'nuclei_csr.h' to
'arch/riscv/custom' to allow reuse across SoCs with the same Nuclei core.

Signed-off-by: Jimmy Zheng <jimmyzhe@andestech.com>
2025-10-13 11:26:28 -04:00
Jimmy Zheng
1b310b1542 soc: egis: et171: add support for Andes custom CSRs
Egis ET171 implements Andes custom CSRs. Enable the following features:

1. Low level initialization of Andes CSRs
2. HWDSP and PowerBrake extensions with context save/restore
3. EXEC.IT extension

Signed-off-by: Jimmy Zheng <jimmyzhe@andestech.com>
2025-10-13 11:26:28 -04:00
Jimmy Zheng
7ee9fd978c soc: telink: tlsr951x: use RISC-V custom CSR common code
TLSR951x also supports Andes extended CSR. Reworks the following CSR
handling to use the RISC-V custom CSR common code:

1. Use common macros for HWDSP CSR context save/restore.
2. Use common macros for PFT CSR context save/restore.
3. Use common low-level CSR initialization via __reset hook.

Signed-off-by: Jimmy Zheng <jimmyzhe@andestech.com>
2025-10-13 11:26:28 -04:00
Jimmy Zheng
679ce42f15 arch: riscv: custom: add Andes CSR support
Rework Andes-specific CSR to use RISC-V custom CSR common code.
Move these stuff to 'arch/riscv/custom/andes':

1. Rename 'soc_v5.h' to 'andes_csr.h' for CSR definitions.
2. Replace '_start' with '__reset' hook for low-level CSR initialization.
3. Move CSR context to common macro '__custom_csr_save/restore_context'.
4. Move 'EXECIT' CSR support to common code.
5. Move PMA CSR driver to common code.
6. Use RISC-V common linker.ld instead of SoC-specific linker.ld.

Signed-off-by: Jimmy Zheng <jimmyzhe@andestech.com>
2025-10-13 11:26:28 -04:00
Jimmy Zheng
7d169ccc26 arch: riscv: introduce RISC-V custom CSR common layer
RISC-V allows custom CSR implementation. Some SoCs from different vendors
may share the same core or the same custom CSR definitions and drivers.

This patch introduces 'arch/riscv/custom', which centralizes support
for custom CSRs, allowing code reuse across SoCs that come from different
vendors. Currently supported thess custom CSR:
  1. Andes
  2. Nuclei
  3. OpenHWGroup CVA6
  4. OpenISA RI5CY
  5. OpenISA Zero-riscy
  6. T-Head Xuantie

Signed-off-by: Jimmy Zheng <jimmyzhe@andestech.com>
2025-10-13 11:26:28 -04:00
Etienne Carriere
e65007ee0d boards: st: stm32n6570_dk: correct touchscreen reset line
Correct GT911 touchscreen reset line that is connected to GPIO E1,
not E4, on stm32n6570_dk boards. Note that GPIO E4 in connected
to SDcard data bus line D3 on that board.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-10-13 09:38:59 -04:00
Mert Ekren
ee6ccea957 tests: drivers: dma: Add MAX32675 overlay files
Enable 'chan_blen_transfer' and 'loop_transfer' tests for MAX32675EVKIT.

Signed-off-by: Mert Ekren <mert.ekren@analog.com>
2025-10-13 09:38:46 -04:00
Triveni Danda
57a35d9cb4 net: l2: wifi: Fix override certs directory for sysbuild
Fix overriding the test certificates directory for enterprise mode
when using sysbuild. The override already works as expected without
sysbuild.

Signed-off-by: Triveni Danda <triveni.danda@nordicsemi.no>
2025-10-13 09:38:37 -04:00
Michael Zimmermann
58016ed6b6 net: socket: tls: Fix type of pointer
mbedtls_ssl_get_peer_cid takes size_t, not socklen_t.
c546c1cad1
changed the type of socklen_t to something that is incompatible with native
offloaded sockets, which caused a compiler error.

Signed-off-by: Michael Zimmermann <michael.zimmermann@sevenlab.de>
2025-10-13 09:38:26 -04:00
Jani Hirsimäki
0f214d3d9e net: ip: ipv6_nbr: p2p link: NA without link address option
Neighbor Advertisement (NA) messages without a link-layer address option
are now accepted on point-to-point links. See RFC 7066, ch. 2.2.

Signed-off-by: Jani Hirsimäki <jani.hirsimaki@nordicsemi.no>
2025-10-13 09:38:09 -04:00
Marcelo Roberto Jimenez
47e7b7b2b5 drivers: ethernet: Add promiscuous mode to slip interface
Slip is naturally promiscuous, so this patch does nothing but
acknowledge that. Promiscuous mode in slip is important to allow
the interface to be added to a bridge.

Signed-off-by: Marcelo Roberto Jimenez <marcelo.jimenez@gmail.com>
2025-10-13 09:37:56 -04:00
Marcelo Roberto Jimenez
074f4db67a drivers: ethernet: Run clang-format before applying a patch
This patch just formats the file before the real patch so that
whitespace changes do not mix with the real code changes.

Signed-off-by: Marcelo Roberto Jimenez <marcelo.jimenez@gmail.com>
2025-10-13 09:37:56 -04:00
Ben Marsh
2a0fb72c6a drivers: flash: stm32_qspi: Fix special behaviour for Microchip QSPIs
Commit 539928d introduced a special behaviour for Microchip QSPI flash
memories into the STM32 QSPI flash driver, to handle the fact that these
memories use the PP_1_1_4 opcode (32H) for the PP_1_4_4 operation
(usually 38H).

The special Microchip-specific behaviour introduced in that commit sets
the address mode for a QSPI 1-1-4 write operation to 4 address lines,
rather than 1 address line, when the write command is configured as
SPI_NOR_CMD_PP_1_1_4. If the write command is configured as
SPI_NOR_CMD_PP_1_4_4, nothing is done and the operation will not succeed.

This behaviour is a bit backwards, as it results in a QSPI flash memory
configured in 1-1-4 write mode using 4 address lines (1-4-4 operation).
It should be the other way round, so that a QSPI flash memory configured
in 1-4-4 mode uses 4 address lines (1-4-4 operation).

This commit changes the Microchip-specific special behaviour to set the
opcode for the specified write mode, rather than using a different write
mode to that which is configured in order to use a valid opcode. This
means that a QSPI flash memory configured in 1-4-4 mode, or without the
writeoc DT property set (defaults to 1-4-4 for quad mode), will operate
in 1-4-4 mode. 1-1-4 mode is unsupported, as before.

Also update the Kconfig option description for
CONFIG_USE_MICROCHIP_QSPI_FLASH_WITH_STM32 to remove references to the
Global Block Protection Unlock instruction - this was added at the same
time as the Microchip-specific special behaviour for the 1-1-4 / 1-4-4
opcode but is distinct from this and is not affected by
CONFIG_USE_MICROCHIP_QSPI_FLASH_WITH_STM32.

Signed-off-by: Ben Marsh <ben.marsh@helvar.com>
2025-10-13 09:37:21 -04:00
Titouan Christophe
4deaa62656 boards: st: stm32h7s78_dk: add support for touch input
Add support for the touch input controller on the STM32H7S78-DK:
- Enable I2C1 on the board
- Add device tree node for the touch controller in the display panel

Signed-off-by: Titouan Christophe <titouan.christophe@mind.be>
2025-10-13 09:36:27 -04:00
Petri Pitkanen
f04d0196de test: Bluetooth: tester: Add support for EAD peripheral
Added three functions to support the EAD peripheral:
    - Setting and storing key materials for EAD
    - Encrypting data for EAD advertisements
    - Decrypting data from EAD advertisements

Signed-off-by: Petri Pitkanen <petri.pitkanen@silabs.com>
2025-10-13 09:36:11 -04:00
Jörg Hofrichter
47abb0c65d boards: adafruit: Fix ws2812 pin on Adafruit Feather RP2040.
As stated in [1], the ws2812 pin is on GPIO16.

[1] https://github.com/adafruit/Adafruit-Feather-RP2040-PCB/blob/main/Adafruit%20Feather%20RP2040%20pinout.pdf

Signed-off-by: Jörg Hofrichter <joerg@projektecke.de>
2025-10-13 09:36:02 -04:00
Firas Sammoura
05ba27accd arch: riscv: Handle multiple pmpcfg registers in PMP init
The PMP initialization and thread seeding logic in arch/riscv/core/pmp.c
did not correctly handle scenarios where the global PMP entries span
across multiple `pmpcfg` hardware registers.

The `global_pmp_cfg` array, intended to store the hardware register
values, was hardcoded to size 1. This is only sufficient if all global
PMP entries fall within the range covered by the first `pmpcfg` register
(e.g., pmpcfg0). When more global entries are used, their configurations
reside in subsequent `pmpcfg` registers (pmpcfg1, pmpcfg2, etc.).

The code was only saving/restoring and checking `global_pmp_cfg[0]`,
leading to loss of configuration for entries mapped to higher `pmpcfg`
registers.

This patch fixes this by:

1.  Resizing the `global_pmp_cfg` array to
    `CONFIG_PMP_SLOTS / PMPCFG_STRIDE` to correctly accommodate values
    from all potentially used `pmpcfg` CSRs.
2.  In `z_riscv_pmp_init`, using `memcpy` to save the entire contents of
    the local `pmp_cfg` array (derived from initial setup) into the
    `global_pmp_cfg` array.
3.  In `z_riscv_pmp_thread_init`, using `memcpy` to restore the entire
    saved global configuration from `global_pmp_cfg` into a thread's
    `pmp_cfg` array.
4.  Updating the SMP consistency assertion in `z_riscv_pmp_init` to
    compare the contents of the array element @ `index / PMPCFG_STRIDE`
    of the `pmp_cfg` arrays.

These changes ensure that the configurations from all relevant `pmpcfg`
registers are preserved and correctly propagated to thread contexts.

Signed-off-by: Firas Sammoura <fsammoura@google.com>
2025-10-13 09:35:36 -04:00
Rami Saad
7d2fb6c013 mgmt: mcumgr: grp: settings_mgmt: Add capability to save setting by key
Extend the save command to allow passing name/val pair to save a
subtree or individual setting to persistent storage.
Resolves zephyrproject-rtos#90407

Co-authored-by: Jamie <40387179+nordicjm@users.noreply.github.com>
Signed-off-by: Rami Saad <rami.saad@morgansolar.com>
2025-10-13 09:35:23 -04:00
Keith Packard
5505c0d7ad modules/psa-arch-tests: Add GCC 14.3 support patch
psa-arch-tests includes device drivers that failed to mark
registers with 'volatile'. GCC 14.3 cleverly optimized
sequential register accesses using strd/ldrd instructions which
caused the drivers to fail.

Move the psa-arch-tests repository forward to the version which includes a
fix for this.

Signed-off-by: Keith Packard <keithp@keithp.com>
2025-10-13 09:35:01 -04:00
Quy Tran
e86098fb20 tests: drivers: watchdog: use Kconfig options for setup flags and timeout
Replace hard-coded platform definrs with Kconfig marcos

Signed-off-by: Quy Tran <quy.tran.pz@renesas.com>
2025-10-13 09:33:35 -04:00
Quy Tran
ef8665dc4d boards: renesas: Enable watchdog driver on RSK-RX130-512kb
Enable iwdt dts nodes and iwdtsclk clock on RSK-RX130-512kb

Signed-off-by: Quy Tran <quy.tran.pz@renesas.com>
2025-10-13 09:33:35 -04:00
Quy Tran
255096e02c soc: renesas: rx: enable option function select register 0
Enables OSF0 register select for IWDT driver setting on start mode

Signed-off-by: Quy Tran <quy.tran.pz@renesas.com>
2025-10-13 09:33:35 -04:00
Quy Tran
fd859e7a3b dts: renesas: rx: add iwdt property node for watchdog driver
Add iwdt property node on dts for watchdog driver

Signed-off-by: Quy Tran <quy.tran.pz@renesas.com>
2025-10-13 09:33:35 -04:00
Sang Tran
7b9fd54052 drivers: watchdog: Support Renesas RX independent watchdog timer driver
Add initial support for independent watchdog driver for Renesas RX
with r_iwdt_rx RDP HAL

Signed-off-by: Sang Tran <sang.tran.jc@renesas.com>
2025-10-13 09:33:35 -04:00
Sang Tran
b82eefc397 arch: rx: Add NMI vector table for Renesas RX MCU
Add support for non-maskable interrupt (NMI)  vector table for
Renesas RX architecture

Signed-off-by: Sang Tran <sang.tran.jc@renesas.com>
2025-10-13 09:33:35 -04:00
Quy Tran
2b25575d9c soc: renesas: rx: Update OFS value in vects.c using Kconfig
OFS values setting for RXv1/RXv2 will be defined in SOC
Kconfig and set in vects.c file

Signed-off-by: Quy Tran <quy.tran.pz@renesas.com>
2025-10-13 09:33:35 -04:00
Quy Tran
842fd974cc include: arch: rx: Move _ebss before noinit to preserve after reset
This change ensure .noinit is excluded from zeroed memory region after
reset

Signed-off-by: Quy Tran <quy.tran.pz@renesas.com>
2025-10-13 09:33:35 -04:00
Firas Sammoura
4b3cb736d5 arch/riscv: Refactor PMP configuration reading
Factor out the logic for reading PMP configuration registers (pmpcfgX)
from dump_pmp_regs into a new static inline helper function,
z_riscv_pmp_read_config.

This new function encapsulates the architecture-specific (RV32/RV64)
and slot-count-specific reads of the pmpcfg CSRs, improving code
organization and potential reusability.

Signed-off-by: Firas Sammoura <fsammoura@google.com>
2025-10-13 08:57:15 +02:00
Tim Lin
fb7406488f soc: it51xxx/linker: Make h2ram_pool behind the CONFIG_ESPI_IT8XXX2 option
Apply the same CONFIG_ESPI_IT8XXX2 guard to the .h2ram_pool section
in the IT51XXX linker script, since the eSPI driver is compatible with
IT8XXX2. This keeps linker behavior consistent and avoids unused
memory allocation on non-eSPI platforms.

Signed-off-by: Tim Lin <tim2.lin@ite.corp-partner.google.com>
2025-10-13 08:56:54 +02:00
Tim Lin
74c57ce769 soc: it8xxx2/linker: Make h2ram_pool behind the CONFIG_ESPI_IT8XXX2 option
The .h2ram_pool linker section was previously always included, even on
platforms that do not enable eSPI. This caused unnecessary memory
reservation in the RAMABLE_REGION for non-eSPI configurations.

Add a CONFIG_ESPI_IT8XXX2 guard around the .h2ram_pool section definition
so that it is only included when eSPI support is enabled.

Signed-off-by: Tim Lin <tim2.lin@ite.corp-partner.google.com>
2025-10-13 08:56:54 +02:00
Andrzej Głąbek
7ff2be07f2 drivers: mspi_dw: Remove needless TXEIR check
This is a follow-up to commit f0f5f8cdef.

There is no need to check if TXE interrupt flag is set before
calling tx_dummy_bytes(), as the function can handle the case
when it is called even though there is no room in the TX FIFO.
On the other hand, the check may be actually harmful, as it may
prevent adding more items to the TX FIFO while the SSI controller
is waiting until the FIFO achieves its transfer start level.
Remove the check then and exit the ISR loop when no dummy bytes
could be written into the TX FIFO.

Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
2025-10-13 08:56:39 +02:00
Yongxu Wang
60d8b2fe37 soc: nxp: imx943: Fix potential out-of-bounds access in pm_mcore loop
Limit the loop to the smaller of nvic_iser_nb and
GPC_CPU_CTRL_CMC_IRQ_WAKEUP_MASK_COUNT to ensure safe access.

Signed-off-by: Yongxu Wang <yongxu.wang@nxp.com>
2025-10-13 08:55:32 +02:00
Marcelo Roberto Jimenez
7899951c94 drivers: ethernet: Add promiscuous mode to xmc4xxx
This patch adds promiscuos mode to the XMC4xxx SOC's ethernet driver.

Signed-off-by: Marcelo Roberto Jimenez <marcelo.jimenez@gmail.com>
2025-10-13 08:55:05 +02:00
Marcelo Roberto Jimenez
ef42928c50 drivers: ethernet: Run clang-format before applying a patch
This patch just formats the file before the real patch, otherwise
the changes would be hard to read.

The only addition was a third parameter (NULL) to all the usages
of the macro WAIT_FOR, since the dangling comma triggered conflicts
between clang-format and check_compliance.py.

Signed-off-by: Marcelo Roberto Jimenez <marcelo.jimenez@gmail.com>
2025-10-13 08:55:05 +02:00
Jordan Yates
892013a5c6 fuel_gauge: composite: fix unreleased PM constraint
Fix the PM constraint not being released when the sample fetch API call
fails.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-10-13 08:54:24 +02:00
Richard Wheatley
d50f116279 samples: add overlay for adc samples/tests
adc adc overlay for samples and tests

Signed-off-by: Richard Wheatley <richard.wheatley@ambiq.com>
2025-10-13 08:46:04 +02:00
Richard Wheatley
980741229b boards: ambiq: apollo4p_blue_kbr_evb add adc0
add adc0 to board dts
add adc to yaml test config
add adc default configuration to pinctrl

Signed-off-by: Richard Wheatley <richard.wheatley@ambiq.com>
2025-10-13 08:46:04 +02:00
Richard Wheatley
a49b78a049 dts: arm: ambiq: update apollo4p_blue to use adc
update ambiq apollo4p_blue adc

Signed-off-by: Richard Wheatley <richard.wheatley@ambiq.com>
2025-10-13 08:46:04 +02:00
Richard Wheatley
7ef0911346 dts: arm: ambiq: add power states to apollo4p_blue
add power states to the ambiq apollo4p_blue

Signed-off-by: Richard Wheatley <richard.wheatley@ambiq.com>
2025-10-13 08:46:04 +02:00
Richard Wheatley
dc18e381dc soc: ambiq: apollo4x: add Add pinctrl to apollo4x
add pinctrl select by default for apollo4x

Signed-off-by: Richard Wheatley <richard.wheatley@ambiq.com>
2025-10-13 08:46:04 +02:00
Kiara Navarro
fa2aeb1e3f logging: rtt: remove cast to void to used function arguments
The `ctx` arg is used in `data_out_drop_mode`, so casting to void should
be removed.

Signed-off-by: Kiara Navarro <knavarro@paltatech.com>
2025-10-13 08:45:03 +02:00
Kiara Navarro
e8db885acd logging: rtt: mark unused function arguments
Add missing ARG_UNUSED() to mark unused function arguments.

Signed-off-by: Kiara Navarro <knavarro@paltatech.com>
2025-10-13 08:45:03 +02:00
Sebastian Viviani
77e4752cbc shields: support for ssd1306 shield on nrf5340dk
The ssd1396 shield uses an I2C interface, and the nrf5340dk board
overlay needs a bigger buffer size by default to work.

Signed-off-by: Sebastian Viviani <sebastian.viviani@nordicsemi.no>
2025-10-13 08:44:16 +02:00
James Roy
44ff3d3805 samples: Add red-black tree sample program
Introduce an example program to demonstrate
how to use the red-black tree API.

Signed-off-by: James Roy <rruuaanng@outlook.com>
2025-10-13 08:44:07 +02:00
James Roy
ce8c0eac5b samples: data_structures: Fix the incorrect sample path in README
Change `samples/lib/mini_heap` to the actual path
`samples/data_structures/mini_heap`.

Signed-off-by: James Roy <rruuaanng@outlook.com>
2025-10-13 08:44:07 +02:00
Emil Gydesen
1c004a08c3 Bluetooth: CCP: Client: Add support for get provider name
Add support for getting the remote bearer provider
name.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-10-13 08:43:47 +02:00
Tim Pambor
18d885d76c tests: libc: thread: fix -Wformat errors
Cast uintptr_t to unsigned long long and adjust format specifier
accordingly to ensure compatibility on both 32-bit and 64-bit
architectures.

Signed-off-by: Tim Pambor <tim.pambor@codewrights.de>
2025-10-12 10:58:20 -04:00
Tim Pambor
ecffdacb64 tests: posix: fix -Wformat errors
Use %lld format specifier for variables of type eventfd_t. Cast variables
of type time_t to long long and use %lld format specifier to ensure
compatibility with 32-bit and 64-bit time_t.

Signed-off-by: Tim Pambor <tim.pambor@codewrights.de>
2025-10-12 10:58:11 -04:00
Tim Pambor
ba9147948a tests: mcumgr: Improve compatibility with 64-bit platforms
Use %zu format specifier for size_t type to ensure compatibility with both
32-bit and 64-bit platforms.

Signed-off-by: Tim Pambor <tim.pambor@codewrights.de>
2025-10-12 10:58:01 -04:00
Camille BAUD
a8677f5fc4 tests: drivers: flash: fix test_storage_partition
It's triggering on things without a flash driver or flash tag...
Disable it based on the presence of a activated flash driver.

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-10-12 11:29:21 +03:00
Pavel Vasilyev
5547392275 tests: bsim: bluetooth: host: misc: hfc: Enable auto-initated procedures
Remove FIXME and re-enable autoinitiated procedures.

Removing the configuration as bug doesn't appear anymore.

Signed-off-by: Pavel Vasilyev <pavel.vasilyev@nordicsemi.no>
2025-10-11 20:06:48 -04:00
Philippe Peurichard
87ffb9711e samples: subsys: display: add stm32f469_disco conf file
Add stm32f749i_disco conf file to enable input driver
for touchscreen in LVGL samples applications.

Signed-off-by: Philippe Peurichard <p.peurichard@gmail.com>
2025-10-11 20:06:40 -04:00
Philippe Peurichard
d3f989378c samples: drivers: display: add stm32f469_disco conf file
Add stm32f749i_disco conf file to support samples display driver
applications . Increase the amount of HEAP to ensure
k_malloc allocation goes well.

Signed-off-by: Philippe Peurichard <p.peurichard@gmail.com>
2025-10-11 20:06:40 -04:00
Philippe Peurichard
d4a8099d4d boards: st: add pllsai for ltdc & mipi-dsi support on stm32f469 disco
Extension of support of pllsai for display configuration of stm32f469
discovery board. Enable Display panel through LTDC & DSI-HOST
blocks. Enable Touch screen. Enable FMC/SDRAM for Framebuffer.

Signed-off-by: Philippe Peurichard <p.peurichard@gmail.com>
2025-10-11 20:06:40 -04:00
Philippe Peurichard
a7a751c8dd dts: arm: st: add mipi_dsi node in stm32f469.dtsi
Describe mipi_dsi block available on stm32f469 & above
Allow to display data on DSI panels taking output of LTDC
after serializing data.

Signed-off-by: Philippe Peurichard <p.peurichard@gmail.com>
2025-10-11 20:06:40 -04:00
Jordan Yates
c3a0dafcb4 boards: nordic: Arduino SPI high drive strength
All nRF development kits have long traces from the SoC to the Arduino
header. Set the drive strength on the SPI ports to high to increase the
chances that the default SPI frequency defined in shields works without
errors.

This aligns the remaining DKs with the nRF91 DKs.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-10-11 20:06:31 -04:00
Danny Nuch
c9d3a01c20 arch: arm: specify max MPU regions for CONFIG_ARMV7_M_ARMV8_M_MAINLINE
Specifies max value of 16 MPU regions for this processor.

Signed-off-by: Danny Nuch <dannynuch@gmail.com>
2025-10-11 08:35:58 -04:00
Mahesh Mahadevan
b8419e6d29 dts: rw6xx: Update the power mode exit latency
Update the exit latency based on measurements

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2025-10-10 20:51:24 -04:00
Mathieu Choplain
7bbecd8c37 scripts: kconfig: fix dt_nodelabel_int_prop crash if prop doesn't exist
dt_nodelabel_int_prop did not check if the property existed on the node
before accessing it, which would result in a build-time crash (and thus
build error) if used on a node which lacked the requested property.

Fix by using the common _node_int_prop() helper which handles all edge
cases properly.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-10-10 20:51:13 -04:00
Aksel Skauge Mellbye
48d3aef043 samples: basic: button: Disable led on xgm240 boards
Button 0 and LED 0 share a GPIO pin on xgm240 boards. Remove the
`led0` alias in a board overlay to make the button sample work
out of the box.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-10-10 20:51:03 -04:00
Aksel Skauge Mellbye
3506523872 boards: silabs: Add xgm240_rb4316a and xgm240_rb4317a
Add support for xGM240-RB4316A and xGM240-RB4317A radio boards
for xGM240 modules. The two boards share pinout configuration, but
have different radio and power configurations.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-10-10 20:51:03 -04:00
Aksel Skauge Mellbye
f18b433636 dts: arm: silabs: Add xgm24 modules
Add devicetree and soc entries for xgm24 modules.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-10-10 20:51:03 -04:00
Aksel Skauge Mellbye
b6f5b59de6 boards: silabs: Add xg24_rb4186c board
Add support for xG24-RB4186C, a 10 dBm radio board using the
EFR32MG24 SoC. Pinout is mostly identical to RB4187C, so share
devicetree definitions between them.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-10-10 20:51:03 -04:00
Aksel Skauge Mellbye
4010d39ef9 boards: silabs: Tidy up xg24_rb4187c board definition
Add missing PWM node, remove unused defconfig, add Commander
runner support.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-10-10 20:51:03 -04:00
Aksel Skauge Mellbye
8a9a46920a boards: silabs: Move xg24_rb4187c to shared xg24 directory
Introduce xg24 directory to be able to share configuration between
rb4187c and new boards.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-10-10 20:51:03 -04:00
Siddhant Modi
41a35defc6 drivers: ethernet: eth_w5500
Fixes zephyrproject-rtos/zephyr#97217

Added new MONITOR_PERIOD config for W5500 driver
to remove dependency from ETH_PHY_DRIVER.

Signed-off-by: Siddhant Modi <siddhant.modi@gmail.com>
2025-10-10 20:50:50 -04:00
Alexander Apostolu
0e83446fd1 include: zephyr: drivers: sensor.h: fixed inline code format
Fixed inline code format from @code to backticks.

Signed-off-by: Alexander Apostolu <apostolu240@gmail.com>
2025-10-10 20:50:21 -04:00
Ofir Shemesh
4187375d81 tests: http_server: remove duplicated CONFIG_ZVFS_OPEN_MAX
The prj.conf for http_server/tls defined CONFIG_ZVFS_OPEN_MAX
twice.

Signed-off-by: Ofir Shemesh <ofirshemesh777@gmail.com>
2025-10-10 20:50:07 -04:00
Dawid Niedzwiecki
406675da24 drivers: flash: andes_xip: rename define
Rename the PAGE_SIZE to avoid conflicts.

Signed-off-by: Dawid Niedzwiecki <dawidn@google.com>
2025-10-10 20:49:55 -04:00
Declan Snyder
bba57b2f1e drivers: bluetooth: hci spi: Add missing semicolon
Adds a missing semicolon.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-10-10 20:49:39 -04:00
Chris Friedt
760d0cd500 samples: mcumgr: smp_svr: correct overlay-udp.conf to udp.conf
The EXTRA_CONF_FILE="overlay-udp.conf" should have been "udp.conf" after
with a recent rename.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-10-10 20:49:12 -04:00
Maciej Zagrabski
b69b064242 fs: littlefs: add api call for lfs_fs_gc
Lfs provide lfs_fs_gc function for some time now.
Function allow offloading of expensive block allocation scan.

Introduce lfs_fs_gc via api call fc_gc.

Signed-off-by: Maciej Zagrabski <mzi@trackunit.com>
2025-10-10 13:00:05 -04:00
Lyle Zhu
3ac4f92625 Bluetooth: Classic: OBEX: Optimize MOPL configuration
Set the MOPL of RX and TX to `BT_OBEX_MIN_MTU` when registering OBEX
server.

Set the TX MOPL to `BT_OBEX_MIN_MTU` when sending OBEX connection
request.

Check if the MOPL of client exceeds MTU of transport when server
receives the connection request.

Check if the MOPL of server exceeds MTU of transport when client
receives the connection response.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-10-10 12:59:56 -04:00
Lyle Zhu
26065ecee3 Bluetooth: Classic: GOEP: Support multiple OBEX sessions
Split the structure `struct bt_obex` into two parts.
Part 1 `struct bt_obex`, it is the common part and shared by all OBEX
sessions which share the same one transport.
Part 2 `struct bt_obex_server` and `struct bt_obex_client`. The
`struct bt_obex_server` is used to manage the OBEX session of server
role. The `struct bt_obex_client` is used to manage the OBEX session
of client role.

Add function `bt_obex_server_register()` to register the OBEX server
with specific uuid.

Add function `bt_obex_server_unregister()` to unregister the OBEX
server.

Add function `bt_obex_make_uuid()` to make UUID.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-10-10 12:59:56 -04:00
Arthur Gay
b62be03552 drivers: memc: stm32_xspi_psram: fix command size in x8 mode
This patch fixes PSRAM initialization logic in x8 mode by ensuring that
the data line mode configuration accurately reflects the io-x16-mode
property specified in the device tree.

Signed-off-by: Arthur Gay <arthur.gay@marshmallow.kids>
2025-10-10 12:59:42 -04:00
McAtee Maxwell
c47e6068ae tests: add kit_pse84_eval overlays for gpio_basic_api testsuite
- add kit_pse84_eval overlays for gpio_basic_api testsuite

Signed-off-by: McAtee Maxwell <maxwell.mcatee@infineon.com>
2025-10-10 12:59:33 -04:00
McAtee Maxwell
1c90409566 boards: add support for ifx kit_pse84_eval
- add needed board files for kit_pse84_eval board

Signed-off-by: McAtee Maxwell <maxwell.mcatee@infineon.com>
2025-10-10 12:59:33 -04:00
McAtee Maxwell
c83c6df512 drivers: uart: update ifx uart_pdl driver for kit_pse84_eval
- update ifx uart driver for kit_pse84_eval board

Signed-off-by: McAtee Maxwell <maxwell.mcatee@infineon.com>
2025-10-10 12:59:33 -04:00
McAtee Maxwell
69c64929b3 drivers: add ifx pinctrl driver updates for kit_pse84_eval
- add drive-strength capability for kit_pse84_eval

Signed-off-by: McAtee Maxwell <maxwell.mcatee@infineon.com>
2025-10-10 12:59:33 -04:00
McAtee Maxwell
281e52f6bf drivers: clock_control: add clock_control support for kit_pse84_eval
- add support for kit_pse84_eval board
- refactor infineon,fixed-clock binding
- refactor infineon,fixed-factor binding
- refactor infinein,peri-div binding

Signed-off-by: McAtee Maxwell <maxwell.mcatee@infineon.com>
2025-10-10 12:59:33 -04:00
McAtee Maxwell
5d3741caaf drivers: clock_control: rename files related to ifx clock_control
- rename ifx clock_control drivers
- rename infineon,cat1-peri-div yaml
- rename ifx clock dt-binding .h file

Signed-off-by: McAtee Maxwell <maxwell.mcatee@infineon.com>
2025-10-10 12:59:33 -04:00
McAtee Maxwell
3064c0f5db dts: add devicetree support for ifx edge devices
- add devicetree support for pse84 devices

Signed-off-by: McAtee Maxwell <maxwell.mcatee@infineon.com>
2025-10-10 12:59:33 -04:00
McAtee Maxwell
618be35125 modules: update hal_infineon module for infineon "edge" soc
- update moudle CMakeLists.txt files for new assets
- add infineon_kconfig.h file for definitions needed by soc

Signed-off-by: McAtee Maxwell <maxwell.mcatee@infineon.com>
2025-10-10 12:59:33 -04:00
McAtee Maxwell
03a6bb2282 soc: add support for ifx edge socs
- add basic soc files to support ifx pse84 soc
- add files needed for setting up the m55

Signed-off-by: McAtee Maxwell <maxwell.mcatee@infineon.com>
2025-10-10 12:59:33 -04:00
McAtee Maxwell
6ef6fcf459 modules: update revision of hal_infineon module
- update hal_infineon revision in preparation for new kit_pse84_eval
  board

Signed-off-by: McAtee Maxwell <maxwell.mcatee@infineon.com>
2025-10-10 12:59:33 -04:00
Jamie McCrae
e21305ef2e tests: dfu: img_util: Remove overlay from Kconfig files
Removes the `overlay-` name from Kconfig fragment files as
overlay file refers to devicetree overlay files, not Kconfig
fragments

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-10-10 12:59:18 -04:00
Jamie McCrae
6fb782389c samples: mgmt: mcumgr: smp_svr: Remove overlay from Kconfig files
Removes the `overlay-` name from Kconfig fragment files as
overlay file refers to devicetree overlay files, not Kconfig
fragments

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-10-10 12:59:18 -04:00
Emil Gydesen
a60ed23d19 doc: Releases: Add notes about deprecated bt_ctlr_set_public_addr
The function has been marked for deprecation.
Add entries in the release notes and migration guide.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-10-10 12:59:08 -04:00
Emil Gydesen
b07be641e7 Bluetooth: Controller: Deprecate bt_ctlr_set_public_addr
Deprecate the bt_ctlr_set_public_addr function.
It is unused in the tree, and there is a vendor specific HCI
command that can be used for the same purpose.
The function does not have any tests and is basically
unmaintained.
Additionally it is the only function in the public
controller API, and removing it would allow us to
remove that part completely as unused.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-10-10 12:59:08 -04:00
Lyle Zhu
6d77949698 Bluetooth: GOEP: Fix L2CAP segmented RX data handling issue
The receiving segmented L2CAP data can not be handled properly. Due to
the `struct bt_l2cap_chan_ops::alloc_buf` is NULL, the partial data
will be notified through callback `struct bt_l2cap_chan_ops::recv`.
The GOEP does not consider this issue and handles it as a completed
packet. It causes the L2CAP disconnecting due to the partial packet
cannot be processed by OBEX.

Add a RX pool, and set `struct bt_l2cap_chan_ops::alloc_buf`. The
L2CAP will allocate the buffer from the pool to buff the segmented
data. Only the completed packet will be notified through
`struct bt_l2cap_chan_ops::recv`.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-10-10 12:58:54 -04:00
Miguel Gazquez
84c889e479 soc: ti: cc23x0: drop deprecated CONFIG_BUILD_NO_GAP_FILL option
The CONFIG_BUILD_NO_GAP_FILL option became obsolete after commit
2e8868c16e and has since been deprecated.

Remove the unused Kconfig select from the CC23x0 SoC configuration.

Signed-off-by: Miguel Gazquez <miguel.gazquez@bootlin.com>
2025-10-10 12:58:30 -04:00
Martin Koehler
02ae4042ff dts: bindings: sensor: ti,ina226: Removed double enum value entry
This caused warnings that operating-mode is not tokenizable.

Signed-off-by: Martin Koehler <koehler@metratec.com>
2025-10-10 12:57:59 -04:00
Tomasz Chyrowicz
32615695ad dfu: Allow to use imgtool-based headers
It is possible to add MCUboot header through --pad-header option.
In such cases, the FLASH_LOAD_OFFSET does not point to the beginning of
the slot, but to the beginning of the executable area, thus the check
for the active slot should use ranges instead of exact values.

Signed-off-by: Tomasz Chyrowicz <tomasz.chyrowicz@nordicsemi.no>
2025-10-10 12:57:45 -04:00
Tomasz Chyrowicz
14af1654d1 soc: Move to the app-specific partitions
Use cpuapp_slot_partition instead of slot0_partition, so it is possible
to add MCUboot header through --pad-header option.
In such cases, the FLASH_LOAD_OFFSET does not point to the begining of
the slot, but to the beginning of the executable area, thus the check
for the active slot should use ranges instead of exact values.

Signed-off-by: Tomasz Chyrowicz <tomasz.chyrowicz@nordicsemi.no>
2025-10-10 12:57:45 -04:00
Mathieu Choplain
1609f10082 drivers: usb: udc: stm32: configure OTGFS/HS RxFIFO size using Kconfig
Create a new Kconfig option allowing to tweak the RxFIFO size on OTG_FS
and OTG_HS instances, and replace the old hardcoded method with this new
mecanism.

The default value of 600 bytes yields a similar size to the the previous
hardcoded default of 160 words (= 640 bytes) when combined with the fixed
overhead computed by the driver (~56 bytes on OTG_FS with 6 endpoints).

Also fix a tiny error in a logging message (DRAM size in bytes, not bits).

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-10-10 12:56:58 -04:00
Mathieu Choplain
6efa7f31fc drivers: usb: udc: stm32: allow EP max packet size up to HW capabilities
The maximal packet size (for non-control endpoints) was obtained by the
driver from HAL definitions which appear to not properly reflect hardware
capabilities.

Update driver to allow endpoints with wMaxPacketSize up to the maximal
value allowed by the USB Specification depending on operation mode, since
all STM32 USB controllers always support these values. Also move the EP
max packet size field in the 'struct udc_stm32_config' to avoid implicit
padding and add a documentation comment.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-10-10 12:56:58 -04:00
Mathieu Choplain
bbb8aba17d drivers: usb: udc: stm32: accept non-word-aligned MaxPacketSize or FIFOs
STM32 OTG USB controllers use word-addressable RAM with a 32-bit word size
so all allocations from the USB SRAM must be 32-bit aligned. The driver did
not accept unaligned values of wMaxPacketSize, and FIFO allocation code was
implicitly expecting FIFO sizes to be aligned as well (since it allocated
"bytes / 4" without rounding up).

Update driver to accept values of wMaxPacketSize that aren't word-aligned
and to allocate properly sized FIFOs sizes when an unaligned size has been
requested.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-10-10 12:56:58 -04:00
Mathieu Choplain
ac998f7109 drivers: usb: udc: stm32: clean up handling of USB buffer table
The ST USB controller (compatible 'st,stm32-usb') is fitted with private
SRAM called the Private Memory Area or PMA. This is primarily used to hold
data transfered over USB, but it also contains the so-called 'buffer table'
(a.k.a. BTABLE) which holds the base address and size of buffers in the PMA
allocated to each endpoint. The BTABLE is placed by the driver at the start
of the PMA and occupies a fixed size ('USB_BTABLE_SIZE'), which was stored
in the driver configuration field 'pma_offset'. This mechanism is unused on
non-ST USB controllers from STM32 microcontrollers, but USB_BTABLE_SIZE is
still defined (to a dummy value) and stored in the 'pma_offset' field which
becomes unused.

Remove the 'USB_BTABLE_SIZE' definition and the 'pma_offset' field from the
driver configuration, and update the ST USB controller-specific verison of
'udc_stm32_mem_init' to derive the BTABLE size from the number of endpoints
that the controller has instead.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-10-10 12:56:58 -04:00
Mathieu Choplain
3788b2c0a6 drivers: usb: udc: stm32: turn EP0 max packet size into a constant
The EP0 max packet size was de facto a constant because its value was the
same regardless of which USB IP was in use. However, it was stored as part
of the instance configuration anyways which is wasteful and slower.

Create new "UDC_STM32_EP0_MAX_PACKET_SIZE" driver-level constant with which
all usage of the per-instance configuration field is replaced.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-10-10 12:56:58 -04:00
Erwan Gouriou
9f4d477e96 west.yml: hal_stm32: Update dts/.../-pinctrl.dtsi
Update hal_stm32 with pinctrl files generated from the latest Cube
data base tag (STM32CubeMX-DB.6.0.150).

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2025-10-10 12:56:48 -04:00
Christophe Dufaza
60c3de2722 bluetooth: host: remove useless internal flag BT_ADV_PERSIST
Automatic advertiser resumption is publicly deprecated since
Zephyr 4.0 [1].

Options and parameters for this behavior have been removed,
and the internal bit flag BT_ADV_PERSIST is now always false.

The behavior it used to configure (to keep advertising after a
connection has been established as long as there are connections
available) has also been removed.

[1] Bluetooth: Deprecate adv auto-resume #73395

Signed-off-by: Christophe Dufaza <chris@openmarl.org>
2025-10-10 12:56:28 -04:00
Christophe Dufaza
a1dd571f11 bluetooth: host: remove no longer used internal API bt_le_adv_resume()
Automatic advertiser resumption is publicly deprecated since
Zephyr 4.0 [1].

Options and parameters for this behavior have been removed,
as well as all calls to bt_le_adv_resume().

Also remove adv_get_options() whose bt_le_adv_resume()
is the only caller.

[1] Bluetooth: Deprecate adv auto-resume #73395

Signed-off-by: Christophe Dufaza <chris@openmarl.org>
2025-10-10 12:56:28 -04:00
Christophe Dufaza
9b5ad2f8df bluetooth: host: do not attempt to resume terminated advertising sets
Automatic advertiser resumption is publicly deprecated
since Zephyr 4.0 [1].

Options and parameters for this behavior have been removed.

[1] Bluetooth: Deprecate adv auto-resume #73395

Signed-off-by: Christophe Dufaza <chris@openmarl.org>
2025-10-10 12:56:28 -04:00
Christophe Dufaza
731e581174 bluetooth: host: do not resume periodic connectable advertisers
Automatic advertiser resumption is publicly deprecated since
Zephyr 4.0 [1].

Options and parameters for this behavior have been removed.

[1] Bluetooth: Deprecate adv auto-resume #73395

Signed-off-by: Christophe Dufaza <chris@openmarl.org>
2025-10-10 12:56:28 -04:00
Christophe Dufaza
b3a4ff0109 bluetooth: host: do not use freed connection to resume advertising
In bt_conn_unref(), if we remove the last reference to the connection,
we notify listeners that a connection object has been freed
and can be taken, then immediately reuse this freed slot
to resume advertising.

This behavior is source of errors, and automatic advertiser resumption
is publicly deprecated since Zephyr 4.0 [1].

Options and parameters for this behavior have been removed.

[1] Bluetooth: Deprecate adv auto-resume #73395

Signed-off-by: Christophe Dufaza <chris@openmarl.org>
2025-10-10 12:56:28 -04:00
Christophe Dufaza
5762ff5b58 bluetooth: host: remove transitional option _BT_LE_ADV_OPT_ONE_TIME
Automatic advertiser resumption is deprecated since Zephyr 4.0 [1].

To maintain the behavior during the deprecation period, internal
transitional symbols were introduced to replace the deprecated ones
in the implementation:

- _BT_LE_ADV_OPT_CONNECTABLE: same option bit
   as BT_LE_ADV_OPT_CONNECTABLE (deprecated)
- _BT_LE_ADV_CONN_ONE_TIME: same option bit
   as BT_LE_ADV_CONN_ONE_TIME (deprecated)

The only option for connectable advertising is now BT_LE_ADV_OPT_CONN,
whose value is _BT_LE_ADV_OPT_CONNECTABLE|_BT_LE_ADV_OPT_ONE_TIME.

We can assume _BT_LE_ADV_CONN_ONE_TIME is true for connectable
advertisers, and meaningless for non-connectable advertisers.

[1] Bluetooth: Deprecate adv auto-resume #73395

Signed-off-by: Christophe Dufaza <chris@openmarl.org>
2025-10-10 12:56:28 -04:00
Christophe Dufaza
e24d3b92a3 bluetooth: host: remove transitional option _BT_LE_ADV_OPT_CONNECTABLE
Automatic advertiser resumption is deprecated since Zephyr 4.0 [1].

To maintain the behavior during the deprecation period, internal
transitional symbols were introduced to replace the deprecated ones
in the implementation:

- _BT_LE_ADV_OPT_CONNECTABLE: same option bit
   as BT_LE_ADV_OPT_CONNECTABLE (deprecated)
- _BT_LE_ADV_CONN_ONE_TIME: same option bit
   as BT_LE_ADV_CONN_ONE_TIME (deprecated)

The only option for connectable advertising is now BT_LE_ADV_OPT_CONN,
whose value is _BT_LE_ADV_OPT_CONNECTABLE|_BT_LE_ADV_OPT_ONE_TIME.

We can substitute BT_LE_ADV_OPT_CONN for _BT_LE_ADV_OPT_CONNECTABLE
when testing if an advertising set is connectable.

Note: to fix a ClangFormat warning raised by check_compliance.py,
this commit also includes a formatting change next to the lines
actually edited (subsys/bluetooth/host/id.c:810).

[1] Bluetooth: Deprecate adv auto-resume #73395

Signed-off-by: Christophe Dufaza <chris@openmarl.org>
2025-10-10 12:56:28 -04:00
Christophe Dufaza
4850c0c52d bluetooth: host: remove API for automatic advertising resumption
Automatic advertising resumption is source of errors [1],
and deprecated since Zephyr 4.0 [2].

Samples and tests no longer cover this feature.

Deprecated public symbols include:
- advertising options BT_LE_ADV_OPT_CONNECTABLE
  and BT_LE_ADV_OPT_ONE_TIME
- advertising parameters BT_LE_ADV_CONN
  and BT_LE_ADV_CONN_ONE_TIME

Withdrawing this API (options and parameters) makes the code paths
to automatic advertiser resumption unreachable.

[1] Bluetooth: Advertising resume functionality is broken #72567
[2] Bluetooth: Deprecate adv auto-resume #73395

Signed-off-by: Christophe Dufaza <chris@openmarl.org>
2025-10-10 12:56:28 -04:00
Tim Pambor
110f4ee4bf tests: kernel: fix -Wformat errors
Fix format specifiers that did not match the argument type.
Use %zu format specifier for size_t type to ensure compatibility
with both 32-bit and 64-bit platforms. Escape percent signs in
format strings using %% to prevent warnings about unknown format
specifiers.

Signed-off-by: Tim Pambor <tim.pambor@codewrights.de>
2025-10-10 12:56:14 -04:00
Kiril Tzvetanov Goguev
7ea8b4478d lwm2m: Add missing offset param to write_package_cb calls for SWMGMT
Offset introduced by https://github.com/zephyrproject-rtos/zephyr/pull/72590 is missing
for write_package_cb call in SWGMGT OBJ this fixes compile issues
by adding the offset parameter

Signed-off-by: Kiril Tzvetanov Goguev <kiril.goguev@voiapp.io>
2025-10-10 12:56:04 -04:00
Henrik Lindblom
0c21149d18 dts: stm32u5: disable otghs-phy by default
The clock-reference property is marked as required in the bindings file.
Without these changes creating new boards based on stm32u5 either requires
explicitly disabling otghs_phy or setting the clock-reference -property.

Signed-off-by: Henrik Lindblom <henrik.lindblom@vaisala.com>
2025-10-10 12:55:57 -04:00
Cristian Bulacu
7a41ed320b net: ipv6_nbr: Handle lifetime from RDNSS message
When an IPV6 message that contains an RDNSS ICMPV6 option with a lifetime
equal to 0 is received, proceed to delete the indicated recursive DNS
servers listed in that option.

Signed-off-by: Cristian Bulacu <cristian.bulacu@nxp.com>
2025-10-10 12:55:46 -04:00
Cristian Bulacu
975635fc17 net: dns_resolve: Remove DNS server by specified address
This commit implements removal of a DNS server by specifing an IP
address.

Signed-off-by: Cristian Bulacu <cristian.bulacu@nxp.com>
2025-10-10 12:55:46 -04:00
Måns Ansgariusson
ebe128e61f subsys/tracing: Remove retired k_pipe references in SYSVIEW config
Due to the k_pipe rework, references to k_pipe in the SYSVIEW configuration
are now obsolete. This commit removes these references.

Signed-off-by: Måns Ansgariusson <Mansgariusson@gmail.com>
2025-10-10 12:55:37 -04:00
Måns Ansgariusson
a5b2d58812 tests/kernel/mem_protect: Fix comment referencing old k_pipe api
The comment was referencing the old k_pipe api which has since been
retired. Updated the comment to reflect the current k_pipe api.

Signed-off-by: Måns Ansgariusson <Mansgariusson@gmail.com>
2025-10-10 12:55:37 -04:00
Måns Ansgariusson
6563445446 doc: Removing references to retired k_pipe api.
The k_pipe_get and k_pipe_put APIs have been retired in Zephyr 4.2, this
commit removes references to these APIs in the documentation that was
missed in the original rework of thhe k_pipe API.

Signed-off-by: Måns Ansgariusson <Mansgariusson@gmail.com>
2025-10-10 12:55:37 -04:00
Emil Gydesen
d4afa1989f Bluetooth: Host: Change WRN->DBG for not connect for TX
The bt_conn_tx_processor logged connections not in the
connected state as LOG_WRN, but this is a case that is handled
and could occur during regular behavior.
For this reason the log statement was changed to LOG_DBG,
as the developer/user does not need to worry about it.
Also modifies the statement to log the conn->state for
debugging purposes.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-10-10 12:55:28 -04:00
Tahsin Mutlugun
97a3e9f21e Revert "tests: subsys: pm: Use WUT as idle timer for MAX32655 boards"
This reverts commit 41339e2dd4.

Signed-off-by: Tahsin Mutlugun <Tahsin.Mutlugun@analog.com>
2025-10-10 12:55:15 -04:00
Kevin Gillespie
85c06345bf soc: adi: max32: Standby lock on boot.
Add standby lock to prevent debug lockout on boot
when using power management.

Signed-off-by: Kevin Gillespie <Kevin.Gillespie@analog.com>
2025-10-10 12:55:15 -04:00
Kevin Gillespie
d24ab25d6d soc: adi: max32: Remove standby restore delay.
Remove delay when coming out of standby mode.

Signed-off-by: Kevin Gillespie <Kevin.Gillespie@analog.com>
2025-10-10 12:55:15 -04:00
Kevin Gillespie
5d11e40729 soc: adi: sleep in idle mode.
Use sleep mode instead of Low Power Mode (LPM). LPM is
similar to deep sleep, not intended to be used for general
idle.

Signed-off-by: Kevin Gillespie <Kevin.Gillespie@analog.com>
2025-10-10 12:55:15 -04:00
Łukasz Stępnicki
6571f4e1bc kernel: work: work timeout handler uninitialized variables fix
work and handler pointers are local and not initialized.
Initialize them with NULL to avoid compiler error maybe-uninitialized.

Signed-off-by: Łukasz Stępnicki <lukasz.stepnicki@nordicsemi.no>
2025-10-10 12:55:06 -04:00
Tim Pambor
cbb9889e17 MAINTAINERS: Add tpambor as collaborator
Add tpambor as collaborator to Native_sim and POSIX arch area.

Signed-off-by: Tim Pambor <tim.pambor@codewrights.de>
2025-10-10 12:54:54 -04:00
Pieter De Gendt
557489e1ec doc: releases: migration: 4.3: Add shell_set_bypass update
Add an entry for the shell API change for shell_set_bypass.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-10-10 12:53:55 -04:00
Pieter De Gendt
4fa4329a16 shell: Add user data argument to shell_set_bypass
Allow passing some context to the shell bypass callback function by
providing a void pointer user data argument.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-10-10 12:53:55 -04:00
Sebastian Głąb
3d56c2f8f8 tests: boards: nrf: coresight_stm: Align test to STM driver
There were recent changes to nrf54h20dk and STM driver.
Align test accordingly:
- add Kconfig that boots Radio core,
- update expected timing results.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
2025-10-10 12:53:40 -04:00
Phi Bang Nguyen
c1a27a1038 doc: release-note-4.3: Add video format estimation helper
Mention a new video_estimate_fmt_size helper.

Signed-off-by: Phi Bang Nguyen <phibang.nguyen@nxp.com>
2025-10-10 12:53:28 -04:00
Phi Bang Nguyen
9c9e23d091 doc: migration-guide-4.3: Mention some changes in video structures
Mention some dropped fields in the video_caps structure and the buffer
allocation size for application.

Signed-off-by: Phi Bang Nguyen <phibang.nguyen@nxp.com>
2025-10-10 12:53:28 -04:00
Phi Bang Nguyen
517e13cae5 drivers: video: st_mipid02: Drop caps' min_vbuf_count
The mipid02 is just a bridge driver which does not deal with memory so
should not expose caps' min_vbuf_count.

Signed-off-by: Phi Bang Nguyen <phibang.nguyen@nxp.com>
2025-10-10 12:53:28 -04:00
Phi Bang Nguyen
ade4e05969 drivers: video: Set format size
Receiver drivers now need to set the format's size to expose it to
the application.

Application should base on the format size to allocate buffers. The
caps' min/max_line_count (which are needed only for HWs that cannot
support the whole image frame) can hence be dropped.

Signed-off-by: Phi Bang Nguyen <phibang.nguyen@nxp.com>
2025-10-10 12:53:28 -04:00
Phi Bang Nguyen
21fec46971 drivers: video: Add helper to estimate format size
Add a helper to estimate format size and pitch.

Signed-off-by: Phi Bang Nguyen <phibang.nguyen@nxp.com>
2025-10-10 12:53:28 -04:00
Benjamin Cabé
c07d182466 scripts: ci: do_not_merge.py: labels starting with 'block:' mean DNM
When checking for "do not merge" labels on a pull request, also consider
any label that starts with "block:" as a DNM label (e.g "block: HW
Test").

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-10-10 12:53:14 -04:00
James Growden
86ebdf8e32 scripts: Use different module IDs per runner module
If we have multiple runners listed under a module,
Each runner py file will individually overload and overwrite the
prior module loaded, because it is using the same module name.

Signed-off-by: James Growden <jgrowden@tenstorrent.com>
2025-10-10 12:52:56 -04:00
Tahsin Mutlugun
6b45182d6d drivers: i2c_rtio: max32: Fix variable naming in initialization macros
Fixes incorrect usage of n instead of _num as the instance identifier
in several lines of the driver initialization macros. This mismatch
caused build errors when multiple I2C instances were enabled, due to
redefinition of the same variable.

Signed-off-by: Tahsin Mutlugun <Tahsin.Mutlugun@analog.com>
2025-10-10 12:52:46 -04:00
Benjamin Cabé
67206130a6 doc: hardware: fix cache/guide.rst appearing in two different toctrees
The "Caching Basics" page is already included in the toctree of
cache/index.rst, so it should not be included again at this level.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-10-10 12:52:23 -04:00
Titouan Christophe
1d1bf21538 audio: midi: do not cast into unsigned long in UMP_* macros
In commit 5e83d222b6, all bit masking
operations in audio/midi.h were modified to use BIT_MASK(n) instead of
literal hexadecimal constants. However, masking a number with a BIT_MASK
promotes it to an unsigned long (while UMPs are packets of uint32_t aka
unsigned on most platforms). This results in annoying warnings from LOG_*
calls, such as:

    warning: format '%lX' expects argument of type 'long unsigned int',
    but argument 4 has type 'uint32_t' {aka 'unsigned int'}

There is no point in making these long integers, so let's revert the
bit masks as they were before, with literal hexadecimal values.

Signed-off-by: Titouan Christophe <titouan.christophe@mind.be>
2025-10-10 12:52:11 -04:00
Benjamin Cabé
169cf86969 include: doc: fix bad @endcond markers
Anything appearing after the @endcond tag is, well, not part of the
conditional block anymore. This fixes "INTERNAL_HIDDEN" text appearing
at odd polaces in the generated documentation.

Fixes zephyrproject-rtos/zephyr#94862

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-10-09 20:36:28 -04:00
Muhammad Waleed Badar
c2384c5a5d wifi: esp32: simplify DHCP4 auto-negotiation Kconfig
Remove redundant NET_DHCPV4 dependency and add default
behavior.

Signed-off-by: Muhammad Waleed Badar <walid.badar@gmail.com>
2025-10-09 20:35:58 -04:00
Camille BAUD
6430ad458c drivers: serial: increase FIFO threshold for BFLB uart driver
Increases the fifo threshold for tx, should increase speed a bit.

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-10-09 20:35:34 -04:00
Camille BAUD
b20d3432e3 drivers: serial: Improve BFLB UART driver: add runtime configuration
This adds the ability to do runtime configuration of the BFLB
UART driver.

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-10-09 20:35:34 -04:00
Camille BAUD
a7bf03cec5 drivers: serial: Add De-init to bflb uart driver
Allows BFLB uart peripheral to de-init.

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-10-09 20:35:34 -04:00
Declan Snyder
317ae1caea Revert "soc: RT700 add custom MPU regions for non-cache memory"
This reverts commit 4a6a969bbe.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-10-09 20:35:07 -04:00
Erwan Gouriou
5c8380d32a samples: video: tcpserversink: Add stm32n6570_dk as integration platform
Required to build VIDEO_STM32_VENC.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
Signed-off-by: Hugues Fruchet <hugues.fruchet@foss.st.com>
2025-10-09 22:56:37 +03:00
Hugues Fruchet
adb6e2968b dts: arm: st: n6: add venc node
Add node describing the venc in stm32n6.dtsi

Signed-off-by: Hugues Fruchet <hugues.fruchet@foss.st.com>
2025-10-09 22:56:37 +03:00
Hugues Fruchet
fd1115d88f drivers: video: introduction of the stm32 venc driver
The STM32 video encoder (VENC) peripheral is a hardware
accelerator allowing to compress RGB/YUV frames into
H264 video bitstream chunks.

Signed-off-by: Hugues Fruchet <hugues.fruchet@foss.st.com>
2025-10-09 22:56:37 +03:00
Hugues Fruchet
53bcf31ea9 dts-bindings: video: addition of stm32 venc description
Addition of description for the STM32 Video encoder (VENC).

Signed-off-by: Hugues Fruchet <hugues.fruchet@foss.st.com>
2025-10-09 22:56:37 +03:00
Hugues Fruchet
a2baa09116 doc: release-note-4.3: document size field added to video_format struct
Document introduction of the new size field inside video_format struct
as visible on the <zephyr/drivers/video.h> header.

Signed-off-by: Hugues Fruchet <hugues.fruchet@foss.st.com>
2025-10-09 22:56:37 +03:00
Hugues Fruchet
b69e1d550a include: video: add size field to video_format structure
Add size field to the video_format structure which needs to be set by the
driver and exposed to the application.

For uncompressed formats, this is the size of the raw data buffer in
bytes, which could be the whole raw image or a portion of the raw image
in cases the receiver / dma supports it.

For compressed formats, this is the estimated maximum number of bytes
required to hold a complete compressed frame.

Signed-off-by: Hugues Fruchet <hugues.fruchet@foss.st.com>
Signed-off-by: Phi Bang Nguyen <phibang.nguyen@nxp.com>
2025-10-09 22:56:37 +03:00
Mohammad Massoudi
09ed77fe89 include: driver: video: add h264 pixel format support
Add H264 pixel format support.

Signed-off-by: Mohammad Massoudi <m.massoudi32@gmail.com>
2025-10-09 22:56:37 +03:00
Hao Zhang
1f1ea10c21 samples: tfm_regression_test: Add MAX32657EVKIT regression tests
Add MAX32657 under tfm regression test case.

There is only one uart interface that used by NS side, so that secure
tests are disabled.

Co-authored-by: Sadik Ozer <sadik.ozer@analog.com>
Signed-off-by: Hao Zhang <Hao.Zhang@analog.com>
2025-10-09 22:56:21 +03:00
Torsten Rasmussen
428279ef41 cmake: define linker argument for undefined symbol
Specifying undefined symbol on linker invocation requests the linker to
search and include the symbol.
This ensures the symbol will be present in final output.

Signed-off-by: Torsten Rasmussen <Torsten.Rasmussen@nordicsemi.no>
2025-10-09 22:56:09 +03:00
Bjarki Arge Andreasen
d54d0849e1 samples: basic: minimal: add no-sw-isr-table option
Add option to build without software isr table for platforms which
support it (ARM and RISCV). The software ISR table takes up
kilobytes of RAM and introduces latency, and it is not needed if
CONFIG_MULTITHREADING=n.

The initially supported nrf54l15 and nrf54lm20 boards additionally
need CONFIG_CLOCK_CONTROL=n for the minimal sample so board configs
have been added for them. Note that the entry in sample.yaml uses
EXTRA_CONF_FILE to not overwrite the board specific CONF_FILE.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-10-09 22:56:09 +03:00
Bjarki Arge Andreasen
1f294febf2 drivers: serial: nrfx_uarte: Default DIRECT_ISR if MULTITHREADING=n
Default to using DIRECT_ISR if nothreading. This allows the SW ISR
table to be excluded if nothreading.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-10-09 22:56:09 +03:00
Robin-Charles Guihéneuf
ad46777f65 tests: lib: json: Add test case test for encoded_obj array
Add specific test for array generation containing JSON_TOK_ENCODED_OBJ.

Signed-off-by: Robin-Charles Guihéneuf <robin-charles@hotmail.fr>
2025-10-09 22:55:58 +03:00
Robin-Charles Guihéneuf
e4bd3cffd4 lib: utils: json: Fix encoded_obj element size
The size of the JSON_TOK_ENCODED_OBJ type was not defined, which
caused errors when generating an array.

Signed-off-by: Robin-Charles Guihéneuf <robin-charles@hotmail.fr>
2025-10-09 22:55:58 +03:00
Tom Chang
298ebb7aa7 drivers: espi: npcx: add espi taf support for npck3
This commit adds eSPI TAF support for npck3, including initialization
settings for flash operation mode. It also updates the mechanism to
release FLASH_NP_FREE, preventing a possible race condition between
automatic and standard requests.

Signed-off-by: Tom Chang <CHChang19@nuvoton.com>
2025-10-09 22:55:48 +03:00
Tom Chang
ee48ccaacf drivers: espi: npcx: add espi support for npck3
This commit adds eSPI support for npck3, including support for the
maximum frequency of 66MHz. The method to read the level of eSPI reset
pin differs on npck3, so the definition of eSPI_RST has been updated
accordingly.

Signed-off-by: Tom Chang <CHChang19@nuvoton.com>
Signed-off-by: Mulin Chao <mlchao@nuvoton.com>
2025-10-09 22:55:48 +03:00
Tom Chang
18423dec9f drivers: espi: npcx: update OOB maximum payload size
This commit updates the OOB payload size. The maximum payload size in
the OOB chapter represents the protocol payload embedded whithin the
packet. The total size should also include the header length, so the
header length needs to be added when checking the overall size.

Signed-off-by: Tom Chang <CHChang19@nuvoton.com>
2025-10-09 22:55:48 +03:00
Tom Chang
5549f5e93f drivers: espi: npcx: add support for SLP_LAN and SLP_WLAN VW signals
This commit adds support for SLP_LAN and SLP_WLAN virtual wire signals
to notify the system.

Signed-off-by: Tom Chang <CHChang19@nuvoton.com>
Signed-off-by: Mulin Chao <mlchao@nuvoton.com>
2025-10-09 22:55:48 +03:00
Tom Chang
c4aaf6151e soc: nuvoton: npcx: update register name
This commit updates the register name to match the datasheet.

Signed-off-by: Tom Chang <CHChang19@nuvoton.com>
2025-10-09 22:55:48 +03:00
Tom Chang
accd3df1a0 dts: espi: npcx: update device tree style
This commit adds new device tree properties and Kconfig options to
distinguish the support in different chip.

Signed-off-by: Tom Chang <CHChang19@nuvoton.com>
2025-10-09 22:55:48 +03:00
Seppo Takalo
9de7d61709 modem: cmux: Implement DM and NSC responses
Implement following responses from 3GPP TS 27.010:
5.4.6.3.8 Non Supported Command Response (NSC)
5.3.3 Disconnected Mode (DM) response

Close DLC when receiving DM response.

Signed-off-by: Seppo Takalo <seppo.takalo@nordicsemi.no>
2025-10-09 22:55:17 +03:00
Immo Birnbaum
f5dddbfb28 soc: xlnx: zynqmp: enable RPU MPU by default
Enable the ARM MPU by default if the current target SoC is the ZynqMP RPU.

Signed-off-by: Immo Birnbaum <mail@birnbaum.immo>
2025-10-09 22:55:08 +03:00
Sudan Landge
0438b9f29e arch: arm: start threads on privileged stack
Use the privileged stack when starting K_USER threads in arch_new_thread().
Threads entering user mode with k_thread_user_mode_enter() keep their
existing flow. To support both cases, z_arm_userspace_enter() now takes an
internal ABI flag (sp_is_priv) indicating whether PSP already points to
the privileged stack.

Also fix calculation of the privileged stack top: use priv_stack_end
directly instead of priv_stack_start + CONFIG_PRIVILEGED_STACK_SIZE, which
failed to account for guard/FPU offsets applied to priv_stack_start.

Signed-off-by: Sudan Landge <sudan.landge@arm.com>
2025-10-09 22:54:57 +03:00
Anas Nashif
b827253306 doc: tf-m: fix link to documentation
Fix broken link to docs of TF-M.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-10-09 22:54:44 +03:00
Firas Sammoura
6a62950c35 dt-bindings: riscv: Add fine-grained IO memory PMP attributes
Introduce new macros to define bitfields for RISC-V Physical Memory
Protection (PMP) attributes, specifically for specifying Read, Write,
and Execute permissions for IO memory regions in device tree bindings.

The following macros are added:
- ATTR_RISCV_TYPE_IO_R: Read access
- ATTR_RISCV_TYPE_IO_W: Write access
- ATTR_RISCV_TYPE_IO_X: Execute access

Corresponding macros for device tree usage are also added:
- DT_MEM_RISCV_TYPE_IO_R
- DT_MEM_RISCV_TYPE_IO_W
- DT_MEM_RISCV_TYPE_IO_X

These macros allow device tree source files to precisely describe the
intended access permissions for memory-mapped IO regions, enhancing
the system's memory protection configuration.

Signed-off-by: Firas Sammoura <fsammoura@google.com>
2025-10-09 22:54:34 +03:00
Camille BAUD
e97d651538 west.yml: Update hal_bouffalolab
update bflb hal to fix bl61x uart1.

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-10-09 22:54:19 +03:00
Peter Mitsis
41db28e2d5 tracing: Remove superfluous inclusion of kernel.h
Nothing in the tracing/tracing.h header file requires the explicit
inclusion of kernel.h.

Fixes #95123

Signed-off-by: Peter Mitsis <peter.mitsis@intel.com>
2025-10-09 22:54:11 +03:00
Hubert Miś
fc05ff122c drv: ft8xx: refactor coprocessor driver
Refactor the driver of FT8xx coprocessor by moving code common to
coprocessor commands to common functions.

Signed-off-by: Hubert Miś <hubert.mis@gmail.com>
2025-10-09 22:54:01 +03:00
Christoph Jans
22471f1fe2 drivers: sensor: tdk: redefine trigger as ptr to make use of CONTAINER_OF
Allows CONTAINER_OF inside trigger handler to be used to obtain a valid
ptr to the composite struct consisting of a struct sensor_trigger trig.

Fixes zephyrproject-rtos/zephyr#97124

Signed-off-by: Christoph Jans <jans.christoph@gmail.com>
2025-10-09 22:53:51 +03:00
James Roy
d3e645e539 doc: release: Add a release entry
Add `__deprecated_version` macro to the Toolchain entry list.

Signed-off-by: James Roy <rruuaanng@outlook.com>
2025-10-09 12:47:35 -04:00
James Roy
a855c61fcb scripts: Add __deprecated_version to the checkpatch checklist
Add macro __deprecated_version to the checklists of
`scripts/checkpatch.pl` and `scripts/tags.sh`.

Signed-off-by: James Roy <rruuaanng@outlook.com>
2025-10-09 12:47:35 -04:00
James Roy
1f6bfffc20 toolchain: iar: Add the __deprecated_version macro
Add the `__deprecated_version` macro to print version
information when deprecation warnings are triggered.

Signed-off-by: James Roy <rruuaanng@outlook.com>
2025-10-09 12:47:35 -04:00
James Roy
012b46b6a6 toolchain: gcc: Add the __deprecated_version macro
Add the `__deprecated_version` macro to print version
information when deprecation warnings are triggered.

Signed-off-by: James Roy <rruuaanng@outlook.com>
2025-10-09 12:47:35 -04:00
Martin Hoff
98f8704f46 drivers: gpio: silabs: add lookup table documentation
This commit only adds documentation. It will help a user to translate
pinout from the reference manual to a device tree gpio (HP and ULP).

Signed-off-by: Martin Hoff <martin.hoff@silabs.com>
2025-10-09 12:47:23 -04:00
Jeppe Odgaard
d58e6efc76 shell: mqtt: cancel disconnect work on connect event
If the disconnect work has not yet run when a connect event is received the
connect event is dropped.

Prevent this behaviour by reorganizing `network_evt_handler()`.

Signed-off-by: Jeppe Odgaard <jeppe.odgaard@prevas.dk>
2025-10-09 12:46:33 -04:00
Martin Hoff
c2835ab6a9 drivers: adc: silabs: unify silabs adc kconfig
To reduce the number of Kconfig files and improve maintainability,
we are merging the three different Kconfig files from Silabs for ADC.

Signed-off-by: Martin Hoff <martin.hoff@silabs.com>
2025-10-09 12:42:56 -04:00
Martin Hoff
ee760b3f9a tests: adc: add configuration and overlay for DMA support on Silabs IADC
This commit introduces a new configuration file for DMA support specific
to the Silabs IADC, along with updates to the test case YAML and device
tree overlay for the xg29_rb4412a board. The changes ensure that the ADC
driver can utilize DMA operations effectively.

Signed-off-by: Martin Hoff <martin.hoff@silabs.com>
2025-10-09 12:42:56 -04:00
Martin Hoff
be9df47f33 drivers: adc: add DMA support for Silabs IADC
This commit introduces DMA support for the Silabs IADC driver.
A new Kconfig option is added to enable DMA support, ensuring
compatibility with the existing ADC configuration.

DMA can be used for synch/asynch operation.

Signed-off-by: Martin Hoff <martin.hoff@silabs.com>
2025-10-09 12:42:56 -04:00
Martin Hoff
93241cc666 samples/tests: adc: silabs: add multiple device overlays.
This commit introduces/updates overlays for multiple silabs boards
for ADC samples and ADC tests.

Signed-off-by: Martin Hoff <martin.hoff@silabs.com>
2025-10-09 12:42:56 -04:00
Martin Hoff
8df78c0a62 samples: adc_sequence: differential mode handling in ADC conversion
This commit updates the ADC sequence sample to improve handling of
differential mode readings. It modifies the conversion logic to
correctly interpret 16-bit/32-bit signed values and adjusts the
resolution accordingly. This ensures accurate millivolt conversion
for both differential and single-ended configurations.

Signed-off-by: Martin Hoff <martin.hoff@silabs.com>
2025-10-09 12:42:56 -04:00
Martin Hoff
073745e2a2 samples: adc_sequence: add oversampling configuration option
This commit introduces a new Kconfig option for oversampling
in the ADC sequence sample. It allows to test oversampling for
IADC sequences.

Signed-off-by: Martin Hoff <martin.hoff@silabs.com>
2025-10-09 12:42:56 -04:00
Martin Hoff
56198dd949 boards: silabs: add ADC io-channels on multiples boards
The goal to add the zephyr,user io-channels is to be able to run the
ADC samples without having an overlays for each boards.

Signed-off-by: Martin Hoff <martin.hoff@silabs.com>
2025-10-09 12:42:56 -04:00
Martin Hoff
4d3b459d24 drivers: adc: silabs: removed the old IADC driver
iadc_gecko driver has been replaced by adc_silabs_iadc.c.
The old files and bindings are removed.

Signed-off-by: Martin Hoff <martin.hoff@silabs.com>
2025-10-09 12:42:56 -04:00
Martin Hoff
f964ee418b dts: arm: silabs: update IADC driver binding for all series 2 board
Update compatibility from "silabs,gecko-iadc" to "silabs,iadc". It
allows to use the new driver which are more custom to series 2 boards.

Signed-off-by: Martin Hoff <martin.hoff@silabs.com>
2025-10-09 12:42:56 -04:00
Martin Hoff
766dbf738c drivers: adc: add IADC support for silabs series 2 boards
This commit introduces a new driver for the silabs Incremental ADC (IADC).

Signed-off-by: Martin Hoff <martin.hoff@silabs.com>
2025-10-09 12:42:56 -04:00
Martin Hoff
f954105ed0 drivers: adc: enhance millivolt conversion with 64-bit support
This commit updates the adc_raw_to_millivolts function to use 64-bit
arithmetic. It is necessary when the intermediate result is higher
than the maximum value of uint32_t. It also adds a range check to
ensure the conversion result does not exceed the limits of int32_t,
providing an assertion message for out-of-range values.

Signed-off-by: Martin Hoff <martin.hoff@silabs.com>
2025-10-09 12:42:56 -04:00
Make Shi
528e732aad Bluetooth: Shell: BR: Add SDP discovery support for AVRCP CT/TG
Add SDP discovery handlers for AVRCP CT/TG roles and corresponding
discovery parameters and a common result handling function.

Signed-off-by: Make Shi <make.shi@nxp.com>
2025-10-09 12:42:45 -04:00
Peter Mitsis
b6cf82768a doc: Update CPU Frequency Scaling for SMP
Update the CPU Frequency Scaling documentation to show that it
works on SMP systems.

Signed-off-by: Peter Mitsis <peter.mitsis@intel.com>
2025-10-09 12:42:32 -04:00
Peter Mitsis
50f90d2b38 MAINTAINERS: Initialize entries for Performance States
Creates and initializes entries for the the new
Performance States group.

Signed-off-by: Peter Mitsis <peter.mitsis@intel.com>
2025-10-09 12:42:32 -04:00
Peter Mitsis
b24fa39c70 tests: samples: Extend cpu_freq tests and samples
Extends the cpu_freq tests and samples to support both
SMP and the selection of Stub vs SoC implementations
of cpu_freq_pstate_set().

Signed-off-by: Peter Mitsis <peter.mitsis@intel.com>
2025-10-09 12:42:32 -04:00
Peter Mitsis
ec9a7f8cdd cpu_freq: Add SMP support
Extends the CPU frequency scaling to support SMP for two models.

Model 1: Each CPU/core can have its frequency scaled independently
of the others.

Model 2: All CPUs/cores use the same frequency scaling.

In both models, IPIs are sent from the timer handler to each of the
CPUs to obtain the most up-to-date CPU load information. For the
first model, each CPU sets its next P-state after determining its
load. For the second model, the next P-state is set by the last
CPU/core to determine its load and is based on the CPU/core with the
highest load.

Signed-off-by: Peter Mitsis <peter.mitsis@intel.com>
2025-10-09 12:42:32 -04:00
Peter Mitsis
613653716d cpu_freq: Add new policy APIs
Adds two new CPU frequency scaling policy APIs:
  cpu_freq_policy_reset()
  cpu_freq_policy_pstate_set()

These new APIs allow the policy to better control and isolate relevant
logic from the rest of the subsystem.

Signed-off-by: Peter Mitsis <peter.mitsis@intel.com>
2025-10-09 12:42:32 -04:00
Peter Mitsis
63748db7c6 cpu_freq: Add default stub for cpu_freq_pstate_set()
This allows a project to select where cpu_freq_pstate_set()
gets implemented. The system integrator may choose to use
a default stub, a version implemented by the SOC, or a custom
version implemented by the project.

The existing 'native' SoC version now has its output contain
the string "SoC" while the new stub version has the string
"Stub" in its. This allows a means to differentiate between the
two.

Signed-off-by: Peter Mitsis <peter.mitsis@intel.com>
2025-10-09 12:42:32 -04:00
Peter Mitsis
69d1f28a31 dts: bindings: Add generic P-state binding
Provides a generic DTS binding for the performance state.

Signed-off-by: Peter Mitsis <peter.mitsis@intel.com>
2025-10-09 12:42:32 -04:00
Peter Mitsis
87570bae3e cpu_load: Make cpu_load_get() SMP safe
Update cpu_load_get() to work with both multiple threads as
well as multiple CPUs.

Signed-off-by: Peter Mitsis <peter.mitsis@intel.com>
2025-10-09 12:42:32 -04:00
Peter Mitsis
ea5240368d cpu_freq: Update cpu_freq API documentation
Adds explicit restrictions on the use of both
cpu_freq_policy_select_pstate() and cpu_freq_pstate_set()
for use with SMP systems.

Signed-off-by: Peter Mitsis <peter.mitsis@intel.com>
2025-10-09 12:42:32 -04:00
Peter Mitsis
014a1e6226 doc: Standardize on P-state
Instead of having a mix of of p-state and P-state, standardize on
P-state for consistency.

Signed-off-by: Peter Mitsis <peter.mitsis@intel.com>
2025-10-09 12:42:32 -04:00
Marcio Ribeiro
ac7799fe69 tests: adc: enable adc_api tests for esp32
Enables adc_api tests for these platforms:
- esp32_devkitc/esp32/procpu
- esp32c3_devkitm
- esp32c6_devkitc/esp32c6/hpcore
- esp32h2_devkitm
- esp32s2_devkitc
- esp32s3_devkitc/esp32s3/procpu

Signed-off-by: Marcio Ribeiro <marcio.ribeiro@espressif.com>
2025-10-09 12:42:20 -04:00
Camille BAUD
4dd6976d3f tests: drivers: build_all: add st7567 mipi-dbi
Adds the test for st7567 on mipi-dbi

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-10-09 12:41:54 -04:00
Camille BAUD
77c078b7ee drivers: display: Update ST7567 to use MIPI-DBI
Allows ST7567 to use dbi controller

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-10-09 12:41:54 -04:00
Vinayak Kariappa Chettimada
9b26e967ca Bluetooth: Controller: nRF54L: Fix to improve decryption speed
Fix to improve decryption speed. Decryption starts after
payload reception, hence use fastest mode to decrypt PDUs.
nRF54Lx only supports decryption after payload reception,
this implementation was already there in the code.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2025-10-09 12:41:43 -04:00
Vinayak Kariappa Chettimada
a5e1f59686 Bluetooth: Controller: Revert relaxed radio packet assignment deadline
Reverts relaxed radio packet assignment deadline as it is
too risky and can cause invalid bits be transmitted and/or
cause MIC failures.

Reverts commit 4dbfb22a7e ("Bluetooth: Controller: Relax
radio packet pointer assignment deadline"), and
commit 230df77993 ("Bluetooth: Controller: Relax radio
packet pointer assignment deadline").

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2025-10-09 12:41:43 -04:00
Vinayak Kariappa Chettimada
1fe79a65a2 Bluetooth: Controller: Use CONFIG_SOC_COMPATIBLE_NRF5340_CPUNET
Use CONFIG_SOC_COMPATIBLE_NRF5340_CPUNET for nRF53 SoC
conditional compilations.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2025-10-09 12:41:43 -04:00
Khanh Nguyen
233637f7fb drivers: video: shell: fix control name lookup
video_shell_get_ctrl_by_name() normalized the search string (`name`)
instead of the control's actual name (`cq->name`). This made the
comparison always succeed on the first control, causing incorrect
lookups at runtime.

Update the code to normalize `cq->name` before comparison so that
each control name is correctly checked against the search string.

Signed-off-by: Khanh Nguyen <khanh.nguyen.wz@bp.renesas.com>
2025-10-09 12:41:34 -04:00
Chris Friedt
cc32112d71 tests: arch: commoon: stack_unwind: disable fpv_baser_aemv8r
The test configuration `arch.common.stack_unwind.symtab` was failing in
weekly CI for quite a long time for the following platforms because
`CONFIG_ARCH_MMU=n` by default on those platforms, although they are
64-bit.

- fvp_baser_aemv8r/fvp_aemv8r_aarch64
- fvp_baser_aemv8r/fvp_aemv8r_aarch64/smp

The command below can be used to verify the fix.

```shell
twister -p fvp_baser_aemv8r/fvp_aemv8r_aarch64 \
  -s arch.common.stack_unwind.symtab
```

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-10-09 12:41:15 -04:00
Hou Zhiqiang
7d259c35ef dts: arm: imx95: fix unit address and the first reg mismatch warning
Warning:
unit address and first address in 'reg' (0x4cce0000) don't match
for /soc/netc-blk-ctrl@4cde0000/ethernet/mdio@4cb00000

Signed-off-by: Hou Zhiqiang <Zhiqiang.Hou@nxp.com>
2025-10-09 12:41:01 -04:00
Tim Pambor
b8ae573a70 tests: arch: arm: fix -Wformat error
Cast _vector_start to uint32_t to match format specifier.

Signed-off-by: Tim Pambor <tim.pambor@codewrights.de>
2025-10-09 12:40:44 -04:00
Guðni Már Gilbert
a1369d5c6a scripts: list_boards: drop HWMv1 code
Fixes #97017

Support for HWMv1 was removed in Zephyr 4.2.0

Signed-off-by: Guðni Már Gilbert <gudni.m.g@gmail.com>
2025-10-09 12:40:30 -04:00
Guðni Már Gilbert
ec59f15946 scripts: west_commands: don't search for HWMv1 boards
Support for HWMv1 was removed in Zephyr 4.2.0

Signed-off-by: Guðni Már Gilbert <gudni.m.g@gmail.com>
2025-10-09 12:40:30 -04:00
Andrzej Puzdrowski
56843f8eb0 samples/boards/nordic: align nrf54h20dk overlay
/delete-property/ for newly added aliases which points to nodes
already removed in that overlay.

Signed-off-by: Andrzej Puzdrowski <andrzej.puzdrowski@nordicsemi.no>
2025-10-09 12:40:16 -04:00
Andrzej Puzdrowski
230b74dd98 boards/nordic/nrf54h20dk: Add button/LED aliases
Added aliases so that nrf54h20dk/nrf54h20/cpuapp can
use MCUboot serial recovery.

Signed-off-by: Andrzej Puzdrowski <andrzej.puzdrowski@nordicsemi.no>
2025-10-09 12:40:16 -04:00
Firas Sammoura
93464d0361 arch: riscv: Use CONFIG_PMP_SLOTS for PMP array sizing
The arrays used for M-mode Physical Memory Protection (PMP),
specifically for the stack guard feature (CONFIG_PMP_STACK_GUARD),
were previously sized using the hardcoded PMP_M_MODE_SLOTS macro,
defined as 8. This affected arrays in both the _thread_arch
struct (m_mode_pmpaddr_regs, m_mode_pmpcfg_regs) and local
variables within the z_riscv_pmp_stackguard_disable function.

This commit changes the array sizing to use the Kconfig option
CONFIG_PMP_SLOTS. This option reflects the total number of PMP
slots available and configured for the target hardware.

Using CONFIG_PMP_SLOTS ensures these arrays are dimensioned
according to the system's actual capabilities, providing better
flexibility and correctness over a fixed size.

The PMP_M_MODE_SLOTS macro definition has been removed from
thread.h as it is no longer used.

Signed-off-by: Firas Sammoura <fsammoura@google.com>
2025-10-09 12:40:08 -04:00
Szymon Janc
a2af19bae1 bluetooth: hci: userchan: Improve RX allocation handling
This makes userchan transport behavior similar to other HCI
transports (eg IPC). Improved logging gives clear overview
of what RX events are discarded helping for configuration
tuning.

Signed-off-by: Szymon Janc <szymon.janc@codecoup.pl>
2025-10-09 12:38:49 -04:00
Szymon Janc
7f4f94e7f1 bluetooth: hci: Add data fields to event and meta event structs
Those flexible arrays allow for easy access to event data.

Signed-off-by: Szymon Janc <szymon.janc@codecoup.pl>
2025-10-09 12:38:49 -04:00
Adam Kondraciuk
0a8a8a6fb5 soc: nordic: nrf54h: Disable code relocation for MCUBOOT
MCUBOOT requires LTO to be enabled, while using code relocation
forces switching it off. When `__ramfunc` is used, LTO can also
be used. Then the `cache_retain_and_sleep` function will work
correctly, but slightly slower.

Signed-off-by: Adam Kondraciuk <adam.kondraciuk@nordicsemi.no>
2025-10-09 12:38:36 -04:00
Filip Kokosinski
eb5566dead samples/subsys/instrumentation: add missing sample.yaml
This commit adds a missing `sample.yaml` file to the instrumentation
subsystem sample.

Signed-off-by: Filip Kokosinski <fkokosinski@antmicro.com>
2025-10-09 12:38:08 -04:00
Michał Bainczyk
20932639cb drivers: nrf: Add missing SoC header includes to adc and i2s
Add missing SoC header include required by memory region assertion
to adc_nrfx_saadc and i2s_nrf_tdm shims.

Signed-off-by: Michał Bainczyk <michal.bainczyk@nordicsemi.no>
2025-10-09 12:37:58 -04:00
Robert Lubos
9c49eafef1 doc: release-notes-4.3: Add entry about CoAP client payload callback
Add release notes entry covering the new CoAP client payload callback.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-10-09 12:37:47 -04:00
Robert Lubos
85c49d839d net: coap_client: Document payload callback
Document the usage of the payload callback in the CoAP client
documentation page.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-10-09 12:37:47 -04:00
Robert Lubos
cea1651914 samples: net: sockets: Add CoAP Upload sample
Add a new sample demonstrating various ways of performing CoAP uploads
with the CoAP Client library:
 * short uploads with payload pointer
 * short uploads with payload callback
 * block transfer uploads with payload pointer
 * block transfer uploads with payload callback

The resource names have been chosen so that the sample can run out of
the box against the Zephyr's CoAP server sample.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-10-09 12:37:47 -04:00
Robert Lubos
fa22fa37cb net: coap_client: Add optional payload callback for uploads
Add an optional payload callback field to the coap_client_request
structure, allowing the application to provide blocks of payload
interactively during the resource upload, instead of having to provide
entire payload in a single contigunous memory space.

If registered, the CoAP client library will call the payload callback
whenever a new PUT/POST message is being generated (note this is also
true for retransmissions) instead of using the payload pointer/length.
If the payload callback is NULL, then the library operates as usual.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-10-09 12:37:47 -04:00
Robert Lubos
a6560c1a7b net: coap_client: Handle block size negotiation on upload
During block uploads, the server may respond with Block 1 option with
a smaller block size than currently used (so called block size
negotiation). The CoAP client however did not read the Block 1 option
from the response, therefore ignoring the server request to lower the
block size.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-10-09 12:37:47 -04:00
Declan Snyder
74d715c5ef pm: Remove "power state consistency" check
This check is totally wrong, min-residency-us and exit-latency-us are
not related to each other at all except that the end of the residency
period occurs when the exit starts, so they are totally orthogonal
values and should not be checking if one is less than the other or
anything like this. Even in the code for the default policy manager,
they are added together, so this check is incompatible / in disagreement
with that code, so it should be removed.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-10-09 12:37:07 -04:00
Declan Snyder
371f30d0a0 dts: bindings: zephyr,power-state: Clarify min-residency-us
Clarify the min-residency-us property meaning.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-10-09 12:37:07 -04:00
Cristian Bulacu
37cc1ff46b samples: net: openthread: border_router: Enable OT network diagnostics
Enablement of network diagnostics vendor info feature.
Updated nxp border router project config

Signed-off-by: Cristian Bulacu <cristian.bulacu@nxp.com>
2025-10-09 12:36:57 -04:00
Cristian Bulacu
1a7e0dcdce modules: openthread: Enable configuration for network diagnostics
This commit adds new config flags used to populate OpenThread network
diagnostics fields.

Signed-off-by: Cristian Bulacu <cristian.bulacu@nxp.com>
2025-10-09 12:36:57 -04:00
Kyle Micallef Bonnici
1476fcb935 Devicetree: remove deprecated ok state
The `ok` state is deprecated and very few files are using this.
The DTS spec also does not have this value.

This PR removes this value once and for all.

Signed-off-by: Kyle Micallef Bonnici <kylebonnici@hotmail.com>
2025-10-09 12:36:43 -04:00
Raffael Rostagno
0d973905b6 tests: uart: async: esp32h2: Add config
Add test config for ESP32-H2.

Signed-off-by: Raffael Rostagno <raffael.rostagno@espressif.com>
2025-10-09 12:36:11 -04:00
Raffael Rostagno
4c55e8f93a drivers: uart: esp32h2: Add ASYNC support
Add ASYNC api support for ESP32-H2.

Signed-off-by: Raffael Rostagno <raffael.rostagno@espressif.com>
2025-10-09 12:36:11 -04:00
Raffael Rostagno
293b16d5ed west.yml: hal_espressif: Update for UART async
Update HAL for ESP32-H2 UART async support.

Signed-off-by: Raffael Rostagno <raffael.rostagno@espressif.com>
2025-10-09 12:36:11 -04:00
Ryan Erickson
0ab308590c modem: backends: isr: notify remaining RX bytes
If there are still bytes in the RX buffer, trigger another
MODEM_PIPE_EVENT_RECEIVE_READY event.

Signed-off-by: Ryan Erickson <ryan.erickson@ezurio.com>
2025-10-09 12:35:57 -04:00
Maciej Torhan
12d21dfc2d twister: scripts: add missing failure reason in Robot test runner
Add failure reason with return code when Renode process fails

Signed-off-by: Maciej Torhan <mtorhan@antmicro.com>
2025-10-09 12:35:48 -04:00
Torsten Rasmussen
1f35b83905 doc: change 'defined be' to 'be defined'
Reorder 'defined be' to 'be defined'.

Signed-off-by: Torsten Rasmussen <Torsten.Rasmussen@nordicsemi.no>
2025-10-09 11:10:15 -04:00
Camille BAUD
c8d91030f8 soc: bflb: Enable bflb,l1c cache management for BL60x and BL70x
Enables controlling the cache of BL60x and BL70x

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-10-09 09:38:21 +02:00
Camille BAUD
e6ad1dae97 drivers: cache: Introduce bflb L1C cache driver
Introduce Bouffalo Lab L1C cache management functions
This allows invalidating instructions and data on
BL60x and BL70x

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-10-09 09:38:21 +02:00
Camille BAUD
63a52052df dts: bflb: Add bflb,l1c to bl60x and bl70x
Adds BL60x and BL70x cache nodes

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-10-09 09:38:21 +02:00
Camille BAUD
dfd5a60327 dts: cache: Add bflb,l1c binding
Adds binding for the bflb L1C cache control

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-10-09 09:38:21 +02:00
Pete Johanson
3c1bb43d3e boards: adi: Enable hwinfo support for missed MAX32 boards
This commit adds hwinfo to supported list of the following boards:
- MAX32655EVKIT
- MAX32657EVKIT
- MAX32690EVKIT
- MAX78002EVKIT

Signed-off-by: Pete Johanson <pete.johanson@analog.com>
2025-10-09 09:37:21 +02:00
Pete Johanson
1ec463e1a8 drivers: hwinfo: Memoize the USN fetched on MAX32
To avoid issues with multiple calls to fetch the USN returning garbage
data, memoize the returned USN value and re-use it on subsequent calls.

Signed-off-by: Pete Johanson <pete.johanson@analog.com>
2025-10-09 09:37:21 +02:00
Zhaoxiang Jin
91ab372b6a samples: i2s_codec: Refine sample for samll RAM platforms
- Configure BLOCK count by using kconfig option
'EXTRA_BLOCKS' instad of fixed value. This allows user to
customize the RAM usage based on their platform.
- Keep the PCM data in flash to avoid large RAM usage.
- Refine the sample to get the SAMPLE_BIT_WIDTH
and BYTES_PER_SAMPLE from Kconfig options.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-10-09 09:37:10 +02:00
Aziz Sellami
9fd1e284c1 boards: nxp: imx95_evk_15x15: flexcan2: add pinctrl node
Add pinmux configuration to enable the can in zephyr.
Using the following pins:
 - CAN2_TX, GPIO_IO25
 - CAN2_RX, GPIO_IO27

Signed-off-by: Aziz Sellami <aziz.sellami@nxp.com>
Signed-off-by: Jiafei Pan <jiafei.pan@nxp.com>
2025-10-09 09:36:53 +02:00
Aziz Sellami
03d10544d6 boards: nxp: imx95_evk_15x15: add pinctrl for enetc_psi0
Adds pinctrl definition for imx95_evk_15x15.

Signed-off-by: Aziz Sellami <aziz.sellami@nxp.com>
Signed-off-by: Jiafei Pan <jiafei.pan@nxp.com>
2025-10-09 09:36:53 +02:00
Aziz Sellami
20eac0eec8 boards: nxp: imx95_evk: flexcan2: add pinctrl node
Add pinmux configuration to enable the can in zephyr.
Using the following pins:
 - CAN2_TX, GPIO_IO25
 - CAN2_RX, GPIO_IO27

Signed-off-by: Aziz Sellami <aziz.sellami@nxp.com>
Signed-off-by: Jiafei Pan <jiafei.pan@nxp.com>
2025-10-09 09:36:53 +02:00
Mario Paja
1b533322e9 samples: i2s: output: add nucleo_l552ze_q
Add nucleo_l552ze_q board in samples/drivers/i2s/output

Signed-off-by: Mario Paja <mariopaja@hotmail.com>
2025-10-09 09:36:37 +02:00
Mario Paja
e892deba9e drivers: i2s: stm32 sai add support for stm32l5xx series
STM32L5xx series shares several DMA configurations with
the other platforms. These changes aim to enable platform
specific DMA configuration and align them to other platforms.

Signed-off-by: Mario Paja <mariopaja@hotmail.com>
2025-10-09 09:36:37 +02:00
Mario Paja
694459e4f4 dts: st: l5: add sai1 nodes
This change introduces PLLSAI1 and  SAI1 A/B nodes to STM32L5xx series

Signed-off-by: Mario Paja <mariopaja@hotmail.com>
2025-10-09 09:36:37 +02:00
Mario Paja
49dedb0b82 dt-bindings: clock: add stm32l5_clock
This change introduces stm32l5xx clock definitions and separates
it from L4xx series. This change comes because of CCIPR missmatch
of SAI between L4xx and L5xx series.

Signed-off-by: Mario Paja <mariopaja@hotmail.com>
2025-10-09 09:36:37 +02:00
Quang Le
ec4f8ac73f soc: renesas: Retrieve SYS_CLOCK_HW_CYCLES_PER_SEC from dts
Retrieve the value of SYS_CLOCK_HW_CYCLES_PER_SEC from the osc node in
the RZ/A3UL devicetree.

Signed-off-by: Quang Le <quang.le.eb@bp.renesas.com>
Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
2025-10-09 09:36:24 +02:00
Quang Le
4009fb12d9 dts: renesas: Add Clock Control support for RZ/A3UL, V2L
Add Clock Control nodes to Renesas RZ/A3UL, V2L devicetree

Signed-off-by: Quang Le <quang.le.eb@bp.renesas.com>
Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
2025-10-09 09:36:24 +02:00
Quang Le
f85ceddea6 drivers: clock control: Add Clock Control support for RZ/A3UL, V2L
Add Clock Control driver support for Renesas RZ/A3UL, V2L

Signed-off-by: Quang Le <quang.le.eb@bp.renesas.com>
Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
2025-10-09 09:36:24 +02:00
Quang Le
7ec5d9549e manifest: Update commit id for hal_renesas
Update commit id for hal_renesas

Signed-off-by: Quang Le <quang.le.eb@bp.renesas.com>
Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
2025-10-09 09:36:24 +02:00
Shan Pen
ffb91a2b45 drivers: sdmmc_stm32: Fix bus width initialization sequence
Fix SDMMC initialization by starting with 1-bit bus mode and
properly configuring wide bus operation after HAL
initialization.

The SDMMC protocol requires initialization to start in
1-bit mode before switching to wider bus widths.
Previously, the driver attempted to initialize directly
with the target bus width, which could cause later read/write
failures.

Changes:
- Initialize with SDMMC_BUS_WIDE_1B instead of target bus width
- Add HAL_SD_ConfigWideBusOperation() call if needed after
successful init
- Add error logging for wide bus configuration failures

Fixes potential SDMMC read/write failures issues on STM32 platforms.

Signed-off-by: Shan Pen <bricle031@gmail.com>
2025-10-09 09:36:10 +02:00
Camille BAUD
57df5abaa6 tests: build_all: display: Add st730x
Add tests for st730x display controllers.

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-10-08 18:28:28 -07:00
Camille BAUD
d6d21ec3ec drivers: display: Introduce st730x display controller
Introduces epaper-like high resolution st730x serie controllers. b&w only

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-10-08 18:28:28 -07:00
Tim Pambor
fa7f1b18f7 tests: llext: Improve compatibility with 64-bit platforms
Cast elf32_off/elf64_off to uint64_t and use %llu format specifier
to ensure compatibility with both 32-bit and 64-bit platforms.

Signed-off-by: Tim Pambor <tim.pambor@codewrights.de>
2025-10-08 18:27:19 -07:00
Tim Pambor
ccd5112dd7 tests: shell: Improve compatibility with 64-bit platforms
Use %zu format specifier for size_t type to ensure compatibility with both
32-bit and 64-bit platforms.

Signed-off-by: Tim Pambor <tim.pambor@codewrights.de>
2025-10-08 18:26:33 -07:00
Binh Nguyen
4b306d2d89 MAINTANERS: Update hal_renesas collaborator
Add binhnguyen2434 and nhutnguyenkc as collaborator for
HAL Renesas repo.

Signed-off-by: Binh Nguyen <binh.nguyen.xw@renesas.com>
2025-10-08 18:25:45 -07:00
Emil Gydesen
0abb23ffad Bluetooth: ISO: rm extra log statements in chan_send
bt_iso_chan_send and bt_iso_chan_send_ts would log
twice for each TX, which is unncessary. LOG_DBG statements
include the function name by default, so the 2nd log
statement was unncessary, and were removed.

Added logging of the ts in bt_iso_chan_send_ts which
would still make it possible to tell the 2 apart,
even if CONFIG_LOG_FUNC_NAME_PREFIX_DBG=n.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-10-08 18:25:17 -07:00
Anas Nashif
55af38cdbf samples: move pmci samples into samples/subsys/pmci
Move pmci samples under samples/subsys/pmci, given that pmci is a
subsystem in zephyr.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-10-08 18:24:27 -07:00
Camille BAUD
4f3d385c3c soc: bflb: Enable xuantie arch support for bl61x
Enables the Xuantie support for bl61x

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-10-08 15:12:49 -04:00
Camille BAUD
1afca0369c arch: riscv: Add support for Xuantie CPUs
Adds some support for xuantie CPU, namely cache control

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-10-08 15:12:49 -04:00
Vinayak Kariappa Chettimada
45d4d4ffb7 samples: Bluetooth: Fix BAP unicast client and server buffer counts
Fix BAP unicast and server sample ISO Tx buffer count to
match the minimum required to consistently transmit SDUs
in every ISO interval.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2025-10-08 15:12:32 -04:00
Vinayak Kariappa Chettimada
7fd5dea9cc Bluetooth: Controller: Cosmetic changes to Link Layer interface
Cosmetic changes to the Link Layer interface header file.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2025-10-08 15:12:22 -04:00
Hugues Fruchet
47e68bece9 samples: video: tcpserversink: add stm32n6570_dk support
Add configuration files for the stm32n6570_dk board.

This enables streaming over ethernet of the images captured by
MB1854 camera module compressed in 1920x1080 H264 video bitstream.

Signed-off-by: Hugues Fruchet <hugues.fruchet@foss.st.com>
2025-10-08 15:11:56 -04:00
Hugues Fruchet
9497b60fe1 samples: video: tcpserversink: video compression support
Add video compression support to lowerize network bandwidth.

To visualise camera content on host PC, use GStreamer command line:
$> gst-launch-1.0 tcpclientsrc host=<board ip address> port=5000 ! \
          decodebin ! autovideosink sync=false

Signed-off-by: Hugues Fruchet <hugues.fruchet@foss.st.com>
2025-10-08 15:11:56 -04:00
Hugues Fruchet
aeb41fa636 samples: video: tcpserversink: N-buffering configuration
Allow to configure the number of allocated capture frames.
This allows to make tradeof between framerate versus memory usage.
2 buffers allows to capture while sending data (optimal framerate).
1 buffer allows to reduce memory usage but capture framerate is lower.

Signed-off-by: Hugues Fruchet <hugues.fruchet@foss.st.com>
2025-10-08 15:11:56 -04:00
Hugues Fruchet
92eaf08053 samples: video: tcpserversink: sync with capture sample
Sync with video capture sample.

Signed-off-by: Hugues Fruchet <hugues.fruchet@foss.st.com>
2025-10-08 15:11:56 -04:00
Hugues Fruchet
f40e031d8a samples: video: tcpserversink: change printk to LOG_
Change printk debug traces to LOG_*.

Signed-off-by: Hugues Fruchet <hugues.fruchet@foss.st.com>
2025-10-08 15:11:56 -04:00
Alain Volmat
2654845b93 snippets: stm32: addition of video-stm32-venc
Addition of a snippet in order to enable and configure the
STM32 VENC encoder

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-10-08 15:11:56 -04:00
Hugues Fruchet
926aac9fe7 doc: build: dts: api: document the zephyr,videoenc chosen node
Add the zephyr,videoenc chosen node documentation for hardware
video encoder support such as H264 or MJPEG video encoder.

Signed-off-by: Hugues Fruchet <hugues.fruchet@foss.st.com>
2025-10-08 15:11:56 -04:00
Anisetti Avinash Krishna
8e799c4f73 boards: intel: btl: Added revisions to support Hybrid and 12P
Added revisions to support Hybrid and 12P versions of
Bartlett Lake Platform.

Signed-off-by: Anisetti Avinash Krishna <anisetti.avinash.krishna@intel.com>
2025-10-08 15:10:58 -04:00
Flavio Ceolin
750092dea6 modules: mbedtls: Add security warning
Add a warning informing about security issues when
TLS/DTLS is used without providing MBEDTLS access to
time/date functions (enabling CONFIG_MBEDTLS_HAVE_TIME_DATE).

Signed-off-by: Flavio Ceolin <flavio@hubble.com>
2025-10-08 15:10:46 -04:00
Seppo Takalo
4040a1e2b2 drivers: modem: Extract common dts bindings
Extract common DTS bindings to zephyr,cellular-modem-device.yaml
as these are referred in the modem_cellular.c in the
MODEM_CELLULAR_DEFINE_INSTANCE() macro.

Signed-off-by: Seppo Takalo <seppo.takalo@nordicsemi.no>
2025-10-08 15:09:46 -04:00
Vinayak Kariappa Chettimada
8eae0bfbd0 Bluetooth: Controller: Fix single switch timer use in ISO Sync
Fix implementation of Broadcast ISO Synchronized Receiver
using single switch timer to consider minimum compare value
requirement.

This fix reduces latencies to setup radio receptions and
fixes an assertion in lll_sync_iso when radio_tmr_start_us()
is checked for latencies.

Relates to commit 5dfc58cff9 ("Bluetooth: Controller: Fix
single switch timer minimum compare value").

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2025-10-08 15:09:33 -04:00
Glenn Andrews
60058d7afa boards: disco_l475_iot1 update openocd.cfg
Latest versions of OpenOCD don't seem to work with
`transport select hla_swd`, but the `board/stm32l4discovery.cfg`
file should work on any version of OpenOCD that contains it
(including my older version).

This should keep things forward-compatible.

Probably this will affect other stm32 boards using `hla_swd`
but I have no way of testing them.

Signed-off-by: Glenn Andrews <glenn.andrews.42@gmail.com>
2025-10-08 15:09:16 -04:00
Marc Espuña
ce1235d16a tests: drivers: build_all: cover uc8151d
Add a UC8151D node to the build_all display overlay so the
continuous-integration build exercises the new driver path. The dummy
profile overrides only CDI and VCOM to keep the overlay lightweight
while still covering the relevant code paths.

Signed-off-by: Marc Espuña <mespuna@cactusiot.com>
2025-10-08 15:08:57 -04:00
Marc Espuña
5b595e33eb drivers: display: uc8151d: Add UC8151D display controller support
Add support for the UltraChip UC8151D e-paper display (EPD) controller.
The UC8151D is part of the UC81xx family of display controllers commonly
used in e-ink displays.

This implementation extends the existing UC81xx driver infrastructure by
adding device tree bindings, Kconfig options, and the necessary driver
code to support the UC8151D variant.

Signed-off-by: Marc Espuña <mespuna@cactusiot.com>
2025-10-08 15:08:57 -04:00
Arun Kumar Nagelly
5a70c3d6b7 soc: silabs: siwx91x: enable BLE stack bypass for host-driven operation
Set SL_SI91X_BT_BLE_STACK_BYPASS_ENABLE in ble_ext_feature_bit_map to
support host-driven BT/BLE stack operation on SiWx91x devices.

When enabled:
- Events are delivered directly to the host, bypassing internal stack
  processing
- Ensures critical events like CARD_READY reach the host reliably
- Allows external host stack to control BT/BLE operations
- Provides more memory to the application, as the internal stack is
  bypassed

This change enables direct event packet delivery from the firmware event
handler, ensuring proper operation when the internal BT stack is
bypassed.

Required for BT/BLE tester and host-controlled stack configurations.

Signed-off-by: Arun Kumar Nagelly <arnagell@silabs.com>
2025-10-08 15:07:55 -04:00
Rob Cornall
6467e99a5e boards: arm: max32: enable mpu by default on MAX32xxx boards.
MPU is supported on MAX32 soc family. Enable it by default for all
supported MAX32XXX boards.

Signed-off-by: Rob Cornall <Rob.Cornall@analog.com>
2025-10-08 15:07:38 -04:00
dependabot[bot]
e46510bff7 ci: doc: bump sphinx-sitemap in /doc in the doc-deps group
Bumps the doc-deps group in /doc with 1 update: [sphinx-sitemap](https://github.com/jdillard/sphinx-sitemap).


Updates `sphinx-sitemap` from 2.8.0 to 2.9.0
- [Release notes](https://github.com/jdillard/sphinx-sitemap/releases)
- [Changelog](https://github.com/jdillard/sphinx-sitemap/blob/master/CHANGELOG.rst)
- [Commits](https://github.com/jdillard/sphinx-sitemap/compare/v2.8.0...v2.9.0)

---
updated-dependencies:
- dependency-name: sphinx-sitemap
  dependency-version: 2.9.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: doc-deps
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-10-08 15:07:19 -04:00
dependabot[bot]
472c29a0af ci: github: bump the actions-deps group with 4 updates
Bumps the actions-deps group with 4 updates: [github/codeql-action](https://github.com/github/codeql-action), [fsfe/reuse-action](https://github.com/fsfe/reuse-action), [ossf/scorecard-action](https://github.com/ossf/scorecard-action) and [actions/stale](https://github.com/actions/stale).


Updates `github/codeql-action` from 3.30.5 to 3.30.6
- [Release notes](https://github.com/github/codeql-action/releases)
- [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md)
- [Commits](3599b3baa1...64d10c1313)

Updates `fsfe/reuse-action` from 5.0.0 to 6.0.0
- [Release notes](https://github.com/fsfe/reuse-action/releases)
- [Commits](bb774aa972...676e2d560c)

Updates `ossf/scorecard-action` from 2.4.2 to 2.4.3
- [Release notes](https://github.com/ossf/scorecard-action/releases)
- [Changelog](https://github.com/ossf/scorecard-action/blob/main/RELEASE.md)
- [Commits](05b42c6244...4eaacf0543)

Updates `actions/stale` from 10.0.0 to 10.1.0
- [Release notes](https://github.com/actions/stale/releases)
- [Changelog](https://github.com/actions/stale/blob/main/CHANGELOG.md)
- [Commits](3a9db7e6a4...5f858e3efb)

---
updated-dependencies:
- dependency-name: github/codeql-action
  dependency-version: 3.30.6
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: actions-deps
- dependency-name: fsfe/reuse-action
  dependency-version: 6.0.0
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: actions-deps
- dependency-name: ossf/scorecard-action
  dependency-version: 2.4.3
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: actions-deps
- dependency-name: actions/stale
  dependency-version: 10.1.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: actions-deps
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-10-08 15:06:50 -04:00
Titouan Christophe
dba0a28f52 samples: subsys: usb: midi: fix compilation warning
This fixes the following compilation warning:

    format '%X' expects argument of type 'unsigned int',
    but argument 2 has type 'long unsigned int'

Signed-off-by: Titouan Christophe <titouan.christophe@mind.be>
2025-10-08 15:06:33 -04:00
Titouan Christophe
f7ccc6bae3 lib: midi2: fix const-incorrect ump_stream_responder_cfg
Passing a USB-MIDI device in a ump stream responder configuration,
as obtained from the device tree with DEVICE_DT_GET(), was wrongly
casting is from const struct device* to void*, hence removing the const
pointer attribute.

This incorrectness introduces some compilation issue. Let's therefore
make the device pointer constant in ump_stream_responder_cfg, and
add a macro to make the proper typecast consistently. Finally, adapt the
corresponding samples to use that new macro.

Signed-off-by: Titouan Christophe <titouan.christophe@mind.be>
2025-10-08 15:06:33 -04:00
Carles Cufi
8d202cb948 doc: coding style: Introduce a naming conventions section
Add a new section with Zephyr-wide naming conventions, as well as a
first rule for C code: area prefixes.

Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
2025-10-08 17:47:58 +03:00
Marcio Ribeiro
e8c6695f08 drivers: adc: esp32: split adc_esp32.c between 2 files
Splits driver source code between adc_esp32.c and adc_esp32_dma.c to
improve maintenance

Signed-off-by: Marcio Ribeiro <marcio.ribeiro@espressif.com>
2025-10-08 17:47:42 +03:00
Marcio Ribeiro
a96e18de97 drivers: adc: esp32: enable adc dma on non gdma socs
Enables adc dma on:
- esp32
- esp32-s2

Signed-off-by: Marcio Ribeiro <marcio.ribeiro@espressif.com>
2025-10-08 17:47:42 +03:00
Michał Bainczyk
aa5b47634f drivers: timer: nrf_grtc_timer: use a function for cc enable check
Instead of checking register values directly, use a function from
nrfx that does this.

Signed-off-by: Michał Bainczyk <michal.bainczyk@nordicsemi.no>
2025-10-08 17:47:32 +03:00
Yassine El Aissaoui
b24f3f36c6 boards: nxp: mcxw23: Add support for BLE apps
Update board readme.
Add zephyr,uart-pipe to support bt_tester app.

Signed-off-by: Yassine El Aissaoui <yassine.elaissaoui@nxp.com>
2025-10-08 17:47:21 +03:00
Yassine El Aissaoui
4d90bca664 soc: nxp: mcxw: Add BLE support to MCXW2XX soc
Add configuration for BLE
Add 32KHz Osc clock needed by BLE
Move nxp_nbu.c include to be shared on mcxw7x and mcxw2x

Signed-off-by: Yassine El Aissaoui <yassine.elaissaoui@nxp.com>
2025-10-08 17:47:21 +03:00
Yassine El Aissaoui
7f621c4b9c soc: nxp: mcxw: Isolate MCXW7xx-specific config from MCXW2xx
Both MCXW2xx and MCXW7xx now share the same SoC family
(CONFIG_SOC_FAMILY_MCXW).

Isolate mcxw7xx-specific module/code from mcxw2xx.

Signed-off-by: Yassine El Aissaoui <yassine.elaissaoui@nxp.com>
2025-10-08 17:47:21 +03:00
Yassine El Aissaoui
4bffa6456b dts: arm: nxp: mcxw23x: Add BLE dts information
Add HCI info and BLE interrupt.

Lower peripheral interrupt prio to make sure
LL irq have the highest one.
This is a prerequisite of the system.

Signed-off-by: Yassine El Aissaoui <yassine.elaissaoui@nxp.com>
2025-10-08 17:47:21 +03:00
Sašo Domadenik
2ac238cce0 drivers: sensor: ds18b20: Fix temperature calculation for ds18s20
The millionths value is calculated incorrectly.
The sensor has a precision of 0.5 which is 500000 millionths, but
there is an extra zero in the code. This fix removes the extra zero.

Signed-off-by: Sašo Domadenik <saso.doma@gmail.com>
2025-10-08 17:47:10 +03:00
Declan Snyder
f56f1967e0 drivers: uart_mcux_lpuart: Handle multiple uart case
Handle the case where there are multiple different kinds of UART on one
platform, the other UART driver select SERIAL_SUPPORT_ASYNC but LPUART
did not, causing build error in LPUART driver. Shield LPUART driver from
this case by introducing driver config to indicate that in fact LPUART
is the one enabling ASYNC.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-10-08 17:47:00 +03:00
Maureen Helm
6ca60371fc boards: adi: max32675evkit: Enable watchdog support
Enables watchdog support for max32675evkit board.

Signed-off-by: Maureen Helm <maureen.helm@analog.com>
2025-10-08 17:46:42 +03:00
Maureen Helm
5d155745a4 boards: adi: max32680evkit: Enable RTC counter support
Enable RTC counter support for the max32680evkit board.

Signed-off-by: Maureen Helm <maureen.helm@analog.com>
2025-10-08 17:46:42 +03:00
Tien Nguyen
63194b8c98 MAINTAINERS: Add myself as Renesas RZ Platforms collaborator
Add myself (tiennguyenzg) as collaborator
in the Renesas RZ Platforms area

Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
2025-10-08 17:46:35 +03:00
Benjamin Cabé
3168f0645e drivers: rtc: rv3032: fix clang error label followed by a declaration
Declare variable at the beginning of the function since having it
declared in the default case makes clang unhappy (can't declare a
variable after a label).

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-10-08 17:46:24 +03:00
Jacky Lee
3d5e9cdd10 board: Add 'egis_et171' dev board
This is a development board for Egis et171 SOC.
It has basic peripherals such as GPIO, I2C, SPI,.. etc
and built-in USB.

Signed-off-by: Jacky Lee <jacky.lee@egistec.com>
2025-10-08 12:15:44 +02:00
Jacky Lee
83afba85d1 driver: Reuse andes_cache driver for compatible MCUs
Fixed a wrong function declare of 'nds_l2_cache_init'.
Replace `SOC_FAMILY_ANDES_V5` with `DT_HAS_ANDESTECH_ANDESCORE_V5_ENABLED`
condition to enable it to be used by compatible MCUs

Signed-off-by: Jacky Lee <jacky.lee@egistec.com>
2025-10-08 12:15:44 +02:00
Jacky Lee
9cde077512 soc: Add Egis et171
This is a SOC based on AE350. In addition to the core, some
modifications have been made to the peripheral functions,
including the integration of built-in USB.

Signed-off-by: Jacky Lee <jacky.lee@egistec.com>
2025-10-08 12:15:44 +02:00
Andre Heinemans
8760db3016 drivers: flash: flexspi_mx25um51345g: fix erase chip lut entry
The DDR LUT entry for ERASE_CHIP was configured with an incorrect
kFLEXSPI_Command, resulting in the erase operation not being executed.

Signed-off-by: Andre Heinemans <andre.heinemans@nxp.com>
2025-10-08 12:04:52 +02:00
Andre Heinemans
6a714d55d9 drivers: flash: flexspi_mx25um51345g: get max speed from dts
The maximum speed should be configured individually for each board
since it depends on the layout and the controller's flexspi capabilities.

Signed-off-by: Andre Heinemans <andre.heinemans@nxp.com>
2025-10-08 12:04:52 +02:00
Andre Heinemans
e774d82cbe drivers: flash: flexspi_mx25um51345g: fix DDR dummy cycles
In the DDR LUT, the dummy cycles were not defined for READ_STATUS_REG
and had a wrong value for READ.
The default amount of dummy cycles on this chip are 20 (0x14).
This means the LUT should contain the value of 0x28 (0x14*2) for DDR
at these entries.

Signed-off-by: Andre Heinemans <andre.heinemans@nxp.com>
2025-10-08 12:04:52 +02:00
Bartosz Miller
424459d5d7 tests: drivers: flash: Fix fixture assignment for the supply-gpios test
Supply-gpios feature test [nrf54h20] requires gpio_loopback fixture.

Signed-off-by: Bartosz Miller <bartosz.miller@nordicsemi.no>
2025-10-08 12:04:42 +02:00
Zhaoxiang Jin
2eff0fd208 audio: dmic: Uniform indentation
Some parts of this file use tabs as indentation,
and some use spaces as indentation. This commit
unifies the indentation.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-10-08 12:04:32 +02:00
Etienne Carriere
45aea48746 boards: st: nucleo_l552ze_q: correct ns variant RAM info
TF-M owns the last 64kByte of SoC internal SRAM1 in 'ns' variant of
board nucleo_l552ze_q. Update the board variant DTS and YAML files
accordingly and remove the default allocation of 2kB of malloc pool
that worked around this missing information.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-10-08 12:04:25 +02:00
Etienne Carriere
c5bacb30f5 boards: st: nucleo_l552ze_q: remove ns variant useless configuration
Remove configuration directive CONFIG_ARM_TRUSTZONE_M=y for board
variant nucleo_l552ze_q//ns that is already selected by the SoC defconfig.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-10-08 12:04:25 +02:00
Etienne Carriere
a69ed69055 boards: st: b_u585i_iot02a: correct ns variant RAM info
TF-M owns the last 64kByte of SoC internal SRAM1 in 'ns' variant of
board b_u585i_iot02a. Update the board variant DTS and YAML files
accordingly and use RAM3 (512kB) as default Zephyr RAM since it is
larger than the remaining 128kB left in SRAM1.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-10-08 12:04:25 +02:00
Etienne Carriere
31aea408ce boards: st: b_u585_iot02a: remove ns variant useless configuration
Remove configuration directive CONFIG_ARM_TRUSTZONE_M=y for board
variant b_u585_iot02a//ns that is already selected by the SoC defconfig.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-10-08 12:04:25 +02:00
Etienne Carriere
9f65833d0d boards: st: b_u585_iot02a: correct ns variant YAML flash size tag
Correct the flash size tag in b_u585_iot02a//ns YAML file. Non-secure
Zephyr firmware partition size is 1024 bytes large since merge of
commit f37660293b ("west.yml: Bump tf-m with stm32 patches").

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-10-08 12:04:25 +02:00
Etienne Carriere
4c77ea93a7 boards: st: stm32l562e_dk: correct ns variant RAM info
TF-M owns the last 64kByte of SoC internal SRAM1 in 'ns' variant of
board stm32l562e_dk. Update the board variant DTS and YAML files
accordingly and remove the default allocation of 2kB of malloc pool
that worked around this missing information.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-10-08 12:04:25 +02:00
Etienne Carriere
3529306a03 boards: st: stm32l562e_dk: remove ns variant useless configuration
Remove configuration directive CONFIG_ARM_TRUSTZONE_M=y for board
variant stm32l562e_dk//ns that is already selected by the SoC defconfig.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-10-08 12:04:25 +02:00
Etienne Carriere
76fcbe2df7 boards: st: stm32l562e_dk: correct ns variant YAML flash size tag
Correct the flash size tag in stm32l562e_dk//ns YAML size as
the non-secure zephyr firmware partition size is 168 bytes large.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-10-08 12:04:25 +02:00
Benjamin Cabé
02551294f9 tests: kernel: device: add missing node in hifive board overlays
A follow-up to commit d6ce2f4f41 that
introduced a new fakedeferdriver node in app.overlay, but due to how
overlays are applied, the board specific overlay files also need to
be updated to avoid build errors, as they override whatever app.overlay
has.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-10-08 12:04:14 +02:00
Ritesh Kudkelwar
a360cca365 dts: arm: st: u5: add st,stm32-qdec child nodes (disabled)
Add st,stm32-qdec child nodes (disabled) under TIM nodes in STM32U5
DTSI files. Nodes are disabled by default; boards can enable encoder
mode via overlays. No functional change.

Signed-off-by: Ritesh Kudkelwar <ritesh.kumar0793@gmail.com>
2025-10-08 12:04:04 +02:00
Ritesh Kudkelwar
ddb3b7600d dts: arm: st: l5: add st,stm32-qdec child nodes (disabled)
Add st,stm32-qdec child nodes (disabled) under TIM nodes in STM32L5
DTSI files. Nodes are disabled by default so boards can enable encoder
mode via overlays. No functional change.

Signed-off-by: Ritesh Kudkelwar <ritesh.kumar0793@gmail.com>
2025-10-08 12:04:04 +02:00
Ritesh Kudkelwar
9b9033a49f dts: arm: st: l4: add st,stm32-qdec child nodes (disabled)
Add st,stm32-qdec child nodes (disabled) under TIM nodes in STM32L4
DTSI files. Boards can enable them in overlays. No functional change.

Signed-off-by: Ritesh Kudkelwar <ritesh.kumar0793@gmail.com>
2025-10-08 12:04:04 +02:00
Ritesh Kudkelwar
615554cedc dts: arm: st: l1: add st,stm32-qdec child nodes (disabled)
Add st,stm32-qdec child nodes (disabled) under TIM nodes in STM32L1
DTSI files. Boards can enable them in overlays. No functional change.

Signed-off-by: Ritesh Kudkelwar <ritesh.kumar0793@gmail.com>
2025-10-08 12:04:04 +02:00
Ritesh Kudkelwar
9ba0694e26 dts: arm: st: l0: add st,stm32-qdec child node (disabled)
Add st,stm32-qdec child node (disabled) under TIM nodes in STM32L0
DTSI files. Boards can enable it in overlays. No functional change.

Signed-off-by: Ritesh Kudkelwar <ritesh.kumar0793@gmail.com>
2025-10-08 12:04:04 +02:00
Ritesh Kudkelwar
3a5b7e5ac8 dts: arm: st: h7: add st,stm32-qdec child nodes (disabled)
Add st,stm32-qdec child nodes (disabled) under TIM nodes in STM32H7
DTSI files. Nodes are disabled by default; boards may enable them via
overlays. No functional change.

Signed-off-by: Ritesh Kudkelwar <ritesh.kumar0793@gmail.com>
2025-10-08 12:04:04 +02:00
Ritesh Kudkelwar
7a9281862c dts: arm: st: g4: add st,stm32-qdec child nodes (disabled)
Add st,stm32-qdec child nodes (disabled) under TIM nodes in STM32G4
DTSI files. Nodes are disabled by default; boards may enable them via
overlays. No functional change.

Signed-off-by: Ritesh Kudkelwar <ritesh.kumar0793@gmail.com>
2025-10-08 12:04:04 +02:00
Ritesh Kudkelwar
0f325c807c dts: arm: st: g0: add st,stm32-qdec child nodes (disabled)
Add st,stm32-qdec child nodes (disabled) under TIM nodes in STM32G0
DTSI files. Boards can enable them in overlays. No functional change.

Signed-off-by: Ritesh Kudkelwar <ritesh.kumar0793@gmail.com>
2025-10-08 12:04:04 +02:00
Ritesh Kudkelwar
5df57ff0d5 dts: arm: st: f7: add st,stm32-qdec child nodes (disabled)
Add st,stm32-qdec child nodes (disabled) under TIM nodes in STM32F7
DTSI files. Nodes are disabled by default; boards may enable them via
overlays. No functional change.

Signed-off-by: Ritesh Kudkelwar <ritesh.kumar0793@gmail.com>
2025-10-08 12:04:04 +02:00
Ritesh Kudkelwar
3281e77704 dts: arm: st: f4: clean QDEC node properties
Reorder and tidy QDEC node properties in STM32F4 DTSI files.
No functional change.

Signed-off-by: Ritesh Kudkelwar <ritesh.kumar0793@gmail.com>
2025-10-08 12:04:04 +02:00
Ritesh Kudkelwar
bfbb0c6985 dts: arm: st: f3: add st,stm32-qdec child node (disabled)
Add st,stm32-qdec child node (disabled) under TIM nodes in STM32F3
DTSI files. Boards can enable the node via overlays. No functional change.

Signed-off-by: Ritesh Kudkelwar <ritesh.kumar0793@gmail.com>
2025-10-08 12:04:04 +02:00
Ritesh Kudkelwar
61f983758a dts: arm: st: f2: clean QDEC node properties
Reorder QDEC node properties for consistency in STM32F2 DTSI files.
No functional change.

Signed-off-by: Ritesh Kudkelwar <ritesh.kumar0793@gmail.com>
2025-10-08 12:04:04 +02:00
Ritesh Kudkelwar
784a8cb83a dts: arm: st: f1: add st,stm32-qdec child nodes (disabled)
Add st,stm32-qdec child nodes (disabled) under TIM nodes in the
STM32F1 DTSI files. Boards can enable encoder/decoder functionality
using overlays. No functional change.

Signed-off-by: Ritesh Kudkelwar <ritesh.kumar0793@gmail.com>
2025-10-08 12:04:04 +02:00
Karol Lasończyk
8fb6ea2c8c tests: mbox: Add support for nRF54LM20A
Extend test coverage with new test.

Signed-off-by: Karol Lasończyk <karol.lasonczyk@nordicsemi.no>
2025-10-08 12:03:55 +02:00
Szymon Janc
8c13c0740c tests: bluetooth: tester: Fix extra newline in logs
LOG_INF macro already adds newline at the line end.

Signed-off-by: Szymon Janc <szymon.janc@codecoup.pl>
2025-10-08 10:09:56 +02:00
Sebastian Głąb
e0a9a16a25 tests: drivers: uart: uart_async_api: Enable test on nrf54h20 PPR XIP
Add overlay and config file required to run the uart_async_api
test on nrf54h20dk/nrf54h20/cpuppr/xip platform.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
2025-10-08 10:09:50 +02:00
Henrik Brix Andersen
afc65525c0 retention: remove unused API struct
Remove the unused/unnecessary retention subsystem API struct.

Signed-off-by: Henrik Brix Andersen <henrik@brixandersen.dk>
2025-10-08 10:09:41 +02:00
Emil Gydesen
1e436f43d1 tests: Bluetooth: PACS: Modify unittests to native_sim
Modify the unit tests to use the native_sim board instead of the
unit_testing board.
The native_sim board allows us to use the kernel in a more
regular way, while still being able to treat the tests as
unittest.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-10-08 10:09:33 +02:00
Emil Gydesen
af00bc5a90 tests: Bluetooth: Codec: Modify unittests to native_sim
Modify the unit tests to use the native_sim board instead of the
unit_testing board.
The native_sim board allows us to use the kernel in a more
regular way, while still being able to treat the tests as
unittest.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-10-08 10:09:27 +02:00
Dipak Shetty
13848189c3 boards: shields: add Mikroe RTC 18 Click shield
Add MikroElektronika RTC 18 Click shield support.

Signed-off-by: Dipak Shetty <shetty.dipak@gmx.com>
2025-10-08 10:09:21 +02:00
Dipak Shetty
15d398de8e tests: rtc: add microcrystal,rv3032 to build_all test suite
Ensure this driver is tested in the build_all test suite.

Signed-off-by: Dipak Shetty <shetty.dipak@gmx.com>
2025-10-08 10:09:21 +02:00
Dipak Shetty
5a018375e3 drivers: rtc: microcrystal rv3032 driver introduced
Added new driver for Micro Crystal RV-3032-C7 Real-Time
Clock Module.

Signed-off-by: Dipak Shetty <shetty.dipak@gmx.com>
2025-10-08 10:09:21 +02:00
Dipak Shetty
494d443030 dts: bindings: microcrystal,rv3032 binding introduced
Added a new binding for the microcrystal,rv3032 rtc driver.

Signed-off-by: Dipak Shetty <shetty.dipak@gmx.com>
2025-10-08 10:09:21 +02:00
Adam BERLINGER
b5c7a67e77 drivers: i3c: stm32: Fix issue with DAA command
The TXFNF needs to be disabled for additional I3C targets
during the DAA process. Otherwise the TX interrupt might be triggered
before receiving full PID for target.

Signed-off-by: Adam BERLINGER <adam.berlinger@st.com>
2025-10-08 10:09:12 +02:00
Karsten Koenig
a50dc9fb8a boards: nordic: nrf54h20dk: ETM in JLinkScript
The JLinkScript originally configured more than needed which reduces
readability, so stripped it down to the minimum.
At the same time improved behavior under reset and added ETM to the
radiocore JLinkScript.

Signed-off-by: Karsten Koenig <karsten.koenig@nordicsemi.no>
2025-10-08 10:09:02 +02:00
Karsten Koenig
0b5bb3c8c4 snippets: nordic-log-stm-tpiu-dict: Added
Added a new convience snippet to redirect logs to STM and then sink them
to TPIU where they can be captured by a trace probe.

Signed-off-by: Karsten Koenig <karsten.koenig@nordicsemi.no>
2025-10-08 10:09:02 +02:00
Karsten Koenig
24353a8938 drivers: misc: nordic_vpr_launcher: Init order
Make sure the nordic_vpr_launcher gets started after the coresight
driver if that is present.

Signed-off-by: Karsten Koenig <karsten.koenig@nordicsemi.no>
2025-10-08 10:09:02 +02:00
Karsten Koenig
02fb6fa1c8 snippets: nordic-log-stm: Updated for coresight
Replaced the old tddconf with the full coresight driver that configures
the coresight peripherals locally on the running core.
Also fixed minor bug in the corresponding sample where messages were not
shown for the radio core.

Signed-off-by: Karsten Koenig <karsten.koenig@nordicsemi.no>
2025-10-08 10:09:02 +02:00
Karsten Koenig
6066a42748 drivers: debub: coresight: Added coresight_nrf
Added driver and bindings for the coresight nrf submodule.
add integrated it for the nrf54h20.
The coresight subsystem is a combination of ARM Coresight peripherals
that get configured together to achieve a simplified configuration based
on a desired operating mode.

This also replaces the previous handling in the nrf54h20 soc.c which was
powering the subsystem up but not configuring it.

Signed-off-by: Karsten Koenig <karsten.koenig@nordicsemi.no>
2025-10-08 10:09:02 +02:00
Karsten Koenig
85363f9e53 drivers: pinctrl_nrf: Add coresight tpiu pins
Pinctrl needs to set the needed drive and direction of the pins. Also
this later allows automatically setting the clock bit for the traceclk
pin.

Signed-off-by: Karsten Koenig <karsten.koenig@nordicsemi.no>
2025-10-08 10:09:02 +02:00
Karsten Koenig
925451e15c doc: migration-guide: Moved nrf_etr
Migration guide for the move of drivers/misc/nrf_etr to
drivers/debug/debug_nrf_etr.

Signed-off-by: Karsten Koenig <karsten.koenig@nordicsemi.no>
2025-10-08 10:09:02 +02:00
Karsten Koenig
d833556ee5 drivers: debug: Moved nrf_etr from misc
Moved the nrf_etr driver from the drive/misc folder into the recently
established driver/debug folder where it is a better fit. Moved the
associated files such as bindings and headers accordingly as well.

Signed-off-by: Karsten Koenig <karsten.koenig@nordicsemi.no>
2025-10-08 10:09:02 +02:00
Daniel Leung
7a1e82a335 boards: qemu/xtensa: ignore FPU and SMP testing tags
Ignore FPU and SMP tests for QEMU Xtensa boards as they do not
support these features, and have been filtered out already.
Add both tags to the ignore list so twister will not even try
to run cmake on them just to filter them out later.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-10-08 10:08:33 +02:00
Luca Burelli
adba71226a boards: arduino: use common usb_cdc_acm serial on all STM32H747 boards
Align all Arduino STM32H7-based boards to the same shared configuration:
- M7 core uses USB CDC ACM as the UART console backend
- M4 core uses a board-specific USART as the UART console backend
- Switch to the usb_device_next stack

Signed-off-by: Luca Burelli <l.burelli@arduino.cc>
2025-10-08 10:08:26 +02:00
Abderrahmane JARMOUNI
bc2c089666 samples: drivers: adc: enhance test scenarios filtering
Make ADC samples' test scenarios depend on the existence of
required DT elements.

Signed-off-by: Abderrahmane JARMOUNI <git@jarmouni.me>
2025-10-08 08:47:27 +02:00
Abderrahmane JARMOUNI
bf34921e33 tests: drivers: adc: enhance test scenarios filtering
Make ADC tests' test scenarios depend on the existence of
required DT elements.

Signed-off-by: Abderrahmane JARMOUNI <git@jarmouni.me>
2025-10-08 08:47:27 +02:00
Abderrahmane JARMOUNI
fed89a038d scripts: pylib: twister: expr_parser: add dt_node_has_prop expression
Add 'dt_node_has_prop' expression to use the existence of a node property
as a filter in Twister test configuration yaml files.
First argument must be a node alias (in aliases node) or a node path,
not a nodelabel.

Signed-off-by: Abderrahmane JARMOUNI <git@jarmouni.me>
2025-10-08 08:47:27 +02:00
Cristian Bulacu
d93b59b3f0 openthread: platform: radio_spinel: Spinel variables on global memory
This commits aims to move spinel related variables from heap to global
arrays.
In this way, HEAP_MEM_POOL_ADD_SIZE_ does not need to be defined, or
updated if any change in data structure might occur.

Signed-off-by: Cristian Bulacu <cristian.bulacu@nxp.com>
2025-10-08 08:46:14 +02:00
Jamie McCrae
01542407f9 scripts: utils: migrate_mcumgr_kconfigs: Remove old Kconfigs
Removes Kconfig changes which happened in Zephyr 3.3 or older

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-10-08 08:46:03 +02:00
Bill Waters
e9a6799736 drivers: i2c: minor update to Infineon driver
- update to the new name of the function used from
  the serial driver

Signed-off-by: Bill Waters <bill.waters@infineon.com>
2025-10-08 08:45:48 +02:00
Emil Gydesen
35a4613bf7 tests: Bluetooth: Controller: Fix bad string formats
A handful of Bluetooth controller tests were using %d for
non-int values. Some of the values were either uint64_t or
long unsigned ints.

In most cases, the types could be modified to uint8_t and
the formats changed to use %u.
In some macros, the types were just cast, as the values
would never be larger than uint8_t. The values in this case
were defined as e.g. BIT(0), BIT(1) and BIT(2) (which use the
UL type in the macro).

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-10-08 08:45:37 +02:00
Emil Gydesen
4b9bc7d11b Bluetooth: Controller: Fix return types for ll_length
ll_length_req_send and ll_length_default_set were defined to return
a uint32_t, but only returned a uint8_t HCI error code and
was the return value was always stored as such.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-10-08 08:45:37 +02:00
Tommi Kangas
f8f87c0752 boards: nrf9280pdk: Fix LED pins for rev. 0.2.0 with IronSide
LED pins need to be set in the cpuapp/iron rev. 0.2.0 overlay.

Signed-off-by: Tommi Kangas <tommi.kangas@nordicsemi.no>
2025-10-08 08:45:15 +02:00
Torbjørn Biering Tvermosegaard
863a7668b3 drivers: adc: ad599x: Fix async logic error and driver breakdown
The general ADC documentation states, that it is possible to use the
adc_read_async function with third parameter (k_poll_signal *async) set to
NULL, in which case the callback is called when all channels have been
converted. This change fixes this issue as it now also checks if a callback
has been set.

Signed-off-by: Torbjørn Biering Tvermosegaard <tbt@foss.dk>
2025-10-08 08:45:08 +02:00
Emil Gydesen
d9a691c2bf tests: Bluetooth: BAP: Modify BASE unittests to native_sim
Modify the unit tests to use the native_sim board instead of the
unit_testing board.
The native_sim board allows us to use the kernel in a more
regular way, while still being able to treat the tests as
unittest.

This commit also removes unused includes in the CMakelists.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-10-08 08:44:52 +02:00
Ayush Singh
7781f95f44 samples: subsys: mgmt: mcumgr: smp-svr: Enable for BeagleConnect Freedom
- Add config to enable the sample for BeagleConnect Freedom over 802154
  subg.
- Also add instructions to the docs.

Signed-off-by: Ayush Singh <ayush@beagleboard.org>
2025-10-08 08:44:28 +02:00
cyliang tw
ffb132efad boards: nuvoton: numaker: Guide VS Code pack in doc
Introduce Nuvoton NuMicro Cortex-M Pack of Visual Studio Code in doc.

Signed-off-by: cyliang tw <cyliang@nuvoton.com>
2025-10-08 08:44:20 +02:00
Måns Ansgariusson
98917a022b tracing: Remove retired k_pipe tracing api
The old k_pipe api was retired in #95408, the tracing hooks should be
removed as well.

Signed-off-by: Måns Ansgariusson <Mansgariusson@gmail.com>
2025-10-08 08:44:11 +02:00
Khanh Nguyen
6deb989424 boards: renesas: ek_ra8p1: enable ArduCam CU450 OV5640 shield
Update the EK-RA8P1 board to support the ArduCam CU450 OV5640 shield:

- Update pinctrl definitions in ek_ra8p1-pinctrl.dtsi
- Update board DTS in ek_ra8p1_r7ka8p1kflcac_cm85.dts
- Add board-specific overlay for the shield
- Update documentation

Signed-off-by: Khanh Nguyen <khanh.nguyen.wz@bp.renesas.com>
2025-10-08 08:44:02 +02:00
Khanh Nguyen
710b460d66 boards: shields: add ArduCam CU450 OV5640 DVP shield
Add a shield definition for the ArduCam CU450 OV5640 camera module
in DVP (parallel) mode.

- Add Kconfig entry for the shield
- Add devicetree overlay for DVP mode
- Add documentation and shield.yml

Signed-off-by: Khanh Nguyen <khanh.nguyen.wz@bp.renesas.com>
2025-10-08 08:44:02 +02:00
Khanh Nguyen
fa8ea53fdb dts: bindings: gpio: add ArduCam FFC-40 pin connector binding
Add a devicetree binding and corresponding dt-bindings header for
the ArduCam FFC-40 pin GPIO connector used by camera shields.

- Add dts binding schema for arducam,ffc-40pin-connector
- Add dt-bindings header with GPIO pin definitions

Signed-off-by: Khanh Nguyen <khanh.nguyen.wz@bp.renesas.com>
2025-10-08 08:44:02 +02:00
Khanh Nguyen
38139192ce dts: renesas: add CEU node for RA8P1 SoCs
Add a devicetree node for the Capture Engine Unit (CEU) to ra8x2.dtsi.

Signed-off-by: Khanh Nguyen <khanh.nguyen.wz@bp.renesas.com>
2025-10-08 08:44:02 +02:00
Luca Burelli
ca48a14766 boards: arduino: use shared QSPI partition configs
This commit introduces shared QSPI partition configurations for Arduino
STM32H7 boards, using the factory partitioning scheme that is compatible
with the Arduino IoT Cloud services.

Signed-off-by: Luca Burelli <l.burelli@arduino.cc>
2025-10-08 08:43:51 +02:00
Titouan Christophe
3c50822e1d samples: net: midi2: new sample
Add a new sample to demonstrate usage of the newly introduced
Network MIDI 2.0 host stack.

Signed-off-by: Titouan Christophe <titouan.christophe@mind.be>
2025-10-08 08:42:27 +02:00
Titouan Christophe
38b1a9cb2a boards: shields: olimex_shield_midi: new shield
Add a new very simple shield that provides MIDI DIN-5 IN/OUT/THROUGH,
as well as 2 leds. Other features of the shields (capacitive sensors)
are currently not reified in Zephyr.

While there is no further device on the shield itself (everything goes
through the Arduino header directly), this allows for meaningful
device-tree naming when using the shield.

Signed-off-by: Titouan Christophe <titouan.christophe@mind.be>
2025-10-08 08:42:27 +02:00
Titouan Christophe
b0fa1be5b0 net: lib: midi2: new Network MIDI 2.0 host stack
Add a new network protocol for MIDI2.0 over the network, using UDP sockets.
This allows Zephyr to host a UMP endpoint on the network, which can be
invited by UMP clients to exchange MIDI2.0 data.

Signed-off-by: Titouan Christophe <titouan.christophe@mind.be>
2025-10-08 08:42:27 +02:00
Titouan Christophe
b1d6252dfa samples: subsys: usb: midi: demonstrate usage of UMP Stream responder
Update the USB-MIDI2.0 sample to use the newly introduced
UMP Stream Responder library. This allows the host to discover the
topology and function block names (if supported by the host OS).

Signed-off-by: Titouan Christophe <titouan.christophe@mind.be>
2025-10-08 08:42:27 +02:00
Titouan Christophe
5d71669c70 usb: device_next: usbd_midi: mark UMP group as 31.25kb/s from devicetree
Since a new device-tree property has been introduced to describe if a
UMP group is limited to 31.25kb/s (like a physical MIDI DIN-5 port),
this can be used in the USB UMP group terminal block descriptors, as
specified in the USB-MIDI2.0 reference document [1], (in 5.4.2.1
Group Terminal Block Descriptor):

  Maximum Output Bandwidth Capability in 4KB/second. 0x0000 – 0xFFFF.
  Bandwidth is total for this Block, shared among all OUT Group Terminals.
      0x0000 = Unknown or Not Fixed.
      0x0001 = Rounded version of 31.25kb/s

[1] https://www.usb.org/sites/default/files/USB%20MIDI%20v2_0.pdf

Signed-off-by: Titouan Christophe <titouan.christophe@mind.be>
2025-10-08 08:42:27 +02:00
Titouan Christophe
5e83d222b6 lib: midi2: new UMP Stream responder library
Add a new top-level, transport independent library to respond to UMP Stream
Discovery messages. This allows MIDI2.0 clients to discover UMP endpoints
hosted on Zephyr over the UMP protocol.

The endpoint specification can be gathered from the device tree, so that
the same information used to generate USB descriptors in usb-midi2.0
can be delivered over UMP Stream.

Signed-off-by: Titouan Christophe <titouan.christophe@mind.be>
2025-10-08 08:42:27 +02:00
Titouan Christophe
4b04b74bcd audio: midi: improve API documentation
Improve the API documentation for Universal MIDI Packets definitions:

- Add link to the reference document, and make it referenceable in doxygen
- Use BIT_MASK macro instead of hexadecimal litterals to better convey the
  length of various fields within UMP packets
- Add more cross-references where possible
- Use @remark when applicable

Signed-off-by: Titouan Christophe <titouan.christophe@mind.be>
2025-10-08 08:42:27 +02:00
Dominik Ermel
f5e70d56be fs: ext2: Explicit int cast ret assignment in ext2_init_storage
Adds cast to int when ret is assigned error code returned by
functions that return int64_t. The cast has been added to indicate
that assignment with truncation is here intentional.

Signed-off-by: Dominik Ermel <dominik.ermel@nordicsemi.no>
2025-10-08 08:42:18 +02:00
Ben Marsh
9ada047bd7 boards: st: nucleo_c071rb: Add pull-up to user button
The NUCLEO-C071RB user manual UM3353 states that "The PC13 I/O used for
the user button must be set in INPUT, pull‑up". The board does not have
an external pull-up fitted.

Signed-off-by: Ben Marsh <ben.marsh@helvar.com>
2025-10-07 23:04:16 -04:00
Tim Pambor
cc90cfe4cd tests: logging: Improve compatibility with 64-bit platforms
Use %zu format specifier for size_t type to ensure compatibility with both
32-bit and 64-bit platforms.

Signed-off-by: Tim Pambor <tim.pambor@codewrights.de>
2025-10-07 23:03:58 -04:00
Tim Pambor
cea6bc4764 tests: drivers: uart: Improve compatibility with 64-bit platforms
Use %zu format specifier for size_t type to ensure compatibility with both
32-bit and 64-bit platforms.

Signed-off-by: Tim Pambor <tim.pambor@codewrights.de>
2025-10-07 23:03:36 -04:00
Tim Pambor
feb3d5463e tests: drivers: flash: Improve compatibility with 64-bit platforms
Change variables in test_cb_data_type from uint32_t to size_t to
match the return type of flash_get_page_count() and adjust
format specifiers accordingly. This resolves warnings when
compiling for 64-bit platforms.

Signed-off-by: Tim Pambor <tim.pambor@codewrights.de>
2025-10-07 23:03:06 -04:00
Zhaoxiang Jin
c78e45a31a drivers: counter/lptmr: Enable lptmr get_freq feature
Enable lptmr get_freq feature.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-10-07 23:02:45 -04:00
Martin Hoff
e3c82300a8 soc: silabs: siwx91x: Add firmware version check of NWP
This commit introduces a new function to verify the firmware version of
the SiWX917 network coprocessor. It checks the expected version (updated
manually after each bump of Wiseconnect SDK in hal_silabs) against the
actual version retrieved from the device.

Signed-off-by: Martin Hoff <martin.hoff@silabs.com>
2025-10-07 23:02:12 -04:00
Alberto Escolar Piedras
972d5e35a7 Revert "tests native_sim reset_hw_info: Skip by now"
This reverts commit 8d7c2e115a.
The issue should be fixed now.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-10-07 23:01:38 -04:00
Alberto Escolar Piedras
320496db7a boards native_sim: reboot: Do not close descriptors manually
Instead rely on them having been opened with O_CLOEXEC, or that
whichever component has opened it will close it with a
NATIVE/NSI_TASK(ON_EXIT) hook.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-10-07 23:01:38 -04:00
Ryan McClelland
06f9155dcf drivers: i3c: dw: fix bus free timing for pure bus
For a i3c pure bus, the bus free timing shall be set to tcas
which is 38.4ns according to table 49 of the MIPI I3C v1.2
specification.

For a i3c mixed bus, the bus free timing shall be set to the scl
low time. Based on the i2cs' lvrs, it can determine if any devices
only support fast mode and won't do fast mode plus to determine
which tLOW setting it should use for bus free.

Signed-off-by: Ryan McClelland <ryanmcclelland@meta.com>
2025-10-07 23:00:47 -04:00
Khanh Nguyen
65bf8f9461 drivers: video: ctrls: correct assertion in video_cluster_ctrl
The function asserted `!sz && !ctrls`, which is the inverse of the
intended precondition. This caused assertion failures on valid inputs.

Update the check to `sz && ctrls` so it fails only when size is zero
or the control pointer is NULL.

Signed-off-by: Khanh Nguyen <khanh.nguyen.wz@bp.renesas.com>
2025-10-07 23:00:05 -04:00
Khanh Nguyen
6f431a423b drivers: video: ov5640: support DVP bus-width and data-shift from DTS
Add support in the OV5640 driver to configure the bus-width and
data-shift properties from devicetree when operating in DVP
(parallel) mode.

This allows the number of parallel data lines and the bit shift
to be set directly via DTS, ensuring correct configuration across
different hardware designs.

Signed-off-by: Khanh Nguyen <khanh.nguyen.wz@bp.renesas.com>
2025-10-07 23:00:05 -04:00
Khanh Nguyen
804f893e89 drivers: video: ov5640: Use CCI API helpers for register access
Replace the custom I2C read/write functions in the OV5640 driver
with the common Video CCI API helpers.

- Introduce OV5640_REG8/REG16 macros for register addressing
- Convert struct ov5640_reg to struct video_reg16
- Replace ov5640_{read,write,modify}_reg() with CCI API helpers
- Replace ov5640_write_multi_regs() with video_write_cci_multiregs16()

This aligns the OV5640 driver with other video sensor drivers
that already rely on the CCI helpers.

Signed-off-by: Khanh Nguyen <khanh.nguyen.wz@bp.renesas.com>
2025-10-07 23:00:05 -04:00
Anisetti Avinash Krishna
ea1a839a7e soc: intel: common: Replace printk with LOG_ERR
Replace printk with LOG_ERR by adding a log module.

Signed-off-by: Anisetti Avinash Krishna <anisetti.avinash.krishna@intel.com>
2025-10-07 22:59:32 -04:00
Anisetti Avinash Krishna
709f453673 drivers: gpio: Enable support for latest GINF method
Enable support for latest GINF method which requires 3 paramters
for each GPIO group and enables gpio support for intel_ptl_h
platform.

Signed-off-by: Anisetti Avinash Krishna <anisetti.avinash.krishna@intel.com>
2025-10-07 22:59:32 -04:00
Anisetti Avinash Krishna
69826c5a95 lib: acpi: Enable support for ACPI_RESOURCE_TYPE_ADDRESS64
Enable support for ACPI_RESOURCE_TYPE_ADDRESS64 in acpi_device_mmio_get
to fetch 64bit address from resource of an ACPI device.

Signed-off-by: Anisetti Avinash Krishna <anisetti.avinash.krishna@intel.com>
2025-10-07 22:59:32 -04:00
Siwei Yang
4b71cf9822 lib: smf: add API to get the current leaf and executing state
Retrieve the current leaf state by calling `smf_get_current_leaf_state`
and the state which is currently-executing by calling
`smf_get_current_executing_state`.

Signed-off-by: Siwei Yang <yswysc@gmail.com>
2025-10-07 22:58:58 -04:00
Siwei Yang
af6f88b205 lib: smf: add const qualifier to ctx arg
Add const qualifier to ctx arguments
for immutability and consistency with other functions.

Signed-off-by: Siwei Yang <yswysc@gmail.com>
2025-10-07 22:58:58 -04:00
Jakub Zymelka
ec049bdb68 doc: update migration guide for Nordic comparator changes
Migration guide is updated to report the changes that has been introduced
in the nordic,nrf-comp and nordic,nrf-lpcomp bindings.
`psel` and `extrefsel` properties type has been changed to integer.

Signed-off-by: Jakub Zymelka <jakub.zymelka@nordicsemi.no>
2025-10-07 22:58:20 -04:00
Jakub Zymelka
6d7f429369 tests: comparator: nordic: Align boards overlays for changed input types
Align samples and tests boards overlays
for changed comparator input types.

Signed-off-by: Jakub Zymelka <jakub.zymelka@nordicsemi.no>
2025-10-07 22:58:20 -04:00
Jakub Zymelka
e5ecbd2112 drivers comparator: nordic: Align drivers to changed analog input types
External analog input types changed from `string` to `int`.

Signed-off-by: Jakub Zymelka <jakub.zymelka@nordicsemi.no>
2025-10-07 22:58:20 -04:00
Jakub Zymelka
d85bdb7ee9 dts: bindings: comparator: nordic: Change inputs type to int
Unify external analog inputs type to be consistent
in COMP, LPCOMP and SAADC nordic drivers.

Signed-off-by: Jakub Zymelka <jakub.zymelka@nordicsemi.no>
2025-10-07 22:58:20 -04:00
Quang Le
7ee9ee8caa soc: renesas: Retrieve SYS_CLOCK_HW_CYCLES_PER_SEC from dts
Retrieve the value of SYS_CLOCK_HW_CYCLES_PER_SEC from the osc node in
the RZ/N2L, T2M devicetree.

Signed-off-by: Quang Le <quang.le.eb@bp.renesas.com>
Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
2025-10-07 22:58:03 -04:00
Quang Le
2d8753504f dts: renesas: Add Clock Control support for RZ/N2L, T2M
Add Clock Control nodes to Renesas RZ/N2L, T2M devicetree

Signed-off-by: Quang Le <quang.le.eb@bp.renesas.com>
Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
2025-10-07 22:58:03 -04:00
Quang Le
77c1aed630 drivers: clock control: Add Clock Control support for RZ/N2L, T2M
Add Clock Control driver support for Renesas RZ/N2L, T2M

Signed-off-by: Quang Le <quang.le.eb@bp.renesas.com>
Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
2025-10-07 22:58:03 -04:00
Quang Le
519712957f manifest: Update commit id for hal_renesas
Update commit id for hal_renesas

Signed-off-by: Quang Le <quang.le.eb@bp.renesas.com>
Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
2025-10-07 22:58:03 -04:00
Camille BAUD
08e26c1570 tests: build_all: Add ssd1357 build test
Adds ssd1357 build test

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-10-07 22:57:39 -04:00
Camille BAUD
a9b9416b28 drivers: display: Introduce SSD1357
It is almost identical to SSD1351

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-10-07 22:57:39 -04:00
Alain Volmat
7c4737196e samples: display: add stm32h7s78_dk board dedicated conf
Due to the large display of the STM32H7S78 DK, it is necessary
to have larger POOL_SIZE for display buffers.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-10-07 22:57:15 -04:00
Alain Volmat
dce67524aa boards: st: enable ltdc/display in stm32h7s78_dk
Enable the display panel of the stm32h7s78_dk with framebuffer
located within the PSRAM.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-10-07 22:57:15 -04:00
Alain Volmat
0cbe3c61d8 boards: st: stm32h7s78_dk: enable MEMC & SMH for display
In case of DISPLAY is enabled, ensure that MEMC as well as
Shared-Multi-Heap is enabled in order to use for framebuffer.
Moreover, since PSRAM is 32MB large, HEAP size should be set
AUTO instead of SMALL which is the default since SRAM is rather
small.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-10-07 22:57:15 -04:00
Alain Volmat
7610d215a9 dts: arm: st: add ltdc node into stm32h7rs.dtsi
The stm32h7rs embeds a LTDC display controller. Add the node
describing it in stm32h7rs.dtsi.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-10-07 22:57:15 -04:00
Alain Volmat
3226cf5f3d soc: stm32: stm32h7rsx: add MPU region #0 disabling all accesses
Add a first region in the MPU to disable all access to the whole
memory range.  With that ensure that the MPU will block all
access to regions that aren't defined in further regions.
Ensure as well that the peripheral area is accessible.

This handles the errata 2.1.1 PLD might perform linefill to address
that would generate a MemManage Fault of the STM32H7Rxx / STM32H7Sxx
device errate ES0596 - Rev 6.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-10-07 22:57:15 -04:00
Martin Jäger
866dff0eb0 drivers: flash: stm32g0: Implement set|get_rdp_level API
Allows to set readout protection bits for this series at runtime.

Signed-off-by: Martin Jäger <martin@libre.solar>
2025-10-07 22:56:52 -04:00
Martin Jäger
faf661e907 drivers: flash: stm32g0: Implement option_bytes_write|read API
Implementation based on STM32G4 series.

This is a preparation to enable reading and writing the RDP bits.

Signed-off-by: Martin Jäger <martin@libre.solar>
2025-10-07 22:56:52 -04:00
Hui Bai
50ac559152 drivers: wifi: Add WLAN wakeup for MIMXRT1060-EVK
Added wlan wakeup pin in IW610 overlay file. This WLAN wakeup
support is for IW610 and MIMXRT1060-EVK acts as host. Add wakeup
pin configuration when doing device related initialization.

Signed-off-by: Hui Bai <hui.bai@nxp.com>
2025-10-07 22:55:21 -04:00
Anas Nashif
bf82f7ffac copyrights: fix copyright line
Add space before (c) to allow correct parsing by linters.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-10-07 22:53:45 -04:00
Pete Johanson
e5838ffc21 dts: arm: adi: Proper MAX32690 sram7 size
Correct the MAX32690 sram7 node's size to 192K, matching the hardware.

Signed-off-by: Pete Johanson <pete.johanson@analog.com>
2025-10-07 17:44:34 +03:00
Pete Johanson
31a94a88e3 dts: arm: adi: Proper MAX32690 flash1 settings
Fix the MAX32690 flash1 node's address and erase size properties to match
the datasheet. Add a test for that platform as well to verify the
functionality of the FLC1 peripheral instance.

Signed-off-by: Pete Johanson <pete.johanson@analog.com>
2025-10-07 17:44:34 +03:00
Emil Gydesen
2140b55d29 Bluetooth: BAP: Shell: 0-init some global variables
0-init some non-static global variables to avoid
issues with uninitialized values. Also modify
the printing of the broadcast sources found slightly.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-10-07 17:44:19 +03:00
Daniel Skinstad Drabitzius
5bf4af9b72 doc: develop: manifests: external: add mender-mcu
Introduce documentation for using mender-mcu as an external module in
Zephyr.

Signed-off-by: Daniel Skinstad Drabitzius <daniel.drabitzius@northern.tech>
2025-10-07 17:44:09 +03:00
Dawid Niedzwiecki
58a7119d28 mgmt: ec_host_cmd: usb: fix double free
Fix double free of a net buffer after request error.

Signed-off-by: Dawid Niedzwiecki <dawidn@google.com>
2025-10-07 17:43:59 +03:00
David Boullie
6fd7280b3d net: openthread: Expand OpenThread features
Add Kconfig support for the following OpenThread features:
- OPENTHREAD_MAC_BEACON_PAYLOAD_PARSING
- OPENTHREAD_PLATFORM_USEC_TIMER
- OPENTHREAD_MULTIPLE_INSTANCE_NUM

Modify core configuration to set the number of
short and extended source address table entries to the
maximum number of children, in line with upstream
OpenThread configuration.

Signed-off-by: David Boullie <David.Boullie@silabs.com>
2025-10-07 17:43:47 +03:00
Armando Visconti
ea072d31ff drivers/sensor/: lis2dux12/lsm6dsv16x: use helpers
Make use of rtio_read_regs_async() and rtio_flush_completion_queue()
helpers in lis2dux12 and lsm6dsv16x sensor drivers.

Signed-off-by: Armando Visconti <armando.visconti@st.com>
2025-10-07 17:43:32 +03:00
Jamie McCrae
2a1444efdb modules: mcuboot: Fix missing chosen node lookup
Fixes an issue caused by using a chosen node string as a node
rather than looking the node up first so it could be used

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-10-07 17:43:20 +03:00
Piotr Kosycarz
491498ab9e boards: nordic: nrf54lm20dk: remove support for wdt from flpr
Should not be added in first place, never working.

Signed-off-by: Piotr Kosycarz <piotr.kosycarz@nordicsemi.no>
2025-10-07 14:07:00 +02:00
Jordan Yates
655abd8bcf tests: modem: chat: test modem_chat_is_running
Add tests for `modem_chat_is_running`.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-10-07 14:06:37 +02:00
Jordan Yates
83375a8f86 modem: chat: add modem_chat_is_running
Add a helper function to query if the chat instance is currently running
a script.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-10-07 14:06:37 +02:00
Håkon Amundsen
9d5f94f90b soc: ironside: add min and max values for update
The update will fail if the address is outside  of this range.
This failure might trigger a bad state where the device is
non-trivial to recover.

Signed-off-by: Håkon Amundsen <haakon.amundsen@nordicsemi.no>
2025-10-07 14:06:24 +02:00
Jamie McCrae
93bc73a415 docs: releases: migration: 4.3: Add note on OS mgmt info change
Adds a note that the board target is now returned in the hardware
platform field

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-10-07 14:06:06 +02:00
Jamie McCrae
9002db0b46 tests: mgmt: mcumgr: os_mgmt_info: Update to use board target
Uses the newly changed board target for the hardware platform

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-10-07 14:06:06 +02:00
Jamie McCrae
b2884ffb20 mgmt: mcumgr: grp: os_mgmt: Use board target for hardware platform
Uses the full hwmv2 board target for the hardware platform output,
seemingly this was missed in the hwmv2 migration and it was using
the board name only. Adds a deprecated Kconfig to restore to the
previous behaviour

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-10-07 14:06:06 +02:00
Ravinder Singh
0520dfe8ff Bluetooth: Tester: Fixed read_multiple_var
read_multi_var was always sending 5 as count of handles.
This was causing failure in GATT/CL/GAR/BI-36-C, GATT/CL/GAR/BI-40-C
and other tests expecting IUT to send
GATT_ReadMultipleVariableLengthRequest
Fixed this was using the cp->handles_count coming by autoPTS.

Signed-off-by: Ravinder Singh <ravinder.singh2@infineon.com>
2025-10-07 12:50:21 +02:00
Andrzej Puzdrowski
eb931d425f kernel/Kconfig.init: update description of SOC_RESET_HOOK
Updated description on conditions and assumptions in which
the soc_reset_hook is executed.

Signed-off-by: Andrzej Puzdrowski <andrzej.puzdrowski@nordicsemi.no>
2025-10-07 12:50:10 +02:00
Andrzej Puzdrowski
418eed0f90 arch/arm: introduce the pre-stack/RAM init hook
Introduce hook for customize reset.S code even before stack is
initialized or RAM is accessed. Hook can be enabled using
CONFIG_SOC_EARLY_RESET_HOOK=y.
Hook implementation is by soc_early_reset_hook() function which should
be provided by custom code.

Signed-off-by: Andrzej Puzdrowski <andrzej.puzdrowski@nordicsemi.no>
2025-10-07 12:50:10 +02:00
Bjarki Arge Andreasen
3d12e18b40 tests: arch: arm: irq_vector_table: don't printk from ISRs
This rather anchient test suite calls printk from within ISRs.
printk() is not declared isr safe, and printk should be avoided from
ISRs due to their stack and cpu time requirements. The test suite
does not use the printk() output in any case, so the printk() output
is simply removed. The README.txt has been updated with the actual
output produced by todays test suite, sans the printk() output.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-10-07 12:48:38 +02:00
Vincent Tardy
66998ef445 west.yml: update hal_stm32 revision for LL lib url update
Update hal_stm32 revision to update url of link layer
libraries for stm32wba.

Signed-off-by: Vincent Tardy <vincent.tardy@st.com>
2025-10-07 12:47:56 +02:00
Raffael Rostagno
c64fc89184 tests: drivers: counter: esp32: Add RTC counter support
Add RTC counter support (LP TIMER and RTC) for ESP32 chips.

Signed-off-by: Raffael Rostagno <raffael.rostagno@espressif.com>
2025-10-07 12:47:45 +02:00
Raffael Rostagno
674fd6495d tests: drivers: counter: Configurable ticks tolerance
Make ticks tolerance configurable for chips which need a more
relaxed value for testcase which assesses count precision.

Signed-off-by: Raffael Rostagno <raffael.rostagno@espressif.com>
2025-10-07 12:47:45 +02:00
Raffael Rostagno
1d2f012fbe drivers: counter: rtc: esp32: Add LP TIMER support
Add support to LP TIMER peripheral, for ESP32-C6 and ESP32-H2
RTC counter support.

Signed-off-by: Raffael Rostagno <raffael.rostagno@espressif.com>
2025-10-07 12:47:45 +02:00
Raffael Rostagno
01d430826e drivers: counter: rtc: esp32: Fix cancel alarm condition
Disable RTC interrupts when cancelling alarm, and clear callback
data, to make sure no ISR/callback is serviced after alarm is
cancelled. Also, check programmed ticks in ISR to make sure
alarm triggered is not an outdated/cancelled event.

Signed-off-by: Raffael Rostagno <raffael.rostagno@espressif.com>
2025-10-07 12:47:45 +02:00
Raffael Rostagno
16632333a2 drivers: counter: rtc: esp32: Fix overflow case
Fix alarm setting when timer has overflown beyond 32-bit boundary.
Timer is 48-bit, so it requires high word to be programmed along
the 32-bit word managed by the driver.

Signed-off-by: Raffael Rostagno <raffael.rostagno@espressif.com>
2025-10-07 12:47:45 +02:00
Raffael Rostagno
a71f2bae30 dts: bindings: counter: esp32: Fix compatible name
Fix compatible name on device tree, to allow RTC timer based
counter driver to be enabled. Disable rtc_timer node for all
devices to keep standard.

Signed-off-by: Raffael Rostagno <raffael.rostagno@espressif.com>
2025-10-07 12:47:45 +02:00
Emil Gydesen
35909d7fdf Bluetooth: CAP: Mark err used for assert as __maybe_unused
If asserts are disabled, then `err` is unused can caused
a compiler warning.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-10-07 12:47:30 +02:00
Emil Gydesen
f6905b7374 tests: Bluetooth: Shell: Add bluetooth.shell.audio.no_assert
Add a test case that disables asserts to ensure that the
BT shell with audio can be built without compiler
warnings/errors when asserts are disabled.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-10-07 12:47:30 +02:00
Seppo Takalo
5fa605af17 drivers: modem: cellular: nRF91: Remove periodic chat script
Remove periodic chat script as the AT+CEREG=1 notifications are already
enabled.

Signed-off-by: Seppo Takalo <seppo.takalo@nordicsemi.no>
2025-10-07 12:47:19 +02:00
Fabian Blatz
637e07d653 test: rtc: add nxp,pcf85063a to build_all test suite
Ensure this driver is tested in the build_all test suite.

Signed-off-by: Fabian Blatz <fabianblatz@gmail.com>
2025-10-07 12:47:07 +02:00
Fabian Blatz
bae6e3563b drivers: rtc: Add nxp,pcf85063a driver
Adds a driver implementation for the pcf85063a I2C rtc.

Signed-off-by: Fabian Blatz <fabianblatz@gmail.com>
2025-10-07 12:47:07 +02:00
Davi Herculano
d1493b60d6 driver: i2s: fix nxp i2s fifo combine values
MCUX defined RX fifo combine names and the
references need to be adjusted in the i2s driver.

Signed-off-by: Davi Herculano <davi.herculano@adam-audio.de>
2025-10-07 11:01:01 +02:00
Pieter De Gendt
f430d38910 doc: releases: 4.3: Add CoAP client callback data migration and notes
Add a migration note entry for the CoAP client response callback signature
change and add an entry to the release notes for the new struct type.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-10-07 11:00:50 +02:00
Pieter De Gendt
6a4b5cd3d3 net: lib: coap: Add packet pointer to client response callback data
Pass a pointer to the CoAP packet in the response data. This allows
callback function to inspect for CoAP options.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-10-07 11:00:50 +02:00
Pieter De Gendt
cbef8679f4 net: lib: coap: Convert client response callback arguments to struct
Make it easier to modify the response callback data by passing it as a
struct pointer rather than a long list of arguments.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-10-07 11:00:50 +02:00
Elmo Lan
c0a421c329 drivers: i2c_dw: Avoid spamming NACK error messages
NACK message now log with LOG_ERR_RATELIMIT
instead of LOG_ERR to reduce log noise.

When scanning I2C device,
receiving a NACK is expected behavior and not necessarily an error.
Logging it at LOG_ERR causes unnecessary clutter in the logs.

Therefore, the log level is change to LOG_ERR_RATELIMIT for NACK cases.

Signed-off-by: Elmo Lan <elmo_lan@realtek.com>
2025-10-07 10:59:52 +02:00
Jordan Yates
1f3ce818fc bluetooth: controller: ll_sw: nordic: constant latency req
When `CONFIG_NRF_SYS_EVENT` is enabled, route constant latency requests
through the reference counted API.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-10-07 10:59:38 +02:00
Jordan Yates
75cb327336 samples: nordic: nrf_sys_event: test SOC_NRF_FORCE_CONSTLAT
Validate that `CONFIG_SOC_NRF_FORCE_CONSTLAT=y` compiles.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-10-07 10:59:38 +02:00
Jordan Yates
169957f25c soc: nordic: common: CONFIG_SOC_NRF_FORCE_CONSTLAT
Move the option to force constant latency mode outside of nRF54l, since
it is an option applicable to most Nordic SoCs.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-10-07 10:59:38 +02:00
Jordan Yates
adecb09978 modem: select UART_USE_RUNTIME_CONFIGURE
Override any defaults for `UART_USE_RUNTIME_CONFIGURE` when using
`CONFIG_MODEM_CELLULAR`, as the baudrate update feature depends on it.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-10-07 10:59:18 +02:00
Charles Hardin
2bfd76425a net: ip: account for the size in the inet_ntop code path
The code was writing to the dst without a verification check on
size which is not appropriate. The guard on the arguements should
be enforced and so just ensure the size is larger then the
definition of the strings from POSIX and return an error in those
cases.

Signed-off-by: Charles Hardin <ckhardin@gmail.com>
2025-10-07 10:59:08 +02:00
Charles Hardin
a8aa8af946 net: dns: fix the inet_ntop buffer size mismatch with a sizeof
From the manpage for inet_ntop

  This function converts the network address structure src in the af
  address family into a character string.  The resulting string is
  copied to the buffer pointed to by dst, which must be a non-null
  pointer.  The caller specifies the number of bytes available in
  this buffer in the argument size.

In an unintended misconfiguration the resolve max string ended up
being 20 and tracking thru some wierd code issues determined some
stack corruption which came back to the shell command. So, just
fix the size argument to be the sizeof which then leads to the next
problem that the size is being ignored by inet_ntop.

Signed-off-by: Charles Hardin <ckhardin@gmail.com>
2025-10-07 10:59:08 +02:00
Declan Snyder
1a5bef6bee tests: flash: Fix disable_spi_nor case
This case was originally made sort of naively due to the fact that the
test was prioritizing testing spi nor first, but we wanted to test SOC
flash drivers, not the spi flash driver, so we just disabled
CONFIG_SPI_NOR. But this caused issues for platform which don't have a
storage partition or platform where the storage partition was actually
on a spi nor (because then there is no spi device leading to a linking
error with no reference to device object)

So fix by introducing a config to change the test logic to prioritize
the storage partition, which is really what we wanted to do in the first
place more directly I think.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-10-07 10:58:49 +02:00
Alexander Kozhinov
66a0f82e10 tests: drivers: comparator: stm32 comparator support
add support for nucleo_g474re and nucleo_h745zi_q boards

Signed-off-by: Alexander Kozhinov <ak.alexander.kozhinov@gmail.com>
2025-10-07 10:58:31 +02:00
Alexander Kozhinov
7eb3b41e7d drivers: comparator: implement stm32 comparator driver
implement the driver for the stm32 comparator peripheral

Signed-off-by: Alexander Kozhinov <ak.alexander.kozhinov@gmail.com>
2025-10-07 10:58:31 +02:00
Alexander Kozhinov
5c9a2debac dts: arm: st: add comparator to h7 and g4
adds comparator DTS entities for stm32h7 and stm32g4 series

Signed-off-by: Alexander Kozhinov <ak.alexander.kozhinov@gmail.com>
2025-10-07 10:58:31 +02:00
Alexander Kozhinov
f5270c590b dts: bindings: comparator: add STM32 COMP device driver
Add STM32 COMP devices comparator DTS description

Signed-off-by: Alexander Kozhinov <ak.alexander.kozhinov@gmail.com>
2025-10-07 10:58:31 +02:00
Marek Matej
e36132359f samples: subsys: Fix ESP32 SoCs support
Fix ESP32 and ESP32-S3 support:

* Add Espressif overlays for default and remote target.
* Add remote targets for Espressif boards.
* Fix remote runtime by increasing the stack size in case of ESP32.
* Make the test cycle config option.
* Make the test stacks config options.

Signed-off-by: Marek Matej <marek.matej@espressif.com>
2025-10-07 10:58:20 +02:00
Jiafei Pan
9ae10ea9b2 boards: frdm_imx93: enable watchdog on the board
Enable watchdog on the board.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-10-06 20:17:50 -04:00
Jiafei Pan
ee28ac20d5 boards: imx93_evk: enable watchdog on the board
Enabled watchdog on the board.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
Signed-off-by: Joe Zhou <zhongcai.zhou@nxp.com>
2025-10-06 20:17:50 -04:00
Jiafei Pan
dc1dffbe87 dts: arm64: imx93: add watchdog device nodes
Add watchdog device nodes in i.MX93 A-Core dts.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
Signed-off-by: Joe Zhou <zhongcai.zhou@nxp.com>
2025-10-06 20:17:50 -04:00
Jiafei Pan
8e0486d291 drivers: watchdog: wdog32: add imx9352 support
On i.MX 93 platform, no need to clear interrupt flags, otherwise it
will not trigger reset.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
Signed-off-by: Joe Zhou <zhongcai.zhou@nxp.com>
2025-10-06 20:17:50 -04:00
Jiafei Pan
9f6a74506f drivers: watchdog: wdog32: add MMIO mapping support
Added MMIO mapping support in order to support on Cortex-A Core.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-10-06 20:17:50 -04:00
Jiafei Pan
708ffa3c29 modules: hal_nxp: disable quick access
Define FSL_SDK_DRIVER_QUICK_ACCESS_DISABLE to disable quickaccess
definition in hal_nxp drivers.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-10-06 20:17:50 -04:00
Jiafei Pan
11a2ec4b13 west.yml: depend on hal_nxp pr 605
Depend on hal_nxp PR 605.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-10-06 20:17:50 -04:00
Declan Snyder
9f382d6356 boards: mimxrt700_evk: Make linkserver the default runner
Linkeserver should be the default runner because that's actually what
comes on the board out of box, which is already indicated in the
documentation of the board.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-10-06 20:17:39 -04:00
Loic Domaigne
c123d983d1 include: kernel: doc: improve slab API "isr-ok" documentation
As discussed on Discord, certain k_mem_slab* APIs are ISR-OK, but not
marked as such. After APIs review, the following functions should be
ISR-OK:
- k_mem_slab_free
- k_mem_slab_num_used_get
- k_mem_slab_max_used_get
- k_mem_slab_num_free_get
- k_mem_slab_runtime_stats_get
- k_mem_slab_runtime_stats_reset_max

Added the Doxygen marker where needed.

Signed-off-by: Loic Domaigne <tech@domaigne.com>
2025-10-06 20:17:27 -04:00
Emil Gydesen
0a7d6bc168 doc: releases: Add note about CONFIG_BT_BUF_ACL_RX_COUNT
The deprecated Kconfig option has been removed.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-10-06 20:17:14 -04:00
Emil Gydesen
6c870b071a Bluetooth: Remove CONFIG_BT_BUF_ACL_RX_COUNT
Remove the deprecated CONFIG_BT_BUF_ACL_RX_COUNT config
as it has been deprecated since 4.1

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-10-06 20:17:14 -04:00
Benjamin Cabé
e7c8ecf4bb shields: arduino: Add support for Arduino Modulino Thermo
Add shield definition and documnentation for the Arduino Modulino Thermo

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-10-06 20:16:53 -04:00
Daniel Leung
9b25d8a440 tests: mem_protect/mem_map: remove intel_adsp test case
This removes the special test case for intel_adsp to skip
the mapped code execution test. The test can now run on
the ACE3.0 hardware without issue.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-10-06 20:16:31 -04:00
Daniel Leung
35b26e9368 tests: mem_protect/mem_map: fix mapped code execution test
The mapped code execution test uses the simple k_mem_phys_addr()
to do virtual to physical address translation. And this requires
the virtual address to be inside the kernel permanent mapping
(i.e. between __kernel_ram_start and __kernel_ram_end). With
demand paging, the translation is no longer static and it can be
mapped into any physical address. So a simple memory mapping
in the test would map an incorrect physical address which may
not even contain the said function. It has been working when
demand paging is not enabled is due to the custom sections is
immediately after the text section, so that the simple address
translation still works. But a custom linker script (i.e. board
config) may make that not true anymore.

So fix this by putting transplanted_function() into
snippets-text-sections.ld such that this would appear inside
.text section.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-10-06 20:16:31 -04:00
Daniel Leung
a9849a7ada soc: intel_adsp/ace: add snippets-text-sections.ld
Adds snippets-text-sections.ld to ACE linker scripts.
For now, this is for the memory mapping test.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-10-06 20:16:31 -04:00
Daniel Leung
36413cdbf7 arm: linker: add snippets-text-sections.ld to cortex_a_r, arm64
Adds snippets-text-sections.ld to arm/cortex_a_r and arm64
linker scripts.

For now, this is for the memory mapping test.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-10-06 20:16:31 -04:00
Daniel Leung
55a904882f x86: linker: add snippets-text-sections.ld
Adds snippets-text-sections.ld to x86 linker scripts.
For now, this is for the memory mapping test.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-10-06 20:16:31 -04:00
Daniel Leung
e8a66d57db linker: add a way to add snippets to text section
This adds a way to add to the text section via
zephyr_linker_sources(TEXT_SECTIONS <...>).

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-10-06 20:16:31 -04:00
Benjamin Cabé
98168eb5a2 shields: arduino: Add support for Arduino Modulino Movement
Add shield definition and documentation for the Arduino Modulino Movement

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-10-06 20:15:28 -04:00
Chris Friedt
c8e22ec596 tests: posix: signals: adjust expectations for real-time signals
1. Fix an off-by-one error in `signo_fits()` (a utility function inside
   signal.c

2. Adjust expectations for C libraries that do not provide a sigset_t
  large enough to support `SIGRTMIN` or `SIGRAMAX`.

This fixes an issue in CI that appeared when run under ARC.

```shell
west build -p auto -b qemu_arc/qemu_arc_hs -t run tests/posix/signals
```

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-10-06 20:15:10 -04:00
Sylvio Alves
6862856193 west.yml: espressif: use Zephyr utils for MIN/MAX
Replace all <sys/param.h> to <zephyr/sys/utils.h> for
MIN/MAX macros in Espressif HAL.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2025-10-06 20:12:58 -04:00
Tomas Barak
ca85e76fc2 MAINTAINERS: Add self as collaborator
- add TomasBarakNXP as collaborator in audio, i2s, nxp xtensa platforms

Signed-off-by: Tomas Barak <tomas.barak@nxp.com>
2025-10-06 15:10:39 -04:00
Jan Kablitz
be0e98388c drivers: sensor: st: lis2du12: add SENSOR_TRIG_DELTA support
Extend the LIS2DU12 accelerometer driver with SENSOR_TRIG_DELTA
support. The detection is based on the slope between successive
channel readings. Support for setting SENSOR_ATTR_SLOPE_TH and
SENSOR_ATTR_SLOPE_DUR is added as well. In line with other sensors,
SENSOR_ATTR_SLOPE_TH is configured in SI units (m/s^2) and
SENSOR_ATTR_SLOPE_DUR in samples relative to the ODR. The new trigger
can be mapped either to the same GPIO as the data-ready interrupt or
to a dedicated one.

Signed-off-by: Jan Kablitz <jan.kablitz@8tronix.de>
2025-10-06 15:10:01 -04:00
Pieter De Gendt
58b2153218 MAINTAINERS: Add area for NVMEM
Create a section for the newly maintained NVMEM area.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-10-06 15:09:30 -04:00
Pieter De Gendt
44158c43ee doc: releases: 4.3: Add NVMEM entry
Add an entry to the API and options section for the Non-Volatile Memory
subsystem.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-10-06 15:09:30 -04:00
Pieter De Gendt
c8477e37f8 doc: services: Add NVMEM subsystem
Introduce a page for the Non-Volatile Memory subsystem with a reference to
the doxygen API.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-10-06 15:09:30 -04:00
Pieter De Gendt
6c83f868ed tests: lib: devicetree: api: Add NVMEM test cases
Add test cases tot the devicetree API testsuite for NVMEM macros.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-10-06 15:09:30 -04:00
Pieter De Gendt
3577eed9c6 tests: nvmem: api: Add test suite for NVMEM API
Add basic testing to validate the API of the NVMEM subsystem.
Add testing with an EEPROM backend.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-10-06 15:09:30 -04:00
Pieter De Gendt
05a605021a nvmem: Introduce new subsystem for Non-Volatile Memory layer
This commit adds the NVMEM subsystem with a basic implementation for use
with EEPROM devices.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-10-06 15:09:30 -04:00
Pieter De Gendt
5d49dccf65 dts: bindings: nvmem: Add fixed-layout
Add a devicetree binding to represent a fixed layout in an NVMEM provider.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-10-06 15:09:30 -04:00
Andriy Gelman
f4b3d3946d devicetree: Add nvmem-consumer
Adds property nvmem-cells for referencing a node that stores some
configuration information. A typical use case is the reading of MAC
address from an EEPROM device.

Signed-off-by: Andriy Gelman <andriy.gelman@gmail.com>
Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-10-06 15:09:30 -04:00
Erwan Gouriou
f460b59d0f boards: stm32n6570_dk: Configure i3c1
Configure i3c1 nodes on stm32n6570_dk.
Note that pins conflict with i2c1 ones, so don't enable it here and
it will have to be enabled by application

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2025-10-06 15:07:38 -04:00
Erwan Gouriou
9ed3eada84 dts: arm: stm32n6: Add i3c nodes
Provide I3C nodes for stm32n6 series.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2025-10-06 15:07:38 -04:00
Peter Mitsis
482d183087 tests: Update smp test to support 12 CPUs
Updates the smp test to support nsim/nsim_hs5x/smp/12cores.
Furthermore, if someone attempts to build the smp test for more
than 12 CPUs, report an error message informing the user to
reduce the number of CPUs. This reduction can be in the form
of a custom overlay for the board in question.

Fixes #96339

Signed-off-by: Peter Mitsis <peter.mitsis@intel.com>
2025-10-06 15:06:37 -04:00
Filip Kokosinski
daab73db73 MAINTAINERS: add Instrumentation Subsystem
This commit adds an entry in MAINTAINERS.yml for the Instrumentation
Subsystem added in #91595.

Signed-off-by: Filip Kokosinski <fkokosinski@antmicro.com>
2025-10-06 15:06:25 -04:00
Filip Kokosinski
f5a349f45c scripts: move zaru.py to a separate directory
This commit moves the `zaru.py` script to `scripts/instrumentation`, and
adjusts references to the script in other places.

Signed-off-by: Filip Kokosinski <fkokosinski@antmicro.com>
2025-10-06 15:06:25 -04:00
Daniel Schultz
8f60b7446c boards: aesc: ElemRV-N: Add GPIO Controller
ElemRV-N has a gpio controller. Enable this node in the board-level
device-tree and add this interface to all aux. files.

Also sort device-tree nodes in the DTS file alphabetically.

Signed-off-by: Daniel Schultz <dnltz@aesc-silicon.de>
2025-10-06 20:03:28 +03:00
Daniel Schultz
15aa152669 dts: riscv: aesc: elemrv-n: Add GPIO Controller
ElemRV-N has a GPIO controller with a total of 12 pins.

Signed-off-by: Daniel Schultz <dnltz@aesc-silicon.de>
2025-10-06 20:03:28 +03:00
Daniel Schultz
15d2990b24 drivers: gpio: Add driver for Aesc Silicon
Add basic support for the Aesc Silicon GPIO controller.

This IP core has internal tri-states and therefore a read,
write and direction registers. Additionally, it has advanced
monitoring capabilities for interrupt generation; low or
high leve and rising or falling edge.

Interrupt support will be added later when ElemRV supports
interrupt in Zephyr.

Signed-off-by: Daniel Schultz <dnltz@aesc-silicon.de>
2025-10-06 20:03:28 +03:00
Mike J. Chen
8cd010b701 drivers: mbox: imx_mu: return early in ISR when done
Change the ISR code to return once all pended interrupts
are handled instead of continuing to iterate over
all channels. Common occurence is just for one interrupt
bit to be set so no need to check all bits in all channels
if only one bit is pending.

Signed-off-by: Mike J. Chen <mjchen@google.com>
2025-10-06 20:03:16 +03:00
Mike J. Chen
13e0588cd2 drivers: mbox: imx_mu: change order of interrupt handling
Handle notification interrupt before data interrupt of
a channel. Notification interrupts are more commonly
used (e.g. for ipc) and clearing the interrupt ASAP
helps reduce the possiblility that the sender finds
the interrupt already pending if it tries to send multiple
ipc messages in quick succession.

Signed-off-by: Mike J. Chen <mjchen@google.com>
2025-10-06 20:03:16 +03:00
Mike J. Chen
3c80b15aef drivers: mbox: imx_mu: handle all interrupts for a channel
Handle all interrupts for a channel before going to next
channel. Previous code did an if/else check, so if both
a data rx interrupt and a notification interrupt were pending
for a channel, only one would be handled in the ISR. The
ISR would have to fire again (probably would be still pending)
for the other interrupt to be processed. This could even
lead to starvation/delay if another data rx interrupt got
pended again.

Signed-off-by: Mike J. Chen <mjchen@google.com>
2025-10-06 20:03:16 +03:00
Mike J. Chen
593e2b5fed drivers: mbox: imx_mu: Remove extra interrupt handler layer
Change to pass the device node to IRQ_CONNECT and remove
the intermediate interrupt handler that has to call
DEVICE_DT_INST_GET() to get the device pointer.

Signed-off-by: Mike J. Chen <mjchen@google.com>
2025-10-06 20:03:16 +03:00
Mike J. Chen
04778ff6cc drivers: mbox: imx_mu: ignore TriggerInterrupt failures
The ipc backends, like icmsg.c, don't expect errors when
using mailbox send for notifications. In some places,
icmsg.c ignores the return value of the mailbox send,
in some places it propagates the error up, and in some
places it asserts.

icmsg only uses the mailbox send with NULL msg as a means
to interrupt the other processor, and all data is passed
via shared memory. So it is safe to ignore the case when
the interrupt is already pending, since the other
processor should handle the pending message when it gets
around the handling the interrupt. As long as the order
of clearing the interrupt is before the handling of the
data, there should be no case where not pending a new
interrupt when one is already pending would result in missing
any new message.

Signed-off-by: Mike J. Chen <mjchen@google.com>
2025-10-06 20:03:16 +03:00
Frederik Wenigwieser
b365311984 boards: espressif: esp32s3_mini_n8: fix psram size
There is no psram on this board.

see also:
Table 1-1. ESP32-S3-MINI-1 and ESP32-S3-MINI-1U Series Comparison
https://www.espressif.com/sites/default/files/documentation/esp32-s3-mini-1_mini-1u_datasheet_en.pdf

Signed-off-by: Frederik Wenigwieser <zephyr@frederik.at>
2025-10-06 20:03:06 +03:00
Siratul Islam
f7969995e1 boards: add WeAct Studio ESP32-S3-B board support
Add support for WeAct Studio ESP32-S3-B development board featuring:
- ESP32-S3R8 chip with 8MB integrated PSRAM
- 16MB external SPI flash
- RGB WS2812 LED on GPIO48
- User button on GPIO45
- Dual USB-C connectors
- Wi-Fi and Bluetooth LE support

Signed-off-by: Siratul Islam <sirat4757@gmail.com>
2025-10-06 20:02:46 +03:00
Krzysztof Chruściński
5a588f1b99 tests: boards: nrf: dmm: Skip stress test for empty memory region
Skip stress test if null memory region. That's the case if DMM is
disabled.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-10-06 20:02:37 +03:00
Krzysztof Chruściński
92d5b46588 soc: nordic: common: dmm: Fix allocation algorithm
There were some corner cases and stress test could fail. Reworking
tail bits handling to make the stress test pass.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-10-06 20:02:37 +03:00
Adam Kondraciuk
60af28e3f5 drivers: timer: nrf_grtc: Move GRTC initialization to early init
GRTC is used by the logger, so it must be initialized
as early as possible. On the other hand, clock requests
are allowed once the clock control API has been initialized.
This PR introduces a two-stage GRTC initialization to meet
these requirements.

Signed-off-by: Adam Kondraciuk <adam.kondraciuk@nordicsemi.no>
2025-10-06 20:02:28 +03:00
Jérôme Pouiller
7faf6920cd manifest: Update hal_silabs to include wiseconnect 3.5.2
hal_silabs now includes the last version (3.5.2) of WiseConnect, the
downstream SDK for Silicon Labs SiWx91x series.

Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
2025-10-06 20:02:16 +03:00
Alberto Escolar Piedras
9de8947bf9 native_simulator: Get latest from upstream
Align with native_simulator's upstream main
4641dad899979528e4083aa762651388a2a7ec7b

Which includes:
4641dad common: nsi_internal.h: Use NSI_INLINE macros
7a1156c nsi_tasks: move header to include folder
6b7d76a nct: fix restarting sem_wait after signal
166516d nce: fix restarting sem_wait after signal

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-10-06 20:02:02 +03:00
Johann Fischer
f289613c4c net_buf: do not assert on buffer reset when flags are set
There is only one flag, NET_BUF_EXTERNAL_DATA, used when net_buf was
allocated with external data. The flag is checked in net_buf_clone() and
net_buf_destroy(). net_buf with external buffer can be used for
receiving and transmitting. net_buf_reset() is convenient way
to reset net_buf with external data before it is re-enqueued again.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-10-06 20:01:51 +03:00
Jordan Yates
6685acc5ef tests: modem: modem_chat: test dedicated workqueue
Validate compilation with `CONFIG_MODEM_DEDICATED_WORKQUEUE=y`.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-10-06 20:01:41 +03:00
Jordan Yates
761961fa28 modem: optional dedicated workqueue
Add the option to use a dedicated workqueue for the modem backend
instead of the system workqueue.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-10-06 20:01:41 +03:00
Emil Gydesen
b3ef646160 doc: releases: Add note for bt_le_set_auto_conn
Add note for removed function bt_le_set_auto_conn.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-10-06 20:01:04 +03:00
Emil Gydesen
360880b7c7 Bluetooth: Host: Remove bt_le_set_auto_conn
Remove the deprecated function bt_le_set_auto_conn
as it has been deprecated since 4.1.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-10-06 20:01:04 +03:00
Raffael Rostagno
47a7038a2f samples: esp32: deep_sleep: Internal pull support
Some SoCs support EXT1 wake-up pins (RTC IOs) but do not provide
IOMUX features like internal pull-up/down resistors. Support for
these features is indicated by SOC_RTCIO_INPUT_OUTPUT_SUPPORTED.
This change updates the test configuration to account for this
and fixes EXT1 pin mapping for ESP32-H2.

Signed-off-by: Raffael Rostagno <raffael.rostagno@espressif.com>
2025-10-06 20:00:52 +03:00
Raffael Rostagno
73e882f656 soc: esp32h2: Fix LP SRAM size
Fix LP SRAM size on memory map. Correct value is obtained from
device tree.

Signed-off-by: Raffael Rostagno <raffael.rostagno@espressif.com>
2025-10-06 20:00:52 +03:00
Raffael Rostagno
bbc5a83abc soc: esp32h2: Power management support
Power management support for ESP32-H2.

Signed-off-by: Raffael Rostagno <raffael.rostagno@espressif.com>
2025-10-06 20:00:52 +03:00
Raffael Rostagno
1f91cfea21 dts: pm: esp32h2: Add power states
Add power states for PM.

Signed-off-by: Raffael Rostagno <raffael.rostagno@espressif.com>
2025-10-06 20:00:52 +03:00
Raffael Rostagno
da21bee6a0 west.yml: hal_espressif: Update for ESP32-H2 pm support
Update for ESP32-H2 pm support.

Signed-off-by: Raffael Rostagno <raffael.rostagno@espressif.com>
2025-10-06 20:00:52 +03:00
Artur Hadasz
7c1721de03 tests: boot: Fix bootloader.mcuboot boot loop for nrf platforms
The swapped_app image, added via ExternalZephyrProject_Add,
wasn't receiving the swap method configuration from sysbuild.
If trying to build the test with a different configuration that
SWAP_USING_OFFSET (for example SWAP_USING_MOVE)
this resulted in a boot loop due to configuration mismatch
between swapped_image and mcuboot.

This fix ensures proper configuration propagation and prevents
similar mismatches in future scenarios.

Signed-off-by: Artur Hadasz <artur.hadasz@nordicsemi.no>
2025-10-06 20:00:40 +03:00
Daniel DeGrasse
79bfd9525e drivers: sdhc: mcux_sdif: report 4 bit bus support
SDIF peripheral supports 4 bit bus width, report this correctly

Signed-off-by: Daniel DeGrasse <ddegrasse@tenstorrent.com>
2025-10-06 20:00:29 +03:00
Alberto Escolar Piedras
1264a923f3 net: mqtt_sn: udp: Adapt to new zsock_recvfrom() api.
zsock_recvfrom() takes as last argument a socklen_t pointer
( c546c1cad1 )
whose definition has changed.
So let's ensure we pass the right type of pointer to it.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-10-06 20:00:20 +03:00
Alberto Escolar Piedras
37ff1b254f tracing: ctf: Fix arguments socket tracing functions
Zephyr's socklen_t was changed in
c546c1cad1
to be uint32_t instea of size_t.
Let's fix accordingly the prototypes which expect it.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-10-06 20:00:20 +03:00
Alberto Escolar Piedras
65e099bb98 tests: net: socket: udp: Fix type of pointer
zsock_getsockopt() takes as last argument a socklen_t pointer
which type was changed in
c546c1cad1
as is not anymore equivalent to size_t.
So let's ensure we pass the right type of pointer to it.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-10-06 20:00:20 +03:00
Alberto Escolar Piedras
61e12a4c75 drivers: wifi: eswifi: Fix callback prototype
net_tcp_accept_cb_t takes a socklen_t as 3rd argument,
which type was changed in
c546c1cad1
and is not anymore equivalent to size_t.
So let's correct it.

As a freebie, let's define that function as static as it is.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-10-06 20:00:20 +03:00
Alberto Escolar Piedras
d4094d431c net: dns: dispatcher: Fix type of pointer
zsock_recvfrom() takes as last argument a socklen_t pointer
which type was changed in
c546c1cad1
as is not anymore equivalent to size_t.
So let's ensure we pass the right type of pointer to it.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-10-06 20:00:20 +03:00
Jukka Rissanen
16f4d6c23e tests: net: ipv6: Fix printf modifier
Printing long int requires %ld when priting error.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-10-06 09:38:01 +02:00
Jukka Rissanen
ffb1e63736 tests: net: socketpair: Fix zassert_not_equal call
There was extra parameter when calling zassert_not_equal() which caused
compilation warning.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-10-06 09:38:01 +02:00
Jukka Rissanen
96dff2f864 tests: net: dhcpv6: Fix zassert_ok check
There was extra parameter when calling zassert_ok() which caused
compilation warning.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-10-06 09:38:01 +02:00
Jukka Rissanen
e0c74b25a6 doc: migration-guide: Mention socklen_t changes
Add information that the socklen_t was changed from size_t, which
can be either 32 or 64 bit long depending on system configuration,
to always be 32 bit long. This is now aligned to way Linux is defining
socklen_t.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-10-06 09:38:01 +02:00
Jukka Rissanen
c546c1cad1 net: socket: Change socklen_t to be 4 bytes long
There is an issue when zephyr is compiled with native_sim_64 where
size_t is 8 bytes. The socklen_t in specified as 4 bytes in Linux
even for 64 bit builds so we have a conflict between Linux and Zephyr.
To make things work properly, define socklen_t as uint32_t in order to
align with Linux. Four bytes is enough for socket address length anyway.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-10-06 09:38:01 +02:00
Jonathan Nilsen
b28b570959 soc: nordic: uicr: fix SPIM CSN CTRLSEL values
Fix an incorrect interpretation of the chip select signal
for the SPIM instances. If cs-gpios is used then the chip
select pin is used as a GPIO, and should have CTRLSEL=0.
Only when NRF_FUN_SPIM_CSN is used should CTRLSEL
be configured to enable hardware control of the pin.

Signed-off-by: Jonathan Nilsen <jonathan.nilsen@nordicsemi.no>
2025-10-06 09:37:41 +02:00
Jordan Yates
f047a412e0 modem: cmux: auto calculate work buffer sizes
Automatically size the CMUX work buffers based on
`CONFIG_MODEM_CMUX_MTU`. This eliminates a Kconfig variable that would
otherwise need to manually be kept in sync. The option to extend the
size of these buffers is still provided through
`CONFIG_MODEM_CMUX_WORK_BUFFER_SIZE_EXTRA`.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-10-06 09:37:26 +02:00
Jordan Yates
4b39be61f1 cellular: extend registration status definitions
Extend the registration status definitions and explicitly tie them to
the values defined in 3GPP TS 27.007. Definitions were copied from
version v18.6.0.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-10-06 09:37:00 +02:00
Jordan Yates
e15a65ca23 cellular: update access technologies
Update the defined access technologies to align with the 3GPP standard
TS 27.007. Definitions were copied from version v18.6.0.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-10-06 09:37:00 +02:00
Jilay Pandya
bc12672ee5 tests: stepper: deprecate drv84xx_api test suite
refactor move_to_negative_direction, run_positive as well as
run_negative direction from drv84xx_api to stepper test-suite

refactor test_microstep_resolution to drv84xx_emul

Signed-off-by: Jilay Pandya <jilay.pandya@outlook.com>
2025-10-06 09:36:35 +02:00
Jilay Pandya
215df9f320 tests: stepper_api: check is_moving in stepper_api tests
add is_moving check to already existing stepper_api move_by
and move_to tests.
delete corresponding redundant test cases from drv84xx

bugfixes in step_dir_stepper_common.c
- start_stepping shall return 0 instead of return ret since
timing_source_start can return 1 depending on which timing
source in selected
- stop timing source before triggering steps_completed event

Signed-off-by: Jilay Pandya <jilay.pandya@outlook.com>
2025-10-06 09:36:35 +02:00
Jilay Pandya
5117b7766f tests: drv84xx: drop duplicate tests
test_actual_position_set, test_test_move_by_zero_steps_no_movement
from drv84xx_api test-suite are already accounted for in stepper_api
test suite through test_actual_position & test_move_by_zero_steps
respectively.

test_move_to_identical_current_and_target_position scenario from
drv84xx_api is now covered in test_move_zero_steps in stepper_api

test_move_to_positive_direction_movement from drv84xx_api test-suite
is now test_move_to_positive_step_count in stepper test-suite

Signed-off-by: Jilay Pandya <jilay.pandya@outlook.com>
2025-10-06 09:36:35 +02:00
Jilay Pandya
ee909efaf8 tests: stepper_api: drop test_run_zero_step_interval_correct_position
Setting 0 as microstep interval is invalid. If microstep_interval is
not set then the motion related functions should return -EINVAL.

drop test_run_zero_step_interval_correct_position

Signed-off-by: Jilay Pandya <jilay.pandya@outlook.com>
2025-10-06 09:36:35 +02:00
Shawn Huang
7b3ac52551 doc: releases: 4.3: add formatting options for log backend
LOG_BACKEND_SHOW_TIMESTAMP and LOG_BACKEND_SHOW_LEVEL

Signed-off-by: Shawn Huang <shawn.huang724@realtek.com>
2025-10-06 09:36:23 +02:00
Shawn Huang
f7412dc0df logging: allow simplified logging of backend
This allows no timestamps and level prefixes in backend log output.

Signed-off-by: Shawn Huang <shawn.huang724@realtek.com>
2025-10-06 09:36:23 +02:00
WenBin Zhang
345121adbf systemview: Systemview section move to .dtcm_bss
Move to dtcm.bss to reduce flash usage.
When increasing SEGGER_SYSVIEW_RTT_BUFFER_SIZE,
it will waste a large amount of flash space.

Signed-off-by: WenBin Zhang <freey7955@gmail.com>
2025-10-06 09:36:05 +02:00
Stefan Schmidt
69548c6d94 documentation: unit tests: extend description
Add a more detailed description on how to unit test using ztest and twister


Signed-off-by: Stefan Schmidt <kontakt@stefanschmidt-embedded.de>
2025-10-05 20:02:22 -04:00
Pieter De Gendt
6693923734 net: wifi: mgmt: Remove extraneous newlines from logs
Some log statements appended unnecessary newlines, remove those.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-10-05 20:02:08 -04:00
Pieter De Gendt
ce45f4ca53 net: lib: wifi: mgmt: Fix memory leaks
When connecting to WiFi from stored credentials, the key_passwd is never
freed.
Additionally if the connect fails, the allocated data was never freed.

Convert heap allocated memory to stack allocated buffers.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-10-05 20:02:08 -04:00
Pieter De Gendt
7eba25f472 include: zephyr: toolchain: Introduce macros to ignore -Wcast-qual
Allow enabling/disabling the -Wcast-qual warning, for example to cast away
constness.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-10-05 20:02:08 -04:00
Lyle Zhu
730efd9a59 MAINTAINERS: Add one collaborator for Bluetooth Classic
Add chengkai15 as collaborator for Bluetooth Classic.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-10-05 10:06:11 -04:00
Anisetti Avinash Krishna
caead9f4a9 tests: drivers: Add PTL-h overlays to support two applications
Added support for disk_access and I2C with bme280 application
for ptl-h platform.
-samples/sensor/bme280
-tests/drivers/disk

Signed-off-by: Anisetti Avinash Krishna <anisetti.avinash.krishna@intel.com>
2025-10-05 10:06:05 -04:00
Anisetti Avinash Krishna
e200719c2b dts: x86: intel: panther_lake: Update RTC to support MFD method
Updated RTC to support MFD method on panther lake platform
and board config to include alarm and update tests.
-boards/intel/ptl/
-dts/x86/intel/
-tests/drivers/rtc/rtc_api/

Signed-off-by: Anisetti Avinash Krishna <anisetti.avinash.krishna@intel.com>
2025-10-05 10:06:05 -04:00
Gustavo Romero
5d02fac803 samples: instrumentation: Add a sample for instrumentation subsys
Adds a sample to show the tracing and profiling features when the
instrumentation subsystem is enabled (CONFIG_INSTRUMENTATION=y).

The sample consists in two threads in ping-pong mode, taking turns to
execute loops that spend some CPU cycles. This allows a couple of
context switches and so to demonstrate tracing of thread scheduling
events.

The sample also has an example on how to capture and show traces and
profile info via the CLI tool zaru and also how to export the traces
so they can be loaded in the Perfetto Trace Viewer tool.

Signed-off-by: Gustavo Romero <gustavo.romero@linaro.org>
Signed-off-by: Kevin Townsend <kevin.townsend@linaro.org>
Signed-off-by: Maciej Sobkowski <msobkowski@antmicro.com>
2025-10-05 06:18:25 -04:00
Gustavo Romero
9f402bd177 scripts: zaru: Add instrumentation CLI tool
This commit adds 'zaru', a CLI tool for the instrumentation subsystem.

Signed-off-by: Gustavo Romero <gustavo.romero@linaro.org>
Signed-off-by: Kevin Townsend <kevin.townsend@linaro.org>
Signed-off-by: Erik Schilling <erik.schilling@linaro.org>
Signed-off-by: Maciej Sobkowski <msobkowski@antmicro.com>
2025-10-05 06:18:25 -04:00
Gustavo Romero
d569a17286 cmake: emu: Allow QEMU to serve serial on a TCP/IP port
This commit enables users to pass -DQEMU_SOCKET=y for 'west' when
selecting to run the build on a QEMU VM. This allows the target's serial
port to be served to the host via a TCP/IP port for convenience, easing
communication with the target from the external world.

Signed-off-by: Erik Schilling <erik.schilling@linaro.org>
Signed-off-by: Gustavo Romero <gustavo.romero@linaro.org>
2025-10-05 06:18:25 -04:00
Gustavo Romero
139407f818 instrumentation: Add instrumentation subsystem
This commit adds the instrumentation subsystem.

Signed-off-by: Gustavo Romero <gustavo.romero@linaro.org>
Signed-off-by: Kevin Townsend <kevin.townsend@linaro.org>
Signed-off-by: Maciej Sobkowski <msobkowski@antmicro.com>
2025-10-05 06:18:25 -04:00
Kevin Townsend
217bb19651 toolchain: gcc: Add __no_instrumentation__ definition
Adds a new '__no_instrumentation__' preprocessor definition for GCC,
mapping it to '__attribute__((__no_instrument_function__))'.

This new macro is used to disable code instrumentation (enabled when
'-finstrument-functions' flag is passed to the compiler) for specific
functions when placed before a function definition.

Signed-off-by: Kevin Townsend <kevin.townsend@linaro.org>
Signed-off-by: Gustavo Romero <gustavo.romero@linaro.org>
2025-10-05 06:18:25 -04:00
Kevin Townsend
03fcfcd0f2 cmake: compiler: Add func_instrumentation flag
Adds a new compiler flag to enable function instrumentation injection
at compile time for compilers that support it.

Adds support for this flag to GCC when `CONFIG_INSTRUMENTATION` is
enabled, setting the `-finstrument-functions` flag during compilation.

Signed-off-by: Kevin Townsend <kevin.townsend@linaro.org>
Signed-off-by: Gustavo Romero <gustavo.romero@linaro.org>
Signed-off-by: Maciej Sobkowski <msobkowski@antmicro.com>
2025-10-05 06:18:25 -04:00
Gustavo Romero
9005f8690f arch: arm: aarch32: Refresh CORTEX_M_DWT in menuconfig
Currently, CORTEX_M_DWT option does not refresh its value when
TIMING_FUNCTIONS, on which it depends, is selected via menuconfig.
This occurs because during the early west build steps the
aarch32-specific Kconfig file is parsed with TIMING_FUNCTIONS=n,
resulting in CORTEX_M_DWT being set to 'n' (not set) in .config.

Later, when the user runs west with -t menuconfig and sets
TIMING_FUNCTIONS=y using the menus or any other option that selects
TIMING_FUNCTIONS=y indirectly, CORTEX_M_DWT is already set to 'n' and
remains set as such. That is inconvenient, and, moreoever, since
CORTEX_M_DWT gets set if TIMING_FUNCTIONS is set in prj.conf, the
current behavior is not consistent, i.e. via the menuconfig setting
TIMING_FUNCTIONS=y doesn't imply selecting CORTEX_M_DWT automatically.

This commit addresses this issue by selecting CORTEX_M_DWT=y if
TIMING_FUNCTIONS becomes set to 'y', otherwise allowing it to be set via
the prompt. This is possible by making the CORTEX_M_DWT prompt
conditional. Hence, in menuconfig, if TIMING_FUNCTIONS gets set
CORTEX_M_DWT is set automatically. If TIMING_FUNCTIONS is not set, a
prompt is presented to allow selecting CORTEX_M_DWT manually.

Signed-off-by: Gustavo Romero <gustavo.romero@linaro.org>
2025-10-05 06:18:25 -04:00
Jordan Yates
d185f8edd0 testsuite: optional limiting of coverage dumps
Add an option that excludes generation of a given path of `.gcda` files
when running coverage testing. This can be useful when running testing
coverage on downstream repos, which would otherwise result in large
`.gcda` files for paths we don't care about filling up the disk.

One example of using this is to exclude coverage outputs from
mbedtls files with the following:
`CONFIG_COVERAGE_DUMP_PATH_EXCLUDE="*modules/crypto/mbedtls*"`

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-10-05 06:18:05 -04:00
Holt Sun
1beee4fe66 tests: ram_context_for_isr: exclude frdm_k32l2b3/k32l2b31a.
The assigned fakedriver interrupt number is 31 which
is the PORTC one in frdm_k32l2b3/k32l2b31a, not free.

Signed-off-by: Holt Sun <holt.sun@nxp.com>
2025-10-05 06:17:58 -04:00
Anas Nashif
f53ab27157 scripts: set_assignee: add tests as a meta area
Add tests to be a meta area, similar to samples and documentation.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-10-05 06:17:45 -04:00
Rubin Gerritsen
e9abaf435b scripts: compliance: Add basic cmake style checks
It is very common to see a comment stating that the
"No Space Before Opening Brackets" style guide is not followed.
To avoid putting this burdon on reviewers, let the compliance
check catch this instead.

Checking for tab indentation was also very simple, so also added
this.

Running this check on all files finds many violations:
 - Space before opening brackets: 141 violations
 - Tab indentation: 420 violations

Fixing these will not be done as part of this PR. Adding the check
will prevent us from adding new violations.

Signed-off-by: Rubin Gerritsen <rubin.gerritsen@nordicsemi.no>
2025-10-05 06:17:36 -04:00
Fabio Baltieri
28ac3b5a88 ci: set two more ccache-cache-key false flags
These two were introduced after the previous commit, disable the cache
for them as well, reduce some noise from the github caches page.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2025-10-05 06:17:16 -04:00
Daniel Leung
4ef1163e39 samples: tracing: fix missing k_event funcs for UART test
With the UART transport test (sample.tracing.transport.uart),
it would fail on qemu_x86_64 complaining about missing
k_event tracing functions. So add them to fix the compilation
error.

Fixes #96818

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-10-03 21:19:57 -04:00
Stefan Gloor
ea499caa25 sys: cbprintf: logging: fix equivalent branches in argify macro
The ((0) ? (arg) : (arg)) compiler trick leads to a codechecker
violation:

"conditional operator with identical true and false expressions"

Replace it by ((0) ? (0) : (arg)) to work around this issue.

Signed-off-by: Stefan Gloor <stefan.gloor@siemens.com>
2025-10-03 21:19:47 -04:00
Ali Hozhabri
4ba658dcc2 west.yml: Update west to point to the recent changes for hal_stm32
Update west.yml to point to the recent changes for hal_stm32.

Signed-off-by: Ali Hozhabri <ali.hozhabri@st.com>
2025-10-03 21:15:08 -04:00
Ali Hozhabri
20a1ea7835 boards: st: nucleo_wb09ke: Optimize power consumption
Optimize power consumption for the Nucleo-WB09KE board by
implementing correct pull-up/pull-down configurations when the device
enters lower power states.

Disable the SMPS with floating output in suspend-to-ram (deepstop)
power state.

Signed-off-by: Ali Hozhabri <ali.hozhabri@st.com>
2025-10-03 21:15:08 -04:00
Ali Hozhabri
51fc4405ac drivers: bluetooth: hci: Add PM support to the STM32WB0x HCI driver
Add PM support to the STM32WB0x Bluetooth HCI driver.

Implement PM event register to wake up the device for its BLE events.

Signed-off-by: Ali Hozhabri <ali.hozhabri@st.com>
2025-10-03 21:15:08 -04:00
Ali Hozhabri
e4a8b272ec drivers: serial: Enable UART wake-up line in STM32
Enable UART wake-up line in STM32 driver.

Signed-off-by: Ali Hozhabri <ali.hozhabri@st.com>
2025-10-03 21:15:08 -04:00
Ali Hozhabri
85318a9e19 soc: st: stm32: Provide PM support for STM32WB0x
Provide PM support, specifically suspend-to-ram, for STM32WB0x.

Enable STM32_RADIO_TIMER Kconfig parameter when PM is set.

Signed-off-by: Ali Hozhabri <ali.hozhabri@st.com>
2025-10-03 21:15:08 -04:00
Ali Hozhabri
bdb41c0ebd drivers: timer: Enable STM32WB0_RADIO_TIMER Kconfig parameter
Use radio timer as the system timer when Bluetooth is used.

Modify CMakeLists.txt to compile radio timer driver when
STM32WB0_RADIO_TIMER is enabled.

Remove the common parts from hci_stm32wb0.c that are present
in the radio timer driver.

Set and retrieve the appropriate value for SYS_CLOCK_TICKS_PER_SEC and
SYS_CLOCK_HW_CYCLES_PER_SEC respectively.

Define radio_timer node and its properties.

Enable radio_timer node in nucleo_wb0x boards.

Signed-off-by: Ali Hozhabri <ali.hozhabri@st.com>
2025-10-03 21:15:08 -04:00
Ali Hozhabri
84f7098f8f drivers: timer: Provide radio timer driver for STM32WB0x SoCs
Provide radio timer driver for STM32WB0x SoCs.

Signed-off-by: Ali Hozhabri <ali.hozhabri@st.com>
2025-10-03 21:15:08 -04:00
Ali Hozhabri
f9655654ab drivers: Fix the improper use of CONFIG_SYS_CLOCK_HW_CYCLES_PER_SEC
Fix the improper use of CONFIG_SYS_CLOCK_HW_CYCLES_PER_SEC for STM32WB0
drivers due to the misunderstanding of its definition.

Signed-off-by: Ali Hozhabri <ali.hozhabri@st.com>
2025-10-03 21:15:08 -04:00
Star Sphere
8f34d0fdc0 boards: seeed: xiao_nrf54l15: enable ceramic antenna
Enables the on-board ceramic antenna and vbat_pwr by default

Signed-off-by: Star Sphere <starsphere@foxmail.com>
2025-10-03 21:14:46 -04:00
Firas Sammoura
2d1cfe8911 include: util: Applied clang-formatting
This commit applies clang-format to file include/zephyr/sys/util.h
to align them with the latest Zephyr coding style guidelines.

Signed-off-by: Firas Sammoura <fsammoura@google.com>
2025-10-03 21:14:29 -04:00
Fabio Baltieri
d906376640 sys: util: add Z_INTERNAL_MAX and Z_INTERNAL_MIN
Add two internal Z_INTERNAL_MAX and Z_INTERNAL_MIN macros and use those
for implementing the actual MIN and MAX. This allows a downstream
application to undefine and redefine MIN and MAX, for example to define
them to min and max, which is useful if it relies on MIN and MAX to be
the single call version.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2025-10-03 21:14:11 -04:00
Fabio Baltieri
7e0d8f9119 sys: util: add min3 and max3 single evaluation macros
Add three argument variants of the single evaluation min and max, seems
like there's few of these in the code we may as well have them.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2025-10-03 21:14:11 -04:00
Fabio Baltieri
c576b090b0 sys: util: add support for nested min/max
Add support for nested min/max by using unique automatic variables. This
is heavily inspired by the Linux implementation, just reimplemented from
scratch using the Zephyr internal APIs.

Link: https://elixir.bootlin.com/linux/v6.16.8/source/include/linux/minmax.h#L314-L315
Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2025-10-03 21:14:11 -04:00
Fabio Baltieri
37717b229f sys: util: rename Z_MIN Z_MAX Z_CLAMP to min max and clamp
Rename these three macros to an unprefixed lower-case variant. This is
normally not done for Zephyr macros (see container_of) but in this case
it seems like a good idea to adopt the lowercase names to:

1. have the same convention as the equivalent Linux macros, helping devs
   working cross project recognizing (mis)use patterns.
2. make it somewhat intuitive that the lowercase ones are meant to be
   used in functions while the uppercase ones are to be used for static
   evaluation.

Add few c++ guards to avoid colliding with std::min and std::max.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2025-10-03 21:14:11 -04:00
Fabio Baltieri
056f3b07ce west.yml: update few modules to pickup min/max define guards
Update the few modules to pick up some redefinition fixes.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2025-10-03 21:14:11 -04:00
Fabio Baltieri
25578a0413 sys: util: move Z_MIN, Z_MAX, Z_CLAMP into util.h
These three are single evaluation versiono of MIN, MAX and CLAMP, they
are defined in toolchain headers as they use typeof [1] and statement
expressions [2], which are compiler extensions, but given that these are
used by other macros in util.h as well, it seems to be fair to assume
that these are supported by all compilers used with Zephyr today.

[1] https://gcc.gnu.org/onlinedocs/gcc/Statement-Exprs.html
[2] https://gcc.gnu.org/onlinedocs/gcc/Typeof.html

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2025-10-03 21:14:11 -04:00
David Boullie
a0b6ec66ff modules: hal_silabs: Add shim for sl_memory_manager_pool APIs
Add shim layer for sl_memory_manager_pool APIs that utilizes
kernel memory slabs.

Signed-off-by: David Boullie <David.Boullie@silabs.com>
2025-10-03 21:14:00 -04:00
Loic Domaigne
0dddf35b40 drivers: mfd: axp192 fix EXTEN switch control value
Currently, EXTEN switch control (mapped to GPIO5) is always 0, due to a bug
in the shift value. This has been reported in Coverity CID 353647.

Following the AXP192-X Datasheet, the EXTEN switch control status is
given by bit 2 of the register 10h. If "GPIO5" corresponds to EXTEN
Switch control (AXP192_GPIO5_OUTPUT_MASK is 0x04U), then the shift
AXP192_GPIO5_OUTPUT_SHIFT should be 2, not 3.

Signed-off-by: Loic Domaigne <tech@domaigne.com>
2025-10-03 21:13:31 -04:00
dependabot[bot]
3165d3c617 ci: github: bump the actions-deps group with 2 updates
Bumps the actions-deps group with 2 updates: [github/codeql-action](https://github.com/github/codeql-action) and [zgosalvez/github-actions-ensure-sha-pinned-actions](https://github.com/zgosalvez/github-actions-ensure-sha-pinned-actions).


Updates `github/codeql-action` from 3.30.3 to 3.30.5
- [Release notes](https://github.com/github/codeql-action/releases)
- [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md)
- [Commits](192325c861...3599b3baa1)

Updates `zgosalvez/github-actions-ensure-sha-pinned-actions` from 3.0.25 to 4.0.0
- [Release notes](https://github.com/zgosalvez/github-actions-ensure-sha-pinned-actions/releases)
- [Commits](fc87bb5b5a...9e9574ef04)

---
updated-dependencies:
- dependency-name: github/codeql-action
  dependency-version: 3.30.5
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: actions-deps
- dependency-name: zgosalvez/github-actions-ensure-sha-pinned-actions
  dependency-version: 4.0.0
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: actions-deps
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-10-03 21:13:05 -04:00
Adam Mitchell
02c129369b soc: st: st: h7: Add missing definition for STM32H742xx
Adds stm32h742xx to stm32h7x family

Signed-off-by: Adam Mitchell <adam.mitchell@brillpower.com>
2025-10-03 21:10:43 -04:00
Sylvio Alves
86a63faa0d tests: build_all: led_strip: split uart test case
Make sure this test filters out UART peripherals that
do not support ASYNC operation.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2025-10-03 21:07:33 -04:00
Sylvio Alves
b96687170f driver: led_strip: do not set uart supported
Let the vendor driver defines whether ASYNC is supported.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2025-10-03 21:07:33 -04:00
Michał Stasiak
ccef0cf132 drivers: pinctrl: nrf: use HAL defines
Replaced MDK symbols with defines from HAL.

Signed-off-by: Michał Stasiak <michal.stasiak@nordicsemi.no>
2025-10-03 21:07:13 -04:00
Kevin ORourke
f5a783c1df net: mqtt: Remove misleading comment
Setting the peer hostname to NULL does not skip hostname verification.
After discussion in the issue it was agreed that it's better to remove
this comment than to implement skipping hostname verification.

Also fixed a typo in the remaining part of the comment.

Fixes: #96853

Signed-off-by: Kevin ORourke <kevin.orourke@ferroamp.se>
2025-10-03 21:05:01 -04:00
Aksel Skauge Mellbye
e09a13dfd0 dts: arm: silabs: Clean up xg22 dts files
Reformat devicetree files according to
<https://docs.zephyrproject.org/latest/contribute/style/devicetree.html>
and <https://docs.kernel.org/devicetree/bindings/dts-coding-style.html>:

 * Sort nodes by unit address or name
 * Sort properties by category and name

Add missing MPU, hfrdodpllrt, hfxort and prortcclk nodes.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-10-03 21:04:35 -04:00
Aksel Skauge Mellbye
0ee07b4774 dts: arm: silabs: Clean up xg23 dts files
Reformat devicetree files according to
<https://docs.zephyrproject.org/latest/contribute/style/devicetree.html>
and <https://docs.kernel.org/devicetree/bindings/dts-coding-style.html>:

 * Sort nodes by unit address or name
 * Sort properties by category and name

Add missing MPU node.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-10-03 21:04:35 -04:00
Aksel Skauge Mellbye
3ee0de40a7 dts: arm: silabs: Clean up xg24 dts files
Reformat devicetree files according to
<https://docs.zephyrproject.org/latest/contribute/style/devicetree.html>
and <https://docs.kernel.org/devicetree/bindings/dts-coding-style.html>:

 * Sort nodes by unit address or name
 * Sort properties by category and name

Add missing I2C1, MPU and vdac1clk nodes.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-10-03 21:04:35 -04:00
Aksel Skauge Mellbye
9d199d84f1 dts: arm: silabs: Clean up xg28 dts files
Reformat devicetree files according to
<https://docs.zephyrproject.org/latest/contribute/style/devicetree.html>
and <https://docs.kernel.org/devicetree/bindings/dts-coding-style.html>:

 * Sort nodes by unit address or name
 * Sort properties by category and name

Add missing VDAC, MPU and prortcclk nodes.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-10-03 21:04:35 -04:00
Aksel Skauge Mellbye
b4491eb485 dts: arm: silabs: Clean up xg29 dts files
Reformat devicetree files according to
<https://docs.zephyrproject.org/latest/contribute/style/devicetree.html>
and <https://docs.kernel.org/devicetree/bindings/dts-coding-style.html>:

 * Sort nodes by unit address or name
 * Sort properties by category and name

Add missing MPU and prortcclk nodes.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-10-03 21:04:35 -04:00
Mathieu Choplain
33a7b65f69 scripts: ci: check_compliance: use correct error when author didn't sign
Commit e4650bc349 modified check_compliance
to avoid false negatives when a commit has multiple signoff lines and the
author's signoff line isn't the first one. To avoid this, a signoff line
which matches exactly the author's name and email is searched instead of
matching any line with the proper syntax and checking the fields.

While this solved the original issue, this also introduced a new issue:
whereas the old script would distinguish a properly formed signoff line
with the wrong author from a malformed signoff line, the new method now
checks both the syntax and the author name/email at the same time. As
such, the script will report "signoff line does not follow the syntax"
for both situations, but the signoff line DOES follow the syntax in the
latter case: the error message is then only a misleading red herring.

Fix this issue - and improve the check - by verifying every signoff line
in a commit's message body. Invalid syntax on any line is reported as a
"does not follow syntax" failure, whereas inability to find the commit
author is reported as a separate "no signoff entry matches commit author"
failure as it should always have...

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-10-03 21:03:29 -04:00
Mathieu Choplain
82fd615aad scripts: ci: check_compliance: fix potential unbound variable access
When checking for emails/sign-off, if parsing of the commit information
using 'git show' fails, the 'auth_name', 'auth_email' and 'body' variables
are unbound but accessed right afterwards, which would cause an error.

Skip straight to next iteration of the loop when such an error occurs to
ensure access to the unbound variables is never performed.

This error was reported by the VS Code Pylance analyzer.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-10-03 21:03:29 -04:00
Daniel Baluta
54545430e4 drivers: sai: Fix compile time error with clang
After commit 524b72ce40 ("toolchain: llvm: Provide working
BUILD_ASSERT macro") when compiling with clang we have actual
checks and a real assert check using _Static_assert.

Now, when compiling with clang (used by Xtensa internal toolchain)
we get the following error.

$ zephyr/drivers/dai/nxp/sai/sai.c:968:29: error: static_assert expression
 is not an integral constant expression

We get this in asserts like this:

BUILD_ASSERT(SAI_DLINE_COUNT(inst) != -1, "...").

This expands to (reduced the macro to easier understand the context):

_Static_assert(((((((I2S_Type *)(uintptr_t)(1493499904U))) ==
((I2S_Type *)(0x59040000u)))

... and clang complains that this is not a constant expression.

So, in order to fix the compile time error remove the compile time
asserts and replace them with runtime checks.

Signed-off-by: Daniel Baluta <daniel.baluta@nxp.com>
Fixes: commit 524b72ce40 ("toolchain: llvm: Provide working
BUILD_ASSERT macro")
2025-10-03 21:02:45 -04:00
Detlev Zundel
abd0919bc9 samples: modules: lvgl: demos: Increase memory pool on native
Due to the added overhead on 64 bit native, we also need to increase
the memory pool size to fix crashes as described in here:

https://github.com/lvgl/lvgl/issues/7648

Signed-off-by: Detlev Zundel <dzu@member.fsf.org>
2025-10-03 21:00:40 -04:00
Detlev Zundel
e05a272817 samples: modules: lvgl: demos: Increase main stack to fix crash
The increased complexity of the LVGL code now overruns the 4 KiB stack
of the main thread. Increase it to 6 KiB to fix the error.

Fixes: #94473

Signed-off-by: Detlev Zundel <dzu@member.fsf.org>
2025-10-03 21:00:40 -04:00
Martí Bolívar
0907a05baf scripts: dts: fix CMake DT API helper for compatible properties
Our build system DT API has a dt_comp_path() function used to look up
paths of nodes with a given compatible. This relies on the generated
edt.pickle.cmake file in the build directory to look inside the
concrete devicetree for the current application build.

The script gen_dts_cmake.py is responsible for generating
edt.pickle.cmake. It currently generates the data needed by
dt_comp_path() by looking inside each edtlib.Node object's "props"
attribute. This attribute in turn is fed by the "properties:" key in
the node's YAML binding. This leads to an edge case which is breaking
the dt_comp_path() API.

In most cases, we don't notice this edge case because base.yaml, which
is included by nearly all bindings, has a definition for "compatible"
in its "properties:" map. However, bindings are not required to
include base.yaml, and bindings do not have to explicitliy define a
"compatible" entry in their "properties:". An example of a binding
that does neither is fixed-partitions.yaml: it only has #address-cells
and #size-cells in its "properties:".

Nonetheless, "compatible:" is always a valid property name because
it's defined in the DT spec, and we should make the CMake API robustly
detect all nodes with a given compatible, regardless of whether that
node's binding explicitly defines it or not.

To make this happen, rely on the edtlib.Node.compats attribute instead
of edtlib.Node.props. The compats attribute is always defined even if
the node's YAML binding doesn't have an explicit entry for
"compatible".

Signed-off-by: Martí Bolívar <marti.bolivar@oss.qualcomm.com>
2025-10-03 21:00:29 -04:00
Fin Maaß
e88be20d52 sd: sdmmc: only with to 4 bit, if supported by host
only switch to 4 bit mode, if it is supported
by the host. for MMC it is already checked,
but not for the sd card.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-10-03 20:59:01 -04:00
Martin Koehler
cd2a38cc2e logging: Fixes #96880
Now only deletes old log files if more data is needed than is available.

Signed-off-by: Martin Koehler <koehler@metratec.com>
2025-10-03 20:58:34 -04:00
Iuliana Prodan
6a3ccab892 linker: nxp: imxrt6xx: hifi4: add missing include
Add the #include <snippets-sections.ld> directive
to include a linker file automatically.
This file defines additional linker sections that
are dynamically added during the build process.

It is placed at the very end of the SECTIONS block,
ensuring that any sections it defines appear after
all standard sections.

Signed-off-by: Iuliana Prodan <iuliana.prodan@nxp.com>
2025-10-03 20:58:12 -04:00
590b6ae968 boards: st: nucleo_g431kb: fix lptim1 domain clock
The domain clock configuration for lptim1 node in nucleo_g431kb.dts has a
conflict between the source and the peripheral. The source is specified
as STM32_SRC_LSI - low speed internal, but `LPTIM1_SEL(3)` will actually
configure the low speed external clock as the source, which the Nucleo
G431KB does not have. Update this to actually use the LSI clock. See
RM0440 Rev 9 page 322 - LPTIM1SEL[1:0] for more details.

Signed-off-by: Michael Estes <michael.estes@byteserv.io>
2025-10-03 20:57:26 -04:00
Supper Thomas
e9e6b81fbc doc: fix peripheral to peripheral_hr
Just fix the bin to right name

Signed-off-by: Supper Thomas <78900636@qq.com>
2025-10-03 20:57:14 -04:00
Stephanos Ioannidis
c44cb7309b ci: Switch to CI image v0.28.6
This commit updates the CI workflows to use the CI image v0.28.6, which
adds libfuse3 and additional Clang dependencies such as libclang-rt.

Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
2025-10-03 16:53:41 -05:00
Anas Nashif
3d7aa4a407 ci: errno: use action-zephyr-setup action
Do not use docker image, use action for setting up zephyr instead.
We need the SDK here to check the headers.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-10-03 16:50:13 -05:00
Stephanos Ioannidis
36bc2f38b7 ci: Switch to CI image v0.28.5
This commit updates the CI workflows to use the CI image v0.28.5, which
adds Node.js runtime and the TF-M Python dependencies.

Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
2025-10-03 04:57:55 -05:00
Ali Hozhabri
9a440ec18f drivers: bluetooth: hci: Introduce bt_spi_close to support bt_disable
Introduce bt_spi_close function to support bt_disable implementation
in applications.

Signed-off-by: Ali Hozhabri <ali.hozhabri@st.com>
2025-10-03 12:52:30 +03:00
Pierrick Guillaume
27b0e47f3b drivers: hwspinlock: sqn: add reg-width dts property
The size of each spinlock register might vary depending on the SoC.
Make it configurable in the devicetree.

Signed-off-by: Pierrick Guillaume <pguillaume@fymyte.com>
2025-10-03 12:52:18 +03:00
Pierrick Guillaume
2c86e65e71 drivers: hwspinlock: sqn: use cluster id instead of core mpidr
Using the mpidr of the core to lock the hwspinlock meant it acted as
a spinlock in the cluster itself, which is exactly the opposite of what we
tried to achieve.
Additionally, this tied the driver to the arm architecture, even though the
HW was not.

Signed-off-by: Pierrick Guillaume <pguillaume@fymyte.com>
2025-10-03 12:52:18 +03:00
Pierrick Guillaume
ddc37792cb doc: peripherals: add hwspinlock documentation
Include doxygen documentation of hwspinlock in peripherals.

Signed-off-by: Pierrick Guillaume <pguillaume@fymyte.com>
2025-10-03 12:52:18 +03:00
Pierrick Guillaume
7678c85498 drivers: hwspinlock: update default init priority
HWSPINLOCK drivers should be initialized very early in the kernel life, so
they can be used by other drivers without breaking their init dependencies.
Use the default init priority (40), instead of default device init
priority (50).

Signed-off-by: Pierrick Guillaume <pguillaume@fymyte.com>
2025-10-03 12:52:18 +03:00
Pierrick Guillaume
176e2a424f drivers: hwspinlock: add zephyr spinlock per hwspinlock
HWSPINLOCK are used to protect accesses to shared resources between
clusters. However, we don't want to sleep or be preempted while holding
a HWSPINLOCK. This means we need to lock IRQs while holding the
HWSPINLOCK.
Moreover, in an SMP context, we need to protect accesses to a HWSPINLOCK
between cores, so it is not possible to lock or release the same
HWSPINLOCK multiple times.

Introduce a zephyr spinlock per HWSPINLOCK to counter those issues. User
facing APIs have been udpated to take into account those changes, and a new
hwspinlock_dt_spec struct has been added to align with other subsystem on
the management of complex device's data.

Take the opportunity to rename public APIs to match the naming scheme of
normal zephyr spinlocks:
hwspinlock_lock -> hw_spin_lock
hwspinlock_trylock -> hw_spin_trylock
hwspinlock_unlock -> hw_spin_unlock

Signed-off-by: Pierrick Guillaume <pguillaume@fymyte.com>
2025-10-03 12:52:18 +03:00
Pierrick Guillaume
36e5672ee6 devicetree: add hwspinlock helpers
Add helpers to access hwspinlock controller and id from a phandle array.

Signed-off-by: Pierrick Guillaume <pguillaume@fymyte.com>
2025-10-03 12:52:18 +03:00
Pierrick Guillaume
8f83b38b57 dts: bindings: add hwspinlock common bindings
Add general hwlocks and hwlock-names to base.yaml to be utilized by any
clients that uses hwspinlocks.

Additionally add hwspinlock-controller.yaml for common properties shared by
all hwspinlock controller devices.

Signed-off-by: Pierrick Guillaume <pguillaume@fymyte.com>
2025-10-03 12:52:18 +03:00
Pierrick Guillaume
403b4ef84b drivers: hwspinlock: remove syscall support
HW spinlocks are not supposed to be used by user application. They are used
to protect shared resources between clusters. Consumer of such spinlocks
should be other drivers in kernel space.
Moreover, syscalls were actually not generated properly because of
a missing call to zephyr_syscall_header() in CMakeLists.txt.

Signed-off-by: Pierrick Guillaume <pguillaume@fymyte.com>
2025-10-03 12:52:18 +03:00
Jamie McCrae
3cd292af8c west.yml: MCUboot synchronization from upstream
Update Zephyr fork of MCUboot to revision:
  d5b0dcb9aaee397fc105ae2228e8030038c3d871

Brings following Zephyr relevant fixes:

  - d5b0dcb9 hooks: Use dedicated type for slot numbers
  - cf138a0f boot: zephyr: config: Introduce MCUBOOT_BOOT_MAX_ALIGN
    Kconfig symbol
  - 677f1602 boot: zephyr: boards: delete frdm_mcxa156 configuration
  - 3c8e5717 zephyr: nRF54L05 and L10 configuration with LTO enabled
  - 4ea993ce zephyr: Remove duplicate zephyr module line
  - 8d14eebf boot: bootutil: Fix upgrade only serial recovery slot
    info
  - 78f87cf3 boot: zephyr: boards config of the variant stm32 disco
    kit
  - cbd3310e boot: zephyr: get base addres from dts for flexspi
    devices
  - 425e22be boot/zephyr: fix compilation errors in logging.
  - ec26273f bootutil: fix null pointer dereference in logging.
  - 3eb23a5d zephyr: Kconfig to control MCUBOOT_USE_TLV_ALLOW_LIST
  - a13624f0 bootutil: Add MCUBOOT_USE_TLV_ALLOW_LIST
  - e375252c boot: Enable Encryption with PSA + ECDSA
  - 21ed226f boot: bootutil: Fix bootutil_find_key definition
  - 763be6a5 imgtool: Add sha512 to allowed configurations for
    ECDSA256P1
  - 59d2f7a5 imgtool: Add support for VID and CID
  - 94ad4d44 boot: Add VID and CID checks

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-10-03 12:52:07 +03:00
Pieter De Gendt
53b67d68c8 modules: mcuboot: Add Kconfig option for BOOT_MAX_ALIGN
Add a configuration option to override the default BOOT_MAX_ALIGN value in
mcuboot. It defaults to the chosen flash's write block size to make it
backwards compatible.

This can be used when image slots are on different flash devices.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-10-03 12:52:07 +03:00
Alvis Sun
6664958107 drivers: flash: npcx: support GDMA operation for NPCXn and NPCKn
1. Introduced GDMA support for efficient data transfer in the
NPCX FIU QSPI driver.
2. Refactor flash driver mutex handling to enhance concurrency safety,
preventing other threads from preempting erase/write operations during
UMA until mutex release.

Signed-off-by: Alvis Sun <yfsun@nuvoton.com>
Signed-off-by: Tom Chang <CHChang19@nuvoton.com>
Signed-off-by: Mulin Chao <mlchao@nuvoton.com>
2025-10-03 12:51:55 +03:00
Alvis Sun
c6b2d00386 boards: nuvoton: npck3m8k_evb: remove QSPI flash configuration
As title.

Signed-off-by: Alvis Sun <yfsun@nuvoton.com>
2025-10-03 12:51:55 +03:00
Alvis Sun
3cb6ff559a dts: nuvoton: npcx: add support for GDMA and driver enable options
1. Introduces boolean properties to enable support for different
versions of the FIU/Nor flash driver.
2. Add dmas phandle for DMA configuration.

Signed-off-by: Alvis Sun <yfsun@nuvoton.com>
2025-10-03 12:51:55 +03:00
Alvis Sun
97d8aa307c soc: npcx: update npck register structure checks for consistency
As title.

Signed-off-by: Alvis Sun <yfsun@nuvoton.com>
2025-10-03 12:51:55 +03:00
Emil Gydesen
f0c6168e54 tests: Bluetooth: CAP: Update unicast audio start unittests
Update the CAP initiator audio start unittest.
The reason for this, is that the recent change to endpoints
means that we need to properly generate a BAP unicast group
and call bt_bap_stream_config, instead of trying to manage
the bap_iso values directly.

As part of updating this, the tests were also updated to
significantly reduce code duplication, but generating
a default start param that can easily be reused.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-10-03 12:51:45 +03:00
Emil Gydesen
5d8170bba8 Bluetooth: BAP: Add conn check assert in bt_bap_iso_bind_ep
Adds assert for bt_bap_iso_bind_ep to ensure that endpoints
from different connection don't share a CIS (a bt_bap_iso).

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-10-03 12:51:45 +03:00
Emil Gydesen
1dc98dd932 Bluetooth: BAP: Add check to verify that eps have correct iso
Add a check that verifies that 2 endpoints from different
connection don't share a CIS, which would be invalid.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-10-03 12:51:45 +03:00
Emil Gydesen
4f2ef519b6 Bluetooth: BAP: UC: Move iso_bind_ep to config instead of QoS
We can actually already when we bind the endpoint to the stream
perform the call to bt_bap_iso_bind_ep, if the stream has been
added to a group.

If the stream has not yet been added to a group, then when
the stream is added to a group, then bt_bap_iso_bind_ep will
be done there (existing behavior).

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-10-03 12:51:45 +03:00
Quang Le
50eb0fb847 drivers: gpio: renesas: Fix fail case pin_get_config
Add condition to check whether the pin is set as output before
reading the output high or low for gpio driver of Renesas RZ

Signed-off-by: Quang Le <quang.le.eb@bp.renesas.com>
Signed-off-by: Nhut Nguyen <nhut.nguyen.kc@renesas.com>
2025-10-03 12:51:33 +03:00
Hou Zhiqiang
03897f8bd5 boards: nxp: add imx91_qsb support
The i.MX 91 Quick Start Board (MCIMX91-QSB board) is a platform designed
to display the most commonly used features of the i.MX 91 applications
processor. The MCIMX91-QSB board is an entry-level development board
with a small and low-cost package. The board can be used by developers
to get familiar with the processor before investing a large amount of
resources in more specific designs.

Signed-off-by: Hou Zhiqiang <Zhiqiang.Hou@nxp.com>
Change imx9111 and imx9131 use separate dts as they has different pin
configure.
Signed-off-by: Jiafei Pan <jiafei.pan@nxp.com>
2025-10-03 12:51:13 +03:00
Hou Zhiqiang
a3e9b59139 drivers: pinctrl_imx: add mimx9111 support
Add pinctrl driver support for MIMX9111.

Signed-off-by: Hou Zhiqiang <Zhiqiang.Hou@nxp.com>
Signed-off-by: Jiafei Pan <jiafei.pan@nxp.com>
2025-10-03 12:51:13 +03:00
Hou Zhiqiang
d84317fe61 drivers: clock: ccm_rev2: add mimx9111 support
Add clock driver support for MIMX9111.

Signed-off-by: Hou Zhiqiang <Zhiqiang.Hou@nxp.com>
Signed-off-by: Jiafei Pan <jiafei.pan@nxp.com>
2025-10-03 12:51:13 +03:00
Hou Zhiqiang
531ea300c8 soc: nxp: imx91: add MIMX9111 support
Add SoC MIMX9111 support.

Signed-off-by: Hou Zhiqiang <Zhiqiang.Hou@nxp.com>
Signed-off-by: Jiafei Pan <jiafei.pan@nxp.com>
2025-10-03 12:51:13 +03:00
Jiafei Pan
801690d52b west.yml: depends on hal_nxp PR
Depends on hal_nxp PR #610.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-10-03 12:51:13 +03:00
Torsten Rasmussen
b88e615339 sysbuild: support application CMakePresets.json files with sysbuild
This commit provides a CMakePresets.json which includes the sample's
CMakePresets.json file.

`west build` is extended to set `APP_DIR` in environment when sysbuild
is used. This allows sysbuild's CMakePresets.json to include the
sample's presets file.

Signed-off-by: Torsten Rasmussen <Torsten.Rasmussen@nordicsemi.no>
2025-10-03 12:51:01 +03:00
Etienne Carriere
98c92d3234 soc: st: stm32u0: enable flash instruction cache
Enable flash instruction cache on U0 SoCs.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-10-03 12:50:47 +03:00
Etienne Carriere
b56487892d soc: st: stm32: use CONFIG_STM32_FLASH_PREFETCH where applicable
Use CONFIG_STM32_FLASH_PREFETCH config option to enable flash prefetch
in C0/F0/F1/F2/F3/F4/F7/G4/L0/L1/L4/U0/U3/WB/WBA/WBL for consistency
with other SoCs that use this configuration switch, default enabled
at SoC default config level.

Add SoC hidden config option HAS_STM32_FLASH_PREFETCH enabled for
SoCs that support the feature. STM32_FLASH_PREFETCH is default
enabled for all SoC that have HAS_STM32_FLASH_PREFETCH unless target
specific constraints (as for G0Bx/G0Cx SoCs).

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-10-03 12:50:47 +03:00
Etienne Carriere
7c47bc9320 soc: st: stm32u3: add flash prefetch
Implement flash prefetch for STM32U3xx SoCs.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-10-03 12:50:47 +03:00
cyliang tw
e29c4143bb drivers: rtc: modify Nuvoton numaker driver for compatibility
For compatibility, do not use spare registers to store mask data.
RTC mask data can be generated through the calendar and time mask
registers at runtime.

Signed-off-by: cyliang tw <cyliang@nuvoton.com>
2025-10-03 12:50:36 +03:00
Bartlomiej Buczek
cbe94caa77 scripts: twister: coverage: do not fail when suspicious_hits are detected.
gcovr 8.0 introduces suspicious_hits detection, warn on such detection, but
do not stop coverage calculation at all.

Signed-off-by: Bartlomiej Buczek <bartlomiej.buczek@nordicsemi.no>
2025-10-03 12:50:24 +03:00
Pete Johanson
b7a73142a3 manifest: Move to latest hal_adi
Move to the latest commit of the hal_adi, using the new msdk-export branch
with a clean commit history.

Signed-off-by: Pete Johanson <pete.johanson@analog.com>
2025-10-03 12:50:10 +03:00
Jordan Yates
b5177b159a modem: modem_cellular: assert reset pin for duration
Assert the reset pin for the duration specified by the modem
(`reset_pulse_duration_ms`) when booting, instead of immediately
de-asserting the pin.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-10-03 12:49:47 +03:00
Jordan Yates
54088f69c3 modem: modem_cellular: prioritise reset pin on failure
Prioritise asserting the reset pin when a script fails instead of the
power pin, as the reset pin is a "harder" reset mechanism.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-10-03 12:49:47 +03:00
Jordan Yates
131bec5b1b modem: modem_cellular: delay after reset de-assert
Add a delay after de-asserting the reset pin before pulsing the power on
pin, if both are enabled.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-10-03 12:49:47 +03:00
Jordan Yates
0ba20dd96c modem: modem_cellular: revert baudrate on reset
Revert the UART port baudrate to its original value after performing a
pin reset on the modem.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-10-03 12:49:37 +03:00
Torsten Rasmussen
e662d77bf1 cmake: add net_socket_service_desc to common-rom.cmake
Commit eff5d02872 added
`net_socket_service_desc` to common-rom ld snippet but not to common-rom
CMake linker generator equivalent.

Bring common-rom.cmake up-to-date to ensure `net_socket_service_desc`
works correctly with the linker generator.

Signed-off-by: Torsten Rasmussen <Torsten.Rasmussen@nordicsemi.no>
2025-10-03 12:49:25 +03:00
Erwan Gouriou
c0c3feeb25 boards: st: stm32n6 boards: Add netif:eth twister support
Twister netif:eth was missing on stm32n6 based board and hence they
were not build against net samples.
Fix this.

Additionally, on dk, fix `pwm` to respect alphabetical order.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2025-10-03 12:49:14 +03:00
Erwan Gouriou
47ed50c31c drivers: ethernet: stm32n6: Use zephyr symbol for alignment attribute
Rather than symbol coming from the HAL, use zephyr `__aligned()` macro.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2025-10-03 12:49:14 +03:00
Erwan Gouriou
36192a4053 drivers: ethernet: stm32n6: Remove attributes from extern definitions
Compilers may not like that attributes are provides in actual and extern
definitions of symbols.
Removing them from extern definitions

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2025-10-03 12:49:14 +03:00
Erwan Gouriou
4a875c0b39 drivers: ethernet: stm32n6: Fix phy modes declarations
Phy modes declarations where not correctly placed for use with N6 series.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2025-10-03 12:49:14 +03:00
Alain Volmat
727c15a038 doc: release notes: add LVGL zephyr regions options
Add description of new LVGL Kconfig options to specify the
zephyr regions used by LVGL.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-10-02 22:01:39 +02:00
Benjamin Cabé
febf4e8e53 shell: fix app version sub commands
commands should not have spaces around hyphens:
version - extended --> version-extended
build - version --> build-version

Fixes: zephyrproject-rtos/zephyr#96591

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-10-02 22:00:11 +02:00
Alberto Escolar Piedras
896bdce53a subsys/tracing/tracing_backend_posix: Set file to be closed on exec
If the process does an exec() (or fork, or..) all descriptors are kept
open by default, unless O_CLOEXEC is set when opening them.
This is usefull for stdin/out/err so that new process is connected to
them, but it is very rare for it to be usefull for any other descriptor.

In general this leads to descriptors being kept open unnecessarily,
which either will block other process from getting them (for example
if the child survives the parent but it does something else).
Or for a "leak" which unnecessarily uses descriptors and memory in the
child process.

Let's ensure we do not leak it for this component as we do not need it.

Note glibc fopen supports the "e" modifier as an extension to pass
O_CLOEXEC to the open syscall.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-10-02 22:00:02 +02:00
Alberto Escolar Piedras
d83ebce959 drivers/serial/uart_native_tty: Set TTY to be closed on exec
If the process does an exec() (or fork, or..) all descriptors are kept
open by default, unless O_CLOEXEC is set when opening them.
This is usefull for stdin/out/err so that new process is connected to
them, but it is very rare for it to be usefull for any other descriptor.

In general this leads to descriptors being kept open unnecessarily,
which either will block other process from getting them (for example
if the child survives the parent but it does something else).
Or for a "leak" which unnecessarily uses descriptors and memory in the
child process.

Let's ensure we do not leak it for this component as we do not need it.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-10-02 22:00:02 +02:00
Alberto Escolar Piedras
07987cc539 drivers/serial/uart_native_pty: Set PTY to be closed on exec
If the process does an exec() (or fork, or..) all descriptors are kept
open by default, unless O_CLOEXEC is set when opening them.
This is usefull for stdin/out/err so that new process is connected to
them, but it is very rare for it to be usefull for any other descriptor.

In general this leads to descriptors being kept open unnecessarily,
which either will block other process from getting them (for example
if the child survives the parent but it does something else).
Or for a "leak" which unnecessarily uses descriptors and memory in the
child process.

Let's ensure we do not leak it for this component as we do not need it.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-10-02 22:00:02 +02:00
Alberto Escolar Piedras
b850715a29 drivers/net/nsos: Set socket to be closed on exec
If the process does an exec() (or fork, or..) all descriptors are kept
open by default, unless O_CLOEXEC is set when opening them.
This is usefull for stdin/out/err so that new process is connected to
them, but it is very rare for it to be usefull for any other descriptor.

In general this leads to descriptors being kept open unnecessarily,
which either will block other process from getting them (for example
if the child survives the parent but it does something else).
Or for a "leak" which unnecessarily uses descriptors and memory in the
child process.

Let's ensure we do not leak it for this component as we do not need it.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-10-02 22:00:02 +02:00
Alberto Escolar Piedras
19b181e58e drivers/input/linux_evdev: Close input file on exec
If the process does an exec() (or fork, or..) all descriptors are kept
open by default, unless O_CLOEXEC is set when opening them.
This is usefull for stdin/out/err so that new process is connected to
them, but it is very rare for it to be usefull for any other descriptor.

In general this leads to descriptors being kept open unnecessarily,
which either will block other process from getting them (for example
if the child survives the parent but it does something else).
Or for a "leak" which unnecessarily uses descriptors and memory in the
child process.

Let's ensure we do not leak it for this component as we do not need it.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-10-02 22:00:02 +02:00
Alberto Escolar Piedras
e5d6e0ce24 drivers flash_simulator_native: Set flash file to close on exec
If the process does an exec() (or fork, or..) all descriptors are kept
open by default, unless O_CLOEXEC is set when opening them.
This is usefull for stdin/out/err so that new process is connected to
them, but it is very rare for it to be usefull for any other descriptor.

In general this leads to descriptors being kept open unnecessarily,
which either will block other process from getting them (for example
if the child survives the parent but it does something else).
Or for a "leak" which unnecessarily uses descriptors and memory in the
child process.

Let's ensure we do not leak it for this component as we do not need it.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-10-02 22:00:02 +02:00
Alberto Escolar Piedras
9f00584eab drivers eth_native_tap: Set socket to be closed on exec
If the process does an exec() (or fork, or..) all descriptors are kept
open by default, unless O_CLOEXEC is set when opening them.
This is usefull for stdin/out/err so that new process is connected to
them, but it is very rare for it to be usefull for any other descriptor.

In general this leads to descriptors being kept open unnecessarily,
which either will block other process from getting them (for example
if the child survives the parent but it does something else).
Or for a "leak" which unnecessarily uses descriptors and memory in the
child process.

Let's ensure we do not leak it for this component as we do not need it.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-10-02 22:00:02 +02:00
Alberto Escolar Piedras
d91565cd3a drivers eeprom_simulator_native: Set EEPROM file to close on exec
If the process does an exec() (or fork, or..) all descriptors are kept
open by default, unless O_CLOEXEC is set when opening them.
This is usefull for stdin/out/err so that new process is connected to
them, but it is very rare for it to be usefull for any other descriptor.

In general this leads to descriptors being kept open unnecessarily,
which either will block other process from getting them (for example
if the child survives the parent but it does something else).
Or for a "leak" which unnecessarily uses descriptors and memory in the
child process.

Let's ensure we do not leak it for this component as we do not need it.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-10-02 22:00:02 +02:00
Alberto Escolar Piedras
01118e2657 drivers can_native_linux: Set socket to be closed on exec
If the process does an exec() (or fork, or..) all descriptors are kept
open by default, unless O_CLOEXEC is set for them.
(This default behaviour is usefull for stdin/out/err so that new process
is kept connected to them, but it is very rare for it to be usefull for
any other descriptor)

In general this leads to descriptors being kept open unnecessarily,
which either will block other process from using them (for example
if the child survives the parent but it does something else while keeping
a port open).
Or for a "leak" which unnecessarily uses descriptors and memory in the
child process.

Let's ensure we do not leak it for this component as we do not need it.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-10-02 22:00:02 +02:00
Alberto Escolar Piedras
a8f10c9390 docs native_sim: Fix drivers table entry for hwinfo
A column was missing

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-10-02 22:00:02 +02:00
Sylvio Alves
7c1193c813 udc_dwc2: fix off-by-one in TX FIFO unset check
Fix the check in dwc2_unset_dedicated_fifo() that wrongly included the
current endpoint when testing for higher FIFOs. This caused false
warnings and early returns.

Use ~BIT_MASK(ep_idx + 1) to only test FIFOs above the current EP.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2025-10-02 21:59:14 +02:00
Jakub Michalski
30092cfcce drivers: virtio: virtio_pci: fix virtqueue overallocation
virtio_pci_init_virtqueues was allocating more virtqueues than
specified by num_queues param if data->common_cfg->num_queues
was greater than num_queues

Signed-off-by: Jakub Michalski <jmichalski@antmicro.com>
2025-10-02 21:59:01 +02:00
Jakub Michalski
a0dbd67262 fs: virtiofs: fix off-by-one in virtqueue initialization
REQUEST_QUEUE was passed as queue_num to virtio_init_virtqueues
where REQUEST_QUEUE+1 was required

Signed-off-by: Jakub Michalski <jmichalski@antmicro.com>
2025-10-02 21:59:01 +02:00
Guillaume Gautier
d76e0004fe drivers: pwm: stm32: kconfig: remove ll_tim selection
Usage of stm32xxxx_ll_tim.c has been removed so we can also remove the
selection of USE_STM32_LL_TIM from the Kconfig.
Also remove the LL_RCC that plays no part in the driver.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2025-10-02 21:58:55 +02:00
Guillaume Gautier
1d2029a137 drivers: counter: stm32: kconfig: remove ll_tim selection
Usage of stm32xxxx_ll_tim.c has been removed so we can also remove the
selection of USE_STM32_LL_TIM from the Kconfig.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2025-10-02 21:58:55 +02:00
Guillaume Gautier
a02e1c70dd drivers: counter: stm32: rtc: remove init struct
Remove the calls to LL_RTC_Init, LL_RTC_DeInit and LL_RTC_ALMA_Init in
the RTC counter driver. This avoids calling functions from
stm32xxxx_ll_rtc.c.
They are replaced by a set of simpler functions from the header file.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2025-10-02 21:58:55 +02:00
Guillaume Gautier
bb2eb4e8b0 drivers: rtc: stm32: remove calls from ll source file
Remove all function calls for functions that are defined in the
stm32xxxx_ll_rtc.c and replaces them by simpler calls from the header file.
Also remove the use of LL_RTC_AlarmTypeDef since no functions from the
header file uses it.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2025-10-02 21:58:55 +02:00
Torsten Rasmussen
ddb9e3fae6 cmake: use zephyr_file_copy(...) instead of file(COPY_FILE ...)
`file(COPY_FILE ...)` is from CMake 3.21.
Zephyr still supports CMake 3.20, so use zephyr_file_copy(...)
instead of `file(COPY_FILE ...)`.

Signed-off-by: Torsten Rasmussen <Torsten.Rasmussen@nordicsemi.no>
2025-10-02 21:58:40 +02:00
Andreas Schweigstill
78b8950fd1 net: http_server: Fix crash when cb refuses new websocket connection
Zephyr crashes when a new websocket connection is refused by the
user supplied callback function. This is caused by multiple calls
of close_client_connection(). After the first call the file handle
and the client->service pointer are invalid.

This fix checks if the file handle is valid.

Signed-off-by: Andreas Schweigstill <andreas@schweigstill.de>
2025-10-02 21:58:28 +02:00
Bjarki Arge Andreasen
d6e940ef4a dts: vendor: nordic: nrf54h: move adc and comp to gdpwr_slow_main
The ADC and COMP on the nrf54h20 both have all of their analog
inputs routed to pads in different power domains than themselves,
this means the device drivers for both of them need to request the
pads to be resumed when active to allow any reading of the pads.

To keep the drivers simple, we can rely on HW to keep the power
domain the COMP and ADC are in powered, which happens automatically
when the ADC or COMP is ENABLED. We can then place them on the
power domain of their pads in the devicetree. This ensures the pads
are powered and not retained while the devices are RESUMED.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-10-02 21:58:14 +02:00
Bjarki Arge Andreasen
5fd26a6cb7 drivers: adc: nrfx_saadc: implement PM device runtime
The NRFX SAADC device driver needs to implement PM DEVICE for it
to work with power domains, which is required for some SoCs. Inline
PM device runtime "self get/put" pm has been implemented for the
normal sync read API.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-10-02 21:58:14 +02:00
Andrej Butok
e5c37d417d littlefs: boards: delete frdm_mcxa156 configuration
Deletes special LittleFS configuration for the FRDM-MCXA156 board.
It's not required after MCXA156 flash write-program-size
was reduced from 128 to 16 bytes.

Signed-off-by: Andrej Butok <andrey.butok@nxp.com>
2025-10-02 21:58:04 +02:00
Hou Zhiqiang
92d06ac131 soc: nxp: imx: add resource table section for Cortex-A
Add .resource_table section to the linker script for the
Cortex-A core of i.MX series.

Signed-off-by: Hou Zhiqiang <Zhiqiang.Hou@nxp.com>
2025-10-02 21:57:54 +02:00
Maochen Wang
a00577c1a8 samples: net: wifi: nxp: fix PEAP-TLS connection failure
The connection using EAP-PEAP-TLS with Cisco AP is failed for IW610, and
the console log shows 'Memory allocation failed (-0x3f80)'.
Increase the MBEDTLS_HEAP_SIZE for 10K can fix this issue.

Signed-off-by: Maochen Wang <maochen.wang@nxp.com>
2025-10-02 21:57:46 +02:00
Luis Ubieda
f7dfcfbad6 spi: lpspi: Add include guards to common header file
Not motivated by any impacted functionality but rather following good
practices. Recursive inclusions may be confusing and hard to diagnose.

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-10-02 21:57:37 +02:00
Luis Ubieda
97eb3eb1dd spi: lpspi: Extract FIFO length query helpers to common header file
To remove code duplication.

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-10-02 21:57:37 +02:00
Luis Ubieda
df7b1a14b1 spi: lpspi: rtio: Re-introduce native RTIO support
This version is based on the CPU LPSPI driver, directly implementing
the submit call following the non-blocking asynchronous pattern.

This has been re-introduced after struggling to keep up with data
streaming applications, which demands reduced and controlled latency,
which for the default implementation (using RTIO workqueue) is not
guaranteed, due to being serviced by a thread-pool vs directly in the
ISR context.

This version includes limited feature-set, yet stress-tested:
- Required both rx-fifo and tx-fifo to be equal.
- 8-byte words supported only.
- SPI Controller-only supported (target mode not included).
- SPI_HOLD_ON_CS only supported with CS GPIOs.

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-10-02 21:57:37 +02:00
Yangbo Lu
9304035610 net: bridge: support DSA port
DSA switch performs L2 switching on hardware on DSA user ports.
The promisc mode requirement doesn't apply to DSA user ports.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-10-02 21:57:32 +02:00
Fabio Baltieri
98a20b2b18 ci: set various ccache-cache-key parameters for the setup action
The setup action now supports caching the ccache objects, set a
ccache-cache-key for the jobs that can benefit from it, disable it from
the ones that don't really build anything.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2025-10-02 21:57:17 +02:00
Anouar Raddaoui
b27ab80d20 modbus: support UART ASYNC API in modbus serial
Reason for this extension are CRC mismatches happening due to RX data
loss when using the interrupt driven API at higher speeds and/or high
CPU load. It is recommended to use the ASYNC API along with hardware
byte counting requiring a timer instance and one PPI channel to achieve
a robust communication at high baudrates on nRF platforms.

Signed-off-by: Anouar Raddaoui <a.raddaoui@smight.com>
2025-10-02 21:56:37 +02:00
Krzysztof Chruściński
c77e5a60fd soc: nordic: common: mram_latency: Fix returning uninitialized value
An uninitialized variable was returned on success which could led by
init_nrfs.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-10-02 16:49:33 +02:00
Szymon Janc
9985a090fc bluetooth: hci: userchan: Implement close callback
This allows to use bt_disable() also in native_sim build.

Signed-off-by: Szymon Janc <szymon.janc@codecoup.pl>
2025-10-02 16:49:16 +02:00
Adam Mitchell
dcc61ae437 drivers: clock_control: Set maximum frequencies for CONFIG_SOC_STM32H742XX
Adds missing check to set maximum clock frequencies for stm32h742xx

Signed-off-by: Adam Mitchell <adam.mitchell@brillpower.com>
2025-10-02 16:49:08 +02:00
Bjarki Arge Andreasen
804134f28c soc: nordic: nrf54h: increase default log stack size if CONFIG_PM=y
The default log process thread stack size needs to be increased to
account for the recursion into resuming power domains, which
may happen within char_out for some backends like uart.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-10-02 16:48:59 +02:00
Alexander Kozhinov
f53c283acb opamp: introduce new mode
Some MCUs are supporting external resistor dividers for gain setting in
standalone mode.
Add OPAMP_FUNCTIONAL_MODE_STANDALONE to the opamp_functional_mode enum.

Signed-off-by: Alexander Kozhinov <ak.alexander.kozhinov@gmail.com>
2025-10-02 16:48:49 +02:00
Alexander Kozhinov
783d4a141f opamp: adjust modes enum to avoid clash with STM32 HAL macros
In the enum opamp_functional_mode becomes prefix
OPAMP_FUNCTIONAL_MODE_ to avoid clash with STM32 HAL macros
The suffix _MODE were removed to make the names shorter

Signed-off-by: Alexander Kozhinov <ak.alexander.kozhinov@gmail.com>
2025-10-02 16:48:49 +02:00
Arthur Gay
181082e84e drivers: i2s: i2s_ll_stm32: add support for IO swap
This commit adds a new property in the device-tree bindings for swapping
the serial data input and output pins of the SPI/I2S peripheral for
STM32 microcontrollers that support it.

Signed-off-by: Arthur Gay <arthur.gay@marshmallow.kids>
2025-10-02 16:48:29 +02:00
Muhammad Waleed Badar
efe5a302db samples: fs_sample: add native_sim board support
Add native_sim conf and overlay

Signed-off-by: Muhammad Waleed Badar <walid.badar@gmail.com>
2025-10-02 16:48:20 +02:00
Arthur Gay
c457eba9d4 boards: st: Set csbounds explicitly instead of relying on default value
The default value has changed in previous commits, so set it explicitly
in the devicetree with the new st,csbound property.

Signed-off-by: Arthur Gay <arthur.gay@marshmallow.kids>
2025-10-02 16:48:11 +02:00
Arthur Gay
d1ea7534c6 drivers: memc: stm32_ospi_psram: make NCS boundary configurable in dt
Limit a transaction to a boundary of aligned addresses. Each PSRAM may
specify different configuration.

Signed-off-by: Arthur Gay <arthur.gay@marshmallow.kids>
2025-10-02 16:48:11 +02:00
Arthur Gay
1e966ba478 drivers: memc: stm32_xspi_psram: make NCS boundary configurable in dt
Limit a transaction to a boundary of aligned addresses. Each PSRAM may
specify different configuration.

Signed-off-by: Arthur Gay <arthur.gay@marshmallow.kids>
2025-10-02 16:48:11 +02:00
Arthur Gay
53f91ea8ed drivers: spi: spi_ll_stm32: add support for IO swap
This commit adds a new property in the device-tree bindings for swapping
the MISO and MOSI pins of the SPI/I2S peripheral for STM32 microcontrollers
that support it.

Signed-off-by: Arthur Gay <arthur.gay@marshmallow.kids>
2025-10-02 16:48:04 +02:00
Alain Volmat
e7aa49c60b drivers: video: dcmi: correct clock_control_subsys_t cast
Correct the clock_control_subsys_t cast in calls of the
clock_control_ framework.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-10-02 16:47:53 +02:00
Alain Volmat
c3995b65ba drivers: usb: udc: stm32: avoid unnecessary clock_control_subsys_t cast
Avoid incorrect (clock_control_subsys_t *) incorrect cast and
remove the cast of pclken in calls to the clock_control_
framework.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-10-02 16:47:53 +02:00
Alain Volmat
00fd580132 drivers: mbox: stm32-hsem: correct clock_control_subsys_t cast
Correct the clock_control_subsys_t cast in calls of the
clock_control_ framework.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-10-02 16:47:53 +02:00
Alain Volmat
c927d9ee09 video: stm32: dcmipp: correct clock_control_subsys_t cast
Correct the clock_control_subsys_t cast in calls of the
clock_control_ framework.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-10-02 16:47:53 +02:00
Mario Paja
8fa7cbc8e3 samples: i2s: output: add nucleo_g431kb
Add nucleo_g431kb board in samples/drivers/i2s/output

Signed-off-by: Mario Paja <mariopaja@hotmail.com>
2025-10-02 16:47:45 +02:00
Mario Paja
5a0d4e106d drivers: i2s: stm32_sai: add support for stm32g4xx series
STM32G4xx series shares several DMA configurations with
the other platforms. These changes aim to enable platform
specific DMA configuration and align them to other platforms.

Signed-off-by: Mario Paja <mariopaja@hotmail.com>
2025-10-02 16:47:45 +02:00
Mario Paja
4dced47581 dts: st: g4: add sai node for stm32g4xx
Define SAI1 node A & B for STM32G4xx series

Signed-off-by: Mario Paja <mariopaja@hotmail.com>
2025-10-02 16:47:45 +02:00
Christian Mauderer
f042a1cca0 drivers: spi: mchp_mss: Avoid sending extra bytes
The driver did send some extra 0 bytes when the receive hasn't been
finished yet. This patch makes sure to avoid that.

Signed-off-by: Christian Mauderer <christian.mauderer@embedded-brains.de>
2025-10-02 16:47:38 +02:00
Christian Mauderer
a52206201c drivers: spi: mchp_mss: Handle NULL buffers better
At the moment, if you would pass a NULL buffer to the driver, the rx and
tx counts of that buffer would not advance. This patch fixes that.

Signed-off-by: Christian Mauderer <christian.mauderer@embedded-brains.de>
2025-10-02 16:47:38 +02:00
Christian Mauderer
b39876938a drivers: spi: mchp_mss: Make more universal
The driver has ignored the first RX buffer. Most likely it has been
modeled for accesses to a SPI flash or similar where the first read data
is not relevant.

This commit makes sure that the driver can work as a universal SPI
master instead.

Signed-off-by: Christian Mauderer <christian.mauderer@embedded-brains.de>
2025-10-02 16:47:38 +02:00
Rahul Gurram
9ee617a8ee soc: silabs: siwx91x: Expose firmware upgrade API
siwx91x require a specific API to communicate with the bootloader in order
to achieve firmware upgrade. This commit introduces the configuration
symbol to import the helper library.

[Jérôme: split commits, reword the commit log]

Co-authored-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
Signed-off-by: Rahul Gurram <rahul.gurram@silabs.com>
2025-10-02 14:18:53 +02:00
Rahul Gurram
b781386e1e soc: silabs: siwx91x: Implement sys_reset()
siwx91x requires a few specific actions to reboot properly.

[Jérôme: split commits, reword the commit log, fix prototype]

Co-authored-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
Signed-off-by: Rahul Gurram <rahul.gurram@silabs.com>
2025-10-02 14:18:53 +02:00
Rahul Gurram
3fd5cc095b manifest: Update hal_silabs
Import files related to the firmware upgrade and the SoC reset for siwx91x.

[Jérôme: split commits, reword the commit log]

Co-authored-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
Signed-off-by: Rahul Gurram <rahul.gurram@silabs.com>
2025-10-02 14:18:53 +02:00
Chun-Chieh Li
ace1371146 samples: tflite_ethosu: support numaker_m55m1
This supports nuvoton numaker_m55m1 board, including.

Besides, re-organize for new target and Ethos-U support, including:
1. Keep only one model originally for MPS3 target
2. Add guide to regenerate Vela-compiled model for targets supporting
   Ethos-U
3. Support running non-Vela-compiled model for targets supporting no
   Ethos-U

Signed-off-by: Chun-Chieh Li <ccli8@nuvoton.com>
2025-10-02 15:15:49 +03:00
Chun-Chieh Li
9f58227bf1 samples: tflite_ethosu: fix unsafe thread stack allocation
It is unsafe to pass raw buffer as thread stack. Instead, use canonical
K_THREAD_STACK_DEFINE or friends to define thread stack.

Signed-off-by: Chun-Chieh Li <ccli8@nuvoton.com>
2025-10-02 15:15:49 +03:00
Peter van der Perk
dd9eb37ad9 include: arch: arm: cortex_m: Move ITCM before .text
Reordered ITCM section to appear before .text in the ARM Cortex-M linker
script.

This allows functions placed in ITCM via *(.text.<function_name>) using
snippets-itcm-section.ld to avoid being absorbed into the default .text
section, enabling more flexible code placement.

Signed-off-by: Peter van der Perk <peter.vanderperk@nxp.com>
2025-10-02 15:15:28 +03:00
Emil Gydesen
c63ec6b5b0 tests: Bluetooth: Audio: Fix uninitalized value
copy may be uninitialzed in the default case, which causes some
compiler warnings/errors when returned and used.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-10-02 15:15:17 +03:00
Jeppe Odgaard
5eed3a9c92 drivers: sensor: explorir_m: fix variable mix-up
Fix the mix‑up between `filtered` and `scaling` in
`explorir_m_buffer_process()`.

Signed-off-by: Jeppe Odgaard <jeppe.odgaard@prevas.dk>
2025-10-02 15:15:06 +03:00
Piotr Kosycarz
e3a3fca7fa boards: nordic: nrf54h20dk: fix flashing for xip variants
Make sure operations are groupped when using ppr/xip and flpr/xip.

Signed-off-by: Piotr Kosycarz <piotr.kosycarz@nordicsemi.no>
2025-10-02 15:14:55 +03:00
Tim Pambor
9041793ccb Revert "ztest: Add validation of zassert strings"
This reverts commit ef73155f96.

Signed-off-by: Tim Pambor <tim.pambor@codewrights.de>
2025-10-02 15:14:45 +03:00
Lin Yu-Cheng
2d72d86ba2 serial: rts5912: implement power management
support uart wake up function

Signed-off-by: Lin Yu-Cheng <lin_yu_cheng@realtek.com>
2025-10-02 11:47:32 +03:00
Lin Yu-Cheng
3372459e28 serial: uart_ns16550: add uart_ns16550_get_port() function
For user to get the register address of the device by this function

Signed-off-by: Lin Yu-Cheng <lin_yu_cheng@realtek.com>
2025-10-02 11:47:32 +03:00
Lin Yu-Cheng
5bca3095ac gpio: rts5912: implement power management
support gpio wake up function.
change init stage from POST_KERNEL to PRE_KERNEL_1
because uart wrap init need to use the gpio functions.

Signed-off-by: Lin Yu-Cheng <lin_yu_cheng@realtek.com>
2025-10-02 11:47:32 +03:00
Lin Yu-Cheng
75c4be1f51 soc: realtek: ec: Implement power saving
Impelment RTS5912 power saving (heavy sleep)
Remove the power state of "suspend_to_ram"

Signed-off-by: Lin Yu-Cheng <lin_yu_cheng@realtek.com>
2025-10-02 11:47:32 +03:00
Lin Yu-Cheng
83e350b5a0 sensor: rts5912: reduce Tachometer wake up frequency
Adjusted RTS5912 tachometer behavior to reduce interference with CPU sleep.

Signed-off-by: Lin Yu-Cheng <lin_yu_cheng@realtek.com>
2025-10-02 11:47:12 +03:00
Tim Pambor
e2138150ca tests: ram_context_for_isr: fix format specifier for addresses
Use %lx for printing addresses (uintptr_t) instead of %x.

Signed-off-by: Tim Pambor <tim.pambor@codewrights.de>
2025-10-02 11:47:01 +03:00
Tim Pambor
5b016159e7 tests: zdsp: Correct format specifier in assert_strings
strlen returns size_t, not int. Fix the format specifier to avoid warnings
when building with -Wformat.

Signed-off-by: Tim Pambor <tim.pambor@codewrights.de>
2025-10-02 11:47:01 +03:00
Tim Pambor
ef73155f96 ztest: Add validation of zassert strings
Add __printf_like attribute to ztest assertion functions
zassert, zassume, zexpect to validate format strings and arguments
at compile time.

Signed-off-by: Tim Pambor <tim.pambor@codewrights.de>
2025-10-02 11:47:01 +03:00
Tomasz Chyrowicz
e3c5bdfa02 boards: Add secondary_app_partition alias
Add secondary_app_partition aliases.
Those aliases can be used to configure the code partition for the
second copy of the FW in the Direct XIP update scenarios.

Signed-off-by: Tomasz Chyrowicz <tomasz.chyrowicz@nordicsemi.no>
2025-10-02 11:46:41 +03:00
Peter Johanson
f89c00441a soc: raspberrypi: rpi_pico: Add RP2 bootloader support
Add an early init hook to check the boot mode and reset into the RP2 USB
bootloader if requested. Includes a snippet to use with any RP2040/RP2350
board to enable the necessary DTS/Kconfig to use the functionality, and
easy DTS includes for boards to use explicitly.

Signed-off-by: Peter Johanson <peter@peterjohanson.com>
2025-10-02 11:46:31 +03:00
Chris Friedt
6c01157fef kernel: dynamic: update storage size for pool of dynamic thread stacks
Commit 5c5e17f introduced a subtle regression when userspace was
configured on architectures requiring guard pages.

Prior to 5c5e17f, the assumption was that guard pages would be included in
`CONFIG_DYNAMIC_THREAD_STACK_SIZE`, and that was something that the caller
of `k_thread_stack_alloc()` would need to be aware of, although it was not
documented at all, unfortunately.

It seems that 5c5e17f intended to remove the need for that assumption, but
the necessary conditions for doing so had not been met.

Update pool storage size to account for guard pages, which ensures that
users can access every byte of `CONFIG_DYNAMIC_THREAD_STACK_SIZE` rather
than needing to be aware that guard pages would be included in the
requested size.

The compromise is a more intuitive API at the cost of more storage space
for the pool of thread stacks when userspace is enabled.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-10-02 11:46:22 +03:00
Andreas Schweigstill
4c221ac3cf drivers: disk: sdmmc_stm32: fix compilation error for SDMMC_STM32_EMMC
Compilation fails if CONFIG_SDMMC_STM32_EMMC is set. This bugfix
adds #ifdef ... #endif pairs for unused static functions and
a call to stm32_sdmmc_card_detect_uninit().

Signed-off-by: Andreas Schweigstill <andreas@schweigstill.de>
2025-10-02 09:32:03 +02:00
Michael Zimmermann
f07f0d288e net: mqtt_sn: Implement updating will topic and message
Since the protocol doesn't have message IDs in the responses to these
update messages, there's no reliable way to know, if an update succeeded or
not. I use that fact to simplify the implementation by:
- Not providing success/failure callbacks.
- Not handling updating the variables in the client struct while
  an update is in progess.

In addition to adding some tests, I tested this with the emqx server.

Signed-off-by: Michael Zimmermann <michael.zimmermann@sevenlab.de>
2025-10-02 09:31:53 +02:00
Alain Volmat
d4fddc2a74 shields: st_stm32f4dis_cam: add a stm32h747i_disco//m7 overlay
Add an overlay allowing to use the stm32f4dis_cam shield on the
stm32h747i_disco board.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-10-02 09:31:36 +02:00
Alain Volmat
04c1bf6424 shields: weact_ov2640_cam_module: use MCO macro from stm32 bindings
Switch to the usage of MCO configuration macros provided by
stm32h7_clock.h clock bindings.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-10-02 09:31:36 +02:00
Alain Volmat
23bb046905 shields: st_stm32f4dis_cam: add stm32l4r9i_disco specific overlay
Move the selection of the dma channel and the sensor input clock into
a board specific overlay since this differ from a board to another.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-10-02 09:31:36 +02:00
Alain Volmat
c4285ef4b9 shields: st_b_cams_omv_mb1683: remove i2c/dcmi/dmamux nodes from overlay
The i2c bus configuration and dcmi pins alternate function settings are
already done within the board dts since this is fixed for each board
so remove then from the shield overlay.
The dmamux node enabling is also removed since currently the DCMI/DMA
cannot rely on dmamux.

In the shield main overlay file, ensure that the i2c bus is properly
enabled.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-10-02 09:31:36 +02:00
Alain Volmat
5006c834c0 boards: st: stm32h7b3i_dk: add dcmi pinctrl and remove duplicated i2c4
The pin alternate function settings are boards related so configure
the dcmi pinctrl within the board dts file in order to remove them
from the shield board specific overlay.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-10-02 09:31:36 +02:00
Alain Volmat
2c131a62a9 boards: st: stm32h747i_disco: add camera support
Add connector, i2c and dcmi labels and pinctrl in order to allow
usage of a camera module shield with this the stm32h747i_disco board.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-10-02 09:31:36 +02:00
Alain Volmat
c2da6dea40 include: zephyr: dt-bindings: clock: h7: add MCO SEL/PRE macros
Add macros in order to select the MCO input clock and prescaler
value.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-10-02 09:31:36 +02:00
Alain Volmat
6b13cc8666 include: zephyr: dt-bindings: clock: l4: add MCO SEL/PRE macros
Add macros in order to select the MCO input clock and prescaler
value.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-10-02 09:31:36 +02:00
Alain Volmat
e94495700f dma: stm32: removal of unused stm32_dma_config_channel_function
Function stm32_dma_config_channel_function is unused hence remove it
from headers and dma_stm32_v1. In case of dma_stm32_v1, the related
configuration is already part of the LL_DMA_Init call done in
another place in dma_stm32.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-10-02 09:31:36 +02:00
Alain Volmat
a09fc068ea dma: stm32: dma_stm32_slot_to_channel is only applicable on STM32Fx
The dma_stm32_slot_to_channel function is only applicable on the
STM32Fx series since the LL_DMA_CHANNEL_x macros only exist for those
platforms among the one based on st,stm32-dma-v1.
While checking for !defined(CONFIG_DMAMUX_STM32) is ok to enable this
on STM32Fx, it prevents to disable dmamux on other platforms since
required symbols do not exist.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-10-02 09:31:36 +02:00
Alain Volmat
002d9542d7 dts: st: l4: fix dcmi dma stream id
Channel ID should be numbered starting from 1.
Correct the dma properties of dcmi devices in L4 series
and use dma1 by default to make it same for all L4 series.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-10-02 09:31:36 +02:00
Hieu Nguyen
c6bbf4d51c tests: counter: Handle zero tick_us for very short timer ticks
Ensure tick_us is at least 1 for very short timer ticks

Signed-off-by: Hieu Nguyen <hieu.nguyen.ym@bp.renesas.com>
Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
2025-10-02 09:31:28 +02:00
Hieu Nguyen
34d863a072 samples: drivers: counter: Add Counter support for Renesas RZ/V2L, A3UL
Add Counter sample support for Renesas RZ/V2L-SMARC, RZ/A3UL-SMARC

Signed-off-by: Hieu Nguyen <hieu.nguyen.ym@bp.renesas.com>
Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
2025-10-02 09:31:28 +02:00
Hieu Nguyen
2854797a79 tests: drivers: counter: Add Counter support for Renesas RZ/V2L, A3UL
Add Counter test support for Renesas RZ/V2L-SMARC, RZ/A3UL-SMARC

Signed-off-by: Hieu Nguyen <hieu.nguyen.ym@bp.renesas.com>
Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
2025-10-02 09:31:28 +02:00
Hieu Nguyen
05fd05d29b boards: renesas: Add Counter support for Renesas RZ/V2L, A3UL
Add Counter support for board Renesas RZ/V2L-SMARC, RZ/A3UL-SMARC

Signed-off-by: Hieu Nguyen <hieu.nguyen.ym@bp.renesas.com>
Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
2025-10-02 09:31:28 +02:00
Hieu Nguyen
34d764ea11 dts: renesas: Add Counter support for Renesas RZ/V2L, A3UL
Add GTM nodes to Renesas RZ/V2L, A3UL

Signed-off-by: Hieu Nguyen <hieu.nguyen.ym@bp.renesas.com>
Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>

temp

Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
2025-10-02 09:31:28 +02:00
Hieu Nguyen
424a12446f drivers: counter: Add Counter support for Renesas RZV2L, A3UL
Add Counter driver support for Renesas RZ/V2L, A3UL

Signed-off-by: Hieu Nguyen <hieu.nguyen.ym@bp.renesas.com>
Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>

drivers: counter: Improve ISR Prototype for Renesas RZ
2025-10-02 09:31:28 +02:00
Xiaolu Sun
0ab40913c2 drivers: i2c_sedi: add API to retrieve current configuration
Introduced a API to get the current I2C configuration.
Facilitates runtime inspection of I2C settings.
Useful for debugging and dynamic configuration changes.

Signed-off-by: Xiaolu Sun <xiaolu.sun@intel.com>
2025-10-01 20:24:23 -04:00
Benjamin Cabé
0a9c7634a0 ci: workflows: doc: use self-hosted runner
Running full documentation build on GH hosted runners is not really
working for us anymore as we run out of disk space.
Switch (back) to our self-hosted runners.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-10-01 20:23:51 -04:00
Benjamin Cabé
fea720c51f doc: requirements: regen pinned dependencies
Run uv pip compile to get fresh snapshots of the pinned dependencies.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-10-01 20:23:51 -04:00
Benjamin Cabé
27330f6f02 scripts: requirements-actions: regen pinned dependencies
Run uv pip compile to get fresh snapshots of the pinned dependencies.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-10-01 20:23:51 -04:00
Jeppe Odgaard
bbe4a064c8 tests: drivers: build_all: sensor: add omron d6f
Add Omron D6F to sensor build_all test.

Signed-off-by: Jeppe Odgaard <jeppe.odgaard@prevas.dk>
2025-10-01 17:14:28 -04:00
Jeppe Odgaard
29d01736d8 drivers: sensor: omron: add d6f driver
Add support for Omron D6F mass flow rate sensor series. The sensor series
outputs an analogue voltage which is read using an ADC.

Signed-off-by: Jeppe Odgaard <jeppe.odgaard@prevas.dk>
2025-10-01 17:14:28 -04:00
Jeppe Odgaard
50015354d6 dts: bindings: vendor-prefixes: Add omron prefix
Add OMRON vendor prefix.

Signed-off-by: Jeppe Odgaard <jeppe.odgaard@prevas.dk>
2025-10-01 17:14:28 -04:00
Jeppe Odgaard
f8a952f2fe include: drivers: sensor: add flow rate channel
Add flow rate to `enum sensor_channel` in litres per minute.

The SI unit for flow rate is cubic metres per second. Due to a sensor value
resolution of 1/100000 this unit is not granular enough for low flow rate
sensors.

Signed-off-by: Jeppe Odgaard <jeppe.odgaard@prevas.dk>
2025-10-01 17:14:28 -04:00
Rex Chen
e8e4d2159e mcux: wifi_nxp: Enable IMU IRQ after event initialized
After running 'kernel reboot' cmd on coex application,
zephyr os clean bss section, IMU13 IRQ event data set as 0,
then CPU3 receive IMU13 IRQ from CPU1, need access IMU13 IRQ event,
cause hang.
Put enable IMU13 IRQ operation after related task and event created
to fix this issue.

Signed-off-by: Rex Chen <rex.chen_1@nxp.com>
2025-10-01 17:14:15 -04:00
Cla Mattia Galliard
4925e3a221 drivers: sensor: voltage_divider: Use k_timepoint_t for absolute time
Use k_timepoint_t instead of k_timeout_t for absolute time to avoid
ambiguity and ensure the code works even when CONFIG_TIMEOUT_64BIT=n.

Signed-off-by: Cla Mattia Galliard <clamattia@gmail.com>
2025-10-01 17:13:59 -04:00
Alexander Lay
b4d5cd3c47 tests: drivers: pwm: pwm_api: Add Kconfig options for test values
Add Kconfig options for default period/pulse values and port to
remove platform/vendor specific preprocessor conditionals.

Signed-off-by: Alexander Lay <alexanderlay@tenstorrent.com>
2025-10-01 17:13:17 -04:00
Alexander Lay
3855d1809f tests: drivers: pwm: pwm_api: Add pwm-test alias for pwm device node
Introduce a common pwm-test alias for pwm device nodes to remove
platform/vendor specific preprocessor conditionals.

Signed-off-by: Alexander Lay <alexanderlay@tenstorrent.com>
2025-10-01 17:13:17 -04:00
Fabian Blatz
a6500f1c48 drivers: sensor: voltage-divider: Add skip-calibration property
Adds a skip-calibration property to the voltage divider sensor,
which can be enabled, in case the underlying ADC driver
does not support calibration.

Signed-off-by: Fabian Blatz <fabianblatz@gmail.com>
2025-10-01 17:13:05 -04:00
Seppo Takalo
0025751414 modem: cmux: Rework the drop handling
Do not read extra byte when we decide to drop a frame.
Instead go directly to MODEM_CMUX_RECEIVE_STATE_SOF, so the next
flag character will start a new frame.

Signed-off-by: Seppo Takalo <seppo.takalo@nordicsemi.no>
2025-10-01 17:12:50 -04:00
Vlad Kulikov
2d151b22c1 lib: smf: remove unreachable case in get_lca_of()
smf_set_state() excludes ancestor/descendant relations before calling
get_lca_of(). The function now walks from source->parent and returns
the first ancestor that contains dest. The 'ancestor == dest' case
was unreachable and is removed.

No functional change intended.

Ref: RFC #95952
Signed-off-by: Vlad Kulikov <vlad_kulikov_c@pm.me>
2025-10-01 17:12:38 -04:00
Guennadi Liakhovetski
ca641d8410 llext: only build fs_loader.c if file-systems are enabled
No need to build fs_loader.c if CONFIG_FILE_SYSTEM=n.

Signed-off-by: Guennadi Liakhovetski <guennadi.liakhovetski@linux.intel.com>
2025-10-01 17:12:22 -04:00
Krzysztof Chruściński
7a6c7ea0f9 drivers: serial: nrfx_uarte: Remove redundant pinctrl call
Pinctrl call is redundant as uarte_periph_enable calls it as well.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-10-01 17:12:09 -04:00
Robert Lubos
e8548e697a net: sockets: Reserve a default heap space for getaddrinfo
Add a default heap reservation for gettaddrinfo(), enough for a single
function call in a default configuration on 64-bit platform.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-10-01 17:11:58 -04:00
Fabrice DJIATSA
fd8035e4f7 drivers: clock_control: stm32: replace pllsai1m with pllsaim
update the function name in driver since pllsai1m was changed
to pllsaim in clock_stm32_ll_common.h.

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2025-10-01 17:11:38 -04:00
Declan Snyder
e8a51e0830 MAINTAINERS: Add op amp maintainers
Add opamp driver class maintainers

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-10-01 17:11:25 -04:00
Chris Friedt
3b44da641e tests: posix: temporarily exclude two platforms failing in CI
Two platforms are failing posix tests. One is a known issue with a fix in
review (mps2/an385 userspace), and the other is an issue with
qemu_arc/qemu_arc_hs5x encountering an invalid instruction and crashing.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-10-01 17:10:05 -04:00
Tomasz Moń
6bb4cb592a samples: usb: uac2: explicit: Fix SOF offset integer conversion glitch
Rework the formula used to convert timer CC values to SOF offset to
eliminate a "division glitch" happening around SOF crossing, i.e. when
the framestart shifts from being captured shortly before SOF to being
captured shortly after SOF.

When audio samples are consumed faster than nominal, i.e. when there
is +1 samples every now and then, the reported SOF offset at High-Speed
was going 10, 9, 8, 7, 6, 5, 4, 3, 2, 1, 0, "glitch" 7, 6, 5, 4, 3, 2,
1, 0, -1, -2, ...

With the fix the SOF offset goes as expected from 0 to -1, i.e. there is
no jump from 0 to 7 around the SOF crossing and the reported SOF offset
goes linearly (until it is correclty bumped from negative values back to
positive values when +1 sample packet is transmitted on I2S).

Signed-off-by: Tomasz Moń <tomasz.mon@nordicsemi.no>
2025-10-01 17:21:48 +03:00
Tomasz Moń
ff50dfb002 samples: usb: uac2: Support High-Speed operation
Allow the samples to work both at Full-Speed and High-Speed exposing the
same capabilities at both speeds.

Signed-off-by: Tomasz Moń <tomasz.mon@nordicsemi.no>
2025-10-01 17:21:48 +03:00
Sebastian Głąb
ba8b36c8a1 boards: nordic: nrf54h20dk: Add SPI to supported features on PPR XIP
Enable Twister tests that depend on SPI feature
on nrf54h20dk/nrf54h20/cpuppr/xip target.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
2025-10-01 17:21:37 +03:00
Sebastian Głąb
bc2c95c8f0 tests: drivers: spi: spi_error_cases: Extend platform_allow list
Add Radio core and PPR core on nrf54h20 DK to platform_allow list.
Required overlays are already present.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
2025-10-01 17:21:37 +03:00
Sebastian Głąb
6d76a71fa2 tests: drivers: spi: spi_loopback: Run test on nrf54h20 PPR XIP
The spi_loopback test requires more RAM than is avilable
on nrf54h20dk/nrf54h20/cpuppr target.

Meanwhile, test fits in Execute In Place (XIP) variant
of the PPR target.

Switch spi_loopback test to nrf54h20 PPR XIP target.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
2025-10-01 17:21:37 +03:00
Tomasz Moń
c180420477 drivers: udc_dwc2: Fix memory leak on subsequent bus resets
Do not queue new buffer after bus reset if there is one already queued.
This fixes memory leak on each bus reset if there are no SETUP transfers
received between resets.

Signed-off-by: Tomasz Moń <tomasz.mon@nordicsemi.no>
2025-10-01 17:21:18 +03:00
Marek Matej
134042c014 tests,samples: boards: espressif: add missing psram0 node
Add missing psram0 node which is used to determine the memory size.

Signed-off-by: Marek Matej <marek.matej@espressif.com>
2025-10-01 17:21:07 +03:00
Marek Matej
2948bc79e5 boards: espressif: esp32s3: No PSRAM in default board
Reverting changes from the `b0aa0c7571fa587d5a0df8edd114377aba24da51`,
as boards can be populated with variety of PSRAM and sizes. Leaving the
configuration up to user code and/or to provided snippets.

Signed-off-by: Marek Matej <marek.matej@espressif.com>
2025-10-01 17:21:07 +03:00
Pieter De Gendt
8d94c3b091 drivers: wifi: nrf_wifi: Set device config pointer to NULL
Commit https://github.com/zephyrproject-rtos/hostap/commit/2de30ff7822bb
moved the driver ops from the config pointer to the API. As the config
pointer isn't used, set it to NULL and allow future updates to actually add
a configuration struct.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-10-01 17:20:52 +03:00
Johan Hedberg
ca1ee72236 drivers: Fix deprecated SPI_DT_SPEC_INST_GET usage
This macro doesn't accept a delay parameter anymore (well, it does, but
it's deprecated and will trigger build warnings). Just remove it from the
places that were still passing it.

Signed-off-by: Johan Hedberg <johan.hedberg@silabs.com>
2025-10-01 17:20:41 +03:00
Johan Hedberg
0dfef14890 include: drivers: spi.h: Fix deprecation support for SPI_DT_IODEV_DEFINE
Commit a60f93d742 removed the delay parameter
from various SPI macros, but aimed to retain a clean migration path by
throwing a deprecation warning when the parameter is still passed. However,
the commit failed to have this feature included in the SPI_DT_IODEV_DEFINE
macro. This commit should fix the issue.

Signed-off-by: Johan Hedberg <johan.hedberg@silabs.com>
2025-10-01 17:20:41 +03:00
Johan Hedberg
e3f3b6dca6 drivers: sensor: Fix deprecated SPI_DT_IODEV_DEFINE usage
The delay parameter was removed from this macro, so don't pass it.

Signed-off-by: Johan Hedberg <johan.hedberg@silabs.com>
2025-10-01 17:20:41 +03:00
Declan Snyder
48a9b04885 tests: spi_loopback: Add timing params to RT1050 overlay
Tested case of using these new properties

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-10-01 14:39:36 +03:00
Declan Snyder
82b882faa4 drivers: spi: nxp_lpspi: Use spi_config timing params
Use the timing params from spi_config that are specific to the slave
instead of using the same timing for the controller for all slaves.
Remove these properties from the LPSPI DT binding.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-10-01 14:39:36 +03:00
Declan Snyder
1154c96459 include: drivers: spi.h: Get params from DT
- Get bit ordering from DT property in SPI_CONFIG_DT.
  More precisely, set LSB first if set in DT.

- Get CS polarity from DT property in SPI_CONFIG_DT.

- Add inter-word delay parameter to spi_config struct. If value is 0, the
  value will be half of the period.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-10-01 14:39:36 +03:00
Declan Snyder
570b445a61 drivers: Convert to use SPI macro without delay parameters
Convert all drivers and other consumers to use SPI macros without the
delay parameters.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-10-01 14:39:36 +03:00
Declan Snyder
a60f93d742 include: drivers: spi.h: Get CS delay parameters from DT
The CS delay parameter did not make a distinction between the setup and
hold time of the CS, and also did not specify very fine control which
can be done usually by a native controller CS. So use the new nanosecond
DT properties to get the delay values and make distinction.

Add deprecation warning if consumer supplies the delay parameter and
make it still work the old way in that case for backward compatibility
following API lifecycle process.

Update driver API version to 1.1.0 due to this change

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-10-01 14:39:36 +03:00
Declan Snyder
186ce62171 dts: bindings: spi-device: Add parameters for spi peripherals
Add spi parameters for spi peripherals to spi-device.yaml.

These properties and their names are mostly inspired by linux
spi-peripheral-props.yaml.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-10-01 14:39:36 +03:00
Bartosz Miller
bee81df035 tests: drivers: flash: Test newly introduced MSPI driver features
These features are:
- soft reset
- 4B addressing (SPI mode)
- supply gpios

Signed-off-by: Bartosz Miller <bartosz.miller@nordicsemi.no>
2025-10-01 14:39:02 +03:00
Fabrice DJIATSA
07809ad6b2 boards: st: nucleo_h753zi: update nucleo_h753zi.yaml
Add support for the RTC, WATCHDOG, and DMA peripherals.
These are required for the DMA and RTC, WATCHDOG test drivers.

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2025-10-01 14:38:52 +03:00
Fabrice DJIATSA
f749b77e36 tests: drivers: watchdog: wdt_basic_api: add support for nucleo_h753zi
- add watchdog0 node alias
- remove redundant nucleo_h753zi

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2025-10-01 14:38:52 +03:00
Fabrice DJIATSA
6e0efe365a tests: drivers: uart: uart_basic_api: add support for nucleo_h753zi
- add .overlay with appropriate configurations for
  nucleo_h753zi
- update testcase.yaml file for CI testing

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2025-10-01 14:38:52 +03:00
Fabrice DJIATSA
f84d4d5ce0 tests: drivers: uart: uart_async_api: add support for nucleo_h753zi
- add .conf and .overlay with appropriate configurations for
      nucleo_h753zi
- update testcase.yaml file for CI testing

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2025-10-01 14:38:52 +03:00
Fabrice DJIATSA
9067290a4c tests: drivers: rtc: rtc_api: add support for nucleo_h753zi
add .conf and .overlay with appropriate configurations for
nucleo_h753zi.

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2025-10-01 14:38:52 +03:00
Fabrice DJIATSA
9444db8001 tests: drivers: pwm: pwm_loopback: add support for nucleo_h753zi
add overlay with appropriate configuration for nucleo_h753zi

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2025-10-01 14:38:52 +03:00
Fabrice DJIATSA
e0c7679808 tests: drivers: pwm: pwm_api: add support for nucleo_h753zi
add .overlay file with timers1 node configuration.

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2025-10-01 14:38:52 +03:00
Fabrice DJIATSA
683d597e3a tests: drivers: i2c_target_api: boards: add support for nucleo_h753zi
- enable i2c2 node in dts
- add .conf and .overlay with appropriate configurations for
  nucleo_h753zi.
- update testcase.yaml file for CI testing

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2025-10-01 14:38:52 +03:00
Fabrice DJIATSA
17558ee9c3 tests: drivers: flash: stm32: update testcase.yaml
Add nucleo_h753zi as an allowed platform to run this
test in CI.

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2025-10-01 14:38:52 +03:00
Fabrice DJIATSA
38771d2009 tests: drivers: dma: loop_transfer: add support for nucleo_h753zi
add .conf and .overlay files with appropriate configurations for
nucleo_h753zi.

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2025-10-01 14:38:52 +03:00
Fabrice DJIATSA
d8edc0731c tests: drivers: dma: chan_blen_transfer: add support for nucleo_h753zi
add .conf and .overlay files with appropriate configurations for
nucleo_h753zi.

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2025-10-01 14:38:52 +03:00
Fabrice DJIATSA
0a712d801c tests: drivers: dac: dac_api: add support for nucleo_h753zi
Add the CONFIG_BOARD_NUCLEO_H753ZI symbol to enable running
tests on the NUCLEO_H753ZI board.

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2025-10-01 14:38:52 +03:00
Fabrice DJIATSA
492d978003 tests: drivers: counter: counter_basic_api: boards: add nucleo_h753zi board
Add various timer nodes to enable the test to run
successfully.

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2025-10-01 14:38:52 +03:00
Fabrice DJIATSA
e45786d590 tests: drivers: stm32_clock_configuration: allow nucleo_h753zi to run in CI
enable sample to run in CI on nucleo_h753zi.

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2025-10-01 14:38:52 +03:00
Fabrice DJIATSA
51af2d7f6c tests: drivers: adc: adc_api: allow nucleo_h753zi to run in CI
- add .conf and .overlay files with appropriate configurations
for nucleo_h753zi.
- enable sample to run in CI on nucleo_h753zi.

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2025-10-01 14:38:52 +03:00
Fabrice DJIATSA
0336457f16 samples: net: allow nucleo_h753zi to run in CI
enable sample to run in CI on nucleo_h753zi.

related sample: ptp and zperf

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2025-10-01 14:38:52 +03:00
Fabrice DJIATSA
75e90e5a9f samples: drivers: watchdog: allow nucleo_h753zi to run in CI
- enable sample to run in CI on nucleo_h753zi.

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2025-10-01 14:38:52 +03:00
Fabrice DJIATSA
f37f3fd6fd samples: drivers: adc: adc_dt: allow nucleo_h753zi to run in CI
enable sample to run in CI on nucleo_h753zi.

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2025-10-01 14:38:52 +03:00
Fabrice DJIATSA
b1156d0bf4 tests: drivers: add nucleo_h753zi as integration platform
remove nucleo_h743zi from integration_platform and replace
with nucleo_h753zi.

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2025-10-01 14:38:52 +03:00
Fabrice DJIATSA
faa9918c69 boards: st: nucleo_h743zi: doc: add notice about board obsolescence
Important note to users about the obsolescence of NUCLEO_H743ZI.

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2025-10-01 14:38:52 +03:00
Andrzej Głąbek
ca79733388 drivers: pinctrl_nrf: Add support for SPIM CSN pin function
Certain SPIM instances in nRF52/53/54L/54H Series provide hardware
control of the CSN (chip select) line. Although the standard SPI
drivers do not use this feature, it should be possible to configure
this line through pinctrl in case some special driver needs this.

Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
2025-10-01 14:37:46 +03:00
cyliang tw
8e07c77ef8 soc: nuvoton: numicro: Disable m48x SPIM cache
By disabling m48x SPIM cache by default, the SRAM size increases
by 32 KB to a total of 160 KB.

Signed-off-by: cyliang tw <cyliang@nuvoton.com>
2025-10-01 14:37:26 +03:00
Khaoula Bidani
4021dd30e4 soc: stm32g0: Add configurable FLASH prefetch option for G0B0/G0B1/G0C1
Default disable flash prefetch on G0Bx/G0C1 to prevent issues
described by errata ES0548 2.2.10. Project can still enable
the config if applicable.

Signed-off-by: Khaoula Bidani <khaoula.bidani-ext@st.com>
2025-10-01 14:37:06 +03:00
Chris Friedt
5cbb2a421d posix: switch to using posix_time.h and posix_signal.h
To avoid conflicts between the C library's `time.h` and signal.h use an
"override" header (when necessary) for C libraries that do not themselves
provide POSIX definitions in `time.h` or `signal.h`.

V2

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-10-01 14:36:55 +03:00
Chris Friedt
882ee96186 manifest: update hostap module to correct time.h and signal.h paths
Update the hostap module to use non-prefixed paths for the ISO C time.h
and signal.h headers.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-10-01 14:36:55 +03:00
Chris Friedt
2feea755b3 posix: headers: create a more conformant posix_signal.h
Create a header for satisfying POSIX conformance requirements of signal.h
that is named posix_signal.h rather than signal.h.

The primary reason for doing so, is that the de-facto owner of signal.h is
the C library.

This new header only defines required POSIX symbols that form a strict
superset over the ISO C signal.h symbols.

V2

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-10-01 14:36:55 +03:00
Chris Friedt
5db2b58a21 posix: headers: create a more conformant posix_time.h
Create a header for satisfying POSIX conformance requirements of time.h
that is named posix_time.h rather than time.h.

The primary reason for doing so, is that the de-facto owner of time.h is
the C library.

This new header only defines required POSIX symbols that form a strict
superset over the ISO C time.h symbols.

V2

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-10-01 14:36:55 +03:00
Chris Friedt
9b9e834890 tests: net: wifi: configs: add posix tag, since there is a dependency
Assuming that the `posix` tag will trigger `posix` tests to be run
when this testsuite is changed.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-10-01 14:36:55 +03:00
Sebastian Głąb
745fd00517 samples: drivers: spi_bitbang: Enable sample on nrf54h20 PPR core
Add overlay required to run the sample on
nrf54h20dk/nrf54h20/cpuppr.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
2025-10-01 14:36:33 +03:00
Jamie McCrae
799d3cf6f8 dts: arm: nordic: Remove superfluous compatible strings
Removes compatible strings that were not defined and are not needed

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-10-01 14:36:23 +03:00
Jamie McCrae
3b48275f2b boards: nordic: nrf54l15dk: Fix cpuflpr SRAM address
Fixes the address of this peripheral

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-10-01 14:36:23 +03:00
Jamie McCrae
e6c2a82f26 dts: vendor: nordic: Add missing reg parameters
Adds missing reg parameters to DTS nodes

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-10-01 14:36:23 +03:00
Krzysztof Chruściński
767c21a217 drivers: power_domain: nrf_gpio_pad_group: Fix DT macro
DT_PROP_OR instead of DT_INST_PROP_OR was used and property from
device tree was never used.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-10-01 14:36:11 +03:00
Philipp Finke
5d05c4bcc6 sys: timeutil: Replaced pointer to rvalues
Replaced all pointer to rvalues used for the second parameter in calls of
timespec_compare() within function timespec_to_timeout(). This might be
legal syntax in C, but leads to compile errors when timeutil.h is included
and compiled in a C++ compilation unit.

Signed-off-by: Philipp Finke <philipp.finke@sick.de>
2025-10-01 14:36:00 +03:00
Rubin Gerritsen
05b77ece23 soc: nordic: nrf54h: s2ram: Support disabled MPU
This commit adds support using pm_s2ram for 54H when the
MPU is disabled. This is the case for the out of tree
sample `sdk-nrf/samples/nrf54h/empty_app_core`.

Without this commit the linker will fail to link
`z_arm_mpu_init` and `z_arm_configure_static_mpu_regions`.

Signed-off-by: Rubin Gerritsen <rubin.gerritsen@nordicsemi.no>
2025-10-01 08:29:01 +02:00
Chris Friedt
5dd3bd52c5 drivers: serial: pl011: only declare ambiq pm action when used
The conditions needed to declare `uart_ambiq_pm_action()` in
`uart_pl011_ambiq.h` and the conditions needed to use it in `uart_pl011.c`
differed, which would result in a warning promoted to error during
weekly CI runs.

Ensure that the conditions match to remove the warning / error.

```cpp
if defined(CONFIG_SOC_SERIES_APOLLO3X) || \
  defined(CONFIG_SOC_SERIES_APOLLO5X)
```

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-10-01 08:27:59 +02:00
Ashirwad Paswan
21da2d056d Bluetooth: Controller: Fix missing null pointer check
Added a check for null pointer in ull_sync_iso.c file
to avoid potential crashes.

Fixes: #81997

Signed-off-by: Ashirwad Paswan <ashi06712@gmail.com>
2025-10-01 08:27:33 +02:00
Ayush Singh
eac11753fc drivers: sensor: ti: ti-hdc20xx: Fix sensor define
- Since ti-hdc20xx is a sensor, it should use SENSOR_DEVICE_* macro for
  definition.
- Allows it to work with sensor_shell properly.

Signed-off-by: Ayush Singh <ayush@beagleboard.org>
2025-10-01 08:26:32 +02:00
Jonas Berg
baef45f975 boards: Add Waveshare RP2040-GEEK board
Tested with the commands mentioned on the index.rst page.

The product photo is from
https://www.waveshare.com/img/devkit/RP2040-GEEK/RP2040-GEEK-details-13.jpgy

Signed-off-by: Jonas Berg <jonas.s.t.berg@gmail.com>
2025-10-01 08:26:15 +02:00
Jonas Berg
730a1f6d4c boards: Add Waveshare RP2040-Keyboard-3 development board
Tested with the commands mentioned in the index.rst page.

Signed-off-by: Jonas Berg <jonas.s.t.berg@gmail.com>
2025-10-01 08:26:04 +02:00
Jonas Berg
fbdd3bb645 boards: Add Adafruit Trinkey QT2040 board
Tested with the commands mentioned in the index.rst page.

Signed-off-by: Jonas Berg <jonas.s.t.berg@gmail.com>
2025-10-01 08:25:40 +02:00
Pisit Sawangvonganan
f05f886a70 drivers: adc: remove '&' when assigning adc_xxx_init
Remove address-of operator ('&') when assigning `adc_xxx_init`
function pointer in `DEVICE_DT_INST_DEFINE` and `DEVICE_DT_DEFINE` macro.

This change aims to maintain consistency among the drivers in
`drivers/adc`, ensuring that all function pointer assignments
follow the same pattern.

Signed-off-by: Pisit Sawangvonganan <pisit@ndrsolution.com>
2025-10-01 08:22:28 +02:00
TaiJu Wu
61bc4451f6 kernel: essential work queue should not stop
consider follow case
```
ZTEST(workqueue_api, test_k_work_queue_stop_sys_thread)
{
	size_t i;
	struct k_work work;
	struct k_work_q work_q = {0};
	struct k_work works[NUM_TEST_ITEMS];
	struct k_work_queue_config cfg = {
		.name = "test_work_q",
		.no_yield = true,
		.essential = true,
	};

	k_work_queue_start(&work_q, work_q_stack,
			   K_THREAD_STACK_SIZEOF(work_q_stack),
			   K_PRIO_PREEMPT(4), &cfg);

	zassert_true(k_work_queue_drain(&work_q, true) >= 0,
	    "Failed to drain & plug work queue");
	zassert_not_ok(k_work_queue_stop(&work_q, K_FOREVER),
	    "Failed to stop work queue");
}
```

If we allow stop essential work queue, system will panic.

Signed-off-by: TaiJu Wu <tjwu1217@gmail.com>
2025-10-01 08:21:56 +02:00
Emil Gydesen
7d8315574f Bluetooth: Host: Add note about recycled for BT_LE_ADV_OPT_CONN
When a connectable advertising set is stopped, the
preallocated connection object is free by calling
bt_conn_unref which triggers a call to the recycled
callback.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-10-01 08:20:54 +02:00
Charles Hardin
f06840221e net: dns: swallow packets that have no useful records in them
There are some poorly compliant mdns responders on the network
that will respond with zero counts on the answers and the additional
records (in addition to the qdcount). So, this removes the checks
in the unpack method since this is a "valid" DNS packet but the
logic is already partially handled in the dns_read code already.

An example packet can be seen in this decode

  0000   33 33 00 00 00 fb 9a f8 c3 0c 07 0b 86 dd 60 07   33............`.
  0010   c4 e4 00 14 11 ff fe 80 00 00 00 00 00 00 98 f8   ................
  0020   c3 ff fe 0c 07 0b ff 02 00 00 00 00 00 00 00 00   ................
  0030   00 00 00 00 00 fb 14 e9 14 e9 00 14 f1 64 00 00   .............d..
  0040   84 00 00 00 00 00 00 00 00 00                     ..........

  User Datagram Protocol, Src Port: 5353, Dst Port: 5353
    Source Port: 5353
    Destination Port: 5353
    Length: 20
    Checksum: 0xf164 [unverified]
    [Checksum Status: Unverified]
    [Stream index: 2]
    [Stream Packet Number: 1]
    [Timestamps]
    UDP payload (12 bytes)
  Multicast Domain Name System (response)
    Transaction ID: 0x0000
    Flags: 0x8400 Standard query response, No error
        1... .... .... .... = Response: Message is a response
        .000 0... .... .... = Opcode: Standard query (0)
        .... .1.. .... .... = Authoritative: Server is an authority
                              for domain
        .... ..0. .... .... = Truncated: Message is not truncated
        .... ...0 .... .... = Recursion desired: Don't do query recursively
        .... .... 0... .... = Recursion available: Server can't do
                              recursive queries
        .... .... .0.. .... = Z: reserved (0)
        .... .... ..0. .... = Answer authenticated: Answer/authority
                              portion was not authenticated by the server
        .... .... ...0 .... = Non-authenticated data: Unacceptable
        .... .... .... 0000 = Reply code: No error (0)
    Questions: 0
    Answer RRs: 0
    Authority RRs: 0
    Additional RRs: 0

Signed-off-by: Charles Hardin <ckhardin@gmail.com>
2025-10-01 08:20:34 +02:00
Lauren Murphy
d64e6260fa tests: adjust CONFIG_MAX_THREAD_BYTES for some
For these particular tests, many platforms require higher
CONFIG_MAX_THREAD_BYTES than the default 2, so guard
against failures by setting it high.

Signed-off-by: Lauren Murphy <lauren.murphy@intel.com>
2025-10-01 08:20:05 +02:00
Lauren Murphy
f29878089b tests: smp_suspend: run only on qemu, native and hardware
Control where the test runs.

Signed-off-by: Lauren Murphy <lauren.murphy@intel.com>
2025-10-01 08:20:05 +02:00
Lucien Zhao
97b31e426b boards: nxp: mimxrt1180_evk: update jlinkscript for cm33/cm7
- sync jlinkscript files from rt1180 mcux sdk

Signed-off-by: Lucien Zhao <lucien.zhao@nxp.com>
2025-10-01 08:17:25 +02:00
Tomas Galbicka
3cf2cc06dd soc: RT700 DSP Hifi4 enable cache handling
This commit adds cache handling for Hifi4 core on RT700.
Enable CACHE_MANAGEMENT and HAS_DCACHE.

Signed-off-by: Tomas Galbicka <tomas.galbicka@nxp.com>
2025-10-01 08:16:51 +02:00
Felix Wang
ca359b19b7 dts: nxp: Fix spi_bus_bridge warning
Rename node name to spi.

Signed-off-by: Felix Wang <fei.wang_3@nxp.com>
2025-10-01 08:16:33 +02:00
Chekhov Ma
b259e397db board: frdm_imx93: enable pcal6408 gpio expander
Enable  pcal6408 gpio expander on FRDM-IMX93 board. This expander has
its reset pin controlled by another expander, and both expanders is
driven by the same pca_series driver. To guarentee correct init order,
pcal6408 is set to deferred init in a board init function.

Signed-off-by: Chekhov Ma <chekhov.ma@nxp.com>
2025-10-01 08:16:10 +02:00
TOKITA Hiroshi
9bdad1f871 drivers: xen: memory: add acquire_resource wrapper
Add XENMEM_acquire_resource wrapper to map device model related buffers.
This is required for communication with the ioreq server.

- memory
  - xendom_acquire_resource:
    HYPERVISOR_memory_op(XENMEM_acquire_resource)

Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@gmail.com>
2025-10-01 08:15:36 +02:00
TOKITA Hiroshi
14ac666156 drivers: xen: change gnttab_[get|put]_pages for multi-page support
Replace `gnttab_get_page()`/`gnttab_put_pabes(addr)` with
`gnttab_get_pages(npages)`/`gnttab_put_pages(addr, npages)`
for supporting multi-page operation.

Note: This is a breaking change, update callers accordingly.

Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@gmail.com>
2025-10-01 08:14:47 +02:00
Derek Snell
40e5f73a7e boards: nxp: mimxrt1160_evk: improve zephyr,flash location for M4
- Fixes issue where zephyr,flash in ocram node overlaps with physical
  SRAM sram1 used for zephyr,sram.
- Moves default zephyr,flash from external flash to M4 ITCM to improve
  performance.
- Updates overlays that moved zephyr,flash to ocram now use default

Signed-off-by: Derek Snell <derek.snell@nxp.com>
2025-10-01 08:12:43 +02:00
Derek Snell
ddc58c0795 boards: nxp: mimxrt1170_evk: improve zephyr,flash location for M4
- Fixes issue where zephyr,flash in ocram node overlaps with physical
  SRAM sram1 used for zephyr,sram.
- Updates overlays that moved zephyr,flash to ocram now use default

Signed-off-by: Derek Snell <derek.snell@nxp.com>
2025-10-01 08:12:43 +02:00
Derek Snell
6270d29287 boards: nxp: mimxrt1170_evk & rt1160: enable M4 CONFIG_NET_L2_ETHERNET
The Ethernet networking stack can run on the M4 core, see
https://community.nxp.com/t5/Zephyr-Project-Knowledge-Base/Zephyr-networking-stack-on-i-MX-RT1170-Cortex-M4-secondary-core/ta-p/2159461

Signed-off-by: Derek Snell <derek.snell@nxp.com>
2025-10-01 08:12:43 +02:00
Wai-Hong Tam
ca68c77198 tests: drivers: build_all: led_strip: Add build test for ws2812-uart driver
This commit adds a build test for the new `worldsemi,ws2812-uart`
driver. A devicetree node for the driver is added to the app.overlay,
instantiated on a `vnd,serial` test UART.

Signed-off-by: Wai-Hong Tam <waihong@google.com>
2025-09-30 22:06:21 +02:00
Wai-Hong Tam
eb30d03ec0 dts: bindings: test: Add pin inversion to vnd,serial binding
Add the `uart-controller-pin-inversion.yaml` include to the `vnd,serial`
test binding. This enables testing for other drivers that require pin
inversion to function correctly. For example, the
`worldsemi,ws2812-uart` LED strip driver relies on `tx-invert`.

Signed-off-by: Wai-Hong Tam <waihong@google.com>
2025-09-30 22:06:21 +02:00
Wai-Hong Tam
7e195a9481 drivers: led_strip: Add UART-based driver for WS2812
This commit introduces a new driver for WS2812 and compatible LED
strips that uses a UART peripheral.

The driver generates the precise, high-speed signal required by the
WS2812 protocol by encoding each data bit into a multi-bit "symbol"
and using a frame-aware packing strategy for transmission:
 - Signal Inversion: The UART's TX line must be inverted (tx-invert)
   to create the protocol's required idle-low signal. A UART start
   bit then generates the initial high pulse of a WS2812 bit.
 - Frame-Aware Packing: The driver reuses the UART's hardware-
   generated start and stop bits as the first and last bits of the
   on-wire symbol. The inner bits of the symbol are packed into the
   UART data payload.

This packing scheme imposes a configuration constraint: the total
number of bits in a UART frame (1 start + N data + 1 stop) must be
an integer multiple of the symbol's length (bits-per-symbol).

Signed-off-by: Wai-Hong Tam <waihong@google.com>
2025-09-30 22:06:21 +02:00
Wai-Hong Tam
ba20a37228 dts: bindings: led: Add worldsemi,ws2812-uart binding
Add a new devicetree binding, worldsemi,ws2812-uart, for controlling
WS2812-compatible LED strips using a UART peripheral.

Signed-off-by: Wai-Hong Tam <waihong@google.com>
2025-09-30 22:06:21 +02:00
Lin Yu-Cheng
1c902e5ac1 adc: rts5912: implement power management
Reduce RTS5912 ADC power consumption

Signed-off-by: Lin Yu-Cheng <lin_yu_cheng@realtek.com>
2025-09-30 22:05:32 +02:00
Miika Karanki
1856a03fc7 drivers: gpio: shell: fix asan reported oob error
ASAN reports error with native_sim after "gpio info <TAB>":
   runtime error: index 1 out of bounds for type 'gpio_ctrl [1]'

So, although the dev pointer was not used, don't even read it
from out-of-bounds of gpio_list.

Signed-off-by: Miika Karanki <miika.karanki@vaisala.com>
2025-09-30 21:59:05 +02:00
Peter Mitsis
972b54c676 kernel: doc: Update thread deadline APIs
Minor updates to both the k_thread_deadline_set() and
k_thread_absolute_deadline_set() API documentation.

Signed-off-by: Peter Mitsis <peter.mitsis@intel.com>
2025-09-30 21:58:51 +02:00
Michal Simek
7dea0c46bf boards: amd: kv260_r5: Fix i2c ref clock node
DT binding is requesting to use '-' in node name instead of '_'.

Signed-off-by: Michal Simek <michal.simek@amd.com>
2025-09-30 21:58:46 +02:00
Michal Simek
56ce2e3e92 amd: versalnet_rpu: Fix QEMU_CPU_TYPE for RPUs
Show correct cpu type when QEMU runs. Variable is used for display purpose
only.

Signed-off-by: Michal Simek <michal.simek@amd.com>
2025-09-30 21:58:37 +02:00
Luis Ubieda
e868e01c1f sensor: fix: Add missing iodev const on zvrfy handler
Was forgotten on #96245. Fixes: #96668.

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-09-30 19:37:41 +02:00
Andrzej Głąbek
6360c7f67c drivers: usb: udc: Fix VBUS ready timeout dependency in Kconfig.dwc2
This is a follow up to commit 4fe2c5bd5f.

The UDC_DWC2_USBHS_VBUS_READY_TIMEOUT Kconfig option should be available
also for nRF92 Series SoCs (as it was previously when it depended on
NRFS_HAS_VBUS_DETECTOR_SERVICE), otherwise some builds will fail for
such targets.

Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
2025-09-30 19:37:31 +02:00
Raffael Rostagno
f395f0e3cf samples: bluetooth: Add testcase for ESP32-H2
Add testcase for esp32h_devkitm, for CI build test.

Signed-off-by: Raffael Rostagno <raffael.rostagno@espressif.com>
2025-09-30 19:37:19 +02:00
Raffael Rostagno
3244055e9f boards: esp32h2_devkitm: Add BT node
Add BT node to DTS for BT support.

Signed-off-by: Raffael Rostagno <raffael.rostagno@espressif.com>
2025-09-30 19:37:19 +02:00
Raffael Rostagno
f4cdf08e28 drivers: bt: esp32h2: Add support
Add BT-HCI support to ESP32-H2.

Signed-off-by: Raffael Rostagno <raffael.rostagno@espressif.com>
2025-09-30 19:37:19 +02:00
Raffael Rostagno
18dbda57d8 soc: esp32h2: Add BT support
Add bluetooth support to ESP32-H2.

Signed-off-by: Raffael Rostagno <raffael.rostagno@espressif.com>
2025-09-30 19:37:19 +02:00
Raffael Rostagno
629012121d west.yml: hal_espressif: Update for ESP32-H2 BT support
Update for ESP32-H2 BT/BLE support.

Signed-off-by: Raffael Rostagno <raffael.rostagno@espressif.com>
2025-09-30 19:37:19 +02:00
Luis Ubieda
110e315fdc rm3100: decoder: fix missing const while edata buffer casting
To suppress compliance warnings.

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-09-30 19:37:10 +02:00
Luis Ubieda
ff7a350d9c rm3100: decoder: fix trigger detection on data-ready
Otherwise we'd always return false in spite of the flag being set in
the encoded data, which may lead to the user not reading the underlying
data in an event-paced readout scheme.

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-09-30 19:37:10 +02:00
Mathieu Choplain
092a0820c4 drivers: usb: udc: stm32: enhance PHY type & operating speed determination
Rework how the STM32 UDC driver determines the PHY used by a given instance
and the speed at which the instance is able to and allowed to operate.

The PHY determination now uses the 'phys' property instead of looking at
whether nodes with a specific compatible were enabled. Similarly, the speed
determination takes into account the 'maximum-speed' property, along with
the selected PHY's and the instance's capabilities.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-09-30 19:36:55 +02:00
Mathieu Choplain
e31ddec781 drivers: usb: udc: stm32: rework PWR and PHY initialization
Rework how the driver performs PWR configuration and initializes HS PHYs.

Originally, the initialization logic was split in half without any real
logic. There were also attempts to share some logic but this resulted in
code that was difficult to understand.

Initialize PWR and PHY in well separated steps, and use explicit series
and PHY type checks in each part to ensure the logic is easy to understand.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-09-30 19:36:55 +02:00
Mathieu Choplain
7ec83e5c95 drivers: usb: udc: stm32: use HAL PCD macros for speed
Rework the STM32 USB UDC driver to use HAL PCD macros for speed selection,
as should have always been done since that is the library used by the shim
driver. Also dummy definitions to ensure cross-series compatibility
without many #if blocks in the driver.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2025-09-30 19:36:55 +02:00
Martin Gysel
a7df9e9860 drivers: udc_stm32: select Kconfig option UDC_DRIVER_HAS_HIGH_SPEED_SUPPORT
The driver supports high-speed capable controllers. Select
the appropriate Kconfig options to ensure that the stack does
not optimize away high-speed support.

Signed-off-by: Martin Gysel <me@bearsh.org>
2025-09-30 19:36:55 +02:00
Andrew Perepech
2b38bcb6d7 soc/mediatek/adsp: Add cpuclk driver for mt8188
Add cpuclk driver for mt8188 platform. Note that the cpuclk driver is
not yet ported, it works only with mt8188.

Signed-off-by: Andrew Perepech <andrew.perepech@mediatek.com>
2025-09-30 19:36:47 +02:00
Andrew Perepech
96d654bbc8 west.yml: Update hal_xtensa revision
Update hal_xtensa revision to add HAL integration for mt8186/88
and mt8196 DSP processors.

Signed-off-by: Andrew Perepech <andrew.perepech@mediatek.com>
2025-09-30 19:36:47 +02:00
Andrew Perepech
a75d6a40b6 drivers/timer: Fix build error when run by twister
Fix undefined reference to z_sys_timer_irq_for_test

Signed-off-by: Andrew Perepech <andrew.perepech@mediatek.com>
2025-09-30 19:36:47 +02:00
Andrew Perepech
5960d36a7d boards/mediatek: Add configs for mt8195, mt818X
Add configs for mt8195 and mt818X platforms to build them outside of SOF
environment and run by twister

Signed-off-by: Andrew Perepech <andrew.perepech@mediatek.com>
2025-09-30 19:36:47 +02:00
Andrew Perepech
fc8c17fd23 drivers/timer: Fix timer IRQ enable bit on MT818X and MT8195
MT818X and MT8195 use the same timer IRQ enable bit as MT8196

Signed-off-by: Andrew Perepech <andrew.perepech@mediatek.com>
2025-09-30 19:36:47 +02:00
Andrew Perepech
87a449762d drivers/timer: Fix timer clock source initialization for MT818X
Fix timer clock source initialization for MT8188, MT8186 platform.
Add 26Mhz define that is specific for MT818X.

Signed-off-by: Andrew Perepech <andrew.perepech@mediatek.com>
2025-09-30 19:36:47 +02:00
Andrew Perepech
d77db24739 boards/mediatek: Include AFE dts from the board device tree
Include AFE dai definitions from the board device tree for MT8188
and MT8195 platforms

Signed-off-by: Andrew Perepech <andrew.perepech@mediatek.com>
2025-09-30 19:36:47 +02:00
Andrew Perepech
b5adc3dc19 soc/mediatek/adsp: Fix enable/disable timer interrups for MT8188
On MT8188 platform timer interrupts must also be enabled/disabled in
MTK_ADSP_IRQ_EN register in addition to xtensa_irq_enable(),
xtensa_irq_disable()

Signed-off-by: Andrew Perepech <andrew.perepech@mediatek.com>
2025-09-30 19:36:47 +02:00
Andrew Perepech
35a198c4ad soc/mediatek/adsp: Fix ELF .sof_entry section flags
Add 'ax' flags for .sof_entry ELF section so it merges properly with
.z_xtensa_vectors ELF section

Signed-off-by: Andrew Perepech <andrew.perepech@mediatek.com>
2025-09-30 19:36:47 +02:00
Pierrick Guillaume
b7eec0fe24 cmake: linker: separate toolchain_ld_options() calls for grouped flags
Fixes #91045

Adding NO_SPLIT in the TOOLCHAIN_LD_FLAGS list caused every flags in the
list to be checked together by the linker. This caused issues where
incompatible flags was passed together, and the result was that none was
propagated to the linker.

By using separate variables, we can achieve the initial goal of NO_SPLIT to
only group a sub-set of flags.

Signed-off-by: Pierrick Guillaume <pguillaume@fymyte.com>
2025-09-30 19:36:37 +02:00
Erik Andersson
5ad9494835 drivers: i2c_stm32_v2: Abort on DMA error
If configuration of DMA is unsuccessful then
abort transaction and return with an error code

Signed-off-by: Erik Andersson <erian747@gmail.com>
2025-09-30 17:59:04 +03:00
Erik Andersson
624d9c143a drivers: i2c_stm32_v2: Refactor end of master transfer
The stm32_i2c_master_mode_end function can be
replaced with a simple irq disable and giving to
the device sync semaphore

Signed-off-by: Erik Andersson <erian747@gmail.com>
2025-09-30 17:59:04 +03:00
Erik Andersson
789e1d2d43 drivers: i2c_stm32_v2: Bus error errata fix
Don't abort transaction on bus error in master mode
according to errata sheet

Signed-off-by: Erik Andersson <erian747@gmail.com>
2025-09-30 17:59:04 +03:00
Erik Andersson
a3e63022c0 drivers: i2c_stm32_v2: DMA fixup
Adapt DMA implementation to match changes
introduced by new interrupt handler

Signed-off-by: Erik Andersson <erian747@gmail.com>
2025-09-30 17:59:04 +03:00
Erik Andersson
b4aa7e7087 drivers: i2c_stm32_v2: Remove obsolete functions
stm32_i2c_msg_read and stm32_i2c_msg_write
for interrupt mode is replaced by a common
function: stm32_i2c_irq_xfer

Signed-off-by: Erik Andersson <erian747@gmail.com>
2025-09-30 17:59:04 +03:00
Erik Andersson
34b756f803 drivers: i2c_stm32_v2: Rework interrupt handler
- Rework transaction flow  to better match reference manual
and errata sheet for STM32 I2Cv2 peripheral
- Handle message transactions larger than 255 bytes in isr
- Combine stm32_i2c_msg_write and stm32_i2c_msg_read into
one common function stm32_i2c_irq_xfer when using interrupts

Signed-off-by: Erik Andersson <erian747@gmail.com>
2025-09-30 17:59:04 +03:00
Erik Andersson
066bb5f30e drivers: i2c_stm32_v2: Add DMA helpers
To prepare for further patches and separation
of interrupt/DMA modes from polled, this commit
introduces two helpers for starting and stopping
DMA transfers

Finsishing DMA transfers are also moved from
interrupt handlers to thread after beeing wokenen
by semaphore

Signed-off-by: Erik Andersson <erian747@gmail.com>
2025-09-30 17:59:04 +03:00
Jilay Pandya
cf3dddf573 drivers: stepper: step_dir: fix 87698
During testing with teensy 4.0 it was discoverd that toggling
at high frequencies led to missed steps. As per the datasheets
of step-dir drivers an active edge needs to be maintained for
a certain timerperiod, for a step to be executed.

Instead of toggling pin twice instantaneously, the current fix
halves the step period and the step-pin is toggled on the timeout
of the respective timing source.

rework stepper stepper stop

set step pin to low if the driver does not support dual edge
and increment/decrement the actual position by one

Signed-off-by: Jilay Pandya <jilay.pandya@outlook.com>
2025-09-30 17:58:27 +03:00
Jilay Pandya
5cb7e92c19 tests: stepper_api: adjust timing timeout tolerance
Adjust CONFIG_STEPPER_TEST_TIMING_TIMEOUT_TOLERANCE_PCT
in order to pass the tests

Signed-off-by: Jilay Pandya <jilay.pandya@outlook.com>
2025-09-30 17:58:27 +03:00
Andrej Butok
22adf152dc fs: zms: nxp: Add .conf for frdm_mcxn236.conf
- Adds frdm_mcxn236.conf board configuration
  for ZMS sample and ZMS test.
- Its Flash write-size is 128, which requires special configuration.

Signed-off-by: Andrej Butok <andrey.butok@nxp.com>
2025-09-30 17:58:03 +03:00
Robert Robinson
617da7a744 manifest: Update hal_nordic to pull latest mdk 8.72.4
Update hal_nordic to pull mdk 8.72.4 with mdk changes for nRF7120.

Signed-off-by: Robert Robinson <robert.robinson@nordicsemi.no>
2025-09-30 17:57:51 +03:00
Seppo Takalo
dac7a0fe06 modem: cmux: Clean debugging a bit
Full CMUX frames are way too much to fill the debug log
so disable those by default.
Sometimes it is enough to see the CMD and response types, without
hexdump.
Added also debug messages for opening and closing events.

Signed-off-by: Seppo Takalo <seppo.takalo@nordicsemi.no>
2025-09-30 17:57:40 +03:00
Andrzej Głąbek
f0f5f8cdef drivers: mspi_dw: Fix race condition in RX interrupt handling
Refactor a bit the RX FIFO handling to prevent RX transfers performed
in Single IO mode from getting stuck when they are suspended due to
the empty TX FIFO and cannot be resumed because there is no further
interrupt in which the TX FIFO could be filled properly with dummy
bytes above its transfer start level.

Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
2025-09-30 17:57:29 +03:00
Gerard Marull-Paretas
b59b09b76e soc: sifli: sf32: sf32lb52x: allow configuring bootrom flash delays
Boot ROM will by default set on/off delays to 0ms before jumping to
firmware. This patch adds an option to to configure the on/off delays to
non-zero values. A flash power cycle guarantees to put the external
flash into a known state before executing code from it. This is required
if using 4-byte address mode in the external flash, as the boot ROM will
always use 3-byte address mode when reading from external flash, causing
a potential deadlock situation requiring a power-cycle (known errata).

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2025-09-30 17:57:17 +03:00
Gerard Marull-Paretas
1fb060a133 dts: arm: sifli: sf32lb52x: define RTC backup registers
Define RTC backup registers.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2025-09-30 17:57:17 +03:00
Gerard Marull-Paretas
5a25fda816 dts: bindings: retained_mem: add sifli,sf32lb-rtc-backup
Add binding for the SiFli SF32LB RTC backup registers.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2025-09-30 17:57:17 +03:00
Gerard Marull-Paretas
3184e7e19b dts: arm: sifli: sf32lb52x: define rtc
Add node for RTC peripheral.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2025-09-30 17:57:17 +03:00
Gerard Marull-Paretas
62aa9d7232 dts: bindings: rtc: add sifli,sf32lb-rtc
Add bindings for SF32LB RTC.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2025-09-30 17:57:17 +03:00
Grzegorz Swiderski
335e1c2a97 Revert "fs: zms: Add FLASH_MAP dependency"
This reverts commit 77f19eb1b5.

This dependency was misplaced. See the parent commit.

Signed-off-by: Grzegorz Swiderski <grzegorz.swiderski@nordicsemi.no>
2025-09-30 15:29:59 +03:00
Grzegorz Swiderski
4a7126d457 settings: zms: Add FLASH_MAP dependency
The ZMS backend for Settings uses the `flash_area` API, which means it
requires CONFIG_FLASH_MAP to be enabled, so update Kconfig accordingly.
Note that ZMS itself does not depend on this.

Signed-off-by: Grzegorz Swiderski <grzegorz.swiderski@nordicsemi.no>
2025-09-30 15:29:59 +03:00
Maximilian Werner
a88b1b86cb include: drivers: gpio_emul: add gpio_dt_spec helpers
Add gpio_dt_spec based helpers for easier access to:
* gpio_emul_input_set
* gpio_emul_output_get
* gpio_emul_flags_get

Signed-off-by: Maximilian Werner <maximilian.werner96@gmail.com>
2025-09-30 15:29:47 +03:00
Tomasz Chyrowicz
cbcf81e3a4 mcumgr: Enable permanent updates in overwrite mode
It is essential for the overwrite mode to allow confirming the secondary
slot to provide the permanent update.
This types of updates is the only mode in which the application may be
upgraded.

Signed-off-by: Tomasz Chyrowicz <tomasz.chyrowicz@nordicsemi.no>
2025-09-30 15:29:33 +03:00
Tomasz Chyrowicz
2e0d9ed2cf mgmt: Add missing CONFIG_ prefixes
Fix the incorrect usage of Kconfig symbols and revert back the default
behavior to allow for non-active slot confirmation.

Signed-off-by: Tomasz Chyrowicz <tomasz.chyrowicz@nordicsemi.no>
2025-09-30 15:29:33 +03:00
Ayush Singh
df18487b3c samples: net: sockets: coap_server: Add 802154 subg support
- Tested with BeagleConnect Freedom.
- Also enable build in CI similar to echo_server/client

Signed-off-by: Ayush Singh <ayush@beagleboard.org>
2025-09-30 15:29:23 +03:00
Ayush Singh
d553207706 samples: net: sockets: coap_client: Add 802154 Subg support
- Tested with BeagleConnect Freedom.
- Also enable building in CI.

Signed-off-by: Ayush Singh <ayush@beagleboard.org>
2025-09-30 15:29:23 +03:00
Loic Domaigne
bfbc6365ac Bluetooth: Controller: fix assertion check for ptc value
Fix the issue reported by Coverity CID 487708. The LL_ASSERT was
performed on lll->ptc, which is a 4-bit bitfield and therefore always
succeeds. Instead, the computation (lll->nse - nse) should be checked
to ensure it falls within the 4-bit value range before assigning it
to lll->ptc.

Signed-off-by: Loic Domaigne <tech@domaigne.com>
2025-09-30 15:28:36 +03:00
Henrik Brix Andersen
24f473fef8 drivers: usb: udc: sam0: do not select CONFIG_SYS_MEM_BLOCKS
Do not select CONFIG_SYS_MEM_BLOCKS when enabling the Atmel SAM0 USB device
controller driver as the implementation does not use the system memory
blocks allocator.

Signed-off-by: Henrik Brix Andersen <henrik@brixandersen.dk>
2025-09-30 15:28:16 +03:00
Johan Alfvén
afa92dafa8 boards: mps3: Select FVP bin for Ethos-U55/Ethos-U65
Update board.cmake for corstone300_fvp to select the correct
Fast Model binary based on Ethos-U configuration.

Use the Ethos-U65 binary if ETHOS_U65 (128/256/512) is set.
Otherwise default to Ethos-U55.

Signed-off-by: Johan Alfvén <johan.alfven@arm.com>
2025-09-30 15:28:06 +03:00
Alain Volmat
f8393a45e8 boards: st: remove .lvgl_buf related linker scripts on STM32
Following introduction of LV_Z_MEMORY_POOL_ZEPHYR_REGION and
LV_Z_VDB_ZEPHYR_REGION, remove the usage of the option
LV_Z_VDB_CUSTOM_SECTION and the related linker scripts for
STM32 boards & shields.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-09-30 15:27:56 +03:00
Alain Volmat
c2fe44ee98 modules: lvgl: allow usage of zephyr memory-region for mem / vdb
Allow selection of a custom section for memory-poll and / or VDB
based on zephyr memory-regions.
This takes advantages that zephyr,memory-region automatically have
sections being created, hence allowing to easily indicate into which
memory-region to store data.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-09-30 15:27:56 +03:00
Tim Pambor
00a9905f83 usb: device_next: cdc_acm: init uart config from default line coding
Initialize the UART configuration from the default line coding
when the CDC ACM device is started. This ensures that the UART
configuration matches the default line coding until the host sets
the line coding for the first time.

Signed-off-by: Tim Pambor <tim.pambor@codewrights.de>
2025-09-30 15:27:33 +03:00
Erwan Gouriou
522bfd5b56 drivers: ethernet: stm32: #include sections cleanup
Clean up headers includes section:
- Remove conditional inclusions
- zephyr/, then susbystem/, standardlib, locals
- Sort alphabetically within these categories
- Remove the ones already available through _priv.h

Noticeable exception, lldp.h requires prior net_pkt.h inclusion

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2025-09-30 15:27:23 +03:00
Erwan Gouriou
ca6e25a03f drivers: ethernet: Move back hal_init_v2 to driver init
Since phy init is not in this function anymore, it can be moved back
to driver initialization function.

While I'm at, harmonize v1/v2 flavors of the function.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2025-09-30 15:27:23 +03:00
Erwan Gouriou
03eafc5381 drivers: ethernet: stm32: Remove eth_stm32_get_iface
Now that the function is not static anymore, it just adds useless overhead.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2025-09-30 15:27:23 +03:00
Erwan Gouriou
967f554598 drivers: ethernet: stm32: Rename functions that are not static anymore
To be able to split code, some functions were removed their static
attribute, which opens the possibility of name conflict.
Rename them by adding eth_stm32_ prefix.

Additionally, review their sorting in the header file.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2025-09-30 15:27:23 +03:00
Erwan Gouriou
d1d1e5744f drivers: ethernet: stm32: Split v1 and v2 code
Split V1 and V2 code from the common file of STM32 ethernet
driver.
Whenever it is possible, make use of v1 or v2 version of functions
that are call from the common file in order to maximize factorization.

Review definitions to put them where they are used.
Review header inclusions to minimize them.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2025-09-30 15:27:23 +03:00
Erwan Gouriou
2f23eb2c98 drivers: ethernet: stm32: Split ptp functions into a dedicated source file
In an effort to make stm32 eth driver files easier to read and maintain,
split the ptp code in a dedicated file.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2025-09-30 15:27:23 +03:00
Erwan Gouriou
b1a9e39006 drivers: ethernet: Rename eth_stm32_hal.c to eth_stm32hal_common.c
Keep the history on the common file before splitting v1 and v2 code from
it.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2025-09-30 15:27:23 +03:00
Erwan Gouriou
4429626758 Revert "drivers: ethernet: rename eth_stm32_hal.c -> eth_stm32_hal_v2.c"
This reverts commit 678e226045.
This commit was part of PR 94142 which has been merged
while a discussion was still on going on the right direction
between splitting V1 and V2 or keeping a common file.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2025-09-30 15:27:23 +03:00
Erwan Gouriou
88298ae555 Revert "drivers: ethernet: eth_stm32 v1/v2 are placed in separate files"
This reverts commit 29750ac05d.
This commit was part of PR 94142 which has been merged
while a discussion was still on going on the right direction
between splitting V1 and V2 or keeping a common file.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2025-09-30 15:27:23 +03:00
Armin Kessler
3b3f283b3f driver: video: esp32: add set/get_frmival callbacks
forward set/get_frmival api calls to source device.

Signed-off-by: Armin Kessler <ake@espros.com>
2025-09-30 15:27:12 +03:00
Mario Paja
5ab7ef6ccd dts: st: h7: fix dma stream
This change fixes DMA stream ID for H7xx series.
DMA stream ID should be in range 1..N

Signed-off-by: Mario Paja <mariopaja@hotmail.com>
2025-09-30 15:27:01 +03:00
Immo Birnbaum
99d9a42d60 arch: arm: cortex_a_r: specify icache/dcache for Cortex-A9
Specify that the Cortex-A9 CPU has both an L1 dcache and icache.

Signed-off-by: Immo Birnbaum <mail@birnbaum.immo>
2025-09-30 15:26:51 +03:00
Adam Kondraciuk
6f7a1834d5 soc: nordic: nrf54h: Implement idle with cache retained state
Add new idle state with cache retention enabled.

Signed-off-by: Adam Kondraciuk <adam.kondraciuk@nordicsemi.no>
2025-09-30 15:26:40 +03:00
Pieter De Gendt
c3bb498f86 drivers: sensor: st: iis3dwb: Update RTIO callbacks with result argument
Commit bc8d66d538 introduced a
result argument to some RTIO callback handlers. Update for the IIS3DWB
sensor.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-09-30 15:26:27 +03:00
Fin Maaß
4a69c1b8a8 drivers: serial: litex: add support for rx-fifo-rx-we
add support for rx-fifo-rx-we, whci got added to
LiteX in https://github.com/enjoy-digital/litex/pull/2319

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-09-30 11:03:15 +02:00
Fin Maaß
a39ab55c9d drivers: serial: litex: only ack tx event, when full
only ack tx event, when full, so we don't
have to fill the fifo with zeros as a workaround.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-09-30 11:03:15 +02:00
Fin Maaß
087cb96025 drivers: serial: litex: remove redundant rx pending
flushing rx pending already happens in
uart_litex_fifo_read, which should be called
by the callback, so don't do it again, also
it can lead to the drop of chars, as flushing
removes the current entry in the fifo.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-09-30 11:03:15 +02:00
Peter Wang
060e05e22b boards: frdm_mcxa366: enable sample and test
1. enable enable sample and test for frdm_mcxa366

Signed-off-by: Peter Wang <chaoyi.wang@nxp.com>
2025-09-30 11:02:57 +02:00
Peter Wang
711af9863c boards: frdm_mcxaxx6: add frdm_mcxa366 board
1. the three boards share the same board schematic
   - frdm_mcxa266, frdm_mcxa346, frdm_mcxa366
2. board dts,kconfig and cmake file could share
3. add MCXA366 soc and frdm_mcxa366 board

Signed-off-by: Peter Wang <chaoyi.wang@nxp.com>
2025-09-30 11:02:57 +02:00
Peter Wang
f3a82fc7ea boards: frdm_mcxa266, frdm_mcxa346: create common dtsi for soc and board
1. nxp_mcxa266_a346_a366_common.dtsi created for soc dts
2. frdm_mcxa266_a346_a366_common.dtsi.dtsi created for board dts

Signed-off-by: Peter Wang <chaoyi.wang@nxp.com>
2025-09-30 11:02:57 +02:00
Peter Wang
b7ff3e1dc8 boards: frdm_mcxa: get SYS_CLOCK_HW_CYCLES_PER_SEC in soc dts
1. get SYS_CLOCK_HW_CYCLES_PER_SEC in soc dts

Signed-off-by: Peter Wang <chaoyi.wang@nxp.com>
2025-09-30 11:02:57 +02:00
Emil Gydesen
87e6bff4ef Bluetooth: CAP: Shell: Change to use default_unicast_group
Use default_unicast_group everywhere in the CAP shell, and mark
all creation of it as default_unicast_group.is_cap = true.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-09-30 11:02:29 +02:00
Emil Gydesen
ca80d25bd9 Bluetooth: CAP: Shell: Move ac_create_unicast_group to CAP
Move the function bap_ac_create_unicast_group to the CAP
shell, as that was the only user of it, and rename it to
cap_ac_create_unicast_group, and make it use the CAP API.

Also rename bap_unicast_ac_param to cap_unicast_ac_param

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-09-30 11:02:29 +02:00
Emil Gydesen
bf19edc8d8 Bluetooth: BAP: Shell add common unicast_group struct
Add a common unicast_group struct for both the BAP and
CAP shell, similar to the broadcast_source.

The purpose of this is to be able to use the appropriate type
for both the CAP and BAP shells, instead of using the BAP
unicast group for the CAP shell.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-09-30 11:02:29 +02:00
Luis Ubieda
91c57f1eca icm45686: stream: Add missing INT disable on error completion
Multi-shot request should re-enable it shortly.

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-09-30 11:02:12 +02:00
Luis Ubieda
63fe2def28 icm45686: stream: Optimize stream data-handling
Process all in one callback, in order to reduce latency.
The following changes have been done:
- Process FIFO read-out and/or Data-ready in GPIO callback.
- FIFO Full is handled on completion if needed.
- Omit fifo-count fetching, to optimize cycles. The watermark
count is the number of samples we're going for.

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-09-30 11:02:12 +02:00
Luis Ubieda
9c4d1c5c4c icm45686: stream: Only enable GPIO interrupts when stream is active
Otherwise a lot of spurious callbacks may trigger shortly after
rebooting.

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-09-30 11:02:12 +02:00
Luis Ubieda
214bdfd31a icm45686: rtio: Expand bus RTIO queue size
To handle streaming under stress scenario.

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-09-30 11:02:12 +02:00
Luis Ubieda
60eceef41b icm45686: stream: Improve tracking of state transitions
By introducing three states: Off -> On -> Busy -> (Offf)

This allows us to more clearly guard on-going events and detect
overlapping triggers.

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-09-30 11:02:12 +02:00
Luis Ubieda
b87f0ffbf3 icm45686: stream: Remove run-time variability of samples on FIFO WM
Since the driver knows how many samples it wants (because of the
watermark threshold), stick to that per event in order to facilitate
batches of N number of samples.

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-09-30 11:02:12 +02:00
Luis Ubieda
836e6fb882 icm45686: stream: Remove memset when completing stream event
As it's not required, so we rather spare the cycles.

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-09-30 11:02:12 +02:00
Luis Ubieda
ea708cf9e1 icm45686: Add warning log when event triggered while busy
In order to detect when events are being missed.

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-09-30 11:02:12 +02:00
Luis Ubieda
7921ca4090 icm45686: stream: Add missing call to drop RTIO Bus queue when full
Not handled otherwise.

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-09-30 11:02:12 +02:00
Luis Ubieda
fdc359547b icm45686: stream: Refactor completion actions through helper function
In order to simplify code-logic.

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-09-30 11:02:12 +02:00
Luis Ubieda
532c80a764 icm45686: Replace assert for check-if when buffer alloc fails
In order to allow the error-handling scheme to take action, instead
of crashing when asserts are enabled. Now possible since we have RTIO
error handling for streaming mode.

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-09-30 11:02:12 +02:00
Luis Ubieda
bab0723972 icm45686: Update RTIO bus API to simplify async transfers
Similar pattern applied to other in-tree sensor drivers, where
preparing a set of SQEs for writing/reading on registers is a recurrent
syntax.

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-09-30 11:02:12 +02:00
Armando Visconti
b390cbd6b2 drivers/sensor: iis3dwb: add streaming capabality
Add read_and_decode streaming APIs support.

Triggers supported:
    - SENSOR_TRIG_FIFO_WATERMARK
    - SENSOR_TRIG_FIFO_FULL
    - SENSOR_TRIG_DATA_READY

Signed-off-by: Armando Visconti <armando.visconti@st.com>
2025-09-30 11:01:12 +02:00
Armando Visconti
93a30e7806 drivers/sensor/st: add support to IIS3DWB accel
The IIS3DWB is a system-in-package featuring a 3-axis digital vibration
sensor with low noise over an ultrawide and flat frequency range.
The wide bandwidth, low noise, very stable and repeatable sensitivity,
together with the capability of operating over an extended temperature
range (up to +105 C), make the device particularly suitable for vibration
monitoring in industrial applications.

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

This driver is currently only supporting the polling-mode read_and_decode
APIs (both blocking and non-blocking).

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

Signed-off-by: Armando Visconti <armando.visconti@st.com>
2025-09-30 11:01:12 +02:00
Tobias Kässer
9cbcdda587 drivers: sensor: adxl345: Add support for motion trigger
Adding minimal support for using motion trigger interrupts
with the adxl345

Signed-off-by: Tobias Kässer <t.kaesser@gmail.com>
2025-09-30 11:00:14 +02:00
Alexander Apostolu
1f50947271 include: zephyr: drivers: sensor.h: update decode doxygen
Update sensor_decoder_api.decode Doxygen to reflect changes in the
parameters, including the change from the channel parameter to
channel spec.

Signed-off-by: Alexander Apostolu <apostolu240@gmail.com>
2025-09-30 10:59:47 +02:00
Alexander Apostolu
35c45a66e8 include: zephyr: drivers: sensor.h: corrected name of chan_spec parameter
Change name of the struct sensor_chan_spec paramater from "channel" to
"chan_spec" to reflect its type.

Signed-off-by: Alexander Apostolu <apostolu240@gmail.com>
2025-09-30 10:59:47 +02:00
Anthony Williams
bfa6f4a102 sensor: rm3100: Fix typo in DT yaml
Rename RM33100 to RM3100 in yaml comment to align
with rm3100.h defines.

Signed-off-by: Anthony Williams <anthony289478@gmail.com>
2025-09-30 10:59:21 +02:00
Anthony Williams
e6ff45d38a sensor: rm3100: Add support for SPI
Add support for SPI

Signed-off-by: Anthony Williams <anthony289478@gmail.com>
2025-09-30 10:59:21 +02:00
Bill Waters
95dc13d1e1 drivers: i2c: add pdl driver for Infineon devices
- Add the pdl-based version of the i2c driver for infineon devices
  like the one found on the kit_psc3m5_evk board.
- In the pull request review it was decided that the
  I2C_INFINEON_CAT1_ASYNC option was not needed.  The driver would
  always be interrupt driven.  This meant that the existing driver
  had to be updated as well.

Signed-off-by: Bill Waters <bill.waters@infineon.com>
2025-09-30 10:58:31 +02:00
Fabrice DJIATSA
6ec1e7375d tests: drivers: flash: stm32: disable write protection after execution
Add a teardown function flash_stm32_teardown to ensure write protection
is disabled after test execution, avoiding side effects on subsequent
tests.

This prevents issues where write protection remains enabled
if a test fails before cleanup.

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2025-09-30 10:58:22 +02:00
Yongxu Wang
c992e1a11e soc: nxp: imx943: implement basic PM flow for Cortex-M cores
Add initial power management support for i.MX943 M-core (M33/M7)
This lays the foundation for multi-core PM handling on i.MX943

Signed-off-by: Yongxu Wang <yongxu.wang@nxp.com>
2025-09-30 10:57:43 +02:00
Yongxu Wang
bf712811bb dts: nxp: imx943: add CPU power states for M33 and M7 cores
Introduce power state definitions for i.MX943 Cortex-M cores in DTS

Signed-off-by: Yongxu Wang <yongxu.wang@nxp.com>
2025-09-30 10:57:43 +02:00
Cristian Bulacu
ad4bac2f82 net: samples: openthread: border_router: Update project configuration
Generic:
- Enabled more OpenThread functionalities for Border Router application
NXP RCP:
- Set number of max RCP restoration count to 10

Signed-off-by: Cristian Bulacu <cristian.bulacu@nxp.com>
2025-09-30 10:57:21 +02:00
Cristian Bulacu
642c258c0f openthread: platform: dns_upstream_resolver: Fix bug in platform code
Fix an incorrect type cast when trying to obtain an
otPlatDnsUpstreamQuery pointer from user data passed to dns resolver
module.

Signed-off-by: Cristian Bulacu <cristian.bulacu@nxp.com>
2025-09-30 10:57:21 +02:00
Alberto Escolar Piedras
8d7c2e115a tests native_sim reset_hw_info: Skip by now
This tests is failing in CI and at random locally.
While we understand why and how to fix it, let's disable it.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-09-30 09:49:36 +02:00
Seppo Takalo
b8541c53ee modem: modem_cellular: Allow PPP interface to wake up the device
Allow PPP device to wake up the underlying cellular modem.

Signed-off-by: Seppo Takalo <seppo.takalo@nordicsemi.no>
2025-09-29 12:47:57 -04:00
Aksel Skauge Mellbye
f66dd94992 samples: bluetooth: peripheral_ht: Use dht0 temperature sensor
Use the temperature sensor with a dht0 alias if available in
the Bluetooth Health Thermometer sample. This alias is already
used by the sensor/dht_polling sample app for temperature
measurement, and is supported by several boards in the tree.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-09-29 12:47:43 -04:00
Marek Matej
d49e6c12d8 soc: espressif: common: Fix startup loader message
Improve how segment information looks like for MCUboot and SimpleBoot.

* silently igonore padding segments (if VMA is 0x0)
* do not duplicate mapped segments lines (IROM and DROM)
* fix IROM segments taht was incorrectly labeled as IRAM

Signed-off-by: Marek Matej <marek.matej@espressif.com>
2025-09-29 12:47:34 -04:00
Rafał Kuźnia
3d63165050 drivers: ieee802154: nrf5: Remove temporary API migration code
The new nrf-802154 now has the updated API signatures. The migration
code is no longer needed.

Signed-off-by: Rafał Kuźnia <rafal.kuznia@nordicsemi.no>
2025-09-29 12:47:02 -04:00
Rafał Kuźnia
a25abc3358 manifest: update hal_nordic to pull nrf-802154 changes
Updated the hal_nordic to bring the latest changes of the nrf-802154
component.

Signed-off-by: Rafał Kuźnia <rafal.kuznia@nordicsemi.no>
2025-09-29 12:47:02 -04:00
Hake Huang
fc23368673 driver: display: fix a return error on display_hx8394
hx8394_mipi_tx will return write size, so this can not used to
return init call.

fixes: #96547

Signed-off-by: Hake Huang <hake.huang@nxp.com>
2025-09-29 12:46:43 -04:00
Aksel Skauge Mellbye
6e7db46386 modules: hal_silabs: Update to latest simplicity_sdk
Update hal_silabs to include simplicity_sdk v2025.6.2.
Modify Bluetooth controller configuration to match HAL changes.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-09-29 12:46:09 -04:00
Zhaoxiang Jin
41a0865043 boards: nxp: Convert enum members to upper case.
1. Convert enum members to upper case.
2. Remove extra underscores from header names

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-09-29 12:45:50 -04:00
Michael Zimmermann
a039babf77 tests: net: mqtt_sn_client: test predefined topics
This add tests for both outgoing and incoming publishes on predefined
topics.

Signed-off-by: Michael Zimmermann <michael.zimmermann@sevenlab.de>
2025-09-29 12:45:15 -04:00
Michael Zimmermann
e79315de45 tests: net: mqtt_sn_client: test incoming publishes
Until now, only outgoing ones were tested.

Signed-off-by: Michael Zimmermann <michael.zimmermann@sevenlab.de>
2025-09-29 12:45:15 -04:00
Michael Zimmermann
9735cb313e net: mqtt_sn: handle timestamp being 0
When running just the test mqtt_sn_client::test_mqtt_sn_wait_suback on
native_sim, the current timestamp is still 0. That caused the test to fail,
because 0 is used as an indicator, that the message has never been sent,
thus sending it every time process_work is executed.

Instead of adding additional variables and complexity, the code now simply
treats now==0 special and waits 1ms until doing anything.

Signed-off-by: Michael Zimmermann <michael.zimmermann@sevenlab.de>
2025-09-29 12:45:15 -04:00
Michael Zimmermann
3289d83dad tests: net: mqtt_sn_client: store expected recv data const
It's never modified anyway and allows API users to make use of that.

Signed-off-by: Michael Zimmermann <michael.zimmermann@sevenlab.de>
2025-09-29 12:45:15 -04:00
Michael Zimmermann
9b3b5b4447 net: mqtt_sn: scope msg_id to client instance
- The paho client does that, too.
- This allows running single tests, because they don't rely on previous
  ones having incremented the msg_id a certain number of times.
- The variable already existed in the client struct, but wasn't used. I
  guess it was intended that way but never implemented.

Signed-off-by: Michael Zimmermann <michael.zimmermann@sevenlab.de>
2025-09-29 12:45:15 -04:00
Michael Zimmermann
0e2e3c2ece net: mqtt_sn: implement predefined topics
Making the assumption, that mqtt_sn_connect does not process any incoming
data allows for this to be a very simple, additional API function instead
of adding more complexity to the connect function. This also means that the
user has to re-add predefined topics upon reconnects which don't reuse the
old session though.

Signed-off-by: Michael Zimmermann <michael.zimmermann@sevenlab.de>
2025-09-29 12:45:15 -04:00
Frederik Wenigwieser
697e7f6189 drivers: spi: spi_esp32_spim: fix rtio include
Add missing include.

Signed-off-by: Frederik Wenigwieser <zephyr@frederik.at>
2025-09-29 12:44:59 -04:00
Bartosz Miller
b60633b3a6 drivers: i2c: Extend i2c testing on nrf54h20 PPR
Enable all possible i2c tests on CPUPPR

Signed-off-by: Bartosz Miller <bartosz.miller@nordicsemi.no>
2025-09-29 12:44:50 -04:00
Pablo Bacho
7c175a1664 drivers: i2c: stm32: make transfer timeout configurable
Make the STM32 I2C transfer timeout configurable via Kconfig.

- Add CONFIG_I2C_STM32_TRANSFER_TIMEOUT_MSEC Kconfig symbol.
- Use this Kconfig value in both STM32 I2C drivers.

Tested on STM32WBA55CG.

Fixes: #95819

Signed-off-by: Pablo Bacho <pablobacho@gmail.com>
2025-09-29 12:44:39 -04:00
Daniel Leung
ed0b5605d4 tests: boards: intel_adsp/smoke: update to use new IPC API
This updates the Intel Audio DSP smoke test to use the new
IPC API based on IPC message service. The old API is still
being tested for now until all users of the old API has
moved to the new one.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-09-29 12:42:00 -04:00
Daniel Leung
cf7e2e63c1 soc: intel_adsp: rework host IPC using IPC service
This reworks the Intel audio DSP host IPC driver as a backend of
the IPC service. This is the first step to rework IPC in SOF
(Sound Open Firmware) into using a more generic IPC API instead
of a SoC specific one.

For now, it keeps the old interface to maintain usability
as it is going to be a multiple process to rework IPC
over there.

Also, the structure of the new IPC backend resembles
the SoC specific driver to make it easier to compare
between them at this first iteration. Future optimizations
will probably be needed once we start modifying the SOF
side to utilize the IPC interface.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-09-29 12:42:00 -04:00
Daniel Leung
ec28731c39 tests: boards: intel_adsp/smoke: adds ACE boards
This adds ACE boards to the allowed platforms so they can
be tested.

Note that this only adds boards that I have tested to run
correctly with the tests.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-09-29 12:42:00 -04:00
Daniel Leung
6a72cc5435 tests: boards: intel_adsp/smoke: threshold for CPU timing test
The 4th CPU test tries to gauge tight loop performance. However,
it has been observed occasionally that the calculated would go
over just a bit. The threshold was 3, and the observed ratio
has been bouncing between 2.9 and 3.1. So up the threshold
a little bit to account for that.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-09-29 12:42:00 -04:00
Daniel Leung
2afa46d84b tests: boards: intel_adsp/smoke: no CPU halt for ACE
On ACE, the CPU halting requires the cooperation of the PM
subsys to set the CPU to SOFT_OFF. The mechanism has not
been implemented in the smoke test. So skip the halting test
on ACE for now.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-09-29 12:42:00 -04:00
Daniel Leung
ae8ab19dcf tests: boards: intel_adsp/smoke: remove IPC for CPU test
The IPC is only needed for old hardware earlier than CAVS 2.5.
They are no longer supported in the tree as their board configs
have been removed. So there is no need to do IPC anymore.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-09-29 12:42:00 -04:00
Daniel Leung
d910306fd0 soc: intel_adsp: remove IDC dt default for CONFIG_INTEL_ADSP_IPC
The SoC specific IPC driver is for host IPC, and not IDC (which
is between CPUs). So there is no need to use the IDC devicetree
binding to enable the kconfig.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-09-29 12:42:00 -04:00
Daniel Leung
0b3b6f30a3 ipm: remove the Intel Audio DSP CAVS host IPM driver
This IPM driver is not being used by SOF and is there simply for
a test which does not provide much additional value compared to
the existing host IPC tests. That IPM specific test has been
removed so there is no need to keep this driver in the tree.
This is in preparation to rewrite the host IPC driver to utilize
the IPC API. There is no need to maintain another driver that is
not being used in SOF.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-09-29 12:42:00 -04:00
Daniel Leung
28a0d90b46 tests: boards/intel_adsp/smoke: remove IPM test
This removes the IPM test from the intel_adsp smoke test.
The IPM driver is not being used by SOF and is there simply
for this test. The host IPC functionality is also being tested
via test_host_ipc. The additional usage of mailbox in the test
does not provide much value since the mailbox is shared memory
between the DSP and the host. We would have bigger problems if
the shared memory does not work properly.

Removing the test is in preparation to removing the CAVS host
IPM driver. That is also a preparation to rewrite the host IPC
driver to the IPC API, and there is no need to maintain
another host IPC driver that is not used by SOF.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-09-29 12:42:00 -04:00
Lee Trager
e876dee6f2 arch: riscv: Move reg_read()/reg_write() into userspace test
Various drivers have their own static versions of reg_read()/reg_write().
When building for riscv the macros conflict with the driver function
causing compiler failures. Prefix them with riscv_ to avoid conflict
and move them into the unit test which is the only place they are
used.

Signed-off-by: Lee Trager <lee@trager.us>
2025-09-29 12:41:30 -04:00
Gerard Marull-Paretas
4b4dcbbf4a drivers: dma: sf32lb: add initial driver
Add an initial driver for SiFli SF32LB DMAC DMA controller.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2025-09-29 12:40:15 -04:00
Gerard Marull-Paretas
7e0df361c9 dts: arm: sifli: sf32lb52x: define dmac
Add node for DMAC.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2025-09-29 12:40:15 -04:00
Gerard Marull-Paretas
5bb6741c67 dts: bindings: dma: add sifli,sf32lb-dmac
Add binding for SiFli SF32LB DMAC DMA controller. Also add defines for
configuring `dmas` cells (requests and config fields).

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2025-09-29 12:40:15 -04:00
Pieter De Gendt
5b2e2afbdc drivers: display: st7701: Add PM actions
Add resume/suspend power management actions.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-09-29 12:39:47 -04:00
Sebastian Bøe
7c9275c891 soc: nordic: uicr: Add support for uicr.PROTECTEDMEM
Add support for PROTECTEDMEM.

Signed-off-by: Sebastian Bøe <sebastian.boe@nordicsemi.no>
2025-09-29 12:39:33 -04:00
Sebastian Bøe
9f45d2ccd7 soc: nordic: uicr: Add support for uicr.SECONDARY.PROCESSOR
Add support for uicr.SECONDARY.PROCESSOR.

Signed-off-by: Sebastian Bøe <sebastian.boe@nordicsemi.no>
2025-09-29 12:39:33 -04:00
Håvard Reierstad
da06e84995 Bluetooth: Host: bsim: Add fixed L2CAP chan test
Adds a testcase to the send on connect test for sending data over a
user-defined fixed L2CAP channel.

Signed-off-by: Håvard Reierstad <haavard.reierstad@nordicsemi.no>
2025-09-29 12:38:19 -04:00
Håvard Reierstad
ff17e601d0 Bluetooth: Host: Add userdefined fixed l2cap chans
Adds support for the user defining their own channels within the
fixed L2CAP channel range. To make this possible, the
`bt_l2cap_fixed_chan` struct and `BT_L2CAP_CHANNEL_DEFINE` macro
needed to converted to public API. In the process of doing so, the
`_destroy` parameter was removed from the `BT_L2CAP_CHANNEL_DEFINE`
macro as it was never used (fixed channels will not be destroyed over
the lifetime of the connection). `BT_L2CAP_CHANNEL_DEFINE` is renamed
`BT_L2CAP_FIXED_CHANNEL_DEFINE` to avoid confusion

The `bt_l2cap_chan_send` function is updated to be able to send data
on fixed l2cap channels.

Signed-off-by: Håvard Reierstad <haavard.reierstad@nordicsemi.no>
2025-09-29 12:38:19 -04:00
Emil Gydesen
881a24270c Bluetooth: BAP: Rename and fix bt_bap_is_x_ep
Rename the bt_bap_is_x_ep functions to better match the
modules where they are implemented.

Additionally modify the check to use IS_ARRAY_ELEMENT
in the broadcast sink and source for a stricter check.
IS_ARRAY_ELEMENT cannot easily be used in the unicast
client and server, as the endpoints are part of another
structure.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-09-29 12:38:06 -04:00
Emil Gydesen
6c1cd61792 Bluetooth: BAP: Add missing check for unicast server ep
We check for all other roles when checking whether
an endpoint can send or receive, except for the unicast server.
It is technically implied, but if the ep is not a valid pointer,
then we may access invalid memory.

Add check for bt_bap_ep_is_unicast_server (which uses the new
bt_ascs_has_ep function).

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-09-29 12:38:06 -04:00
Alberto Escolar Piedras
9669cc3402 board native_sim: Test sys_reboot and hw_info reporting the reset cause
Add a test of the CONFIG_NATIVE_SIM_REBOOT functionality together
with the hw_info get_reset_cause() logic.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-09-29 12:37:47 -04:00
Tim Pambor
6e048bc068 drivers: hwinfo: native: report reset cause
Support reporting the reset cause for native_sim. The default is to
report POR (Power-On Reset). If CONFIG_NATIVE_SIM_REBOOT was enabled and
the system is rebooted using sys_reboot(), the reset cause is set to
SOFTWARE.

Signed-off-by: Tim Pambor <tim.pambor@codewrights.de>
2025-09-29 12:37:47 -04:00
Tim Pambor
30e5ea0b3f native_simulator: Get latest from upstream
Align with native_simulator's upstream main
4eab13716376e63236d77013f996a897d24dd780

Which includes:
4eab137 Host trampolines: Add getenv/setenv

Signed-off-by: Tim Pambor <tim.pambor@codewrights.de>
2025-09-29 12:37:47 -04:00
Seppo Takalo
cc4e1d9946 samples: net: cellular_modem: Use static event handler
Use statically registered event handler.
Otherwise we might get stuck waiting for event that has already
happened.

Network events are not keeping the state.

Signed-off-by: Seppo Takalo <seppo.takalo@nordicsemi.no>
2025-09-29 12:37:36 -04:00
Felipe Torrezan
74380310de cmake: sca: iar: Add IAR C-STAT
This commit adds support for IAR C-STAT Static Analysis
in the Zephyr's SCA Framework.

By specifying -DZEPHYR_SCA_VARIANT=iar_c_stat in west, a SQLite
database file will be generated under build/sca/iar_c_stat.

Signed-off-by: Felipe Torrezan <felipe.torrezan@iar.com>
2025-09-29 12:37:25 -04:00
Krzysztof Chruściński
c02f904a57 tests: boards: nrf: dmm: Add stress test
Add stress test which validates that allocator is thread safe
and has no memory leaks.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-09-29 12:36:47 -04:00
Krzysztof Chruściński
3d3104207c tests: boards: nrf: dmm: Extend test coverage
Extended test to check usage stats and longer buffer alloc.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-09-29 12:36:47 -04:00
Krzysztof Chruściński
d10ee98ee8 soc: nordic: common: dmm: Add optional usage stats
Add support for getting usage statistics for DMM.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-09-29 12:36:47 -04:00
Krzysztof Chruściński
8cc4da31ca tests: boards: nrf: dmm: Align test to changes in DMM
Align to API changes.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-09-29 12:36:47 -04:00
Krzysztof Chruściński
decdb30b05 soc: nordic: common: dmm: Optimize by using a micro heap
Add micro heap implementation which is using one or more 32 bit masks
to allocate quickly blocks. It is significantly better than using
sys_heap. Difference is especially big on RAM3 heap because heap
control data is in RAM3 space so operations there were extremely
slowly (15 us to allocate a buffer).

Simplified implementation of the heap requires DMM API change as
release functions need to know the length of the allocated buffer as
simple heap requires that (buffer address is enough for the standard
heap).

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-09-29 12:36:47 -04:00
Krzysztof Chruściński
ff3e0180ad soc: nordic: common: dmm: Optimize memcpy
Default memcpy used in zephyr is not optimized and performs simple
byte by byte copying. Using double word or word access can significantly
reduce copying time especially for RAM3 (slow peripheral RAM).

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-09-29 12:36:47 -04:00
Krzysztof Chruściński
f06e05097f tests: boards: nrf: dmm: Add timing measurements
Add timing measurement to the test to allow DMM profiling.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-09-29 12:36:47 -04:00
Tim Pambor
6633ed5782 logging: Disable used but marked unused warning
Clang's -Wused-but-marked-unused warns when variables marked as
__unused are actually used. Logging macros can trigger this warning
depending on CONFIG_LOG_* settings, leading to noisy builds.

This change suppresses those warnings, allowing the warning flag to
be used alongside logging functionality.

Signed-off-by: Tim Pambor <tim.pambor@codewrights.de>
2025-09-29 12:36:15 -04:00
Emil Gydesen
f00dd19a79 doc: Bluetooth: Update CAP Commander status
Update the CAP commander status to being feature complete with
BSIM test after implementing the last missing procedures
(Handover).

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-09-29 12:36:00 -04:00
Emil Gydesen
55a72f6103 Bluetooth: CAP: Implement broadcast to unicast handover
Implement the broadcast to unicast handover procedure,
as per the Bluetooth CAP specificiation.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-09-29 12:36:00 -04:00
Andrew Featherstone
d7176c729a tests: kernel: gen_isr_table: Add support for hazard3
Extend the gen_isr_table test to support the Hazard3 cores on the
RP2350A. This allows some testing when building and running using flash,
but it seems like Twister builds with different flags. It's unclear if
this is intended or not.

Signed-off-by: Andrew Featherstone <andrew.featherstone@gmail.com>
2025-09-29 12:30:28 -04:00
Andrew Featherstone
b0b58e445b boards: pico_plus2: Add initial support for the Hazard3 cores
As with the initial board support, only a single Hazard3 core is
available for use.

Signed-off-by: Andrew Featherstone <andrew.featherstone@gmail.com>
2025-09-29 12:30:28 -04:00
Andrew Featherstone
e22935da51 tests: rp2350: hazard3: Extend tests to support the Hazard3 core
All tests should pass using both the Cortex-M33 and Hazard3 core.

Signed-off-by: Andrew Featherstone <andrew.featherstone@gmail.com>
2025-09-29 12:30:28 -04:00
Andrew Featherstone
29b3ba55d8 samples: rp2350: hazard3: Extend test to the Hazard3 core
All samples should pass on both the Cortex-M33 and the Hazard3 core.

Signed-off-by: Andrew Featherstone <andrew.featherstone@gmail.com>
2025-09-29 12:30:28 -04:00
Andrew Featherstone
1776d69ce8 boards: rp2350: Correct comments to reflect Hazard3 support
Now that there's support for the Hazard3 cores these comments are
incorrect. Remove them.

Signed-off-by: Andrew Featherstone <andrew.featherstone@gmail.com>
2025-09-29 12:30:28 -04:00
Andrew Featherstone
e7cd7e4f2d soc: rp2350a: Extend tests and samples for the Hazard3 cores
All the samples and tests are applicable to both the Cortex-M33 and
Hazard3 cores, so most of these additions are thin shims.

Signed-off-by: Andrew Featherstone <andrew.featherstone@gmail.com>
2025-09-29 12:30:28 -04:00
Andrew Featherstone
20aedb9fe3 boards: rpi_pico2: Add initial support for Hazard3 cores
Update Kconfig.rpi_pico2, add a new .dts and associated files to support
building an image targeting the RP2350A on the Raspberry Pi Pico 2 which
excutes on the Hazard3 core(s).

Tested using
```
west build -p -b rpi_pico2/rp2350a/hazard3 .\samples\hello_world
```
and programming onto the board using the generate .uf2 file, which gives
the following example output:
```
*** Booting Zephyr OS build v3.7.0-5943-g2db5e4dec7bd ***
Hello World! rpi_pico2/rp2350a/hazard3
```

Signed-off-by: Andrew Featherstone <andrew.featherstone@gmail.com>
2025-09-29 12:30:28 -04:00
Andrew Featherstone
b7217a061f dts: bindings: timer: rp2350: Add machine timer for RP2350
The RP2350's Hazard3 (RISC-V) cores use the mtime-based RISC-V timer.

Signed-off-by: Andrew Featherstone <andrew.featherstone@gmail.com>
2025-09-29 12:30:28 -04:00
Andrew Featherstone
5df091b7b1 dts: rp2350: Add DTSI for using two Hazard3 cores
Add a DTS fragment to support defining a RP2350 series SoC with two
Hazard3 cores in use.

Signed-off-by: Andrew Featherstone <andrew.featherstone@gmail.com>
2025-09-29 12:30:28 -04:00
Andrew Featherstone
cb1e51b4df soc: rp2350: Add initial support for the Hazard3 cores
The RP2350 SoC series contain two Hazard3 cores, which use the RISC-V
instruction set. Define a new CPU cluster (`hazard3`), which is intended
to be used with the two Hazard3 cores 'plugged in' to the two 'sockets'
in the RP2350 series SoCs.

Update the linker script to support linking against the correct
(ISA-specific) linker script, and to generate a correct IMAGE_DEF for
the target ISA.

Signed-off-by: Andrew Featherstone <andrew.featherstone@gmail.com>
2025-09-29 12:30:28 -04:00
Andrew Featherstone
67f2e49ce3 drivers: counter: rpi_pico: Remove redundant CMSIS include
This header file isn't required, and prevents the driver building for
the RISC-V based Hazard3 cores.

Signed-off-by: Andrew Featherstone <andrew.featherstone@gmail.com>
2025-09-29 12:30:28 -04:00
Andrew Featherstone
80a54a89cd drivers: intc: RP2350: Add initial support for Hazard3
The RP2350 uses the Xh3irq interrupt controller, which supports nested
and prioritised interrupts. This adds initial support, configuring the
controller in 'direct' (non-vectored) mode.

Signed-off-by: Andrew Featherstone <andrew.featherstone@gmail.com>
2025-09-29 12:30:28 -04:00
Andrew Featherstone
d88193cba9 drivers: clock_control: rpi_pico: Start all the tick generators
There's no benefit to starting a subset of them, and this ensure that
everything is ready, regarless of RP2040 vs RP235xx, and whether the
Cortex-M33 or Hazard3 cores are in use in the latter case.

Signed-off-by: Andrew Featherstone <andrew.featherstone@gmail.com>
2025-09-29 12:30:28 -04:00
Andrew Featherstone
984618e11a dts: rp2350: Move RP2350A and RP2350B DTS fragments to vendor/raspberrypi
These .dtsi files are common regardless of which permutation of cores
are in the two CPU 'sockets'.

Take the opportunity to make the includes paths to rp2350a.dtsi relative
to the current file to emphasise their relationship.

This is foundation work ahead of adding support for the Hazard3 cores.

Signed-off-by: Andrew Featherstone <andrew.featherstone@gmail.com>
2025-09-29 12:30:28 -04:00
Andrew Featherstone
23419dcbad modules: hal_rpi_pico: Correct comment in config_autogen.h
This comment was incorrect after changes in c9a7ba2f06 removed one of
the definitions. Correct the comment to avoid confusion in subsequent
changes.

Signed-off-by: Andrew Featherstone <andrew.featherstone@gmail.com>
2025-09-29 12:30:28 -04:00
Etienne Carriere
569a4ab8a7 tests: drivers: memc: correct buffer size to support smaller memories
Correct the buffer size to be adapted to the target memory device
not enforcing a 512kB test on SRAMs/SDRAMs when a PSRAM is also tested.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-09-29 12:28:24 -04:00
Jeremy Dick
06daf0e29e dts: arm: renesas: ra: Remove unneeded container nodes for OFS registers
The OFS container node is not necessary, just put all the child nodes
in the soc node

Signed-off-by: Jeremy Dick <jdick@pivotint.com>
2025-09-29 09:58:32 +02:00
Stefan Kraus
d380d430ea drivers: led_strip: ws2812_gpio: prevent overflow
In case one defines an RGB led that is bigger than the led_rgb struct,
ws2812_gpio_update_rgb would overflow the buffer it writes to while
iterating. This could lead to crashes, as the code would also support
GRBW (as supposed in one comment).

As a 'proper' fix would require another buffer and therefore more
memory, I added a BUILD_ASSERT to ensure it does not compile.

Signed-off-by: Stefan Kraus <dev@stefankraus.org>
2025-09-29 09:58:19 +02:00
Stefan Kraus
73eb7bb18a drivers: led_strip: ws2812_gpio: fix overwriting in loop
Due to the alias of ptr on pixels, one iterates over the same area
one reads from to set values. Therefore, if the strip is not 'RGB' but
GBR, one would overwrite the pixels 'r' value with the 'g' value in the
first loop, leading to a wrong read afterwards.

By writing to a temporary variable, we have a clean, unmodified copy
of the original values.

Additionally, this removes the dependency on 'LED_STRIP_RGB_SCRATCH',
as the scratch part (that masked most error cases) is not necessary
anymore.

Signed-off-by: Stefan Kraus <dev@stefankraus.org>
2025-09-29 09:58:19 +02:00
Robert Lubos
22eb051710 tests: net: socket: udp: Add test cases for IPv4-to-IPv6 mapped socket
Add test cases verifying that IPv4-to-IPv6 mapped socket sets the
address structure correctly when receiving data from IPv4 peer, and that
sending back data to the IPv4-to-IPv6 mapped address works correctly.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-09-29 09:58:06 +02:00
Robert Lubos
e27f8ccf91 net: context: Fix IPv4-to-IPv6 mapped sendto()
Commit 48897a9090 fixed the address
mapping for dual-stack sockets when sendmsg() was used, however the same
similar issue appears (cannot check for AF_INET family for mapped
addresses as those are AF_INET6) for regular sendto() calls.

Therefore, for the sendto() case, where dst_addr is specified, check if
the address is mapped with net_ipv6_addr_is_v4_mapped() function as
well.

This also fixes another bug in sendmsg() case, where msghdr->msg_name
could've been dereferenced even if it was NULL (for example in case
of a connected socket).

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-09-29 09:58:06 +02:00
Bjarki Arge Andreasen
91c8c07179 dts: arm: nrf54h20_cpurad: disable unsuppported s2ram state
The s2ram power state is a "suspend-to-ram" state which is not
supported by the radio core, so delete it from the overlay.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-09-29 09:57:58 +02:00
Allen Zhang
45035bef67 soc: mcxw7xx: Fixed the wrong path of sections.ld
After creating mcxw7xx subfolder in mcxw, the path to sections.ld
needs to be updated.

Signed-off-by: Allen Zhang <chunfeng.zhang@nxp.com>
2025-09-29 09:57:44 +02:00
Cristian Bulacu
0af6622c97 doc: frdm_mcxw72: Update documentation
Updated documentation for compiling Openthread application

Signed-off-by: Cristian Bulacu <cristian.bulacu@nxp.com>
2025-09-29 09:57:44 +02:00
Cristian Bulacu
3579d1cae9 samples: net: socket: echo_server: Restore generic openthread sample
Since multiple platforms than nrf are allowed to run this sample,
re-add generic openthread name for sample.

Initially, generic naming has been performed in #83195,
and then, a revert occurred in #87269

Signed-off-by: Cristian Bulacu <cristian.bulacu@nxp.com>
2025-09-29 09:57:44 +02:00
Cristian Bulacu
2ec1fa0fb8 boards: nxp: Update yaml files for frdm_mcxw boards
Upated supported features list  to allow twister build for
echo_server/client with OpenThread sample

Signed-off-by: Cristian Bulacu <cristian.bulacu@nxp.com>
2025-09-29 09:57:44 +02:00
Sylvio Alves
3b458043d8 samples: openthread: fix kconfig build warning
Fix Kconfig warnings by dropping NET_L2_IEEE802154_SHELL from the
OpenThread sample. This option depends on CONFIG_NET_L2_IEEE802154,
which is not selected in the sample, causing unmet dependency warnings.

Removing it lets the sample build cleanly without extra config noise.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2025-09-29 05:51:08 +02:00
Sylvio Alves
49355813d3 drivers: entropy: espressif: enable TRNG in driver, not clock init
Move the TRNG peripheral enable from the clock/SoC init path to the
Espressif entropy driver init.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2025-09-29 05:50:56 +02:00
Sylvio Alves
df0a88994d dtsi: espressif: add RNG peripheral clock reference
Adds default clock module reference for Espressif SoCs.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2025-09-29 05:50:56 +02:00
Make Shi
2b622a14e3 Bluetooth: Classic: AVRCP : Enable AVRCP features in shell test config
This patch enables AVRCP-related configuration options in the shell
test project. These options are required to test AVRCP functionality
in Bluetooth Classic shell environment.

Signed-off-by: Make Shi <make.shi@nxp.com>
2025-09-29 05:50:47 +02:00
Sherry Li
d90d71c42c drivers: smbus: stm32: implement smbus_block_read
Smbus implementation for stm32 lacks of smbus_block_read(), so add the
functionality.

Fix some indentations.

Signed-off-by: Andrew Lewycky <alewycky@tenstorrent.com>
Signed-off-by: Sherry Li <xiaoruli@tenstorrent.com>
2025-09-28 14:14:35 -04:00
Marcin Niestroj
7fc8051b0f drivers: wifi: esp_at: return WIFI_STATUS_* connect error codes
Return `enum wifi_conn_status` after failed connection attempt. Parse
`+CWJAP:` messages to get failure reason.

Signed-off-by: Marcin Niestroj <m.niestroj@emb.dev>
2025-09-27 14:00:09 -04:00
Pisit Sawangvonganan
601f2fde6e drivers: serial: pl011: reduce device's base address accesses
In several functions, the UART registers are accessed multiple times
through the `get_uart(dev)` inline function. This results in repeated
dereferencing of the device's base address.

This commit caches the UART register struct pointer in a local variable
`uart` at the beginning of each relevant function.

For registers where repeated access is not needed, the value is read once
into a temporary variable. Modifications, if any, are applied to
the temporary copy, and the result is written back once.

Signed-off-by: Pisit Sawangvonganan <pisit@ndrsolution.com>
2025-09-27 13:59:43 -04:00
Anas Nashif
19dc74bc66 maintainers: add 2 missing files into the doc area
add python requirement files into the doc area.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-09-27 13:59:22 -04:00
Anas Nashif
7ca097164b maintainers: Group all boards/socs into one area
Many boards and SoCs do not belong in any area, group them to correctly
tag PRs and to allow for future sub-grouping.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-09-27 13:59:22 -04:00
Anas Nashif
bd1ef01231 maintainers: add an area for dts bindings
Add an area to cover all bindings, at least to correctly label the PRs.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-09-27 13:59:22 -04:00
Anas Nashif
933490cb9a maintainers: add a global area for tests
Cover all tests in the tree to avoid missing anything that is not
covered by a specific area.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-09-27 13:59:22 -04:00
Anas Nashif
c0c235344d maintainers: add missing files to build system area
Add missing files to corrosponding area.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-09-27 13:59:22 -04:00
Anas Nashif
62a96a58e7 maintainers: add missing files to soc/board config area
Add missing files to corrosponding area

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-09-27 13:59:22 -04:00
Anas Nashif
abc7bb320d maintainers: split security/safety into own areas
Move safety and security related files into own areas.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-09-27 13:59:22 -04:00
Anas Nashif
f2d8523c74 maintainers: move linters and SCA tooling into own area
Consolidate all linters and SCA tooling into one area and separate from
the coding/style guideline documentation.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-09-27 13:59:22 -04:00
Johann Fischer
4fe2c5bd5f drivers: udc: allow to use timeout Kconfig option on nRF54LM20A SoC
Kconfig option UDC_DWC2_USBHS_VBUS_READY_TIMEOUT depends on services
exclusively available for nRF54H20, but the option can also be used for
nRF54LM20A, where there are no service dependencies, and VREG can be
accessed by the driver directly. Let depend the option on the SOC
series, as the controller can be used by the different CPUs on the SOC.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-09-26 20:48:32 -04:00
Johann Fischer
0018e8d600 drivers: udc: cleanup depends in Kconfig.dwc2
Factor out UDC_DWC2 dependency.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-09-26 20:48:32 -04:00
Benjamin Cabé
c51de9aa84 MAINTAINERS: remove warp5tw
warp5tw has never participated in any Github activity in the
zephyrproject-rtos organization

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-26 20:48:14 -04:00
Benjamin Cabé
af8d91b5c6 MAINTAINERS: remove vanti
vanti hasn't reviewed any PRs or engaged in any Zephyr
activity since Feb 2021.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-26 20:48:14 -04:00
Benjamin Cabé
2b867e7e57 MAINTAINERS: remove teikheng
teikheng hasn't reviewed any PRs or engaged in any Zephyr
activity since July 2022.

Recent activities:

- pr: enhance uart ns16550 driver to get clock frequency from clock
  manager
  https://github.com/zephyrproject-rtos/zephyr/pull/47199
  (2022-07-02T17:31:54Z)
- pr: enhance uart ns16550 driver to get clock frequency from clock
  manager
  https://github.com/zephyrproject-rtos/zephyr/pull/47167
  (2022-07-01T15:23:39Z)

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-26 20:48:14 -04:00
Benjamin Cabé
ebf76c903d MAINTAINERS: remove sjg20
sjg20 hasn't reviewed any PRs or engaged in any Zephyr
activity since Aug 2023.

Recent activities:

- review: Review on 'fuel_gauge: Add battery cutoff support'
  https://github.com/zephyrproject-rtos/zephyr/pull/61435
  (2023-08-16T20:23:21Z)
- review: Review on 'emul: Only add enabled DT nodes to bus emulators'
  https://github.com/zephyrproject-rtos/zephyr/pull/60263
  (2023-07-11T19:59:15Z)
- review: Review on 'drivers/crypto/it8xxx2: add support for SHA256
  hardware accelerator'
  https://github.com/zephyrproject-rtos/zephyr/pull/55899
  (2023-07-06T15:59:35Z)

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-26 20:48:14 -04:00
Benjamin Cabé
81ba91d959 MAINTAINERS: remove sir-branch
sir-branch hasn't reviewed any PRs or engaged in any Zephyr
activity since July 2022.

Recent activities:

- issue: JSON parses uses recursion (breaks rule 17.2)
  https://github.com/zephyrproject-rtos/zephyr/issues/48102
  (2022-07-21T08:41:09Z)
- review: Review on 'json: Skip unknown fields on parsing'
  https://github.com/zephyrproject-rtos/zephyr/pull/47989
  (2022-07-21T05:22:37Z)
- pr: net: sockets_tls: Reset mbedtls session on handshake errors
  https://github.com/zephyrproject-rtos/zephyr/pull/41527
  (2022-01-01T23:17:25Z)

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-26 20:48:14 -04:00
Benjamin Cabé
7db3fb176a MAINTAINERS: remove ghu0510
ghu0510 hasn't reviewed any PRs or engaged in any Zephyr
activity since June 2023.

Recent activities:

- commit: b9b714c8bd
- pr: ghu sensing upstream pr3
  https://github.com/zephyrproject-rtos/zephyr/pull/59469
  (2023-06-21T09:03:35Z)
- pr: sensing subsystem update
  https://github.com/zephyrproject-rtos/zephyr/pull/59468
  (2023-06-21T08:56:20Z)

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-26 20:48:14 -04:00
Benjamin Cabé
4aba50d2d8 MAINTAINERS: remove adakus
adakus hasn't reviewed any PRs or engaged in any Zephyr
activity since Jan 2023.

Recent activities:

  - review: Review on '[osdp_fixes 3/5] More CP and PD state management
    cleanups'
    https://github.com/zephyrproject-rtos/zephyr/pull/54197
    (2023-01-30T13:53:10Z)
  - review: Review on 'samples: mgmt/osdp: Select ENTROPY_GENERATOR from
    prj.conf'
    https://github.com/zephyrproject-rtos/zephyr/pull/53772
    (2023-01-27T10:15:17Z)
  - review: Review on '[osdp_fixes 2/5] Various PD cleanups,
    enhancements and fixes'
    https://github.com/zephyrproject-rtos/zephyr/pull/53763
    (2023-01-17T12:11:35Z

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-26 20:48:14 -04:00
Benjamin Cabé
c78361ee6c MAINTAINERS: remove jackrosenthal
jackrosenthal hasn't reviewed any PRs or engaged in any Zephyr
activity since Aug 2023.

Recent activities:
  - pr: scripts: zephyr_module: Tolerate symlinks
    https://github.com/zephyrproject-rtos/zephyr/pull/61352
    (2023-08-09T22:27:50Z)
  - commit: f959309fd0

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-26 20:48:14 -04:00
Benjamin Cabé
86265ea637 MAINTAINERS: remove mnkp
mnkp hasn't reviewed any PRs or engaged in any Zephyr
activity since March 2023.

Recent activities:
  - pr: MAINTAINERS: remove inactive self as GPIO maintainer
    https://github.com/zephyrproject-rtos/zephyr/pull/56167 (2023-03-23T20:40:59Z)
  - commit: 245b9c666e

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-26 20:48:14 -04:00
Benjamin Cabé
4426598396 MAINTAINERS: remove juimonen
juimonen hasn't reviewed any PRs or engaged in any Zephyr
activity since July 2023.

Recent activities:
  - review: Review on 'drivers: dai: doc: Cleanup Doxygen documentation'
    https://github.com/zephyrproject-rtos/zephyr/pull/60514
    (2023-07-18T11:01:00Z)
  - review: Review on 'intel_adsp: dmic: Refactoring of blob parsing
    function'
    https://github.com/zephyrproject-rtos/zephyr/pull/60172
    (2023-07-18T10:35:52Z)
  - review: Review on 'drivers: intel: ssp: delay initialization after
    dma'
    https://github.com/zephyrproject-rtos/zephyr/pull/60304
    (2023-07-18T10:01:58Z)

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-26 20:48:14 -04:00
Benjamin Cabé
4e360ca776 MAINTAINERS: remove jc849
jc849 has never made any form of contributions to the Zephyr project so
drop from MAINTAINERS.yml file.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-26 20:48:14 -04:00
Benjamin Cabé
4b5c30e2cf MAINTAINERS: remove brgl
brgl hasn't reviewed any PRs or engaged in any Zephyr
activity since Jan 2023.

Recent activities:
  - commit: 2d59430fc0
  - pr: maintainers: change lvgl status to "odd fixes"
    https://github.com/zephyrproject-rtos/zephyr/pull/53413
    (2023-01-02T07:58:09Z)

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-26 20:48:14 -04:00
Benjamin Cabé
755528d295 MAINTAINERS: remove bbolen
bbolem hasn't reviewed any PRs or engaged in any Zephyr
activity since June 2023.

Recent activities:
  - pr: DNM: Cortex r5 bug
    https://github.com/zephyrproject-rtos/zephyr/pull/59401
    (2023-06-19T19:41:16Z)
  - review: Review on 'arch: arm: limit FP16 support to Cortex-A or
    Cortex-R'
    https://github.com/zephyrproject-rtos/zephyr/pull/55101
    (2023-02-23T02:44:44Z)
  - review: Review on 'tests: arm: Increase main stack size with no
    optimizations'
    https://github.com/zephyrproject-rtos/zephyr/pull/48776 (2022-08-08T14:43:47Z)

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-26 20:48:14 -04:00
Benjamin Cabé
86ba56fc70 MAINTAINERS: remove Mani-Sadhasivam
Mani-Sadhasivam hasn't reviewed any PRs or engaged in any Zephyr
activity since September 2023.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-26 20:48:14 -04:00
Anas Nashif
8aeca6364e doc: use commit range as argument, not upstream/main
upstream/main depends on how you checked out the repo, it can be
anything and user might have a different remote. Use <commit range>
instead to make it more general.

Fixes zephyrproject-rtos/zephyr#96121

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-09-26 20:46:21 -04:00
TOKITA Hiroshi
c6608fcd80 drivers: virtio: Separate macros into a common header
Move macros derived from the VIRTIO specification to a shared include.
This change allows the VIRTIO standard definitions to be referenced
from outside the driver implementation.

The following definitions have also been added:

- VIRTIO_F_VERSION_1
- VIRTIO_F_ACCESS_PLATFORM
- VIRTIO_RING_F_INDIRECT_DESC
- VIRTIO_RING_F_EVENT_IDX
- VIRTQ_AVAIL_F_NO_INTERRUPT
- VIRTQ_USED_F_NO_NOTIFY

Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@gmail.com>
2025-09-26 20:45:00 -04:00
Vincent Tardy
a2691c6695 boards: st: nucleo_wba65ri: enable ieee802154 node
enable ieee802154 node for nucleo_wba65ri

Signed-off-by: Vincent Tardy <vincent.tardy@st.com>
2025-09-26 20:44:45 -04:00
Vincent Tardy
f530ffc033 soc: stm32: add 802.15.4 support for STM32WBA
Add 802.15.4 support in hci_if files

Signed-off-by: Vincent Tardy <vincent.tardy@st.com>
2025-09-26 20:44:45 -04:00
Vincent Tardy
a5fe624f8f MAINTAINERS: Add driver ieee 802.15.4 for STM32 Wireless Platform
Add ieee802154 driver in STM32 Wireless Platform section

Signed-off-by: Vincent Tardy <vincent.tardy@st.com>
2025-09-26 20:44:45 -04:00
Vincent Tardy
dc89803697 drivers: ieee802154: add support of 802.15.4 for STM32WBA
Add the driver itself and Kconfig/CMakeLists/dts/bindings related to it.
Other files and libraries needed are in ST's dedicated folder
hal_stm32 (modules/hal/stm32).

Signed-off-by: Vincent Tardy <vincent.tardy@st.com>
2025-09-26 20:44:45 -04:00
Vincent Tardy
eaeb091ee8 west.yml: update hal_stm32 version
Update hal_stm32 version to latest commit:
dc7c2543a079c57a4e7dbee54ed7877880dc235b

Signed-off-by: Vincent Tardy <vincent.tardy@st.com>
2025-09-26 20:44:45 -04:00
Etienne Carriere
7aca82709c boards: st: stm32n6570_dk: clarify boot pins information
Clarify the BOOT0/BOOT1 configuration needed to program the flash
memory or to load the image straight in RAM (serial boot variant 'sb').

Explicit what the 2 USB connectors are used for in 'sb' variant
configuration.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-09-26 16:02:43 -04:00
Etienne Carriere
e0aa4eb4a2 boards: st: nucleo_n657x0_q: clarify boot pins information
Clarify the BOOT0/BOOT1 configuration needed to program the flash
memory or to load the image straight in RAM (serial boot variant 'sb').

Fix the build directive when 'sb' variant is to be used.

Explicit what the 2 USB connectors are used for in the 'sb' variant
configuration.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-09-26 16:02:43 -04:00
Pieter De Gendt
02be059a4f tests: modules: nanopb: Release decoded messages
If CONFIG_NANOPB_ENABLE_MALLOC is enabled, any successfully decoded message
should be released.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-09-26 16:02:34 -04:00
Pieter De Gendt
93da92cfcb samples: modules: nanopb: Release decoded message
If CONFIG_NANOPB_ENABLE_MALLOC is enabled, any successfully decoded message
should be released.
Update the sample, to lead by example.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-09-26 16:02:34 -04:00
Titouan Christophe
3993a739e9 drivers: i2s: ll_stm32: fix missing implementation for i2s_config_get
This fixes system crashes in `i2s_buf_write`, because this function
internally calls `i2s_config_get`, which resulted in a NULL pointer on
stm32 i2s devices.

Signed-off-by: Titouan Christophe <titouan.christophe@mind.be>
2025-09-26 16:02:02 -04:00
Benjamin Cabé
676673fec2 include: drivers: opamp: doxygen fixups
minor fixes to align docs with other drivers

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-26 16:01:54 -04:00
Chris Friedt
bc02f34f16 drivers: smbus: stm32: send block write byte count
Send "count" byte. The SMBus block write protocol requires this byte.

Use I2C_MSG_WRITE named flag instead of 0.

Signed-off-by: Andrew Lewycky <alewycky@tenstorrent.com>
Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-09-26 16:01:44 -04:00
Mahesh Mahadevan
30ad0ee2a6 soc: rw612: Reinitialize the GDET sensor and Voltage rails
Before re-entering Power Mode 3, we should disable the GET
sensor and reinitialize the power rails.

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2025-09-26 16:01:22 -04:00
Shreehari HK
aa50860712 drivers: i3c: add open-drain speed support
Add SHELL support for configuring I3C open-drain speed modes.

Implementation:
- Include open-drain timing configuration inside cmd_i3c_speed function.

Signed-off-by: Shreehari HK <shreehari.hk@alifsemi.com>
2025-09-26 16:00:42 -04:00
Shreehari HK
c81b029fca drivers: i3c: configure open-drain speed
Add support for configuring I3C open-drain speed modes to handle
different timing requirements during bus initialization and operation.

Implementation:
- Fetch current controller configuration
- Invoke configure api inside bus_init to configure
  I3C open-drain high period for proper bus
  initialization and device compatibility.

The slow speed mode is essential for the first broadcast address
transmission to ensure visibility to all devices on the I3C bus,
particularly those in I2C mode that need to disable their spike
filters when switching to I3C mode. This requirement is specified
in "Table 49 I3C Basic Open Drain Timing Parameters" of the MIPI
ALLIANCE Specification for I3C Basic Version 1.2.

Signed-off-by: Shreehari HK <shreehari.hk@alifsemi.com>
2025-09-26 16:00:42 -04:00
Shreehari HK
4d6673bc69 drivers: i3c: dw: enhance open-drain timing configuration
This commit improves the I3C handling of open-drain
timing configurations with the following changes:
- Add OD minimum high_ns and low_ns DT properties
- Implement dw_i3c_init_scl_timing for runtime timing updates
- Initialize scl_od_min configuration from device tree
- Maintain backward compatibility with existing configurations

Requirement (MIPI Specification for I3C Basic v1.2 (16-Dec-2024),
             Section 4.3.11.2 & Table 49):
- The MIPI I3C specification mandates different open-drain speeds during
  bus initialization as defined in
  "I3C Basic Open Drain Timing Parameters".
- The first broadcast address (7'h7E+W) must be transmitted at a slower
  open-drain speed to ensure visibility to all devices on the I3C bus,
  including legacy I2C devices. This slow speed (minimum 200ns Thigh)
  allows I2C devices to properly detect the I3C mode transition and
  disable their spike filters before switching to I3C mode. After the
  initial broadcast, normal I3C open-drain speeds can be used for
  regular operation.

Signed-off-by: Shreehari HK <shreehari.hk@alifsemi.com>
2025-09-26 16:00:42 -04:00
Shreehari HK
7735be8c75 include: zephyr: drivers: i3c: add open-drain timing configuration
This commit adds the I3C handling of open-drain
timing configurations with the following changes:
- Add scl_od_min structure to i3c_config_controller for
  high/low period settings
- Define Open-drain mixed bus SCL timing constants

Requirement (MIPI Specification for I3C Basic v1.2 (16-Dec-2024),
             Section 4.3.11.2 & Table 49):
- The MIPI I3C specification mandates different open-drain speeds during
  bus initialization as defined in
  "I3C Basic Open Drain Timing Parameters".
- The first broadcast address (7'h7E+W) must be transmitted at a slower
  open-drain speed to ensure visibility to all devices on the I3C bus,
  including legacy I2C devices. This slow speed (minimum 200ns Thigh)
  allows I2C devices to properly detect the I3C mode transition and
  disable their spike filters before switching to I3C mode. After the
  initial broadcast, normal I3C open-drain speeds can be used for
  regular operation.

Signed-off-by: Shreehari HK <shreehari.hk@alifsemi.com>
2025-09-26 16:00:42 -04:00
Łukasz Fundakowski
f23b1f59da twister: Improve handling SystemExit exceptions
If twister exits by sys.exit function or by raising
the SystemExit exception, catch that exceptions and
return proper exit code.

Signed-off-by: Łukasz Fundakowski <lukasz.fundakowski@nordicsemi.no>
2025-09-26 09:38:10 -04:00
dependabot[bot]
39a0ee117c ci: github: bump the actions-deps group with 3 updates
Bumps the actions-deps group with 3 updates: [tj-actions/changed-files](https://github.com/tj-actions/changed-files), [github/codeql-action](https://github.com/github/codeql-action) and [zephyrproject-rtos/action-zephyr-setup](https://github.com/zephyrproject-rtos/action-zephyr-setup).


Updates `tj-actions/changed-files` from 46.0.5 to 47.0.0
- [Release notes](https://github.com/tj-actions/changed-files/releases)
- [Changelog](https://github.com/tj-actions/changed-files/blob/main/HISTORY.md)
- [Commits](ed68ef82c0...24d32ffd49)

Updates `github/codeql-action` from 3.30.1 to 3.30.3
- [Release notes](https://github.com/github/codeql-action/releases)
- [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md)
- [Commits](f1f6e5f6af...192325c861)

Updates `zephyrproject-rtos/action-zephyr-setup` from 1.0.8 to 1.0.9
- [Commits](6a744370a2...c125c5ebee)

---
updated-dependencies:
- dependency-name: tj-actions/changed-files
  dependency-version: 47.0.0
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: actions-deps
- dependency-name: github/codeql-action
  dependency-version: 3.30.3
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: actions-deps
- dependency-name: zephyrproject-rtos/action-zephyr-setup
  dependency-version: 1.0.9
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: actions-deps
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-09-26 09:35:50 -04:00
Jordan Yates
584aa3e342 testsuite: ztest: disable ZTEST_NO_YIELD for COVERAGE_DUMP
Don't enable `ZTEST_NO_YIELD` when `COVERAGE_DUMP` is enabled, since
this option spins forever at the end of `main`, while `COVERAGE_DUMP`
occurs after `main` returns into `bg_thread_main`.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-09-26 09:35:41 -04:00
Chris Friedt
584b73a8d4 timeutil: make timespec_normalize() a regular function
Since the timespec_normalize() function is not branchless, and since it
can also generate a fair bit of code, make the function non-inline and
place it in timeutil.c instead.

This should save some code space on most systems.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-09-26 09:35:33 -04:00
Chris Friedt
d02235cad3 timeutil: timespec: mitigate warnings when -Wtype-limits is used
Previously, warnings could be promoted to errors in timeutil.h. Those
warnings were of the form below.

warning: comparison is always true due to limited range of data type
warning: comparison is always false due to limited range of data type

Specifically, in the speed-optimized version of timespec_normalize() and
in the macro SYS_TICKS_TO_NSECS().

The speed-optimized version of timespec_normalize(), which used the
__builtin_add_overflow() function, was mainly intended to be branchless.
However, many targets generate branching instructions regardless.

The speed optimized version is less valuable in that case, so remove it.

Additionally, SYS_TICKS_TO_NSECS() does not generate the above warnings
when k_ticks_to_ns_floor64() is used instead of k_ticks_to_ns_floor32(),
so use the former.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-09-26 09:35:33 -04:00
Jukka Rissanen
ed6b4a2abd net: websocket: Send CLOSE back to server when received one
When zephyr receives WS CLOSE, send it back to server and close
the TCP connection.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-09-26 09:35:24 -04:00
Jukka Rissanen
688bc4bf86 net: websocket: Fix the typo in function name
s/interal/internal/g

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-09-26 09:35:24 -04:00
Michał Stasiak
4afec7cf47 tests: ram_context_for_isr: pick IRQ number for nRF54L
Picked IRQ number available on all platforms.

Signed-off-by: Michał Stasiak <michal.stasiak@nordicsemi.no>
2025-09-26 09:34:59 -04:00
Fabio Baltieri
a3bb826a20 tests: bluetooth: fix various shadowed declarations
Fix various -Werror=shadow errors.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2025-09-26 09:34:40 -04:00
Anas Nashif
83132c767f Revert "ci: set_assignee: add release team on PRs without review"
Script does not handle already assigned PRs correctly, revert until we
have a proper fix.

This reverts commit 972ebb64dc.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-09-26 08:02:38 -04:00
Fabio Baltieri
3232354456 cmake: unittest: set -Wshadow
Set -Wshadow when compiling unit tests, this way we can test macro
combinations and ensure they don't generate shadowed variables, which
would generate a warning by default in normal Zephyr builds.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2025-09-26 13:24:30 +02:00
Fabio Baltieri
0db0db836e tests: cbprintf: fix few shadowed variables
Rename few local variables that were shadowing object ones with the same
name. Allows building with -Wshadow.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2025-09-26 13:24:30 +02:00
Tomi Fontanilles
3ced42c5e5 secure_storage: remove experimental status
The subsystem has been out for a year.
It has been taken into use by various parties and has gone through
additional downstream testing.
It is considered stable and mature enough to not be experimental
anymore.

Signed-off-by: Tomi Fontanilles <tomi.fontanilles@nordicsemi.no>
2025-09-26 13:24:06 +02:00
Tomi Fontanilles
fd0bf8b2f9 secure_storage: add version to psa_secure_storage Doxygen group
Align the version with the current latest published specification.

Signed-off-by: Tomi Fontanilles <tomi.fontanilles@nordicsemi.no>
2025-09-26 13:24:06 +02:00
Tomi Fontanilles
98e48e8c90 secure_storage: document psa/error.h
Add Doxygen documentation to everything defined in this header file.

Signed-off-by: Tomi Fontanilles <tomi.fontanilles@nordicsemi.no>
2025-09-26 13:24:06 +02:00
Tomi Fontanilles
03a349624a secure_storage: its: small language improvements to function comments
Minor tweaks for clarity.

Signed-off-by: Tomi Fontanilles <tomi.fontanilles@nordicsemi.no>
2025-09-26 13:24:06 +02:00
Tomi Fontanilles
d38fb888a8 secure_storage: its: improve return codes
Instead of returning storage-related error codes, return ones which
make it clear that it's not about the storage itself.

Signed-off-by: Tomi Fontanilles <tomi.fontanilles@nordicsemi.no>
2025-09-26 13:24:06 +02:00
Tomi Fontanilles
2cad6fab0b secure_storage: remove NULL pointer checks
It is the caller's responsibility to ensure pointers are valid.
Save on code size.

Signed-off-by: Tomi Fontanilles <tomi.fontanilles@nordicsemi.no>
2025-09-26 13:24:06 +02:00
Anas Nashif
972ebb64dc ci: set_assignee: add release team on PRs without review
In cases where we are not able to assign a PR due to lack of matches in
the maintainer file, add the release team to the reviewers so someone
can triage it. Also add a comment to make it clear that the release team
was added for triage purposes only.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-09-26 13:23:44 +02:00
Andrzej Głąbek
804508f775 tests: mspi: flash: Add scenario for non-multithreading flash_mspi_nor
Add test scenario for the flash_mspi_nor driver used in a configuration
with disable multithreading.

Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
2025-09-26 13:23:34 +02:00
Andrzej Głąbek
828bde8213 drivers: flash_mspi_nor: Add support for CONFIG_MULTITHREADING=n
Add possibility to use the driver in configurations with disabled
multithreading. It may be useful in bootloaders, for example.

Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
2025-09-26 13:23:34 +02:00
Andrzej Głąbek
c8e3bfac1c drivers: mspi_dw: Add support for CONFIG_MULTITHREADING=n
Add possibility to use the driver in configurations with disabled
multithreading. It may be useful in bootloaders, for example.

Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
2025-09-26 13:23:34 +02:00
Maochen Wang
d0e2bb5b93 tests: net: wifi: add the build of hostapd WPS, DPP and roaming
Add the check of roaming and hostaped based WPS and DPP case.

Signed-off-by: Maochen Wang <maochen.wang@nxp.com>
2025-09-26 13:23:20 +02:00
Maochen Wang
b7a9d88290 hostap: fix the build error of zephyr_hostapd_cli_cmd_resp
Fix the build error that missing ctrl parameter in
zephyr_hostapd_cli_cmd_resp by getting iface->ctrl_conn.

Signed-off-by: Maochen Wang <maochen.wang@nxp.com>
2025-09-26 13:23:20 +02:00
Maochen Wang
6ba447a251 hostap: fix the build error of undefined wpa_s->ctrl_conn
Fix the build error that wpa_s isn't defined in supplicant_candidate_scan
when CONFIG_WIFI_NM_WPA_SUPPLICANT_ROAMING is enabled.

Signed-off-by: Maochen Wang <maochen.wang@nxp.com>
2025-09-26 13:23:20 +02:00
Muhammed Asif
3b5d7a40fc tests: pwm: sam0: Added overlay file for pwm starting
- Added the overlay files for testing the same54_xpro boards
  for the pwm_gpio_loopback test.

Signed-off-by: Muhammed Asif <asifp3104@gmail.com>
2025-09-26 13:23:07 +02:00
Muhammed Asif
67a25f245d drivers: pwm: sam0: Add support for tc 32 bit mode
- Added logic for updating the registers for 32 bit when
   32-bit counter size is selected.

Signed-off-by: Muhammed Asif <asifp3104@gmail.com>
2025-09-26 13:23:07 +02:00
Muhammed Asif
b26252b120 dts: pwm: sam0: Added 32 bit support for pwm
Updated the yaml with 32 bit counter enum

Signed-off-by: Muhammed Asif <asifp3104@gmail.com>
2025-09-26 13:23:07 +02:00
Iuliana Prodan
a795046143 ipc: move Open AMP from lib/ to subsys/ipc/
Moved the Open AMP code from lib/ to subsys/ipc/ to better
organize IPC-related components.

Updated build and config files to reflect the new location.

Adjusted path in MAINTAINERS.yml.

Signed-off-by: Iuliana Prodan <iuliana.prodan@nxp.com>
2025-09-26 13:22:55 +02:00
Robin Kastberg
d1e5c34ccc iar: toolchain: Cortex-M85 support
Add support in IAR build system for Cortex-M85.

Signed-off-by: Robin Kastberg <robin.kastberg@iar.com>
2025-09-26 13:22:38 +02:00
Alain Volmat
945133e66e boards: st: stm32n6570_dk: re-enable PSRAM cache access
Re-enable the cache usage for the PSRAM now that the PSRAM size
has been adjusted in order to prevent stability issues when using
it with cache enabled.

This reverts the change introduced in
commit 97608e4cc0 ("boards: stm32n6570_dk: Disable cache on PSRAM")

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-09-26 11:08:09 +02:00
Alain Volmat
8675d738e7 boards: st: n6: avoid access to last 32B of memory-mapped XSPI device
System might become unstable when the last 32 bytes of a XSPI attached
are accessed in memory-mapped mode with cache enabled.
In order to prevent this, remove the last 32-bytes of the PSRAM on the
stm32n6570_dk as well as NOR on the nucleo n657x0_q.
Partitions should also be defined in a way to avoid accessing to the
last 32-bytes of the device.

Issue is described in the STM32N6xxxx errata sheet ES0620 Rev 1:
2.4.5 Deadlock or data corruption when DQS is enabled and the wrap
request includes the last address of the memory

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-09-26 11:08:09 +02:00
Ren Chen
eba8f3a3eb soc: ite: it8xxx2: enable firmware control mode for elpm
This commit enables firmware control mode for elpm by default.

Signed-off-by: Ren Chen <Ren.Chen@ite.com.tw>
2025-09-26 11:07:54 +02:00
Ren Chen
1b7170b81b dts: ite: it82000: add pinctrl_q and power_ctrl_elpm nodes
as title.

Signed-off-by: Ren Chen <Ren.Chen@ite.com.tw>
2025-09-26 11:07:54 +02:00
Yangbo Lu
bdb5c3072a drivers: eth_nxp_imx_netc: add promisc mode support
Added promisc mode support for eth_nxp_imx_netc.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-09-26 11:07:34 +02:00
Hongbo Wang
bb4edb7d32 boards: frdm_imx91: enable tpm2 counter support
Enable TPM2 counter support on FRDM_IMX91 board.
Compile commands:
west build -p always -b frdm_imx91/mimx9131 \
             tests/drivers/counter/counter_basic_api/

Signed-off-by: Hongbo Wang <hongbo.wang@nxp.com>
Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-09-26 11:07:26 +02:00
Hongbo Wang
6c34a47c8c boards: nxp: add support for platform FRDM-IMX91
Added FRDM-IMX91 board support.
Building hello_world:
west build -p always -b frdm_imx91/mimx9131 samples/hello_world

Signed-off-by: Hongbo Wang <hongbo.wang@nxp.com>
Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-09-26 11:07:26 +02:00
Sean O'Connor
d1a7d1dde1 samples: i2s: echo: Enable nRF53 MCK output in I2S sample
Enable the MCK output to a pin to allow for DAC and ADC clocking.
Provides a MCK source to peripherals that can utilize an external
clocking source for internal DSP processes, especially at higher
MCK/LRCK ratios.

Signed-off-by: Sean O'Connor <sean@standalone.tech>
2025-09-26 11:07:12 +02:00
Sean O'Connor
8115d9b453 drivers: i2s: nrfx: Allow MCK bypass for proper LRCK and MCK Ratios
nRF53 series SoCs have a dedicated configurable audio PLL and the ability
to enable MCK bypass via a register value CONFIG.CLKCONFIG. This can
enable higher MCK/LRCK ratios that some I2S peripherals require the host
to generate. Allow an application developer to choose if they want to
initially look for a bypass ratio and, if found, enable bypass in the
NRFX driver. If not, the standard MCK calculation is conducted as normal.

Signed-off-by: Sean O'Connor <sean@standalone.tech>
2025-09-26 11:07:12 +02:00
Muhammad Waleed Badar
0eb4000cd0 samples: rtc: add overlay for da14695 and da14699
Add overlay for da14695 and da14699 soc and rtc alias
for da1469x_dk_pro and da14695_dk_usb boards

Signed-off-by: Muhammad Waleed Badar <walid.badar@gmail.com>
2025-09-26 11:07:02 +02:00
Yongxu Wang
208607d28a samples: drivers: uart: removed lpuart from an incompatible filter
Removed lpuart from sample.drivers.uart.async_api.console

Signed-off-by: Yongxu Wang <yongxu.wang@nxp.com>
2025-09-26 09:12:18 +02:00
Heghedus Razvan
5430400579 shell: add option to toggle logs output
When logging through shell is enabled, it is inconvenient to use
the shell when there are logs coming in. Having a mechanism for
easy disabling/re-enabling the shell logs is a nice quality of life
feature.

To toggle the logs, `CTRL+T` combination can be used. This is
available only when meta key feature is enabled.

Signed-off-by: Heghedus Razvan <heghedus.razvan@protonmail.com>
2025-09-26 09:10:50 +02:00
Ayush Singh
78197c6886 boards: beagle: pocketbeagle_2: a53: Enable I2C3
- I2C3 is the default config for P2.09 and P2.11 according to schematic.

Signed-off-by: Ayush Singh <ayush@beagleboard.org>
2025-09-26 09:10:20 +02:00
Thorsten Klein
b9516025ce scripts: west_commands: fix default build directory fallback
fixed fallback to default build directory (build) in case that no other
build directory could be determined.

Signed-off-by: Thorsten Klein <Thorsten.Klein@bshg.com>
2025-09-26 09:09:56 +02:00
Jukka Rissanen
c155dfa3a3 net: tcp: Print relative seq and ack numbers
It is easier to debug things when both the relative and absolute
TCP seq and ack numbers are printed in debug prints.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-09-26 09:09:38 +02:00
Jukka Rissanen
2295878a3a tests: net: udp: Add shutdown() test
Make sure shutdown() closes receiving side of the UDP socket.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-09-26 09:09:38 +02:00
Jukka Rissanen
fe932ddbf0 net: context: Remember socket shutdown status
Use the socket eof flag to determine whether the receive
callback should be installed. If the receive cb is not installed,
then the socket cannot receive any data.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-09-26 09:09:38 +02:00
Jukka Rissanen
a08d48ed19 logging: backend: net: Discard all received data from TCP or UDP socket
If there is received data in the TCP or UDP socket, discard it in order to
avoid leaking net_bufs because we are only sending data out and should
not receive anything.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-09-26 09:09:38 +02:00
Jukka Rissanen
f7c14319a3 logging: backend: net: Do not bind local socket
The logging net backend will send syslog messages to syslog server and
it is not meant to receive anything. If we bind to a local socket, it will
create UDP server socket that can receive data. Unfortunately there is no
one reading the data so we will eventually run out of memory in this case.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-09-26 09:09:38 +02:00
Jonas Berg
8f131295af boards: shields: Add Adafruit LTR-329 light sensor shield
The product photo is from https://learn.adafruit.com/assets/115230

Tested with the commmand mentioned in the index.rst file.

Compilation testing in CI of the overlay file is done via the
light_polling sample.

Signed-off-by: Jonas Berg <jonas.s.t.berg@gmail.com>
2025-09-26 09:09:26 +02:00
Hou Zhiqiang
7476c5278d drivers: scmi: nxp: fix build warning
When none of the configs is enabled, it will reports the following build
warning:

CMake Warning at zephyr/CMakeLists.txt:1096 (message):
  No SOURCES given to Zephyr library: drivers__firmware__scmi__nxp

  Excluding target from build.

Signed-off-by: Hou Zhiqiang <Zhiqiang.Hou@nxp.com>
Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-09-26 06:40:56 +02:00
Pete Johanson
7adf46690a boards: adi: Add Arduino I2C support to APARD32690
Properly export a working `&arduino_i2c` node on the APARD32690 board, for
use with various Uno shields.t

Signed-off-by: Pete Johanson <pete.johanson@analog.com>
2025-09-26 06:40:47 +02:00
Daniel Leung
20417c4363 tests: kernel/smp: customize for test_smp_ipi
This adds some kconfigs to allow customizing the SMP IPI
broadcast test.

* Can running for more iterations.
* The wait period can be changed.
* Retry waiting for the other processors to complete
  processing the IPI.
  * This is mainly to avoid having a single long wait.
    The whole wait period is broken down so that we can
    bail out early if that iteration is deemed a success.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-09-26 06:40:40 +02:00
Mark Wang
e82a9951e8 bluetooth: a2dp: fix spelling error of STEREO
change A2DP_SBC_CH_MODE_STREO as A2DP_SBC_CH_MODE_STEREO

Signed-off-by: Mark Wang <yichang.wang@nxp.com>
2025-09-26 06:40:29 +02:00
Carles Cufi
0d7e0b8969 tests: drivers: build_all: gpio: Fix license
This overlay was mistakenly submitted using a Nordic-specific license.
Switch to the standard Apache 2.0.

Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
2025-09-25 14:20:01 -04:00
Fabrice DJIATSA
3c9d3b3457 samples: drivers: uart: async_api: update test configurations
- Deactivate cache to avoid the TX buffer being placed in a
  non-cacheable memory region for NUCLEO_F746ZG.
- Add missing configuration in the overlay for STM32F3-DISCO.
- Change USART1 to USART2 to avoid conflicts on NUCLEO_F103RB.


Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2025-09-25 14:19:53 -04:00
Fabrice DJIATSA
7f8b74afac tests: drivers: uart: uart_elementary: update configurations
changes test configuration for nucleo_h753zi and nucleo_g071rb

- nucleo_g071rb

 Delete undefined USB node to resolve CI failure.
 Update CTS and RTS pin signals to avoid another conflict.

- nucleo_h753zi

 Add CTS and RTS pins.

- stm32u083c_dk

  Finally, remove stm32u083c_dk due to pin conflicts
  (see UM3292 table 14).

- update sample.yaml to exclude nucleo_h743zi, which will no
  longer be available for testing. Also remove stm32u083c_dk
  from CI testing.

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2025-09-25 14:19:53 -04:00
Etienne Carriere
c7b31f3957 samples: boards: st: power_mgmt remove standby_shutdown sample
Remove samples/boards/st/power_mgmt/standby_shutdown.

Sample standby_shutdown in boards/st/power_mgmt includes 2 examples.
One demonstrates wakeup from shutdown using a wakeup pin which is already
implemented in samples/boards/st/power_mgmt/wkup_pins. The other
demonstrates wakeup from SoC STANDBY mode using a wakeup pin. However
it enters SoC STANDBY mode through pm_state_force() whereas
STANDBY mode is not a PM standby or idle state, it is rather a shutdown
with possibly only a unique small SRAM retention, not allowing retention
of the system as expected from Zephyr standby or idle state flavors.
Therefore this second scenario is not applicable and can be removed.

Update doc redirection to link removed sample documentation to ST board
power management related samples documentation.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-09-25 14:19:44 -04:00
Sylvio Alves
2ace07774d samples: boards: espressif: update board reference
As esp32s3_devkitm does not provide SPIRAM, change test
to use esp32s3_devkitc instead.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2025-09-25 14:19:32 -04:00
Sylvio Alves
c54ce41f11 boards: esp32s3_devkitc: make default with spiram
This board always integrates SPIRAM. So make it default 8M.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2025-09-25 14:19:32 -04:00
Karsten Koenig
19f709910f soc: nordic: common: uicr: Add GRTC fast clkout
Add the mapping for the GRTC_CLKOUT_FAST pinctrl mapping to the
periphconf generation. This allows clocking out the 16MHz clock with a
user selectable divider.

Signed-off-by: Karsten Koenig <karsten.koenig@nordicsemi.no>
2025-09-25 14:19:22 -04:00
Sylvio Alves
62ab43d1f0 west.yml: espressif: improvements and updates
- Keep RISC-V interrupt state if placed in IRAM when
cache enable/disable is called.

- Update hal_espressif to include TX notify callback for
the following SoCS: ESP32-C2, ESP32-C6 and ESP32-H2.

- Removed Wi-Fi/BLE binary blobs that are not required.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2025-09-25 14:19:13 -04:00
Cla Mattia Galliard
31b067482a drivers: power_domain: gpio: Use k_timepoint_t for absolute time
Use k_timepoint_t instead of k_timeout_t for absolute time to avoid
ambiguity and ensure the code works even when CONFIG_TIMEOUT_64BIT=n.

Signed-off-by: Cla Mattia Galliard <clamattia@gmail.com>
2025-09-25 14:19:04 -04:00
Cla Mattia Galliard
52f1133806 drivers: gnss: quectel lcx6g: Fix overflow by using timepoint-API
Make use of the timepoint-API to fix a potential 32-bit unsigned int
overflow in this driver.

Signed-off-by: Cla Mattia Galliard <clamattia@gmail.com>
2025-09-25 14:18:54 -04:00
Cristian Bulacu
18f1abdc30 net: l2: openthread: Fix nat64 API compile warning
This PR includes OpenThread's NAT64 header file when
NAT64_TRANSLATOR is enabled. This is done to avoid compile
warnings when OT NAT64 API is used.

Signed-off-by: Cristian Bulacu <cristian.bulacu@nxp.com>
2025-09-25 14:18:45 -04:00
Quentin LACOMBE
69efca72fb lvgl: add new migration guide entry
This patch can cause breaking change, so it need migration guide entry.

Signed-off-by: Quentin LACOMBE <quentlace2g@gmail.com>
2025-09-25 14:18:37 -04:00
Quentin LACOMBE
a974785131 lvgl: Fix monochrome display color inversion
Fix issue that cause color inversion with monochrome display by replace
PIXEL_FORMAT_MONO10 by PIXEL_FORMAT01 to have the expected behavior.

Signed-off-by: Quentin LACOMBE <quentlace2g@gmail.com>
2025-09-25 14:18:37 -04:00
Pieter De Gendt
9b24a80faa doc: develop: west: config: Add auto-cache
Add an entry to the west configuration table for auto-cache.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-09-25 14:18:25 -04:00
Pieter De Gendt
0af7142f87 doc: develop: west: Add v1.5.0 release notes
Add a section to the west release notes for v1.5.0.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-09-25 14:18:25 -04:00
Lucien Zhao
5261025116 boards: nxp: mimxrt1180_evk: switch to use C parts
- mimxrt1189cvm8c part have been designed on public EVK board
  switch to use mimxrt1189cvm8c part
- Update some doc web information in index.rst

Signed-off-by: Lucien Zhao <lucien.zhao@nxp.com>
2025-09-25 14:18:16 -04:00
Lucien Zhao
beb7114f0d soc: nxp: imxrt: add c parts for RT1180
add c parts for RT1180

Signed-off-by: Lucien Zhao <lucien.zhao@nxp.com>
2025-09-25 14:18:16 -04:00
Lucien Zhao
6767cacb87 west.yml: update hal_nxp for rt1180 pinctrl.h
Updated hal_nxp to add rt1180 pinctrl.h

Signed-off-by: Lucien Zhao <lucien.zhao@nxp.com>
2025-09-25 14:18:16 -04:00
Declan Snyder
8e30c5400a tests: pm: Add constraint list API test
Add test for lock/unlock constraint lists using the new arbitrary DT
phandles macros and pm_policy_state_constraints_get/put APIs.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-09-25 14:18:05 -04:00
Bjarki Arge Andreasen
6581db3901 dts: arm: nxp: rw6xx_common.dtsi: use default power domain
Update board to use default power domain for the "peripheral"
domain, which when resumed prevents SoC from entering suspend and
standby states as these power down peripherals.

Note by co-author: Cherry-picked this commit and edited it to work
without the generic domain refactoring on the branch it came from.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
Co-authored-by: Declan Snyder <declan.snyder@nxp.com>
2025-09-25 14:18:05 -04:00
Declan Snyder
1481755acb drivers: uart_mcux_flexcomm: Refactor low power state handle
Refactor low power state handling to not tie to zephyr,disabling-states
and define it's own separate "low power states" property in DT instead.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-09-25 14:18:05 -04:00
Declan Snyder
a4225b1ee8 pm: Add constraint lists and APIs
Some pieces of the system may have custom types of constraints that they
define based on different effects and reasons than just the standard
"zephyr,disabling-states". To avoid every single one of these component
reinventing the wheel, make some common APIs to handle these type of
custom constraint lists.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-09-25 14:18:05 -04:00
Declan Snyder
ae1f13149f pm: Extend pm notifier to be able to report substate
I am surprised this notifier didn't already report the substate id, it
seems important since different substate obviously are defined for a
reason, they can be having a different effect on the system.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-09-25 14:18:05 -04:00
Lucien Zhao
28530bc768 samples: subsys: ipc: openamp: correct mpu attribution
- Set ocram2_sh_mem attribution as ATTR_MPU_RAM_NOCACHE

Signed-off-by: Lucien Zhao <lucien.zhao@nxp.com>
2025-09-25 14:17:57 -04:00
Lucien Zhao
c503850cd4 boards: nxp: rt1180: migrate mpu setting under board folder
- add NXP_BOARD_SPECIFIC_MPU_SETTINGS kconfig to provide a switch
  for developer if they want to use private mpu settings
    CONFIG_NXP_BOARD_SPECIFIC_MPU_SETTINGS==1  | NXP default setting
    CONFIG_NXP_BOARD_SPECIFIC_MPU_SETTINGS==0  | User specific

- Use DT function to get memory base address and region size for cm7

- CM33 use dts to set mpu settings

- Add REGION_CUSTOMED_MEMORY_SIZE macro provide a common mapping ways
  to map actual memory_size_kb to "region_size"

-  The settings of the unified memory on cm33/cm7 cores:
    ocram1/flexspi2 -> REGION_RAM_NOCACHE_ATTR
    ocram2/dtcm -> REGION_RAM_NOCACHE_ATTR
    flexspi/itcm -> REGION_FLASH_ATTR

Signed-off-by: Lucien Zhao <lucien.zhao@nxp.com>
2025-09-25 14:17:57 -04:00
Grzegorz Swiderski
8df937e8cd doc: storage: zms: Update to reflect new additions
The ATE structure section is now divided into subsections describing
multiple ATE formats, including the one added for CONFIG_ZMS_ID_64BIT.
The sections about features and recommendations are updated as well.

Mentions of 32-bit key/ID are revised to account for 64-bit ID support.
Mentions of <= 8 bytes data size also had to be reworked, because this
property is tied to the chosen ATE format.

Some unrelated, minor changes are also sprinkled throughout.

Signed-off-by: Grzegorz Swiderski <grzegorz.swiderski@nordicsemi.no>
2025-09-25 14:17:24 -04:00
Grzegorz Swiderski
4a3b87b8d4 tests: zms: Add test coverage for ZMS_ID_64BIT
* Update the "corrupt ATE" tests to work with the new ATE format.

* Add a basic test to verify support to 64 bit ZMS IDs.

* Add a `testcase.yaml` entry to cover the above points and also run
  lookup cache tests to evaluate the 64 bit hash function.

Signed-off-by: Grzegorz Swiderski <grzegorz.swiderski@nordicsemi.no>
2025-09-25 14:17:24 -04:00
Grzegorz Swiderski
183851204f tests: zms: Minor improvements
* Explicitly skip tests that depend on CONFIG_ZMS_LOOKUP_CACHE.

* In `testcase.yaml`, use `extra_configs` instead of `extra_args` for
  setting Kconfigs.

Signed-off-by: Grzegorz Swiderski <grzegorz.swiderski@nordicsemi.no>
2025-09-25 14:17:24 -04:00
Grzegorz Swiderski
620bf58a1e zms: Initial support for 64 bit IDs
Allow the ZMS API to optionally accept 64 bit IDs. A typedef `zms_id_t`
is added, so that the maximum ID width can be controlled using Kconfig.

The current ATE structure is already large enough that it is possible to
reserve 64 bits for IDs without increasing its total size (128 bits).
This makes the feature a natural, low footprint alternative to Settings,
for cases where the supported key namespace must be larger than 32 bit
but not arbitrarily large.

The ATE format does have to be altered to accommodate larger IDs, but
the default "32 bit" format is left as is. Now, the `struct zms_ate`
describes one of two supported formats, selected by an `#if` condition.
In the future, it may be possible to support multiple ATE formats at
runtime, in which case the structure can be turned into a union.

In the new, "64 bit" ATEs, the `offset` and `metadata` fields are moved
into a union, because they are found to be mutually exclusive. With the
old format, the same fields are in different locations, but one of them
always gets filled with a dummy value, depending on the given ATE type.
To cover both cases, a `memset` is used, which should be optimized away
by the compiler when appropriate.

The only limitation is that the new ATE format has no room for data CRC,
but an alternative integrity check can be implemented by the caller.

Signed-off-by: Grzegorz Swiderski <grzegorz.swiderski@nordicsemi.no>
2025-09-25 14:17:24 -04:00
Franck Duriez
cfbe64934e driver: pwm/pca9685: remove unimplemented misleading property
Invert property was not implemented and is now redundant with the flag
pwm-cell which is more flexible in case you want some IO to be inverted
and some not

Signed-off-by: Franck Duriez <franck.lucien.duriez@gmail.com>

# Conflicts:
#	doc/releases/migration-guide-4.3.rst
2025-09-25 14:17:15 -04:00
Franck Duriez
ae889020bc driver: pwm/pca9685: handle POLARITY flag
Handle polarity flag in pca9685 driver

Signed-off-by: Franck Duriez <franck.lucien.duriez@gmail.com>
2025-09-25 14:17:15 -04:00
Fabio Baltieri
fc5ded27cc Revert "posix: headers: create a more conformant posix_time.h"
This reverts commit 63abc20f12.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2025-09-25 14:15:57 -04:00
Fabio Baltieri
f8d2b5e219 Revert "posix: headers: create a more conformant posix_signal.h"
This reverts commit 5287699796.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2025-09-25 14:15:57 -04:00
Fabio Baltieri
9384cc5b96 Revert "posix: switch to using posix_time.h and posix_signal.h"
This reverts commit 1eb5c97bd6.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2025-09-25 14:15:57 -04:00
Nikodem Kastelik
376ca571b0 drivers: i2c: nrfx_twis: fix missing SoC header include
In case of nRF TWIS i2c shim, SoC header include is needed
for memory region property presence checker macro.

Signed-off-by: Nikodem Kastelik <nikodem.kastelik@nordicsemi.no>
2025-09-25 12:01:40 +01:00
Yangbo Lu
dddb4a5a9d net: ethernet: drop duplicated bridge forwarding in TX
Ethernet TX should not handle bridge forwarding. The bridge layer
had already handled forwarding.

Current code is causing duplicated TX if sending is via bridge
interface, or causing needless TX on other bridge ports if sending
is via one bridge port.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-09-25 12:01:31 +01:00
Yangbo Lu
401cbbb6c5 net: bridge: fix pkt management during forwarding
There were several problems of pkt management during forwarding.

1. No need to do net_pkt_ref/net_pkt_unref around net_if_queue_tx.
2. Finally when completed forwarding, there was a net_pkt_unref for
   pkt using cloning. However it also applied to pkt not using
   cloning. This was causing pkt was released before sending.
3. Whether pkt cloning used or not, should not be decided by bridge
   interfaces count. It's should be decided by interface count to
   forward.
   An example was sending pkt via bridge interface. If there were
   two interfaces attached to bridge, cloning was needed but current
   code won't.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-09-25 12:01:31 +01:00
Chris Friedt
1eb5c97bd6 posix: switch to using posix_time.h and posix_signal.h
To avoid conflicts between the C library's `time.h` and signal.h use an
"override" header (when necessary) for C libraries that do not themselves
provide POSIX definitions in `time.h` or `signal.h`.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-09-25 12:01:23 +01:00
Chris Friedt
5287699796 posix: headers: create a more conformant posix_signal.h
Create a header for satisfying POSIX conformance requirements of signal.h
that is named posix_signal.h rather than signal.h.

The primary reason for doing so, is that the de-facto owner of signal.h is
the C library.

This new header only defines required POSIX symbols that form a strict
superset over the ISO C signal.h symbols.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-09-25 12:01:23 +01:00
Chris Friedt
63abc20f12 posix: headers: create a more conformant posix_time.h
Create a header for satisfying POSIX conformance requirements of time.h
that is named posix_time.h rather than time.h.

The primary reason for doing so, is that the de-facto owner of time.h is
the C library.

This new header only defines required POSIX symbols that form a strict
superset over the ISO C time.h symbols.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-09-25 12:01:23 +01:00
Khoa Tran
54916c7631 tests: subsys: fs: Support tests/subsys/fs on MCK_RA8T2 board
Add overlay property node and configs to support on MCK_RA8T2
- tests/subsys/fs/ext2
- tests/fs/fat_fs_api

Signed-off-by: Khoa Tran <khoa.tran.yj@bp.renesas.com>
2025-09-25 11:02:54 +02:00
Khoa Tran
752608bdae tests: subsys: can: Add tests for iso tp on MCK_RA8T2 boards
This commit adds testing support for CAN ISO-TP on MCK_RA8T2
- tests/subsys/canbus/isotp/conformance
- tests/subsys/canbus/isotp/implementation

Signed-off-by: Khoa Tran <khoa.tran.yj@bp.renesas.com>
2025-09-25 11:02:54 +02:00
Khoa Tran
a428dbaa4c tests: drivers: can: Add tests support for CAN FD
on Renesas RA mck_ra8t2 board

Add support for test app on Renesas RA mck_ra8t2:
- tests/drivers/can/api
- tests/drivers/can/timing

Signed-off-by: Khoa Tran <khoa.tran.yj@bp.renesas.com>
2025-09-25 11:02:54 +02:00
Khoa Tran
f470a5dcfb tests: drivers: counter: Add tests support for Renesas AGT timer
on mck_ra8t2 board

Add support for test app on Renesas mck_ra8t2:
- tests/drivers/counter/counter_basic_api

Signed-off-by: Khoa Tran <khoa.tran.yj@bp.renesas.com>
2025-09-25 11:02:54 +02:00
Khoa Tran
6fc44ec47a samples: drivers: counter: Add support for alarm on mck_ra8t2
Add support for sample app `alarm` on Renesas mck_ra8t2

Signed-off-by: Khoa Tran <khoa.tran.yj@bp.renesas.com>
2025-09-25 11:02:54 +02:00
Khoa Tran
71ed73313d tests: subsys: pm: Add support for power_mgmt_soc on mck_ra8t2
Add support for test app `power_mgmt_soc` on Renesas mck_ra8t2

Signed-off-by: Khoa Tran <khoa.tran.yj@bp.renesas.com>
2025-09-25 11:02:54 +02:00
Khoa Tran
195647da71 tests: drivers: comparator: Add support gpio_loopback on mck_ra8t2
Add support for test app "gpio_loopback" on Renesas mck_ra8t2

Signed-off-by: Khoa Tran <khoa.tran.yj@bp.renesas.com>
2025-09-25 11:02:54 +02:00
Khoa Tran
227dece905 tests: drivers: clock_control: Add pwm_clock tests support for mck_ra8m2
Add support for test apps on Renesas mck_ra8t2:
- tests/clock_control/pwm_clock

Signed-off-by: Khoa Tran <khoa.tran.yj@bp.renesas.com>
2025-09-25 11:02:54 +02:00
Khoa Tran
4f16c12d8f tests: drivers: pwm: Add pwm tests support for mck_ra8m2
Add support for test apps on Renesas mck_ra8t2:
- tests/drivers/pwm/pwm_api
- tests/drivers/pwm/pwm_loopback

Signed-off-by: Khoa Tran <khoa.tran.yj@bp.renesas.com>
2025-09-25 11:02:54 +02:00
Khoa Tran
f35bda74e4 tests: drivers: spi: Add support for spi_loopback on mck_ra8t2
Add support for test app "spi_loopback" on Renesas mck_ra8t2

Signed-off-by: Khoa Tran <khoa.tran.yj@bp.renesas.com>
2025-09-25 11:02:54 +02:00
Khoa Tran
f07002caa5 tests: drivers: uart: Add support for uart_async_api on mck_ra8t2
Add support for test app "uart_async_api" on Renesas mck_ra8t2

Signed-off-by: Khoa Tran <khoa.tran.yj@bp.renesas.com>
2025-09-25 11:02:54 +02:00
Khoa Tran
cceb3d2db6 tests: drivers: i2c: Add support for i2c_api on mck_ra8t2
Add support for test app "i2c_api" on Renesas mck_ra8t2

Signed-off-by: Khoa Tran <khoa.tran.yj@bp.renesas.com>
2025-09-25 11:02:54 +02:00
Khoa Tran
92fbcbe10b drivers: clock_control: Add support for RA8T2
Add additional clocks to support for RA8T2.

Signed-off-by: Khoa Tran <khoa.tran.yj@bp.renesas.com>
2025-09-25 11:02:54 +02:00
Khoa Tran
d8e1ed09ae boards: renesas: Add support Renesas mck_ra8t2 board
Add support Renesas mck_ra8t2 board

Signed-off-by: Khoa Tran <khoa.tran.yj@bp.renesas.com>
2025-09-25 11:02:54 +02:00
Khoa Tran
71a6ea664e dts: arm: renesas: ra: Add support Renesas r7ka8t2lfecac SoC
Add support Renesas r7ka8t2lfecac SoC

Signed-off-by: Khoa Tran <khoa.tran.yj@bp.renesas.com>
2025-09-25 11:02:54 +02:00
Khoa Tran
c0cdf02b4f soc: renesas: ra: Add support Renesas RA8T2 SoC
Add support Renesas RA8M2 SoC

Signed-off-by: Khoa Tran <khoa.tran.yj@bp.renesas.com>
2025-09-25 11:02:54 +02:00
Khoa Tran
ac941a3986 manifest: update revision of hal_renesas to latest
Update revision of hal_renesas to get RA8T2 support

Signed-off-by: Khoa Tran <khoa.tran.yj@bp.renesas.com>
2025-09-25 11:02:54 +02:00
Emil Gydesen
a738b2641e Bluetooth: BAP: Add NULL check in bt_bap_stream_detach
If stream->ep is NULL, which is really shouldn't be,
then we should not attempt to dereference it.
Add simple NULL check to ensure behavior, and make
Sonarcloud happy.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-09-25 11:01:10 +02:00
Krzysztof Chruściński
9209390c69 tests: drivers: clock_control: nrf_onoff_and_bt: Extend test
Extend test to check simple sequential use of BT specific API and
standard onoff API. Test case added as it was initially failing on
nrf54l15. Additionally, increased startup time for nRF54LX were
HFCLK start is combined with tuning and it takes longer.

Added nrf54l15dk//cpuapp to the test.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-09-25 11:00:28 +02:00
Krzysztof Chruściński
e1f9de7842 drivers: clock_control: nrf: Fix missing clock started callback
804e502484 fix got reverted as it introduced a bug where callback
with HFCLK started indication was not called because state is not
correctly indicated. BT-dedicated API does not set state and does
not expect to get the callback when HFCLK is started. 804e502484
was intended to fix the bug that was visible on nrf54lx. It was not
visible on nrf52 because of a errata workaround which was calling
HFCLK started callback only when state was set to STARTING and that
was not the case when BT-dedicated API was used. Applying this
`workaround` approach to all cases.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-09-25 11:00:28 +02:00
Krzysztof Chruściński
04464f5d60 Revert "drivers: clock_control: nrf: Add missing flags clearing"
This reverts commit 804e502484.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-09-25 11:00:28 +02:00
Tomas Galbicka
4a6a969bbe soc: RT700 add custom MPU regions for non-cache memory
This commit adds custom MPU regions for RT700 CM33 CPU0 to
define non-cachable region for SRAM.

Signed-off-by: Tomas Galbicka <tomas.galbicka@nxp.com>
2025-09-25 10:58:01 +02:00
Tomas Galbicka
3b8f382e9e boards: NXP RT700 Add support for CM33 multicore
This commit adds multicore support to boot secondary CM33 CPU1 core.
 - Adds Flash partition for CM33 CPU0
 - Boots secondary core

Signed-off-by: Tomas Galbicka <tomas.galbicka@nxp.com>
2025-09-25 10:58:01 +02:00
Tomas Galbicka
5dd659ebc0 soc: NXP RT700 add support to boot CM33 CPU1
This commit adds multicore support to copy CM33 CPU1 image
from flash to RAM where it will boot from.

Also added NXP_IMXRT_BOOT_HEADER=y for CPU0 so it can be booted
from FlexSPI Flash.

Signed-off-by: Tomas Galbicka <tomas.galbicka@nxp.com>
2025-09-25 10:58:01 +02:00
Tomas Galbicka
547f11e54b dts: NXP RT700 refactor common DTS entries
This commit moves common DTS entries into common file
dts/arm/nxp/nxp_rt7xx_common.dtsi.
This way there is not duplication between cpu0 and cpu1.

Signed-off-by: Tomas Galbicka <tomas.galbicka@nxp.com>
2025-09-25 10:58:01 +02:00
Jamie McCrae
69ce66d491 soc: nordic: nrf54l: Set ROM_START_OFFSET instead of by each board
Sets the default of this Kconfig for the SoC itself as a default,
rather than each board setting it, which minimises the change

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-09-25 09:25:21 +02:00
Mario Paja
60c2db2fa4 tests: drivers: memc: add b_u585i_iot02a
Add b_u585i_iot02a board to test/drivers/memc/ram

Signed-off-by: Mario Paja <mariopaja@hotmail.com>
2025-09-25 09:24:59 +02:00
Mario Paja
23ebd62d1e tests: drivers: memc: add bigger buffer size for psram nodes
This change updates buffer size to the full psram size when
psram node is available

Signed-off-by: Mario Paja <mariopaja@hotmail.com>
2025-09-25 09:24:59 +02:00
Mario Paja
55718e2394 boards: st: b_u585i_iot02a: enable ospi psram node
Changes enable OSPI PSRAM on b_u585i_iot02a board.

Signed-off-by: Mario Paja <mariopaja@hotmail.com>
2025-09-25 09:24:59 +02:00
Mario Paja
f52855b048 drivers: memc: add driver for stm32 ospi psram
Add a driver for STM32U5 OSPI PSRAM in memory mapped mode.

Signed-off-by: Mario Paja <mariopaja@hotmail.com>
2025-09-25 09:24:59 +02:00
Benjamin Cabé
fab1a4e8f4 boards: nxp: fix bad SPDX-License-Identifier header
add a missing "-" in SPDX-License-Identifier header

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-25 09:22:54 +02:00
Michał Stasiak
50195f82ac drivers: i2c: i2c_nrfx_twim: add conditional PM ISR safety
Requesting/releasing TWIM device may be ISR safe, but
it cannot be reliably known whether managing its power
domain is. Is is then assumed that if power domains are used,
device is no longer ISR safe. This macro let's us check if
we will be requesting/releasing power domains and determines
PM device ISR safety value.

Signed-off-by: Michał Stasiak <michal.stasiak@nordicsemi.no>
2025-09-25 09:22:45 +02:00
Michał Stasiak
63a03c6306 drivers: spi: spi_nrfx_spis: add conditional PM ISR safety
Requesting/releasing SPIM device may be ISR safe, but
it cannot be reliably known whether managing its power
domain is. Is is then assumed that if power domains are used,
device is no longer ISR safe. This macro let's us check if
we will be requesting/releasing power domains and determines
PM device ISR safety value.

Signed-off-by: Michał Stasiak <michal.stasiak@nordicsemi.no>
2025-09-25 09:22:45 +02:00
Michał Stasiak
a0b008bef4 drivers: sensor: qdec_nrfx: add conditional PM ISR safety
Requesting/releasing QDEC device may be ISR safe, but
it cannot be reliably known whether managing its power
domain is. Is is then assumed that if power domains are used,
device is no longer ISR safe. This macro let's us check if
we will be requesting/releasing power domains and determines
PM device ISR safety value.

Signed-off-by: Michał Stasiak <michal.stasiak@nordicsemi.no>
2025-09-25 09:22:45 +02:00
Andrej Butok
2a8d4d7338 dts: nxp: fix write-block-size for MCXA platforms
Fixes the on-chip flash write-block-size for
MCXA platforms to 16 Bytes.
It was set to 128 Bytes, but the MCXA Flash ROM-API
supports 16-byte writes.

Signed-off-by: Andrej Butok <andrey.butok@nxp.com>
2025-09-25 09:22:31 +02:00
Derek Snell
1ad395fb2d boards: nxp: mimxrt1180_evk: fix LMA for CM7 from ITCM
11431a80 changed the node name of the FlexSPI node, breaking the LMA
calculation.  This fixes the LMA to store the CM7 image at the correct
address in flash.

Signed-off-by: Derek Snell <derek.snell@nxp.com>
2025-09-25 09:22:21 +02:00
Peter Wang
464ef4af19 boards: frdm_mcxa15x: enable reset driver
1. update mcxa to use nxp,mrcc-reset reset driver

Signed-off-by: Peter Wang <chaoyi.wang@nxp.com>
2025-09-25 09:22:06 +02:00
Peter Wang
769f73bf17 drivers: reset: nxp: add nxp_mrcc_reset driver
1. the MCXA family use MRCC to reset peripheral
2. MRCC register, 0: hold in reset, 1: release from reset
3. usage as blow
syscon: syscon@xxx {
    ...
    reset: reset {
        compatible = "nxp,mrcc-reset";
        #reset-cells = <1>;
    };
};

Signed-off-by: Peter Wang <chaoyi.wang@nxp.com>
2025-09-25 09:22:06 +02:00
Yongxu Wang
b3e04f00ff samples: ipc: openamp: fix typo in samples comment
Fixing a typo in openamp samples comment

Signed-off-by: Yongxu Wang <yongxu.wang@nxp.com>
2025-09-25 09:21:52 +02:00
Mike J. Chen
c6206c220d bluetooth: BAP: fix select bug
Change 4c86a5cc8d moved a select
from Kconfig.asc to Kconfig.bap (amongst some other changes
from select to depends), but inverted the PAC_{SRC,SNK} from
ASCS_ASE_{SRC,SNK} condition.

Signed-off-by: Mike J. Chen <mjchen@google.com>
2025-09-25 09:21:42 +02:00
Benjamin Cabé
6610b8c8b2 tests: ram_context_for_isr: pick an available IRQ for nxp_k32l2b3 soc
(NUM_IRQS-1) IRQ is taken on this soc, so set CONFIG_TEST_IRQ_NUM to a
different available IRQ to avoid test failure.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-25 09:21:29 +02:00
Zhaoxiang Jin
78c6ae2175 tests: drivers: regulator: Enable nxp vref test
Enable nxp vref test.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-09-25 09:21:18 +02:00
Zhaoxiang Jin
49e7e2db9a boards: Enable vref on frdm_mcxc242
Enable vref on frdm_mcxc242

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-09-25 09:21:18 +02:00
Zhaoxiang Jin
5447679c03 drivers: regulator: Enable nxp vrefv1
Enable nxp vrefv1 driver

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-09-25 09:21:18 +02:00
Zhaoxiang Jin
16db983408 drivers: sim: Enable vref clock through sim driver
Enable vref clock through sim driver

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-09-25 09:21:18 +02:00
Zhaoxiang Jin
bf12516cb4 drivers: adc16: Enhance ADC16 driver.
1. Add new 'has-differential-mode' property to indicate
whether the ADC16 instance supports differential mode.
2. Enabled ADC16 differential mode.
3. Enabled ADC16 reference voltage selection.
4. Enabled ADC16 acquisition time configuration.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-09-25 09:21:18 +02:00
Zhaoxiang Jin
6b2e1a47c8 tests: regulator: Use microvolt in test case
DT properties like 'tolerance-microvolt', 'min-microvolt',
'max-microvolt' are using microvolt unit, so update the
test case to use microvolt. In addition, using uv is more
accurate than mv. For some regulators, using mv will lose
precision and cause the test case to fail.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-09-25 09:21:18 +02:00
Khoa Nguyen
4e5cf920f1 samples: subsys: ipc: ipc_service: Add support for ek_ra8p1
Add support sample app `ipc_service/icmsg` and
`ipc_service/static_vrings` for ek_ra8p1

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-09-25 09:19:57 +02:00
Khoa Nguyen
f8fbc6b788 samples: subsys: ipc: openamp: Add support for ek_ra8p1
Add support sample app `openamp` for Renesas ek_ra8p1

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-09-25 09:19:57 +02:00
Khoa Nguyen
3e4e46e2e4 samples: drivers: mbox_data: Add support mbox_data for ek_ra8p1
Add support sample app `mbox_data` for Renesas ek_ra8p1

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-09-25 09:19:57 +02:00
Khoa Nguyen
e17ee8ccc8 samples: drivers: mbox: Add support sample mbox for ek_ra8p1
Add support sample app `drivers/mbox` for Renesas ek_ra8p1

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-09-25 09:19:57 +02:00
Khoa Nguyen
5361c273f1 tests: drivers: mbox: Add support mbox_data for ek_ra8p1
Add support test app `mbox_data` for Renesas ek_ra8p1

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-09-25 09:19:57 +02:00
Khoa Nguyen
db6af416f6 dts: arm: renesas: ra: Add support MBOX for Renesas RA8P1
Add support MBOX for Renesas RA8P1 (r7ka8p1kflcac)

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-09-25 09:19:57 +02:00
Khoa Nguyen
2d661e1c19 drivers: mbox: Add support MBOX driver for Renesas IPC
Add support MBOX driver for Renesas IPC hardware IP

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-09-25 09:19:57 +02:00
Declan Snyder
1ac480cc2b tests: hotfix mcxn qspi target exclude ram_context_for_isr
This platform is enabled incorrectly and it is not trivial to fix, but
need to hotfix CI because issue is related to linkage and causing a
build error

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-09-25 09:19:47 +02:00
Benjamin Cabé
b79b5366ee boards: nxp: mcx_n9xx_evk: deactivate eth phy on cpu1
deactivate eth phy on cpu1, because
mdio is also only activated on cpu0.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-25 09:19:47 +02:00
Declan Snyder
fba91d05ba boards: mcx_nx4x_evk: Add MCX-N5XX-EVK
Rename this board folder to a more generic name since some other similar
boards will be added.

Add MCX-N5XX-EVK to MCXN EVK board folder. It is an almost identical
board to MCXN 9XX EVK with some slightly different things populated and
of course having the MCXN547 SOC instead of MCXN947.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-09-25 09:19:47 +02:00
Vinit Mehta
80a05768b9 samples: bluetooth: bap_broadcast: add LIBLC3 support for MIMXRT1062
-Add LC3 encode/decode support for bap broadcast examples for
i.MXRT1062 based platform

Signed-off-by: Vinit Mehta <vinit.mehta@nxp.com>
2025-09-25 09:19:38 +02:00
Benjamin Cabé
453cba7f13 include: drivers: sensor: improve docs for veml6031
complete doxygen docs for this sensor

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-25 01:30:46 +02:00
Emil Gydesen
2e48903e83 doc: releases: Remove double backticks in Audio mig guide
Some references to GH PRs had an additional backtick.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-09-24 19:21:42 -04:00
Declan Snyder
88c61d3668 include: hooks.h: Add mocks
Add mocks of platform hooks so that #ifdef are not needed around calls
to these functions.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-09-24 19:21:07 -04:00
Jason Kridner
1f03dcfa0c cc13xx_cc26xx: select CRC with SubG driver
This was previously only selected when the 2.4GHz driver was
enabled, but SubG can be enabled without the 2.4GHz driver.

Build tested using:

```
west build -b beagleconnect_freedom -d \
 build/bcf/ot_coap samples/net/openthread/coap
west flash -d build/bcf/ot_coap
```

Signed-off-by: Jason Kridner <jkridner@beagleboard.org>
2025-09-24 19:20:49 -04:00
Manoj Purushothama
2591942fe7 boards: adafruit: metro_rp2350: Fix the Arduino spi node label
Fix the Arduino spi node typo

Signed-off-by: Manoj Purushothama <hpmanoj@umich.edu>
2025-09-24 19:20:28 -04:00
Manoj Purushothama
bf8456e0d1 samples: sensor: qdec: Fix Arduino typo
Fix the typo in the comments

Signed-off-by: Manoj Purushothama <hpmanoj@umich.edu>
2025-09-24 19:20:28 -04:00
Manoj Purushothama
ce828abc98 tests: boards: nrf: qdec: Fix Arduino typo
Fix the typo in the comments

Signed-off-by: Manoj Purushothama <hpmanoj@umich.edu>
2025-09-24 19:20:28 -04:00
Grzegorz Chwierut
51cba9d11f twister: Add unit tests for required applications
Added tests for sharing of build application feature
added in #94167

Signed-off-by: Grzegorz Chwierut <grzegorz.chwierut@nordicsemi.no>
2025-09-24 19:20:15 -04:00
Gerard Marull-Paretas
4a4a94bbff drivers: clock_control: sf32lb_rcc: add support for DLL2
Add support for configuring and enabling DLL2. A few things have been
simplified (common PMUC, just store frequency, etc.).

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2025-09-24 19:19:58 -04:00
Gerard Marull-Paretas
ebb316dadd dts: arm: sifli: sf32lb52x: define dll2
Add dll2 node so we can configure DLL2.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2025-09-24 19:19:58 -04:00
Fin Maaß
6838e0cb5e dts: common: add DT_SIZE_G macro
add DT_SIZE_G macro

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-09-24 19:19:39 -04:00
Gerard Marull-Paretas
01ecd1ade5 dt-bindings: pinctrl: sf32lb52x: add all pinmux combinations
Information extracted from UM5201‐SF32LB52x‐EN, Table 5.1 and Table 5.5.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2025-09-24 19:19:26 -04:00
Aksel Skauge Mellbye
d3f531ca9a samples: basic: button: Disable led on bg27 boards
Button 0 and LED 0 share a GPIO pin on bg27 boards. Remove the
`led0` alias in a board overlay to make the button sample work
out of the box.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-09-24 19:19:16 -04:00
Aksel Skauge Mellbye
dedd21eda6 boards: silabs: Add xg27 radio boards
Add 3 xg27 radio boards:

* bg27_rb4110b
* bg27_rb4111b
* xg27_rb4194a

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-09-24 19:19:16 -04:00
Aksel Skauge Mellbye
d52ff0894a drivers: entropy: gecko: Configure for all xg27 socs
Use cryptoacc variant on all xg27 socs.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-09-24 19:19:16 -04:00
Aksel Skauge Mellbye
82318f0aab soc: silabs: Add complete xg27 soc family
Add efr32bg27 and efr32mg27 socs.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-09-24 19:19:16 -04:00
Aksel Skauge Mellbye
027eadba75 dts: arm: silabs: xg27: Add missing nodes
Add missing peripheral and clock nodes for xg27.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-09-24 19:19:16 -04:00
Aksel Skauge Mellbye
072161266b dts: arm: silabs: xg27: Reformat dtsi files
Reformat devicetree files:
 * Sort nodes by unit address or name
 * Sort properties by category and name

Add missing properties to existing nodes.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-09-24 19:19:16 -04:00
Aksel Skauge Mellbye
55c8a7443b boards: silabs: xg27_dk2602a: Set cells properties on usart0
Set #address-cells and #size-cells on usart0. Since usarts can
be used for both UART and SPI, this property shouldn't be set
in SoC-level DTS, since it makes it harder to switch compatible.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-09-24 19:19:16 -04:00
Arunprasath P
43f1c27bdd drivers: pinctrl: microchip: Fix header include style
Fixed the include directive for mchp_pinctrl_pinmux_sam.h
by replacing quotes with angle brackets.

Signed-off-by: Arunprasath P <arunprasath.p@microchip.com>
2025-09-24 19:19:04 -04:00
Arunprasath P
b65a0ffca8 modules: Reorganize directory structure and update Kconfig symbols
- Update the path of pinctrl.h in sama7g54_ek.dts
- Select CONFIG_MICROCHIP_SAM for sama7g5 family devices
- Add SAM group Kconfig symbol for proper family grouping
- Rename PIC32C Kconfig symbol to MICROCHIP_PIC32C
  and update references
- Update west.yml for hal-microchip re-organization

Signed-off-by: Arunprasath P <arunprasath.p@microchip.com>
2025-09-24 19:19:04 -04:00
Emil Dahl Juhl
980db8e6e8 tests: rtio: test early signalling of RTIO_OP_AWAIT
The brief on the existing test_rtio_await_ function mentioned testing
that an await operation would immediately complete ("be skipped") if
the SQE were signalled prior to being submitted. The function didn't
actually test this, though.

Add a new test function for testing this specific case.

Remove the misleading part of the brief around the existing test.

Rename test_rtio_await_ to be more concise on the test it performs.

Signed-off-by: Emil Dahl Juhl <emil@s16s.ai>
2025-09-24 19:18:55 -04:00
Emil Dahl Juhl
a7be8c4d6e tests: rtio: use TRANSACTION for iodev await test
The intention behind using an RTIO_OP_AWAIT tied to an rtio_iodev is
to get a guarantee that an entire transaction can be handled without
interruptions or parallel work taking place on the rtio_iodev.

This guarantee can only be met when SQEs are bundled together using
RTIO_SQE_TRANSACTION as they will otherwise be considered individual
pieces of work, hence allowing some unrelated piece of work to get
scheduled in-between the rest.
When just using RTIO_SQE_CHAINED, the rtio_iodev would still block
during the entire RTIO_OP_AWAIT, but the following SQE in the chain can
be preempted by an unrelated SQE.

Modify this specific test case to use RTIO_SQE_TRANSACTION as this will
match the intention.

Signed-off-by: Emil Dahl Juhl <emil@s16s.ai>
2025-09-24 19:18:55 -04:00
Thomas Schmid
bab5484ed8 sensor: mcp9600: extend driver functionality
Add support for runtime and devicetree configuration of themocouple
type, ADC resolution, filter coefficient and cold junction temperature
resolution. Extend device specific sensor channels to include cold
junction temperature, delta tempereature, hot junction temperature and
raw ADC values while still maintaining backwards compability with the
existing SENSOR_CHAN_AMBIENT_TEMP channel.

Signed-off-by: Thomas Schmid <tom@lfence.de>
2025-09-24 19:18:43 -04:00
Luis Ubieda
c1f0403262 boards: vmu_rt1170: Change ICM4268X LPSPIs to use native PCS
Moving away from GPIO CS configuration.

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-09-24 19:18:23 -04:00
Zhaoxiang Jin
857347a2bb samples: boards: nxp: add new sample for frdm_mcxa156
Add new sample lpdac_opamp_lpadc for frdm_mcxa156.

In this example:
1. The LPDAC outputs a 300mv voltage to the
non-inverting terminal of the OPAMP.

2. The OPAMP operates in the non-inverting amplifier
mode, the inverting terminal of the OPAMP is grounded.

3. The channel 0 of the LPADC is connected to the output
of the OPAMP, and the channel 1 of the LPADC is connected
to the output of the DAC (the non-inverting input terminal
of the OPAMP).

4. The ideal sampling range of OPAMP output channel is
specified by 'ideal-sample-range', and 'nxp,opamps' are
used to specify LPADC samples which OPAMP's output and
which ADC channel is connected to the OPAMP output.

5. The OPAMP non-inverting input is 300mV, and the OPAMP
gain is initialized to 1. Therefore, the first round OPAMP
output (~300mV) will not reach the minimum value of the
'ideal-sampling-range'. Therefore, the ADC driver will
increase the OPAMP gain through 'opamp_set_gain'. The second
round OPAMP output (~900mV) is still below the minimum value,
so the gain will continue to increase. The third round OPAMP
output (~1500mV) is already in the ideal range, so the gain
will not be adjusted later.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-09-24 19:18:11 -04:00
Zhaoxiang Jin
ece35a420b drivers: adc: Add DT properties to lpadc binding
Introduce new binding properties for the LPADC DT
and update the driver to consume them.
Users can use these properties to obtain the opamp
device bound to the ADC and dynamically adjust the
opamp gain so that the opamp output is within the
ADC ideal sample range.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-09-24 19:18:11 -04:00
Zhaoxiang Jin
08f8e48ef5 driver: opamp: Add new property for opamp
Add new property for OPAMP, opamp consumers
can bind opamps through this property.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-09-24 19:18:11 -04:00
Zhaoxiang Jin
01328f62b8 doc: release notes: added opamp release notes
1. Added opamp driver and example support to release
notes for release 4.3.
2. Add documentation for the opamp peripheral.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-09-24 19:18:11 -04:00
Zhaoxiang Jin
6aaeba6e80 tests: driver: Enable OPAMP test
1. Enable OPAMP_API test
2. Enable OPAMP build_all test

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-09-24 19:18:11 -04:00
Zhaoxiang Jin
d0a8b7c347 samples: drivers: opamp: Add output_measure exmaple
1. Add output_measure exmaple.
2. Enabled on frdm_mcxa156, frdm_mcxa166, frdm_mcxa276,
frdm_mcxn947_mcxn947_cpu0, lpcxpresso55s36.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-09-24 19:18:11 -04:00
Zhaoxiang Jin
c54aaeb287 boards: lpcxpresso55s36: Support opamp on lpcxpresso55s36
1. Add opamp node for lpc55S36.
2. Support opamp for lpcxpresso55s36.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-09-24 19:18:11 -04:00
Zhaoxiang Jin
19c45b7618 boards: frdm_mcxn947: Add opamp for frdm_mcxn947
1. Add opamp node for mcxn947.
2. Support opamp for frdm_mcxn947.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-09-24 19:18:11 -04:00
Zhaoxiang Jin
59add91a26 boards: frdm_mcxa346: Add opamp for frdm_mcxa346
1. Add opamp node for mcxa346.
2. Support opamp for frdm_mcxa346.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-09-24 19:18:11 -04:00
Zhaoxiang Jin
e3d0a2bcc3 boards: frdm_mcxa266: Add opamp for frdm_mcxa266
1. Add opamp node for mcxa266.
2. Support opamp for frdm_mcxa266.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-09-24 19:18:11 -04:00
Zhaoxiang Jin
42a72631b4 boards: frdm_mcxa156: Add opamp for frdm_mcxa156
1. Add opamp node for mcxa156.
2. Support opamp for frdm_mcxa156.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-09-24 19:18:11 -04:00
Zhaoxiang Jin
bb73dd0b3a drivers: opamp: Add NXP opamp driver implementation
This commit includes the following changes:
1. Add top level CMakeLists.txt entry and Kconfig.
2. Add bindings for opamp-controller.
2. Add bindings for nxp,opamp and nxp,opamp_fast.
3. Implemented NXP opamp and opamp_fast device driver.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-09-24 19:18:11 -04:00
Zhaoxiang Jin
26334d691b drivers: Add opamp API
Add opamp API header.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-09-24 19:18:11 -04:00
Zhaoxiang Jin
b47fbbb434 drivers: clock: Add opamp clock to syscon
Add opamp clock to syscon

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-09-24 19:18:11 -04:00
Zhaoxiang Jin
1f9a2512aa modules: hal_nxp: Add opamp drivers to zephyr build tree
Add opamp and opamp_fast driver to zephyr build tree.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-09-24 19:18:11 -04:00
Mahesh Mahadevan
e0e50fa869 soc: nxp: mcxw7xx: Fix MISRA compliance
Add curly braces around the while block

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2025-09-24 19:17:22 -04:00
Allen Zhang
da307aaed3 soc: mcxw: Move mcxw2x into mcxw and creat mcxw7x subfolder
move mcxw2x into mcxw and created mcxw7x subfolder for mcxw71/mcxw72

Signed-off-by: Allen Zhang <chunfeng.zhang@nxp.com>
2025-09-24 19:17:22 -04:00
Allen Zhang
db5d78659d samples: sensor: enable sensor trigger for frdm_mcxw23
enable sensor trigger.

Signed-off-by: Allen Zhang <chunfeng.zhang@nxp.com>
2025-09-24 19:17:22 -04:00
Allen Zhang
46250e87ff tests: drivers: gpio: add overlay to run test on NXP MCXW23 boards
Support arduino_gpio example for NXP frdm_mcxw23 and mcxw23_evk boards.
Test using tests/drivers/gpio/gpio_basic_api.

Signed-off-by: Allen Zhang <chunfeng.zhang@nxp.com>
2025-09-24 19:17:22 -04:00
Allen Zhang
9c2346b3b5 boards: mcxw23_evk: add mcxw23_evk board
enable board support for mcxw23_evk

Signed-off-by: Allen Zhang <chunfeng.zhang@nxp.com>
2025-09-24 19:17:22 -04:00
Allen Zhang
44ba1dd8a3 boards: frdm_mcxw23: add frdm_mcxw23 board
enable board support for frdm_mcxw23

Signed-off-by: Allen Zhang <chunfeng.zhang@nxp.com>
2025-09-24 19:17:22 -04:00
Allen Zhang
502620e8c7 dts: mcxw235,mcxw236: add dts for MCXW235 and MCXW236
add dts for device MCXW235 and MCXW236

Signed-off-by: Allen Zhang <chunfeng.zhang@nxp.com>
2025-09-24 19:17:22 -04:00
Allen Zhang
438a628568 soc: mcxw235,mcxw236: add SOC support for MCXW235 and MCXW236
add soc MCX235 and MCXW236 for board frdm_mcxw23

Signed-off-by: Allen Zhang <chunfeng.zhang@nxp.com>
2025-09-24 19:17:22 -04:00
Jamie McCrae
dddd7381ca modules: hal_nordic: nrfx: Use name for CMake library
Uses a name for this as the auto generared name is long

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-09-24 15:51:42 +01:00
Johan Alfvén
ec72295251 drivers: misc: ethos_u: add fast-memory-region support
Add optional fast-memory-region property to the Ethos-U driver. When
present in the devicetree, the driver passes the region base and size
to ethosu_init(), allowing platforms to use dedicated SRAM for improved
NPU performance.

If the property is not specified, the driver falls back to using NULL/0,
keeping existing behavior unchanged.

Signed-off-by: Johan Alfvén <johan.alfven@arm.com>
2025-09-24 15:51:24 +01:00
Vinayak Kariappa Chettimada
15d3b57e90 Bluetooth: Controller: Fix inter-operability when BT_PHY_UPDATE=n
Fix inter-operability, when BT_PHY_UPDATE=n the feature bits
contained 2M and Coded PHY when Advertising Extensions where
enabled, and Central devices did not progress with any data
packet transfers when PHY_REQ was rejected as unknown PDU.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2025-09-24 15:51:13 +01:00
Muhammad Waleed Badar
ddf28d40be boards: aithinker: Add inital support for esp32_cam
Add board files for Ai-Thinker ESP32-CAM

Signed-off-by: Muhammad Waleed Badar <walid.badar@gmail.com>
2025-09-24 15:51:02 +01:00
Hake Huang
30e31fa0d0 drivers: WM89xx: fix a dts prop naming issue
1. the clock-source is wrongly typed as clk-source,
which happen to pass the build and function check.
2. and should use DT_INST_ENUM_IDX for index enumrate
as string.

Signed-off-by: Hake Huang <hake.huang@nxp.com>
2025-09-24 15:50:49 +01:00
Alain Volmat
136ad68ac3 samples: remove CONFIG_MBOX_STM32_HSEM enabling in conf files
Now that the MBOX_STM32_HSEM driver is enabled by default if
present within the device-tree, it is no more necessary to
manually enable it within samples board specific conf files.

Remove as well the CONFIG_LOG_BACKEND_UART since overall
CONFIG_LOG is anyway not enabled in the samples/drivers/mbox

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-09-24 15:50:40 +01:00
Alain Volmat
297eb52fde drivers: mbox: stm32-hsem: build driver if DT enabled
Default to building the driver if its node is enabled in
the device-tree, avoiding the need to manually set
CONFIG_MBOX_STM32_HSEM.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-09-24 15:50:40 +01:00
Flavio Ceolin
f84b0f09cc doc: security: Disclose CVE-2025-10458
Disclose information about published CVE.

Signed-off-by: Flavio Ceolin <flavio@hubblenetwork.com>
2025-09-24 15:50:30 +01:00
Flavio Ceolin
308c8d273b doc: security: Disclose CVE-2025-10457
Disclose information about published CVE.

Signed-off-by: Flavio Ceolin <flavio@hubblenetwork.com>
2025-09-24 15:50:30 +01:00
Flavio Ceolin
79128352e0 doc: security: Disclose CVE-2025-10456
Disclose information about published CVE.

Signed-off-by: Flavio Ceolin <flavio@hubblenetwork.com>
2025-09-24 15:50:30 +01:00
Flavio Ceolin
5c97fe5f94 doc: security: Disclose CVE-2025-7403
Disclose information about published CVE.

Signed-off-by: Flavio Ceolin <flavio@hubblenetwork.com>
2025-09-24 15:50:30 +01:00
Cristian Bulacu
fefa833cdb samples: openthread: border_router: Update config for new features
Updated project configuration for Border Router to include DHCP6_PD
client, DNS upstream resolver and SRP server features
Removed flags set to 'n' and updated Thread version to 1.4

Signed-off-by: Cristian Bulacu <cristian.bulacu@nxp.com>
2025-09-24 15:50:18 +01:00
Cristian Bulacu
4cec954e2b net: l2: openthread: Add DHCP6_PD, DNS upstream resolver and SRP server
- Initialize platform requirements and start OpenThread DHCP6_PD
  feature.
- Added initialization logic for DNS upstream resolver.
	OTBR message data structure has been updated to store a user data
	structure, if needed.
- Added SRP server initialization call.

Signed-off-by: Cristian Bulacu <cristian.bulacu@nxp.com>
2025-09-24 15:50:18 +01:00
Cristian Bulacu
f836a9e730 modules: openthread: platform: Add DHCP6_PD socket and DNS resolver
Implemented DHCP6_PD platform code required by OpenThread stack.
Fixed some typos added at OpenThread stack rebase.
Implemented DNS upstream resolver platform code.

Signed-off-by: Cristian Bulacu <cristian.bulacu@nxp.com>
2025-09-24 15:50:18 +01:00
Jilay Pandya
90286fca85 doc: flash_debug: add macOS tab for LinkServer
Add default path for LinkServer in macOS

Signed-off-by: Jilay Pandya <jilay.pandya@outlook.com>
2025-09-24 15:49:48 +01:00
James Roy
d25572e0f7 tests: subsys: fs: Add FSTAB_ENTRY_DT_*_MOUNT_POINT unit test
Add unit tests for `FSTAB_ENTRY_DT_MOUNT_POINT`
and `FSTAB_ENTRY_DT_INST_MOUNT_POINT` macros.

Signed-off-by: James Roy <rruuaanng@outlook.com>
2025-09-24 15:49:36 +01:00
James Roy
889a713ca2 subsystem: fs: Use better wrapper macros
Replace `DT_INST_PROP(inst, mount_point)` with
`FSTAB_ENTRY_DT_INST_MOUNT_POINT(inst)`.

Signed-off-by: James Roy <rruuaanng@outlook.com>
2025-09-24 15:49:36 +01:00
James Roy
270c67d7f3 fs: Add a FSTAB_ENTRY_DT_*_MOUNT_POINT macros
These macros provide a way to get the `mount-point` value from
an fstab entry:
- FSTAB_ENTRY_DT_MOUNT_POINT
- FSTAB_ENTRY_DT_INST_MOUNT_POINT

Signed-off-by: James Roy <rruuaanng@outlook.com>
2025-09-24 15:49:36 +01:00
Tommi Kangas
9d10d67bcb boards: nrf9280pdk: Add missing overlays for rev. 0.2.0
Added missing cpuapp/iron and cpuppr/xip overlays for rev. 0.2.0.

Signed-off-by: Tommi Kangas <tommi.kangas@nordicsemi.no>
2025-09-24 11:35:53 +01:00
Mario Paja
e07e2b2f21 boards: st: nucleo_l552ze_q set stm32cubeprogrammer as default runner
This change sets stm32cubeprogrammer as default runner

Signed-off-by: Mario Paja <mariopaja@hotmail.com>
2025-09-24 11:30:21 +01:00
Declan Snyder
5eb05c17d2 MAINTAINERS: Fix some NXP area patterns
Fix some orphaned NXP files, fix some files being assigned to wrong NXP
area, and remove "NXP Drivers" label which is just confusing people, and
unify all the main NXP areas under one "platform: NXP" label

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-09-24 11:29:57 +01:00
Andrzej Głąbek
b624a0757d tests: mspi: flash: Add scenario for new mspi_dw option
Add test scenario for a Kconfig option that was recently added to
the mspi_dw driver. Testing it requires performing some transfers
on the MSPI bus with some device, hence flash chip test used.

Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
2025-09-24 11:29:44 +01:00
Andrzej Głąbek
30c4130b24 drivers: mspi_dw: Add option to offload handling of FIFOs
Provide a Kconfig option that allows offloading handling  of the SSI
FIFOs, which the driver normally executes in the interrupt handler,
to the system workqueue.

Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
2025-09-24 11:29:44 +01:00
Bjarki Arge Andreasen
9a6dba9bd6 drivers: power_domain: nrfs_gdpwr: depend on multithreading
The NRFS GDPWR device driver requires NRFS which requires
multithreading. Add dependency to Kconfig for the device driver
to exclude it when building for single threaded apps like
mcuboot.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-09-24 11:29:27 +01:00
Michał Bainczyk
39f1085beb tests: boards: nrf: qdec: Fix test for nRF54L15
Added additional cleanups between tests, which fixed the issue
of a failing testcase on nRF54L15.

Signed-off-by: Michał Bainczyk <michal.bainczyk@nordicsemi.no>
2025-09-24 11:29:19 +01:00
Michał Bainczyk
327bbc70af tests: boards: nrf: qdec: Fix test for multiple instances
- Fixed pin configuration for nRF54L15 (QDECs can use only port 1)
- Changed the way the test handles testing multiple instances
  to make it possible to output quadrature signal to one QDEC
  instance at a time.

Signed-off-by: Michał Bainczyk <michal.bainczyk@nordicsemi.no>
2025-09-24 11:29:19 +01:00
Jared Wolff
3c7d9732e8 west: runners: probe-rs: Add enhanced functionality
Add comprehensive enhancements to the probe-rs runner:

- New parameters: --reset, --protocol, --speed, --verify, etc
- RTT logging support via 'attach' command
- Smart binary format detection with FileType support
- Enhanced debug/debugserver with improved GDB integration
- Conditional reset after flashing instead of always resetting

Maintains upstream compatibility while significantly expanding
probe-rs capabilities for embedded development workflows.

Signed-off-by: Jared Wolff <hello@jaredwolff.com>
2025-09-24 11:27:40 +01:00
Karol Lasończyk
e28764e7c8 tests: drivers: Add overlay for nRF54L15 FLPR core to build_all/gpio
Add overlay to increase memory to make compilation works.

Signed-off-by: Karol Lasończyk <karol.lasonczyk@nordicsemi.no>
2025-09-24 11:27:29 +01:00
Michal Simek
0207beb144 MAINTAINERS: Switch Xilinx platforms to maintained state
Move Xilinx platform to maintained state to properly reflect
current support status.

Signed-off-by: Michal Simek <michal.simek@amd.com>
2025-09-24 09:44:14 +02:00
Biwen Li
97dda25c03 boards: nxp: imx943_evk: m33: enable nocache section
Place edma tcd description into nocache section
to fix build issues.

Signed-off-by: Biwen Li <biwen.li@nxp.com>
2025-09-24 09:44:03 +02:00
Jonas Berg
5ae23e5520 boards: shields: Add Adafruit PCF8523 real-time clock shield
Product image from https://learn.adafruit.com/assets/103710

Tested with the command mentioned in the index.rst file.

Compile-testing of the overlay file is done in CI via the
drivers/rtc sample.

Signed-off-by: Jonas Berg <jonas.s.t.berg@gmail.com>
2025-09-24 09:43:44 +02:00
Jonas Berg
d5b90a74bd samples: Allow compile-testing of RTC shields in samples/drivers/rtc
Create a testcase without "depends_on: rtc", to allow compile test
the overlay files for shields.

Signed-off-by: Jonas Berg <jonas.s.t.berg@gmail.com>
2025-09-24 09:43:44 +02:00
TaiJu Wu
623d8fa540 kernel: cleanup thread state checks and nunecessary CONFIG check
The commit replaces negative thread state checks with a new,
 more descriptivepositive check.
The expression `!z_is_thread_prevented_from_running()`
is updated to `z_is_thread_ready()` where appropriate, making
the code's intent clearer.

 Removes a redundant `IS_ENABLED(CONFIG_SMP)`, they are included #ifdef.

Finally, this patch add the missing `#endif` directive.

Signed-off-by: TaiJu Wu <tjwu1217@gmail.com>
2025-09-24 09:43:30 +02:00
TaiJu Wu
e069ce242c kernel: Consolidate thread state checking functions
This patch moves `is_aborting()` and `is_halting()`
from `kernel/sched.c` to `kernel/include/kthread.h`
and renames them to `z_is_thread_aborting()` and `z_is_thread_halting()`,
for consistency with other internal kernel APIs.

It replaces the previous inline function definitions in `sched.c`
with calls to the new header functions. Additionally, direct bitwise
checks like `(thread->base.thread_state & _THREAD_DEAD) != 0U`
are updated to use the new `z_is_thread_dead()` helper function.
This enhances code readability and maintainability.

Signed-off-by: TaiJu Wu <tjwu1217@gmail.com>
2025-09-24 09:43:30 +02:00
Pete Johanson
979adfd1c9 MAINTAINERS: Add Pete Johanson as hal_adi collaborator
Adding Pete Johanson (ADI TSC member) to the collaborators for the hal_adi.

Signed-off-by: Pete Johanson <pete.johanson@analog.com>
2025-09-24 09:42:54 +02:00
Kamil Krzyżanowski
bd344be413 drivers: serial: stm32: use hardware rx timeout interrupt when available
Use the RTO interrupt for RX timeouts when using the async API.
The workqueue based approach is sensitive to load and has a higher latency
than using hardware timeouts.

Signed-off-by: Kamil Krzyżanowski <kamnxt@kamnxt.com>
2025-09-24 09:42:33 +02:00
Kamil Krzyżanowski
50d6eac5a2 drivers: serial: stm32: fix some formatting
Fix some formatting, because the clang-format compliance test was
complaining.

Signed-off-by: Kamil Krzyżanowski <kamnxt@kamnxt.com>
2025-09-24 09:42:33 +02:00
Vladislav Pejic
3db00489f1 sample: adc_stream: Add sample app for ADC stream
Add sample application to demonstrate new ADC stream APIs.
Two tests are also added:
- ad4052-stream
- max32-stream

Signed-off-by: Vladislav Pejic <vladislav.pejic@orioninc.com>
2025-09-23 17:50:25 -04:00
Vladislav Pejic
8c4647761c boards: adi: apard32690: Fix for gpio-map
Fix for gpio-map-mask and gpio-map-pass-thru to enable use of
MAX32_GPIO_VSEL_VDDIOH and other defines with arduino_header connector.

Signed-off-by: Vladislav Pejic <vladislav.pejic@orioninc.com>
2025-09-23 17:50:25 -04:00
Dimitrije Lilic
0c4c305c9a drivers: adc: max32: Support for RTIO stream
Updated MAX32 driver with RTIO  stream functionality.

Signed-off-by: Dimitrije Lilic <dimitrije.lilic@orioninc.com>
2025-09-23 17:50:25 -04:00
Vladislav Pejic
bc0683b6a2 driver: adc: ad405x: Add RTIO stream
Added support for RTIO stream.
Also added sampling_period property to the DTS. This is for setting the
sampling period when streaming is used.
Hardware or kernel timer can be
used for this.
To use hardware timer you need to add it to the DTS. Example:

{
	chosen {
		zephyr,adc-clock = &counter0;
	};
};

Signed-off-by: Vladislav Pejic <vladislav.pejic@orioninc.com>
2025-09-23 17:50:25 -04:00
Vladislav Pejic
9c770bc34a boards: shields: EVAL-AD4052-ARDZ comp and overlay
Fix for compatible property.
Addition of hardware timer to be used with APARD32690 board.

Signed-off-by: Vladislav Pejic <vladislav.pejic@orioninc.com>
2025-09-23 17:50:25 -04:00
Vladislav Pejic
1d02d57413 driver: adc: Added stream APIs for ADC
Introduce a streaming APIs for ADC devices.
Two new APIs are added to the adc_driver_api: submit and get_decoder.
Added decoder following APIs: get_frame_count, get_size_info, decode,
has_trigger.

Supported triggers are:
- ADC_TRIG_DATA_READY
- ADC_TRIG_FIFO_WATERMARK
- ADC_TRIG_FIFO_FULL
Supported operations to be done on trigger:
- include - whatever data is associated with the trigger
- nop - do nothing with data associated with the trigger
- drop - clear data associated with the trigger

Some changes to the linker scripts were needed to add decoder APIs.

Signed-off-by: Vladislav Pejic <vladislav.pejic@orioninc.com>
2025-09-23 17:50:25 -04:00
Gerard Marull-Paretas
a2b1c594f1 boards: sf32lb52_devkit_lcd: define buttons and led
Define the two keys and LED available in the board. Also enable
CONFIG_GPIO=y (considered minimal in Zephyr).

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2025-09-23 17:50:16 -04:00
Gerard Marull-Paretas
290ae4ba5b drivers: gpio: sf32lb: add initial driver
Add initial driver for SF32LB.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2025-09-23 17:50:16 -04:00
Gerard Marull-Paretas
c89b3a877a dts: arm: sifli: sf32lb52x: define gpioa nodes
Add nodes for the GPIO controller (controlling pins PA00-44). Naming is
a bit confusing. In some places you'll find HPSYS_GPIO, other GPIO1,
pins are named PA00-PA44... I've chosen "GPIOA". Because the Zephyr GPIO
API assumes a maximum of 32 pins per controller, we have to split the
controller into 32-bit wide blocks. In reality, the controller
internally works like that (see the `reg` addresses), however, the whole
block is clocked by a single RCC _switch_.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2025-09-23 17:50:16 -04:00
Gerard Marull-Paretas
3eca7ef291 dts: bindings: gpio: add sifli,sf32lb-gpio
Add bindings for the SF32LB GPIO controller.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2025-09-23 17:50:16 -04:00
Gerard Marull-Paretas
3a56ded095 dts: bindings: gpio: add sifli,sf32lb-gpio-parent
SiFli SF32LB SoCs have a single GPIO controller block which manages all
pins (> 32). However, Zephyr API expects ports to have up to 32 pins. So
in order to make things compatible, we introduce a Zephyrism in
devicetree: a parent node with common properties (e.g. IRQ, RCC clock,
etc.) and children nodes for each 32 pin block. See upcoming devicetree
definition for more details.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2025-09-23 17:50:16 -04:00
Gerard Marull-Paretas
e22844325f dts: bindings: pinctrl: sifli,sf32lb52-pinmux: add port/offset cells
So we can reference later to any of the PAD_XX_YY registers from e.g.
GPIO nodes, where we need to write pad configs like pull-ups.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2025-09-23 17:50:16 -04:00
Josuah Demangeon
8e2e62a0c0 MAINTAINERS: add @josuah as collaborator for BFLB platform
Add myself as collaborator to help with reviews and occasional
contributions for the Bouffalo Labs SoC peripherals, configurations,
and HAL.

Signed-off-by: Josuah Demangeon <me@josuah.net>
2025-09-23 17:50:05 -04:00
Michael Zimmermann
366d129146 samples: mqtt_sn: add support for IPv6
Like other samples, this moves to net_ipaddr_parse, which can handle IPv4
and IPv6. Additionally, it parses the port as well which removes the need
to have separate Kconfigs for addresses and ports, thus simplifying the
code.

Signed-off-by: Michael Zimmermann <michael.zimmermann@sevenlab.de>
2025-09-23 17:49:56 -04:00
Michael Zimmermann
7f55e702eb net: mqtt_sn: udp: fix joining v6 multicast group
GCC gave the following warning:

mqtt_sn_transport_udp.c: In function ‘tp_udp_init’:
mqtt_sn_transport_udp.c:117:9: warning: ‘memcpy’ forming offset [12, 105]
is out of the bounds [0, 12] of object ‘mreqn’ with type ‘struct ip_mreqn’
[-Warray-bounds=]
  117 |         memcpy(&mreqn.imr_multiaddr, &udp->bcaddr.data[2], si...
      |         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mqtt_sn_transport_udp.c:48:25: note: ‘mreqn’ declared here
   48 |         struct ip_mreqn mreqn;
      |                         ^~~~~

And it turns out that it's right. The original code looks like it tries to
copy the IP address to imr_multiaddr in a way that works for both v4 and
v6. It ignores, that bcaddr.data may be way larger than even a v6 addr,
because it's a buffer that's big enough to hold many other structs as well.

Not only that, IP_ADD_MEMBERSHIP is for IPv4 only and imr_multiaddr can
only hold an IPv4 address anyway.

This modifies the code to have separate code paths for v4 and v6 and call
the correct APIs. This also gets rid of the memcpy, since it can be a
simple struct assignment now.

Signed-off-by: Michael Zimmermann <michael.zimmermann@sevenlab.de>
2025-09-23 17:49:56 -04:00
Michael Zimmermann
557d2aa0e0 net: mqtt_sn: allow using all of CONFIG_MQTT_SN_LIB_MAX_ADDR_SIZE
The check didn't allow the address to be exactly this size.

Signed-off-by: Michael Zimmermann <michael.zimmermann@sevenlab.de>
2025-09-23 17:49:56 -04:00
Michael Zimmermann
8ae28567d3 net: mqtt_sn: udp: fix warning: ‘port’ may be used uninitialized
This can't happen, but GCC doesn't see the relation between out and port.

Signed-off-by: Michael Zimmermann <michael.zimmermann@sevenlab.de>
2025-09-23 17:49:56 -04:00
Michael Zimmermann
38b890e5e4 net: mqtt_sn: udp: fix typo in log message
It's called Broadcast, not Brodcast.

Signed-off-by: Michael Zimmermann <michael.zimmermann@sevenlab.de>
2025-09-23 17:49:56 -04:00
Pete Johanson
630520112a tests: drivers: memc: Fix test on MAX32690 evkit
Properly adjust the init priorities on the max32690evkit to account for
initialization levels of the MAX32 HPB memc driver.

Signed-off-by: Pete Johanson <pete.johanson@analog.com>
2025-09-23 17:49:47 -04:00
Aksel Skauge Mellbye
cfa2992a64 pm: Mark pm_device_driver_init as boot function
Mark pm_device_driver_init() as a boot function to support using it
for early init on devices with demand paging.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-09-23 17:49:38 -04:00
Fin Maaß
34039c90b8 drivers: sdhc: stm32: add forgotten if around options
add forgotten if around Kconfig options.
This applied the default of 32 to all
CONFIG_SDHC_BUFFER_ALIGNMENT.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-09-23 12:11:53 -04:00
Erwan Gouriou
d3d7a65863 include: net: lldp.h: Include required headers
net_if.h and net_pkt.h are 2 headers required by lldp.h
as it needs to know net_if and net_pkt structs.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2025-09-23 12:10:30 -04:00
Jan Masek
09cea656b6 eswifi: fix include path to use tls credentials
Include path is missing when CONFIG_TLS_CREDENTIALS is set.
Fixes #92243

Signed-off-by: Jan Masek <jan.masek@spotflow.io>
2025-09-23 12:08:22 -04:00
Bjarki Arge Andreasen
568f7d8252 doc: releases: document PM_S2RAM and PM_S2RAM_CUSTOM_MARKING refactor
Document the refactoring of the PM_S2RAM and PM_S2RAM_CUSTOM_MARKING
in the release notes and migration guide for release 4.3

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-09-23 12:07:59 -04:00
Bjarki Arge Andreasen
1767f131aa pm: refactor PM_S2RAM_CUSTOM_MARKING option to be promptless
The config PM_S2RAM_CUSTOM_MARKING is not an optional config for a
user to select, it is required by some soc implementations of S2RAM,
in which case it must be selected by the soc.

Refactor the configuration to be HAS_PM_S2RAM_CUSTOM_MARKING, and
make the currently only soc which needs it select it. Then update
samples which previously had to select this option for this soc.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-09-23 12:07:59 -04:00
Bjarki Arge Andreasen
4626f6b776 pm: bind the PM_S2RAM kconfig option to devicetree
Currently it is possible to have an enabled (status="okay")
"suspend-to-ram" "zephyr,power-state" in the devicetree,
CONFIG_PM=y, but CONFIG_PM_S2RAM=n

This means the presence and state of the "suspend-to-ram" power
state in the devicetree does not match the PM_S2RAM option,
despite PM_S2RAM being dependent on the devicetree state.

This commit makes the devicetree the "source of truth" for
whether one or more s2ram power states shall be included and
supported, by enabling PM_S2RAM if any s2ram power state with
status "okay" is present in the devicetree. To disable the
s2ram power state, like with any other state, disable it by
setting its state to "disabled".

The help of the now promptless PM_S2RAM config has been
updated to reflect the new meaning. It previously held
cortex-m specific implementation details, these have been
removed as these details are already present in the file
pointed to as well (arch/arm/core/cortex_m/pm_s2ram.c
line 22)

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-09-23 12:07:59 -04:00
Jordan Yates
cd41477c2f modem: modem_cellular: registration status callback
Add a new callback event for registration status changes.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-09-23 12:07:40 -04:00
Benjamin Cabé
e29c173251 driver: timer: ti_dmtimer: TI DM Timer header should not be public
ti_dmtimer.h contains mask definitions only used internally by the
driver. Make it a private header.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-23 12:07:29 -04:00
Erwan Gouriou
73dc2e4aeb boards: st: stm32n6570_dk: Clarify RAMLOAD instructions
Review RAMLOAD section to hopefully avoid possible confusions.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2025-09-23 12:07:02 -04:00
Ayush Singh
676fff10d4 boards: beagle: pocketbeagle_2: a53: Enable uart0 and uart5
- Both UART5 and UART0 are default states of some of the header pins.
- As such, it's best to enable them by default.
- We also do not have to care too much about code size for a53s due to
  the large (for zephyr) RAM.

Signed-off-by: Ayush Singh <ayush@beagleboard.org>
2025-09-23 12:06:42 -04:00
Ayush Singh
bb18dad309 boards: beagle: pocketbeagle_2: a53: Add UART0 and UART5 pinmux
- Both these UARTs are present as default states for the headers in the
  pb2 schematic.

Signed-off-by: Ayush Singh <ayush@beagleboard.org>
2025-09-23 12:06:42 -04:00
Piotr Kosycarz
23188321bc tests: drivers: flash: common: require external_flash fixture
Add "external_flash" fixture to the no_explicit_erase testcase
in order to run twister only on boards with such HW setup.
Other runnable test cases has it already.

Signed-off-by: Piotr Kosycarz <piotr.kosycarz@nordicsemi.no>
2025-09-23 12:06:34 -04:00
Cla Mattia Galliard
c8540e8644 samples: net: sockets: echo_service: Move accept-loop to socket-service
Move the accept-loop into a socket-service. No dedicated thread is needed
just for the accept loop. This better demonstrates the power of the
socket-service in removing the need for dedicated threads. Make some tiny
improvments and necessary changes to the udp-side of the service.

Signed-off-by: Cla Mattia Galliard <clamattia@gmail.com>
2025-09-23 12:06:18 -04:00
Cla Mattia Galliard
b83a34f4f6 samples: net: sockets: echo_service: enable multiple tcp clients
Improve the sample to enable multiple tcp clients to connect to the
echo-service.

Signed-off-by: Cla Mattia Galliard <clamattia@gmail.com>
2025-09-23 12:06:18 -04:00
Fin Maaß
48e5cda802 drivers: flash: spi_nor: use DEV_CFG in spi_nor_write_protection_set
use DEV_CFG in spi_nor_write_protection_set

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-09-23 12:06:02 -04:00
Fin Maaß
e9ed34fbbc drivers: flash: spi_nor: simplify checks for write_protect
simplify checks for write_protect

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-09-23 12:06:02 -04:00
Fin Maaß
f08f63c93a drivers: flash: spi_nor: allow ulbpr be optimized away
allow the requirement for ulbpr be optimized away
by the compiler, if no instance uses it.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-09-23 12:06:02 -04:00
Fin Maaß
43db13d11f drivers: flash: spi_nor: remove redundant write enable/disable
write enable already happens in the write/erase loop
before every write and erase. It is done in the loop,
because it is self cleaning after erase and write.
That is also the reason we don't need to disable it,
as it is automatically disabled after each write and erase.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-09-23 12:06:02 -04:00
Maureen Helm
909bd5e6f9 cmake: emu: Don't require ARMFVP_BIN_PATH environment variable
Enhance the armfvp emulator cmake handling to allow additional options
for setting ARMFVP_BIN_PATH, relaxing the previous requirement to set in
an environment variable. This makes it possible to run twister with
multiple armfvp platforms located in different paths.

Signed-off-by: Maureen Helm <maureen.helm@analog.com>
2025-09-23 12:05:30 -04:00
Tomi Fontanilles
b8aa511424 manifest: psa-arch-tests: update to 24.03_API1.6_CRYPTO_1.1.0
Fixup to the TF-M 2.2.0 update.

Signed-off-by: Tomi Fontanilles <tomi.fontanilles@nordicsemi.no>
2025-09-23 12:05:17 -04:00
Tomi Fontanilles
74c6e344df manifest: tf-m-tests: bring in fix for TF-M 2.2.0
Fixup to the TF-M 2.2.0 update.

Signed-off-by: Tomi Fontanilles <tomi.fontanilles@nordicsemi.no>
2025-09-23 12:05:17 -04:00
Khaoula Bidani
18484fb7a2 drivers: adc: stm32: Add unit check for acquisition_time
Add an explicit check to ensure that the acquisition_time
parameter is encoded with the ADC_ACQ_TIME macro and uses
the TICKS unit, as required by the API.
If the unit is not correct, log an error and return -EINVAL.

Signed-off-by: Khaoula Bidani <khaoula.bidani-ext@st.com>
2025-09-23 12:04:29 -04:00
Chekhov Ma
1ea2c63081 drivers: gpio: retire pca6416a driver
pca6416a driver can be replaced by pca_series driver, which covers a
larger number of devices.

Signed-off-by: Chekhov Ma <chekhov.ma@nxp.com>
2025-09-23 12:04:12 -04:00
Chekhov Ma
deb699b68a drivers: gpio: pca_series: select i2c when enabled
On certain platforms I2C is not enabled by default, causing build error.
Change pca_series driver to select I2C.

Signed-off-by: Chekhov Ma <chekhov.ma@nxp.com>
2025-09-23 12:04:12 -04:00
Chekhov Ma
f1056fc045 drivers: gpio: pca_series: add drive_strength config
Enables pca_series driver to set drive strength for part no with
PCA_HAS_LATCH capability.

Signed-off-by: Chekhov Ma <chekhov.ma@nxp.com>
2025-09-23 12:04:12 -04:00
Chekhov Ma
604d127809 drivers: gpio: pca_series: imporve reset function
The reset function is originally designed to have no return value. If
the GPIO toggle fails, there's no indication for failure until I2C
transaction fails. Account for this by adding return value to the reset
function.

Signed-off-by: Chekhov Ma <chekhov.ma@nxp.com>
2025-09-23 12:04:12 -04:00
Chekhov Ma
6c62afd21f drivers: gpio: pca_series: add support for pcal953x and pcal64xx
add support for pca9538, pcal9539.

Add support for pcal6408 and pcal6416, which is originally supported
by pcal64xxa driver. These device has the same register layout as
pcal9538 and pcal9539 respectively, which means they can be seamlessly
supported by pca_series driver.

Signed-off-by: Chekhov Ma <chekhov.ma@nxp.com>
2025-09-23 12:04:12 -04:00
Amneesh Singh
8953f0b086 drivers: flash: jesd216: improve mode support checks
The only information for 4s-4d-4d, 8s-8s-8s and 8d-8d-8d in the basic flash
parameter table is in DWORD20 with one byte for each of the aforementioned
modes. This one byte is split into two fields that contain that mode's
maximum operation speed with and without data strobe. Unsupported fields
have the value of 0xF. For the mode to be supported, at least one of the
two fields must not be 0xF, so we check the byte against 0xFF.

Signed-off-by: Amneesh Singh <a-singh7@ti.com>
2025-09-23 12:02:06 -04:00
Benjamin Cabé
b8e446b27a .github: workflows: clang: install python packages
Always install current python dependencies required for CI as part of
setting up the workflow, since the ones pulled in the docker image may
be out of date.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-23 13:52:26 +01:00
Benjamin Cabé
071d6166e1 .github: workflows: bsim-tests: install python packages
A bit confused as to how this worked before, maybe the docker image had
pykwalify pre-installed or something, but we do need python dependencies
properly installed to run CI - here this commit is specifically fixing
an issue with jsonschema not being found.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-23 12:18:28 +01:00
Fabio Baltieri
ae0e5b1fb5 github: hello_world_multiplatform: retire macos-13
This runner is going to go away soon, drop it.

Link: https://github.blog/changelog/2025-09-19-github-actions-macos-13-runner-image-is-closing-down/
Suggested-by: Thomas Stranger <thomas.stranger@outlook.com>
Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2025-09-23 09:42:26 +01:00
Carles Cufi
3691909835 maintainers: Update the hal_nordic entry
Add myself as a maintainer as well as Robert as a collaborator.

Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
2025-09-23 09:42:18 +01:00
Benjamin Cabé
8b56476e22 include: drivers: sensor: lis2dh: add missing docs
Add full doxygen for this newly introduced header.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-23 09:42:04 +01:00
Jordan Yates
783b39cca0 modem: modem_cellular: update APN timings
100 ms is insufficient time enter command mode after `CMUX` on at least
one modem (Telit LE910Cx), and waiting 5 seconds before retrying seems
excessive.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-09-23 09:41:39 +01:00
Jamie McCrae
dc56fb2e69 cmake: Use temp. for edt pickle CMake output
This potentially fixes an issues whereby when sysbuild projects
import dts configuration from images and images are reconfigured,
that sysbuild will needlessly rerun even if the output has not
changed by using a temporary output file and then only updating
the actual file if the contents have changed

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-09-23 09:41:28 +01:00
Chekhov Ma
2d2c087df4 board: imx8mp_evk: fix typo in board doc
There are A53 cores instead of A55 cores used in i.MX8M products.

Signed-off-by: Chekhov Ma <chekhov.ma@nxp.com>
2025-09-23 09:41:17 +01:00
Chekhov Ma
b4a165e275 board: imx8mm_evk: fix typo in board doc
There are A53 cores instead of A55 cores used in i.MX8M products.

Signed-off-by: Chekhov Ma <chekhov.ma@nxp.com>
2025-09-23 09:41:17 +01:00
Mohamed Azhar
e7477cb097 boards: microchip: pic32cm_jh01_cpro: add pinctrl to supported list
Add pinctrl to the supported drivers list for pic32cm_jh01_cpro board

Signed-off-by: Mohamed Azhar <mohamed.azhar@microchip.com>
2025-09-23 09:41:05 +01:00
Mohamed Azhar
6241d249a9 drivers: pinctrl: microchip: update pinctrl driver for Port G1 IP
Update pinctrl driver for Microchip Port G1 Peripheral IPs

Signed-off-by: Mohamed Azhar <mohamed.azhar@microchip.com>
2025-09-23 09:41:05 +01:00
Mohamed Azhar
33486ed643 dts: arm: microchip: add pinctrl dts node and bindings for Port G1 IP
Add pinctrl dts node for PIC32CM JH family devices and
update binding file for Microchip Pinctrl Port G1 IP

Signed-off-by: Mohamed Azhar <mohamed.azhar@microchip.com>
2025-09-23 09:41:05 +01:00
Mohamed Azhar
e929a726fa west.yml: Update west.yml for hal-microchip pinctrl
Update west.yml file to link hal-microchip which has the
pinmux header files for PIC32CM-JH series

Signed-off-by: Mohamed Azhar <mohamed.azhar@microchip.com>
2025-09-23 09:41:05 +01:00
Anthony Williams
ced81f6fe9 sensors: Add missing const to sensor rtio API's
Add missing const on `struct rtio_iodev *iodev`
sensor_reconfigure_read_iodev(), sensor_stream(),
and sensor_read(), all pass iodev to functions
which accepts struct rtio_iodev as const.
These functions should also be marked const.

Signed-off-by: Anthony Williams <anthony289478@gmail.com>
2025-09-23 09:40:43 +01:00
Szymon Janc
b6e7b650a2 Bluetooth: tester: Tune native_sim HCI configuration
Memory usage is not an issue since this is native_sim build runing
on Linux.

Signed-off-by: Szymon Janc <szymon.janc@codecoup.pl>
2025-09-23 09:40:25 +01:00
Quy Tran
c75c8f0d78 boards: renesas: rx: Correct typo for Renesas RX boards
Correct typo on Renesas RX documentation

Signed-off-by: Quy Tran <quy.tran.pz@renesas.com>
2025-09-23 09:40:12 +01:00
Quy Tran
28aa503792 soc: renesas: rx: Add missing SOC_EARLY_INIT_HOOK for RX
Add missing SOC_EARLY_INIT_HOOK for Renesas RX

Signed-off-by: Quy Tran <quy.tran.pz@renesas.com>
2025-09-23 09:40:12 +01:00
Chang An
7c17d09121 samples: Bluetooth: make cap_acceptor work with Google Pixel
- Increase codec config metadata size to support long metadata
  audio configuration
- Remove invalid check for requested and new BIS sync request
- Delete broadcast sink when sync terminated to prepare for
  next sync attempt
- Change supported channel count from 2 to 1 to align with
  project configuration and set audio channel to front center

These changes ensure the cap_acceptor sample works correctly
with Google Pixel devices by handling metadata properly and
managing broadcast sink lifecycle appropriately.

Signed-off-by: Chang An <chang.an_1@nxp.com>
2025-09-23 09:39:53 +01:00
Hoang Nguyen
8aaddb1916 tests: kernel: tickless: Add system timer support for RZ/V2L, RZ/A3UL
Add tickless concept test support for RZ/V2L-SMARC, RZ/A3UL-SMARC

Signed-off-by: Hoang Nguyen <hoang.nguyen.jx@bp.renesas.com>
Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
2025-09-23 09:39:35 +01:00
Hoang Nguyen
f284a583ac soc: renesas: Add condition to select arm_arch_timer driver for RZ/A3UL
Select ARM_ARCH_TIMER when RZ_OS_TIMER is not selected

Signed-off-by: Hoang Nguyen <hoang.nguyen.jx@bp.renesas.com>
Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
2025-09-23 09:39:35 +01:00
Hoang Nguyen
d11e2e09ab dts: renesas: Add system timer support for RZ/V2L, RZ/A3UL
Add gtm, os_timer nodes to Renesas RZ/V2L, RZ/A3UL

Signed-off-by: Hoang Nguyen <hoang.nguyen.jx@bp.renesas.com>
Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
2025-09-23 09:39:35 +01:00
Hoang Nguyen
9ceacc9317 drivers: timers: Add system timer support for RZ/V2L, RZ/A3UL
Add system timer driver support for RZ/V2L, RZ/A3UL

Signed-off-by: Hoang Nguyen <hoang.nguyen.jx@bp.renesas.com>
Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>

drivers: timers: Improve ISR Prototype for Renesas RZ
2025-09-23 09:39:35 +01:00
Chris Friedt
44c3640a70 tests: posix: net: add test coverage for gethostname()
Add some minimal test coverage for gethostname().

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-09-23 09:39:24 +01:00
Chris Friedt
f071df29a7 posix: net: move gethostname() from static inline to normal function
Convert `gethostname()` from a static inline wrapper to a normal function
with regular linkage.

This change was prompted mainly as housekeeping for #95811, but a
secondary reason was to make this a linkable symbol so that the API works
at a binary level as well (which could be provided by the toolchain as
well).

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-09-23 09:39:24 +01:00
Chris Friedt
104942c7a0 manifest: hal_ti: update slnetsock.h to use ansi/iso SlNetSock_Timeval_t
Bump the revision used for `hal_ti` to one that uses ANSI / ISO C types
when defining `SlNetSock_Timeval_t` instead of relying on non-standard
ways of pulling in POSIX types.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-09-23 09:39:24 +01:00
Chris Friedt
3ac279f3e3 net: hostname: include sys/util and toolchain headers
Include `<zephyr/toolchain.h>` to get access to `ARG_UNUSED()` and include
`<zephyr/sys/util.h>` to get access to `MAX()`.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-09-23 09:39:24 +01:00
Ioannis Karachalios
fbdd0c9559 boards: renesas: da14695_dk_usb: Update mcuboot partitioning scheme
The commit should deal with fixing board's flash memory capacity
as well as updating mcuboot partitioning scheme so that there are no
depedencies with the I-cache controller's peculiarities (that is an image
should be aligned to specific boundaries that is 256kB, 512kB etc).

Signed-off-by: Ioannis Karachalios <ioannis.karachalios.px@renesas.com>
2025-09-23 09:39:15 +01:00
Ioannis Karachalios
5311668955 boards: renesas: da1469x_dk_pro: Update mcuboot partitioning scheme
The commit should deal with fixing board's flash memory capacity
as well as updating mcuboot partitioning scheme so that there are no
depedencies with the I-cache controller's peculiarities (that is an image
should be aligned to specific boundaries that is 256kB, 512kB etc).

Signed-off-by: Ioannis Karachalios <ioannis.karachalios.px@renesas.com>
2025-09-23 09:39:15 +01:00
Ioannis Karachalios
4c575732e2 soc: renesas: smartbond: Update I-cache re-configuration scheme
This commit should deal with updating the re-configuration of the
I-cache controller when buidling for mcuboot. Previously, the whole
controller was updated, given that a slot entry adheres to controller's
peculiarities (that is an image should be aligned to specific image sizes
i.e. 256kB, 512kB, etc). However, that approach should adversely affect
flash memoy layout. The proposed scheme now imposes that images be aligned
to minimum cache-able area, that is 64KB.

Signed-off-by: Ioannis Karachalios <ioannis.karachalios.px@renesas.com>
2025-09-23 09:39:15 +01:00
Aditya Chopra
58a444c6c3 libc : implement signal()
Creates implementation stub for signal() using sigaction.

Signed-off-by: Aditya Chopra <adityachopra2912@gmail.com>
2025-09-23 09:38:56 +01:00
Jiawei Yang
d5969f952d Bluetooth: HFP: Fix +BSIR=0 not being recognized issue
In HFP PTS, cases run fail with the log 'unsupported unsolicited
format: +BSIR=0' and 'FAIL: Expected to receive +BSIR: 0'.

Fixed issue by changing +BSIR=0 to +BSIR: 0.

Signed-off-by: Jiawei Yang <jiawei.yang_1@nxp.com>
2025-09-23 09:38:37 +01:00
Raffael Rostagno
ab2622fc2d samples: openthread: esp32h2: Add testcase
Add testcase for GH CI build test.

Signed-off-by: Raffael Rostagno <raffael.rostagno@espressif.com>
2025-09-22 17:52:46 -04:00
Raffael Rostagno
76ccdded52 boards: esp32h2_devkitm: Add ieee802154 support
Add ieee802154 support for esp32h2_devkitm.

Signed-off-by: Raffael Rostagno <raffael.rostagno@espressif.com>
2025-09-22 17:52:46 -04:00
Raffael Rostagno
bbea66edae dts: esp32h2: Add ieee802154 support
Add ieee802154 support for ESP32-H2.

Signed-off-by: Raffael Rostagno <raffael.rostagno@espressif.com>
2025-09-22 17:52:46 -04:00
Raffael Rostagno
f8fca26c5a west.yml: hal_espressif: Update for ieee802154 support.
Update for ESP32-H2 ieee802154 support.

Signed-off-by: Raffael Rostagno <raffael.rostagno@espressif.com>
2025-09-22 17:52:46 -04:00
Benjamin Cabé
364c153cfe ci: workflows: greet_first_time_contributor: update stale link
Update stale link to PR escalation guidelines.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-22 17:52:37 -04:00
Benjamin Cabé
d87c98978c doc: west: drop "Moving to West" doc page
Converting a "pre-west" Zephyr setup is not something we officially
support anymore so drop associated documentation.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-22 17:52:27 -04:00
Benjamin Cabé
2308dc1f8f doc: west: remove old west 0.6 and 0.7 related troubleshooting entries
west 0.6.0 and 0.7.0 were released in 2019 and 2020 ; keeping
troubleshooting information for these versions is not needed anymore
(there isn't even a currently maintained LTS that would remotely be
concerned by this).

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-22 17:52:11 -04:00
Robert Lubos
c885844537 tests: net: socket: getaddrinfo: Align with dns_unpack_query() change
Not sure why didn't this cause the test to fail, but just for
completeness, align this test suite with dns_unpack_query() change
as well.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-09-22 17:51:55 -04:00
Robert Lubos
fda82471db net: llmnr_responder: Align with dns_unpack_query() change
dns_unpack_query() no longer prepends the unpacked query with extra dot,
therefore LLMNR responder needs to be aligned with this change when
parsing result and preparing response.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-09-22 17:51:55 -04:00
Robert Lubos
9e5922952a net: mdns_responder: Align with dns_unpack_query() change
dns_unpack_query() no longer prepends the unpacked query with extra dot,
therefore mDNS responder needs to be aligned with this change when
parsing result and preparing response.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-09-22 17:51:55 -04:00
Manoj Purushothama
75b98415fa drivers: sensor: tsl2591: fix sign extension
Explicitly cast data->atime to uint32_t to
prevent signed promotion and sign extension
when multiplying with data->again.

Signed-off-by: Manoj Purushothama <hpmanoj@umich.edu>
2025-09-22 17:51:44 -04:00
Al Semjonovs
a386d31417 release: Add CONFIG_NEWLIB_LIBC_USE_POSIX_LIMITS_H to release notes
Add new config for CONFIG_NEWLIB_LIBC_USE_POSIX_LIMITS_H to release
notes.

Signed-off-by: Al Semjonovs <asemjonovs@google.com>
2025-09-22 17:50:11 -04:00
Al Semjonovs
3fd186e71f newlib: allow limits to be defined externally
Downstream toolchains may already define these macros, add guard to
prevent macro redefined errors.

Signed-off-by: Al Semjonovs <asemjonovs@google.com>
2025-09-22 17:50:11 -04:00
Bill Waters
b69b750993 tests: drivers: counter: counter_basic_api: add psc3m5
Enable the counter test for the kit_psc3m5_evk

Signed-off-by: Bill Waters <bill.waters@infineon.com>
2025-09-22 17:50:00 -04:00
Bill Waters
06bbdd452b samples: drivers: counter: alarm: add psc3m5
Enable the alarm sample for the kit_psc3m5_evk

Signed-off-by: Bill Waters <bill.waters@infineon.com>
2025-09-22 17:50:00 -04:00
Yurii Lozynskyi
c15920613d drivers: counter: add PSC3M5 counter driver
- Add a new counter driver implementation based on the PDL for
  Infineon CAT1B devices. This enables support for hardware
  counters on the PSC3M5 platform.
- Add IFX_TCPWM_Counter_DeInit and IFX_TCPWM_Counter_Init
  macros to include/zephyr/drivers/timer/ifx_tcpwm.h
  and sort all of the macros in that file

Signed-off-by: Yurii Lozynskyi <yurii.lozynskyi@infineon.com>
2025-09-22 17:50:00 -04:00
Fin Maaß
435af8d0cd maintainers.yml: litex: move kgugala to collaborator
move kgugala from maintainers to litex collaborators.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-09-22 17:49:44 -04:00
Fin Maaß
4af744cca1 maintainers.yml: litex: promote maass-hamburg to maintainer
promote maass-hamburg to litex maintainer.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-09-22 17:49:44 -04:00
Cla Mattia Galliard
1e4bc2855e net: connection: Unconditionally forward into packet sockets
When handling packets for inputing into packet-sockets, unconditionally
forward them, so that they may be handled by the rest of the network
stack after.

Signed-off-by: Cla Mattia Galliard <clamattia@gmail.com>
2025-09-22 17:49:19 -04:00
Benjamin Cabé
8f4b253ac8 scripts: replace pykwalify with jsonschema
Converted `arch-schema.yml`, `board-schema.yml`, and `soc-schema.yml`
from PyYAML format to JSON Schema format, including baking in some of
the validation rules that were deferred to ad hoc Python right into the
schemas (e.g. mutual exclusivity of certain fields).

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-22 17:49:08 -04:00
Benjamin Cabé
d7a5d84b1c boards: snps: use correct revision scheme
revisons must be major.minor.patch so add the missing patch

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-22 17:49:08 -04:00
Benjamin Cabé
50d3699172 drivers: i2c: i2c_dw: drop unnecessary include
Including soc.h is causing issues - drop as it's not needed
Fixes e.g. the below:
west build -p -b em_starterkit@2.2.0/emsk_em7d \
     tests/drivers/build_all/w1 -T drivers.w1.build

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-22 17:49:08 -04:00
Jeremy Truttmann
a5bacc757c drivers: ethernet: lan865x: enable PHY access through generic ethernet_api
This is needed for accessing the PHY device through the Ethernet
network interface.

Signed-off-by: Jeremy Truttmann <jetstreeam.code@outlook.com>
2025-09-22 13:35:28 -04:00
Marcio Ribeiro
55f093d20a tests: drivers: i2s_api: fix verify_buf_const()
Allows verify_buf_const() to be compliant with the configuration parameter
CONFIG_I2S_TEST_ALLOWED_DATA_OFFSET to work the same way as verify_buf()

Signed-off-by: Marcio Ribeiro <marcio.ribeiro@espressif.com>
2025-09-22 13:35:12 -04:00
Szymon Janc
893f90f042 bluetooth: hci: userchan: Improve discardable events handling
This mimics IPC transport behavior where BR/EDR Inquiry events as
well as LE Extended Advertising Report (carring legacy PDU) are
considered discardable.

Signed-off-by: Szymon Janc <szymon.janc@codecoup.pl>
2025-09-22 13:34:59 -04:00
Thorsten Klein
64723f6b4f scripts: west_commands: list sdk from env variable ZEPHYR_SDK_INSTALL_DIR
Users can specify a Zephyr SDK installation directory using the
`ZEPHYR_SDK_INSTALL_DIR` environment variable. This variable must be
taken into account when listing all installed SDKs, such as with the
`west sdk list` command.

Signed-off-by: Thorsten Klein <thorsten.klein@bshg.com>
2025-09-22 13:33:01 -04:00
Benjamin Cabé
d0b31db64c doc: _scripts: gen_boards_catalog.py: prefer webp over png over jpg
The heuristics for guessing "best" image file for a given board will now
prefer webp over png over jpg as there is a good chance that when we
need to fall back to _any_ image for the lack of a better match, a webp
image, if one exists, will be the best image to use.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-22 13:31:51 -04:00
Benjamin Cabé
7586db6e46 doc: _scripts: gen_boards_catalog.py: improve image guessing heuristics
When a board or shield is named boardfoo_is_awesome, we now explicitly
look for images with a name that starts with one of the segments of the
board/shield name ; i.e.: boardfoo_is_awesome.imgext, then
boardfoo_is.imgext, then boardfoo.imgext.

Fixes: zephyrproject-rtos/zephyr#96144

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-22 13:31:51 -04:00
Rafał Kuźnia
92b1346f91 drivers: ieee802154: nrf5: Add temporary API migration code
The transmit functions will return an error code, instead of a boolean
value. To prepare for this, the API calls are temporarily implemented in
two variants, for old and new API declarations.

The presence of new API will be detected by the use of
NRF_802154_TX_FUNCTIONS_RETURN_ERROR_CODE macro, which will be
unconditionally defined by a newer nrf-802154 driver.

Signed-off-by: Rafał Kuźnia <rafal.kuznia@nordicsemi.no>
2025-09-22 13:31:17 -04:00
Dong Wang
1730c0daab soc: ish: Disable D0i3 low-power state for ISH
- It's not fully enabled.
- Chrome ISH cannot reach such deep low-power state for current scenarios.
- Chrome ISH's panic info mechanism needs SRAM content kept with ISH
reset, but D0i3 has whole SRAM banks power-off.

Signed-off-by: Dong Wang <dong.d.wang@intel.com>
2025-09-22 13:30:55 -04:00
Dong Wang
980e0b070f west.yml: hal_intel: Update to latest revision
- Add the ISH latest code enhancements for SEDI drivers.
- Adjust PM code directory structure.
- Refactor PM code.
- Build AON code in a dedicated lib libish_aontask.a for easy use in
ish_aon.ld file.
- Seperate one zephyr cmake build file to many for different modules.

Signed-off-by: Dong Wang <dong.d.wang@intel.com>
2025-09-22 13:30:55 -04:00
Dong Wang
57ae93e8e3 soc: ish: Move PM init into power.c and connect IRQs in it
- Add SOC interrupt properties and interrupt-names ("reset_prep", "pcidev",
  "pmu2ioapic") to intel_ish5 DTS files so PM IRQs are discoverable via DT.
- Move SEDI PM initialization and IRQ setup into ISH SOC PM init:
- Remove the direct call to sedi_pm_init() from soc_early_init_hook in
soc.c.
Previously SEDI code has those IRQ numbers hard coded and calls Zephyr APIs
to connect IRQs, which should be avoided.

Signed-off-by: Dong Wang <dong.d.wang@intel.com>
2025-09-22 13:30:55 -04:00
Dong Wang
64cbfb90f7 soc: intel_ish: Simplify ISH AON linker script
- Remove per-object AON macros and replace with explicit KEEP entries
  referencing libish_aontask.a for .text/.rodata/.data/.bss.
- Introduce __ish_aon_start / __ish_aon_end linker symbols.
- Rename GROUP from AON to ISH_AON for clarity.
It's not good to specify source file names in linker script.

Signed-off-by: Dong Wang <dong.d.wang@intel.com>
2025-09-22 13:30:55 -04:00
Dong Wang
b64e30b119 soc: intel_ish: Improve ISH PM logging
- cleanup header files included.
- Rename LOG_MODULE_REGISTER from pm_service to ish_pm and use
  CONFIG_PM_LOG_LEVEL.
- Guard verbose debug traces so they only print for suspend-to-RAM/long
  idle states, reducing runtime noise.
- Promote an unsupported power state message from LOG_DBG to LOG_ERR.

No functional change to power handling; changes are limited to logging
and verbosity control.

Signed-off-by: Dong Wang <dong.d.wang@intel.com>
2025-09-22 13:30:55 -04:00
Alberto Escolar Piedras
621255fc95 doc: board native_sim: Mention that now we support FUSEv3 also
How to select it, and what packages can be used.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-09-22 13:30:46 -04:00
Alberto Escolar Piedras
b86e52bd6f subsys/fs/fuse: Support using libfuse3
Support using FUSE v3, instead of FUSE v2.

FUSE v3 has been out for a couple of years now, so most distributions
have it.
But note the FUSE library (and its v3 branch) is currently unmaintained,
and older distributions do not ship it.

Some Linux distros have transitioned their packages away from fuse2.
Which results in less atention in these distros to fuse2, and therefore
a higher likelyhood that there would be distribution issues with the
corresponding packages.
There is also some likelihood the fuse2 packages may be eventually
droped by some of these.

So let's support either version, with a kconfig adapting to either API
and their quirks.

Note that both the fuse2 and fuse3 library code have quite a few
sideeffects on the process that uses it.

By now we continue defaulting to fuse2 as it is the most common.
But users can select to use the v3 if they have an issue w v2 or want
to start trying out using v3.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-09-22 13:30:46 -04:00
Alberto Escolar Piedras
24252e2ac4 subsys/fs/fuse: Avoid possible race
Avoid a possible race between the FUSE thread and the Zephyr threads
during init.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-09-22 13:30:46 -04:00
Alberto Escolar Piedras
129e50cd34 subsys/fs/fuse: Misc build fixes
FUSE_INCLUDE_DIRS should be passed to the native_simulator build.
If there is several fuse libraries installed, we need to ensure the
bottom side of the driver is built with the correct include paths.
(These includes are irrelevant for the Zephyr side build)

Support having a list of include paths instead of single one.

Support having a list of libraries to link to instead of a single one.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-09-22 13:30:46 -04:00
Benjamin Cabé
7be280cee6 bluetooth: mesh: access: doxygen improvements
A few straightforward cleanups to existing documentation to improve
coverage and properly hide internal macros.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-22 13:30:13 -04:00
Johan Hedberg
1548ca98fc doc: release process: Update the timeline for the release announcement
Update the timeline so that the release timeline announcement goes out two
weeks prior to rc1. This way developers have more time to ensure that their
features will make it to the next release. Also add a reminder of the
release timeline one week prior to rc1.

Signed-off-by: Johan Hedberg <johan.hedberg@silabs.com>
2025-09-22 13:30:01 -04:00
Jun Lin
55cdcdce86 drivers: pwm: npcx: fix word register access check placement
Because the PWM module mixes byte and word register together, the driver
adds an assertion check by writing a pattern to the 2-byte register
`PRSC`, reading it back, and performing a comparison. However,
the `PRSC` register cannot be written when the bit 7 (the PWR bit) in
register `PMWCTLn` is set to 1. This commit moves the assertion check to
a proper place to ensure the write is valid.

Signed-off-by: Jun Lin <CHLin56@nuvoton.com>
2025-09-22 13:29:53 -04:00
Ioannis Karachalios
617d8ae6bd tests: memc: Update yaml to support Smartbond platforms
Testing with external PSRAM memory requires that an extra overlay file
be defined. Twister requires that platform name along with qualifier be
declared.

Signed-off-by: Ioannis Karachalios <ioannis.karachalios.px@renesas.com>
2025-09-22 13:29:36 -04:00
Ioannis Karachalios
4195770b62 soc: renesas: smartbond: Select ARM DWT feature
Select ARM DWT feature to suppress build warning related to null pointer
detection mechanism.

Signed-off-by: Ioannis Karachalios <ioannis.karachalios.px@renesas.com>
2025-09-22 13:29:36 -04:00
Ioannis Karachalios
7de1f7218b boards: renesas: da14695_dk_usb: Add missing board settings
This commit should deal adding missing board settings for da14695_dk_usb
so that the latter gets synchronized with da1469x_dk_pro.
By default, peripheral blocks, not actively referenced, should be disabled
and be enabled by application overlay files.

Signed-off-by: Ioannis Karachalios <ioannis.karachalios.px@renesas.com>
2025-09-22 13:29:36 -04:00
Pieter De Gendt
b846055d72 doc: contribute: style: Add Python style guidelines
Add a page describing the Python style guidelines and tooling used.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-09-22 13:29:18 -04:00
Szymon Janc
6efb6bf008 tests: Bluetooth: Tester: Always enable ISO for GAP
This is part of GAP and should be always enabled (just like periodic
advertising and others).

Signed-off-by: Szymon Janc <szymon.janc@codecoup.pl>
2025-09-22 13:29:05 -04:00
Sebastian Bøe
38a0f713a6 soc: nordic: uicr: Add support for SECURESTORAGE
Add UICR.SECURESTORAGE configuration based on device tree partitions.
Validates partition layout and populates size fields in 1KB units.
Handles missing partitions gracefully.

Signed-off-by: Sebastian Bøe <sebastian.boe@nordicsemi.no>
2025-09-22 13:28:55 -04:00
Sebastian Bøe
d5003d996b boards: nrf54h20dk: Add secure storage partitions
Update the default memory map to include a `secure_storage_partition`,
which is divided into at most four subpartitions. These will be used to
configure UICR.SECURESTORAGE, if enabled.

Signed-off-by: Sebastian Bøe <sebastian.boe@nordicsemi.no>
2025-09-22 13:28:55 -04:00
Alejandro Perea
fa07a03155 drivers: pwm: flexpwm: Fix consecutive PWM setup
If two pwm_set_pulse_dt calls are put consecutive to each other,
the period has already been configured and they refer to the same module
but different submodule (PWM A & B), the second call fails.

LDOK with ReloadImmediate should result in immediate change of the
buffered registers, but it doesn't seem like that's the case.

To fix this, we busywait on LDOK clearance before setting new pulse values.

Fixes zephyrproject-rtos/zephyr#95653

Signed-off-by: Alejandro Perea <alejandro.perea@classified-cycling.cc>
2025-09-22 13:28:39 -04:00
Jordan Yates
9b8f68a350 tests: fs: zms: test CONFIG_ZMS_NO_DOUBLE_WRITE
Enable tests for `CONFIG_ZMS_NO_DOUBLE_WRITE=y`.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-09-22 13:28:28 -04:00
Jordan Yates
aa9123606c fs: zms: fix delete non-existent with cache
Fix deleting a key that doesn't exist from writing a new entry to the
filesystem when `CONFIG_ZMS_NO_DOUBLE_WRITE` and
`CONFIG_ZMS_LOOKUP_CACHE` are enabled.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-09-22 13:28:28 -04:00
Jordan Yates
ff020ec8a0 fs: zms: fix no-cache + no-double-write
Fix a compiler error when `CONFIG_ZMS_NO_DOUBLE_WRITE=y` and
`CONFIG_ZMS_LOOKUP_CACHE=n`.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-09-22 13:28:28 -04:00
Jordan Yates
1e5dea964e tests: storage: flash_map: test subpartitions
Validate that subpartitions can be used with the `flash_map` API.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-09-22 13:28:18 -04:00
Jordan Yates
c3221f0420 bluetooth: host: conn: handle bt_le_create_conn_cancel error
Handle the `bt_le_create_conn_cancel` call in the deferred worker
failing due to insufficient command buffers.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-09-22 13:28:00 -04:00
Fabrice DJIATSA
0b8379b72b tests: drivers: flash: common: test stm32h7/n6 with MemoryMapped mode
STM32N6 and STM32H7RS have an external NOR flash mounted.

Enabling CONFIG_STM32_MEMMAP is a workaround that helps us avoid dealing
with even and odd addresses during write/read operations
(see the test_read_unaligned_address testcase).
With MEMMAP enabled, we can use memcpy() instead of indirect operations
on the SPI bus for write operations, for example, which is agnostic to
flash even and odd addresses.

Additionally, setting CONFIG_TEST_DRIVER_FLASH_SIZE for STM32H7RS is
needed in the test_get_size testcase.

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2025-09-22 13:27:48 -04:00
Tomasz Chyrowicz
c1baf2f763 mgmt: Allow to block confirming non-acive slots
In Direct XIP with revert, it should be possible to block confirmation
of the non-active slot, so only a bootable binaries are marked as valid.

Signed-off-by: Tomasz Chyrowicz <tomasz.chyrowicz@nordicsemi.no>
2025-09-22 13:27:27 -04:00
Sai Santhosh Malae
0e93a0b25f west.yml: Update hal_silabs version
Update hal_silabs version to latest commit:
edbd418670ad8c7cad629a09df2ceee0bc23cf6d

Signed-off-by: Sai Santhosh Malae <Santhosh.Malae@silabs.com>
2025-09-22 13:27:01 -04:00
Sai Santhosh Malae
926f25b0fc modules: hal_silabs: Remove CMSIS references
Removed CMSIS references from wiseconnect CMakeLists
as they are no longer required with UART device runtime
PM. Keeping them adds unnecessary compilation overhead.

Signed-off-by: Sai Santhosh Malae <Santhosh.Malae@silabs.com>
2025-09-22 13:27:01 -04:00
Sai Santhosh Malae
088b59039d drivers: serial: uart_ns16550: Add pm support for uart_ns16550 driver
This commit enables the pm device runtime driver support
for the uart_ns16550 driver (only for devices that have an
associated power domain enabled).

Signed-off-by: Sai Santhosh Malae <Santhosh.Malae@silabs.com>
2025-09-22 13:27:01 -04:00
Sai Santhosh Malae
295431dad5 drivers: power_domain: siwx91x: Add power domain driver for siwx91x SoC
1. Added siwx91x power domain node in siwg917.dtsi
2. Updated UART device nodes to reference the newly added power domain.
3. Implemented power domain driver to manage power domain transitions
   for the SoC.

Signed-off-by: Sai Santhosh Malae <Santhosh.Malae@silabs.com>
2025-09-22 13:27:01 -04:00
Sai Santhosh Malae
77287a1877 drivers: dma: siwx91x: Sort CMakeLists.txt items
sort library sources and compile time definitions
in wiseconnect CMakeLists.txt

Signed-off-by: Sai Santhosh Malae <Santhosh.Malae@silabs.com>
2025-09-22 13:26:52 -04:00
Sai Santhosh Malae
4a24c8a4f5 drivers: dma: siwx91x: dma_chan_blen test app support
Add siwx917_rb4338a board overlay and config files

Signed-off-by: Sai Santhosh Malae <Santhosh.Malae@silabs.com>
2025-09-22 13:26:52 -04:00
Sai Santhosh Malae
380f35a76a drivers: dma: siwx91x: DTS changes for siwx91x GPDMA driver
1. Create a YAML file for gpdma node
2. Add GPDMA node in the siwx917.dtsi

Signed-off-by: Sai Santhosh Malae <Santhosh.Malae@silabs.com>
2025-09-22 13:26:52 -04:00
Sai Santhosh Malae
ce923eb8fc drivers: dma: siwx91x: Add siwx91x GPDMA driver
Implement GPDMA driver for siwx91x device

Signed-off-by: Sai Santhosh Malae <Santhosh.Malae@silabs.com>
2025-09-22 13:26:52 -04:00
Sai Santhosh Malae
a0b0173b2f drivers: dma: siwx91x: GPDMA clock initialization for siwx91x
Clock driver changes required for initializing the GPDMA clock
for the siwx91x driver

Signed-off-by: Sai Santhosh Malae <Santhosh.Malae@silabs.com>
2025-09-22 13:26:52 -04:00
Christophe Dufaza
69cab3f6a8 Bluetooth: Host: Fix some MISRA c:M23_112 warnings
Fix some "All if ... else if constructs shall be terminated
with an else clause" (c:M23_112) issues reported by SonarQube.

Signed-off-by: Christophe Dufaza <chris@openmarl.org>
2025-09-22 13:25:11 -04:00
Christophe Dufaza
dca154df3e Bluetooth: Host: Amend disconnected() callback documentation
The API documentation for the disconnected() callback warns that
the listener can't assume that the corresponding connection object
has been freed and may me available to the application.

The recommendations given to still start a new connection
or connectable advertiser are outdated or misleading:
- "start connectable advertising": the options that "will attempt
  to resume the advertiser under some conditions" are deprecated
  since Zephyr 4.0 (BT_LE_ADV_OPT_CONNECTABLE and related)
- "using k_work_submit()": assuming everything will be fine
  when the work is actually processed is not reliable
- "increase CONFIG_BT_MAX_CONN": setting BT_MAX_CONN to N+1
  when planning N simultaneous connections is a work-around
  that users may have gotten used to (despite its footprint),
  but there is no longer any reason to advise it

Stop documenting creating new connections or restarting advertising
from the disconnected() callback and instead recommend relying
on recycled() for these use cases.

Signed-off-by: Christophe Dufaza <chris@openmarl.org>
2025-09-22 13:25:11 -04:00
Christophe Dufaza
60797818d5 Bluetooth: Host: Amend recycled() callback documentation
The API documentation for the recycled() callback predates [1],
and still warns users to "treat this callback as an ISR",
although it now runs on the system workqueue thread,
as does disconnected().
"Making Bluetooth API calls" to "re-start connectable advertising or
scanning" should no longer be "strongly discouraged".

On the contrary, we can emphasize that this is the right event
to listen for to initiate operations that will try to re-allocate
a freed connection object.

Mention that BT_MAX_CONN configures the size of the connection pool.

Refs:
- [1] efb5d83: Bluetooth: Host: Defer `conn.recycled()` to the syswq

Signed-off-by: Christophe Dufaza <chris@openmarl.org>
2025-09-22 13:25:11 -04:00
Christophe Dufaza
c3f175825e Bluetooth: Host: Fix possible inconsistent access to connection state
An assertion in bt_conn_unref() accesses the connection's state
after decrementing its reference count.
This is not consistent since, if we removed the last reference,
the Bluetooth Host stack may reuse the connection object
before the assertion is checked.
Instead, retrieve the connection property tested by the assertion
before decrementing the counter, as we do for other properties.

Simplify the code path by returning early when we did not remove
the last reference.

Remind that automatic advertiser resumption is deprecated.

Signed-off-by: Christophe Dufaza <chris@openmarl.org>
2025-09-22 13:25:11 -04:00
Christophe Dufaza
51f57da387 Bluetooth: Host: Fix use of local variable as atomic target
In bt_conn_unref(), a local variable is used as atomic target:

    atomic_val_t old = atomic_dec(&conn->ref);
    /* Prevent from accessing connection object */
    bool deallocated = (atomic_get(&old) == 1);

Using atomic_get() to access a non-shared local variable
cannot prevent any data race on that variable,
and only causes confusion.

Moreover, this call to atomic_get() is incorrect: the API expects
an atomic_t* argument (target), not an atomic_val_t* (value).
This compiles and /works/ only because Zephyr defines both to be
the same integer type, and thus: atomic_get(&old) == old.
The equivalent C11 code, where _Atomic(T) and T are different types,
wouldn't compile.

Signed-off-by: Christophe Dufaza <chris@openmarl.org>
2025-09-22 13:25:11 -04:00
Szymon Janc
9354e06422 Bluetooth: SMP: Print extra state information on timeout
This gives some extra information on what could be a reason
for SMP timeout.

Signed-off-by: Szymon Janc <szymon.janc@codecoup.pl>
2025-09-22 11:17:59 +02:00
Jonas Berg
81dc0ecf33 boards: shields: Add Adafruit VEML7700 light sensor shield
Product photo from https://learn.adafruit.com/assets/122469,
which has the CC BY-SA 3.0 license.

Tested with the command mentioned in the index.rst page.

Signed-off-by: Jonas Berg <jonas.s.t.berg@gmail.com>
2025-09-22 11:17:52 +02:00
Eve Redero
6b809c2107 boards: add steelseries apex_pro_mini
Initial support for the Apex Pro Mini keyboard,
based on STM32L412.

Signed-off-by: Eve Redero <eve.redero@gmail.com>
2025-09-22 11:17:44 +02:00
Benjamin Cabé
59bf4e7895 cmake: clang: set no_track_macro_expansion properly
Compiler property no_track_macro_expansion is controlled by
CONFIG_COMPILER_TRACK_MACRO_EXPANSION.
When that Kconfig is set to Y, clang fails with the following error
message:

   unknown argument: '-ftrack-macro-expansion=0'

This commit modifies clang/compiler_flags.cmake so that there is a
proper clang compiler option for this flag.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-22 11:17:34 +02:00
Ludvig Jordet
8720ab7390 Bluetooth: Mesh: Deprecate blob_io_flash erase cap options
The only reason to keep these would be to enable conditional compilation
of some parts of the code. However, we can't see enough benefit in doing
this, particularly since the flash driver itself will conditionally
handle certain paths depending on erase caps, so the options are
deprecated to reduce complexity.

Signed-off-by: Ludvig Jordet <ludvig.jordet@nordicsemi.no>
2025-09-22 11:17:25 +02:00
Ludvig Jordet
db207b04a8 Bluetooth: Mesh: decouple blob_io_flash from internal flash
This fully decouples blob_io_flash from specific flash device details,
by not reading the write block size from a hard-coded device tree node,
instead pulling this from the actual flash device used.

The block write routine has been updated to be more generic and fix a
few bugs:

  * The write buffer is now sized based on a KConfig option instead of
    basing it off the device tree - this makes the module usable with
    any flash device, not just the internal memory. The configured value
    is checked during initialization, to ensure that the configured size
    will fit the write block size required by the device passed to the
    init function.
  * The erase value used to fill the buffer when using a device with
    explicit erase is now pulled from the flash parameters instead of
    being hard-coded to `0xff`.
  * An additional write block sized piece of buffer is allocated - the
    previous buffer sizing with rounding up only worked if
    `BLOB_RX_CHUNK_SIZE % WRITE_BLOCK_SIZE` was 0 or 1 (which
    coincidentally worked in all testing because the chunk size defaults
    to 161, and for internal flash w/write block size of 4,
    `161 % 4 == 1`).
  * The choice of whether to just write the chunk as-is or to
    write-block align it is now based on the erase cap pulled from the
    flash parameters, instead of checking the type of memory in the SOC.
    This means the module dos _not_ currently support the case where
    memory has to be written write-block aligned, but the memory does
    _not_ use explicit erase. It uses a trick of filling the write
    buffer with the erase value to avoid overwriting existing chunks,
    which will not work in this case. This trick is required to support
    random ordered chunks while still writing write-block aligned.
  * The code has been cleaned up a bit in general.

Signed-off-by: Ludvig Jordet <ludvig.jordet@nordicsemi.no>
2025-09-22 11:17:25 +02:00
Ludvig Jordet
99190cb08f Bluetooth: Mesh: make blob_io_flash support smaller blocks
Only erase a page when starting the first block on that page.
This fixes a bug where, if the block size is smaller than the page size,
the entire page would be erased upon start of each block when writing,
meaning only the final block on each page would be retained. This works
because blocks are always received in order.

Signed-off-by: Ludvig Jordet <ludvig.jordet@nordicsemi.no>
2025-09-22 11:17:25 +02:00
Ludvig Jordet
294a2cd9db Bluetooth: Mesh: Decouple blob_io_flash erase from flash config
This adds a Kconfig dependency on FLASH_PAGE_LAYOUT when using flash
with explicit erase, removing all code dependencies on flash
configuration from the erasure logic. This module already requires
FLASH_PAGE_LAYOUT to be set when using it with flash with explicit
erase, as a silent requirement. The current code does not work without
this option enabled except for the case where a BLOB has a size which is
a multiple of the page size (since, without it, trying to erase flash
space for the final block, which is of variable size, will fail). Also
cleans up the code a bit.

Signed-off-by: Ludvig Jordet <ludvig.jordet@nordicsemi.no>
2025-09-22 11:17:25 +02:00
Andre Heinemans
c2190552cc boards: imx95_evk: add zephyr,flash-controller to dts
Choose mt35xu01gbba for zephyr,flash-controller. This is needed for
building mcuboot or other application accessing flash.

Signed-off-by: Andre Heinemans <andre.heinemans@nxp.com>
2025-09-22 11:17:17 +02:00
Andre Heinemans
0c545f272d boards: imx95_evk: add flash target
Add target for imx95-evk that runs code from the mt35xu01gbba external
flash connected through flexspi

Signed-off-by: Andre Heinemans <andre.heinemans@nxp.com>
2025-09-22 11:17:17 +02:00
Jordan Yates
c0a2928f46 modem: at_shell: extract user pipe handling
Extract the user pipe setup and claim/release logic so that it can be
re-used by other software modules, if the AT shell is not used. Ideally
the chat instance would live within the `modem_at_user_pipe.c` and be
handed out by `modem_at_user_pipe_claim`, but the current chat API
doesn't make this possible.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-09-22 09:53:00 +02:00
Khoa Tran
9432e6c360 tests: pm: power_mgmt_soc: Enable tests on Renesas RA boards
Enable SoC power management on these Renesas RA boards.
- ek_ra8m1
- ek_ra8d1
- mck_ra8t1
- ek_ra8p1/r7ka8p1kflcac/cm85

Signed-off-by: Khoa Tran <khoa.tran.yj@bp.renesas.com>
2025-09-22 09:52:27 +02:00
Khoa Tran
c2bb4bd80e drivers: pwm: Add initial polarity value for Renesas RA GPT PWM
Add initial polarity value for Renesas RA GPT PWM

Signed-off-by: Khoa Tran <khoa.tran.yj@bp.renesas.com>
2025-09-22 09:52:27 +02:00
Khoa Tran
00d18a6113 soc: renesas: ra: Change the counter of g_protect_counters
Change the counter value of g_protect_counters following HAL

Signed-off-by: Khoa Tran <khoa.tran.yj@bp.renesas.com>
2025-09-22 09:52:27 +02:00
Khoa Tran
620738016e manifest: Update revision of hal_renesas
Update revision of hal_renesas to get the FSP 6.1.0 migration

Signed-off-by: Khoa Tran <khoa.tran.yj@bp.renesas.com>
2025-09-22 09:52:27 +02:00
Robert Lubos
178150590c net: tcp: Fix ACK processing when FIN packet is received
In case FIN packed also acknowledged most recently sent data, not all
ack-related TCP context variables were updated, resulting in invalid SEQ
number values sent in consecutive packets.

Fix this by refactoring the FIN handling in TCP_ESTABLISHED state.
Instead of having a separate block strictly for FIN packet processing,
let the packet be processed by common code responsible for regular
data/ack processing. This should be less error-prone for any future
modifications or not-yet-discovered issues. Only after the common
processing of data/ack is done, we check whether FIN flag was present in
the packet, and mark the connection for closing.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-09-22 09:52:13 +02:00
Robert Lubos
99b435788e tests: net: tcp: Add test for FIN,ACK received after final data
Add a test case for a scenario where the final data sent by one peer is
acknowledged in the FIN,ACK response from the other peer. Verify that
the acknowledgment is handled correctly, and a consecutive sequence
number sent by the TCP stack in such case is set correctly.

This complements the other existing test for FIN packet handling, which
verified that data received in a FIN packet is handled correctly. With
those tests in place it should be safer to update any logic related to
FIN packet handling.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-09-22 09:52:13 +02:00
Cristian Bulacu
5f64a3a666 samples: net: openthread: border_router: Enable IPv4 to IPv6 mapping
Updated border router configuration to enable IPv4 to IPv6 address
mapping feature

Signed-off-by: Cristian Bulacu <cristian.bulacu@nxp.com>
2025-09-22 09:52:03 +02:00
Cristian Bulacu
58743ee840 modules: openthread: udp: Allow IPV4 traffic to OT UDP sockets
When CONFIG_NET_IPV4 && CONFIG_NET_IPV4_MAPPING_TO_IPV6 are enabled,
allow IPV4 traffic to platform sockets by setting IPV6_ONLY to 0.

Signed-off-by: Cristian Bulacu <cristian.bulacu@nxp.com>
2025-09-22 09:52:03 +02:00
Cristian Bulacu
ecd455bb72 modules: openthread: mdns_socket: Add IPv4 addresses to localhost
This commit aims to add IPv4 addresses to mDNS localhost.

Signed-off-by: Cristian Bulacu <cristian.bulacu@nxp.com>
2025-09-22 09:52:03 +02:00
Fin Maaß
186bb57b97 drivers: serial: litex: make sure to just disable irq
just disable irq and not plush pending events,
so we don't loose them, when they are enabled
again.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-09-22 09:51:36 +02:00
Robert Lubos
eda76ad21b net: tcp: Preallocate TX packet for TCP context
TCP context cannot operate w/o a TX packet for buffering transmitted
data. So far this net_pkt was allocated at runtime from the common
packet pool, but this created some not-obvious memory requirement on TCP
and could lead to TX packet starvation in case many TCP connections are
open in parallel. Therefore, allocate this packet structure statically,
as a part of the TCP context instead.

This increases the memory requirement of the TCP context by ~64 bytes,
however if that's a concern for the application, the maximum number of
TX packets can be lowered instead. In return, we get a clear separation
between the number of TCP connections opened, and the amount of packets
that can be transmitted.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-09-22 09:51:10 +02:00
Robert Lubos
b8c7984099 net: pkt: Add helper function to initialize TX packet
Add helper function to initialize externally allocated TX packet. It's
especially important to configure net_buf slab for the packet so that
net buffers are allocated from a correct pool for the packet.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-09-22 09:51:10 +02:00
Robert Lubos
aca511c91f net: tcp: Use net_buf pointer directly for out-of-order recv queue
Using net_pkt for TCP out-of-order recv queue was an overshot, as the
mechanism mostly used net_buf operations directly anyway. It can be
easily replaced with a direct net_buf pointer, so that it's not longer
needed to hog one net_pkt per TCP context anymore.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-09-22 09:51:10 +02:00
Sheeba Babu
71f6840a1b doc: clarify gcc-multilib instructions for AArch64
Changed 'remove' to 'omit' to clarify package instructions for
AArch64 systems. This improves clarity for users following the
Zephyr SDK setup guide.

Signed-off-by: Sheeba Babu <sheebakarickom@gmail.com>
2025-09-21 20:52:47 -07:00
Anas Nashif
e3d2e7d60d tests: kernel: fix issue with stack overflow detection
on arc, the test fails with an MPU error instead of a stack
overflow because the priv stack is merged into the defined
stack.

Fixes #68682

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-09-21 18:10:16 -04:00
Ayush Singh
1c1598601b boards: beagle: pocketbeagle_2: a53: Enable watchdog
- Enable main_rti0 watchdog timr.
- Tested on PocketBeagle 2 with the samples/drivers/watchdog.

Signed-off-by: Ayush Singh <ayush@beagleboard.org>
2025-09-20 23:05:44 +02:00
Ayush Singh
2ac7899791 dts: arm64: ti: am62x_a53: Add MAIN domain RTI
- Add Real Time Interrupt (RTI) nodes.
- Works as watchdog timers.

Signed-off-by: Ayush Singh <ayush@beagleboard.org>
2025-09-20 23:05:44 +02:00
Jonas Berg
ab00c2b718 boards: shields: Add Adafruit 8-channel solenoid shield
Tested with the commands mentioned in index.rst

The product photo is from
https://learn.adafruit.com/assets/137335
with the license CC BY-SA 3.0

Signed-off-by: Jonas Berg <jonas.s.t.berg@gmail.com>
2025-09-20 23:05:14 +02:00
Fabio Baltieri
9e42f0cfa1 samples: capture: fix a double promotion warning
Fixes

samples/drivers/pwm/capture/src/main.c:50:47: warning: implicit
conversion from 'floa' to 'double' when passing argument to function
[-Wdouble-promotion]
   50 |                         (float)tim_clk_cycles / (float)period,
      |                         ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
samples/drivers/pwm/capture/src/main.c:51:46: warning: implicit
conversion from 'floa' to 'double' when passing argument to function
[-Wdouble-promotion]
   51 |                         (float)(width * 100) / (float)period);
      |                         ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2025-09-20 11:11:21 +02:00
Declan Snyder
a6836866b1 drivers: lpuart: Dont say we support async without DMA
The dma has to be enabled on the platform in order for ASYNC API to
work. This can be indicated by whether or not any LPUART node has the
`dmas` property set.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-09-20 11:11:09 +02:00
Ederson de Souza
960050bc38 MAINTAINERS: Add boards/intel/btl to Intel Platforms (x86)
It helps bots to find reviewers for PRs.

Signed-off-by: Ederson de Souza <ederson.desouza@intel.com>
2025-09-20 11:10:59 +02:00
Ederson de Souza
823c519db2 subsys/llext: Fail if section name index is outside strings area
Avoid unintended out of bounds accesses.

Signed-off-by: Ederson de Souza <ederson.desouza@intel.com>
2025-09-20 11:10:51 +02:00
Ederson de Souza
2bc84dc6d6 subsys/llext: Fail if symbol name index is outside strings area
Avoid unintended out of bounds accesses.

Signed-off-by: Ederson de Souza <ederson.desouza@intel.com>
2025-09-20 11:10:51 +02:00
Ederson de Souza
3f6734034a subsys/llext: Fail if stated symbol size doesn't fit elf_sym_t
As it avoid unintended overflows.

Signed-off-by: Ederson de Souza <ederson.desouza@intel.com>
2025-09-20 11:10:51 +02:00
Quy Tran
77d02aa1f9 drivers: sdhc: Update timeout unit to us for event wait
r_sdhi_wait_for_event requires input timeout as us but the current
implemetation using timeout_ms instead

Signed-off-by: Quy Tran <quy.tran.pz@renesas.com>
2025-09-20 11:10:24 +02:00
Zhaoxiang Jin
19ef6117df boards: nxp: Cleanup XIP, XMCD and DCD files
Cleanup XIP, XMCD and DCD files to convert
camel case to snake case.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-09-20 11:10:05 +02:00
Zhaoxiang Jin
39f6b5e9e3 soc: nxp: imxrt: Convert camel case to snake case
Convert camel case to snake case

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-09-20 11:10:05 +02:00
Mahesh Mahadevan
efe34d04d2 drivers: nxp: Use a MACRO to enable Wakeup signals
Switch to using the new NXP_ENABLE_WAKEUP_SIGNAL and
NXP_DISABLE_WAKEUP_SIGNAL macros to avoid adding
platform specific calls in the Zephyr drivers.

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2025-09-20 11:09:00 +02:00
Mahesh Mahadevan
b0624af741 soc: nxp: Add Macros to handle variation in managing Wakeup IRQ
The SDK code to handle managing Wakeup IRQ's for low power mode
varies between SoC's.
Add a MACRO that can be called by the Zephyr drivers so we
can manage these variations without adding SoC specific code
to the drivers.

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2025-09-20 11:09:00 +02:00
Mahesh Mahadevan
fd040a40c0 soc: nxp: Add common folder to the include path
This will allow us to add header files to the
common folder

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2025-09-20 11:09:00 +02:00
Alexandre Rey
0a9d278ccc boards: nxp: disable COP watchdog by default
To preserve the previous logic, the watchdog must be disabled by default
using the dedicated Kconfig option.

Signed-off-by: Alexandre Rey <alx.rey@icloud.com>
2025-09-20 11:08:45 +02:00
Alexandre Rey
65880fab56 soc: nxp: replace WDOG_ENABLE_AT_BOOT by WDT_DISABLE_AT_BOOT
Using WDT_DISABLE_AT_BOOT instead of WDOG_ENABLE_AT_BOOT prevents the
definition of z_arm_watchdog_init, which is important because the COP
watchdog configuration register can only be configured once.

Signed-off-by: Alexandre Rey <alx.rey@icloud.com>
2025-09-20 11:08:45 +02:00
Alexandre Rey
9291bac573 drivers: cop: add support of WDT_DISABLE_AT_BOOT
Add support for CONFIG_WDT_DISABLE_AT_BOOT Kconfig option.

Signed-off-by: Alexandre Rey <alx.rey@icloud.com>
2025-09-20 11:08:45 +02:00
Alexandre Rey
d571f90183 drivers: cop: add NXP cop driver
Port NXP cop driver to Zephyr

Signed-off-by: Alexandre Rey <alx.rey@icloud.com>
2025-09-20 11:08:45 +02:00
Almir Okato
786c9fb35e flash: espressif: erase region before writing if encryption enabled
Ensuring flash region has been erased before writing to avoid
inconsistences and force expected erased value (0xFF) into
flash when erasing a region when Hardware Flash Encryption is
enabled
This is handled on this implementation because MCUboot's state
machine relies on erased valued data (0xFF) readed from a
previously erased region that was not written yet, however when
hardware flash encryption is enabled, the flash read always
decrypts whats being read from flash, thus a region that was
erased would not be read as what MCUboot expected (0xFF).

Signed-off-by: Almir Okato <almir.okato@espressif.com>
2025-09-19 17:57:07 -04:00
Almir Okato
f6a2821b23 soc: espressif: move flash_mmap and esp_flash_api to iram/dram sections
Move both objects to IRAM/DRAM sections.

Signed-off-by: Almir Okato <almir.okato@espressif.com>
2025-09-19 17:57:07 -04:00
Zhaoxiang Jin
78b4fed391 tests: drivers: comparator: Enable nxp cmp test
Enable nxp cmp test.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-09-19 17:47:58 -04:00
Zhaoxiang Jin
25ede2daf7 boards: Enable cmp on frdm_mcxc242
Enable cmp on frdm_mcxc242

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-09-19 17:47:58 -04:00
Zhaoxiang Jin
6d724bd80d drivers: comparator: Enable nxp comparator (cmp)
Enable nxp comparator (cmp)

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-09-19 17:47:58 -04:00
Zhaoxiang Jin
711a88726d drivers: sim: Enable cmp clock through sim driver
Enable cmp clock through sim driver

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-09-19 17:47:58 -04:00
Biwen Li
16c03c4145 drivers: dma: mcux_edma: convert address
Convert address for dma when update tcd registers.
- This commit fixes a bug that dma reports source/destination bus errors
  when dma try to access the unconveted addresses. The unconverted
  addresses will be reserved address from dma view.

Signed-off-by: Biwen Li <biwen.li@nxp.com>
2025-09-19 17:47:44 -04:00
Aaron Wisner
202ba136a0 include: Fix C headers such that they can be included in C++ context.
ksched.h: Add missing extern "C" for C++.
kernel_arch_func.h: Rename reserved "new" C++ keyword.

No functional change.

Signed-off-by: Aaron Wisner <aaronwisner@gmail.com>
2025-09-19 17:47:34 -04:00
Andrew Davis
803dc90dc6 boards: ti: sk_am62: Add IPC mailbox support
Add IPC mailbox chosen property. The mailbox channels used are as
expected by Linux.

Signed-off-by: Andrew Davis <afd@ti.com>
2025-09-19 21:24:40 +02:00
Andrew Davis
397bb3c6b4 boards: ti: am62: Fix size of DDR1 memory region
Unlike most other remote cores on most other TI K3 devices, the M4
on AM62 was only reserved 14MB of shared memory DDR vs the normal 15MB.
Update the same for all AM62 boards to prevent writing into unreserved
memory.

Signed-off-by: Andrew Davis <afd@ti.com>
2025-09-19 21:24:29 +02:00
Jilay Pandya
c7dc59f46d drivers: ethernet phy_dm8806_read_reg reduce nested-ifs
reduce if nesting a bit using early break

Signed-off-by: Jilay Pandya <jilay.pandya@outlook.com>
2025-09-19 21:24:23 +02:00
Jilay Pandya
9992eb90cb drivers: ethernet: phy_dm8806 fix unchecked return value
Check the return values and log them with error loglevel

Signed-off-by: Jilay Pandya <jilay.pandya@outlook.com>
2025-09-19 21:24:23 +02:00
Benjamin Cabé
1717b6c212 ci: compliance: treat LicenseAndCopyrightCheck warnings as ...warnings
Warnings related to the LicenseAndCopyrightCheck should not be blocking.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-19 21:24:13 +02:00
Adrien Ricciardi
d494f86ea4 doc: releases: Add Dummy Task Watchdog Kconfig
Add the newly introduced Dummy Task Watchdog feature Kconfig to the 4.3
release notes.

Signed-off-by: Adrien Ricciardi <aricciardi@baylibre.com>
2025-09-19 12:47:23 -04:00
Adrien Ricciardi
8fd797e95a task_wdt: Add dummy implementation
The introduced CONFIG_TASK_WDT_DUMMY Kconfig symbol allows to easily
disable the Task Watchdog by providing a dummy implementation.

The Task Watchdog can fire when a board is halted on a breakpoint during
a debugging session, so this new feature can turn useful in this case.

Signed-off-by: Adrien Ricciardi <aricciardi@baylibre.com>
2025-09-19 12:47:23 -04:00
Fabrice DJIATSA
5539a2254a samples: drivers: i2s: output: update u385rg_q sa1 pins node
Choose another sai1_fs_a pin available to avoid the need to
disable the Zephyr-chosen console and i2c3 node.

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2025-09-19 12:46:58 -04:00
Guillaume Gautier
43bf0b3344 drivers: sensor: st: qdec: remove init struct
Remove the calls to LL_TIM_ENCODER_StructInit and LL_TIM_ENCODER_Init
in the QDEC driver. This avoids calling functions from stm32xxxx_ll_tim.c.
They are replaced by a set of simpler functions from the header file.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2025-09-19 12:46:46 -04:00
Guillaume Gautier
24dcfb22f0 drivers: pwm: stm32: remork complementary channel logic
Align the definition of the complementary channels to the normal channels.
That way, it is consistent for all arrays, we use channel-1 as index, and
no other operation is necessary.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2025-09-19 12:46:46 -04:00
Guillaume Gautier
c82a2b2b58 drivers: pwm: stm32: reduce pointer level from cfg->timer to timer
This change reduces the level of pointer indirection, which minimizes
repeated dereferencing and helps reduce the overall code size, in the same
way as commit 48e326a552 for UART.

This also fixes the type complimentary -> complementary.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2025-09-19 12:46:46 -04:00
Guillaume Gautier
a5531f5d98 drivers: pwm stm32: remove init struct
Remove the calls to LL_TIM_xx_StructInit and LL_TIM_xx_Init in the PWM
driver. This avoids calling functions from stm32xxxx_ll_tim.c.
They are replaced by a set of simpler functions from the header file.

OC Init in particular is much simpler now. The init structure needed to be
filled out with the complementary channel (if it existed), even though its
configuration didn't change.
The new init is much more direct and only touches what needs to be
modified.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2025-09-19 12:46:46 -04:00
Guillaume Gautier
4457e6db95 drivers: counter: stm32: remove init struct
Remove the calls to LL_TIM_StructInit and LL_TIM_Init in the counter
driver. This avoids calling functions from stm32xxxx_ll_tim.c.
They are replaced by a set of simpler functions from the header file.

Also replaces some macros that used constants coming from the HAL. Use
an equivalent coming purely from the LL.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2025-09-19 12:46:46 -04:00
Michael Zimmermann
16c57f6025 samples: mqtt_sn_publisher: fix adding predefined gateway
Apparently, the code was copied from where the broadcast IP is parsed and
not adjusted correctly. Both the log message and the source of the IP
address were wrong.

Signed-off-by: Michael Zimmermann <michael.zimmermann@sevenlab.de>
2025-09-19 12:46:29 -04:00
Michael Zimmermann
013ca06c78 samples: mqtt_sn_publisher: fix wrong kconfig description
The opposite of what was stated previously is true.
NET_SAMPLE_MQTT_SN_GATEWAY_IP is only used when
NET_SAMPLE_MQTT_SN_STATIC_GATEWAY is y.

Since this is already expressed using Kconfig dependencies, this change
simply removes the sentence in question.

Signed-off-by: Michael Zimmermann <michael.zimmermann@sevenlab.de>
2025-09-19 12:46:29 -04:00
Bjarki Arge Andreasen
7c4b0c29f0 soc: nordic: nrf54h: bicr: fix incorrect scaling of lfrccal props
The lfrccal takes the two properties tempMeasIntervalSeconds and
tempDeltaCalibrationTriggerCelsius which are in steps of 0.25.
The bicrgen.py script incorrectly treated these values as steps
of 1, so the actual values written to (and read from) bicr where
scaled incorrectly.

This commit fixes the scaling for those two props.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-09-19 12:46:14 -04:00
Benjamin Cabé
155a371ecf script: ci: check_compliance: add LicenseAndCopyright compliance check
Implement a new compliance check to ensure that all modified files
have correct licensing information (SPDX-License-Identifier as well as
copyright info).

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-19 12:45:41 -04:00
Benjamin Cabé
7d510ac2f9 script: ci: check_compliance: adjust test name formatting
Provide more space to tests with a long name so that output is aligned.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-19 12:45:41 -04:00
Benjamin Cabé
95e91d67e1 scrips: ci: check_compliance: organize imports
organize import and fix associated ruff exlude rule

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-19 12:45:41 -04:00
Benjamin Cabé
5fc4580bf5 REUSE.toml: add annotation for files that may not contain licensing info
Add REUSE.toml to describe what license and copyright info applies to
files that may not contain licensing info in their headers.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-19 12:45:41 -04:00
Benjamin Cabé
1d435673c6 LICENSES: add Apache-2.0.txt
add Apache-2.0 license as per REUSE recommendations

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-19 12:45:41 -04:00
Benjamin Cabé
a5459d4563 .ruff-excludes: add copyright header
Add copyright info to this file

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-19 12:45:41 -04:00
Benjamin Cabé
e8356d253a .gitignore: add license/copyright header
Add licensing info to this file

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-19 12:45:41 -04:00
Aymeric Aillet
9dfac5a66e MAINTAINERS.yml: Remove aaillet as Renesas R-Car maintainer
Due to a change in my work situation, I will no longer
have the time to fulfill my obligations as a maintainer.
The Renesas R-Car area will still have a maintainer and
a collaborator, which is enough given the workload involved.

Signed-off-by: Aymeric Aillet <aymeric.aillet@iot.bzh>
2025-09-19 16:35:57 +02:00
Bjarki Arge Andreasen
9eda60d5cf MAINTAINERS: Add bjarki-andreasen to maintainers of nRF Platforms
Add bjarki-andreasen to maintainers of nRF Platforms.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-09-19 16:35:38 +02:00
Khaoula Bidani
a1cde5f523 tests: drivers: gpio: Add test for GPIO_INPUT flag in pin_get_config
Extend the pin_get_config() test to verify that when
a pin is configured as input,gpio_pin_get_config() returns
the GPIO_INPUT flag and does not set the GPIO_OUTPUT flag.

Signed-off-by: Khaoula Bidani <khaoula.bidani-ext@st.com>
2025-09-19 16:35:29 +02:00
Fabio Baltieri
7a814345d1 scripts: update the Github auth API
Fixes: /home/runner/work/zephyr/zephyr/scripts/ci/do_not_merge.py:66:
DeprecationWarning: Argument login_or_token is deprecated, please use
auth=github.Auth.Token(...) instead

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2025-09-19 16:35:15 +02:00
Ioannis Karachalios
0d0e261713 tests: counter: Remove timer2 node from testing
By default, timer2 node is reserved for the OS tick generation and thus,
it should not be referenced by application.

Signed-off-by: Ioannis Karachalios <ioannis.karachalios.px@renesas.com>
2025-09-19 16:34:37 +02:00
Ioannis Karachalios
9fe858e886 dts: renesas: smartbond: Update timer2 node status
PM and PM_DEVICE should be enabled, by default. The latter, require that
timer2 node be employed and reserved for the OS tick generation.

Signed-off-by: Ioannis Karachalios <ioannis.karachalios.px@renesas.com>
2025-09-19 16:34:37 +02:00
Ioannis Karachalios
3dbf51ed57 tests: memc: Update yaml to support da1469x_dk_pro
Testing with external PSRAM memory requires that an extra overlay file
be defined.

Signed-off-by: Ioannis Karachalios <ioannis.karachalios.px@renesas.com>
2025-09-19 16:34:37 +02:00
Gerard Marull-Paretas
c4cd5c31ea MAINTAINERS: add SiFli SF32LB entry
Add myself as a maintainer for now, and @cameled as a collaborator.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2025-09-19 16:34:15 +02:00
Gerard Marull-Paretas
bdac26dd51 boards: sifli: add sf32lb52_devkit_lcd
Ref. https://wiki.sifli.com/en/board/sf32lb52x/SF32LB52-DevKit-LCD.html

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2025-09-19 16:34:15 +02:00
Gerard Marull-Paretas
33f0a194d7 dts: bindings: add puya vendor prefix
To be used for some NOR flash devices.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2025-09-19 16:34:15 +02:00
Gerard Marull-Paretas
f6010ffc3d boards: common: add sftool runner support
For the recently added sftool west runner.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2025-09-19 16:34:15 +02:00
Gerard Marull-Paretas
6dacc14d2b scripts: west_commands: runners: add sftool runner
So we can flash using sftool.

Ref. https://github.com/OpenSiFli/sftool.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2025-09-19 16:34:15 +02:00
Gerard Marull-Paretas
9a1bb99d02 dts: arm: sifli: sf32lb52x: define mpi1/2
MPI1/2 are memory controllers (PSRAM, NOR, NAND, etc.).

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2025-09-19 16:34:15 +02:00
Gerard Marull-Paretas
dd0e353ca6 dts: bindings: memory-controllers: add sifli,sf32lb-mpi
Binding for SiFli SF32LB Memory Peripheral Interface (MPI).

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2025-09-19 16:34:15 +02:00
Gerard Marull-Paretas
e3e2a40895 drivers: serial: sf32lb: add basic driver
Just basic driver with poll-in/out capability.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2025-09-19 16:34:15 +02:00
Gerard Marull-Paretas
8e17e6d5b7 dts: arm: sifli: sf32lb52x: define usart1
Define node for USART1. Other available USART instances will be added in
the future.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2025-09-19 16:34:15 +02:00
Gerard Marull-Paretas
085e0a1fde dts: bindings: serial: add sifli,sf32lb-usart
For the UART IP in SF32LB SoCs.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2025-09-19 16:34:15 +02:00
Gerard Marull-Paretas
2d50a4176b drivers: pinctrl: sf32lb52x: initial driver
Initial driver for SF32LB52X SoCs.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2025-09-19 16:34:15 +02:00
Gerard Marull-Paretas
3e49ad425f dt-bindings: pinctrl: add pin definitions boilerplate for SF32LB52x
Add valid pin configurations boilerplate for SF32LB52x. All valid
configurations will be added in a follow-up commit.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2025-09-19 16:34:15 +02:00
Gerard Marull-Paretas
ba98762f53 dts: arm: sifli: sf32lb52x: define pinctrl
Add a node for pinctrl (PINMUX).

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2025-09-19 16:34:15 +02:00
Gerard Marull-Paretas
445efe2969 dts: bindings: pinctrl: add sifli,sf32lb52x-pinmux
Add bindings for the SF32LB52X SoCs PINMUX peripheral. Note that
SF32LB56X SoCs contain a compatible IP (not others, where HPSYS_CFG is
not required), so if SF32LB56X support is added, binding could be
adjusted to reflect 52x/56x support.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2025-09-19 16:34:15 +02:00
Gerard Marull-Paretas
b083e2c864 drivers: clock_control: sf32lb: add initial driver
Initial driver for SF32LB SoCs. This driver is incomplete, but allows
to configure the system for a minimal boot.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2025-09-19 16:34:15 +02:00
Gerard Marull-Paretas
b82dccce20 dt-bindings: clock: add definitions for SF32LB52X clocks
So they can easily be referenced in devicetree.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2025-09-19 16:34:15 +02:00
Gerard Marull-Paretas
cc9fd35378 dts: arm: sifli: sf32lb52x: define RCC clock controller
This is defined as a subnode because RCC is a MFD device (clock and
reset controller), however, Zephyr does not allow >1 device per DT node!

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2025-09-19 16:34:15 +02:00
Gerard Marull-Paretas
c5e4e38a1f dts: bindings: clock: add sifli,sf32lb-dll
Add binding for SF32LB DLL clock.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2025-09-19 16:34:15 +02:00
Gerard Marull-Paretas
21813831e1 dts: bindings: clock: add sifli,sf32lb-rcc-clk
Add binding for SF32LB RCC (clock part).

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2025-09-19 16:34:15 +02:00
Gerard Marull-Paretas
cdf4fb13d9 dts: arm: sifli: sf32lb52x: define pmuc
Add a devicetree node for PMUC.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2025-09-19 16:34:15 +02:00
Gerard Marull-Paretas
135dc1b65b dts: bindings: power: add sifli,sf32lb-pmuc
Add bindings for the SiFli SF32LB PMUC. PMUC is a sort of "syscon" type
register block used to control multiple power-management related stuff.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2025-09-19 16:34:15 +02:00
Gerard Marull-Paretas
0996652790 dts: arm: sifli: sf32lb52x: define RCC
Add node for RCC.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2025-09-19 16:34:15 +02:00
Gerard Marull-Paretas
348248570a dts: bindings: mfd: add sifli,sf32lb-rcc
SiFli SF32LB RCC (Reset and Clock Control).

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2025-09-19 16:34:15 +02:00
Gerard Marull-Paretas
6558029f99 drivers: clock_control: sf32lb_hxt48: add initial driver
Add driver for HXT48.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2025-09-19 16:34:15 +02:00
Gerard Marull-Paretas
25160c1328 dts: arm: sifli: sf32lb52x: define HXT48 clock
Add node for the HXT48 clock.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2025-09-19 16:34:15 +02:00
Gerard Marull-Paretas
6b9d4700d5 dts: bindings: clock: add sifli,sf32lb-hxt48
Add binding for SF32LB HXT48 clock.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2025-09-19 16:34:15 +02:00
Gerard Marull-Paretas
7732d47129 dts: arm: sifli: sf32lb52x: define all fixed clocks
Refer to Ch 2 "Clock and Reset" from reference manual. Some may require
specific bindings in the future if they can be configured (e.g. RC48).

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2025-09-19 16:34:15 +02:00
Gerard Marull-Paretas
62e887d138 dts: arm: sifli: sf32lb52x: define AON entry
Add entry for SF32LB AON.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2025-09-19 16:34:15 +02:00
Gerard Marull-Paretas
ab70b4c3a2 dts: bindings: power: add sifli,sf32lb-aon
SiFli SF32LB AON module controls certain low-power or clocks, e.g.
enablement of HXT48 on different LP modes, etc.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2025-09-19 16:34:15 +02:00
Gerard Marull-Paretas
087ab5a567 dts: arm: sifli: sf32lb52x: define cfg
Define node for SF32LB HPSYS_CFG.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2025-09-19 16:34:15 +02:00
Gerard Marull-Paretas
df3d8e87be dts: bindings: syscon: add sifli,sf32lb-cfg
SiFli SoCs have a multi-purpose register set named HPSYS_CFG, which we
can treat as a "syscon".

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2025-09-19 16:34:15 +02:00
Gerard Marull-Paretas
6135b8e450 soc: sifli: sf32: signal HAL selection and use CMSIS HAL glue code
This brings CMSIS HAL glue code, which is required if we want to enable
any HAL module without everything blowing up. cmsis_core_m_defaults.h
cannot be used once we enable HAL. CMSIS is that nice.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2025-09-19 16:34:15 +02:00
Gerard Marull-Paretas
e9c9cae5d2 modules: hal_sifli: add initial glue code
Add glue code to build SiFli HAL. The bare minimum is included, some
more things may be required as we fully test the integration in the
future.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2025-09-19 16:34:15 +02:00
Gerard Marull-Paretas
377e45710b MAINTAINERS: add hal_sifli entry
Add myself as a maintainer for now, and @cameled as a collaborator.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2025-09-19 16:34:15 +02:00
Gerard Marull-Paretas
f65149fe1e manifest: add hal_sifli
Add SiFli HAL module. This module contains register-level description
for SF32LB SoCs IP, and a high-level HAL.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2025-09-19 16:34:15 +02:00
Gerard Marull-Paretas
be6813febb soc: sifli: introduce SF32LB52x
SF32LB52x is a SoC from SiFli Technologies(Nanjing) Co., Ltd, based on
Arm Star-MC1 core (Cortex-M33 compatible).

For more details, see:
https://wiki.sifli.com/en/hardware/SF32LB520-3-5-7-HW-Application.html
https://wiki.sifli.com/en/hardware/SF32LB52B-E-G-J-HW-Application.html

0-3-5-7 are powered using a Lithium battery and support USB charging.
B-E-G-J are powered at 3.3V and do not support charging.

Other termination codes indicate what type of memory and size is
embedded in the package (QSPI NOR or PSRAM).

Other families exist within the SF32LB family, like SF32LB56x,
SF32LB58x, etc.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2025-09-19 16:34:15 +02:00
Gerard Marull-Paretas
a9c5a7fb21 dts: arm: sifli: add sram layout default schemes
SRAM is segmented as:

- RAM0: 128K (DTCM)
- RAM1: 128K
- RAM2: 256K

where:

- RAM0 can be accessed by all peripherals except PTC1/2.
- RAM1/RAM2 have its own port, so e.g. master 1 can access RAM1 while
  master 2 can access RAM2.

Depending on the application, one may decide to just use the whole RAM
as a single block, split RAM0 (DTCM) and RAM1/2, etc. For now, provide 2
schemes:

- Use all SRAM as a single block
- Use RAM0 (DTCM) + RAM1/2

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2025-09-19 16:34:15 +02:00
Gerard Marull-Paretas
a7e476935b dts: arm: sifli: add skeleton for sf32lb52x
Just define basic ARM hardware: CPU, MPU and NVIC settings. SF32LB SoCs
are technically Arm-Star MC1 based, an Arm Cortex-M33 compatible CPU
developed by Arm China.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2025-09-19 16:34:15 +02:00
Gerard Marull-Paretas
bfa73252cd dts: bindings: add sifli vendor prefix
Add `sifli` for SiFli Technologies(Nanjing) Co., Ltd.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2025-09-19 16:34:15 +02:00
Marek Matej
0553f59ee6 boards: espressif: Fix more images
Fix file format of the board and shield images.

Signed-off-by: Marek Matej <marek.matej@espressif.com>
2025-09-19 16:33:31 +02:00
Marek Matej
11616b98f3 boards: espressif: Fix chapters heading
Fix chapters and included rst section heading.

Signed-off-by: Marek Matej <marek.matej@espressif.com>
2025-09-19 16:33:31 +02:00
Mohamed Irfan
91f3447ccd soc: siwg917: nwp: PM enablement of BT for siwx91x
Added BT PM changes for nwp driver

Signed-off-by: Mohamed Irfan <irfan.mohamed@silabs.com>
2025-09-19 16:33:18 +02:00
Bjarki Arge Andreasen
5438462a6a pm: device: runtime: Only select EVENTS if PM_DEVICE_RUNTIME_ASYNC
The k_event event is only used if CONFIG_PM_DEVICE_RUNTIME_ASYNC is
selected, but EVENTS is selected, and the k_event included in the
struct pm_device if CONFIG_PM_DEVICE_RUNTIME is selected.

Correct to only include event and EVENTS if
CONFIG_PM_DEVICE_RUNTIME_ASYNC is selected. This saves us 1
struct event per PM DEVICE.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-09-19 16:33:06 +02:00
Benjamin Cabé
7b91e8f32c boards: kincony: kincony_kc868_a32: use common partition table
A follow up to commit 78c1def4db that
probably missed this file.

Fixes CI issues observed in weekly run:
- kincony_kc868_a32/esp32/procpu:libraries.devicetree.api_ext

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-19 08:37:38 -04:00
Jeppe Odgaard
6e7268d21b mgmt/mcumgr: add missing designator to ZCBOR_MAP_DECODE_KEY_DECODER
Add missing `.key` designator.

This also fixes a compile error:
> error: either all initializer clauses should be designated or none of
them should be

Signed-off-by: Jeppe Odgaard <jeppe.odgaard@prevas.dk>
2025-09-19 08:37:19 -04:00
Tomi Fontanilles
27011feb17 MAINTAINERS: add missing TF-M collaborators to all repositories
Add all the `West project: trusted-firmware-m` collaborators to
`tf-m-tests` and `psa-arch-tests`. They are repositories highly related
to TF-M.

Signed-off-by: Tomi Fontanilles <tomi.fontanilles@nordicsemi.no>
2025-09-19 08:36:46 -04:00
Ioannis Karachalios
e020e65570 zephyr: Update maintainers list
This commit should deal with updating the maintainers list for Smartbond
family of devices.

Signed-off-by: Ioannis Karachalios <ioannis.karachalios.px@renesas.com>
2025-09-19 08:36:35 -04:00
Nicolae Dicu
67b4063a20 scripts: requirements: Use gitlint-core for loose requirements
Gitlint-core has loose requirements and not conflicting
with scancode-toolkit v32.4.1 (click==8.1.3 vs click>=8.2.0).

Signed-off-by: Nicolae Dicu <nicolae.dicu@nordicsemi.no>
2025-09-19 08:35:53 -04:00
Khanh Nguyen
9421b82699 soc: renesas: Enable secure security attribution for DMA module
Currently, the DMA on several Renesas boards is failing due to
the security attribution of DMA.

As a solution: Enable secure security attribution
for DMA module for:
- RA6: ra6e1, ra6e2, ra6m4, ra6m5
- RA4: ra4c1, ra4e1, ra4e2, ra4l1, ra4m2, ra4m3

Signed-off-by: Khanh Nguyen <khanh.nguyen.wz@bp.renesas.com>
Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-09-19 08:35:41 -04:00
Ren Chen
de93d4f41c soc: ite: it82xx2: add it82000.bw variant support
as title.

Signed-off-by: Ren Chen <Ren.Chen@ite.com.tw>
2025-09-19 08:35:10 -04:00
Ren Chen
20c8f6b5f7 drivers: pinctrl: it8xxx2: add support for alternate function 5
This commit introduces alternate function 5 setting for it8xxx2 SoC.

Signed-off-by: Ren Chen <Ren.Chen@ite.com.tw>
2025-09-19 08:35:10 -04:00
Jordan Yates
61298e31c7 scripts: twisterlib: more efficient coverage merging
Use `collections.defaultdict` to simplify code, and use the `bytes`
type internally rather than hex strings.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-09-19 08:34:32 -04:00
Jordan Yates
aa08e0df20 testsuite: coverage: convert dump method to choice
To support future coverage dump methods (semihosting) move
`COVERAGE_DUMP` inside a choice symbol.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-09-19 08:34:32 -04:00
Benjamin Cabé
f8e183c3db tests: ram_context_for_isr: pick an available IRQ for Nuvoton platforms
NPCX7, NPCX9, and NPCK3 platforms have their (NUM_IRQS-1) IRQ taken,
so set CONFIG_TEST_IRQ_NUM to a different available IRQ.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-19 08:34:21 -04:00
Cristian Bulacu
cdf5811791 net: dns: DNS resolver packet forwarding
This aims to implement a packet forwarding mechanism between
DNS resolver and applications that install a callback, letting
DNS resolver know that received UDP packet is also required by an
application.

Signed-off-by: Cristian Bulacu <cristian.bulacu@nxp.com>
2025-09-19 08:34:06 -04:00
Pavel Vasilyev
52862dc658 bluetooth: host: move bt_gatt_authorization_cb_register to gatt.c
This function logically belongs to gatt.c as it is GATT API.

Signed-off-by: Pavel Vasilyev <pavel.vasilyev@nordicsemi.no>
2025-09-19 08:33:29 -04:00
Rafał Kuźnia
65fae0a050 modules: hal_nordic: nrf_802154: Add new Kconfig options
The NRF_802154_ENCRYPTION was split into two additional Kconfigs that
control separate functionalities:
* NRF_802154_IE_WRITER - to enable Information Element writer
* NRF_802154_SECURITY_WRITER - to enable frame counter writer

Signed-off-by: Rafał Kuźnia <rafal.kuznia@nordicsemi.no>
2025-09-19 08:33:12 -04:00
Rafał Kuźnia
9bc99401b4 manifest: update hal_nordic to pull nrf-802154 changes
Updated the hal_nordic to bring the latest changes of the nrf-802154
component.

Signed-off-by: Rafał Kuźnia <rafal.kuznia@nordicsemi.no>
2025-09-19 08:33:12 -04:00
Thomas Stranger
e102fc94c0 dts: arm: st: stm32h5: set default alt clock for fdcan
Explicitly set the default alt clock for canfd. Without
explicitly setting it the clock subsystem will return
the frequency of the gating clock(APB1).

Signed-off-by: Thomas Stranger <thomas.stranger@outlook.com>
2025-09-19 08:32:44 -04:00
Thomas Stranger
9783a70e6c dts: arm: st: stm32h5: fix line features sai, can, eth
Fix peripheral availability per h5 line.
Some peripherals are not available on the entry level
lines of the stm32h5 series:
- fdcan2 only on SoCs >= H523, but not on h562
- sai only on >= H562
- ethernet only on >= H563

Signed-off-by: Thomas Stranger <thomas.stranger@outlook.com>
2025-09-19 08:32:44 -04:00
Erwan Gouriou
d20e15f651 cmake: mcuboot: ramload: Expect write-block_size only in revert case
Since we're not yet at a consensus on where 'write-block-size' should be
set, make the adjustable alignment expected only in the revert case
to restore functionality on the 'normal' case.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2025-09-19 08:32:22 -04:00
Elgin Perumbilly
447c3fb018 boards: silabs: slstk3701a: Enable LPM013M126A Display
Enable the LPM013M126A display node under USART1 in the slstk3701a DTS.
Add pre_dt_board.cmake to suppress SPI bus bridge warnings, and update the
pinctrl configuration to properly configure the display control pins.

Signed-off-by: Elgin Perumbilly <elgin.perumbilly@siliconsignals.io>
2025-09-19 08:31:05 -04:00
Bhavin Sharma
d368921ae6 drivers: display: Added LPM013M126 display driver.
Add support for JDI LPM013M126 RGB memory display

Co-developed-by: Elgin Perumbilly <elgin.perumbilly@siliconsignals.io>
Signed-off-by: Elgin Perumbilly <elgin.perumbilly@siliconsignals.io>
Signed-off-by: Bhavin Sharma <bhavin.sharma@siliconsignals.io>
2025-09-19 08:31:05 -04:00
Marek Matej
ccf27a9701 tests: boards: espressif: Nested IRQ
Add test suite to test nested interrupts on ESP32 Xtensa targets.

Signed-off-by: Marek Matej <marek.matej@espressif.com>
2025-09-19 08:29:49 -04:00
Alain Volmat
9cc26d64e3 drivers: memc: stm32: removal of sdram1/sdram2/psram sections handling
SDRAM1 / SDRAM2 / PSRAM sections were being referenced in order to make
them accessible for the framebuffer. This is now addressed via the
mechanism provided by Zephyr hence this is no more necessary.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-09-19 08:28:22 -04:00
Alain Volmat
65ecc42331 display: stm32_ltdc: use LINKER_DT_NODE_REGION_NAME for ext-sdram
Use the LINKER_DT_NODE_REGION_NAME macro in order to get the
memory-region into which to put the framebuffer for the LTDC.
This is made possible since all memory areas have the
zephyr,memory-region compatible, allowing to have each region
referenced within the linker script generated by Zephyr.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-09-19 08:28:22 -04:00
Alain Volmat
76b6f6ebc2 dts: arm: st: add zephyr,memory-region on all missing stm32 dts
Add the compatible zephyr,memory-region for all mmio-sram region
which do not have yet that compatible as well as add the label to
those regions. This allow to have a linker memory report which list
all areas and also have all regions accessible via the linker script.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-09-19 08:28:22 -04:00
Mark Wang
a5edd6ae92 libsbc: fix hiding headers to doxygen
remove CONFIG_LIBSBC_ENCODER and CONFIG_LIBSBC_DECODER from sbc.h, then
include the required heders files path defaultly to fix building errors.

Signed-off-by: Mark Wang <yichang.wang@nxp.com>
2025-09-19 08:28:12 -04:00
Mark Wang
11862613c3 libsbc: update header file comments as doxygen style
update sbc.h comments as doxygen style.

Signed-off-by: Mark Wang <yichang.wang@nxp.com>
2025-09-19 08:28:12 -04:00
Chaitanya Tata
3de9df0a5a modules: hostap: Add interface arg to cli commands
Now that we support multiple VIFs, need to add argument for the
interface for any command.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-09-19 08:27:55 -04:00
Chaitanya Tata
b29dddf073 modules: hostap: Use per-interface control connection
For hostapd also use per-interface control connection like we do for
supplicant.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-09-19 08:27:55 -04:00
Chaitanya Tata
e68f50d841 manifest: nrf_wifi: Pull fix for max VIF check
Fixes second interface bring up failure.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-09-19 08:27:55 -04:00
Chaitanya Tata
386dcbe72c drivers: nrf_wifi: Fix scan crash for 2nd VIF
Move the VIF initialization to top to do it for both VIFs, this fixes a
crash when scanning on the 2nd VIF.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-09-19 08:27:55 -04:00
Chaitanya Tata
f49c92e94e modules: hostap: Enable AP mode if usage includes AP
If the usage mode has AP, then automatically enable AP mode.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-09-19 08:27:55 -04:00
Chaitanya Tata
8121e8a235 modules: hostap: Adjust memories to handle dual mode
To handle the dual mode usage (STA + AP) increase the heap and stack
size.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-09-19 08:27:55 -04:00
Chaitanya Tata
19449e4396 wifi: treewide: Adjust defaults for dual mode usage
In case STA + AP mode is enabled, then adjust the defaults to accomodate
the second interface.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-09-19 08:27:55 -04:00
Chaitanya Tata
23a0665653 boards: nrf70: Add second virtual interface
Add second virtual interface by default to the DTS.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-09-19 08:27:55 -04:00
Chaitanya Tata
53a885a696 modules: hostap: Update WPA supplicant to use per-VIF control channel
Update WPA supplicant functions to pass the control channel (socket) as a
parameter instead of relying on a global socket. This change aligns with
the PR 80 modifications in hostap repo and ensures that each Virtual
Interface (VIF) uses its dedicated control channel for communication.

Signed-off-by: Hanan Arshad <hananarshad619@gmail.com>
Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-09-19 08:27:55 -04:00
Chaitanya Tata
58e7dba8bc manifest: hostap: Pull hostap changes required for multiple VIF
This commit links the hostap PR required for the nrf7002 driver.
west.yml is updated

Signed-off-by: Hanan Arshad <hananarshad619@gmail.com>
Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-09-19 08:27:55 -04:00
Chaitanya Tata
1c6a00bd5d drivers: wifi: nrf7002: Add support for multiple virtual interfaces (VIFs)
Description:
The nRF7002 firmware supports two virtual interfaces (VIFs) that can
operate in different modes (e.g., AP and STA). However, the existing
Zephyr driver only utilizes a single VIF, preventing full
multi-interface support.

This commit extends the nRF7002 driver to support multiple VIFs by
making the following modifications:

* The driver already contains an array of vif_ctx_zep, but only the
first item was being used. Now, a second Ethernet device is registered
using vif_ctx_zep[1], enabling multi-VIF operation.
* Introduced vif_ctx_cnt to keep track of active interfaces and manage
their state effectively.
* Ensured that FMAC (Firmware MAC) is initialized only once, avoiding
redundant initializations when multiple VIFs are present.
* The UMAC control commands previously did not associate responses with
the issuing VIF. A queue is now introduced to track the originating VIF
for each command and correctly route the response event to the
corresponding interface.

Signed-off-by: Hanan Arshad <hananarshad619@gmail.com>
Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-09-19 08:27:55 -04:00
Chris Friedt
4e18ce7832 doc: release: 4.3: deprecate CONFIG_POSIX_READER_WRITER_LOCKS
The Kconfig option `CONFIG_POSIX_READER_WRITER_LOCKS` is being deprecated
and renamed to `CONFIG_POSIX_RW_LOCKS` in order to match the name of the
POSIX Option Group.

`_POSIX_READER_WRITER_LOCKS` is the name of the feature test macro.

There are a few instances where the name of the Option Group does not
correspond exactly to the name of the Option (Feature Test Macro), and
this is one of them.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-09-19 08:27:49 -04:00
Romain Pelletant
6fe6a58ce3 doc: posix: update doc for POSIX_RW_LOCKS
- Replace POSIX_RW_LOCKS in documentation

Signed-off-by: Romain Pelletant <romainp@kickmaker.net>
2025-09-19 08:27:49 -04:00
Romain Pelletant
732823e0c6 posix: options: replace kconfig for rw lock
- Update Kconfig from CONFIG_POSIX_READER_WRITER_LOCKS to POSIX_RW_LOCKS

Signed-off-by: Romain Pelletant <romainp@kickmaker.net>
2025-09-19 08:27:49 -04:00
Benjamin Cabé
27fa721632 drivers: serial: opentitan: remove bogus depends on clause
CONFIG_SERIAL_SUPPORT_INTERRUPT is a Kconfig option that is supposed to
be selected by serial drivers that support interrupts. This commit
removes a bogus "depends on !SERIAL_SUPPORT_INTERRUPT" which does not
make sense and causes some tests to fail.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-19 08:06:42 +02:00
Benjamin Cabé
b1a74d75e8 doc: CMakeLists.txt: do not require sphinx
There are several doc-related build targets that do not require sphinx,
e.g. one might want to simply generate the Doxygen docs (Doxygen remaining
a hard dependency), so do not require sphinx to be present and, instead,
conditionally add the associated targets when sphinx is present.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-19 08:06:32 +02:00
Bjarki Arge Andreasen
61a9d6aa45 soc: nordic: enable CONFIG_PM_DEVICE_RUNTIME_DEFAULT_ENABLE for all
Enable CONFIG_PM_DEVICE_RUNTIME_DEFAULT_ENABLE by default for all
nordic SoCs if CONFIG_PM_DEVICE_RUNTIME is used. This will ensure
consistent behavior across all nordic SoCs and remove the need
for pasting the devicetree propert zephyr,pm-device-runtime-auto
everywhere.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-09-19 08:06:09 +02:00
Bjarki Arge Andreasen
9842594d79 doc: releases: 4.3: mention CONFIG_PM_DEVICE_RUNTIME_DEFAULT_ENABLE
Mention CONFIG_PM_DEVICE_RUNTIME_DEFAULT_ENABLE in 4.3 release notes.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-09-19 08:06:09 +02:00
Bjarki Arge Andreasen
7fe9043085 doc: services: pm: device_runtime: document DEFAULT_ENABLE option
Document the new CONFIG_PM_DEVICE_RUNTIME_DEFAULT_ENABLE option.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-09-19 08:06:09 +02:00
Bjarki Arge Andreasen
34c51c5ab4 pm: device: runtime: add PM_DEVICE_RUNTIME_DEFAULT_ENABLE
Many SoCs which use PM_DEVICE_RUNTIME need every device in the system
to have PM_DEVICE_RUNTIME enabled to function. Currently, this is only
possible by adding zephyr,pm-device-runtime-auto; to every node in
every devicetree which could potentially implement device power
management. This is very error prone since its easy to miss a node,
especially if users apply overlays, where users need to know and
remember to apply or reapply this property.

This commit adds a Kconfig, disabled by default, which automatically
treats every device as if it had the zephyr,pm-device-runtime-auto
property added to every node.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-09-19 08:06:09 +02:00
Sreeram Tatapudi
ed0fa4a0c4 MAINTAINERS: Adding a new file pattern for Infineon drivers
We are moving away from category based driver names. Updating the
"files:" patterns to include the newer drivers as well.

Signed-off-by: Sreeram Tatapudi <sreeram.praveen@infineon.com>
2025-09-18 19:10:35 -04:00
Declan Snyder
11d24034e0 boards: rt1180: fix lpspi with dma
Since this board is by default having hyperram as SRAM, need to set
NOCACHE_MEMORY when using dma to make sure the memory for the tcd pools
is not cached.

The previous approach to set zephyr,sram to dtcm just
caused an error because zephyr,dtcm was also set to dtcm, and the
default logic of the driver is put the tcdpools in dtcm, so what
happened was these buffer got linked over the rest of the app causing
massive failing of the image to work at all.

So instead of doing that we need to just keep running from hyperram but
set CONFIG_NOCACHE_MEMORY to have a place to put the tcd pools that wont
be cached.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-09-18 19:09:40 -04:00
Dipak Shetty
c85922f97c drivers: sensor: ti: tmp1075: fix one-shot conversion for shutdown mode
Add missing one-shot conversion logic in sample_fetch when driver is
configured for shutdown mode. Previously, the driver would attempt to
read temperature without triggering conversion, resulting in stale data.

Signed-off-by: Dipak Shetty <shetty.dipak@gmx.com>
2025-09-18 19:09:11 -04:00
Benjamin Cabé
91265f0eb6 boards: nrf52840_mdk_usb_dongle: disable pwmleds node
PWM leds for this board are not functional out-of-the-box as pwm0 needs
to be configured/enabled first. Disable the pwmleds node to reflect
this.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-18 19:08:54 -04:00
Arthur Gay
acf7657c45 drivers: sensor: lis2dh: Add self-test attribute
Add support for enabling and configuring the self-test mode of the
LIS2DH accelerometer through a dedicated sensor attribute.

Signed-off-by: Arthur Gay <arthur.gay@marshmallow.kids>
2025-09-18 19:08:32 -04:00
Dominik Kilian
0b237daa2d samples: ipc: static_vrings: Exclude unsupported platforms
List of allowed platforms for this sample was
changed in PR #85997. This enabled more
platforms including those that are not needed.
This commit excludes nrf5340/cpuapp_ns and
nrf5340/cpunet platforms since they are not
supported by this sample.

Signed-off-by: Dominik Kilian <Dominik.Kilian@nordicsemi.no>
2025-09-18 19:08:18 -04:00
Albort Xue
7b561f7605 drivers: flash: flash_mcux_flexspi_nor: Adjust bit field check sequence.
Adjust the bit field check sequence for "en4b" to support some flash
devices that offer multiple mechanisms for entering 4-byte address
mode.

Signed-off-by: Albort Xue <yao.xue@nxp.com>
2025-09-18 13:51:28 -04:00
Alvis Sun
2a6bb840ed maintainers: add npck boards to Nuvoton NPCX platforms
As title.

Signed-off-by: Alvis Sun <yfsun@nuvoton.com>
2025-09-18 13:51:16 -04:00
Benjamin Cabé
81760b7172 boards: infineon: xmc4x_relax_kit: pwmleds should be disabled initially
The pwmleds node for `xmc45_relax_kit` and `xmc47_relax_kit` should be
disabled initially due to the PWM controller the pwmleds node use not
being enabled by default.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-18 13:51:04 -04:00
Robert Lubos
77c348a9de doc: release-notes-4.3: Mention the backlog support for listen()
Add a note that the backlog parameter of the listen() function is now
respected and the backlog support has been implemented for the TCP
server.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-09-18 13:50:46 -04:00
Robert Lubos
388f7fcbbc tests: net: socket: tcp: Add tests for listen backlog
Add test cases verifying that the backlog feature of the TCP server
works as expected.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-09-18 13:50:46 -04:00
Robert Lubos
13a228381b net: tcp: Remove duplicate headers and function declarations
TCP somehow ended up with two internal headers with duplicate set of
internal function declarations. As tcp.h looks like a subset of the
tcp_internal.h header, combine the two headers into a single
tcp_internal.h and remove tcp.h. There were some differences in doxygen
API descriptions, so I've used the description that better described the
actual function purpose.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-09-18 13:50:46 -04:00
Robert Lubos
3d85e8f0ac net: tcp: Implement TCP connection backlog
Implement TCP connection backlog for TCP server. The backlog parameter
is already specified by the listen() socket API, however it was never
implemented in Zephyr. It can be useful to limit the number of incoming
connections on the server side, and thus limit the connection flood and
resource shortage.

The backlog is implemented as a atomic counter inside the TCP context.
The counter is initialized on the listen() call (and thus no connection
can be accepted before listen() is called), and then decremented
whenever new connection is initiated. When the application accepts
the incoming connection, it should call the net_tcp_conn_accepted()
API (done automatically for sockets) to inform the TCP layer that the
backlog can be incremented. The backlog value is also incremented back
if the connection is released before the connection was passed to the
application.

For tracking the parent (listening) socket, the 'accepted_conn' pointer
on the client context has been reused. Note, that the pointer used to be
cleared before the accept_cb() call before, to prevent consecutive calls
to the callback, however this was not really needed - the TCP state is
changed anyway, and the accept_cb() is only used in TCP_SYN_RECEIVED
state. The pointer is no cleared when the application accepts the
connection (or the client or the associated parent context is closed).

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-09-18 13:50:46 -04:00
Jamie McCrae
8498c39e13 drivers: Fix some Kconfig bleeds
Fixes instances of Kconfig options appearing for completely
irrelevant builds

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-09-18 13:50:33 -04:00
The Nguyen
d6926cd676 dts: doc: add binding type for CRC device driver
Add CRC binding type for supported device doc generator

Signed-off-by: The Nguyen <the.nguyen.yf@renesas.com>
2025-09-18 13:50:24 -04:00
Marcel Wappler
9401406e6a net: lwm2m: finalize CBOR output on -ENOMEM instead of aborting
When encoding cached LwM2M 1.1 resources into SenML CBOR, the encoder
currently aborts with -ENOMEM if the number of records (minus
some CBOR delimiter elements) exceeds CONFIG_LWM2M_RW_SENML_CBOR_RECORDS.
This discards all serialized data and prevents any payload from
being sent, leaving the client stuck and caches filling up.

This patch changes the behavior: if some records were already
serialized before the buffer shortage, the CBOR output is finalized
(end marker added) and the partial payload is returned. This allows
the client to send useful data, and the upper layers can react by
reducing batch size.

Impact:
- Preserves forward progress instead of canceling the message
- Avoids cache lock-up
- No changes to the API or success path behavior

Signed-off-by: Marcel Wappler <marcel.wappler@decentlab.com>
2025-09-18 13:50:13 -04:00
Cherniaev Andrei
fceca3b268 doc: Kconfiglib development has moved
Details https://github.com/ulfalizer/Kconfiglib/issues/139

Signed-off-by: Cherniaev Andrei <dungeonlords789@naver.com>
2025-09-18 13:49:22 -04:00
Yongxu Wang
4121adff1c pm: introduce pm_cpu_shell interface
Introduce a shell for specific cpu core about PM control,
this aligns with existing design flow where the policy decides
the state based on next event timing, locks and latency constraints,
and the system naturally enters low power through the idle thread.

New shell commands under `cpu`:
  -  cpu states			: List supported CPU power states (from devicetree)
  -  cpu available		: For each state/substate, show if available
  -  cpu lock			: Lock specific low power mode
  -  cpu unlock			: Unlock specific low power mode
  -  cpu idle ms		: Sleep the current thread to let idle run PM

Signed-off-by: Yongxu Wang <yongxu.wang@nxp.com>
2025-09-18 13:48:30 -04:00
Yongxu Wang
8767cec875 pm: states: add enum-string conversion helpers
Add two helper functions to convert power management states between
enum and string:

- pm_state_to_string()
- pm_state_from_string()

Signed-off-by: Yongxu Wang <yongxu.wang@nxp.com>
2025-09-18 13:48:30 -04:00
Qiang Zhao
77f035ebe7 soc: imx93 m33: enable CPU_CORTEX_M_HAS_DWT
enable CPU_CORTEX_M_HAS_DWT for imx93 core m33

Signed-off-by: Qiang Zhao <qiang.zhao@nxp.com>
2025-09-18 13:48:15 -04:00
Qiang Zhao
80a145d4ed tests: drivers: adc: add imx93_evk support for adc_api case
Add necessary configuration for sar_adc1 on imx93 core cm33
There are some issues with USERSPACE, so add an overlay to
disable CONFIG_TEST_USERSPACE, will drop it once it works.

Signed-off-by: Qiang Zhao <qiang.zhao@nxp.com>
2025-09-18 13:48:15 -04:00
Qiang Zhao
96c2b83249 dts: arm: nxp_imx93_m33: add ADC node
Add ADC node on imx93 core m33

Signed-off-by: Qiang Zhao <qiang.zhao@nxp.com>
2025-09-18 13:48:15 -04:00
Qiang Zhao
b4f043d182 drivers: clock_control_mcux_ccm_rev2: add SAR_ADC clock support
Added SAR_ADC clock support for clock_control_mcux_ccm_rev2

Signed-off-by: Qiang Zhao <qiang.zhao@nxp.com>
2025-09-18 13:48:15 -04:00
Qiang Zhao
1e890b2d68 drivers: adc: add support sar adc driver
Add driver for the SAR ADC

Signed-off-by: Qiang Zhao <qiang.zhao@nxp.com>
2025-09-18 13:48:15 -04:00
Julien Panis
c625853b19 drivers: serial: cc23x0: Add power management
Add PM support to cc23x0 UART module.

Signed-off-by: Julien Panis <jpanis@baylibre.com>
2025-09-18 13:47:56 -04:00
Steffen Schulz
4ae52ca220 drivers: sensors: add a sensor driver for INA7xx
Add a sensor driver for the TI current sensor.
INA700, INA745, INA780

Signed-off-by: Steffen Schulz <steffenschulz@gmx.de>
2025-09-18 13:41:50 -04:00
Josuah Demangeon
ccaaaabba2 drivers: video: stm32_dcmi: add missing capability property
In the DCMI video driver, set the caps.min_vbuf_count field to
indicate that two buffers are needed. Fix use of un-initialized
memory breaking the samples in some situations.

Signed-off-by: Josuah Demangeon <me@josuah.net>
2025-09-18 15:44:27 +01:00
cyliang tw
852a57705f boards: nuvoton: numaker_pfm_m467: Guide VS Code pack
Introduce Nuvoton NuMicro Cortex-M Pack of Visual Studio Code.

Signed-off-by: cyliang tw <cyliang@nuvoton.com>
2025-09-18 15:44:11 +01:00
Ayush Singh
f745493cdf boards: beagle: pocketbeagle_2: a53: Add GPIO pinmux
- Add pinmux for all header pins that support GPIO functionality.
- Ball name is included in case one header supports the same
  functionality on multiple balls.

Signed-off-by: Ayush Singh <ayush@beagleboard.org>
2025-09-18 15:43:54 +01:00
Karol Lasończyk
afff286f74 drivers: audio: Fix nrfx_pdm compilation
Fixes drv_data structure handling in various configuration.

Signed-off-by: Karol Lasończyk <karol.lasonczyk@nordicsemi.no>
2025-09-18 15:43:49 +01:00
Ravi Dondaputi
86a1af1350 snippets: wifi-enterprise: Enable runtime certificates
Enable `RUNTIME_CERTIFICATES` for all nRF builds which use
wifi-enterprise snippet.

Signed-off-by: Ravi Dondaputi <ravi.dondaputi@nordicsemi.no>
2025-09-18 15:43:33 +01:00
Ayush Singh
5ed7d8b00b dts: vendor: ti: k3-am62-main: Add GPIOs
- Move main domain GPIOs to k3-am62-main.

Signed-off-by: Ayush Singh <ayush@beagleboard.org>
2025-09-18 15:43:20 +01:00
Ayush Singh
33f7ea00f5 dts: vendor: ti: k3-am62-main: Add I2C nodes
- Move main domain I2Cs to the common file from ti_am62x_a53.dtsi

Signed-off-by: Ayush Singh <ayush@beagleboard.org>
2025-09-18 15:43:20 +01:00
Ayush Singh
22e46e0141 dts: arm64: ti: am62x_a53: Use common k3-am62-main.dtsi
- Replace the UARTs with the ones defined in k3-am62-main.dtsi.
- Also ends up adding main prefix to the uarts.
- Adjust the board dts to use the new names.
- Since the same file is also used by m4 cores, do not add interrupt
  properties, since they are different between m4 and a53

Signed-off-by: Ayush Singh <ayush@beagleboard.org>
2025-09-18 15:43:20 +01:00
Aksel Skauge Mellbye
62ddd58775 boards: silabs: Add bgm220_ek4314a board
Add BGM220 Explorer Kit. The board has a BGM220P module, button and
LED as well as mikroBUS and Qwiic expansion connectors.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-09-18 15:43:02 +01:00
Aksel Skauge Mellbye
2a26c20693 soc: silabs: Add BGM220P modules
Add support for BGM220P modules. Enable oscillators in SoC DTS
since the necessary crystals are present in the modules.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-09-18 15:43:02 +01:00
Aksel Skauge Mellbye
963454ac46 soc: silabs: xg22: Add missing EUART0 peripheral
Add missing EUART0 peripheral to devicetree for xg22.
Fix NUM_IRQS, there are 64 external interrupts on xg22.
Remove `select` of UART_INTERRUPT_DRIVEN at SoC level, this doesn't
belong here, since it prevents disabling the UART. This should be a
board or application level decision.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-09-18 15:43:02 +01:00
Aksel Skauge Mellbye
e2b3cb495d tests: subsys: logging: Rename emulated uart in log_backend_uart
The emulated uart was named `euart0`, which collides with the name
of a physical uart on some Silicon Labs devices. Since the test
is not limited to run in simulation, rename the emulated uart
node to something less likely to collide with physical uart names.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-09-18 15:43:02 +01:00
Josuah Demangeon
a3b73ac1ca samples: drivers: video: capture: esp32s3_eye_procpu: BGR/RGB swap
Propagate #79996 where RGB_565 and BGR_565 interchange got fixed.
It is not necessary to enable the BGR_565 format for the ST7789V display
as RGB_565, the default, is correct.

Signed-off-by: Josuah Demangeon <me@josuah.net>
2025-09-18 15:42:52 +01:00
Josuah Demangeon
9d10bcc140 drivers: video: esp32_dvp: add missing capability property
In the ESP32 video driver, set the caps.min_vbuf_count field to
indicate that a two buffers are enough. Fix use of un-initialized
memory breaking the samples in some situations.

Signed-off-by: Josuah Demangeon <me@josuah.net>
2025-09-18 15:42:52 +01:00
Josuah Demangeon
2a0dc5046c samples: drivers: video: capture: esp32s3_eye: fix the buffer size
Increase the ESP32 S3 Eye board buffer size to fit the selected frame size
configured. This fixes a buffer allocation error preventing the sample
to run. Only use a single buffer which is enough to run it.

Signed-off-by: Josuah Demangeon <me@josuah.net>
2025-09-18 15:42:52 +01:00
Benjamin Cabé
635e7c7261 sca: add DT diagnostic tool
implemented as an SCA for now but might benefit from being baked into
the build system so that it's always available.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-18 15:42:42 +01:00
Cristian Bulacu
2177ca2006 samples: net: openthread: border_router: Update configuration
Update number of maximum multicast route entries to be compliant with
Thread conformance.

Signed-off-by: Cristian Bulacu <cristian.bulacu@nxp.com>
2025-09-18 15:42:30 +01:00
Cristian Bulacu
c953517245 net: l2: openthread: Implement packet forwarding rules.
Inject packets from AIL to Thread network and vice versa taking into
account packet forwarding security safeguards and multicast forwarding.

Signed-off-by: Cristian Bulacu <cristian.bulacu@nxp.com>
2025-09-18 15:42:30 +01:00
Cristian Bulacu
42b7d63212 net: ipv6: Add function to get multicast address scope.
Added helper function to get scope of an IPv6 address. Also added raw
variant which uses plain uint8_t buffer.

Signed-off-by: Cristian Bulacu <cristian.bulacu@nxp.com>
2025-09-18 15:42:30 +01:00
Henrik Brix Andersen
52efda972b ci: workflows: hello_world: multiplatform: invoke twister via west
Invoke twister via west instead of invoking it directly. This tests the
twister integration in west across host platforms.

Signed-off-by: Henrik Brix Andersen <henrik@brixandersen.dk>
2025-09-18 15:42:15 +01:00
Francois Ramu
9b513c837f west.yml: update the hal_stm32 modules with new stm32cube packages
stm32f4xx to Version 1.28.3
stm32f7xx to Version 1.17.4
stm32mp2xx to Version 1.2.0
stm32u0xx to Version 1.3.0
stm32u3xx to Version 1.2.0
stm32u5xx to Version 1.8.0
stm32wbxx to Version 1.23.0

Signed-off-by: Francois Ramu <francois.ramu@st.com>
2025-09-18 15:42:04 +01:00
Laurentiu Mihalcea
8eb26dca8b drivers: pwm: mcux_tpm: support MMU-based architectures
On MMU-based systems, the address space of the IP needs to be mapped
before it can be used, otherwise the system will fault. Furthermore,
since the HAL driver uses the base address of the IP to perform various
operations (e.g. clock ungating), the map between the physical and
virtual addresses needs to be 1:1.

Signed-off-by: Laurentiu Mihalcea <laurentiu.mihalcea@nxp.com>
2025-09-18 15:41:37 +01:00
Laurentiu Mihalcea
23c88316b8 drivers: clock: ccm_rev2: do custom handling of MX93's TPM clocks
As per the i.MX93 TRM, section "30.2 System Clocks", the root clock
of TPM3 is not TPM3_CLK_ROOT, but, rather, BUS_WAKEUP_CLK_ROOT. Therefore,
if clock_control_get_rate() is using the IMX_CCM_TPM3_CLK clock ID, the
root clock will have to be set to kCLOCK_Root_BusWakeup instead of
kCLOCK_Root_Tpm3.

Signed-off-by: Laurentiu Mihalcea <laurentiu.mihalcea@nxp.com>
2025-09-18 15:41:21 +01:00
Alain Volmat
385fe3b853 tests: display: display_check: add st_b_lcd40_dsi1_mb1166 shield
Addition of tests with the st_b_lcd40_dsi1_mb1166 shield.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-09-18 15:41:02 +01:00
Alain Volmat
e03f85bd07 samples: drivers: display: add stm32f769i_disco specific conf
Add stm32f769i_disco conf file in order to increase the amount of
HEAP to ensure k_malloc allocation goes well.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-09-18 15:41:02 +01:00
Alain Volmat
96002ddc9b shields: st_b_lcd40_dsi1_mb1166: add stm32f769i_disco support
Add overlay and conf file dedicated for the stm32f769i_disco.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-09-18 15:41:02 +01:00
Alain Volmat
e50c225756 boards: st: add DSI connector and display alias in stm32f769i_disco
Add the description of the DSI connector available on
the stm32f769i_disco board and zephyr_mipi_dsi/zephyr_lcd_controller
alias to be used by display shields.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-09-18 15:41:02 +01:00
Alain Volmat
aacc5f38a4 dts: arm: st: add mipi_dsi node in stm32f767.dtsi
Describe the DSI block available from STM32F767 and onward
and allow to output data generated by the LTDC to a DSI
panel.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-09-18 15:41:02 +01:00
Alain Volmat
7a487461ca display: stm32: ltdc: remove PLLSAI configuration
Now that PLLSAI can be configured via the device-tree, remove the
SOC specific PLLSAI configuration from the LTDC driver.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-09-18 15:41:02 +01:00
Alain Volmat
b17196cae3 boards: st: add pllsai for ltdc input on stm32f4/stm32f7 boards
Add the pllsai configuration for boards that enables the LTDC
and are relying on the LTDC driver to perform the PLLSAI
configuration. This will allow to remove the PLLSAI code from
the LTDC driver.

Impacted boards are:
  boards/st/stm32f429i_disc1/stm32f429i_disc1.dts
  boards/st/stm32f746g_disco/stm32f746g_disco.dts
  boards/st/stm32f7508_dk/stm32f7508_dk.dts

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-09-18 15:41:02 +01:00
Alain Volmat
1f0db9c21e dts: arm: st: f4: add pllsai entry for the stm32f4 series.
Not all STM32F4 embeds a PLLSAI hence this is added in
stm32f427.dtsi and stm32f446.dtsi.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-09-18 15:41:02 +01:00
Alain Volmat
61575185bf dts: arm: st: f7: add pllsai entry in stm32f7.dtsi
Add description of the pllsai PLL found on the stm32f7 series.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-09-18 15:41:02 +01:00
Alain Volmat
934aba7565 drivers: clock: stm32: use logical AND in preproc check
Replace bitwise AND (&) by logical AND (&&) within
preprocessor if statements in clock_stm32_ll_common.c

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-09-18 15:41:02 +01:00
Alain Volmat
63367b5cb4 drivers: clock: stm32: add PLLSAI handling (common/F4/F7)
Add code handling the pllsai. It is similar to the pllsai1
pllsai2 which can be found on some other socs, except, depending
on the socs the fact that pllsai source can be or not common with
other plls and moreover it can also have additional DIV_DIVQ
and DIV_DIVR additional dividers.
Choice is made to add PLLSAI instead of add further support to
PLLSAI1, in order to stick to the proper naming of the PLLs.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-09-18 15:41:02 +01:00
Alain Volmat
2668ecc905 dts: bindings: stm32_clocks: add bindings for PLLSAI of F4 and F7
Add description of the PLLSAI of the stm32fx

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-09-18 15:41:02 +01:00
Quy Tran
a4bdcc4c97 include: clock_control: Add define configurations for RX26T MCU
RX26T MCU uses a clock source marcos with different value
compared to the previous, this commit add new one

Signed-off-by: Quy Tran <quy.tran.pz@renesas.com>
2025-09-18 15:40:34 +01:00
Hau Ho
48decca1fc drivers: serial: Update serial driver to support RX26T
- Update serial driver for RX26T support. This MCU using grp interrupt
feature (not supported yet), so need to add some marcos to enable
support.
- Change the struct st_sci0 to use a common sci iodefine struct as
st_sci

Signed-off-by: Hau Ho <hau.ho.xc@bp.renesas.com>
Signed-off-by: Phi Tran <phi.tran.jg@bp.renesas.com>
2025-09-18 15:40:34 +01:00
Hau Ho
7193d5db47 boards: renesas: Initial support for MCB-RX26T board
Initial commit to support for MCB-RX26T board

Signed-off-by: Hau Ho <hau.ho.xc@bp.renesas.com>
2025-09-18 15:40:34 +01:00
Hau Ho
861f453bce dts: renesas: rx: Initial support dts SoC layer on RX26T.
This commit to initial support dts SoC layer on RX26T

Signed-off-by: Hau Ho <hau.ho.xc@bp.renesas.com>
2025-09-18 15:40:34 +01:00
Hau Ho
e45080bcd0 soc: renesas: rx: Initial support for RX26T SOC
This commit to initial support for RX26T SOC using Renesas RXv3 core.

Signed-off-by: Hau Ho <hau.ho.xc@bp.renesas.com>
2025-09-18 15:40:34 +01:00
Mahesh Mahadevan
ba358467a5 drivers: i3c_mcux: Update error handling
Enable the Error interrupt to capture errors and process
them accordingly.

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2025-09-18 09:48:24 +01:00
Mahesh Mahadevan
7d150533ff drivers: i3c: Update NXP drivers transfer function
Change the transfer implementation to use interrupts
instead of a busy wait loop.
Added a Kconfig to specify a timeout period to wait
for a transfer to complete.

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2025-09-18 09:48:24 +01:00
Valerio Setti
6f301ca94a doc: update documentation for AXP192/2101 changes
Migration guide is update to report the changes that has been introduced
in the AXP192/AXP2101 Kconfig symbols, i.e. removal of MFD_AXP192_AXP2101
in favor of MFD_AXP192 and MFD_AXP2101.

Release notes are also updated to notify about the new support for the
power button available on the AXP2101 device.

Signed-off-by: Valerio Setti <vsetti@baylibre.com>
2025-09-18 09:48:12 +01:00
Valerio Setti
102d17b49b boards: lilygo: twatch_s3: add support for axp2101 power button
This commit enables the support for the power button provided by axp2101.
The button generates press/release events for the INPUT_KEY_POWER key.

Signed-off-by: Valerio Setti <vsetti@baylibre.com>
2025-09-18 09:48:12 +01:00
Valerio Setti
97478d5fce drivers: mfd: axp2101: add irq and power button support
Add initial support for interrupt generated from the axp2101. For
the time being only support for power button is added but others can
be added in the future if necessary.

Signed-off-by: Valerio Setti <vsetti@baylibre.com>
2025-09-18 09:48:12 +01:00
Valerio Setti
71e28e267a drivers: mfd: split axp192 and axp2101 drivers
The previous axp192 driver was implementing some basic support for
axp2101, but in fact most of the source code was guarded to be
compiled in only when axp192 was used and only the chip-id was read
in case of axp2101.
Next commits are going to introduce some support for the power button
found on the axp2101 device, so it would look cleaner to split the
2 drivers.

Signed-off-by: Valerio Setti <vsetti@baylibre.com>
2025-09-18 09:48:12 +01:00
Mike J. Chen
f115e9f100 drivers: spi_mcux_flexcomm: fix calls to pm_policy_device_power_lock_put()
Some error cases, and the asynchronous dma case, were not calling
pm_policy_device_power_lock_put() at the right time.

Signed-off-by: Mike J. Chen <mjchen@google.com>
2025-09-18 09:47:55 +01:00
Mike J. Chen
addf568d3e drivers: spi_mcux_flexcomm: remove DMA block complete callbacks
For every TX, the driver used to get both callbacks when
each block was trasnfered and when the entire DMA was complete.
The callback for each block isn't needed so remove it
and reduce intermediate interrupts (the more blocks in
the DMA link, the more needless intermediate interrupts we
now no longer get).

Signed-off-by: Mike J. Chen <mjchen@google.com>
2025-09-18 09:47:55 +01:00
Mathieu CHOPLAIN
3ae98de48e drivers: usb: udc: stm32: handle endpoint halt properly
Handle endpoints in halted state properly by marking endpoints as halted
when appropriate, and inhibiting transfers involving halted endpoints.

Co-authored-by: IBEN EL HADJ MESSAOUD Marwa <marwa.ibenelhadjmessaoud-ext@st.com>
Signed-off-by: Mathieu CHOPLAIN <mathieu.choplain-ext@st.com>
2025-09-18 09:47:36 +01:00
The Nguyen
ac799750e6 boards: renesas: disable unused button on ek_ra8p1
Set the button to disabled by default if not in use on each
ek_ra8p1 cluster

Signed-off-by: The Nguyen <the.nguyen.yf@renesas.com>
2025-09-18 09:47:06 +01:00
Martin Hoff
4c2bc42f7b drivers: serial: silabs: Change poll_out function to blocking mode
Since the UART API explicitly states that the poll_out function needs
to block until the character is sent, change the mechanism and add
a busy-wait loop to ensure transmission completion before proceeding.

Signed-off-by: Martin Hoff <martin.hoff@silabs.com>
2025-09-18 09:46:49 +01:00
Martin Hoff
c37ffd396b drivers: serial: silabs: Update ISR to check for DMA device presence
Since the symbol CONFIG_UART_ASYNC_API is shared between EUSART and USART
drivers, it creates a scenario where EUSART can have
CONFIG_UART_SILABS_USART_ASYNC=y but with no DMA device declared for it
in the DTS (because we only want async API for the USART driver).
We handled this case by disabling async transfer when the DMA
device is null, but when we activate CONFIG_PM, we have a hard fault due
to null pointer dereference in the ISR.
This bug was only discovered today when trying to enable CONFIG_PM over the
uart_async_api test, which led to a hard fault in the ISR. This occurs
because we only enable interrupts when the PM is enabled in the "poll_out"
function to put the PM lock back.

Signed-off-by: Martin Hoff <martin.hoff@silabs.com>
2025-09-18 09:46:49 +01:00
Mohamed Moawad
ccfe64627e kernel: events: add conditional guards for timeout operations
Add conditional compilation guards around timeout operations in
kernel/events.c to ensure compatibility with timer-less configurations.

Signed-off-by: Mohamed Moawad <moawad@synopsys.com>
2025-09-18 09:46:29 +01:00
Thomas Decker
9380f20b85 dts: bindings: serial: st,stm32-uart: Fix description of dts property
Fix dts property description of de-deassert-time for stm32-uart driver.
Old text was copy'n'pasted from de-assert-time.

Signed-off-by: Thomas Decker <decker@jb-lighting.de>
2025-09-18 09:46:11 +01:00
Luca Burelli
00479a45f8 tests/cmake/snippets: (trivial) fix Kconfig descriptions
Trivial fix to the Kconfig descriptions in the cmake snippet tests so
that they match the actual snippet names.

Signed-off-by: Luca Burelli <l.burelli@arduino.cc>
2025-09-18 09:46:00 +01:00
Ayush Singh
5d4a116c44 boards: pocketbeagle_2: a53: Use RAM from 0x80200000
First 2MiB is reserved for Arm Trusted Firmware-A according the TI docs
[0].

An update bb-zephyr-image [1] provides a custom boot script for u-boot
which allows the old instructions to work (as opposed to having to load
and execute the binary manually).

Tested using tests/arch/arm64/arm64_smc_call.

[0]: https://software-dl.ti.com/mcu-plus-sdk/esd/AM62X/latest/exports/docs/api_guide_am62x/MEMORY_MAP.html
[1]:https://github.com/beagleboard/bb-zephyr-images

Signed-off-by: Ayush Singh <ayush@beagleboard.org>
2025-09-17 19:12:57 -04:00
CHEN Xing
e761db3166 boards: microchip: sam: add sdmmc device for sama7g5
Add sdmmc0 sdmmc1 for sama7g5-ek

Signed-off-by: CHEN Xing <xing.chen@microchip.com>
2025-09-17 19:12:45 -04:00
CHEN Xing
3a6ae2b01c driver: sdhc: add sdmmc for sama7g5
Add driver for sama7g54 Secure Digital MultiMedia Card Controller

Signed-off-by: CHEN Xing <xing.chen@microchip.com>
2025-09-17 19:12:45 -04:00
CHEN Xing
b850f1b94f soc: microchip: sam: update for sama7g5 sdmmc
Update MMU and GCLK configurations for sdmmc.

Signed-off-by: CHEN Xing <xing.chen@microchip.com>
2025-09-17 19:12:45 -04:00
CHEN Xing
d04ae0f11c dts: arm: microchip: sam: add sdmmc device to sama7g5
Add sdmmc0, sdmmc1 device to sama7g5

Signed-off-by: CHEN Xing <xing.chen@microchip.com>
2025-09-17 19:12:45 -04:00
Jonathan Nilsen
6b93eacb6c soc: nordic: uicr: print cmake warning when used without sysbuild
Because generation and programming of UICR + PERIPHCONF artifacts
depend on the 'uicr' image which in turn must be included by Sysbuild,
many if not most nrf54h20 applications will need to be built using
Sysbuild to function as intended.

To make this known to the user, print a CMake warning whenever
CONFIG_NRF_PERIPHCONF_SECTION=y but Sysbuild is not being used.

Signed-off-by: Jonathan Nilsen <jonathan.nilsen@nordicsemi.no>
2025-09-17 19:12:36 -04:00
Jonathan Nilsen
1cb9408f19 soc: nordic: nrf54h: generate PERIPHCONF entries based on devicetree
Add build system support for populating the PERIPHCONF
(global domain peripheral configuration), based on nodes and properties
found in the devicetree. This should make it so all samples and tests
that were broken by the move to IronSide SE now function correctly
without workarounds or manual steps.

When enabled, a new python script called gen_periphconf_entries.py is
run when building. The script iterates over nodes and properties in the
devicetree and generates a C file called periphconf_entries_generated.c
in the build directory, which is added as a source file. The C file
uses the macros from uicr.h to configure the global domain according
to the devicetree.

The PERIPHCONF entry generation is enabled by default when building
for nrf54h20dk/nrf54h20/cpuapp and nrf54h20dk/nrf54h20/cpurad.
It will also be used on nrf9280 soon, therefore it is placed
in the common uicr directory.

This new feature does the same job as nrf-regtool did when building
for nrf54h20 before, and is compatible by the bindings that were used
by nrf-regtool.

Signed-off-by: Jonathan Nilsen <jonathan.nilsen@nordicsemi.no>
2025-09-17 19:12:36 -04:00
Jukka Rissanen
221aca4bb9 net: if: Fix assert when checking lladdr existence
As the linkaddr->addr is no longer a pointer, the original
assert check is not working as it should. So use the length
of the linkaddr to verify that it is > 0.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-09-17 19:10:31 -04:00
Jukka Rissanen
1222383d12 tests: net: mgmt: Dummy interface link addr is max 6 bytes long
The max length of the dummy network interface is 6 bytes so
fix that and make sure we check the return address properly
when setting the link address.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-09-17 19:10:31 -04:00
Pieter De Gendt
58b28eec83 include: zephyr: net: coap: Fix doxygen for coap_packet.user_data
Fix the expansion guard for __DOXYGEN__ and improve the Kconfig dependency
reference.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-09-17 19:10:20 -04:00
Aaron Massey
b8576db6bc MAINTAINERS: Add fuel-gauge DBS06 maintainer
DBS06 has been consistently contributing and reviewing fuel gauge
changes. Given how much additional support they have added we should add
them as a maintainer.

Signed-off-by: Aaron Massey <aaronmassey@google.com>
2025-09-17 19:01:58 +02:00
Benjamin Cabé
299bd82e7c MAINTAINERS: add more utils unit tests to Utilities area
adds hex and winstream tests to Utilities area

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-17 19:01:51 +02:00
Benjamin Cabé
c285527a8f MAINTAINERS: add nanopb documentation to nanopb area
adds doc/services/serialization/nanopb.rst to nanopb area

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-17 19:01:51 +02:00
Benjamin Cabé
a49573b955 MAINTAINERS: add bindesc documentation to bindesc area
adds doc/services/binary_descriptors/index.rst to bindesc area

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-17 19:01:51 +02:00
Benjamin Cabé
64fb8ef1c6 MAINTAINERS: add video dt-bindings headers to the area
add include/zephyr/dt-bindings/video under Video area

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-17 19:01:51 +02:00
Benjamin Cabé
88a5563f6f MAINTAINERS: add MFD dt-bindings headers to the area
add include/zephyr/dt-bindings/mfd under MFD area

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-17 19:01:51 +02:00
Benjamin Cabé
33402ff387 MAINTAINERS: add comparator dt-bindings headers to the area
add include/zephyr/dt-bindings/comparator under comparator area

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-17 19:01:51 +02:00
Benjamin Cabé
71d1fd8140 MAINTAINERS: add all memc headers to MEMC area
Vendor specific memc headers fall under MEMC area

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-17 19:01:51 +02:00
Benjamin Cabé
4fcb42c531 MAINTAINERS: add all Haptics headers to Haptics area
Vendor specific haptics headers fall under Haptics area

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-17 19:01:51 +02:00
Benjamin Cabé
9ab0d09ecf MAINTAINERS: add all DAC headers to DAC area
Vendor specific DAC headers fall under DAC area

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-17 19:01:51 +02:00
Benjamin Cabé
e0905cf945 MAINTAINERS: hal_ambiq is maintained
Align hal_ambiq maintainership with that of the platform.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-17 19:01:51 +02:00
Benjamin Cabé
f73970bb56 MAINTAINERS: add file glob for cmsis_6
Add modules/cmsis_6 to the list of files under CMSIS_6.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-17 19:01:51 +02:00
Benjamin Cabé
a0dca5ea5e MAINTAINERS: add file glob for hal_afbr
Add modules/hal_afbr to the list of files under hal_afbr.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-17 19:01:51 +02:00
Emilio Benavente
d7857b0771 boards: nxp: mimxrt1170: Remove SYSBUILD in board.cmake
Removed the dependency of config sysbuild from
the mimxrt1170_evk board.cmake.

Signed-off-by: Emilio Benavente <emilio.benavente@nxp.com>
2025-09-17 19:01:46 +02:00
Guennadi Liakhovetski
c6b6c62c21 arch: xtensa: (cosmetic) simplify function prototypes
Several static functions in ptables.c always return 0, make them void
to improve readability.

Signed-off-by: Guennadi Liakhovetski <guennadi.liakhovetski@linux.intel.com>
2025-09-17 19:01:35 +02:00
Aksel Skauge Mellbye
acbb894410 boards: silabs: slwrb4180a/b: Enable BLE
Enable Bluetooth on xg21 radio boards. Update hal_silabs to
include binary blob for Bluetooth on xg21.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-09-17 19:01:10 +02:00
Aksel Skauge Mellbye
0fa7aed3bf dts: arm: silabs: xg21: Add missing nodes
Add missing peripheral and clock nodes for xg21.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-09-17 19:01:10 +02:00
Aksel Skauge Mellbye
7d5580dc24 dts: arm: silabs: xg21: Reformat dtsi files
Reformat devicetree files:

* Sort nodes by unit address or name
* Sort properties by category and name

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-09-17 19:01:10 +02:00
Firas Sammoura
a1a47e21d9 util: Add MAX_FROM_LIST macro to find the maximum of variable arguments
This change introduces a set of C preprocessor macros to determine the
maximum value from a list of 1 to 10 arguments.

The main macro `MAX_FROM_LIST(...)` dispatches to specialized `MAX_N`
macros (where N is from 1 to 10) based on the number of arguments
provided. This is achieved using a common variadic macro technique
involving a helper macro `GET_MAX_MACRO` to count the arguments and
select the appropriate implementation.

The `MAX_N` macros are defined recursively using the ternary operator
`?:` to perform comparisons.

This provides a compile-time mechanism to find the maximum value within
a small set of numbers.

Signed-off-by: Firas Sammoura <fsammoura@google.com>
2025-09-17 19:01:03 +02:00
Benjamin Cabé
6221251254 include: mgmt: mcumgr: fix few incorrect doxygen comments in os_mgmt.h
A few documentation comments in os_mgmt.h were not using the proper
"javadoc-style" comments.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-17 16:37:57 +02:00
Cristian Bulacu
477c7624c0 samples: net: openthread: border_router: Update configuration
New OpenThread functionalities have been enabled. Updated specific nxp-
rcp-host-wifi configuration file.

Signed-off-by: Cristian Bulacu <cristian.bulacu@nxp.com>
2025-09-17 16:37:49 +02:00
Cristian Bulacu
16c8a16952 modules: openthread: Add new Border Router functionalities.
This commit brings new platform files:
	-`border_agent`
	-`udp`
	-`mdns_socket`
	-'trel'
This commit also makes use of existing Openthread task to
process border router messages.

Signed-off-by: Cristian Bulacu <cristian.bulacu@nxp.com>
2025-09-17 16:37:49 +02:00
Cristian Bulacu
2928670381 net: l2: openthread: Parse Border Router messages in correct context.
This commit adds a work item designated for Border Router message
parsing. A generic message structure has been proposed.

If CONFIG_NET_IPV4 is enabled, border router services will start only
after an IPV4 address has been assigned on the backbone interface.
If border router is initialized before DHCPV4 client has been assigned
an address, initial mDNS IPV4 packets will be dropped, because a source
address cannot be retrieved from that specific backbone interface.

Signed-off-by: Cristian Bulacu <cristian.bulacu@nxp.com>
2025-09-17 16:37:49 +02:00
Adam BERLINGER
cd0c3a3033 drivers: i3c: stm32: Allow I3C clock selection
This allows to use different I3C clocks from bus clock.
E.g. I3C can run from HSI instead of bus clocks.

Signed-off-by: Adam BERLINGER <adam.berlinger@st.com>
2025-09-17 16:35:00 +02:00
Adam BERLINGER
e52cf67aa6 drivers: i3c: stm32: Remove STM32_I3C_IRQ_HANDLER_FUNCTION macro
Old code looks like there is relation between .pclken and
IRQ handler. This change should make it more readable.

Signed-off-by: Adam BERLINGER <adam.berlinger@st.com>
2025-09-17 16:35:00 +02:00
Michael Zimmermann
5bba1edb6e mqtt_sn: process_ping: fix infinite loop
When next_ping == now, the code scheduled the workqueue for the current
time. On native_sim, this meant that the system workqueue thread was stuck
in an infinite loop because it kept processing the MQTT work over and over
again and the current timestamp could not advance anymore.

I didn't investigate why the yield inside the workqueue didn't help or why
native_sim can't advance time when one of the threads is stuck, but
changing the condition to >= inside mqtt_sn solves this issue.

I discovered this while running zephyr.exe through strace for up to 60
minutes. I guess that the performance overhead makes it more likely for the
workqueue handler to be run while next_ping == now, but I didn't verify
that, because it takes a long time to trigger the bug.

Signed-off-by: Michael Zimmermann <michael.zimmermann@sevenlab.de>
2025-09-17 16:32:49 +02:00
Khaoula Bidani
e803a10b91 drivers: gpio: stm32: Fix gpio_pin_get_config
This commit updates the function to only set output-related flags
(GPIO_OUTPUT_INIT_HIGH, GPIO_OUTPUT_INIT_LOW) when the pin
is actually configured as output. For input pins, only GPIO_INPUT and
other relevant flags are set.

Signed-off-by: Khaoula Bidani <khaoula.bidani-ext@st.com>
2025-09-17 16:32:39 +02:00
Benjamin Cabé
cb65ff9fc6 ci: workflows: codecov: run codecov workflow on push
Code coverage is currently executed and uploaded to codecov twice a day.
Now that "twister on push" also uploads stuff (test results) to codecov,
it is preferrable to have each push commit known to codecov to have both
tests and coverage results, since otherwise the "compare" feature that
allows to see the delta between two commits might not work as expected.

We do an average of ~4 merge batches per day so overhead is pretty
minimal.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-17 16:32:27 +02:00
Yassine El Aissaoui
0c9a8c6813 soc: nxp: mcxw: Fix MCXW71 BLE warning during init
SOC_MCXW716C is using a different ACL_TX_COUNT compared
to SOC_MCXW727C

Signed-off-by: Yassine El Aissaoui <yassine.elaissaoui@nxp.com>
2025-09-17 14:54:39 +02:00
Erwan Gouriou
e4dcd5d10c soc: st: stm32n6: Provide static mpu regions for !XIP
In !XIP case, provide RAM_RO and RAM_RW regions with their
respective MPU configurations.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
Co-authored-by: Sudan Landge <sudan.landge@arm.com>
2025-09-17 14:54:28 +02:00
Erwan Gouriou
8e6b779dc7 include: arch: arm: cortex_m: Provide __rom_region_size linker symbol
__rom_region_size linker symbol is available for other archs, but was
missing for Cortex-M. Add it now.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2025-09-17 14:54:28 +02:00
Erwan Gouriou
d734c3768a soc: stm32n6: Compute FLASH_SIZE when XIP=y
In XIP, we need to know FLASH_SIZE.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2025-09-17 14:54:28 +02:00
Erwan Gouriou
9e46716d09 soc: stm32: stm32n6: Define MPU_GAP_FILLING also with USERSPACE
MCU_GAP_FILLING is advised on ARMv8 based platforms to prevent from
against attacks that attempt to execute malicious code from SRAM.
It is enabled by default when USERSPACE is disabled, enable it
also when enabled.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2025-09-17 14:54:28 +02:00
Hieu Nguyen
e80c43af0b samples: drivers: counter: Add Counter support for Renesas RZ/T2M, N2L
Add Counter sample support for Renesas RZ/T2M-RSK, RZ/N2L-RSK

Signed-off-by: Hieu Nguyen <hieu.nguyen.ym@bp.renesas.com>
Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
2025-09-17 14:53:20 +02:00
Hieu Nguyen
f540c50975 tests: drivers: counter: Add Counter support for Renesas RZ/T2M, N2L
Add Counter test support for Renesas RZ/T2M-RSK, RZ/N2L-RSK

Signed-off-by: Hieu Nguyen <hieu.nguyen.ym@bp.renesas.com>
Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
2025-09-17 14:53:20 +02:00
Hieu Nguyen
f724a90db6 boards: renesas: Add Counter support for Renesas RZ/T2M, N2L
Add Counter support for board Renesas RZ/T2M, N2L

Signed-off-by: Hieu Nguyen <hieu.nguyen.ym@bp.renesas.com>
Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
2025-09-17 14:53:20 +02:00
Hieu Nguyen
37759c2147 dts: renesas: Add Counter support for Renesas RZ/T2M, N2L
Add CMTW nodes to Renesas RZ/T2M, N2L

Signed-off-by: Hieu Nguyen <hieu.nguyen.ym@bp.renesas.com>
Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
2025-09-17 14:53:20 +02:00
Hieu Nguyen
048d7ed22f drivers: counter: Add Counter support for Renesas RZ/T2M, N2L
Add Counter driver support for Renesas RZ/T2M, N2L

Signed-off-by: Hieu Nguyen <hieu.nguyen.ym@bp.renesas.com>
Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
2025-09-17 14:53:20 +02:00
Benjamin Cabé
142f6af4c3 doc: conf.py: fix pdf build
An earlier fix (0871c7e) meant to remove warnings due to index and
index-tex defining overlapping table of contents actually broke the PDF
build. Fix it by making sure index-tex is set as root_doc when building
for LaTeX/PDF.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-17 14:52:58 +02:00
Andrej Butok
65d7c7c598 dts: nxp: Use DT_SIZE_M/K() for size
Use DT_SIZE_M() and DT_SIZE_K() for DTS size property
for better readability.

Signed-off-by: Andrej Butok <andrey.butok@nxp.com>
2025-09-17 11:17:51 +01:00
Andrej Butok
cd1b6c37f2 dts: nxp: Use DT_FREQ_M/K() for frequency
- Use DT_FREQ_M() and DT_FREQ_K() for DTS frequency property
for better readability.
- Include freq.h in dts to use DT_FREQ_M/K()

Signed-off-by: Andrej Butok <andrey.butok@nxp.com>
2025-09-17 11:17:51 +01:00
Piotr Kosycarz
55675e861a samples: sysbuild: hello_world: verify output from both uarts
Beside main core, check output from remote core console.
Checking second console will work only for nordic boards
(as the pattern to get second uart interface is known).
For other boards (with different interface naming),
the test will check only provided console,
which is the same behavior as harness:console.

Signed-off-by: Piotr Kosycarz <piotr.kosycarz@nordicsemi.no>
2025-09-17 11:16:40 +01:00
Devin Jaenicke
ba42b5db21 drivers: serial: silabs: fix to allow euart to function on bgm220s
The efr32xg22 series does not support the same async operations as other
efr32 series chips. This change allows the eusart driver to function.

Signed-off-by: Devin Jaenicke <devinjaenicke@glassboard.com>
2025-09-17 11:16:17 +01:00
Devin Jaenicke
d2600ba839 soc: silabs: Add support for bgm220sc22hna2 module
This commit adds support for the Silicon Labs BGM220SC22HNA2 SoC.

Signed-off-by: Devin Jaenicke <devinjaenicke@glassboard.com>
2025-09-17 11:16:17 +01:00
Swift Tian
bf5a0a7c62 samples: mspi: update log print for CI
Use app level log instead of INF log from module to avoid complex regex.

Signed-off-by: Swift Tian <swift.tian@ambiq.com>
2025-09-17 11:16:09 +01:00
Swift Tian
4d977f0de6 samples: drivers: memc: update memc example yaml for CI twister
Add another mspi section and filter by psram0 dt alias.

Signed-off-by: Swift Tian <swift.tian@ambiq.com>
2025-09-17 11:16:09 +01:00
Swift Tian
4432b6d0b0 drivers: flash: mspi: fix compile warning in is25 driver
Fix warning when no cache handling enabled.

Signed-off-by: Swift Tian <swift.tian@ambiq.com>
2025-09-17 11:16:09 +01:00
Swift Tian
619b2d2ec6 drivers: mspi: optimize ambiq mspi controller
With CONFIG_LOG=n and MSPI controller on, unused variable warning
is elimiated.
Now able to be used without CONFIG_PM_DEVICE.
Fixed a bug where dev_id may be null with pm device runtime auto.

Signed-off-by: Swift Tian <swift.tian@ambiq.com>
2025-09-17 11:16:09 +01:00
Mark Wang
70c965d33d bluetooth: l2cap: accept the default flush timeout (0xFFFF) in conf_rsp
Some headsets reply conf_rsp with flush timeout (0xFFFF) even conf_req
don't configure the flush timeout, stack should accept it.

Signed-off-by: Mark Wang <yichang.wang@nxp.com>
2025-09-17 11:16:03 +01:00
Mark Wang
811c5eb64b bluetooth: l2cap: support the classic l2cap rx flush timeout
add one Kconfig `BT_L2CAP_RX_FLUSH_TO` to configure the minimum L2CAP RX
flush timeout accepted during processing peer's l2cap flush timeout
configuration.

Signed-off-by: Mark Wang <yichang.wang@nxp.com>
2025-09-17 11:16:03 +01:00
Khaoula Bidani
1d6b6759aa drivers: i2c: stm32: Fix STM32 I2C hang on read
ensure LL_I2C_TransmitData8() is always called when
TXIS is set, even if read_processed() returns an error.
This prevents the peripheral from clock-stretching
indefinitely and blocking the I2C bus when the master
reads from the slave.

Signed-off-by: Khaoula Bidani <khaoula.bidani-ext@st.com>
2025-09-17 10:07:48 +02:00
Manuel Argüelles
936876b545 drivers: intc: nxp: drop soc name from siul2 eirq driver
The SIUL2 external interrupt driver is a native implementation usable
across all NXP SoCs with SIUL2 IP. Remove the "S32" prefix to allow
clean reuse by other families.

Signed-off-by: Manuel Argüelles <manuel.arguelles@nxp.com>
2025-09-17 10:07:31 +02:00
Manuel Argüelles
5a0e0c924d drivers: gpio: nxp: drop soc name from siul2 driver
The SIUL2 GPIO driver is a native implementation usable across all
NXP SoCs with SIUL2 IP. Remove the "S32" prefix to allow clean
reuse by other families.

Signed-off-by: Manuel Argüelles <manuel.arguelles@nxp.com>
2025-09-17 10:07:31 +02:00
Manuel Argüelles
0f0cad00d4 drivers: pinctrl: nxp: drop soc name from siul2 driver
The SIUL2 pin control driver is a native implementation usable across
all NXP SoCs with SIUL2 IP. Remove the "S32" prefix to allow clean
reuse by other families.

Signed-off-by: Manuel Argüelles <manuel.arguelles@nxp.com>
2025-09-17 10:07:31 +02:00
Cheng Chang
31f36fdbb8 bluetooth: host: l2cap: fix issue that can't get chan by psm
when role is server and try to get chan by psm in application, it
works fail because chan do not store psm.

Signed-off-by: Cheng Chang <cheng.chang@nxp.com>
2025-09-17 10:07:12 +02:00
Hui Bai
af9f889135 samples: net: wifi: Add TLSv1.3 support in wifi example
Add TLSv1.3 support in wifi example for RW612 and IW610.

Signed-off-by: Hui Bai <hui.bai@nxp.com>
2025-09-17 10:06:54 +02:00
Quy Tran
009144a3b2 tests: drivers: build_all: Add Renesas RA video driver build
Enable video driver build for Renesas RA8D1

Signed-off-by: Quy Tran <quy.tran.pz@renesas.com>
2025-09-17 10:06:34 +02:00
Thao Luong
927f5876c8 boards: renesas: ek_ra8d1: Update document for using Camera
Add SW1 configuration for using Camera Exapansion Port (J59)

Signed-off-by: Thao Luong <thao.luong.uw@renesas.com>
2025-09-17 10:06:34 +02:00
Khanh Nguyen
5ed15487b4 samples: video: Add CEU support for Renesas RA boards
Add EK-RA8D1 board support for capture and capture_to_lvgl samples

Signed-off-by: Khanh Nguyen <khanh.nguyen.wz@bp.renesas.com>
2025-09-17 10:06:34 +02:00
Khanh Nguyen
d37590f1c2 boards: shields: Support OV7670 DVP 20-pin shield on EK-RA8D1 board
Support OV7670 DVP 20-pin shield on the EK-RA8D1 board

Signed-off-by: Khanh Nguyen <khanh.nguyen.wz@bp.renesas.com>
2025-09-17 10:06:34 +02:00
Khanh Nguyen
9d830894d6 boards: renesas: Enable CEU video capture support on EK-RA8D1
- Add CEU pin configuration to ek_ra8d1-pinctrl.dtsi
- Enable CEU node and Arducam 20-pin connector in ek_ra8d1.dts
- Configure PWM3 as external XCLK via pwm-clock node
- Update board YAML to declare video support

Signed-off-by: Duy Vo <duy.vo.xc@bp.renesas.com>
Signed-off-by: Khanh Nguyen <khanh.nguyen.wz@bp.renesas.com>
2025-09-17 10:06:34 +02:00
Khanh Nguyen
df0bbeb351 dts: arm: renesas: Add CEU nodes for RA8D1 and RA8M1 SoCs
Add CEU to r7fa8d1xh.dtsi and r7fa8m1xh.dtsi

Signed-off-by: Khanh Nguyen <khanh.nguyen.wz@bp.renesas.com>
2025-09-17 10:06:34 +02:00
Khanh Nguyen
e9c99655d3 include: dt-bindings: renesas: Add RA CEU pin definitions
Add pin definitions required by the RA Capture Engine Unit

Signed-off-by: Duy Vo <duy.vo.xc@bp.renesas.com>
Signed-off-by: Khanh Nguyen <khanh.nguyen.wz@bp.renesas.com>
2025-09-17 10:06:34 +02:00
Khanh Nguyen
2784257582 drivers: video: add support for Renesas RA CEU driver
Add support for the Renesas RA Capture Engine Unit (CEU),
including driver source files, Kconfig options, and DTS bindings.

- Add initial implementation of the RA CEU driver
- Add dedicated Kconfig and CMake integration
- Provide Devicetree bindings for the RA CEU
- Update module Kconfig to include the new driver

This enables image capture functionality using the CEU peripheral
on Renesas RA series MCUs.

Signed-off-by: Duy Vo <duy.vo.xc@bp.renesas.com>
Signed-off-by: Khanh Nguyen <khanh.nguyen.wz@bp.renesas.com>
2025-09-17 10:06:34 +02:00
Jiafei Pan
77b000faaa requirements: update spsdk version
Update spsdk version to fix dependency confliction with other software.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-09-17 08:48:05 +02:00
Jonas Berg
c825b95dc5 boards: Add DFRobot Beetle RP2040 board
The product image is from https://www.dfrobot.com/product-2615.html

Signed-off-by: Jonas Berg <jonas.s.t.berg@gmail.com>
2025-09-17 08:46:53 +02:00
Jonas Berg
ad9d153020 Boards: Add Adafruit Feather RP2040 LoRa board
Add support for the Adafruit Feather RP2040 LoRa board.
The image is from https://learn.adafruit.com/assets/120298, with
the license CC BY-SA 3.0.

Signed-off-by: Jonas Berg <jonas.s.t.berg@gmail.com>
2025-09-17 08:46:42 +02:00
Bill Waters
db410b754c drivers: pwm: ifx_tcpwm: mark unused args
There are two functions with unused arguments
that were not marked.

Signed-off-by: Bill Waters <bill.waters@infineon.com>
2025-09-17 08:45:24 +02:00
Fin Maaß
76c1bc02e1 sd: evaluate constants first
evaluate constants first, so the
compiler can optimize it.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-09-17 08:45:15 +02:00
Mahesh Mahadevan
a053665817 drivers: timer: mcux_os_timer: Improve the overflow handling logic
Clear the remanining ticks value.

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2025-09-17 08:44:31 +02:00
Neil Chen
aeb7cad1ef boards: frdm_mcxc444: Update TPM clock source
1.Update TPM clock source to MCGPCLK(48MHz).
2.Verified tests/drivers/pwm/pwm_api.

Signed-off-by: Neil Chen <cheng.chen_1@nxp.com>
2025-09-17 08:44:15 +02:00
Albort Xue
d5f4976f71 soc: nxp: imxrt10xx: update range of DCDC output voltage.
According to the datasheet, NXP recommands a DCDC output
voltage range of 0.925V to 1.3V.

Signed-off-by: Albort Xue <yao.xue@nxp.com>
2025-09-17 08:44:07 +02:00
Michał Bainczyk
81db3fff8f drivers: flashdisk: fix value returned from disk_flash_access_write
Change the value returned from disk_flash_access_write to return
the return code instead of a hardcoded zero.

Signed-off-by: Michał Bainczyk <michal.bainczyk@nordicsemi.no>
2025-09-17 08:43:41 +02:00
Jason Yu
affb836880 drivers: hwinfo: mcux_src_rev2: Update to support MIMXRT118X
Add RT118X support

Signed-off-by: Jason Yu <zejiang.yu@nxp.com>
2025-09-17 08:43:16 +02:00
Jason Yu
9a2e27e2c2 drivers: hwinfo: mcux_src_rev2: Change it to native driver
The reset source is SOC specific, MCUX SDK SRC driver is
also SOC specific, it doesn't mask the SOC differences.
So the driver can use SOC macros directly, and handle SOC
differences in the hwinfo driver, not necessary to wrap
MCUX SDK driver.

Signed-off-by: Jason Yu <zejiang.yu@nxp.com>
2025-09-17 08:43:16 +02:00
Jason Yu
bd10f9301e drivers: hwinfo: mcux_src_rev2: Change to use dts as dependency
Originally the driver is selected if `HAS_MCUX_SRC_V2` is
selected in SOC level kConfig.
Change to use dts to mark the driver is avaiable for some SOC.

Signed-off-by: Jason Yu <zejiang.yu@nxp.com>
2025-09-17 08:43:16 +02:00
Qiang Zhang
93edbeba94 drivers: input: Adapt to the latest SDK kpp driver
Get the KPP_keyPressScanning status value
to determine the stability of key data.
Update read_keys_old data update timing.

Signed-off-by: Qiang Zhang <qiang.zhang_6@nxp.com>
2025-09-17 08:43:05 +02:00
Lucien Zhao
296ca350d6 samples: drivers: i2s: output: add rt1180 support
- add i2s_output case support on cm33/cm7 core
- remove 1180 platform in i2s_api/speed cases

Signed-off-by: Lucien Zhao <lucien.zhao@nxp.com>
2025-09-17 08:42:44 +02:00
Lucien Zhao
30d5243ed4 samples: drivers: i2s_codec: support sai1 codec function on RT1180
- add imxrt_audio_codec_pll_init function in soc.c
- add sai1 pin configuration
- Verify i2s_codec case on cm33/cm7 core

Signed-off-by: Lucien Zhao <lucien.zhao@nxp.com>
2025-09-17 08:42:44 +02:00
Lucien Zhao
826a2eee56 drivers: i2s: i2s_mcux_sai: update driver to support RT1180
add CONFIG_SOC_SERIES_IMXRT118X macro to support
audioPllConfig initialization

Signed-off-by: Lucien Zhao <lucien.zhao@nxp.com>
2025-09-17 08:42:44 +02:00
Lucien Zhao
3383026a9a dts: arm: nxp: add sai/blkctrl_ns_aon/blkctrl_wakeup instance
add 4 sai instances
add blkctrl_ns_aon/blkctrl_wakeup and related binding yml

Signed-off-by: Lucien Zhao <lucien.zhao@nxp.com>
2025-09-17 08:42:44 +02:00
Biwen Li
b50b091e9c boards: nxp: imx943_evk: enable m70 and m71
Enable m70 and m71 for imx943_evk

Signed-off-by: Biwen Li <biwen.li@nxp.com>
2025-09-17 08:42:32 +02:00
Jacob Wienecke
3df02197a4 dts: arm: nxp: Move static ocram configuration to specific soc
RT1160 and RT1170 have different sizes for OCRAM1 and OCRAM2 this PR moves
the static ocram1 and ocram2 labels to the soc specific dtsi and defines
their sizes according to the RM. For RT1160, it combines the OCRAM1,
OCRAM2, and OCRAM M7 (FlexRAM ECC) into 1 node for a better user
experience. 256KB total as opposed to 64KB.

Signed-off-by: Jacob Wienecke <jacob.wienecke@nxp.com>
2025-09-17 08:42:22 +02:00
Benjamin Cabé
4f90ec359d drivers: spi: xmc4xxx: handle error from spi_context_cs_configure_all
This fixes CI issues ("error: statement with no effect") in the
project's weekly CI run, e.g.:

west twister -p xmc47_relax_kit/xmc4700 -s drivers.spi.loopback.internal

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-17 08:42:10 +02:00
Anisetti Avinash Krishna
377926ca0d soc: intel: Added support for sys_poweroff on adl and atom
Added support for sys_poweroff on ADL and ATOM socs based on
acpi_poweroff.

Signed-off-by: Anisetti Avinash Krishna <anisetti.avinash.krishna@intel.com>
2025-09-16 17:20:41 -04:00
Anisetti Avinash Krishna
5bdd670e2c lib: acpi: Enable poweroff feature
Enable system poweroff feature using ACPI.

Signed-off-by: Anisetti Avinash Krishna <anisetti.avinash.krishna@intel.com>
2025-09-16 17:20:41 -04:00
Peter Mitsis
5905fa867c kernel: Update k_event documentation
Updates the k_event documentation to make the k_event structure
visible but its contents opaque.

Signed-off-by: Peter Mitsis <peter.mitsis@intel.com>
2025-09-16 17:20:28 -04:00
Peter Mitsis
4f4d22727b kernel: Update k_timer documentation
Updates the k_timer documentation to make the k_timer structure
visible but its contents opaque.

Signed-off-by: Peter Mitsis <peter.mitsis@intel.com>
2025-09-16 17:20:28 -04:00
Peter Mitsis
3eb6d2d875 kernel: Update k_ipi_work documentation
Updates the k_ipi_work documentation to make the k_ipi_work
structure visible but its contents opaque.k

Signed-off-by: Peter Mitsis <peter.mitsis@intel.com>
2025-09-16 17:20:28 -04:00
Luis Ubieda
c98f6bccc4 spi: rtio: Add validation for NULL tx and rx buffers
In addition to #94710 fixes, SPI RTIO currently fails existing spi
loopback testcase: test_spi_null_tx_rx_buf_set.

This plus the referenced PR enable RTIO-enabled drivers to pass the
testsuite.

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-09-16 16:08:15 -04:00
Paulo Santos
1e7e1dbb6d drivers: gpio_gecko: update driver to use signal-only output.
Enable the pin configuration as single-ended pull-up output, allowing for
a currentless, signal-only output.

Signed-off-by: Paulo Santos <pauloroberto.santos@edge.ufal.br>
2025-09-16 16:07:59 -04:00
Ayush Singh
f2dcb6c1f3 tests: kernel: mem_protect: sys_sem: Fix pocketbeagle_2_am6254_a53
- Since PocketBeagle 2 RevA1 has 4 cores, we need to adjust the variable
  CONFIG_MAX_THREAD_BYTES to allow this test to build.
- Does not affect Rev A0 (2 cores).

Signed-off-by: Ayush Singh <ayush@beagleboard.org>
2025-09-16 16:07:40 -04:00
Ayush Singh
df3e28375d tests: kernel: mutex: sys_mutex: Fix pocketbeagle_2_am6254_a53
- Since PocketBeagle 2 RevA1 has 4 cores, we need to adjust the variable
  CONFIG_MAX_THREAD_BYTES to allow this test to build.
- Does not affect Rev A0 (2 cores).

Signed-off-by: Ayush Singh <ayush@beagleboard.org>
2025-09-16 16:07:40 -04:00
Ayush Singh
ad2990ab25 tests: kernel: queue: Fix pocketbeagle_2_am6254_a53
- Since PocketBeagle 2 RevA1 has 4 cores, we need to adjust the variable
  CONFIG_MAX_THREAD_BYTES to allow this test to build.
- Does not affect Rev A0 (2 cores).

Signed-off-by: Ayush Singh <ayush@beagleboard.org>
2025-09-16 16:07:40 -04:00
Ayush Singh
c1b1abb3f6 boards: beagle: pocketbeagle_2: reva1: a53: Enable PSCI
- Since reva1 support was merged so close to psci PR, it's only enabled
  in reva0 right now. So enable it here.
- Tested with smp/pi sample

Signed-off-by: Ayush Singh <ayush@beagleboard.org>
2025-09-16 16:07:40 -04:00
Maciej Perkowski
c5c5e0f023 test: kernel: fix warnings in kernel.no-mt
Align expected test name in kernel fatal error handler

Signed-off-by: Maciej Perkowski <maciej.perkowski@nordicsemi.no>
2025-09-16 16:07:19 -04:00
Adrian Warecki
5c5e17f0f3 kernel: dynamic: Optimize stack pool usage
Add the flags parameter to the z_thread_stack_alloc_pool function.
Determine the maximum possible stack size based on the size of the reserved
memory for stack and the thread type (flags).

The stack size that can be used by a thread depend on its type
(kerner/user). For the same stack size, the macros K_KERNEL_STACK_DECLARE
and K_THREAD_STACK_DEFINE may reserve different amount of memory.

Signed-off-by: Adrian Warecki <adrian.warecki@intel.com>
2025-09-16 16:07:05 -04:00
Fabrice DJIATSA
18497c57f1 tests: drivers: uart: uart_elementary: update testcase.yaml
Add some STM32 platforms to the allowed list to perform a
specific scenario.

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2025-09-16 13:07:03 -04:00
Fabrice DJIATSA
e31498cf5d tests: drivers: uart: elementary: stm32: add support for hw flow control
- Configure and attach DMA for each USART node.
- Enable hardware flow control capability.
- Add RTS/CTS pin name signals.

Note: Some platform series are missing due to conflicts with other pins
used by different test drivers
(RTS pin should be connected to the CTS pin.)

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2025-09-16 13:07:03 -04:00
Fabrice DJIATSA
a86d9029b9 tests: drivers: uart: uart_aync_api: add support for stm32h5-dk
Enable the test to be executed on the stm32h573i-dk as well.

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2025-09-16 13:07:03 -04:00
Fabrice DJIATSA
3c8def0691 samples: drivers: uart: async_api: add new scenario for console harness
- Add a console harness to filter console output and validate tests.

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2025-09-16 13:07:03 -04:00
Fabrice DJIATSA
51aba7f739 samples: drivers: uart: async_api: add stm32 platform overlays
Configure and attach DMA for each platform's USART to enable
asynchronous UART communication.

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2025-09-16 13:07:03 -04:00
Thomas Decker
7391cfa03a boards: arm: st: nucleo_h7s3l8: Add fdcan1
Enable support for FDCAN1 on nucleo_h7s3l8 board. PD0 (RX) and PD1 (TX)
are used for interfacing an external CAN transceiver according to the
breakout connector description in the board's schematic.

Signed-off-by: Thomas Decker <decker@jb-lighting.de>
2025-09-16 13:06:38 -04:00
Thomas Decker
ab94dbc86f dts: arm: st: h7rs: Add fdcan1 and fdcan2 configuration
Provide the soc configuration for fdcan1 and fdcan2 controllers.
This includes registers address, clocks and interrupt lines
details.

Signed-off-by: Thomas Decker <decker@jb-lighting.de>
2025-09-16 13:06:38 -04:00
Adrian Ściepura
5bb98db2b1 boards: x86_64: add missing cpu nodes
Some x86_64 platforms have only one CPU node defined in their
respective devicetree files, while setting `CONFIG_MP_MAX_NUM_CPUS`
to two.

This commit adds missing CPU nodes in said devicetree files.

Signed-off-by: Adrian Ściepura <asciepura@internships.antmicro.com>
2025-09-16 13:06:24 -04:00
Tamás Kiss
14d24b1698 script: logging: fix formatting of dropped messages
Print the actual number instead of a single-element tuple.
For example: "2 messages dropped" instead of "(2,) messages dropped"

Signed-off-by: Tamás Kiss <tmik@demant.com>
2025-09-16 13:06:12 -04:00
Michał Stasiak
26afb52f2b manifest: update hal_nordic revision to integrate MDK 8.72.3
New hal_nordic revision contains MDK 8.72.3 with
changes for nRF54LV10A EngA SoC.

Signed-off-by: Michał Stasiak <michal.stasiak@nordicsemi.no>
2025-09-16 13:06:02 -04:00
Pavel Vasilyev
e88695add2 bluetooth: mesh: move mesh assigned numbers to dedicated header
Move assigned number for mesh from mesh.h to assigned_numbers.h where
all assigned numbers are located.

Signed-off-by: Pavel Vasilyev <pavel.vasilyev@nordicsemi.no>
2025-09-16 13:05:40 -04:00
Pavel Vasilyev
690314040e bluetooth: host: audio: move audio assigned numbers to dedicated header
Move assigned number for audio from audio.h to assigned_numbers.h where
all assigned numbers are located.

Signed-off-by: Pavel Vasilyev <pavel.vasilyev@nordicsemi.no>
2025-09-16 13:05:40 -04:00
Pavel Vasilyev
8c0269e2ce bluetooth: host: move assigned numbers out of gap.h
Move Bluetooth Assigned Numbers to own header file to separate them from
core GAP functionality.

Signed-off-by: Pavel Vasilyev <pavel.vasilyev@nordicsemi.no>
2025-09-16 13:05:40 -04:00
Benjamin Cabé
12c6c19541 ci: workflows: upload doxygen coverage to codecov together w/ unittests
Remove codecov upload from doc build workflow and instead ensure both
test and doxygen coverage is uploaded in the same codecov.yml workflow,
this way codecov report will accurately show the consolidated coverage
for each "push" commit.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-16 13:05:23 -04:00
Benjamin Cabé
7e95d30070 doc: add doxygen-coverage target
This makes it easier for anyone to get a coverage report for the doxygen
documentation through a simple "make doxygen-coverage".

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-16 13:05:23 -04:00
Benjamin Cabé
77b0df153a tests: sensor: ti: ina2xx: explicitly cast custom sensor channel enum
clang complains about implicit conversion from enumeration type
'enum sensor_channel_ina2xx' to different enumeration type
'enum sensor_channel' causing failures in CI.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-16 13:05:14 -04:00
Felix Wang
5525941d83 drivers: Counter: Fix LPIT disable interrupt bug
The parameter for LPIT_DisableInterrupts should be
lpit_interrupt_enable_t, not channel id.

Besides, improve the code to use BIT macro for shift
operation.

Signed-off-by: Felix Wang <fei.wang_3@nxp.com>
2025-09-16 16:06:48 +02:00
Felix Wang
3eb5471390 boards: nxp: frdm_ke17z: enable lpit driver
Enable lpit0 for frdm_ke17z

Signed-off-by: Felix Wang <fei.wang_3@nxp.com>
2025-09-16 16:06:48 +02:00
Felix Wang
5018b13de1 tests: drivers: counter_basic_api: Enable lpit test for frdm_ke17z
Enable test for all channels.
This test covers following test cases:
- test_set_top_value_without_alarm
- test_set_top_value_with_alarm
- test_valid_function_without_alarm

Signed-off-by: Felix Wang <fei.wang_3@nxp.com>
2025-09-16 16:06:48 +02:00
Felix Wang
0cb44d75ac soc: nxp: kinetis: clock update for LPIT instances on KE1XZ
Configure LPIT0 IP clock if devicetree status is okay.

Signed-off-by: Felix Wang <fei.wang_3@nxp.com>
2025-09-16 16:06:48 +02:00
Felix Wang
d67bf2ffd8 dts: arm: nxp: ke1xz: add lpit instances for KE1XZ
Add lpit0 and all of channels settings

Signed-off-by: Felix Wang <fei.wang_3@nxp.com>
2025-09-16 16:06:48 +02:00
Jonas Berg
f683bc53d1 drivers: sensor: ti: ina2xx: Add INA228 test
Add test for Texas Instruments INA228 current sensor via I2C.

Signed-off-by: Jonas Berg <jonas.s.t.berg@gmail.com>
Signed-off-by: Wilkins White <ww@novadynamics.com>
2025-09-16 16:06:38 +02:00
Wilkins White
8ed9787089 drivers: sensor: ti: ina2xx: Add INA228
Add the Texas Instruments INA228 Power/Energy/Charge
monitor. This chip is similar to the INA237, but has
a more precise ADC and added energy/charge channels.

Signed-off-by: Wilkins White <ww@novadynamics.com>
2025-09-16 16:06:38 +02:00
Wilkins White
685fec5809 drivers: sensor: ti: ina2xx: Convert INA226
Convert the INA226 driver to INA2XX

Signed-off-by: Wilkins White <ww@novadynamics.com>
2025-09-16 16:06:38 +02:00
Wilkins White
5ffb8c6305 drivers: sensor: ti: ina2xx: Convert INA230
Convert the INA230 driver to INA2XX

Signed-off-by: Wilkins White <ww@novadynamics.com>
2025-09-16 16:06:38 +02:00
Wilkins White
9c113d0a00 drivers: sensor: ti: ina2xx: Convert INA237
Convert the INA237 driver to INA2XX

Signed-off-by: Wilkins White <ww@novadynamics.com>
2025-09-16 16:06:38 +02:00
Wilkins White
bb570cbea4 drivers: sensor: ti: ina2xx: Add common functions
This commit adds a common framework to reduce repeated
code in the INA2XX family.

Signed-off-by: Wilkins White <ww@novadynamics.com>
2025-09-16 16:06:38 +02:00
Wilkins White
06b1440890 drivers: sensor: ti: Rename ina23x to ina2xx
This commit renames the ina23x folder and common files to ina2xx.
The more generic name will support, e.g., the INA237 and INA228
series chips.

Signed-off-by: Wilkins White <ww@novadynamics.com>
2025-09-16 16:06:38 +02:00
Jordan Yates
f11c90c8b7 drivers: disk: sdmmc_stm32: support PINCTRL sleep
Add support for configuring pins into an alternate mode when the
device is powered off.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-09-16 16:05:23 +02:00
Jordan Yates
4abe1c4f91 drivers: disk: sdmmc_stm32: power up on request
Move power configuration from the device init function into the
`DISK_IOCTL_CTRL_INIT` and `DISK_IOCTL_CTRL_DEINIT` handlers. If
`pwr-gpios` is defined, this ensures that the card is not powered up
until requested, and enables power down the card when not in use.

This behaviour matches the implementation for `sdhc_spi`.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-09-16 16:05:23 +02:00
Jordan Yates
24e91227f3 drivers: disk: sdmmc_stm32: fix clock pointer ref
Provide a pointer to the first element of the clock list explicitly (as
done by `stm32_sdmmc_clock_enable`), instead of a pointer to the list.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-09-16 16:05:23 +02:00
Miguel Gazquez
5335b7c424 scripts: west_commands: correct f-string in board mismatch error message
The board mismatch error message in `scripts/west_commands/build.py` was
partially missing f-string formatting. This caused `{self.args.board}`
to be printed literally instead of being replaced with the actual board
value.

Fix the f-string.

Signed-off-by: Miguel Gazquez <miguel.gazquez@bootlin.com>
2025-09-16 16:05:03 +02:00
Yves Wang
fd598ba0f3 tests: watchdog: retain memory for frdm_mcxw7x
Added board shared sram noecc overlay.
The overlay configure shall select non ecc memory to avoid being clear
during system startup.
Change window max to 1000 for nxp wdog32 to avoid 16bit overflow when
clock freq is 32768hz and divider is 1.

Signed-off-by: Yves Wang <zhengjia.wang@nxp.com>
2025-09-16 16:04:51 +02:00
Yves Wang
8f82cb0848 dts: arm: nxp: Correct frdm_mcxw71 wdog default clock
Watchdog clock source is 32K_CLK
Clock divider should be 1

Signed-off-by: Yves Wang <zhengjia.wang@nxp.com>
2025-09-16 16:04:51 +02:00
Raffael Rostagno
dd0d6899e2 boards: esp32s3: Add label for USB-OTG (UDC0)
Add default zephyr_udc0 label for USB-OTG.

Signed-off-by: Raffael Rostagno <raffael.rostagno@espressif.com>
2025-09-16 16:04:03 +02:00
Raffael Rostagno
724929eec5 dts: esp32s3: Add USB-OTG support
Add USB-OTG peripheral support to ESP32S3.

Signed-off-by: Raffael Rostagno <raffael.rostagno@espressif.com>
2025-09-16 16:04:03 +02:00
Raffael Rostagno
9dcc2d8086 drivers: usb: dwc2: Limit RX FIFO size allocation
Limit RX FIFO size allocation to a percentage of the total
SPRAM available, to cap allocation according to memory size.

Signed-off-by: Raffael Rostagno <raffael.rostagno@espressif.com>
2025-09-16 16:04:03 +02:00
Raffael Rostagno
41cac25632 drivers: usb: dwc2: esp32: Add support
Add USB device driver support for ESP32 devices with
USB-OTG peripheral.

Signed-off-by: Raffael Rostagno <raffael.rostagno@espressif.com>
2025-09-16 16:04:03 +02:00
Tomasz Moń
0748b4e47d drivers: udc_dwc2: Control D+ pull-up on nRF54H20
Disable D+ pull-up on core disable to make sure that device does not
indicate its presence to host before the stack is ready (software
initializes controller and clears SftDiscon bit).

Signed-off-by: Tomasz Moń <tomasz.mon@nordicsemi.no>
2025-09-16 14:05:18 +02:00
Lyle Zhu
bcf9a088f4 Bluetooth: tester: Add SDP discover command
Add commands `BTP_SDP_SEARCH_REQ`, `BTP_SDP_ATTR_REQ`, and
`BTP_SDP_SEARCH_ATTR_REQ`.

Add service record handle report event
`BTP_SDP_EV_SERVICE_RECORD_HANDLE`.

Handle the commands and call function `bt_sdp_discover()` to start the
SDP discovery.

And report the discovered service record handle if the request type is
`BTP_SDP_SEARCH_REQ`.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-09-16 14:05:09 +02:00
Lyle Zhu
9d386edb4a Bluetooth: tester: Add service for SDP
Add service id BTP_SERVICE_ID_SDP=0x1f for SDP.

Implement function `tester_init_sdp` and `tester_unregister_sdp`.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-09-16 14:05:09 +02:00
Thomas Stranger
9fad64c754 github: workflows: stale-workflow no branch filter for wf dispatch
workflow_dispatch can't filter on branches therefore remove it.
To keep the intended behaviour add a condition on main
to the job of the stale-workflow-queue-cleanup workflow.

Signed-off-by: Thomas Stranger <thomas.stranger@outlook.com>
2025-09-16 06:56:26 -04:00
Thomas Stranger
ecad2e9e27 github: workflows: bug_snapshot no branch filter for wf dispatch
workflow_dispatch can't filter on branches therefore remove it.
To keep the intended behaviour add a condition on main
to the job.

Signed-off-by: Thomas Stranger <thomas.stranger@outlook.com>
2025-09-16 06:56:26 -04:00
Thomas Stranger
29254eb655 github: workflows: compliance: remove ineffective check
The commit 7b1e610cc7 ("ci: move PR body check to a different workflow")
moved the step this depends on to the do_not_merge workflow,
so it no longer has any effect.

This extra message was initially added to the fail step to make it
easier to spot the issue. But I don't think it's necessary
in the do_not_merge workflow either now.

Signed-off-by: Thomas Stranger <thomas.stranger@outlook.com>
2025-09-16 06:56:16 -04:00
Gerson Fernando Budke
44406aea91 MAINTAINERS.yml: Remove nandojve as GD32 maintainer
Due to may current activities and lack of time I can not perform
anymore as GD32 maintainer. At same time, promoting soburi as new
maintainer.

Signed-off-by: Gerson Fernando Budke <nandojve@gmail.com>
2025-09-16 06:56:02 -04:00
Gerson Fernando Budke
0a091ef8fb MAINTAINERS.yml: Remove nandojve as BouffaloLab maintainer
The Bouffalo Lab has been evolved since it was introduced. It can now
grow in the hands of community. The platform is not isolated and there
is an active maintainer which is active working.

Signed-off-by: Gerson Fernando Budke <nandojve@gmail.com>
2025-09-16 06:55:16 -04:00
Andrew Davis
819479911d MAINTAINERS: Add dts/vendor/ti to TI K3 Platforms
This directory was added for the DT items common to both ARM (dts/arm) and
ARM64 (dts/arm64) cores for TI devices.

For now the only TI devices that share DT nodes between cores of different
architectures is the K3 family. If other TI devices start using this dir
then we can get more granular in the MAINTAINERS entry here. Until then
mark the whole directory as part of "TI K3 Platforms".

Signed-off-by: Andrew Davis <afd@ti.com>
2025-09-16 06:55:05 -04:00
Stephanos Ioannidis
f58de5f553 ci: maintainer_check: Check out "merged" MAINTAINERS.yml
When a pull request is based off an old commit in the base branch (usually
`main`), the MAINTAINERS file from the `pull/NUMBER/head` ref may contain
out-of-date changes, and running diff between it and the MAINTAINERS file
from the latest base branch may return more changes than what is actually
made in the pull request.

This commit updates the workflow to check out the MAINTAINERS file from the
`pull/NUMBER/merge` ref, which is a temporary ref created by GitHub with
the pull request commits merged into the base branch.

Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
2025-09-16 06:52:28 -04:00
Anas Nashif
5ee0927540 ci: assigner: checkout merged west manifest
When a pull request is based off an old commit in the base branch (usually
`main`), the manifest file from the `pull/NUMBER/head` ref may contain
out-of-date changes, and running diff between it and the manifest file
from the latest base branch may return more changes than what is actually
made in the pull request.

This commit updates the workflow to check out the manifest file from the
`pull/NUMBER/merge` ref, which is a temporary ref created by GitHub with
the pull request commits merged into the base branch.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-09-16 06:52:17 -04:00
Piotr Pryga
eaede77351 dts: nrf54h20: Add zephyr,pm-device-runtime-auto; to uart instances
The uart driver for nRF54h20 doesn't call pm_device_runtime_enable().
During an uart driver init `pm_device_driver_init()` return early,
because the `pm_device_is_powered()` returns `false`. Power domains,
where uarts are instantiated, are disabled: `pm->domain->pm_base->state`
is not equal to `PM_DEVICE_STATE_ACTIVE`.

At the end of the day, an uart instance is left disabled.

This is a workaround to make the uart usable when CONFIG_PM,
CONFIG_PM_DEVICE and CONFIG_PM_DEVICE_RUNTIME are enabled.

Signed-off-by: Piotr Pryga <piotr.pryga@nordicsemi.no>
2025-09-16 10:55:17 +01:00
Matthias Hauser
17e1429589 boards: we: update WE ophelia4 board definition
add support for gpregret1, nfct

Signed-off-by: Matthias Hauser <Matthias.Hauser@we-online.de>

Signed-off-by: Matthias Hauser <Matthias.Hauser@we-online.de>
2025-09-16 10:55:09 +01:00
Martin Hoff
0383b3cd9a tests: drivers: spi_loopback: Add xg29_rb4412a to spi rtio test
Included the xg29_rb4412a board in the list of tested platforms
for the SPI loopback rtio test.

Signed-off-by: Martin Hoff <martin.hoff@silabs.com>
2025-09-16 10:54:56 +01:00
Chun-Chieh Li
3f9b8e2010 drivers: misc: ethos_u: numaker: remove ethosu_set_basep_cache_mask
This follows change of ethos-u core driver (hal_ethos_u) which
removes cache flush/invalidate mask function ethosu_set_basep_cache_mask.

Signed-off-by: Chun-Chieh Li <ccli8@nuvoton.com>
2025-09-16 10:54:34 +01:00
Etienne Carriere
1b5779f17c dts: arm: st: h7: remove HASH node from H755xx
Remove the hash node from STM32755x SoC DTSI. The node was broken
(wrong node name and compatible property) and seems unused and moreover
most STM32H7xx have an HASH peripheral so a proper fix would rather
be to add the node to all relevant SoC. This will be done later, if
the need arises and after proper validation.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-09-16 10:54:26 +01:00
Matteo Vigni
caef47ba75 soc: st: stm32: stm32h7x: Add initialization of TCM
Add ITCM and DTCM initialization code in soc_reset_hook() on M7 core.

Signed-off-by: Matteo Vigni <mvigni@enphaseenergy.com>
2025-09-16 10:54:17 +01:00
Lyle Zhu
49157ea8fc Bluetooth: SDP: Check tail room of allocated buffer
In partial resolved notification case, there is a case that the tail
room of new allocated buffer is not bigger than the tail room of the
current receiving buffer. Since, the new allocated buffer has the same
size with the current receiving buffer, it means a complete SDP record
cannot fit into the allocated buffer. In this way, the following SDP
discovery should be stopped.

In partial resolved notification case, if the tail room of the new
allocated buffer is not more the tail room of the current receiving
buffer, reports the error `-ENOMEM` and stop the following SDP
discovery.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-09-16 09:56:13 +02:00
Lyle Zhu
624407840f Bluetooth: SDP: Partial resolved if no space for next SDP SSA discover
The minimum receiving buffer size is 0x0007. The following SDP
discovery should not be started if the space of the receiving buffer
is less than 0x0007.

If there is no more space of the receiving buffer for the next SDP SSA
discovery, try to notify the upper layer with the partial resolved.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-09-16 09:56:13 +02:00
Lyle Zhu
22c14df4dc Bluetooth: Classic: SDP: Check max attr byte count for req and rsp
In the SDP specification, the `MaximumAttributeByteCount` of SA and
SSA should be in range 0x0007-0xffff. But in the current
implementation, this value is not checked both SDP server and client
sides.

Check the `MaximumAttributeByteCount` when receiving the SA or SSA
request on SDP server side.

Check the tail room of the receiving buffer before sending the SA or
SSA request on SDP client side.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-09-16 09:56:13 +02:00
Paweł Pelikan
1192dbf24a tests: kernel: sleep: Adjustments for NRF54H20 PPR
Adjusting the max shortest ticks value for slow PPR core.

Signed-off-by: Paweł Pelikan <pawel.pelikan@nordicsemi.no>
2025-09-16 09:55:58 +02:00
Utsav Munendra
9c78de037f drivers: audio: codec: Include errno.h in header
Header uses errno so include it right here.

Signed-off-by: Utsav Munendra <utsavm@meta.com>
2025-09-16 09:55:39 +02:00
Joel Guittet
e475b43660 documentation: detail k_timer_start period update to be updated
k_timer_start is not updating the period of the timer if the duration
is K_FOREVER.

Signed-off-by: Joel Guittet <joelguittet@gmail.com>
2025-09-16 09:55:21 +02:00
Phuc Pham
304194ed00 samples: boards: renesas: Add OpenAMP sample for Renesas RZ/V2L
Add OpenAMP sample support for board Renesas RZ/V2L-SMARC

Signed-off-by: Phuc Pham <phuc.pham.xr@bp.renesas.com>
Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
2025-09-16 09:54:57 +02:00
Phuc Pham
5a193b2f7d soc: renesas: Add linker support for OpenAMP sample on Renesas RZ/V2L
Add linker support for OpenAMP sample on Renesas RZ/V2L

Signed-off-by: Phuc Pham <phuc.pham.xr@bp.renesas.com>
Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
2025-09-16 09:54:57 +02:00
Phuc Pham
f29a984b85 tests: drivers: mbox: Add MBOX support for Renesas RZ/V2L
Add MBOX test support for Renesas RZ/V2L-SMARC

Signed-off-by: Phuc Pham <phuc.pham.xr@bp.renesas.com>
Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
2025-09-16 09:54:57 +02:00
Phuc Pham
84cc87fb04 boards: renesas: Add MBOX support for Renesas RZ/V2L
Add MBOX support for board Renesas RZ/V2L-SMARC

Signed-off-by: Phuc Pham <phuc.pham.xr@bp.renesas.com>
Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
2025-09-16 09:54:57 +02:00
Phuc Pham
6151fb4d2b boards: renesas: Update document link for Renesas RZ/G3S
Update document link for board Renesas RZ/G3S-SMARC

Signed-off-by: Phuc Pham <phuc.pham.xr@bp.renesas.com>
Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
2025-09-16 09:54:57 +02:00
Phuc Pham
3b23090b88 dts: renesas: Add MBOX support for Renesas RZ/V2L
Add MBOX nodes to Renesas RZ/V2L

Signed-off-by: Phuc Pham <phuc.pham.xr@bp.renesas.com>
Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
2025-09-16 09:54:57 +02:00
Phuc Pham
62116a7e74 manifest: Update commit id for hal_renesas
Update commit id for hal_renesas

Signed-off-by: Phuc Pham <phuc.pham.xr@bp.renesas.com>
Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
2025-09-16 09:54:57 +02:00
Jeremy Dick
0494e3c7f8 dts: arm: renesas: ra: Separate the OFS memory into individual regions
Create separate memory regions for each OFS register. With a single
region the linker will gap fill the load segment with zeros between
each option setting section that gets placed in the region when
generating the .elf file.

Signed-off-by: Jeremy Dick <jdick@pivotint.com>
2025-09-16 09:54:25 +02:00
Evan Perry Grove
3d224cf827 doc: boards: st: nucleo_f722ze: Improve documentation photo
The photo included in the documentation for the Nucleo F722ZE is of
poor quality. Replace it with a better photo.

Signed-off-by: Evan Perry Grove <evan@4grove.com>
2025-09-16 09:54:09 +02:00
Dmitrii Sharshakov
82e4fd84f4 jwt: fix signature length for JWT_SIGN_RSA_LEGACY
Fix the reference to the Kconfig item.

Fixes #73329

Signed-off-by: Dmitrii Sharshakov <d3dx12.xx@gmail.com>
2025-09-16 09:53:44 +02:00
Tom Chang
76d54c1a37 drivers: dma: npcx: add gdma support
This commit adds support for the GDMA functionality.

Signed-off-by: Tom Chang <CHChang19@nuvoton.com>
2025-09-16 09:53:30 +02:00
Tom Chang
62c38e0a0b dts: dma: npcx: add the gdma node and binding
This CL adds binding for npcx gdma and node to npck and npcx chip
series.

Signed-off-by: Tom Chang <CHChang19@nuvoton.com>
2025-09-16 09:53:30 +02:00
Tom Chang
f41532eb1b soc: npcx: update register definition for GDMA
This commit updates the GDMA register definitions to align with the
specifications of the chip series.

Signed-off-by: Tom Chang <CHChang19@nuvoton.com>
2025-09-16 09:53:30 +02:00
Tom Burdick
e8c676be47 rtio: More useful callback OPs
Callbacks now take a result parameter which may, if the callback was
linkd to by a previous submissions, have the result code from the last
submission.

Additionally the userdata is now const by default making it easier to
use the device pointer as the userdata which is very common.

Signed-off-by: Tom Burdick <thomas.burdick@intel.com>
2025-09-16 09:53:14 +02:00
Kai Cheng
3e03a658b0 Bluetooth: DID: add did profile
add did profile codes

Signed-off-by: Kai Cheng <chengkai@xiaomi.com>
2025-09-16 09:52:53 +02:00
Benjamin Cabé
73ea9419c3 doc: contribute: guidelines: update copyright notice guidelines
Similar to SPDX-License-Identifier, there is a standard way to add
copyright notices to source code so update the guidelines so that
recommendation is that copyright notices are added using
SPDX-FileCopyrightText.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-15 19:47:16 -04:00
Adrian Bonislawski
8658ce5c9e drivers: dma: dw: Add power management state check in get_status
Add power management state validation in dw_dma_get_status() to ensure
the device is in active state before attempting to read DMA status.
Returns -EINVAL if device is not active, preventing potential issues
when accessing hardware registers while device is suspended.

Signed-off-by: Adrian Bonislawski <adrian.bonislawski@intel.com>
2025-09-15 19:46:07 -04:00
Bjarki Arge Andreasen
5db84c7cb7 drivers: power_domain: introduce nrfs_swext device driver
Introduce nrfx_swext device driver for NRFS SWEXT power domain
device.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-09-15 19:45:44 -04:00
Bjarki Arge Andreasen
cf2e80d373 dts: bindings: introduce nordic,nrfs-swext
Introduce nordic NRFS SWEXT power domain bindings and add it to
relevant SoC devicetree files.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-09-15 19:45:44 -04:00
Emil Gydesen
15abc32ca0 doc: migration guide: Add entry for recent change to BT BAP SD
The Bluetooth BAP Scan Delegator had a minor behavioral change
that may affect a small subset of devices.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-09-15 19:45:23 -04:00
Emil Gydesen
397c8ee54c tests: Bluetooth: BAP: SD: Update test to set PA sync state
The Scan Delegator has been modified to not set the PA sync state
automatically anymore, so the test needed to be updated.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-09-15 19:45:23 -04:00
Emil Gydesen
64ea5334e4 Bluetooth: BAP: SD: Remove address lookups
Remove lookups in the Scan Delegator that relates to
the advertiser address. The reason for this, is that the
address is not considered a unique value for receive states,
since the address may change over time in the case of (N)RPAs.
Instead we shall rely exclusively on the address type, the sid
and the broadcast ID.

The implementation of the Scan Delegator and Broadcast Sink
has been updated to not use addresses for lookups anymore,
and there has been a minor API modification to set the
PA sync state as part of bt_bap_scan_delegator_add_src
as the higher layers are better suited to handle the
PA Sync state.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-09-15 19:45:23 -04:00
Ayush Singh
6f87c1c304 boards: beagle: pocketbeagle_2: mspm0l1105: Add debug
- Use GPIO bitbang using sysfsgpio openocd driver.
- Not using libgpiod driver since it does not support libgpiod v2 and
  above, which is what all the debian 13 images ship with.

Signed-off-by: Ayush Singh <ayush@beagleboard.org>
2025-09-15 19:45:14 -04:00
Jordan Yates
295ccdb89d tests: drivers: build_all: test gain-extended-range
Validate the `current-sense-amplifier` driver builds when an instance
with `gain-extended-range` exists.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-09-15 19:44:36 -04:00
Jordan Yates
1c7f1e56cc sensor: current_amp: improve output resolution
Improve the output resolution by converting internally to microvolts
rather than millivolts.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-09-15 19:44:36 -04:00
Jordan Yates
1f144307cf sensor: current_amp: optional high-range gain fallback
Add the option to specify an alternate ADC gain value to use if the
initial measurement saturates the range. This enables higher data
resolutions when the values are small compared to the maximum signal
values, while still supporting the maximum.

As a concrete example, measuring charge currents from a small solar
panel (0 - 50mA), while also supporting high USB charge currents
(up to 1A).

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-09-15 19:44:36 -04:00
Anthony Williams
3e7a941094 sensor: icm45686: Fix one-shot missing shift value for XYZ channels
Fix missing shift values in `sensor_three_axis_data`  when performing
one-shot reads on SENSOR_CHAN_ACCEL_XYZ and SENSOR_CHAN_GYRO_XYZ

Signed-off-by: Anthony Williams <anthony289478@gmail.com>
2025-09-15 19:44:25 -04:00
Bill Waters
e20c04a320 scripts: west_commands: runners: openocd path fix
There is a fix that is needed for building on Linux and
running on Windows.  Without this fix, the scripts throws
errors and fails because of the '\' instead of '/'.  For
portability, the script should not use literal slashes.

Signed-off-by: Bill Waters <bill.waters@infineon.com>
2025-09-15 19:44:17 -04:00
Thomas Stranger
340c59cc80 scripts: west_commands: zspdx: fix log ref to meta file
The build output meta data is written to the zephyr.meta
file not zephyr_meta.yml.
This name is defined by KERNEL_META_NAME in cmake/modules/kernel.cmake.

Signed-off-by: Thomas Stranger <thomas.stranger@outlook.com>
2025-09-15 19:44:07 -04:00
Benjamin Cabé
3acb5f9aca ci: workflows: fix junitparser merge glob pattern
only one --glob should be passed to "junitparser merge"

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-15 20:56:33 +01:00
Leonardo Bispo
df0cb360fa script: trim RTT log data on dictionary parser
The fact that log data captured with RTT has a header, like the
following, impedes the parser to parse the data properly

```
Trying ::1...
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
SEGGER J-Link V8.24 - Real time terminal output
SEGGER J-Trace PRO V4.0, SN=XXXX
Process: JLinkExe
```

Signed-off-by: Leonardo Bispo <l.bispo@live.com>
2025-09-15 14:07:11 -04:00
Yangbo Lu
298ea526c6 samples: net: gptp: add imx943_evk_mimx94398_m33_ddr support
Added imx943_evk_mimx94398_m33_ddr support.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-09-15 14:06:56 -04:00
Yangbo Lu
7e9ed6e579 drivers: ethernet: dsa_nxp_imx_netc: support PTP timestamping
Supported PTP timestamping. Now only gPTP was supported.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-09-15 14:06:56 -04:00
Yangbo Lu
600443a6b1 drivers: ethernet: nxp_imx_netc: support receiving more types frames
Supported receiving more types frames. One was TX timestamp response
frame and the other one is RX timestamped frame which were for switch
port.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-09-15 14:06:56 -04:00
Yangbo Lu
ee6b20e8c2 drivers: ethernet: nxp_imx_netc: handle ports without PTP clock enabled
PTP clock may be enabled per Ethernet port. Especially pseudo port for
switch management does not need PTP clock.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-09-15 14:06:56 -04:00
Yangbo Lu
590d9d1c6f net: dsa: support PTP timestamping in netc tag driver
Supported PTP timestamping in netc tag driver.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-09-15 14:06:56 -04:00
Yangbo Lu
15dc8d78f2 net: pkt: support common usage of control block
Supported common usage of control block for any layer.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-09-15 14:06:56 -04:00
Yangbo Lu
997edb4e13 net: dsa: add PTP solution in core driver
Added PTP solution in core driver. Now only gPTP was supported.

- ethernet_api like get_capabilities and get_ptp_clock
  were supported in port driver.

- For TX timestamp, added new dsa_api port_txtstamp for device
  to handle. Device driver might put pkt in queue, and reported
  timestamp after completing transmitting on hardware.

- For RX timestamp, the timestamp could be given to pkt in tag
  driver or device driver.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-09-15 14:06:56 -04:00
Yangbo Lu
17f4d347fe dts: bindings: dsa: allow ptp-clock property
Allowed ptp-clock property for dsa.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-09-15 14:06:56 -04:00
Yangbo Lu
eabc1b38bf net: dsa: support tagger data and connecting device to tag protocol
Supported tagger data and connecting device to tag protocol, so that some
device specific work could be handled.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-09-15 14:06:56 -04:00
Yangbo Lu
ea6bdfe890 net: dsa: move dsa_tag_netc.h to public include directory
Moved dsa_tag_netc.h to public include directory for devices
reusing.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-09-15 14:06:56 -04:00
Yangbo Lu
bb3b8dff83 west.yml: update hal_nxp to support netc switch ptp
Updated hal_nxp to support netc switch ptp.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-09-15 14:06:56 -04:00
Fabian Pflug
3ef7ec9195 boards: ti: lp_em_cc2340r5: Add support for flash & debug
Adding basic support for flashing and debugging. Not using the XDS110
debugger, as I have non on hand, but just a J-Link.

Signed-off-by: Fabian Pflug <fabian.pflug@gumulka.eu>
2025-09-15 14:06:11 -04:00
Fabian Pflug
5d12b68528 soc: ti: cc23x0: disable .bin generation
The .bin file is huge (>1GB) and will probably not be used by anyone if
there are much smaller alternatives. Because of that, disable it by
default for this soc. There is also no support for generating the
CRC32 checksum for the ccfg section in the binary.

Signed-off-by: Fabian Pflug <fabian.pflug@gumulka.eu>
2025-09-15 14:06:11 -04:00
Fabian Pflug
38b9f1f8a8 soc: ti: cc23x0: Add helper script to calculate crc32
As stated in [0] section 9.2 Customer Configuration:

	There are four different CRCs used to validate the CCFG data.
	One of the CRCs, the user record CRC, is optional and is the
	last four bytes of the 128B user record. The data over which
	the CRC is calculated starts at “Data Start Offset” from Table
	9-2 and ends at the "CRC Offset". CRC field width is 4 bytes.

Meaning the MCU will not start if the CRC fields are not correct.
TI's tools will automagically set these fields, but other tools have to
do it by hand. Therefore a new post-build-command is introduced to set
the fields at least in the .hex file by generating a new _crc32.hex
file.

[0] https://www.ti.com/lit/ug/swcu193a/swcu193a.pdf

Signed-off-by: Fabian Pflug <fabian.pflug@gumulka.eu>
2025-09-15 14:06:11 -04:00
Lucien Zhao
971357495f tests: drivers: sdhc: remove mimxrt700_evk/mimxrt798s/cm33_cpu0
Limited by board design and soc, rt700 sdhc only support 1.8V
output and there is no voltage level translators designed on
board. So sdhc function on rt700 board can't meet SD3.0 compatible.

Remove case as solution.

Signed-off-by: Lucien Zhao <lucien.zhao@nxp.com>
2025-09-15 14:00:43 -04:00
Tarang Patel
0ab226aa38 boards: evk_iris_w1_rw612 enable wifi support
- Enabled WiFi support
- minor fixes in the device tree

Signed-off-by: Tarang Patel <tarang3399.patel@gmail.com>
2025-09-15 14:00:24 -04:00
Sebastian Bøe
411ae81348 MAINTAINERS: Add maintainer and collaborators for nRF IronSide SE
Add maintainers for nordic's IronSide SE.

The IronSide Secure Element provides a root-of-trust and cryptographic
services to nrf54h20 and nrf9280 SoC's.

Signed-off-by: Sebastian Bøe <sebastian.boe@nordicsemi.no>
2025-09-15 14:00:01 -04:00
Jan Kablitz
e93bf00d5d drivers: sensor: st: lis2du12: fix missing power down before sw reset
According to the LIS2DU12 datasheet (p.30), the device must be
inpower-down mode before executing a software reset.
Entering power-down requires setting the ODR field to 0x000.
This commit adds the missing call to set ODR=0x000 before issuing the
reset. Without this step, the sensor does not recover after a controller
reset and only resumes operation after a full power cycle.

Signed-off-by: Jan Kablitz <jan.kablitz@8tronix.de>
2025-09-15 13:59:25 -04:00
Jan Kablitz
b7c971d1d1 drivers: sensor: st: lis2du12: relocate definition of reboot function
Relocate private reboot function to allow ODR configuration before
execution. This will ensure proper power-down sequence prior to software
reset.

Signed-off-by: Jan Kablitz <jan.kablitz@8tronix.de>
2025-09-15 13:59:25 -04:00
Jamie McCrae
271dbb4015 cmake: mcuboot: Add dependency to keys
Adds a dependency that causes CMake to re-configure if the input
key files for MCUboot signing/encryption have changed

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-09-15 13:59:11 -04:00
Robert Lubos
175e14449e net: if: Remove net_if_oper_state build assert
Remove the build assert checking if net_if_oper_state is of unsigned
type. It's generating warnings with clang, and in fact isn't very
useful.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-09-15 13:58:25 -04:00
Benjamin Cabé
a7c7ed805e ci: workflows: assigner.yml: only fetch west.yml on pull_request events
Fixes issue where assigner workflow now fails on issues due to trying
to access a pull_request attribute that doesn't exist on the event.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-15 13:58:13 -04:00
Benjamin Cabé
d4951a1b69 ci: workflows: fix glob pattern syntax for junitparser
Use two glob patterns for dealing with artifacts that might
be sitting at two different levels depending on whether we
downloaded single or multiple artifacts in "Download Artifacts"
step.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-15 13:57:54 -04:00
Mark Wang
67f246477f bluetooth: a2dp: save the reconfig to stream
The reconfig's configuration is not saved to stream, fix it.

Signed-off-by: Mark Wang <yichang.wang@nxp.com>
2025-09-15 14:45:20 +02:00
Mark Wang
0963a8c2de bluetooth: a2dp: add bt_a2dp_stream_create_pdu
use bt_a2dp_stream_create_pdu to create the stream pdu net buf, then
application can use the buf->len to check whether the buf's size exceeds
the l2cap mtu.

Signed-off-by: Mark Wang <yichang.wang@nxp.com>
2025-09-15 14:45:10 +02:00
Jakub Klimczak
b240560310 tests: drivers: build_all: virtio: Add VIRTIO Network device
Add the VIRTIO Network device to the driver build_all test on
qemu_x86_64 (PCI) and qemu_cortex_a53 (MMIO). Additionally,
restrict the test to these two platforms, getting rid of qemu_x86,
as enabling networking would cause build errors on many boards,
including the qemu_x86. Use dashes in node names.

Signed-off-by: Jakub Klimczak <jklimczak@internships.antmicro.com>
2025-09-15 14:44:58 +02:00
Jakub Klimczak
1abfb70439 doc: connectivity: networking: Mention VIRTIO Network device in doc
Add instructions on running echo_server using the VIRTIO Network device
in the QEMU Ethernet documentation.

Signed-off-by: Jakub Klimczak <jklimczak@internships.antmicro.com>
2025-09-15 14:44:58 +02:00
Jakub Klimczak
3433a45d13 samples: net: echo_server: Add files for VIRTIO network device
Create an overlay and a config file for testing the VIRTIO network device.
Add some instructions to the README.rst file as well.
These can be used with any of the networking subsystem samples.

Signed-off-by: Jakub Klimczak <jklimczak@internships.antmicro.com>
2025-09-15 14:44:58 +02:00
Jakub Klimczak
91ac587124 drivers: ethernet: Add VIRTIO Network Device
Add a driver for the VIRTIO Ethernet device.
This is a minimal driver which sets a MAC address and transmits packets,
but does not support any extra features like the control channel or
checksum offloading.
Confirmed to work with the networking subsystem samples. For example, the
zperf sample shows a result of 85 Mbps download and 14 Mbps upload.

Signed-off-by: Jakub Klimczak <jklimczak@internships.antmicro.com>
2025-09-15 14:44:58 +02:00
Rafal Dyla
3cf2627d85 arch: riscv: Support for Direct ISRs for RISCV targets
Added missing features and configuration to support Direct ISRs

Signed-off-by: Rafal Dyla <rafal.dyla@nordicsemi.no>
2025-09-15 14:44:24 +02:00
Anisetti Avinash Krishna
d1425eff11 dts: x86: Added required modifications to support RTC MFD
Added required modifications to dtsi files to support Motorola, mc146818
MFD, Counter, RTC, and BBRAM (for supported devices).

Signed-off-by: Anisetti Avinash Krishna <anisetti.avinash.krishna@intel.com>
2025-09-15 14:44:08 +02:00
Anisetti Avinash Krishna
08b8f3c40d drivers: bbram: Enables bbram driver for motorola, mc146818
Enables bbram driver for motorola, mc146818 under its MFD
to access the RAM of the RTC.

Signed-off-by: Anisetti Avinash Krishna <anisetti.avinash.krishna@intel.com>
2025-09-15 14:44:08 +02:00
Anisetti Avinash Krishna
2b1b3f0934 drivers: counter: Enables support for MFD in counter
Enabled support for MFD in CMOS counter.

Signed-off-by: Anisetti Avinash Krishna <anisetti.avinash.krishna@intel.com>
2025-09-15 14:44:08 +02:00
Anisetti Avinash Krishna
a1f89976d5 drivers: rtc: Enabled MFD support for RTC mc146818
Enabled support for motorola mc146818 RTC driver.

Signed-off-by: Anisetti Avinash Krishna <anisetti.avinash.krishna@intel.com>
2025-09-15 14:44:08 +02:00
Anisetti Avinash Krishna
fbec41494d drivers: mfd: Enabled motorola,mc146818 MFD
Enabled Motorola, mc146818 MFD, which implements RTC
read/write operations and prevents data corruption
by synchronizing these operations.

Signed-off-by: Anisetti Avinash Krishna <anisetti.avinash.krishna@intel.com>
2025-09-15 14:44:08 +02:00
Hake Huang
4c8419b992 twsiter: binary handler: pass verbose setting to west call
pass verbose setting to west call. when the v > 2 west log
will be triggerred

Signed-off-by: Hake Huang <hake.huang@nxp.com>
2025-09-15 14:43:51 +02:00
Mathieu CHOPLAIN
5bef4a9d62 drivers: usb: udc: skeleton: handle special case of set_halt() for EP0
The UDC stack assumes that 'halt' on control endpoints is automatically
cleared by device drivers and never calls udc_ep_clear_halt() for such
endpoints. In practice, most controllers do perform this automatic clear
in hardware, but this requires special handling in udc_ep_set_halt() for
control endpoints (EP0), as setting the 'halted' bit on such endpoints will
lead to the software getting out-of-sync with the hardware.

Update the UDC skeleton driver to handle this edge case and add a comment
documenting the stack's behavior, along with the hardware behavior expected
by the code added to the skeleton driver for it to be functional.

Co-authored-by: Johann Fischer <johann.fischer@nordicsemi.no>
Signed-off-by: Mathieu CHOPLAIN <mathieu.choplain-ext@st.com>
2025-09-15 12:09:32 +02:00
Sebastian Bøe
32c6776256 soc: nordic: uicr: Fix dependency issue
Although not reproducible locally, it has been observed in CI that the
uicr image will not always be the last image to be run.

To ensure it is the last image to be run we have it depend on the
'image' image when defined.

The uicr image is generated based on all other images in the build and
must therefore run last.

Signed-off-by: Sebastian Bøe <sebastian.boe@nordicsemi.no>
2025-09-15 12:09:22 +02:00
Victor Brzeski
de0d8b9655 usb: device_next: cdc_acm: switch irq_lock to spinlock
Change the irq_lock to a spinlock to be more semantically
correct.

Signed-off-by: Victor Brzeski <vbrzeski@gmail.com>
2025-09-15 12:08:53 +02:00
Tomasz Leman
68be678c4b intel_adsp: tlb: Configure HPSRAM retention mode after power transitions
Explicitly configure retention mode when powering up HPSRAM banks to
ensure consistent behavior across hardware platforms.

After D3 power state transitions, the retention mode configuration can
become undefined due to hardware reset. This causes test failures in NVL
FPGA testing environment where the hardware strictly enforces retention
mode settings.

The fix ensures retention mode is properly set in two locations:
- sys_mm_drv_hpsram_pwr(): Configure retention mode for all bank
  power-up operations
- adsp_mm_restore_context(): Explicitly set retention mode during
  D3->D0 restore sequence after each bank is powered up

Signed-off-by: Tomasz Leman <tomasz.m.leman@intel.com>
2025-09-15 12:08:21 +02:00
Tomasz Leman
a1adced1c4 intel_adsp: ace: Remove redundant HPSRAM init from D3 restore
Remove hp_sram_init() call from boot_d3_restore() as it's redundant and
causes TLB access errors. The TLB driver's adsp_mm_restore_context()
already handles all HPSRAM power management and content restoration.

The removed code was attempting to zero memory regions that are
intentionally unmapped by the TLB driver for power optimization, causing
access to disabled TLB entries during D3→D0 transitions.

Additionally, hp_sram_init() powers up all memory banks while the TLB
restore function correctly enables only the banks that were actually
used, maintaining proper power optimization.

Current flow causes errors in simulation which revealed this incorrect
double initialization in test scenarios with minimal firmware
configurations.

Signed-off-by: Tomasz Leman <tomasz.m.leman@intel.com>
2025-09-15 12:08:21 +02:00
Ioannis Damigos
14184017b7 doc/releases: Document deprecation of bt_hci_bus enumeration
Document deprecation of bt_hci_bus enumeration in v4.3
release notes.

Signed-off-by: Ioannis Damigos <ioannis.damigos.uj@renesas.com>
2025-09-15 12:08:04 +02:00
Ioannis Damigos
c71548ccbf include: bluetooth: Deprecate bt_hci_bus enumeration
bt_hci_bus enumeration is not used anymore.
This commit deprecates it.

Signed-off-by: Ioannis Damigos <ioannis.damigos.uj@renesas.com>
2025-09-15 12:08:04 +02:00
Make Shi
b47f5fd88c Bluetooth: AVRCP: Dropping the connection when error response failure
Disconnect the L2CAP connection when fails on sending an error response
(unit info, subunit info, or passthrough).

Signed-off-by: Make Shi <make.shi@nxp.com>
2025-09-15 12:07:30 +02:00
Make Shi
d57cce993e Bluetooth: shell: Add support for AVRCP TG passthrough
Add a callback function in shell and a new command for AVRCP TG
passthrough support

Signed-off-by: Make Shi <make.shi@nxp.com>
2025-09-15 12:07:30 +02:00
Make Shi
0835fdca08 Bluetooth: AVRCP: Implement Pass Through command reception on TG
Add a new callback to support the situation when a Pass Through command
is received, and add an API to respond to the Pass Through command.

Signed-off-by: Make Shi <make.shi@nxp.com>
2025-09-15 12:07:30 +02:00
Make Shi
33406d50c8 Bluetooth: Shell: AVRCP: support subunit info request and response
Add avrcp_subunit_info_req callback function in shell and a command to set
the subunit info response.

Signed-off-by: Make Shi <make.shi@nxp.com>
2025-09-15 12:07:30 +02:00
Make Shi
ae5a380659 Bluetooth: AVRCP: Implement subunit message reception on the AVRCP TG
Add a new callback to support the situation when a subunit info command
is received, and add an API to respond to the subunit info command.

Signed-off-by: Make Shi <make.shi@nxp.com>
2025-09-15 12:07:30 +02:00
Make Shi
21ed38526d Bluetooth: AVCTP: support fragmented packet transmission and reception
- Implemented fragmented packet handling for AVCTP protocol
- Refactored AVCTP header structure to support multiple packet types
- Enhanced AVCTP send logic with packet segmentation support
- Updated AVRCP integration to support new AVCTP fragmented flow

Signed-off-by: Make Shi <make.shi@nxp.com>
2025-09-15 12:07:30 +02:00
Alberto Escolar Piedras
1bc914a565 doc: project_roles: Fix table of permissions wrt admin rights
Release engineers do not need and do not have admin rights.
Let's just fix this table removing that cross.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-09-15 10:31:38 +02:00
Pieter De Gendt
8f7908694a arch: common: nocache.ld: One nocache MPU region
Combine the load and noload cache regions for a single MPU aligned block.
This is required to have an MPU region with a size that is a power of 2.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-09-15 10:31:13 +02:00
Arthur Gay
ef9d9531fd dts: arm: st: stm32h7rs: remove flash controller clock property
Bit 8 of AHB3 is reserved, there is no clock-enable bit for the flash
controller according to the Reference Manual.

Signed-off-by: Arthur Gay <arthur.gay@marshmallow.kids>
2025-09-15 10:30:51 +02:00
Daniel Leung
44cce5968d tests: kernel/smp: disable torture test for Intel audio DSP sim
This sets the run factor for Intel audio DSP simulators to zero.
The simulator is pretty much serialized so SMP switching torture
does not really test concurrent operations, and they are taking
too much time causing timeouts on CI. So sets the run factor to
zero to disable the switch torture test.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
Signed-off-by: Ederson de Souza <ederson.desouza@intel.com>
Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-09-15 10:30:31 +02:00
Flavio Ceolin
181405ffc3 tests: syscalls: Reduce sleep time on Intel audio DSP simulators
Reduce the sleep time in the torture test for Intel audio DSP
simulator. The current amount of time makes this test to take
a long long time to finish causing problems on CI.

Signed-off-by: Flavio Ceolin <flavio.ceolin@intel.com>
Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-09-15 10:30:31 +02:00
Daniel Leung
d7a45a29b0 tests: benchmarks/latency: limit CPU to 1 for Intel ADSP ACE4.0
Due to addition of busy threads running on other cores, and
the simulator runs in single thread bouncing through all cores,
we are wasting quite a bit of time just busy waiting. This makes
each simulator run too long for CI. So limit CPU number to 1.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-09-15 10:30:31 +02:00
Ayush Singh
46a532c065 samples: subsys: logging: dictionary: Disable for pb2 m4
The new I-RAM and D-RAM layout for pb2 m4 is not compatible with
devnull. So do not have the tests for pb2.

Signed-off-by: Ayush Singh <ayush@beagleboard.org>
2025-09-15 10:30:13 +02:00
Ayush Singh
b2ac32254a boards: beagle: pocketbeagle_2: Support splitting code and data section
The M4F allows concurrent fetch for instruction code and data via dedicated
buses (I-Code and D-Code, respectively).

Signed-off-by: Ayush Singh <ayush@beagleboard.org>
2025-09-15 10:30:13 +02:00
Ayush Singh
0a9d6b8441 dts: arm: ti: Unify I-RAM and D-RAM
The MCU_M4FSS has a total of 256KB of SRAM divided into two banks: 192KB
of I-RAM, and 64KB of D-RAM. The I-RAM memory is intended mainly for M4F’s
instruction code, and D-RAM for M4F’s data. The M4F allows
concurrent fetch for instruction code and data via dedicated buses (I-Code
and D-Code, respectively).

The MCU_M4FSS supports unified memory for both banks (I-RAM and D-RAM),
which means instruction code and data can be placed in any bank. Since CM4
converts unaligned accesses into word-aligned accesses internally, cross
RAM access also work fine in unified memory mode.

By having a single parent node for SRAM, we allow both operating modes,
i.e. separate I-RAM and D-RAM and unified SRAM easily.

Also fixed the incorrect D-RAM address.

Signed-off-by: Ayush Singh <ayush@beagleboard.org>
2025-09-15 10:30:13 +02:00
Amneesh Singh
8fd366e2ff dts: am64x: add remaining SPI nodes
Add all the SPI nodes supported by the platform. Currently only main_mcspi0
is present.

Signed-off-by: Amneesh Singh <amneesh@ti.com>
2025-09-15 10:29:56 +02:00
Grzegorz Chwierut
bf2378e36b twister: scripts: sharing of built applications
This feature enables sharing of built applications between test
scenarios, allowing tests to access build artifacts from other
applications.

Signed-off-by: Grzegorz Chwierut <grzegorz.chwierut@nordicsemi.no>
2025-09-15 10:29:40 +02:00
Stefan Giroux
6cb06cdd08 drivers: sam0: dac: add sam0 dac support to samc21 processors
The SAMC21 has a different revision of the DAC peripheral.
This change adds an ifdef to handle the changed SYNCBUSY register.

Signed-off-by: Stefan Giroux <stefan.g@feniex.com>
2025-09-15 10:29:10 +02:00
Stefan Giroux
eb9d5c2e23 dts: atmel: sam0: dac: enable dac driver for SAMC21
This is only present in the SAMC21 soc

Signed-off-by: Stefan Giroux <stefan.g@feniex.com>
2025-09-15 10:29:10 +02:00
Richard Yim
de1673a80b drivers: uhc: uhc_mcux_common: add direction handling for non-setup packets
added logic to determine the direction of USB transfers for non-setup
packets using the endpoint direction. This ensures proper handling of
USB_IN and USB_OUT directions.

Signed-off-by: Richard Yim <richardyim@ami.com>
2025-09-15 10:28:43 +02:00
Anthony Williams
6614a3a9aa sensors: Add missing const to sensor_read_async_mempool
Add missing const on `struct rtio_iodev *iodev`
The blocking version, sensor_read(), as well as
rtio_sqe_prep_read_with_pool() which accepts
struct rtio_iodev are both marked as const.
This function should also be marked const.

Signed-off-by: Anthony Williams <anthony289478@gmail.com>
2025-09-14 21:53:45 +02:00
Chris Friedt
4cac864b35 tests: posix: xsi_single_process: reduce min ram to 16 kiB
The `qemu_cortex_m0/nrf51822` platform only has 16 kiB of RAM. However,
`qemu_cortex_m0` is listed as one of the integration platforms for this
testsuite and the `newlib` test configuration listed a `min_ram` of 24.

Decrease the minimum ram for that platform (universally) down to 16 kiB
so that all of the test configurations can run, thus avoiding the false
positive error condition in twister.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-09-14 21:53:23 +02:00
Chris Friedt
1bccaeea96 arch: arm64: core: include kernel_arch_func.h to mitigate warning
A warning was promoted to error in twister runs due to implicit
declaration of the function `z_arm64_safe_exception_stack_init()`.

Include `kernel_arch_func.h` in `prep_c.c` to mitigate the warning.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-09-14 11:11:21 -04:00
Maciej Kusio
df40dff6fb arch: xtensa: clean up interrupt handling
Simplifying flow of handling interrupts:
- removing all _soc_inthandlers.h
- removing xtensa_intgen*
- removing XTENSA_GEN_HANDLERS Kconfig
- keeping optimized irq detection
- single handler with irq level as parameter

Signed-off-by: Maciej Kusio <rysiof@gmail.com>
2025-09-14 17:02:20 +02:00
Camille BAUD
885329cc1d boards: bflb: Add gpio capability to boards
Adds the gpio entry in supported for tests

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-09-14 17:02:11 +02:00
Camille BAUD
ba00420b01 boards: bflb: ai_wb2_12f: add buttons and leds
add the available button and leds

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-09-14 17:02:11 +02:00
Camille BAUD
b640228691 drivers: gpio: Add BL60x and BL70x GPIO driver
Adds the gpio driver for BL602, 604, 702, 704, 706

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-09-14 17:02:11 +02:00
Camille BAUD
e5384cf791 dts: bflb: Update GPIO nodes for bl70x and bl60x
Rename node to reflect specificity, remove unused

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-09-14 17:02:11 +02:00
Stoyan Bogdanov
84de5b8417 samples: sensors: bme280: Add lp_em_cc2340r5 overlay
Add lp_em_cc2340r5 overlay in bme280 sensors sample.

Signed-off-by: Stoyan Bogdanov <sbogdanov@baylibre.com>
2025-09-13 21:23:34 -04:00
Stoyan Bogdanov
4fbf028ff5 boards: ti: lp_em_cc2340r5: Add I2C support
Enable I2C for TI lp_em_cc2340r5.

Signed-off-by: Stoyan Bogdanov <sbogdanov@baylibre.com>
2025-09-13 21:23:34 -04:00
Stoyan Bogdanov
82e1baae63 dts: arm: ti: cc23x0: Add I2C support
Add support for I2C to cc23x0 SoC.

Signed-off-by: Stoyan Bogdanov <sbogdanov@baylibre.com>
2025-09-13 21:23:34 -04:00
Stoyan Bogdanov
49ef7d460c drivers: i2c: Add support for cc23x0 I2C
Add support for I2C to cc23x0 SoC. Only controller mode is implemented.

Signed-off-by: Stoyan Bogdanov <sbogdanov@baylibre.com>
2025-09-13 21:23:34 -04:00
Ajay Neeli
f74f19e7a4 tests: i2c: i2c_target_api: Add support for kv260
Add overlay for kv260_r5 board in i2c_target_api test case.

For running this test, I2C0 and I2C1 are to be connected on same bus.

Signed-off-by: Ajay Neeli <ajay.neeli@amd.com>
2025-09-13 21:23:19 -04:00
Ajay Neeli
5296e74895 drivers: i2c: cdns: Add support for Target Mode
Add target mode support for Cadence I2C

Signed-off-by: Ajay Neeli <ajay.neeli@amd.com>
2025-09-13 21:23:19 -04:00
Kunihiko Hayashi
29956b0b24 drivers: arm_arch_timer: Move timer enablement after comparison value set
The timer is enabled before comparison value is set, which can lead to
unexpected behavior if the registers contain uninitialized values.

Should call arm_arch_timer_enable() after arm_arch_timer_set_compare().

Signed-off-by: Kunihiko Hayashi <hayashi.kunihiko@socionext.com>
2025-09-13 21:23:06 -04:00
TaiJu Wu
4f61e65193 test: add config to test msgq put front featrue
Add a config `CONFIG_TEST_MSGQ_PUT_FRONT` in mesgq_test to
enable message queue put front feature.

Also, add `test_msgq_pending` to test message queue behavior when
the caller is going to put and put front.

Signed-off-by: TaiJu Wu <tjwu1217@gmail.com>
2025-09-13 21:22:52 -04:00
TaiJu Wu
d361ec9692 kernel: message does not execute correct put front behavior
When the buffer is full, Thread A gets pended (blocked).
If Thread B later calls the get function, it will unpend Thread A,
allowing it to resume and put the message into the queue.
In this situation, we need to know whether Thread A should
continue with put to front or put to end.

In order to resolve this issue, we don't allow set timeout
parameter for `k_msgq_put_front` and this parameter is always
`K_NO_WAIT`.

Signed-off-by: TaiJu Wu <tjwu1217@gmail.com>
2025-09-13 21:22:52 -04:00
Piotr Zierhoffer
2284bc2f3b tests: posix: Increase min_ram for xsi.single_process.newlib
Without this change, running the test for hifive1/fe310_g000 fails when
trying to allocate space for env variables, with `heap size is too
small`.

Signed-off-by: Piotr Zierhoffer <pzierhoffer@antmicro.com>
2025-09-13 21:22:29 -04:00
Rico van Dongen
8bb976ad12 scripts: west_commands: zspdx: re-naming PACKAGE-MANAGER
According to the SPDX specification
PACKAGE-MANAGER should be spelled with a dash not an underscore

Signed-off-by: Rico van Dongen <rdongen@ziggo.nl>
2025-09-13 18:15:24 -04:00
Rico van Dongen
02da120792 scripts: west_commands: zspdx: updating sbom data based on cpe reference
The PackageName, PackageVersionand and PackageSupplier in the generated
SBOM will be updated based on the information passed in the
external-references in the module.yml.
This way packages are better recognized by vulnerability scanning tools
like cve-bin-tool.

Signed-off-by: Rico van Dongen <rdongen@ziggo.nl>
2025-09-13 18:15:24 -04:00
WenBin Zhang
29750ac05d drivers: ethernet: eth_stm32 v1/v2 are placed in separate files
v1/v2 are placed in separate files and prepare to add
asynchronous sending functionality for V2

Signed-off-by: WenBin Zhang <freey7955@gmail.com>
2025-09-13 18:15:10 -04:00
WenBin Zhang
678e226045 drivers: ethernet: rename eth_stm32_hal.c -> eth_stm32_hal_v2.c
Plan to restructure eth_stm32_hal into two files, eth_stm32_v1
and eth_stm32_v2, while retaining the git history of v2.

Signed-off-by: WenBin Zhang <freey7955@gmail.com>
2025-09-13 18:15:10 -04:00
WenBin Zhang
5acec12d92 drivers: ethernet: eth_stm32_hal split v1 and v2
Split the codes of v1 and v2.

V1 supports F1/F2, while v2 supports F4/F7/H5/H7/N6.

This makes it easier to understand and add new functions.

Signed-off-by: WenBin Zhang <freey7955@gmail.com>
2025-09-13 18:15:10 -04:00
Hoang Nguyen
6b4bc9e4fd tests: debug: cpu_load: Extend the CPU load test to arm64
Allow the CPU load test for arm64

Signed-off-by: Hoang Nguyen <hoang.nguyen.jx@bp.renesas.com>
Signed-off-by: Nhut Nguyen <nhut.nguyen.kc@renesas.com>
2025-09-13 18:14:59 -04:00
Hoang Nguyen
1f6dd19462 arch: arm64: cortex_a: Add CPU load for Cortex-A
- Add calls to sys_trace_idle_exit before leaving idle state
  to track CPU load
- Extend CPU_LOAD to CPU_CORTEX_A in Kconfig

Signed-off-by: Hoang Nguyen <hoang.nguyen.jx@bp.renesas.com>
Signed-off-by: Nhut Nguyen <nhut.nguyen.kc@renesas.com>
2025-09-13 18:14:59 -04:00
Mark O'Donovan
1ef961340b boards: opta: revert change of qspi flash spi-bus-width
This fixes writes to the flash, and causes the following sample
code to work again: samples/drivers/spi_flash

Signed-off-by: Mark O'Donovan <shiftee@posteo.net>
2025-09-13 18:14:53 -04:00
Sudan Landge
319c697286 arch: arm: switch to privilege stack in SVC handler
Initialize the privilege stack and switch PSP to it early in the SVC
handler to ensure `z_arm_do_syscall` does not start on a user-accessible
stack frame.

Signed-off-by: Sudan Landge <sudan.landge@arm.com>
2025-09-13 18:14:45 -04:00
Sudan Landge
52151d0b23 boards: arm: mps2: Add dependency to empty_cpu0 for an521/cpu1's app
`west build` does not build the `empty_cpu0` application making
`west build -b mps2/an521/cpu1 -t run` fail because of the missing
empty_cpu0's binary.

Signed-off-by: Sudan Landge <sudan.landge@arm.com>
2025-09-13 18:14:45 -04:00
Sudan Landge
f80bef31ef tests: overwrite return address of stack frame
Introduce a test to overwrite the return address in the exception
stack frame of a lower-priority thread performing an SVC call.

Signed-off-by: Sudan Landge <sudan.landge@arm.com>
2025-09-13 18:14:45 -04:00
Jonas Berg
2a9d10e8ee boards: Add Adafruit Metro RP2040
Product photo from https://learn.adafruit.com/assets/123296
with the license CC BY-SA 3.0

Tested with the samples mentioned in the index.rst page.

Signed-off-by: Jonas Berg <jonas.s.t.berg@gmail.com>
2025-09-13 18:14:38 -04:00
Jonas Berg
d58792d333 boards: Add Waveshare RP2040 Matrix
Product image from https://www.waveshare.com/wiki/RP2040-Matrix

Tested with the samples mentioned in the index.rst page.

Signed-off-by: Jonas Berg <jonas.s.t.berg@gmail.com>
2025-09-13 18:14:29 -04:00
Jaagup Averin
c96dbf48ed llvm: Export CMAKE_GDB during configuration.
Appears that llvm was forgotten when other toolchains
got their CMAKE_GDB export.

Signed-off-by: Jaagup Averin <jaagup.averin@gmail.com>
2025-09-13 18:14:04 -04:00
Jaagup Averin
e22bd1d868 llvm: Get rid of -Wunused-const-variable warnings.
Often the thread k_tid_t value is not referenced for
self-standing threads, and should therefore be allowed
to remain unused.

Signed-off-by: Jaagup Averin <jaagup.averin@gmail.com>
2025-09-13 18:14:04 -04:00
Jaagup Averin
ac0387448e llvm: Remove "-Wno-volatile" from clang compiler args.
-Wno-volatile is set by gcc/compiler_flags.cmake,
but is not supported by clang and generated warnings.

Signed-off-by: Jaagup Averin <jaagup.averin@gmail.com>
2025-09-13 18:14:04 -04:00
Jaagup Averin
a2c55e01a8 llvm: Reorganize clang/compiler_flags.cmake
Since this overrides values from gcc/compiler_flags.cmake,
they should ideally have the same structure and order.

Signed-off-by: Jaagup Averin <jaagup.averin@gmail.com>
2025-09-13 18:14:04 -04:00
Simen S. Røstad
c2575c53f4 fs: fcb: Increase type for max sectors
Increase type for max sectors

Signed-off-by: Simen S. Røstad <simen.rostad@nordicsemi.no>
2025-09-13 18:13:57 -04:00
Jamie McCrae
c620646ec5 boards: arm: Select TF-M symbols via Kconfig instead of defconfig
This forces a build to fail should it select a symbol that cannot
be selected (if the prerequisites cannot be met) instead of
silently ignoring it and allowing an invalid build to complete

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-09-13 18:13:49 -04:00
Piotr Zierhoffer
afa90796b9 tests: benchmarks: Increase min_ram for benchmark.thread_metric.interrupt
Similarly to #95242, Twister attempts to run this test on HiFive1,
failing with `heap size is too small` on allocation attempt.

Signed-off-by: Piotr Zierhoffer <pzierhoffer@antmicro.com>
2025-09-13 18:13:40 -04:00
Arunprasath P
5d6eb95960 boards: microchip: add PIC32CM JH01 Curiosity Pro Evaluation Kit support
Add initial support for the Microchip PIC32CM JH01 Curiosity Pro board

Product page: https://www.microchip.com/en-us/development-tool/ev81x90a

Signed-off-by: Arunprasath P <arunprasath.p@microchip.com>
2025-09-13 18:13:33 -04:00
Mohamed Azhar
17b97851ff drivers: gpio: microchip: add gpio driver for Port G1 IP
Add gpio driver for Microchip Port G1 Peripheral IPs

Signed-off-by: Mohamed Azhar <mohamed.azhar@microchip.com>
2025-09-13 18:13:33 -04:00
Muhammed Asif
6c0c690154 dts: gpio: microchip: add gpio dts node and bindings for Port g1 IPs
Add gpio binding file for Microchip Port g1 IPs and
add gpio node in dtsi files.

Signed-off-by: Muhammed Asif <muhammed.asif@microchip.com>
Signed-off-by: Mohamed Azhar <mohamed.azhar@microchip.com>
2025-09-13 18:13:33 -04:00
Arunprasath P
df2a0e53ff soc: microchip: add support for PIC32CM JH SoC series
Adds initial SoC-level support for the Microchip
PIC32CM JH series, including SoC definition files.

Signed-off-by: Arunprasath P <arunprasath.p@microchip.com>
2025-09-13 18:13:33 -04:00
Arunprasath P
2cb6e1ee42 dts: arm: microchip: add dtsi files for Microchip PIC32CM JH SoC series
Adds common and SoC-specific .dtsi files for the Microchip
PIC32CM JH family. These files define core peripherals,
address maps, and interrupt controller structure shared
across the PIC32CM JH variants.

Signed-off-by: Arunprasath P <arunprasath.p@microchip.com>
2025-09-13 18:13:33 -04:00
Arunprasath P
7559dd87e5 modules: microchip: update west.yml and modules
update west.yml for pic32cm_jh family DFP and extended with
a new Kconfig symbol for PIC32C support.

Signed-off-by: Arunprasath P <arunprasath.p@microchip.com>
2025-09-13 18:13:33 -04:00
Jukka Rissanen
909710b598 net: context: Make sure TCP allocation is not leaked
If we have allocated a TCP connection, and if after that
we get an error like EADDRINUSE, then we must de-allocate
the TCP connection otherwise there is a buffer leak.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-09-13 18:13:21 -04:00
Fabio Baltieri
8e78fad8ce doc: release-notes: clarify where api changes go
API changes should be in the migration guide, release notes has
everything else, that is deprecated, removed and new. Add a note to
reflect that and avoid confusion.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2025-09-13 18:13:13 -04:00
Felipe Torrezan
6acd67049e boards: IAR STMF429II-ACA documentation fixes
- Fix STM32F429II packaging information
- Fix blinky's outcome description when flashing the board
- Refactor the `flashing` section, including supported runners

Signed-off-by: Felipe Torrezan <felipe.torrezan@iar.com>
2025-09-13 18:12:44 -04:00
Hake Huang
504fb0158f doc: scripts: display_harness: update document on installation
add Installation Guide section

Signed-off-by: Hake Huang <hake.huang@nxp.com>
2025-09-13 11:21:53 -04:00
Hake Huang
44fee2ae9a tests: display: display_check: add test time and enable mimxrt1170
enable mimxrt1170_evk@A
add timeout, as for big screen, the fist step takes a long time

Signed-off-by: Hake Huang <hake.huang@oss.nxp.com>
2025-09-13 11:21:53 -04:00
Hake Huang
2d8a6d23f8 tests: display: support headless mode
for test machine without display, need support open-cv-headless mode.

1. support headless mode
2. add parser for environment path

Signed-off-by: Hake Huang <hake.huang@oss.nxp.com>
2025-09-13 11:21:53 -04:00
Alberto Escolar Piedras
1d6da40624 lib: os: clock: Fix possibly unitialized variable warning
When building with high optimization level, the compiler thinks
duration may be used initialized and warns as much.

Let's initialize this variable always to ensure it does not happen
and with it pacify the compiler.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-09-13 09:37:19 +02:00
Yangbo Lu
83165ec6ae MAINTAINERS: add Networking DSA area
Added Networking DSA area, and added yangbolu1991 and JiafeiPan
as maintainers.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-09-13 09:37:02 +02:00
Benjamin Cabé
ced0cc307d ci: manifest: SHA pin west in manifest.yml workflow
Ensure we install a fully pinned west version, including requiring
hashes for all dependencies.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-12 19:24:27 -04:00
Raffael Rostagno
090f8db9d1 tests: drivers: esp32h2: Add config
Add test config for the following drivers:

- ADC
- CAN
- LEDC PWM
- MCPWM
- SPI
- DMA

Signed-off-by: Raffael Rostagno <raffael.rostagno@espressif.com>
2025-09-12 19:23:59 -04:00
Raffael Rostagno
f3a54fccb3 boards: esp32h2_devkitm: Add peripherals
Add board configs for the following peripherals:

- ADC
- I2C
- I2S
- LEDC PWM
- MCPWM
- DMA
- TWAI

Signed-off-by: Raffael Rostagno <raffael.rostagno@espressif.com>
2025-09-12 19:23:59 -04:00
Fabio Baltieri
3a78b8ad01 github: hello_world_multiplatform: run on Ubuntu ARM
Add ubuntu-24.04-arm to the list of runners, while this runner is still
flagged as being in beta, it's been around for more than one year and
has been running for quite a long time in the action-zephyr-setup
repository with no problems.

Adding it to the list so we get some coverage of the Linux/ARM toolchain
and setup, easy enough to get rid of it if it causes problems.

Link: https://github.com/actions/partner-runner-images/
Link: https://github.blog/changelog/2024-06-24-github-actions-ubuntu-24-04-image-now-available-for-arm64-runners/
Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2025-09-12 19:23:26 -04:00
Kyle Micallef Bonnici
193013a6fe devicetree: format SoC-level files in dts/xtensa
Applying dts-linter results for SoC-level files in

dts/xtensa

Signed-off-by: Kyle Micallef Bonnici <kylebonnici@hotmail.com>
2025-09-12 19:23:13 -04:00
Kyle Micallef Bonnici
9f19763bfd devicetree: format SoC-level files in dts/riscv
Applying dts-linter results for SoC-level files in

dts/riscv

Signed-off-by: Kyle Micallef Bonnici <kylebonnici@hotmail.com>
2025-09-12 19:23:13 -04:00
Kyle Micallef Bonnici
905b9f9913 devicetree: format SoC-level files in dts/common
Applying dts-linter results for SoC-level files in

dts/common

Signed-off-by: Kyle Micallef Bonnici <kylebonnici@hotmail.com>
2025-09-12 19:23:13 -04:00
Kyle Micallef Bonnici
46250685fc devicetree: format SoC-level files in dts/arm
Applying dts-linter results for SoC-level files in

dts/arm

Signed-off-by: Kyle Micallef Bonnici <kylebonnici@hotmail.com>
2025-09-12 19:23:13 -04:00
Kyle Micallef Bonnici
e85a7978f5 devicetree: format files in dts/xtensa/nxp
Applying dts-linter results for files in

dts/xtensa/nxp

Signed-off-by: Kyle Micallef Bonnici <kylebonnici@hotmail.com>
2025-09-12 19:23:13 -04:00
Kyle Micallef Bonnici
1957998928 devicetree: format files in dts/xtensa/intel
Applying dts-linter results for files in

dts/xtensa/intel

Signed-off-by: Kyle Micallef Bonnici <kylebonnici@hotmail.com>
2025-09-12 19:23:13 -04:00
Kyle Micallef Bonnici
e1b842bed7 devicetree: format files in dts/xtensa/espressif
Applying dts-linter results for files in

dts/xtensa/espressif

Signed-off-by: Kyle Micallef Bonnici <kylebonnici@hotmail.com>
2025-09-12 19:23:13 -04:00
Kyle Micallef Bonnici
77309fe9d2 devicetree: format files in dts/x86/intel
Applying dts-linter results for files in

dts/x86/intel

Signed-off-by: Kyle Micallef Bonnici <kylebonnici@hotmail.com>
2025-09-12 19:23:13 -04:00
Kyle Micallef Bonnici
eb4bdabfe7 devicetree: format files in dts/vendor/ti
Applying dts-linter results for files in

dts/vendor/ti

Signed-off-by: Kyle Micallef Bonnici <kylebonnici@hotmail.com>
2025-09-12 19:23:13 -04:00
Kyle Micallef Bonnici
bfa0cea76e devicetree: format files in dts/vendor/raspberrypi
Applying dts-linter results for files in

dts/vendor/raspberrypi

Signed-off-by: Kyle Micallef Bonnici <kylebonnici@hotmail.com>
2025-09-12 19:23:13 -04:00
Kyle Micallef Bonnici
12dcedf6de devicetree: format files in dts/vendor/nordic
Applying dts-linter results for files in

dts/vendor/nordic

Signed-off-by: Kyle Micallef Bonnici <kylebonnici@hotmail.com>
2025-09-12 19:23:13 -04:00
Kyle Micallef Bonnici
6388f3c369 devicetree: format files in dts/vendor/broadcom
Applying dts-linter results for files in

dts/vendor/broadcom

Signed-off-by: Kyle Micallef Bonnici <kylebonnici@hotmail.com>
2025-09-12 19:23:13 -04:00
Kyle Micallef Bonnici
27d3c77166 devicetree: format files in dts/vendor/amd
Applying dts-linter results for files in

dts/vendor/amd

Signed-off-by: Kyle Micallef Bonnici <kylebonnici@hotmail.com>
2025-09-12 19:23:13 -04:00
Kyle Micallef Bonnici
1f1f1f4176 devicetree: format files in dts/rx/renesas
Applying dts-linter results for files in

dts/rx/renesas

Signed-off-by: Kyle Micallef Bonnici <kylebonnici@hotmail.com>
2025-09-12 19:23:13 -04:00
Kyle Micallef Bonnici
b419c514b6 devicetree: format files in dts/riscv/wch
Applying dts-linter results for files in

dts/riscv/wch

Signed-off-by: Kyle Micallef Bonnici <kylebonnici@hotmail.com>
2025-09-12 19:23:13 -04:00
Kyle Micallef Bonnici
81679451ec devicetree: format files in dts/riscv/telink
Applying dts-linter results for files in

dts/riscv/telink

Signed-off-by: Kyle Micallef Bonnici <kylebonnici@hotmail.com>
2025-09-12 19:23:13 -04:00
Kyle Micallef Bonnici
c52ced12b6 devicetree: format files in dts/riscv/starfive
Applying dts-linter results for files in

dts/riscv/starfive

Signed-off-by: Kyle Micallef Bonnici <kylebonnici@hotmail.com>
2025-09-12 19:23:13 -04:00
Kyle Micallef Bonnici
8019bce857 devicetree: format files in dts/riscv/sifive
Applying dts-linter results for files in

dts/riscv/sifive

Signed-off-by: Kyle Micallef Bonnici <kylebonnici@hotmail.com>
2025-09-12 19:23:13 -04:00
Kyle Micallef Bonnici
2a120b5588 devicetree: format files in dts/riscv/sensry
Applying dts-linter results for files in

dts/riscv/sensry

Signed-off-by: Kyle Micallef Bonnici <kylebonnici@hotmail.com>
2025-09-12 19:23:13 -04:00
Kyle Micallef Bonnici
64207962fc devicetree: format files in dts/riscv/qemu
Applying dts-linter results for files in

dts/riscv/qemu

Signed-off-by: Kyle Micallef Bonnici <kylebonnici@hotmail.com>
2025-09-12 19:23:13 -04:00
Kyle Micallef Bonnici
b0840d2e63 devicetree: format files in dts/riscv/openisa
Applying dts-linter results for files in

dts/riscv/openisa

Signed-off-by: Kyle Micallef Bonnici <kylebonnici@hotmail.com>
2025-09-12 19:23:13 -04:00
Kyle Micallef Bonnici
495baba6fd devicetree: format files in dts/riscv/openhwgroup
Applying dts-linter results for files in

dts/riscv/openhwgroup

Signed-off-by: Kyle Micallef Bonnici <kylebonnici@hotmail.com>
2025-09-12 19:23:13 -04:00
Kyle Micallef Bonnici
224c97bb0f devicetree: format files in dts/riscv/nordic
Applying dts-linter results for files in

dts/riscv/nordic

Signed-off-by: Kyle Micallef Bonnici <kylebonnici@hotmail.com>
2025-09-12 19:23:13 -04:00
Kyle Micallef Bonnici
08a07b841b devicetree: format files in dts/riscv/niosv
Applying dts-linter results for files in

dts/riscv/niosv

Signed-off-by: Kyle Micallef Bonnici <kylebonnici@hotmail.com>
2025-09-12 19:23:13 -04:00
Kyle Micallef Bonnici
13e0fa4653 devicetree: format files in dts/riscv/microchip
Applying dts-linter results for files in

dts/riscv/microchip

Signed-off-by: Kyle Micallef Bonnici <kylebonnici@hotmail.com>
2025-09-12 19:23:13 -04:00
Kyle Micallef Bonnici
c6bda076b3 devicetree: format files in dts/riscv/lowrisc
Applying dts-linter results for files in

dts/riscv/lowrisc

Signed-off-by: Kyle Micallef Bonnici <kylebonnici@hotmail.com>
2025-09-12 19:23:13 -04:00
Kyle Micallef Bonnici
e7cb1f291b devicetree: format files in dts/riscv/ite
Applying dts-linter results for files in

dts/riscv/ite

Signed-off-by: Kyle Micallef Bonnici <kylebonnici@hotmail.com>
2025-09-12 19:23:13 -04:00
Kyle Micallef Bonnici
b8e1165d45 devicetree: format files in dts/riscv/gd
Applying dts-linter results for files in

dts/riscv/gd

Signed-off-by: Kyle Micallef Bonnici <kylebonnici@hotmail.com>
2025-09-12 19:23:13 -04:00
Kyle Micallef Bonnici
700bc8a7fa devicetree: format files in dts/riscv/espressif
Applying dts-linter results for files in

dts/riscv/espressif

Signed-off-by: Kyle Micallef Bonnici <kylebonnici@hotmail.com>
2025-09-12 19:23:13 -04:00
Kyle Micallef Bonnici
184f5ec1ec devicetree: format files in dts/riscv/efinix
Applying dts-linter results for files in

dts/riscv/efinix

Signed-off-by: Kyle Micallef Bonnici <kylebonnici@hotmail.com>
2025-09-12 19:23:13 -04:00
Kyle Micallef Bonnici
db10f20e5d devicetree: format files in dts/riscv/bflb
Applying dts-linter results for files in

dts/riscv/bflb

Signed-off-by: Kyle Micallef Bonnici <kylebonnici@hotmail.com>
2025-09-12 19:23:13 -04:00
Kyle Micallef Bonnici
6627ef9546 devicetree: format files in dts/arm64/ti
Applying dts-linter results for files in

dts/arm64/ti

Signed-off-by: Kyle Micallef Bonnici <kylebonnici@hotmail.com>
2025-09-12 19:23:13 -04:00
Kyle Micallef Bonnici
42ea47394f devicetree: format files in dts/arm64/rockchip
Applying dts-linter results for files in

dts/arm64/rockchip

Signed-off-by: Kyle Micallef Bonnici <kylebonnici@hotmail.com>
2025-09-12 19:23:13 -04:00
Kyle Micallef Bonnici
a3e2f877da devicetree: format files in dts/arm64/renesas
Applying dts-linter results for files in

dts/arm64/renesas

Signed-off-by: Kyle Micallef Bonnici <kylebonnici@hotmail.com>
2025-09-12 19:23:13 -04:00
Kyle Micallef Bonnici
b4147a4573 devicetree: format files in dts/arm64/qemu
Applying dts-linter results for files in

dts/arm64/qemu

Signed-off-by: Kyle Micallef Bonnici <kylebonnici@hotmail.com>
2025-09-12 19:23:13 -04:00
Kyle Micallef Bonnici
194598d545 devicetree: format files in dts/arm64/nxp
Applying dts-linter results for files in

dts/arm64/nxp

Signed-off-by: Kyle Micallef Bonnici <kylebonnici@hotmail.com>
2025-09-12 19:23:13 -04:00
Kyle Micallef Bonnici
dce724c083 devicetree: format files in dts/arm64/intel
Applying dts-linter results for files in

dts/arm64/intel

Signed-off-by: Kyle Micallef Bonnici <kylebonnici@hotmail.com>
2025-09-12 19:23:13 -04:00
Kyle Micallef Bonnici
8bbd71f105 devicetree: format files in dts/arm64/broadcom
Applying dts-linter results for files in

dts/arm64/broadcom

Signed-off-by: Kyle Micallef Bonnici <kylebonnici@hotmail.com>
2025-09-12 19:23:13 -04:00
Kyle Micallef Bonnici
86b8da8347 devicetree: format files in dts/arm/xilinx
Applying dts-linter results for files in

dts/arm/xilinx

Signed-off-by: Kyle Micallef Bonnici <kylebonnici@hotmail.com>
2025-09-12 19:23:13 -04:00
Kyle Micallef Bonnici
3d32c919be devicetree: format files in dts/arm/we
Applying dts-linter results for files in

dts/arm/we

Signed-off-by: Kyle Micallef Bonnici <kylebonnici@hotmail.com>
2025-09-12 19:23:13 -04:00
Kyle Micallef Bonnici
0ac38950ec devicetree: format files in dts/arm/ti
Applying dts-linter results for files in

dts/arm/ti

Signed-off-by: Kyle Micallef Bonnici <kylebonnici@hotmail.com>
2025-09-12 19:23:13 -04:00
Kyle Micallef Bonnici
aac46ae234 devicetree: format files in dts/arm/st
Applying dts-linter results for files in

dts/arm/st

Signed-off-by: Kyle Micallef Bonnici <kylebonnici@hotmail.com>
2025-09-12 19:23:13 -04:00
Kyle Micallef Bonnici
a48f8a0e65 devicetree: format files in dts/arm/silabs
Applying dts-linter results for files in

dts/arm/silabs

Signed-off-by: Kyle Micallef Bonnici <kylebonnici@hotmail.com>
2025-09-12 19:23:13 -04:00
Kyle Micallef Bonnici
13c56b8a93 devicetree: format files in dts/arm/seeed_studio
Applying dts-linter results for files in

dts/arm/seeed_studio

Signed-off-by: Kyle Micallef Bonnici <kylebonnici@hotmail.com>
2025-09-12 19:23:13 -04:00
Kyle Micallef Bonnici
1cdd4b3c49 devicetree: format files in dts/arm/renesas
Applying dts-linter results for files in

dts/arm/renesas

Signed-off-by: Kyle Micallef Bonnici <kylebonnici@hotmail.com>
2025-09-12 19:23:13 -04:00
Kyle Micallef Bonnici
55831a5fe5 devicetree: format files in dts/arm/realtek
Applying dts-linter results for files in

dts/arm/realtek

Signed-off-by: Kyle Micallef Bonnici <kylebonnici@hotmail.com>
2025-09-12 19:23:13 -04:00
Kyle Micallef Bonnici
5390a0e61b devicetree: format files in dts/arm/raspberrypi
Applying dts-linter results for files in

dts/arm/raspberrypi

Signed-off-by: Kyle Micallef Bonnici <kylebonnici@hotmail.com>
2025-09-12 19:23:13 -04:00
Kyle Micallef Bonnici
6919021bd7 devicetree: format files in dts/arm/rakwireless
Applying dts-linter results for files in

dts/arm/rakwireless

Signed-off-by: Kyle Micallef Bonnici <kylebonnici@hotmail.com>
2025-09-12 19:23:13 -04:00
Kyle Micallef Bonnici
96a61bb2c7 devicetree: format files in dts/arm/olimex
Applying dts-linter results for files in

dts/arm/olimex

Signed-off-by: Kyle Micallef Bonnici <kylebonnici@hotmail.com>
2025-09-12 19:23:13 -04:00
Kyle Micallef Bonnici
1c079080f0 devicetree: format files in dts/arm/nxp
Applying dts-linter results for files in

dts/arm/nxp

Signed-off-by: Kyle Micallef Bonnici <kylebonnici@hotmail.com>
2025-09-12 19:23:13 -04:00
Kyle Micallef Bonnici
d3b103993c devicetree: format files in dts/arm/nuvoton
Applying dts-linter results for files in

dts/arm/nuvoton

Signed-off-by: Kyle Micallef Bonnici <kylebonnici@hotmail.com>
2025-09-12 19:23:13 -04:00
Kyle Micallef Bonnici
51d5135fd7 devicetree: format files in dts/arm/nordic
Applying dts-linter results for files in

dts/arm/nordic

Signed-off-by: Kyle Micallef Bonnici <kylebonnici@hotmail.com>
2025-09-12 19:23:13 -04:00
Kyle Micallef Bonnici
f2ad5062b7 devicetree: format files in dts/arm/microchip
Applying dts-linter results for files in

dts/arm/microchip

Signed-off-by: Kyle Micallef Bonnici <kylebonnici@hotmail.com>
2025-09-12 19:23:13 -04:00
Kyle Micallef Bonnici
c0f9b050b9 devicetree: format dts/arm/intel_socfpga_std
Applying dts-linter results for files in

dts/arm/intel_socfpga_std

Signed-off-by: Kyle Micallef Bonnici <kylebonnici@hotmail.com>
2025-09-12 19:23:13 -04:00
Kyle Micallef Bonnici
b60420a9fe devicetree: format files in dts/arm/infineon
Applying dts-linter results for files in

dts/arm/infineon

Signed-off-by: Kyle Micallef Bonnici <kylebonnici@hotmail.com>
2025-09-12 19:23:13 -04:00
Kyle Micallef Bonnici
b24893e605 devicetree: format files in dts/arm/gd
Applying dts-linter results for files in

dts/arm/gd

Signed-off-by: Kyle Micallef Bonnici <kylebonnici@hotmail.com>
2025-09-12 19:23:13 -04:00
Kyle Micallef Bonnici
1bc78356fd devicetree: format files in dts/arm/ene
Applying dts-linter results for files in

dts/arm/ene

Signed-off-by: Kyle Micallef Bonnici <kylebonnici@hotmail.com>
2025-09-12 19:23:13 -04:00
Kyle Micallef Bonnici
33747fd529 devicetree: format files in dts/arm/atmel
Applying dts-linter results for files in

dts/arm/atmel

Signed-off-by: Kyle Micallef Bonnici <kylebonnici@hotmail.com>
2025-09-12 19:23:13 -04:00
Kyle Micallef Bonnici
e0c9ac5935 devicetree: format files in dts/arm/aspeed
Applying dts-linter results for files in

dts/arm/aspeed

Signed-off-by: Kyle Micallef Bonnici <kylebonnici@hotmail.com>
2025-09-12 19:23:13 -04:00
Kyle Micallef Bonnici
98e9d56e23 devicetree: format files in dts/arm/ambiq
Applying dts-linter results for files in

dts/arm/ambiq

Signed-off-by: Kyle Micallef Bonnici <kylebonnici@hotmail.com>
2025-09-12 19:23:13 -04:00
Kyle Micallef Bonnici
8a2ab8e701 devicetree: format files in dts/arm/adi
Applying dts-linter results for files in

dts/arm/adi

Signed-off-by: Kyle Micallef Bonnici <kylebonnici@hotmail.com>
2025-09-12 19:23:13 -04:00
Kyle Micallef Bonnici
28527ace52 devicetree: format files in dts/arm/acsip
Applying dts-linter results for files in

dts/arm/acsip

Signed-off-by: Kyle Micallef Bonnici <kylebonnici@hotmail.com>
2025-09-12 19:23:13 -04:00
Kyle Micallef Bonnici
bc2eb232ef devicetree: format files in dts/arc/synopsys
Applying dts-linter results for files in

dts/arc/synopsys

Signed-off-by: Kyle Micallef Bonnici <kylebonnici@hotmail.com>
2025-09-12 19:23:13 -04:00
Anders Bjørn Nedergaard
18bff321be drivers: sensor: temperature: Add i.MX RT die temperature sensor
Added driver for i.MX RT118X die temperature sensor

Signed-off-by: Anders Bjørn Nedergaard <abn@polytech.com>
2025-09-12 16:06:31 -04:00
Anders Bjørn Nedergaard
5a82f46b6c dts: bindings: Add nxp i.MX RT die temperature binding
Added die temperature binding for i.MX RT 118X

Signed-off-by: Anders Bjørn Nedergaard <abn@polytech.com>
2025-09-12 16:06:31 -04:00
Anas Nashif
28feffbb45 MAINTAINERS: change label for MAINTAINERS.yml
Process is too general, make this more direct and visible in PRs.

Also add related script to the area.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-09-12 16:06:17 -04:00
Gaetan Perrot
13b388064f boards: scobc_a1: Fix typo in OpenOCD config comment
The board support file `scobc-a1.cfg` contained a typo in the
default interface comment.

"Default CMIS-DAP" → "Default CMSIS-DAP"

This fixes the spelling of CMSIS-DAP to match the actual
debug interface.

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2025-09-12 16:05:55 -04:00
Matthias Hauser
5d0644627f drivers: sensor: include z-axis in Anymotion interrupt on the BMI270
include z-axis in Anymotion interrupt on the BMI270

Signed-off-by: Matthias Hauser <Matthias.Hauser@we-online.de>
2025-09-12 16:05:40 -04:00
Khanh Nguyen
90ef9c3685 tests: drivers: dma: support ztest for DMA driver on RA boards
Add .overlay and .conf files for Renesas RA boards to enable
ztest for the DMA driver in:
- tests/drivers/dma/chan_blen_transfer
- tests/drivers/dma/loop_transfer

Signed-off-by: Khanh Nguyen <khanh.nguyen.wz@bp.renesas.com>
2025-09-12 14:23:37 -04:00
Khanh Nguyen
084b89eceb dts: arm: renesas: ra: add DMA node for RA SoCs
Add DMA controller nodes for the RA4, RA6, and RA8 SoCs

Signed-off-by: Khanh Nguyen <khanh.nguyen.wz@bp.renesas.com>
2025-09-12 14:23:37 -04:00
Khanh Nguyen
bc15acc0fa drivers: dma: add support for Renesas RA DMAC driver
Add support for the Renesas RA Direct Memory Access Controller,
including driver source files, Kconfig options, and DTS bindings.

- Add initial implementation of the RA DMAC driver
- Add dedicated Kconfig and CMake integration
- Provide Devicetree bindings for the RA DMAC
- Update module Kconfig to include the new driver

This enables DMA functionality on Renesas RA series MCUs.

Signed-off-by: Khanh Nguyen <khanh.nguyen.wz@bp.renesas.com>
2025-09-12 14:23:37 -04:00
Anas Nashif
eace70cce6 scripts: set_assigner: fix python lint issues
Fix various issues detected by ruff and remove exclusion of file.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-09-12 14:23:25 -04:00
Anas Nashif
0c715dde08 scripts/set_assignees.py: set assignee on manifest changes
Parse manifest for changes and set assignees for any manifest entries
that have changed.

Other changes:
- Do not assign to meta area when additional areas are being changed
- Cleanup of unused code
- Comment where comments are needed.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-09-12 14:23:25 -04:00
Anas Nashif
06f29aabc9 scripts/get_maintainer.py: find area by name
Find an area by name.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-09-12 14:23:25 -04:00
Benjamin Cabé
b1c7f9c126 scripts: do not install/recommend vulnerable python packages
requests < 2.32.4 is subject to GHSA-9hjg-9r4m-mvj7
pyyaml < 5.4 is subject to GHSA-8q59-q68h-6hv4
pyyaml < 5.1 is subject to GHSA-rprw-h62v-c2w7
protobuf < 5.29.5 is subject to GHSA-8qvm-5x2c-j2w7

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-12 14:23:18 -04:00
Benjamin Cabé
37f1c2e279 doc: refresh pinned requirements.txt file
Dependabot automatic pull requests keep wanting to downgrade Sphinx to
8.1.3 so do a manual update of the pinned requirements.txt file that
does not do that (and yet pulls up-to-date versions of the other
dependencies) until we figure out what is wrong.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-12 14:23:18 -04:00
Pete Johanson
f51ba58dfd drivers: serial: Fix TX of single byte on MAX32.
MAX32 UART's "almost empty" fires when the FIFO gets down to one byte, but
when sending just one byte, no interrupt is raised, resulting in stalled
TX. Use a timer to ensure the ISR is invoked and TX processing continues in
that scenario.

Signed-off-by: Pete Johanson <pete.johanson@analog.com>
2025-09-12 14:22:55 -04:00
Pete Johanson
40b2113a42 tests: drivers: uart: Add uart interrupt API test
Add a specific interrupt API test, that tests sending different size
payloads with the interrupt API to try to catch edge cases.

Signed-off-by: Pete Johanson <pete.johanson@analog.com>
2025-09-12 14:22:55 -04:00
Miguel Gazquez
915b34e4ae scripts: west_commands: fix typo in west sdk install help message
The help message for the option '-d'/'--instal-dir' of 'west sdk
install' incorrectly use '-b' in its help message.
Fix the typo by using '-d'.

Signed-off-by: Miguel Gazquez <miguel.gazquez@bootlin.com>
2025-09-12 14:22:20 -04:00
Riadh Ghaddab
a4f5d9fb31 drivers: flash: nrf_rram: add support for RRAM throttling
Some applications need to throttle RRAM writes to handle peak current
management.
Add CONFIG_NRF_RRAM_THROTTLING_DATA_BLOCK which defines the maximum
chunk length that can be written at once.
Add CONFIG_NRF_RRAM_THROTTLING_DELAY which configures the sleep delay in
microseconds after each write.

Signed-off-by: Riadh Ghaddab <riadh.ghaddab@nordicsemi.no>
2025-09-12 18:32:23 +02:00
Marek Maškarinec
64984bb618 soc: st: Add stm32l083xx
Add stm32l083xx SoC variants that are similar to stm32l073xx with an added
AES accelerator.

Signed-off-by: Marek Maškarinec <marek.maskarinec@hardwario.com>
2025-09-12 18:31:55 +02:00
Georgios Vasilakis
53b2802fff net: websocket: Allow using PSA APIs to calculate SHA1
The websocket used mbedtls functions to calculate the
SHA1 needed. Update the code to use PSA crypto calls instead
when the configuration CONFIG_MBEDTLS_PSA_CRYPTO_CLIENT
is enabled.

This can be useful for applications which use TF-M
since it only provides PSA crypto APIs.

Also check the error code from the mbedtls_sha1
call since it can fail and it was not checked before.

Signed-off-by: Georgios Vasilakis <georgios.vasilakis@nordicsemi.no>
2025-09-12 18:31:04 +02:00
Andre Heinemans
45abb7215c drivers: nxp: flash_mcux_flexspi: fix id check on octal spi
The jedec-id cannot be read after flash device is set to octal mode.
Fixed by moving the jedec-id comparison to
flash_flexspi_nor_check_jedec() which already reads the jedec-id when
flash device is still in single spi mode.

Signed-off-by: Andre Heinemans <andre.heinemans@nxp.com>
2025-09-12 18:30:44 +02:00
Adib Taraben
27711e69d3 eth_nxp_enet_qos_mac: adapt MAC configuration to actual PHY link speed
This adjust the MAC CONFIGURATION register settings to 10MBit/s if needed.
The reduction is needed for 10MBit only PHYs.

Signed-off-by: Adib Taraben <theadib@gmail.com>
2025-09-12 18:30:30 +02:00
Kyle Micallef Bonnici
2d22884f52 devicetree: format files in boards
Applying dts-linter results for format files in boards

Signed-off-by: Kyle Micallef Bonnici <kylebonnici@hotmail.com>
2025-09-12 18:29:00 +02:00
Armin Kessler
85ad69d491 drivers: video: esp32: add selection api
Forward get/set selection to the camera source and update the driver's
video_format on set so buffer sizing and streaming follow the selected
region.

Signed-off-by: Armin Kessler <ake@espros.com>
2025-09-12 14:03:45 +01:00
Vit Stanicek
84373c4c64 soc: mimxrt685s/hifi4: Fix HW cycle count
Change hardware cycle count (CONFIG_SYS_CLOCK_HW_CYCLES_PER_SEC) to 594
MHz. Move that value to the SoC layer's DT.

Validated with the amp_blinky example - the period of the blinking LED
is exactly 2 seconds, like was programmed.

Signed-off-by: Vit Stanicek <vit.stanicek@nxp.com>
2025-09-12 13:21:24 +02:00
Marek Matej
3476212f72 soc: espressif: esp32h2: remove kernel include
Remove unnecessary include from ESP32-H2 SoC sources.

Signed-off-by: Marek Matej <marek.matej@espressif.com>
2025-09-12 13:21:02 +02:00
Tim Lin
24de607380 drivers/i2c: it8xxx2: Allow I2C target entry power saving mode
Add I2C_TARGET_ALLOW_POWER_SAVING config. Enable this config makes I2C
target device can enter Doze/Deep doze states while the bus is idle.
Ongoing transfers will block low-power entry until they are completed,
ensuring correct communication while still reducing overall power
consumption.

Signed-off-by: Tim Lin <tim2.lin@ite.corp-partner.google.com>
2025-09-12 13:20:51 +02:00
Fin Maaß
4b8a19010a riscv: linker: move bss and noinit to end
Move bss and noinit sections to the end to reduce
binary size., as they will only be removed when they
are at the end.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-09-12 13:20:21 +02:00
Jamie McCrae
f624525f30 kconfig: Load Kconfig env file better
Loads this file in a better way that means samples and modules
should not have to source the file before referencing Kconfig
module path variables

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-09-12 13:19:56 +02:00
Jamie McCrae
7e6013c400 scripts: requirements: Add python-dotenv
This is needed for any Kconfig processing

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-09-12 13:19:56 +02:00
Yangbo Lu
5aaf69e145 net: ethernet: make inclusion relation clear for DSA and Ethernet headers
DSA is part of Ethernet and will utilize more Ethernet definitions for
more features support. So, it's proper to let DSA header include
Ethernet header with moving some DSA definiton from DSA header to
Ethernet header and adding DSA header including in c files using DSA
definition.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-09-12 13:19:41 +02:00
Yangbo Lu
0501be8090 net: ethernet: use void pointer for dsa switch context
In ethernet_context structure, it just needs a void pointer
for dsa switch context.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-09-12 13:19:41 +02:00
Emil Gydesen
e0c5c277a5 Bluetooth: PACS: Improve handling of notify on reconnect
When we reconnect to a bonded device we always attempted to
send the changed PACS notifications, regardless of
whether the remote device has subscribed to them or not.

This resulted in a lot of failed attempts to send
notifications when
CONFIG_BT_GATT_ENFORCE_SUBSCRIPTION is enabled (which it is
by default).

Ideally we would not set the flags for devices that have not
subscribed, but since we cannot call bt_gatt_is_subscribed for
non-connected devices, we need to do this when the notify_cb
is called.

It would be possible to use BT_GATT_CCC_MANAGED instead
of BT_AUDIO_CCC to keep track of the writes for each client,
but that would be a minor optimization which would require
significant rework and additions to PACS. The current
solution is inspired by the implementation used in has.c

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-09-12 13:19:18 +02:00
Jamie McCrae
b6e09135cb boards: nordic: nrf54lm20dk: Add aliases for MCUboot button/LED
Adds aliases so that these can be used by MCUboot

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-09-12 13:18:45 +02:00
Fin Maaß
d2988fc91f drivers: serial: litex: trivial changes
some trivial changes

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-09-12 13:18:30 +02:00
Fin Maaß
cf3701ccad drivers: serial: litex: only clear rx pending if needed
only clear rx pending if needed

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-09-12 13:18:30 +02:00
Fin Maaß
b97a0b174a drivers: serial: litex: fix set pending in uart_litex_fifo_fill function
fix set pending in uart_litex_fifo_fill function

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-09-12 13:18:30 +02:00
Fin Maaß
d245529329 drivers: serial: litex: remove unneeded soft irq
remove unneeded soft irq, as disabeled irqs
will still be registered, but just not propagated
to the cpu until it is enabled again.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-09-12 13:18:30 +02:00
Al Semjonovs
911b3da139 kernel: Clean-up lingering code coverage exclusion flag
Remove LCOV_EXCL_STOP flag as LCOV_EXCL_START was removed in a previous
commit.  This causes a gcov compilation error.

Signed-off-by: Al Semjonovs <asemjonovs@google.com>
2025-09-12 08:21:21 +01:00
Philipp Finke
8a831150f0 net: sockets: socket_service: Fixed issue that prevented reconfiguration
Once running, a socket service could not be reconfigured (i.e. changing
file descriptors and/or events to be polled). This was due to an wrong
check at the end of the thread main loop of socket_service_thread that
evaluated to false as variable ret is zero if trigger_work(), which is
called previously for all returned events, returns successfully.

Signed-off-by: Philipp Finke <philipp_finke@gmx.de>
2025-09-12 08:20:18 +01:00
Thomas Stranger
de42b49336 dts: arm: st: stm32c0: add stm32c051
Add dts for stm32c051.
STM32C051 is just an STM32c071 w/o USB and different memory configuration.
Therefore STM32C091 can directly include STM32C051 and no longer needs
to delete the usb nodes.

Signed-off-by: Thomas Stranger <thomas.stranger@outlook.com>
2025-09-12 08:20:07 +01:00
Thomas Stranger
0414683260 soc: st: stm32: add stm32c051 support
Add STM32C051 to the STM32C0 series

Signed-off-by: Thomas Stranger <thomas.stranger@outlook.com>
2025-09-12 08:20:07 +01:00
Ashirwad Paswan
fb6673ace0 drivers: bbram: stm32: added note for rtc enabling
Added a note to enable rtc node if the bbram node
 is enabled

Signed-off-by: Ashirwad Paswan <ashi06712@gmail.com>
2025-09-12 08:19:47 +01:00
Flavio Ceolin
902a9269b4 sw_isr_table: Remove unused macro parameter
irq is not used by _Z_ISR_TABLE_ENTRY and
_Z_ISR_DIRECT_TABLE_ENTRY. Just remove it.

Signed-off-by: Flavio Ceolin <flavio@hubblenetwork.com>
2025-09-12 08:19:36 +01:00
Samuel Coleman
8cc80069a7 drivers: serial: stm32: expand DMAT errata test.
I manually checked the errata sheets for all STM32Hxx/STM32Uxx parts to
confirm the defect's presence or absence. It appears to have been resolved
in silicon on newer parts (e.g., STM32U3xx family), so hopefully this test
will not need grow further (knock on wood).

Co-authored-by: Nicolas Zuluaga <nicolas.zuluaga@rbr-global.com>
Signed-off-by: Samuel Coleman <samuel.coleman@rbr-global.com>
2025-09-12 08:19:25 +01:00
Mark Wang
71ec12d6c0 bluetooth: avdtp: implement the avdtp fragmentation and reassembly
Define BT_AVDTP_SIGNAL_SDU_MAX Kconfig item to limit the max avdtp signal
SDU size, then use avdtp self defined net buf pool to prepare data. Use
default acl_tx_pool pool do to the fragmentation.

Signed-off-by: Mark Wang <yichang.wang@nxp.com>
2025-09-12 08:19:16 +01:00
Daniel DeGrasse
1866e00fb6 scripts: west_commands: openocd: run gdb in batch mode for RTT
Run GDB in batch mode when using RTT, so that pagination is never
enabled. This fixes RTT support when using terminals with a very small
row count.

Fixes #92417

Signed-off-by: Daniel DeGrasse <ddegrasse@tenstorrent.com>
2025-09-12 08:19:05 +01:00
Benjamin Cabé
9f181b6711 doc: _scripts: ensure twister.yaml file is considered in board catalog
Boards may use twister.yaml file to define Twister platforms, so
board catalog should also parse them.

Fixes: zephyrproject-rtos/zephyr#95721.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-11 18:10:21 +01:00
Yuval Peress
24ca0fbb76 cpp: Support C mocked __atomic_compare_exchange_*
The builtin functions __atomic_compare_exchange_* are missing when
CONFIG_ATOMIC_OPERATIONS_C is set. Add them and verify they build/work
as expected.

Signed-off-by: Yuval Peress <peress@google.com>
2025-09-11 18:10:15 +01:00
Mahesh Mahadevan
db576bad6c modules: hal_nxp: mcux: Fix build errors for non-secure build
Multiple definition errors seen when using the non-secure build

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2025-09-11 18:10:01 +01:00
Emil Gydesen
dbdf1aacc0 samples: Bluetooth: BAP: Source: Reverse in/out terminology
In USB "in" refers to data going from device to host,
and "out" refers to data going from host to device.

From a BT perspective "usb_out" then refers to the data
we receive from the host, to be sent over BT, so the "out"
terminology still works for that.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-09-11 18:09:52 +01:00
Emil Gydesen
3db5c6f1d1 samples: Bluetooth: BAP: Sink: Reverse in/out terminology
In USB "in" refers to data going from device to host,
and "out" refers to data going from host to device.

From a BT perspective "usb_in" then refers to the data
we send from the device to the host, that has been received
over BT.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-09-11 18:09:52 +01:00
Emil Gydesen
146dce9f7e Bluetooth: BAP: Shell: Reverse in/out terminology
In USB "in" refers to data going from device to host,
and "out" refers to data going from host to device.

From a BT perspective "usb_out" then refers to the data
we receive from the host, to be sent over BT, so the "out"
terminology still works for that, and vice versa for
incoming BT data.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-09-11 18:09:52 +01:00
Emil Dahl Juhl
a629d28237 tests: drivers: build_all: sensor: spi: correct reg
Align the `reg` property with the address specified in the dts node for the
icm42686.

Signed-off-by: Emil Dahl Juhl <emil@s16s.ai>
2025-09-11 18:09:45 +01:00
Sylvio Alves
9b16701f8e soc: espressif: place arch_common in IRAM for proper boot
Ensure sw_isr_common, dynamic_isr, and init routines are executed from IRAM
by relocating libarch__common.a section.

Running these from flash prevents the board from booting properly, as flash
access is not available during early initialization.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2025-09-11 18:09:32 +01:00
Piotr Kosycarz
9df679094c samples: sensor: light_polling: fix running with twister
- use harness console (instead of default ztest)
- use platform_allow to limit build execution scope
(actually, there is also shield needed)

Signed-off-by: Piotr Kosycarz <piotr.kosycarz@nordicsemi.no>
2025-09-11 18:09:23 +01:00
Cristian Bulacu
eb0d006f9c tests: net: socket: tls: Increase test stack size
Increased test stack size to avoid twister failures.

Signed-off-by: Cristian Bulacu <cristian.bulacu@nxp.com>
2025-09-11 18:09:09 +01:00
Cristian Bulacu
cbd599fecd net: sockets: Return mapped address from sock_get_pkt_src_addr() function
When an IPv4 packet is received on a dual-stack socket, return
the mapped v4 to v6 address as source address.

Signed-off-by: Cristian Bulacu <cristian.bulacu@nxp.com>
2025-09-11 18:09:09 +01:00
Cristian Bulacu
48897a9090 net: context: Fix issues in context_sendto() function
Fixed issue when `sendmsg()` was in use and `CONFIG_NET_IPV6`
and `CONFIG_NET_IPV4_MAPPING_TO_IPV6` were in use, as `dst_addr`
argument of `context_sendto()` was passed NULL,
but also used to determine `sa_family`.
Use msghdr, if available, to determine if v4 to v6 mapping is
present.
Also set `dst_addr` to unmapped value  when v4 to v6 mapping is
used.

Signed-off-by: Cristian Bulacu <cristian.bulacu@nxp.com>
2025-09-11 18:09:09 +01:00
Cristian Bulacu
3072c53a84 net: context: Add support to set hoplimit when v4 to v6 mapping is used
If v4 to v6 mapping is used, cmsg_level and cmsg_type should
be compared with IPv6 values even if pkt family if AF_INET.

Signed-off-by: Cristian Bulacu <cristian.bulacu@nxp.com>
2025-09-11 18:09:09 +01:00
Manuel Argüelles
da8cdb56c4 modules: hal_nxp: always compile port driver for S32K1
Ensure the Port driver is built unconditionally for S32K1 targets, aligning
with the approach already used for Kinetis in mcux-sdk-ng's drivers.cmake.

Fixes #94848

Signed-off-by: Manuel Argüelles <manuel.arguelles@nxp.com>
2025-09-11 18:08:52 +01:00
Johan Alfvén
48ad0d9644 drivers: ethos_u: update dcache API for new HAL
Update ethosu_flush_dcache() and ethosu_invalidate_dcache() to accept
base_addr and base_addr_size arrays, with num_base_addr as the element
count, as required by the new Ethos-U driver. Add (uintptr_t) casts to
support 32-bit targets.

Signed-off-by: Johan Alfvén <johan.alfven@arm.com>
2025-09-11 18:08:43 +01:00
Johan Alfvén
8ff6b7b0cd manifest: update hal_ethos_u revision
Point to hal_ethos_u's to current HEAD

Signed-off-by: Johan Alfvén <johan.alfven@arm.com>
2025-09-11 18:08:43 +01:00
Andrea Ronco
4b451307dc doc: mgmt: mcumgr: fix typo in fs_mgmt Kconfig
Fixing a typo in FS managment Kconfig docstring

Signed-off-by: Andrea Ronco <aronco@ethz.ch>
2025-09-11 18:08:20 +01:00
Andre Heinemans
2b821e7067 boards: imx95_evk: fix write-block-size value
The mt35xu01gbba flash device on the imx95-evk has a write-block-size of
2 instead of 1

Signed-off-by: Andre Heinemans <andre.heinemans@nxp.com>
2025-09-11 18:08:09 +01:00
Andre Heinemans
7a2ba69a54 drivers: flash_mcux_flexspi_nor: take write-block-size from dts
Some devices supported by this driver do not have a write-block-size
of 1 such as the mt35xu01gbba. This value is assigned in the dts and can
be used instead.

Signed-off-by: Andre Heinemans <andre.heinemans@nxp.com>
2025-09-11 18:08:09 +01:00
Holt Sun
28fcb4b370 tests: rtc: enable counter rtc test for nxp boards.
Add rtc test confs for nxp boards.

Signed-off-by: Holt Sun <holt.sun@nxp.com>
2025-09-11 18:07:59 +01:00
Holt Sun
964d418701 samples: rtc: support NXP boards.
Add confs for nxp boards.

Signed-off-by: Holt Sun <holt.sun@nxp.com>
2025-09-11 18:07:59 +01:00
Holt Sun
2e8ecf6e52 dts: arm: nxp: support counter_rtc in nxp device and board.
Add counter_rtc in nxp device and board.

Signed-off-by: Holt Sun <holt.sun@nxp.com>
2025-09-11 18:07:59 +01:00
Holt Sun
d7e41fd2e3 drivers: rtc: add counter RTC driver for virtual RTC device.
Counter RTC driver is written using the counter API as a
target instead of a hardware. It can adapt to all RTC
device without broken-down time register but with counter.

Signed-off-by: Holt Sun <holt.sun@nxp.com>
2025-09-11 18:07:59 +01:00
Holt Sun
7ac4180c58 drivers: counter: update nxp rtc counter drivers.
Don't clear match register when stop counter.
Fix some build warning.

Signed-off-by: Holt Sun <holt.sun@nxp.com>
2025-09-11 18:07:59 +01:00
Holt Sun
48781c965f dts: bindings: rtc: Add virtual RTC device tree binding
Add new zephyr,counter-rtc.yaml for virtual RTC device wrapping
counter APIs

Signed-off-by: Holt Sun <holt.sun@nxp.com>
2025-09-11 18:07:59 +01:00
Ayush Singh
bbfb7de085 boards: beagle: pocketbeagle_2: Update docs for rev A1
- rev A1 replaces AM6232 with AM6254.
- No other changes.

Signed-off-by: Ayush Singh <ayush@beagleboard.org>
2025-09-11 18:07:17 +01:00
Ayush Singh
e15691fada boards: beagle: pocketbeagle_2: Add rev A1 support
- PocketBeagle 2 rev A1 replaces the AM6232 with AM6254.
- Only rev A1 is available for sale now.

Signed-off-by: Ayush Singh <ayush@beagleboard.org>
2025-09-11 18:07:17 +01:00
Ayush Singh
881cc72183 soc: ti: k3: Add support for AM6254 A53 cores
- AM6254 is a variant of AM6234 with GPU.
- Used in rev A1 of PocketBeagle 2

Signed-off-by: Ayush Singh <ayush@beagleboard.org>
2025-09-11 18:07:17 +01:00
Ayush Singh
a60167c7f7 soc: ti: k3: Add support for AM6254 m4f
- AM6254 is a variant of AM6234 with GPU.
- Used in the rev A1 of PocketBeagle 2

Signed-off-by: Ayush Singh <ayush@beagleboard.org>
2025-09-11 18:07:17 +01:00
Aleksandr Khromykh
3a6cfe3736 bluetooth: mesh: remove wrong state warning
Commit removes `Wrong state` warning from some DFU API.
This information has value only for debugging.
No any value for application to generate warning
on the regular basis.

Signed-off-by: Aleksandr Khromykh <aleksandr.khromykh@nordicsemi.no>
2025-09-11 14:18:35 +01:00
Sylvio Alves
71ca7c917e west.yml: espressif: fix I2S frequency table
Fixes a typo in ESP32-C6 frequency table that currently
blocks 240MHz as base-clock.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2025-09-11 14:18:24 +01:00
Marcin Szkudlinski
91d17f6931 kernel: add k_thread_absolute_deadline_set call
k_thread_absolute_deadline_set is simiar to existing
k_thread_deadline_set. Diffrence is that k_thread_deadline_set
takes a deadline as a time delta from the current time,
k_thread_absolute_deadline_set is expecting a timestamp
in the same units used by k_cycle_get_32().

This allows to calculate deadlines for several thread and
set them in deterministic way, using a common timestamp as
a "now" time base.

Signed-off-by: Marcin Szkudlinski <marcin.szkudlinski@intel.com>
2025-09-11 14:18:16 +01:00
Wai-Hong Tam
c2e47bdc89 led_strip: ws2812_spi: Optimize for 8-bit symbols with build-time check
The ws2812_spi driver supports both a fast path for 8-bit symbols and
a generic path for other sizes.

This change introduces a devicetree-based, build-time check to
determine if all enabled instances use 8-bit symbols. If so, the
generic path logic is removed from the build.

Signed-off-by: Wai-Hong Tam <waihong@google.com>
2025-09-11 14:17:38 +01:00
Alain Volmat
a5bc5fa57d video: stm32: dcmipp: add (semi)planar support
Add support for NV12/NV21, NV16/NV61 and YUV420/YVU420
(semi)planar formats which can be output by the main #1 pipe.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-09-11 14:17:23 +01:00
Alain Volmat
0c81a6bf91 video: stm32: dcmipp: make isp handling depends on pixel pipes
ISP is part of the pixel pipes hence it doesn't make any sense to
try to call ISP external handlers if the DCMIPP doesn't have pixel
pipes available.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-09-11 14:17:23 +01:00
Alain Volmat
5b488cb30f video: add planar formats (NV12/NV21/NV16/NV61/NV24/NV42/YUV420/YVU420)
Add description and fourcc define for some of the 2 and 3 planes
pixel formats.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-09-11 14:17:23 +01:00
Julien Panis
051539e867 drivers: dma: cc23x0: Add power management
Add runtime PM support to cc23x0 DMA module.

Signed-off-by: Julien Panis <jpanis@baylibre.com>
2025-09-11 14:17:11 +01:00
Thomas Decker
ea82349594 drivers: clock: stm32_ll_h7: fix max. frequency defines for stm32H7RS
The maximum frequencies for SYSCLK, AHB and APB bus have changed since
the first issue of the datasheet. Setting values according to the up-
to-date datasheet.

Signed-off-by: Thomas Decker <decker@jb-lighting.de>
2025-09-11 06:27:58 -04:00
Szymon Janc
0907701688 tests: Bluetooth: Tester: Fix storing invalid broadcast ID
Broadcast ID is 24bits and uinitialized broadcast_id resulted in
(pseudo) random failures since only 3 bytes were set by call to
bt_rand().

Signed-off-by: Szymon Janc <szymon.janc@codecoup.pl>
2025-09-11 06:27:18 -04:00
Adam Kondraciuk
8a5365c26c soc: nordic: nrf54h: s2ram: Add FPU retention
Add FPU power management for suspend to RAM procedures.
Add FPU save/restore procedures when `FPU_SHARING` feature
is disabled.

Signed-off-by: Adam Kondraciuk <adam.kondraciuk@nordicsemi.no>
2025-09-11 06:26:49 -04:00
Jakub Klimczak
86e9e636b5 samples: subsys: console: echo: Add VIRTIO Console overlay
Add overlay files for testing the VIRTIO Console device with
this sample along with a section in the README.

Signed-off-by: Jakub Klimczak <jklimczak@internships.antmicro.com>
2025-09-11 06:26:02 -04:00
Jakub Klimczak
5520e3b878 tests: drivers: build_all: virtio: Add VIRTIO Console
Add the VIRTIO Console to the driver build test on qemu_x86_64 (PCI)
and qemu_cortex_a53 (MMIO).

Signed-off-by: Jakub Klimczak <jklimczak@internships.antmicro.com>
2025-09-11 06:26:02 -04:00
Jakub Klimczak
fdd4a7bb8e cmake: emu: Add VIRTIO console to QEMU CMake file
Replace the default serial device with a virtconsole if it
is configured in the devicetree. Because of the way -nographic
works, -serial none and -monitor none had to be added as well.
Tested with west build -t run and west build -t debugserver_qemu.

Signed-off-by: Jakub Klimczak <jklimczak@internships.antmicro.com>
2025-09-11 06:26:02 -04:00
Jakub Klimczak
f7d8688a35 drivers: serial: Add UART VIRTIO Console
Add a UART driver for the VIRTIO console device.
This driver has support for both polling- and interrupt-based i/o,
as well as interacting with up to 32 console ports (disabled by
default). Based on the Xen HVC driver.
Tested with the console subsystem sample programs. Aside from
enabling CONFIG_PCIE, setting CONFIG_HEAP_MEM_POOL_SIZE to a
high enough value (for example 100000) is necessary -- as is done
in the virtiofs sample.

Signed-off-by: Jakub Klimczak <jklimczak@internships.antmicro.com>
2025-09-11 06:26:02 -04:00
Jakub Klimczak
af0dfb9418 drivers: virtio: Fix writing feature bits, follow VIRTIO spec
This fixes:
 * if-statements that check whether a given bit lies within
specification-defined ranges
 * a behavior in virtio_pci.c -- where it would read feature bits
from the device and write them back whenever the user tried to
set their own -- which led to bugs
 * struct virtio_pci_common_cfg, adding two new fields, bringing
it in line with the specification; the entire struct definition
was reformatted as following the existing style would trigger
warnings

Signed-off-by: Jakub Klimczak <jklimczak@internships.antmicro.com>
2025-09-11 06:26:02 -04:00
Erwan Gouriou
a24f3b7dc7 boards: st: nucleo_n657x0_q: Fix button description
User button requires PULL_DOWN.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2025-09-11 10:00:17 +02:00
Erwan Gouriou
077c5d7fd7 boards: st: stm32n6570_dk: Add button description
Add PC13 as the user button.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2025-09-11 10:00:17 +02:00
Arunmani Alagarsamy
86cc0f99c8 drivers: wifi: siwx91x: Round up listen interval calculation
Use DIV_ROUND_UP to ensure listen_interval is rounded up instead of
being truncated during division by the beacon interval.

Signed-off-by: Arunmani Alagarsamy <arunmani.a@silabs.com>
2025-09-11 09:55:13 +02:00
Hao Luo
53e28e0de2 driver: uart: ambiq: need to wait for IO stable after resume
Add a short delay to wait for IO stable when resume from sleep
to prevent printing gibberish.

Signed-off-by: Hao Luo <hluo@ambiq.com>
2025-09-11 09:55:05 +02:00
Hao Luo
1f95b06c95 drivers: uart: ambiq: fix incorrect uart tx ready status
This commit fixes incorrect uart tx ready status

Signed-off-by: Hao Luo <hluo@ambiq.com>
2025-09-11 09:55:05 +02:00
Jukka Rissanen
80953bb8e0 net: tcp: Print TCP connection info consistently
Print TCP connection pointer value for debug prints
consistently so that it is easier to find debug prints that
are related to a certain TCP connection.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-09-11 09:54:27 +02:00
Hao Luo
7d09c83fc6 drivers: timer: fix ambiq stimer MIN_DELAY incorrect define
Change to use HAL macro instead of magic number.

Signed-off-by: Hao Luo <hluo@ambiq.com>
2025-09-11 09:54:12 +02:00
Arunmani Alagarsamy
b48cdc40fc drivers: wifi: siwx91x: Disable HT capabilities on channel 14
In the Japan regulatory domain, channel 14 is restricted to
802.11b/g operation and does not support HT (802.11n) capabilities.
Disable HT capabilities when operating on channel 14 in AP mode.

Signed-off-by: Arunmani Alagarsamy <arunmani.a@silabs.com>
2025-09-11 09:53:48 +02:00
Etienne Carriere
694eaf43b1 drivers: flash: restore stm32 xspi mutex on memory mapping
Fix stm32 XSPI driver to restore the bus command concurrent access
protection that was mistakenly removed on memory mapping operation
by commit e5620e07c9 ("drivers: flash: stm32 xspi flash read with
memcopy when executing").

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-09-11 09:53:36 +02:00
Nicolas Pitre
6780dddbca arch: arm64: Enhance FPU debug traces with PC addresses
Improve FPU trap debugging by showing the program counter (PC) of
instructions that trigger FPU access traps instead of potentially
stale saved FPU context data.

Signed-off-by: Nicolas Pitre <npitre@baylibre.com>
2025-09-11 09:53:24 +02:00
Khoa Nguyen
be5c800db7 samples: boards: renesas: Add support comparator for ek_ra8p1 cm33
Add support sample ``renesas/comparator`` for Renesas ek_ra8p1 cm33

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-09-11 09:53:13 +02:00
Khoa Nguyen
0e67325305 samples: drivers: counter: Add support alarm for ek_ra8p1 cm33
Add support sample ``alarm`` for Renesas ek_ra8p1 cm33

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-09-11 09:53:13 +02:00
Khoa Nguyen
7f8e808ad5 tests: subsys: pm: Remove reduntant ek_ra8p1 cm85 conf file
Since CONFIG_PM_STATS has been selected at the soc layer,
there is no need to reconfigure it in the test

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-09-11 09:53:13 +02:00
Khoa Nguyen
f8e92ef913 tests: drivers: comparator: Add support gpio_loopback for ek_ra8p1 cm33
Add support test app ``gpio_loopback`` for Renesas ek_ra8p1 cm33

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-09-11 09:53:13 +02:00
Khoa Nguyen
400859de9b tests: drivers: pwm: Add support pwm_loopback for ek_ra8p1 cm33
Add support test app ``pwm_loopback`` for Renesas ek_ra8p1 cm33

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-09-11 09:53:13 +02:00
Khoa Nguyen
b94cc5fd26 tests: drivers: Add support spi_loopback for ek_ra8p1 cm33
Add support test app ``spi_loopback`` for Renesas ek_ra8p1 cm33

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-09-11 09:53:13 +02:00
Khoa Nguyen
3c63f17dc9 tests: drivers: i2c: Add support i2c_api for ek_ra8p1 cm33
Add support test app ``i2c_api`` for Renesas ek_ra8p1 cm33

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-09-11 09:53:13 +02:00
Khoa Nguyen
3a6f867fea tests: drivers: uart: Add support uart_async_api for ek_ra8p1 cm33
Add support test app ``uart_async_api`` for Renesas ek_ra8p1 cm33

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-09-11 09:53:13 +02:00
Khoa Nguyen
7df46d92d1 boards: shields: pmod_sd: Add support ek_ra8p1_r7ka8p1kflcac_cm33
Add support pmod_sd shield for Renesas ek_ra8p1_r7ka8p1kflcac_cm33

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-09-11 09:53:13 +02:00
Khoa Nguyen
2831929844 boards: renesas: Add support Renesas ek_ra8p1_r7ka8p1kflcac_cm33
Add support Renesas ek_ra8p1_r7ka8p1kflcac_cm33

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-09-11 09:53:13 +02:00
Khoa Nguyen
db1b8fc7d3 boards: renesas: Create shared ek_ra8p1.dtsi file
Create shared ``ek_ra8p1.dtsi`` file

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-09-11 09:53:13 +02:00
Khoa Nguyen
9e896d7d08 dts: arm: renesas: ra: Correct clock source for pwm on Renesas ra8x2
Correct clock source for pwm on Renesas ra8x2

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-09-11 09:53:13 +02:00
Khoa Nguyen
511d4c4b42 dts: arm: renesas: ra: Add support for Renesas r7ka8p1kflcac_cm33
Add support for Renesas r7ka8p1kflcac_cm33

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-09-11 09:53:13 +02:00
Khoa Nguyen
db981f65e9 drivers: Add assign event for current core for all Renesas drivers
Add assign event for current core for all Renesas drivers

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-09-11 09:53:13 +02:00
Khoa Nguyen
7ea7e13b9c soc: renesas: ra: Update init flow to start second core
- Add ``R_BSP_SecondaryCoreStart`` for the primary core to start
the secondary core
- Disable ``clock_init`` for the secondary core

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-09-11 09:53:13 +02:00
Khoa Nguyen
614889b32b soc: renesas: ra: Add configs to enable building second core app
Add configs to enable building the second core app

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-09-11 09:53:13 +02:00
Khoa Nguyen
8a1118f03c soc: renesas: ra: Correct the duplicate section for ek_ra8p1
Correct the duplicate section for Renesas ek_ra8p1

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-09-11 09:53:13 +02:00
Khoa Nguyen
00dce2eb43 manifest: Update revision for hal_renesas to support ek_ra8p1 cpu1
Update revision for hal_renesas to support ek_ra8p1 cpu1

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-09-11 09:53:13 +02:00
Clark Kim
4f948f15af soc: nxp: imxrt7xx: Add pmic interrupt APIs
Add pmic interrupt enable/disable/clear APIs

Signed-off-by: Clark Kim <clark.kim@nxp.com>
2025-09-10 22:44:33 -04:00
Clark Kim
3eae6cd6c3 board: nxp: mimxrt700_evk: add pmic instance for rt700 cm33_cpu0
enable pmic i2c clock
config pmic pin
add pca9422 pmic instance on rt700_evk cm33_cpu0

Signed-off-by: Clark Kim <clark.kim@nxp.com>
2025-09-10 22:44:33 -04:00
Clark Kim
3778309413 drivers: mfd: add pca9422 drivers(mfd+charger+regulator)
Add drivers for NXP PCA9422 PMIC that includes charger and regulators.

Signed-off-by: Clark Kim <clark.kim@nxp.com>
2025-09-10 22:44:33 -04:00
Aditi Bhaskar
2d854b3e50 Drivers: UART pdl-based driver bug fixed
- Resolved failure in uart_basic_api test (rx now handled)
 - Fixed interrupt mask configuration in uart-pdl driver
 - Removed redundant irq handling functions

Signed-off-by: Aditi Bhaskar <aditi.bhaskar@infineon.com>
2025-09-10 22:43:32 -04:00
Anisetti Avinash Krishna
767dc4d87d drivers: misc: timeaware_gpio: Enable support for ARTV_CTRL
Enabled support for ARTV_CTRL for ART value read operation.

Signed-off-by: Anisetti Avinash Krishna <anisetti.avinash.krishna@intel.com>
2025-09-10 22:42:58 -04:00
Shreehari HK
16963d38f7 drivers: i3c: dw: Add clock subsystem and pinctrl support
Add support for clock subsystem configuration and pinctrl in the
DesignWare I3C driver to enable proper clock control and pin
management on platforms that require them.

Changes include:
- Add clock_subsys field to dw_i3c_config structure.
- Update clock_control_get_rate() and clock_control_on() calls to use
  the configured clock subsystem instead of NULL.
- Use COND_CODE_1 with DT_INST_PHA_HAS_CELL to conditionally extract
  clock subsystem ID from devicetree, providing backward compatibility
  for platforms without clkid cell.
- Include pinctrl-device.yaml in devicetree binding to enable pinctrl
  support for platforms that need pin configuration.
- Gracefully fallback to NULL behavior when clkid is not specified.

This follows the same pattern used by other I3C drivers (mcux, renesas_ra)
and enables proper clock management for SoCs that require clock subsystem
identifiers while maintaining compatibility with existing devicetree
configurations.

Signed-off-by: Shreehari HK <shreehari.hk@alifsemi.com>
2025-09-10 22:42:14 -04:00
Martin Hoff
bd9ade1cfa tests: uart: add support for xg29_rb4412a board with elementary test
Added overlay for the silabs xg29_rb4412a board regarding uart_elementary.

Signed-off-by: Martin Hoff <martin.hoff@silabs.com>
2025-09-10 22:41:31 -04:00
Raffael Rostagno
7330fbf3bb boards: esp32s3_eye: Add SDHC support
Add SDHC support to esp32s3_eye.

Signed-off-by: Raffael Rostagno <raffael.rostagno@espressif.com>
2025-09-10 22:41:01 -04:00
James Growden
c1d305ef4d drivers: i2c: Correct i2c_dw target implementation
The I2C target implementation for i2c_dw does not follow the
zephyr target specification. The following three issues are corrected:

1) The read_requested CB is called on every byte of the transaction
    - it must be called only on the first byte of the transaction
2) The read_processed CB is called on every byte of the transaction
    - it must be called only on bytes following the first byte
3) Bytes returned in the data ptr param of read_processed are not
    sent to the controller
     -These bytes must be sent to the controller

Signed-off-by: James Growden <jgrowden@tenstorrent.com>
2025-09-10 22:40:13 -04:00
Flavio Ceolin
d1287edc1f arch: native: Fix undefined symbols
CONFIG_FLASH_SIZE and CONFIG_FLASH_BASE_ADDRESS symbols were not defined in
native_sim even though it has a flash controller and flash defined.

Signed-off-by: Flavio Ceolin <flavio@hubble.com>
2025-09-10 22:39:43 -04:00
Muhammad Waleed Badar
7601db8e4e soc: esp32: Enable ESP32_REGION_1_NOINIT by default
Use DRAM region 1 as the default spill area for the `.noinit`
section if appcpu is not present

Signed-off-by: Muhammad Waleed Badar <walid.badar@gmail.com>
2025-09-10 22:39:04 -04:00
Kesavan Yogeswaran
493ce8efa6 cmake: Merge extra Zephyr modules from multiple sources
Extra Zephyr modules can be provided via the EXTRA_ZEPHYR_MODULES CMake
list variable. Previously, if this variable were set in multiple places
(e.g. local CMake variable, cache variable set via -D, environment
variable), Zephyr will pick one source based on zephyr_get's documented
hierarchy and ignore the others.

Add the MERGE keyword when EXTRA_ZEPHYR_MODULES is read so that the list
of Zephyr modules is merged from all sources if this variable is set in
multiple places.

An example where this can be useful is when integrating additional Zephyr
modules with a vendor's Zephyr-based application whose build system already
contains usage of EXTRA_ZEPHYR_MODULES.

Signed-off-by: Kesavan Yogeswaran <hikes@google.com>
2025-09-10 22:38:41 -04:00
Fabio Baltieri
2134fbcecf samples: dap: add rpi_debug_probe support
This board is actually meant to be used as a debug probe and has
dedicated connectors for DP and target UART, add an overlay to make both
work on the dap sample.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2025-09-10 22:37:40 -04:00
Andrzej Głąbek
9223235a49 drivers: flash_mspi_nor: Fix XIP_DEV_CFG_MASK definition
This is a follow-up to commit cafa288197.

Bit masks should use the bitwise OR operator, not the logical one...

Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
2025-09-10 22:37:04 -04:00
Mickael Bosch
6e018bbf04 drivers: i2c: stm32: fix compilation with DMA
fixes:
- implicit declaration of function 'stm32_buf_in_nocache'
- undefined reference to 'stm32_buf_in_nocache'

Signed-off-by: Mickael Bosch <mickael.bosch@linux.com>
2025-09-10 18:37:47 +02:00
Benjamin Cabé
a1621ac7ec scripts: west_command: patch.py: fix sha256 bug on windows
Fix SHA256 verification failures on Windows by ensuring consistent
line ending handling in patch files. Replace inline hash calculation
with existing get_file_sha256sum() function and modify it to read
files as text with normalized line endings before encoding to UTF-8
for hashing.

This ensures cross-platform compatibility and prevents patch
integrity check failures due to CRLF/LF differences between
operating systems.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-10 18:37:33 +02:00
Sanjay Vallimanalan
2f864d5467 dts: arm/ti/mspm0: add cpu power states for MSPM0 series
add range of cpu power states (run/sleep, stop and standby) for MSPM0
series. add exit latencies ranging from 1.5-15.7µs and minimum
residency times of 5-10ms for optimal power management transitions.

Signed-off-by: Sanjay Vallimanalan <sanjay@linumiz.com>
Signed-off-by: Parthiban Nallathambi <parthiban@linumiz.com>
2025-09-10 18:37:11 +02:00
Sanjay Vallimanalan
35c485b6ec drivers: gpio: Add GPIO Fast Wake support
The fast wake feature in the MSPM0 GPIO peripheral allows the GPIO module
to stay in a low-power state and detect interrupt events on the device pins
without requiring a high-speed clock. This allows the device to support
fast wakeup from low-power modes, such as STOP and STANDBY, on any GPIO
pin.

Signed-off-by: Sanjay Vallimanalan <sanjay@linumiz.com>
Signed-off-by: Parthiban Nallathambi <parthiban@linumiz.com>
2025-09-10 18:37:11 +02:00
Sanjay Vallimanalan
199017fa94 soc: mspm0: add poweroff support
add support for SHUTDOWN operating mode in TI MSPM0 series for power-off
operation. Uses HWINFO for reset cause detection to handle shutdown IO
release on low power wakeup.

Signed-off-by: Sanjay Vallimanalan <sanjay@linumiz.com>
Signed-off-by: Parthiban Nallathambi <parthiban@linumiz.com>
2025-09-10 18:37:11 +02:00
Sanjay Vallimanalan
0c7edef7ad soc: mspm0: add power management support
TI MSPM0 series supports range of power modes (RUN/SLEEP, STOP, STANDBY)
supporting low power operations. Provides automatic restoration to
RUN mode on wakeup from any low power state.

Signed-off-by: Sanjay Vallimanalan <sanjay@linumiz.com>
Signed-off-by: Parthiban Nallathambi <parthiban@linumiz.com>
2025-09-10 18:37:11 +02:00
Sanjay Vallimanalan
97a587d90f west.yml: Update hal_ti revision
Update hal_ti to include input-enable property for all UART RX pins.
Without the input-enable property, UART reception does not function
correctly when the SoC enters low-power mode. Adding this property
ensures reliable UART operation in all power states.

Signed-off-by: Sanjay Vallimanalan <sanjay@linumiz.com>
2025-09-10 18:37:11 +02:00
Michał Bainczyk
2d69a5eb66 modules: hal_nordic: nrfx: Add support for custom NRFX_DIR on Sysbuild
Add support for custom NRFX_DIR for Sysbuild builds by checking if
NRFX_DIR has been defined in Sysbuild.

Signed-off-by: Michał Bainczyk <michal.bainczyk@nordicsemi.no>
2025-09-10 18:36:56 +02:00
dependabot[bot]
3a0899faef ci: github: bump the actions-deps group with 7 updates
Bumps the actions-deps group with 7 updates:

| Package | From | To |
| --- | --- | --- |
| [actions/setup-python](https://github.com/actions/setup-python) | `5.6.0` | `6.0.0` |
| [aws-actions/configure-aws-credentials](https://github.com/aws-actions/configure-aws-credentials) | `4.3.1` | `5.0.0` |
| [codecov/codecov-action](https://github.com/codecov/codecov-action) | `5.5.0` | `5.5.1` |
| [github/codeql-action](https://github.com/github/codeql-action) | `3.30.0` | `3.30.1` |
| [zephyrproject-rtos/action-zephyr-setup](https://github.com/zephyrproject-rtos/action-zephyr-setup) | `1.0.7` | `1.0.8` |
| [actions/github-script](https://github.com/actions/github-script) | `7.0.1` | `8.0.0` |
| [actions/stale](https://github.com/actions/stale) | `9.1.0` | `10.0.0` |


Updates `actions/setup-python` from 5.6.0 to 6.0.0
- [Release notes](https://github.com/actions/setup-python/releases)
- [Commits](a26af69be9...e797f83bcb)

Updates `aws-actions/configure-aws-credentials` from 4.3.1 to 5.0.0
- [Release notes](https://github.com/aws-actions/configure-aws-credentials/releases)
- [Changelog](https://github.com/aws-actions/configure-aws-credentials/blob/main/CHANGELOG.md)
- [Commits](7474bc4690...a03048d875)

Updates `codecov/codecov-action` from 5.5.0 to 5.5.1
- [Release notes](https://github.com/codecov/codecov-action/releases)
- [Changelog](https://github.com/codecov/codecov-action/blob/main/CHANGELOG.md)
- [Commits](fdcc847654...5a1091511a)

Updates `github/codeql-action` from 3.30.0 to 3.30.1
- [Release notes](https://github.com/github/codeql-action/releases)
- [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md)
- [Commits](2d92b76c45...f1f6e5f6af)

Updates `zephyrproject-rtos/action-zephyr-setup` from 1.0.7 to 1.0.8
- [Commits](b2453c7296...6a744370a2)

Updates `actions/github-script` from 7.0.1 to 8.0.0
- [Release notes](https://github.com/actions/github-script/releases)
- [Commits](60a0d83039...ed597411d8)

Updates `actions/stale` from 9.1.0 to 10.0.0
- [Release notes](https://github.com/actions/stale/releases)
- [Changelog](https://github.com/actions/stale/blob/main/CHANGELOG.md)
- [Commits](5bef64f19d...3a9db7e6a4)

---
updated-dependencies:
- dependency-name: actions/setup-python
  dependency-version: 6.0.0
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: actions-deps
- dependency-name: aws-actions/configure-aws-credentials
  dependency-version: 5.0.0
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: actions-deps
- dependency-name: codecov/codecov-action
  dependency-version: 5.5.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: actions-deps
- dependency-name: github/codeql-action
  dependency-version: 3.30.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: actions-deps
- dependency-name: zephyrproject-rtos/action-zephyr-setup
  dependency-version: 1.0.8
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: actions-deps
- dependency-name: actions/github-script
  dependency-version: 8.0.0
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: actions-deps
- dependency-name: actions/stale
  dependency-version: 10.0.0
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: actions-deps
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-09-10 18:36:47 +02:00
Szymon Janc
7d84a3b639 tests: Bluetooth: Tester: Increase number of ISO RX bufs
This helps to circumvent issues in current BAP implementation when
multiple streams are present. Also puts RX path in line with
configuration of TX path.

Signed-off-by: Szymon Janc <szymon.janc@codecoup.pl>
2025-09-10 16:40:55 +02:00
Dhanoo Surasarang
8053d23c39 drivers: misc: nordic_vpr_launcher: add DMA secure attribute support
Extend vpr_launcher and device tree bindings to support configuring
the DMA secure attribute.

Signed-off-by: Dhanoo Surasarang <dhanoo.surasarang@nordicsemi.no>
2025-09-10 16:40:39 +02:00
Luca Burelli
26fd9a691e soc/ambiq/apollo5x: fix ARMV8_1_M_PMU_EVENTCNT being globally set
Other targets that define this symbol do it in the Kconfig file, and
gate it with a SOC_ model or series symbol. Defining a default in the
Kconfig.soc instead applies it on every build, which is not desired.

Signed-off-by: Luca Burelli <l.burelli@arduino.cc>
2025-09-10 16:40:27 +02:00
Sebastian Bøe
50d7308473 soc: nordic: nrf54h: Add support for CPURAD DEBUG_WAIT
Add support for halting the Radio core immediately after reset. This
ensures that a debugger can attach and take control from the very
first instruction.

Signed-off-by: Sebastian Bøe <sebastian.boe@nordicsemi.no>
2025-09-10 16:40:19 +02:00
Bjarki Arge Andreasen
00afc18985 soc: nordic: nrf54h20: enable PM_DEVICE_RUNTIME if PM by default
PM on the nrf54h20 has minimal utility if power domains and devices
are not managed at runtime, as these prevent the soc from entering
sleep states in the first place. Enable PM_DEVICE by default if PM,
which in turn enables PM_DEVICE_RUNTIME for devices and power
domains.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-09-10 16:40:11 +02:00
Aksel Skauge Mellbye
38e9d2cd47 boards: silabs: Remove nonfunctional wakeup trigger
Remove wakeup trigger from Series 2 boards. The implementation
seems to configure a GPIO to be driven low on boot, which has
nothing to do with wakeup. In order to actually configure a
wakeup GPIO, the GPIO_INT_WAKEUP flag would need to be used when
registering an interrupt on the pin. However, this should not
be the responsibility of the board. It is an application
concern, so remove it from the boards.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-09-10 16:39:54 +02:00
Ayush Singh
d3f327dcee boards: beagle: pocketbeagle_2: a53: Enable PSCI
Use both cores for Zephyr by default. I did enable SMP, however forgot
to enable PSCI to turn on the other cores in the initial PR.

Tested with samples: `tests/arch/arm64/arm64_psci/` and
`samples/arch/smp/pi`

Requires [0].

[0]: https://github.com/zephyrproject-rtos/zephyr/pull/95325

Signed-off-by: Ayush Singh <ayush@beagleboard.org>
2025-09-10 16:39:45 +02:00
Jeppe Odgaard
3813b3cdda net: config: sntp: improve logging
Print return code on error and remove logging in `sntp_resync_handler`
since it calls `net_init_clock_via_sntp` which already does logging.

Signed-off-by: Jeppe Odgaard <jeppe.odgaard@prevas.dk>
2025-09-10 16:39:34 +02:00
Sebastian Głąb
ce68b5a700 tests: drivers: i2s: Add test for 8ch, 32bit, 48k TDM
Add test case where TDM is tested with 8 channels,
32 bit word size and 48k sample rate.

Add Kconfig that enables test skip if the driver supports
8 channels but fails in this configuration.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
2025-09-10 16:39:25 +02:00
Emil Dahl Juhl
a777889f75 tests: rtio: rtio_api: add relaxed await sqe test
Expand the test case for RTIO_OP_AWAIT to also cover the relaxed variant
where just the SQE chain is paused until completion, and the rtio_iodev
can serve unrelated SQEs meanwhile.

Signed-off-by: Emil Dahl Juhl <emil@s16s.ai>
2025-09-10 16:39:15 +02:00
Emil Dahl Juhl
5b7c462c12 rtio: executor: add relaxed RTIO_OP_AWAIT variant
Allow the rtio executor to handle the RTIO_OP_AWAIT for cases where no
rtio_iodev needs to be blocked while waiting for the signal.

When the RTIO_OP_AWAIT was introduced, the highlighted usecase was
performing transactions within an exact time window. This can be
achieved by blocking the rtio_iodev, effectively locking the bus, while
awaiting.

However, a relaxed implementation which doesn't block any rtio_iodev is
really useful for device drivers that use some kind of ready-event
during transactions. For example in order to read configuration out of
a sensor, the following flow may be required:

    1. Write some cmd like "read accelerometer scale"
    2. Await data-ready GPIO rising edge (might take "a long time")
    3. Read the requested data payload from the sensor

Using a relaxed variant of the RTIO_OP_AWAIT this can be elegantly put
together in a single chained rtio sequence. And by not blocking the
rtio_iodev, other devices can be operated during the await period.
Of course, not blocking the rtio_iodev also means that the bus may be
busy when the RTIO_OP_AWAIT completes and thus, step 3 may be blocked
for a some time and the guarantee of an exact time window cannot be
achieved with the relaxed variant.

To make the API clearer, separate helpers are added for the strict
(blocking iodev) and relaxed (blocking only the sqe chain) variant
respectively.

Signed-off-by: Emil Dahl Juhl <emil@s16s.ai>
2025-09-10 16:39:15 +02:00
Carles Cufi
5574a81d0d actions: manifest: avoid checking out the PR HEAD in the workflow
See description in the PR below for more details:
https://github.com/zephyrproject-rtos/action-manifest/pull/25

Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
2025-09-10 10:38:29 -04:00
Bill Waters
66e501043d drivers: pwm: Infineon: updates to PWM driver test files
* Adds overlay files for tests/drivers/pwm/pwm_api and
tests/drivers/pwm/pwm_gpio_loopback to run these tests on the
cyw920829 board.

Signed-off-by: Bill Waters <bill.waters@infineon.com>
2025-09-10 16:38:19 +02:00
Bill Waters
d18dd9d3cf drivers: pwm: Infineon: updates to PWM driver sample files
* Updates the overlay files for samples/basic/blinky_pwm and
samples/basic/fade_led to run on the cyw920829m2_evk board.

Signed-off-by: Bill Waters <bill.waters@infineon.com>
2025-09-10 16:38:19 +02:00
Bill Waters
7973535ec6 drivers: pwm: Infineon: PWM driver improvements and bug fixes
This change makes improvements and bug fixes for the Infineon PWM
driver.  These include:

* Removes hard coded register addresss from driver.
* Addresses issues causing pwm_api and pwm_gpio_loopback tests to
fail, as well as functional failures.
* Restructures device tree file to better represent the hardware
architecture of the tcpwm module.
* Allows configuration of hardware behavior when PWM is disabled.

Signed-off-by: Bill Waters <bill.waters@infineon.com>
2025-09-10 16:38:19 +02:00
Bill Waters
8e1f2c70de drivers: pwm: Infineon: replace cat1 naming with tcpwm
* Changes driver naming to reflect hardware IP being used (TCPWM)
instead of referencing cat1.  Cat1 is an internal infineon
reference which has little meaning to users and is being phased
phased out.

Signed-off-by: Bill Waters <bill.waters@infineon.com>
2025-09-10 16:38:19 +02:00
Chiho Sin
66f50bef5d boards: fobe: add FoBE Quill nRF52840 Mesh board
This commit introduces the FoBE Quill nRF52840 Mesh board configuration,
including device tree files, Kconfig settings, and necessary
documentation. It also adds GPIO header definitions
and updates vendor prefixes for proper identification.

Signed-off-by: Chiho Sin <chihosin@icloud.com>
2025-09-10 16:37:40 +02:00
Michał Bainczyk
4910be262e tests: drivers: gpio_basic_api: Add nrf_sense_edge test for nrf54l15dk
Add a testcase for nrf54l15dk with sense edge to gpio_basic_api
test.

Signed-off-by: Michał Bainczyk <michal.bainczyk@nordicsemi.no>
2025-09-10 16:37:22 +02:00
David Jewsbury
d9e22a7314 drivers: audio: dmic_nrfx: add support for audio_auxpll clk src
Added support for auxpll being used as audio clock source
for DMIC PDM driver.

Signed-off-by: David Jewsbury <david.jewsbury@nordicsemi.no>
2025-09-10 16:37:08 +02:00
Damian Krolik
30a7d26bce modules: openthread: fix build for RCP
In the previous PR I moved configuring the child supervision
and timeout to the function that is also used in radio
co-processor firmware that does not include APIs for setting
these values.

Signed-off-by: Damian Krolik <damian.krolik@nordicsemi.no>
2025-09-10 16:36:53 +02:00
Jukka Rissanen
8e6077e3e5 tests: net: dns_cache: Increase ztest thread stack size
Make sure that the DNS cache tests have enough stack size for
each ztest thread so increase the stack to 1280 bytes.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-09-10 13:18:40 +02:00
Jukka Rissanen
e80ea109b4 tests: net: traffic_class: Lower the number of run tests
Lower the number of test cases that are run to speed up CI.
There is no need to test so many combinations.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-09-10 13:18:35 +02:00
Damian Krolik
eca4dee046 modules: openthread: configure MLE and supervision in openthread_init
PR 84355 introduced configuring the child supervision and
the MLE timeout in openthread_start() (later replaced with
openthread_run()), but that function is only called when
the manual start is not used.

Nothing prevents configuring these settings earlier, in
openthread_init(), which is executed even if OT autostart
is disabled.

Signed-off-by: Damian Krolik <damian.krolik@nordicsemi.no>
2025-09-10 13:09:26 +02:00
Ravi Dondaputi
4a36967075 snippets: wifi-enterprise: Store certificates in Protected storage
Add config options required for storing certificates in protected
storage, and to free up space of ROM to accommodate the additional
features that are enabled for TFM.

Signed-off-by: Ravi Dondaputi <ravi.dondaputi@nordicsemi.no>
2025-09-10 13:08:52 +02:00
Ravi Dondaputi
565de32c9a samples: net: wifi: Add AES-only certificates
Add AES-only cipher certificates. Useful for systems which
have only AES support and DES is not enabled.

Signed-off-by: Ravi Dondaputi <ravi.dondaputi@nordicsemi.no>
2025-09-10 13:08:52 +02:00
Ravi Dondaputi
1353624d61 snippets: wifi-enterprise: Increase MBEDTLS heap size
With NRF security, higher heap requirement is seen for operating
with RSA-3072 based certificates. Add a NRF SoC specific conf in
snippets to handle this.

Signed-off-by: Ravi Dondaputi <ravi.dondaputi@nordicsemi.no>
2025-09-10 13:08:52 +02:00
Danny Oerndrup
912ffe27df soc_native: Fix missing include of stdbool.h
The header posix_soc.h was missing include of stdbool.h as bool is used
as a function parameter.

Signed-off-by: Danny Oerndrup <daor@demant.com>
2025-09-10 13:02:58 +02:00
Aksel Skauge Mellbye
188627f61d soc: silabs: Support image properties for Series 2
Add image properties data structure to Series 2 binaries.
This data structure is used by the SE or bootloader to enforce
secure boot, and by other tools to extract image information.

Use the app version if set, or fall back to the kernel version
for the image version field. Set image type based on Kconfig
options.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-09-10 13:02:48 +02:00
Emil Gydesen
3568f25fed Bluetooth: BAP: Add missing ep check in client_qos
The bt_bap_unicast_client_qos function was recently
modified to check for presentation delay, however it did
not consider that a unicast group may contain streams that
are not configured, and thus do not have endpoints.

Add a stream->ep != NULL check to only consider configured
streams.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-09-10 13:02:39 +02:00
Utsav Munendra
2a6d692937 fs: Shell command ls to list file sizes
List the file size helps in developer debugging experience. Provide
a config to disable new behavior in case any users depended on
command output to be a list.

Signed-off-by: Utsav Munendra <utsavm@meta.com>
2025-09-10 13:02:31 +02:00
Fin Maaß
8e63bbd6f3 mcuboot: doc: improve kconfig help
improve kconfig help and make clear, that
MCUBOOT_GENERATE_UNSIGNED_IMAGE
will not lead to imgtool being used.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-09-10 13:02:20 +02:00
Fin Maaß
2e3a57fc96 drivers: spi: litex: litespi: flush pending irq before enable
flush pending irq before enableing the irq.

In the litex soc, if an irq is not enabled, it will
it can still be registered and will be pending
if it occurs, it will just not be send to the cpu
until the irq is enabled.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-09-10 13:02:10 +02:00
Andrzej Głąbek
10740d63a5 samples: code_relocation_nocopy: Update configuration for nRF54H20 DK
It is no longer needed to specify the read command parameters in dts,
as the flash driver is capable of obtaining those from SFDP structures,
so the redundant properties are removed.

After commit 612fd940fa got merged, both
the EXMIF and flash nodes in dts are not enabled by default so this
needs to be done in the overlay.

Although nrfutil is still not capable of programming the external
flash on nRF54H20 DK, thus `west flash` will not work in this case,
`nrf54h20dk/nrf54h20/cpuapp` is added as an allowed platform so that
the sample is at least built in CI for it.

Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
2025-09-10 13:02:01 +02:00
Andrzej Głąbek
77f00f06bb drivers: flash_mspi_nor: Add support for DDR in mx25u family
When Octal IO mode is to be used with DDR in mx25u family chips,
bit 1 instead of 0 must be set in the Configuration Register 2 at
address 0.

Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
2025-09-10 13:02:01 +02:00
Andrzej Głąbek
835d77389c drivers: flash_mspi_nor: Add support for "supply-gpios" property
Add support for supplying power to the flash chip by activation of
a GPIO specified through the "supply-gpios" property. Implementation
of gpio_reset() is also slightly modified so that it is consistent
with soft_reset() and the new power_supply() and so that all these
functions can use a common routine that performs a reset recovery
delay.

Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
2025-09-10 13:02:01 +02:00
Andrzej Głąbek
c2b537fb6c drivers: flash_mspi_nor: Remove undesirable initial Quad disabling
Using a GPIO reset for a flash chip that has a dual function pin
(RESET# or SIO3) and is to be used in Quad mode is rather a bad idea
and so is clearing of the Quad Enable bit at every initialization
of the flash driver, since this bit is usually non-volatile, so such
operation means unnecessary wearing of the flash chip. Soft Reset
should be use instead in such case.

Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
2025-09-10 13:02:01 +02:00
Andrzej Głąbek
ff13d4062f drivers: flash_mspi_nor: Add Soft Reset
Add implementation of the most common Soft Reset routine (sequence of
reset enable instruction 0x66 and reset instruction 0x99).

Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
2025-09-10 13:02:01 +02:00
Andrzej Głąbek
2fcb2158ae drivers: flash_mspi_nor: Complete handling of QER, add handling of OER
Complete implementation of quad_enable_set() by adding support for all
possible Quad Enable Requirements (QER) as specified by the SFDP JEDEC
standard (JESD216). Add also corresponding octal_enable_set() to handle
Octal Enable Requirements.

Also remove initial waiting from mxicy_mx25r_post_switch_mode() which
became unneeded, as now such waiting is done in cmd_wrsr() which is
called at the end of quad_enable_set().

Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
2025-09-10 13:02:01 +02:00
Andrzej Głąbek
cafa288197 drivers: flash_mspi_nor: Refactor handling of commands
- Use standard operation codes and parameters from SFDP for handling
  the used flash commands (allow to override some of them through dts
  with the `read-command`, `write-command`, and `rx-dummy` properties)
- Use all available erase types as specified by SFDP
- Allow using all IO modes
- Add support for switching to 4-byte addressing mode
- Use common functions for reading and writing of status registers
  and for enabling write operations
- Switch IO mode (between the target one and Single IO) in a common
  function that performs transfers and do it only when required for
  a given command
- Make checking of JEDEC ID at initialization optional

Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
2025-09-10 13:02:01 +02:00
Andrzej Głąbek
29bc5bf12c drivers: flash_mspi_nor: Get info from dts SFDP arrays
Get parameters for used flash commands and requirements for enabling
Quad and Octal modes from dts uint8-arrays containing data read from
SFDP tables for particular flash chips.
Also introduce `pre_init` quirk that allows alteration of the above
parameters or complementation of them in a specific way for particular
flash chip families.

Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
2025-09-10 13:02:01 +02:00
Cla Mattia Galliard
8e6521a14d net: socket: Specify the packet socket-type, when inputting
Specify the socket type, when inputting a packet into a packet-socket.

Signed-off-by: Cla Mattia Galliard <clamattia@gmail.com>
2025-09-10 13:01:56 +02:00
Cla Mattia Galliard
b9968e9d1f net: core: Decide about l2-processing based on l2_processed-flag
Use the l2_processed-flag to decide whether a network packet needs to be
processed by an L2-handler. This could be used in the future to requeue
packets for later processing by a different traffic class queue.

Signed-off-by: Cla Mattia Galliard <clamattia@gmail.com>
2025-09-10 13:01:56 +02:00
Cla Mattia Galliard
0327bb1ae0 net: pkt: Store is_loopback info in packet meta-data
Store the flag in the packet meta-data so that processing may be deferred
if necessary.

Signed-off-by: Cla Mattia Galliard <clamattia@gmail.com>
2025-09-10 13:01:56 +02:00
Lyle Zhu
d330e86e03 Bluetooth: Classic: l2cap: Fix ACL conn invalid issue
There is an issue found that the L2CAP BR channel attempts to send
signaling commands through fixed channel when the ACL connect is
broken. At this time, the ACL connect of fixed channel is invalid.
Then the `__assert` occurs in function `bt_conn_ref()`.

Fixed the issue by checking the ACL conn of the L2CAP channel before
sending the data.

Here is a referred fault case for this changes,
There are two connected L2CAP Channels. The first one is primary
connection of the profile. And the second one is secondary connection
of the profile. When the primary connection is broken, the secondary
connection should also be disconnected.
In normal case, if the primary connection is disconnected by calling
L2CAP channel disconnection function, the secondary connection will
be disconnected by calling L2CAP channel disconnection in the
disconnected callback of primary connection.

But there is a corner case is that, the ACL connection is broken.
When the disconnected callback of primary connection is called, the
function call of L2CAP channel disconnection for secondary connection
will be asserted. Because the signaling channel (fixed channel ID
0x01) is disconnected and the `chan->conn` of the fixed channel is
NULL in this time.

The call stack is,
o bt_conn_ref() -> Asserted in this function.
o bt_conn_data_ready() -> The parameter is `br_chan->chan.conn`.
  It is the NULL.
o raise_data_ready() -> The parameter `br_chan` is fixed channel.
o bt_l2cap_br_send_cb() -> The parameter is ACL conn and CID of fixed
  channel (cid = 0x01). The channel can be found, but `chan->conn` is
  NULL.
o l2cap_br_chan_send_req()
o bt_l2cap_br_chan_disconnect()
o bt_l2cap_chan_disconnect() -> The parameter is the channel of
  secondary connection. The state of secondary channel is connected,
  because the stack is handling the primary channel disconnecting.
  And the function is called in disconnected callback of primary
  channel.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-09-10 10:27:38 +01:00
Phi Bang Nguyen
2bfa1869d1 drivers: video: dcmipp: Define video device for each pipe
Define a video device for each pipe instead for the main dcmipp device
since the pipe is the device that communicates with application
(zephyr,camera chosen node), not the dcmipp device.

This helps to enable camera controls as well.

Signed-off-by: Phi Bang Nguyen <phibang.nguyen@nxp.com>
2025-09-10 10:27:28 +01:00
Phi Bang Nguyen
ca030fbf88 drivers: video: stm32_dcmipp: Use normal child nodes for pipes
The pipe nodes are not video interfaces. Describe them as normal child
nodes instead of using port/endpoint.

Signed-off-by: Phi Bang Nguyen <phibang.nguyen@nxp.com>
2025-09-10 10:27:28 +01:00
Phi Bang Nguyen
caa9c8c83a drivers: video: stm32_dcmipp: Fix a typo on driver instance name
The driver instance variable name is inst, not n.

Signed-off-by: Phi Bang Nguyen <phibang.nguyen@nxp.com>
2025-09-10 10:27:28 +01:00
Johannes Witzig
944fc0cb75 boards: st: Fix led node label in nucleo wl55jc DTS
The node label of the third LED incorrectly says that it is green while
actually it is red [0].

[0] https://www.st.com/resource/en/user_manual/um2592-stm32wl-nucleo64-board-mb1389-stmicroelectronics.pdf

Signed-off-by: Johannes Witzig <git@funnes.dev>
2025-09-10 10:12:59 +02:00
Pieter De Gendt
16e3df416b tests: net: wifi: config: Actually disable advanced features
The test was supposed to disable the default enabled
CONFIG_WIFI_NM_WPA_SUPPLICANT_ADVANCED_FEATURES instead of enabling it.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-09-10 10:12:47 +02:00
Mark Wang
5d79e8ce8b bluetooth: avdtp: fix dereferencing null pointer sep
Get seid from buf not sep.
CID 548589
CID 548590

Signed-off-by: Mark Wang <yichang.wang@nxp.com>
2025-09-10 10:12:30 +02:00
Aaron Wisner
f7dbf5f800 build-system: Replace ~ when creating library names from path
Bazel likes to use '~` in path of external repos.

Signed-off-by: Aaron Wisner <aaronwisner@gmail.com>
2025-09-10 10:12:16 +02:00
Fabio Baltieri
88f8d85754 do_not_merge: count all completed workflows as completed
Drop the success check for completed workflow so that the job does not
wait forever for workflows that have failed.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2025-09-10 08:27:46 +02:00
Chris Friedt
6529c847fe libc: newlib: limits.h: include posix limits from zephyr
Newlib does not seem to define a number of mandatory POSIX limits
(e.g. minimum values).

Include Zephyr's POSIX definitions in an override of Newlib's limits.h
(when the appropriate application conformance macro is provided).

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-09-10 08:27:38 +02:00
Chris Friedt
25e36f01f3 posix: limits: de-duplicate limit logic
Rather than duplicating limit logic in several places, de-duplicate it
and centralize preprocessor checks in posix_limits.h .

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-09-10 08:27:38 +02:00
Duc Le
ca2e0699a4 boards: st: nucleo_h755zi_q: Fix green LED pin assignment
Update the green LED pin from PA5 to PB0 in the device tree, based on the
default solder bridge configuration in the NUCLEO-H755ZI-Q user manual.

Signed-off-by: Duc Le <levietduc0712@gmail.com>
2025-09-10 08:27:30 +02:00
Lyle Zhu
3052891af6 tests: bluetooth: classic: Add test cases for ATTR ID list feature
Add two optional arguments to shell commands `sdp_client sa_discovery`
and `sdp_client ssa_discovery`.

The first argument is the beginning of the attribute ID.
The second argument is the ending of the attribute ID. If the second
argument is omitted, the ending of the attribute ID is 0xffff.

Add test case `test_sdp_ssa_discover_multiple_records_with_range` to
test the ssa request with attribute ID list.

Add test case `test_sdp_sa_discover_multiple_records_with_range` to
test the sa request with attribute ID list.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-09-10 08:27:21 +02:00
Lyle Zhu
22346b47b8 Bluetooth: Classic: SDP: Support ATTR ID list setting for SA/SSA REQ
In current implementation, the ATTR ID list is set with fixed value
(0x0000, 0xffff). For the case that responding a lot of SDP record
data, the responded data cannot be processed properly due to the
receiving buffer size limitation. In this case, the ATTR ID list can
be used to reduce the length of the responding data. In this way, it
will help reduce the SDP's requirement for receiving data buffer size.

Add the attribute ID list configuration to the SDP discovery request
structure `struct bt_sdp_discover_params`.

If the `struct bt_sdp_discover_params::ids` is NULL, or
`struct bt_sdp_discover_params::ids::count` is 0, the default range
(0x0000, 0xffff) is used.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-09-10 08:27:21 +02:00
Lyle Zhu
fc6fe95ca8 Bluetooth: SDP: Notify partial records if RX buf is full
In current implementation, if the response total data length is more
than the receiving buffer size, the request cannot be completed
properly.

Improve the SDP client with the following changes,
o Notify the received completed SDP records if the case occurs, and
  then start the continuing SDP discovery,
o Stop the SDP discovery if the hold SDP record cannot be saved to the
  receiving buffer,
o Stop the SDP discovery if the `BT_SDP_DISCOVER_UUID_STOP` is
  returned by upper layer.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-09-10 08:27:01 +02:00
Lyle Zhu
aca9345ce6 Bluetooth: Classic: SDP: Refactor parsing of Service Search Pattern
In current implementation, after parsing the received service search
pattern and all matched SDP records are saved in the local variable
`matching_recs`. The max count of SDP records within its SDP
database that match the given service search pattern is
BT_SDP_MAX_SERVICES when parsing the received Service Search Pattern.
And it causes the max count registered SDP records is limited to
BT_SDP_MAX_SERVICES.

Refactor the parsing of service search pattern to remove the
limitation with the following steps.
1. Save the service search pattern to a simple buffer by calling
   the function `parse_service_search_pattern()`.
2. Traverse all registered SDP record and check for each SDP record
   if it is matched with given service search pattern by calling
   function `service_search_pattern_matched()`.
3. Use the matched SDP records to response the SDP request.

And also remove the limitation of the max count of registered SDP
records.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-09-10 08:26:50 +02:00
Lyle Zhu
cbf7576aad Bluetooth: Classic: SDP: Use slist to manage SDP records
Use slist instead of custom singly linked list to manage SDP records.

Check if the SDP record has been registered in the function
`bt_sdp_register_service()`.

Append the new SDP record to the tail of the SDP record list.

Check if the index of SDP record is overflow in the function
`bt_sdp_register_service()`.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-09-10 08:26:50 +02:00
Phuc Pham
7aff307b7a tests: drivers: i2c: Add I2C support for Renesas RZ/A3UL, T2M, N2L, V2L
Add I2C test support for Renesas RZ/A3UL-SMARC,
RZ/T2M-RSK, RZ/N2L-RSK, RZ/V2L-SMARC

Signed-off-by: Phuc Pham <phuc.pham.xr@bp.renesas.com>
Signed-off-by: Nhut Nguyen <nhut.nguyen.kc@renesas.com>
2025-09-10 08:26:40 +02:00
Phuc Pham
d58300b039 boards: renesas: Add I2C support for Renesas RZ/A3UL, T2M, N2L, V2L
Add I2C support for board Renesas RZ/A3UL-SMARC,
RZ/T2M-RSK, RZ/N2L-RSK, RZ/V2L-SMARC

Signed-off-by: Phuc Pham <phuc.pham.xr@bp.renesas.com>
Signed-off-by: Nhut Nguyen <nhut.nguyen.kc@renesas.com>
2025-09-10 08:26:40 +02:00
Phuc Pham
1b77402e46 dts: renesas: Add I2C support for Renesas RZ/A3UL, T2M, N2L, V2L
Add I2C nodes to Renesas RZ/A3UL, T2M, N2L, V2L

Signed-off-by: Phuc Pham <phuc.pham.xr@bp.renesas.com>
Signed-off-by: Nhut Nguyen <nhut.nguyen.kc@renesas.com>
2025-09-10 08:26:40 +02:00
Phuc Pham
ebf3aa050a drivers: i2c: Add I2C support for Renesas RZ/A3UL, T2M, N2L, V2L
Add I2C driver support for Renesas RZ/A3UL, T2M, N2L, V2L

Signed-off-by: Phuc Pham <phuc.pham.xr@bp.renesas.com>
Signed-off-by: Nhut Nguyen <nhut.nguyen.kc@renesas.com>
2025-09-10 08:26:40 +02:00
The Nguyen
b1353daf79 doc: dts: api: add zephyr,crc chosen node
Update the Zephyr specific dts chosen node document for CRC subsystem

Signed-off-by: The Nguyen <the.nguyen.yf@renesas.com>
2025-09-10 08:26:32 +02:00
Duy Vo
8d52a2be69 tests: subsys: crc: add ztests for CRC subsystem
Add ztests for CRC subsystem

Signed-off-by: Duy Vo <duy.vo.xc@bp.renesas.com>
2025-09-10 08:26:32 +02:00
Duy Vo
127c10871b tests: drivers: crc: add ztests for CRC driver
Add ztests for CRC driver

Signed-off-by: Duy Vo <duy.vo.xc@bp.renesas.com>
2025-09-10 08:26:32 +02:00
Duy Vo
e5dbc1d147 samples: subsys: crc: add samples for CRC subsystem
Add samples for CRC subsystem

Signed-off-by: Duy Vo <duy.vo.xc@bp.renesas.com>
2025-09-10 08:26:32 +02:00
Duy Vo
121aeab9b6 samples: drivers: crc: add samples for CRC driver
Add samples for CRC driver

Signed-off-by: Duy Vo <duy.vo.xc@bp.renesas.com>
2025-09-10 08:26:32 +02:00
Duy Vo
0c5af6f25f crc: initial support for CRC subsystem
Migrate support from crc library to new crc subsystem
Add hardware acclerator backend for crc subsystem

Signed-off-by: Duy Vo <duy.vo.xc@bp.renesas.com>
2025-09-10 08:26:32 +02:00
Duy Vo
1326999463 boards: renesas: add CRC dts node for board support
Enable and add CRC node to aliases, chosen for all
Renesas MCU

Signed-off-by: Duy Vo <duy.vo.xc@bp.renesas.com>
2025-09-10 08:26:32 +02:00
Duy Vo
a8c915233e dts: arm: renesas: add device tree node for CRC driver
Add device tree node for CRC driver on all Renesas MCU

Signed-off-by: Duy Vo <duy.vo.xc@bp.renesas.com>
2025-09-10 08:26:32 +02:00
Duy Vo
3d99f67436 drivers: crc: initial support for CRC driver
- Implement CRC syscall.
- Add CRC driver API.
- Introduce support for the CRC driver.

Co-authored-by: Zoe Kaute <zoe.kaute@brillpower.com>
Signed-off-by: Duy Vo <duy.vo.xc@bp.renesas.com>
2025-09-10 08:26:32 +02:00
Tony Han
9b7d73cf67 drivers: ethernet: ksz8081: fix compiling error about missing variable
The missing variable "config" in phy_mc_ksz8081_cfg_link() maybe
used by the macro "USING_INTERRUPT_GPIO", add the variable to avoid
compiling errors.

fixes: #95492

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-09-09 21:42:38 -07:00
Dev Joshi
9320bd2911 drivers: fuelgauge: add support for TI bq40z50 chip
This commit adds driver support for bq40z50 fuel gauging chip from Texas
Instruments.

Signed-off-by: Dev Joshi <quic_devbhave@quicinc.com>
2025-09-09 21:42:23 -07:00
Vinayak Kariappa Chettimada
02f180c052 Bluetooth: Controller: Fix Central and Peripheral ISO single timer use
Fix incorrect LLL scheduling of subsequent subevents when
using single timer implementation, due to missing call to
accumulate the last PDU end timestamp which is essential to
setup next radio start and to setup header complete timeout.

Relates to commit 373dc0db71 ("Bluetooth: Controller:
Single timer use Extended Advertising nRF54L support").

Relates to commit 6e8f081385 ("Bluetooth: Controller: Fix
peripheral assert under single timer use").

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2025-09-09 20:42:55 -04:00
Vinayak Kariappa Chettimada
aef0aee0b4 Bluetooth: Controller: Minor update to conditional compile comment
Minor update to conditional compile comment.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2025-09-09 20:42:55 -04:00
Jordan Yates
c1e9f41710 dfu: img_util: limit slot1_ns_partition usage
Only upload to `slot1_ns_partition` if we're building for TF-M nonsecure
and we're doing split images. Single images need to upload to the whole
`slot1_partition`.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-09-09 20:42:38 -04:00
Jonas Berg
835275caa3 boards: shields: Add Sparkfun Environmental Combo shield
Product photo from
https://www.sparkfun.com/sparkfun-environmental-combo-breakout-ens160-bme280-qwiic.html

Tested with the commands mentioned in index.rst

Signed-off-by: Jonas Berg <jonas.s.t.berg@gmail.com>
2025-09-09 20:42:26 -04:00
Jonas Berg
e2681b3d10 boards: shields: Add Sparkfun SHTC3 humidity sensor shield
Product photo from
https://www.sparkfun.com/sparkfun-humidity-sensor-breakout-shtc3-qwiic.html

Tested with the command mentioned on the index.rst page.

Signed-off-by: Jonas Berg <jonas.s.t.berg@gmail.com>
2025-09-09 20:42:12 -04:00
Emil Gydesen
59ae1595ba Bluetooth: BAP: Merge 2 if's to make sonarcloud happy
Sonarcloud suggests to merge the 2 if statements, which
makes sense to do.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-09-09 20:42:01 -04:00
Anas Nashif
6aec3c1a55 ci: codecov: upload test results to codecov
Upload test results to codecov, now that this service supports tests.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-09-09 20:41:45 -04:00
Jordan Yates
455d948ed6 flash: nrf_qspi_nor: active dwell time
Asynchronously release the device after a small delay to minimise power
state transitions under multiple sequential API calls (e.g. NVS).

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-09-09 20:41:31 -04:00
Jordan Yates
1e307bcae2 sensor: voltage_divider: request calibration
Request calibration of the ADC in the voltage divider driver to improve
the accuracy of the measured voltages.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-09-09 20:40:11 -04:00
Jordan Yates
9f44b011de bluetooth: hci: h4: optional reset pin
Add an optional reset pin for H4 HCI driver.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-09-09 20:39:59 -04:00
Khoa Nguyen
2cd6462c14 MAINTAINERS: Add renesas_elc to Renesas RA Platforms area
Add renesas_elc to Renesas RA Platforms area

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-09-09 20:39:47 -04:00
Khoa Nguyen
261185c108 MAINTAINERS: Add myself as Renesas RA Platforms collaborator
Add myself (khoa-nguyen-18) as collaborator
in the Renesas RA Platforms area

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-09-09 20:39:47 -04:00
Sebastian Bøe
363bad0705 soc: nordic: ironside: Clean up error code docs
Clean up error code docs.

Signed-off-by: Sebastian Bøe <sebastian.boe@nordicsemi.no>
2025-09-09 19:05:47 -04:00
Sebastian Bøe
377a18caee soc: nordic: ironside: Add bootmode service
Added support for the IronSide bootmode service which allows requesting
a reboot into secondary firmware boot mode. In this mode, the secondary
configuration defined in UICR is applied instead of the primary one.

The service provides the ironside_bootmode_secondary_reboot() function
that can pass message data to the boot report of the CPU booted in the
secondary boot mode.

Signed-off-by: Sebastian Bøe <sebastian.boe@nordicsemi.no>
2025-09-09 19:05:47 -04:00
Peter Johanson
4c8c79de7b snippets: Add snippet to use XIAO serial pins for the console
Make it easy to force any XIAO-shaped controller to use the D6/D7 UART
pins for the console. Especially useful for the upcoming XIAO Debugger that
easily forwards XIAO serial over USB.

Signed-off-by: Peter Johanson <peter@peterjohanson.com>
2025-09-09 19:04:18 -04:00
Piotr Kosycarz
7184d2974b boards: nordic: nrf54l15dk: remove support for wdt from flpr
Should not be added in first place, never working.

Signed-off-by: Piotr Kosycarz <piotr.kosycarz@nordicsemi.no>
2025-09-09 22:00:17 +02:00
Muhammad Waleed Badar
df6c1831de net: wifi: Add default for max managed interfaces
This default value 2 of WIFI_NM_MAX_MANAGED_INTERFACES
ensures WiFi network manager can properly handle both
access point and station interfaces.

Signed-off-by: Muhammad Waleed Badar <walid.badar@gmail.com>
2025-09-09 22:00:08 +02:00
Chris Friedt
5815aeca86 manifest: hal_nxp: bump reference to include pagesize fix
Bump hal_nxp module to commit that includes pagesize fix.

Fixes #95285

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-09-09 22:00:01 +02:00
Khaoula Bidani
67d10c66ae boards: st: stm32f4_disco: enable CAN1 to support CAN2 on STM32 BxCAN
CAN2 requires CAN1 to be enabled because both controllers share the
same hardware filter banks. The master-can-reg property in the CAN2
node points to CAN1, making it the hardware filter master. Set CAN1
status to "okay" in the device tree to ensure proper CAN2 operation.

Signed-off-by: Khaoula Bidani <khaoula.bidani-ext@st.com>
2025-09-09 21:59:50 +02:00
Mohamed Moawad
3f0112593b tests: kernel: fix thread_runtime_stats compiler optimization issue
Compilers may optimize away empty while(1){} loops in helper threads,
causing the idle thread to run instead and breaking runtime statistics
measurement.

Use volatile condition variable to prevent optimization.

Signed-off-by: Mohamed Moawad <moawad@synopsys.com>
2025-09-09 21:59:42 +02:00
Johann Fischer
240d99f325 samples: usb: hid-keyboard: allow disabling of remote wakeup
Allow disabling of remote wakeup in cases where a driver does not
support remote wakeup or where the functionality is not desired.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-09-09 21:59:34 +02:00
BUDKE Gerson Fernando
f37660293b west.yml: Bump tf-m with stm32 patches
This brings many tf-m patches related to stm32 SoCs. It sync stm32 with
the vendor mainline patches and add all the necessary pieces to allow
STM32U5Axxx SoC work with TF-M.

The patch list can be checked in:

 https://github.com/zephyrproject-rtos/trusted-firmware-m/pull/145

In addition, redesign the b_u585i_iot02a flash partitions. The current
b_u585i_iot02a NS flash layout difficult the development of large
applications. Since there is an external NOR memory which is already
supported by tf-m, this proposes a layout reconfiguration which allows
bigger bootloader, S and NS software. With this redesign the overlay
in the tests can be safely removed. This new layout is synced with
TF-M 2.1.1 mainline, see:

https://review.trustedfirmware.org/c/TF-M/trusted-firmware-m/+/41126

The bootloader BL2 now will fetch FOTA content from the external memory.

Signed-off-by: BUDKE Gerson Fernando <gerson.budke@leica-geosystems.com>
2025-09-09 21:59:27 +02:00
BUDKE Gerson Fernando
49ed8318c2 boards: st: b_u585i_iot02a: Extract external partitions
The S and NS shares the extermal NOR memory. This extracts the external
NOR partition definitions from b_u585i_iot02a-common.dtsi and move to
b_u585i_iot02a.dts to allow NS software defined their own external
partition layout.

Signed-off-by: BUDKE Gerson Fernando <gerson.budke@leica-geosystems.com>
2025-09-09 21:59:27 +02:00
Mathieu CHOPLAIN
bb699ff2df tests: drivers: clock_control: stm32: remove "clocks" U suffix from overlay
Remove useless U suffix from one overlay of this test.

Signed-off-by: Mathieu CHOPLAIN <mathieu.choplain-ext@st.com>
2025-09-09 17:28:56 +02:00
Mathieu Choplain
8df73d5fc8 dts: bindings: clock: stm32: modernize DT snippets
Update the DT snippets in these bindings following PR 79683.

Signed-off-by: Mathieu Choplain <mathieu.choplain@st.com>
2025-09-09 17:28:56 +02:00
Mathieu Choplain
1fabdd38cf bindings: phy: stm32u5-otghs-phy: remove U suffix in DT snippets
After PR 79683, DTSI files were full of U-suffixed constants in the
clock configurations. This was copied verbatim in this file even
though the U prefix should not be used.

Remove the useless U suffixes in DT snippets of this binding.

Signed-off-by: Mathieu Choplain <mathieu.choplain@st.com>
2025-09-09 17:28:56 +02:00
Mathieu CHOPLAIN
2c9f0678b1 boards: fanke: fk723m1_zgt6: remove U suffix from "clocks" in DTS
Remove useless U suffix from this board's DTS.

Signed-off-by: Mathieu CHOPLAIN <mathieu.choplain-ext@st.com>
2025-09-09 17:28:56 +02:00
Mathieu Choplain
8651cd3f60 boards: makerbase: mks_canable_v20: remove U suffix from "clocks" in DTS
Remove the useless "U" suffixes in the board's DTS.

Signed-off-by: Mathieu Choplain <mathieu.choplain@st.com>
2025-09-09 17:28:56 +02:00
Mathieu Choplain
da8c0fc492 boards: st: remove U suffix from "clocks" in DTS
PR 79683 added unnecessary U suffix to constants in DTS.
This bloats the files for no reason and is starting to spread as people
use the DTS for reference in other places, and so copy this bad pattern.

Remove the useless U suffixes in DTS files for ST boards.

Signed-off-by: Mathieu Choplain <mathieu.choplain@st.com>
2025-09-09 17:28:56 +02:00
Mathieu Choplain
fb55091fd9 dts: arm: st: stm32wl: remove U suffix from "clocks" in DTSI
PR 79683 added unnecessary U suffix to constants in DTSI.
This bloats the files for no reason and is starting to spread as people
use the DTSI for reference in other places, and so copy this bad pattern.

Remove the useless U suffixes in DTSI files for this series.

Signed-off-by: Mathieu Choplain <mathieu.choplain@st.com>
2025-09-09 17:28:56 +02:00
Mathieu Choplain
f4d148a836 dts: arm: st: stm32wba: remove U suffix from "clocks" in DTSI
PR 79683 added unnecessary U suffix to constants in DTSI.
This bloats the files for no reason and is starting to spread as people
use the DTSI for reference in other places, and so copy this bad pattern.

Remove the useless U suffixes in DTSI files for this series.

Signed-off-by: Mathieu Choplain <mathieu.choplain@st.com>
2025-09-09 17:28:56 +02:00
Mathieu Choplain
00b41ebc61 dts: arm: st: stm32wb: remove U suffix from "clocks" in DTSI
PR 79683 added unnecessary U suffix to constants in DTSI.
This bloats the files for no reason and is starting to spread as people
use the DTSI for reference in other places, and so copy this bad pattern.

Remove the useless U suffixes in DTSI files for this series.

Signed-off-by: Mathieu Choplain <mathieu.choplain@st.com>
2025-09-09 17:28:56 +02:00
Mathieu Choplain
b3dc6338b2 dts: arm: st: stm32u5: remove U suffix from "clocks" in DTSI
PR 79683 added unnecessary U suffix to constants in DTSI.
This bloats the files for no reason and is starting to spread as people
use the DTSI for reference in other places, and so copy this bad pattern.

Remove the useless U suffixes in DTSI files for this series.

Signed-off-by: Mathieu Choplain <mathieu.choplain@st.com>
2025-09-09 17:28:56 +02:00
Mathieu Choplain
116f2cc3c1 dts: arm: st: stm32u0: remove U suffix from "clocks" in DTSI
PR 79683 added unnecessary U suffix to constants in DTSI.
This bloats the files for no reason and is starting to spread as people
use the DTSI for reference in other places, and so copy this bad pattern.

Remove the useless U suffixes in DTSI files for this series.

Signed-off-by: Mathieu Choplain <mathieu.choplain@st.com>
2025-09-09 17:28:56 +02:00
Mathieu Choplain
290e184877 dts: arm: st: stm32mp1: remove U suffix from "clocks" in DTSI
PR 79683 added unnecessary U suffix to constants in DTSI.
This bloats the files for no reason and is starting to spread as people
use the DTSI for reference in other places, and so copy this bad pattern.

Remove the useless U suffixes in DTSI files for this series.

Signed-off-by: Mathieu Choplain <mathieu.choplain@st.com>
2025-09-09 17:28:56 +02:00
Mathieu Choplain
74e24c35ca dts: arm: st: stm32l5: remove U suffix from "clocks" in DTSI
PR 79683 added unnecessary U suffix to constants in DTSI.
This bloats the files for no reason and is starting to spread as people
use the DTSI for reference in other places, and so copy this bad pattern.

Remove the useless U suffixes in DTSI files for this series.

Signed-off-by: Mathieu Choplain <mathieu.choplain@st.com>
2025-09-09 17:28:56 +02:00
Mathieu Choplain
7628ac7e24 dts: arm: st: stm32l4: remove U suffix from "clocks" in DTSI
PR 79683 added unnecessary U suffix to constants in DTSI.
This bloats the files for no reason and is starting to spread as people
use the DTSI for reference in other places, and so copy this bad pattern.

Remove the useless U suffixes in DTSI files for this series.

Signed-off-by: Mathieu Choplain <mathieu.choplain@st.com>
2025-09-09 17:28:56 +02:00
Mathieu Choplain
0744927aeb dts: arm: st: stm32l1: remove U suffix from "clocks" in DTSI
PR 79683 added unnecessary U suffix to constants in DTSI.
This bloats the files for no reason and is starting to spread as people
use the DTSI for reference in other places, and so copy this bad pattern.

Remove the useless U suffixes in DTSI files for this series.

Signed-off-by: Mathieu Choplain <mathieu.choplain@st.com>
2025-09-09 17:28:56 +02:00
Mathieu Choplain
f4b7453ee0 dts: arm: st: stm32l0: remove U suffix from "clocks" in DTSI
PR 79683 added unnecessary U suffix to constants in DTSI.
This bloats the files for no reason and is starting to spread as people
use the DTSI for reference in other places, and so copy this bad pattern.

Remove the useless U suffixes in DTSI files for this series.

Signed-off-by: Mathieu Choplain <mathieu.choplain@st.com>
2025-09-09 17:28:56 +02:00
Mathieu Choplain
221b3789d7 dts: arm: st: stm32h7rs: remove U suffix from "clocks" in DTSI
PR 79683 added unnecessary U suffix to constants in DTSI.
This bloats the files for no reason and is starting to spread as people
use the DTSI for reference in other places, and so copy this bad pattern.

Remove the useless U suffixes in DTSI files for this series.

Signed-off-by: Mathieu Choplain <mathieu.choplain@st.com>
2025-09-09 17:28:56 +02:00
Mathieu Choplain
0722161a50 dts: arm: st: stm32h7: remove U suffix from "clocks" in DTSI
PR 79683 added unnecessary U suffix to constants in DTSI.
This bloats the files for no reason and is starting to spread as people
use the DTSI for reference in other places, and so copy this bad pattern.

Remove the useless U suffixes in DTSI files for this series.

Signed-off-by: Mathieu Choplain <mathieu.choplain@st.com>
2025-09-09 17:28:56 +02:00
Mathieu Choplain
a2645cd114 dts: arm: st: stm32h5: remove U suffix from "clocks" in DTSI
PR 79683 added unnecessary U suffix to constants in DTSI.
This bloats the files for no reason and is starting to spread as people
use the DTSI for reference in other places, and so copy this bad pattern.

Remove the useless U suffixes in DTSI files for this series.

Signed-off-by: Mathieu Choplain <mathieu.choplain@st.com>
2025-09-09 17:28:56 +02:00
Mathieu Choplain
1751c237ab dts: arm: st: stm32g4: remove U suffix from "clocks" in DTSI
PR 79683 added unnecessary U suffix to constants in DTSI.
This bloats the files for no reason and is starting to spread as people
use the DTSI for reference in other places, and so copy this bad pattern.

Remove the useless U suffixes in DTSI files for this series.

Signed-off-by: Mathieu Choplain <mathieu.choplain@st.com>
2025-09-09 17:28:56 +02:00
Mathieu Choplain
a8611e0bbc dts: arm: st: stm32g0: remove U suffix from "clocks" in DTSI
PR 79683 added unnecessary U suffix to constants in DTSI.
This bloats the files for no reason and is starting to spread as people
use the DTSI for reference in other places, and so copy this bad pattern.

Remove the useless U suffixes in DTSI files for this series.

Signed-off-by: Mathieu Choplain <mathieu.choplain@st.com>
2025-09-09 17:28:56 +02:00
Mathieu Choplain
9a6dab736c dts: arm: st: stm32f7: remove U suffix from "clocks" in DTSI
PR 79683 added unnecessary U suffix to constants in DTSI.
This bloats the files for no reason and is starting to spread as people
use the DTSI for reference in other places, and so copy this bad pattern.

Remove the useless U suffixes in DTSI files for this series.

Signed-off-by: Mathieu Choplain <mathieu.choplain@st.com>
2025-09-09 17:28:56 +02:00
Mathieu Choplain
1649104779 dts: arm: st: stm32f4: remove U suffix from "clocks" in DTSI
PR 79683 added unnecessary U suffix to constants in DTSI.
This bloats the files for no reason and is starting to spread as people
use the DTSI for reference in other places, and so copy this bad pattern.

Remove the useless U suffixes in DTSI files for this series.

Signed-off-by: Mathieu Choplain <mathieu.choplain@st.com>
2025-09-09 17:28:56 +02:00
Mathieu Choplain
5d8931e9e0 dts: arm: st: stm32f3: remove U suffix from "clocks" in DTSI
PR 79683 added unnecessary U suffix to constants in DTSI.
This bloats the files for no reason and is starting to spread as people
use the DTSI for reference in other places, and so copy this bad pattern.

Remove the useless U suffixes in DTSI files for this series.

Signed-off-by: Mathieu Choplain <mathieu.choplain@st.com>
2025-09-09 17:28:56 +02:00
Mathieu Choplain
094c2258b8 dts: arm: st: stm32f2: remove U suffix from "clocks" in DTSI
PR 79683 added unnecessary U suffix to constants in DTSI.
This bloats the files for no reason and is starting to spread as people
use the DTSI for reference in other places, and so copy this bad pattern.

Remove the useless U suffixes in DTSI files for this series.

Signed-off-by: Mathieu Choplain <mathieu.choplain@st.com>
2025-09-09 17:28:56 +02:00
Mathieu Choplain
7851b5804e dts: arm: st: stm32f1: remove U suffix from "clocks" in DTSI
PR 79683 added unnecessary U suffix to constants in DTSI.
This bloats the files for no reason and is starting to spread as people
use the DTSI for reference in other places, and so copy this bad pattern.

Remove the useless U suffixes in DTSI files for this series.

Signed-off-by: Mathieu Choplain <mathieu.choplain@st.com>
2025-09-09 17:28:56 +02:00
Mathieu Choplain
17f479db4e dts: arm: st: stm32f0: remove U suffix from "clocks" in DTSI
PR 79683 added unnecessary U suffix to constants in DTSI.
This bloats the files for no reason and is starting to spread as people
use the DTSI for reference in other places, and so copy this bad pattern.

Remove the useless U suffixes in DTSI files for this series.

Signed-off-by: Mathieu Choplain <mathieu.choplain@st.com>
2025-09-09 17:28:56 +02:00
Mathieu Choplain
bc541f293a dts: arm: st: stm32c0: remove U suffix from "clocks" in DTSI
PR 79683 added unnecessary U suffix to constants in DTSI.
This bloats the files for no reason and is starting to spread as people
use the DTSI for reference in other places, and so copy this bad pattern.

Remove the useless U suffixes in DTSI files for this series.

Signed-off-by: Mathieu Choplain <mathieu.choplain@st.com>
2025-09-09 17:28:56 +02:00
Erwan Gouriou
d12aa5bf61 drivers: interrupt_controller: stm32: Fix range handling
When iterating over range, we were going one index too far.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2025-09-09 17:28:48 +02:00
Aksel Skauge Mellbye
317c16f3b7 boards: silabs: Add expansion header nexus node
Add gpio-nexus binding and dts nodes for the expansion header on
Series 2 boards.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-09-09 17:28:17 +02:00
Kristoffer Skøien
2faf1aa86d tracing: Added board qualifier to SEGGER SystemView
Added CONFIG_BOARD_QUALIFIERS as target core to SEGGER SystemView config

Signed-off-by: Kristoffer Skøien <kristoffer.skoien@nordicsemi.no>
2025-09-09 17:28:10 +02:00
Emil Gydesen
9f5c4790d9 Bluetooth: CSIP: Fix restore of CSIS on unregister
The bt_csip_set_member_unregister function unregisters
a CSIS instance and restores the attributes to the original
state (the attributes may change during registration).

The previously solution had some issues with a check when
using picolib (‘__ssp_bos_check3’ undeclared), and this
fixes that by using a proper variable for the memcpy.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-09-09 17:27:52 +02:00
Benjamin Cabé
4da532c38f boards: doc: arm: fvp_baser_aemv8r: documentation cleanup
Consolidate board documentation into a single page to avoid duplication
and, more importantly, ensure the board documentation is properly
displayed in the documentation website.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-09 17:27:38 +02:00
Benjamin Cabé
58cd441ac4 boards: doc: arm: mps2: fix documentation structure
Prevent board docs to be mounted twice in the doc hierarchy ;
also leverage zephyr:board-supported-hw:: to provide a short overview
of the features supported by each board variant.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-09 17:27:38 +02:00
Chris Friedt
86eca47529 posix: system_database_r: remove invalid compilation filters
pwd.c and grp.c both had incorrect preprocessor guards around the stubs
that they were implementing. Functions were surrounded by

```cpp
ifdef CONFIG_POSIX_THREAD_SAFE_FUNCTIONS
..
endif /* CONFIG_POSIX_THREAD_SAFE_FUNCTIONS */
```

Which is not at all accurate, since that subprofiling option group is
`(CONFIG_)POSIX_SYSTEM_DATABASE_R` (which is a PR that is in-draft).

Remove the guards, since they are invalid anyway, and at most an
application will link properly. We don't really need the guards anyway,
since conditional compilation will be used to link the files into the
build.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-09-09 17:27:28 +02:00
Benjamin Cabé
fcf13b59e3 tests: kernel: adopt new sys_count_bits util function
Adopt new sys_count_bits helper from util.h and avoid
having conflicting definition

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-09-09 17:27:15 +02:00
Benjamin Cabé
1ee48cf421 drivers: adc: adopt new sys_count_bits util function
Adopt new sys_count_bits helper from util.h and avoid
having conflicting definition

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-09-09 17:27:15 +02:00
Emil Gydesen
5734d7e5cd Bluetooth: Audio: Use generic sys_count_bits to count bits
Instead of re-implementing or assuming that POPCOUNT is available
we now use the generic function from Zephyr.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-09-09 17:27:15 +02:00
Emil Gydesen
b201cb737e include: util: Add generic function to count bits set in a value
Adds a generic function that will count the number of bits set in
a value.

It uses POPCOUNT (e.g. __builtin_popcount for GCC) if available,
or else it will use Brian Kernighan’s Algorithm to count bits.

POPCOUNT will likely always support unsigned ints, but the function
was implemented to use it with uint8_t for the sake of simplicity
and compatibility with Brian Kernighan’s Algorithm.

A generic solution was chosen rather than a macro/function per
type (e.g. uint8_t, uint16_t, etc.) as that is easier to maintain
and also supports array types (e.g. counting the number of bits
in 128 or 256 octet arrays).

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-09-09 17:27:15 +02:00
Benjamin Cabé
6de7702910 boards: doc: native_sim: adopt zephyr-board directive
Update documentation of native_sim to leverage zephyr-board Shinx magic,
in particular the ability to generate the table of supported HW
features.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-09 10:12:00 -04:00
Stephanos Ioannidis
3c1f7f1c71 scripts: requirements-action: Require PyGithub >= 2.7.0
PyGithub >= 2.7.0 is required for the
`Repository.get_collaborator_role_name` function used by the maintainer
check script.

Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
2025-09-09 10:00:29 -04:00
Stephanos Ioannidis
5a4b0ac4d7 scripts: check_maintainer_changes: Fix GitHub user access check
The PyGithub `Repository.get_collaborator_permission` function invokes the
GitHub REST API `/repos/{owner}/{repo}/collaborators/{username}/permission`
and returns the value of the `permission` attribute in the response.

As per the GitHub documentation [1], the `permission` attribute "provides
the legacy base roles of admin, write, read and none, where the maintain
role is mapped to write and the triage role is mapped to read", and this
caused the users with `triage` permission level (i.e. the users in the
`contributors` team) to be incorrectly flagged by the script.

This commit updates the script to use the `get_collaborator_role_name`
function, which correctly returns the up-to-date user permission/role name,
including `maintain` and `triage`.

Note that the `get_collaborator_role_name` function is only available in
PyGithub>=2.7.0.

[1] https://docs.github.com/en/rest/collaborators/collaborators?apiVersion=2022-11-28#get-repository-permissions-for-a-user

Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
2025-09-09 10:00:29 -04:00
Stephanos Ioannidis
f20aa23aa3 ci: maintainer_check: Check out PR MAINTAINERS file
The commit 31ef45e2f1 converted the
maintainer check workflow from `pull_request` to `pull_request_target` --
this caused the "checkout" action to check out the base branch instead of
the pull request branch and effectively made the workflow compare the
mainline MAINTAINERS.yml against itself.

This commit reworks the workflow such that it checks out the pull request
MAINTAINERS.yml separately and compare it against the mainline
MAINTAINERS.yml checked out by the "checkout" action.

Note that the `requirements-actions.txt` and `check_maintainer_changes.py`
files used in this workflow are checked out from the base branch (i.e. does
not contain any modifications) and therefore do not pose a security risk.

Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
2025-09-09 10:00:29 -04:00
Leon Mueller
bc77dfb170 [doc]: correct board target for xiao_nrf54l15
This corrects the board referred to as "xiao_nrf54l15" to the correct
target "xiao_nrf54l15/nrf54l15/cpuapp".

Signed-off-by: Leon Mueller <leon@nowatch.com>
2025-09-09 14:54:14 +02:00
Sylvio Alves
75220de8c6 boards: adafruit: esp32s3: make usb-serial as default
Adafruit feather board's use USB-serial interface
for shell-uart and console as default.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2025-09-09 14:54:04 +02:00
Raffael Rostagno
abc36a6dcb tests: drivers: spi: esp32h2: Add testcase
Add SPI testcase for ESP32-H2.

Signed-off-by: Raffael Rostagno <raffael.rostagno@espressif.com>
2025-09-09 14:53:55 +02:00
Raffael Rostagno
5304062c15 boards: esp32h2_devkitm: Add SPI support
Add SPI support for ESP32-H2.

Signed-off-by: Raffael Rostagno <raffael.rostagno@espressif.com>
2025-09-09 14:53:55 +02:00
Raffael Rostagno
7cb8951829 drivers: spi: esp32h2: Add support
Add GSPI support to ESP32-H2.

Signed-off-by: Raffael Rostagno <raffael.rostagno@espressif.com>
2025-09-09 14:53:55 +02:00
Jacob Wienecke
7201c1f79b tests: drivers: spi: loopback: Fix cache coherency on size9/size24
Make tx_data9 and tx_data24 non-cachable within the 9-bit word size and
24-bit word size functions. This repairs a suspected cache coherency issue
where these buffers are written to cache and therefore not seen correctly
by spi/dma.

Signed-off-by: Jacob Wienecke <jacob.wienecke@nxp.com>
2025-09-09 14:53:36 +02:00
Andrzej Głąbek
0e1dfd9403 drivers: mspi_dw: Add support for DQS line
Add possibility of using data strobe signal (DQS) called RXDS in
the SSI documentation. This signal may be necessary to make use
of DDR modes.
Remove also a TODO comment that should have been removed when support
for DDR was added in fc64fec8fe.

Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
2025-09-09 14:53:24 +02:00
Emil Dahl Juhl
bed6ab353f spi: rtio: fix using rx_bufs entries for tx_buf
Within spi_rtio_copy there'd be a case where the tx_buf pointer would
mistakenly get assigned the address of an rx buffer.
Specifically this would happen in the case where there are no rx buffers
provided, and as such this would lead to pontential nullptr dereferences.

Correct the mistake to let tx_buf correctly point to the provided tx
buffers.

Signed-off-by: Emil Dahl Juhl <emil@s16s.ai>
2025-09-09 14:53:13 +02:00
Mark Holden
827a4f7387 coredump: xtensa: Add support for ARCH_SUPPORTS_COREDUMP_STACK_PTR
Select ARCH_SUPPORTS_COREDUMP_STACK_PTR on xtensa, and provide an
implementation for the arch_coredump_stack_ptr_get function.

Signed-off-by: Mark Holden <mholden@meta.com>
2025-09-09 14:53:00 +02:00
Emil Gydesen
ceb567a62b Bluetooth: ISO: Cleanup BIG before stopped callback
Modify the big_disconnect function to do cleanup_big before
calling the `stopped` callback. This will allow the ISO channels,
as well as the BIG itself, to be reused for other purposes directly
in the stopped callback, without having to offload such actions
to a separate thread.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-09-09 14:52:46 +02:00
Tahsin Mutlugun
69e31d87be drivers: i3c: max32: Do not exit CCC if no known I3C devices exist
I3C targets can join the bus after initialization so CCC should not exit
if no known I3C devices exist at init time.

Signed-off-by: Tahsin Mutlugun <Tahsin.Mutlugun@analog.com>
2025-09-09 12:19:41 +01:00
Gerson Fernando Budke
1e22848f6d boards: atmel: Fix devicetree style
The Zephyr is implementing a linter to catch devicetree problems. This
boards comments are exceptions and are formatted to be compliance with
the linter. However due to the exception the linter check was disabled
to avoid undesirable formatting and keep the original details in the
comments.

Signed-off-by: Gerson Fernando Budke <nandojve@gmail.com>
2025-09-09 12:19:34 +01:00
Loic Domaigne
adea69f408 doc: releases: device_init() changes
document API behaviour changes in migration guide.

Signed-off-by: Loic Domaigne <tech@domaigne.com>
2025-09-09 12:19:20 +01:00
Marek Matej
5761bf8b53 drivers: counter: FIx unused config
Remove unused config from the counter driver Kconfig.
Fix typo in dependant config.

Signed-off-by: Marek Matej <marek.matej@espressif.com>
2025-09-09 12:19:12 +01:00
Piotr Kosycarz
801d5e071d tests: drivers: spi: spi_loopback: skip timing test when COVERAGE
Skip checking timing expectation when COVERAGE is used.
Coverage mode affect timing - making code slower,
as additional operations are needed to gather coverage stats.

Signed-off-by: Piotr Kosycarz <piotr.kosycarz@nordicsemi.no>
2025-09-09 12:19:02 +01:00
Dawid Niedzwiecki
6fddc44d59 mgmt: ec_host_cmd: add USB backend
Add a new ec_host_cmd backend based on USB. The backend uses the new USB
device stack.

The backend implements a vendor-specific (Google) USB interface. It uses
three endpoints:
- bulk OUT to transfer a host command request
- bulk IN to transfer a host command response
- interrupt IN to signal an event and readiness of the response

Signed-off-by: Dawid Niedzwiecki <dawidn@google.com>
2025-09-09 12:18:52 +01:00
Dawid Niedzwiecki
da61ccc4e3 mgmt: ec_host_cmd: add buffer alignment config
Add a new config to specify an alignment for the buffers defined by the
ec_host_cmd handler.

Signed-off-by: Dawid Niedzwiecki <dawidn@google.com>
2025-09-09 12:18:52 +01:00
Benjamin Cabé
1852f9ce52 shields: add MikroE ILLUMINANCE Click shield
Adds support for the MikroE ILLUMINANCE Click shield

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-09 11:49:29 +02:00
Jordan Yates
d02725f4a1 boards: nordic: nrf9160dk: fix NS application SRAM
Fix the node configured as the application SRAM partition. This aligns
this board with all the other Nordic DK `_ns` boards.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-09-09 11:45:35 +02:00
Andreas Kurz
cd9a28fec1 doc: zbus: swap boxes to match bullet points
By swapping the boxes with observer types in the graphics (thanks
Rodrigo) it now matches the description of the bullet points. Before
they were not in the order of the bullet points which confused during
reading.

Signed-off-by: Andreas Kurz <info@akurz.net>
2025-09-09 11:45:25 +02:00
Fin Maaß
d1b6795d34 mgmt: hawkbit: move variable declaration out of if
move variable declaration out of if,
because it will be optimized away, when
optimisation is enabled and leads to
undefined and unwanted behavior.

In my case `send_buf`  of `http_client_req`
was put at the same address and the
http request was malformed.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-09-09 11:45:16 +02:00
Anas Nashif
f5d7081710 kernel: do not include ksched.h in subsys/soc code
Do not directly include and use APIs from ksched.h outside of the
kernel. For now do this using more suitable (ipi.h and
kernel_internal.h) internal APIs until more cleanup is done.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-09-09 11:45:06 +02:00
Marc Reilly
cc0fecd299 sensor: shell_battery: display labels for capacity are mAh
Update the units labels to be mAh

Signed-off-by: Marc Reilly <marc@cpdesign.com.au>
2025-09-09 11:44:59 +02:00
Marc Reilly
5bc2d0758a sensor: shell_battery: fix current value display
The sensor interface gives current channel values in Amps, but the "I"
(current) value is displayed in mA, so needs to be converted accordingly.

Signed-off-by: Marc Reilly <marc@cpdesign.com.au>
2025-09-09 11:44:59 +02:00
Fabio Baltieri
c0c757d892 twister: use csv to split extra argument arguments for west flags
Use csv instead of a plain split to split extra arguments for extra west
flags, this allows correct passing of arguments that are internally
escaped in quotes, such as arugments containing commas.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2025-09-09 11:44:54 +02:00
Rubin Gerritsen
524b72ce40 toolchain: llvm: Provide working BUILD_ASSERT macro
The resulting BUILD_ASSERT macro provided by
zephyr/toolchain/gcc.h is defined to be empty, making the macro
useless.

This commit ensures we define it to something that actually
performs a validation. When not compiling for C++ or >=C11,
we rely on that cdefs.h provides _Static_assert.

Signed-off-by: Rubin Gerritsen <rubin.gerritsen@nordicsemi.no>
2025-09-09 11:44:38 +02:00
Chekhov Ma
d632b1cfd9 dts: nxp_mimx93_a55: make gpio disabled by default
GPIO should be enabled in boards. Disable them by default.

Signed-off-by: Chekhov Ma <chekhov.ma@nxp.com>
2025-09-09 11:44:27 +02:00
Hongbo Wang
6b615d3307 boards: nxp: add support for platform FRDM-IMX93
Add initial support for FRDM-IMX93 board

Building hello_world:
west build -p always -b frdm_imx93/mimx9352/a55 samples/hello_world

Signed-off-by: Hongbo Wang <hongbo.wang@nxp.com>
Signed-off-by: Chekhov Ma <chekhov.ma@nxp.com>
2025-09-09 11:44:27 +02:00
Emil Gydesen
19651491f3 Bluetooth: BAP: Fix compile issue with ep->status.state
The ep->status.state is now just ep->state.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-09-09 11:44:03 +02:00
Łukasz Stępnicki
5be01c95df COLLABORATORS: add lstnl as hal_nordic and nRF Platforms collaborator
Added myself (lstnl) as Nordic platforms and hal nordic collaborator.

Signed-off-by: Łukasz Stępnicki <lukasz.stepnicki@nordicsemi.no>
2025-09-09 10:32:50 +02:00
Emil Gydesen
c7867cb03b tests: Bluetooth: Audio: Increase timeout for AC tests
Increase the EXECUTE_TIMEOUT for the _ac_common.sh tests,
as some of them occasionally times out when the CI
servers are busy (especially for the cap_ac_11_ii tests).

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-09-09 10:32:26 +02:00
Evgenii Kosenko
6d8af7a901 modules: hal_silabs: Adds Extended Scanning support
Adds extended scanning support mapping to silabs ll.

Signed-off-by: Evgenii Kosenko <Evgenii.Kosenko@silabs.com>
2025-09-09 10:32:05 +02:00
Evgenii Kosenko
8ef809f43c drivers: bluetooth: silabs_efr32: Declares periodic sync feature
Adds declaration for Periodic Advertising Synchronization Establishment
procedure supported by controller.

Signed-off-by: Evgenii Kosenko <Evgenii.Kosenko@silabs.com>
2025-09-09 10:32:05 +02:00
Elgin Perumbilly
7c3b003975 boards: silabs: slstk3701a: Enable Si7210 Hall-effect sensor
Enable Si7210 Hall-effect sensor node under I2C2 in slstk3701a DTS for
magnetic field sensing. Include a 3.3V fixed regulator (sensor-enable)
via GPIO for power control.

Signed-off-by: Elgin Perumbilly <elgin.perumbilly@siliconsignals.io>
2025-09-09 10:31:46 +02:00
Yongxu Wang
cfb1ae4efe soc: nxp: imx95: set and restore wakeup irq mask in pm context
The CMC interface controls the entry and exit of the
CPU's low-power mode and the identification of the wake-up source.
To ensure the normal operation of the system's low-power timing sequence,
when transfer IDLE_RUN to IDLE_SLEEP, it is necessary to ensure
that the system is not awakened by the wake-up source during this stage.
Therefore, an IRQ MASK needs to be set on the CMC

Before the CPU enters the low power mode, a wake up mask needs to be set
according to the situation where the interrupt controller is enabled
at that time.
After the cpu exits the low power mode, resume needs to be performed

Signed-off-by: Yongxu Wang <yongxu.wang@nxp.com>
2025-09-09 10:31:22 +02:00
Yongxu Wang
f94b3b9e2b drivers: firmware: scmi: add cpu irq wake interface for nxp vendor
Add scmi_cpu_set_irq_mask function for scmi nxp cpu driver,
set cmc wakeup mask from scmi interface by this.

The CPU_IRQ_WAKE_SET is sent to the scmi platform
to determine which interrupt can wakeup the cpu platform
when the corresponding interrupt occurs

"1" means the IRQ cannot wakeup CPU platform
Each bit corresponds one-to-one with the interrupt
controller of the platform such as nvic in mcore

Signed-off-by: Yongxu Wang <yongxu.wang@nxp.com>
2025-09-09 10:31:22 +02:00
Yongxu Wang
6e69e50613 drivers: firmware: scmi: return converted status directly
Simplify error handling by returning scmi_status_to_errno(status)
directly after message response.

Signed-off-by: Yongxu Wang <yongxu.wang@nxp.com>
2025-09-09 10:31:22 +02:00
Omri Sarig
f55dcc91df scripts/logging: Add support to RTT reading from JLink
Update the live logger to be able to read the logs from JLink, over the RTT
protocol.
The support for the jlink-rtt mode is done similarly to the currently
existing support for files and serials.

The implementation for opening the jlink for reading was inspired by the
available example from the pylink python implementation here:
https://github.com/square/pylink/blob/master/examples/pylink-rtt

In contrast to the other readers, the jlink-rtt does not support being
polled from 'select'.
To make it possible to work with such readers, the code was updated to
allow for busy-waits, instead of smart polling.
This change does not affect the current readers, but support the new
reader, and allows for future readers which does not support smart polling.

Signed-off-by: Omri Sarig <omsi@demant.com>
2025-09-09 10:31:03 +02:00
Emil Gydesen
e9b6d62908 Bluetooth: BAP: Server: Verify that ep is from ASCS
Adds a function that verifies if an endpoint pointer is
part of ASCS before performing CONTAINER_OF operations on it.

Adds checks for this in the BAP Unicast server public API.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-09-09 10:30:45 +02:00
Emil Gydesen
ed74992799 Bluetooth: ASCS: Fix minor sonarqube issue with missing else
Add missing else.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-09-09 10:30:45 +02:00
Emil Gydesen
40644e75a3 Bluetooth: ASCS: Use ASE_ID where applicable
Use the ASE_ID where applicable instead of ase->ep.id

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-09-09 10:30:45 +02:00
Emil Gydesen
bcf7469ce8 tests: Bluetooth: tester: Don't access BAP endpoints directly
Modify the code to use the public API to get the endpoint
ID and direction rather than relying on the internal
bap_endpoint.h header file.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-09-09 10:30:45 +02:00
Emil Gydesen
ce9e8f8b9e Bluetooth: BAP: Fix bad use of bt_ascs_ase_status
The bt_ascs_ase_status was stored directly in the
struct bt_bap_ep, which was an issue as
bt_ascs_ase_status is a variable sized struct.
The struct could have been moved to the end of
bt_bap_ep to avoid the issues it caused, but
there is no actual reason to use that struct
rather than storing the ID and state as
seperate values.

The ascs_ep_get_state exists but was not widely
used in ascs. Modify places to use the function
instead of directly accessing the state.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-09-09 10:30:45 +02:00
Benjamin Cabé
b985b3d55f doc: smf: fix graphviz warning in state diagram
Modified the smf_hierarchical_initial digraph so that it doesn't use a
`<>` label as that makes recent versions of graphviz unhappy (warning).

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-09 09:10:44 +02:00
Szymon Janc
634a5d0ef3 tests: Bluetooth: Tester: Enable debug logs by default
This is mainly used for testing.

Signed-off-by: Szymon Janc <szymon.janc@codecoup.pl>
2025-09-09 09:10:35 +02:00
Quang Le
4b24f1443f tests: drivers: spi_loopback: Add latency for Renesas RZ/G3S-SMARC
Set `CONFIG_SPI_IDEAL_TRANSFER_DURATION_SCALING` to 16 for board
Renesas `rzg3s_smarc`

Signed-off-by: Quang Le <quang.le.eb@bp.renesas.com>
Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
2025-09-09 09:10:12 +02:00
Quang Le
c1da8c50df drivers: spi: Fix spi_loopback failure for Renesas RZ/G3S-SMARC
Fixes the `spi_loopback` test failure on board Renesas `rzg3s_smarc` since
the test has been updated by zephyrproject-rtos/zephyr/pull/86383

Signed-off-by: Quang Le <quang.le.eb@bp.renesas.com>
Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
2025-09-09 09:10:12 +02:00
Martin Hoff
301bd161db samples: adc_dt: correct pin allocation for xg29_4412a
Change the pin configuration (xg9_rb4412a) for the IADC to allocate
odd bus 0 on GPIO port C/D instead of GPIO port B, allowing access to
pin PD3.

Signed-off-by: Martin Hoff <martin.hoff@silabs.com>
2025-09-09 07:35:59 +02:00
Benjamin Cabé
0871c7e147 doc: conf.py: fix warnings about docs appearing in index and index-tex
Implement a workaround to ensure only one of the two top-level indexes
is included in the documentation build, preventing Sphinx from issuing
INFO notices about documents being referenced in both index and
index-tex toctrees.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-09 07:35:46 +02:00
Marc Herbert
d6f28bd3d4 doc: external_content: exclude backup files
For most people, this should be only an optimization.

For Emacs TRAMP (ssh) users, this fixes the following build failure when
a file is not saved yet. This build failure happens because TRAMP
creates backup files on the local host and seems to use deliberately
broken symlinks as "bookmarks" to those local files.

file snippets/.#index.rst

 snippets/.#index.rst: broken symbolic link
                       to userid@hostname.intel.com.966265369654

```
Traceback
=========

 Traceback (most recent call last):
   File "/usr/lib/python3.13/site-packages/sphinx/events.py", in emit
     results.append(listener.handler(self.app, *args))
                    ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^
   File " doc/_extensions/zephyr/external_content.py", in sync_contents
     shutil.copy(src, dst)
     ~~~~~~~~~~~^^^^^^^^^^
   File "/usr/lib/python3.13/shutil.py", line 428, in copy
     copyfile(src, dst, follow_symlinks=follow_symlinks)
     ~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
   File "/usr/lib/python3.13/shutil.py", line 260, in copyfile
     with open(src, 'rb') as fsrc:
          ~~~~^^^^^^^^^^^
 FileNotFoundError: [Errno 2] No such file or directory:
                      '___/zephyr/snippets/.#index.rst'
```

Just for the record, these backup files were already discussed in commit
bab7df9f9e (".gitignore: do not ignore .\#* files")

Signed-off-by: Marc Herbert <marc.herbert@intel.com>
2025-09-09 07:35:25 +02:00
Andre Heinemans
1282481654 soc: nxp: imx95: increase ROM_START_OFFSET in case of BOOTLOADER_MCUBOOT
The insertion of MCUBOOT header will shift the rom code ahead with
0x800 bytes because of memory alignment

Signed-off-by: Andre Heinemans <andre.heinemans@nxp.com>
2025-09-09 07:35:15 +02:00
Vinayak Sunilkumar Priyadarsini
a87ed22fe1 drivers: sensor: adxl367: fix for temperature readout
Fix to ensure temperature is sampled at the same timestamp as x,y,z axis
data.

Signed-off-by: Vinayak Sunilkumar Priyadarsini <Vinayak.SunilkumarPriyadarsini@analog.com>
2025-09-09 07:35:00 +02:00
Sudan Landge
43962de81c tests: arm: validate PAC keys on context switch
Test PAC by corrupting lr from a userspace thread.

Signed-off-by: Sudan Landge <sudan.landge@arm.com>
2025-09-09 07:34:50 +02:00
Sudan Landge
7660136c06 tests: arm: validate arm PAC with pseudo rng
Add tests to validate pointer authentication code (PAC) in 2 scenarios:
1. when the PAC key itself is corrupted
2. when lr is corrupted on stack

Signed-off-by: Sudan Landge <sudan.landge@arm.com>
2025-09-09 07:34:50 +02:00
Sudan Landge
5efbd54886 tests: arm: new test for PACBTI
Add a simple test to test branch target identification (BTI).

Signed-off-by: Sudan Landge <sudan.landge@arm.com>
2025-09-09 07:34:50 +02:00
Sudan Landge
1916ec27b5 arch: arm: support PACBTI with unprivileged mode
To support unprivileged mode (CONFIG_USERSPACE):
- Set unprivileged PAC key registers when system is in unprivileged
  mode.
- Add `bti` after each svc call, to make sure that the indirect jumps on
  `lr` while returning from an `svc` don't result in a usage fault.

Signed-off-by: Sudan Landge <sudan.landge@arm.com>
2025-09-09 07:34:50 +02:00
Sudan Landge
09cc777daa arch: arm: add per thread unique PAC key support
Add a config option to set unique PAC keys per thread and
make sure to retain them during context switch.

Signed-off-by: Sudan Landge <sudan.landge@arm.com>
2025-09-09 07:34:50 +02:00
Sudan Landge
8e5f828fef arch: arm: enable PACBTI support
As part of enabling PACBTI support:
- Add config options to enforce PAC and BTI features
- Enable these config options based on the branch protection choice
  selected for `ARM_PACBTI`
- Enforce PACBTI, based on the new config options, by enabling
  corresponding PACBTI bits in CONTROL register and in FVP.

Signed-off-by: Sudan Landge <sudan.landge@arm.com>
2025-09-09 07:34:50 +02:00
Sudan Landge
40c127d9db arch: simplify PACBTI config options for arm and arm64
Rename and move PACBTI config options to common Kconfig so that
they could be re-used for arm64 in the future.

Signed-off-by: Sudan Landge <sudan.landge@arm.com>
2025-09-09 07:34:50 +02:00
Fin Maaß
53debb6ab7 drivers: spi: nxp: lpspi: use DT_DRV_COMPAT to fix native cs
As the other spi_nxp_lpspi driver source files use DT_DRV_COMPAT
and that is used to determine in spi_context.h if the gpio cs
code is used, it also have to be defined in spi_nxp_lpspi_common.c
so there is no mismatch and breaking of the driver.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-09-09 07:34:36 +02:00
Daniel DeGrasse
c7e60346a0 tracing: ctf: take IRQ lock before generating timestamp
CTF tracing relies on all packet timestamps being increasing- if a
timestamp of a later packet is less than the prior packet, the CTF
parser assumes the timestamp field has overflowed and adds to the
overall timestamp to account for this.

When taking a timestamp for a CTF packet, it was possible for an interrupt
to occur before the packet was submitted to the tracing core framework
but after the timestamp was generated. The interrupt itself would
generate a tracing event with a later timestamp then the packet in
question, leading to the packets being recorded out of order.

To resolve this, take an IRQ lock before generating the timestamp and
release it after submitting the packet to the tracing core.

Signed-off-by: Daniel DeGrasse <ddegrasse@tenstorrent.com>
2025-09-08 15:54:35 -04:00
Holt Sun
8240ed9880 test: subsys: disable settings.tfm_its test for lpcxpresso55s69 ns.
For lpcxpresso55s69 TF-M, it has persistent storage available,
not applied for settings.tfm_its test.

Signed-off-by: Holt Sun <holt.sun@nxp.com>
2025-09-08 15:54:25 -04:00
Hiago De Franco
027c66a2ac boards: verdin_am62: add initial support
Add initial support for Toradex Verdin AM62.

Signed-off-by: Hiago De Franco <hiago.franco@toradex.com>
2025-09-08 15:53:50 -04:00
Fin Maaß
a584e36e27 arch: cache: set default of line size
set default of line size to the
value from the devicetree.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-09-08 15:53:36 -04:00
Fin Maaß
f64126f487 arch: Kconfig: use if to siplify
use if to simplyfy dependencys.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-09-08 15:53:36 -04:00
S Mohamed Fiaz
4cd8bcc523 drivers: i2c: silabs: add async combined write-read
Added support for combined write-read operations
with repeated start for asynchronous (async)
operations in the Silabs I2C driver for EFR
series 2 devices.

Signed-off-by: S Mohamed Fiaz <Fiaz.Mohamed@silabs.com>
2025-09-08 15:52:34 -04:00
S Mohamed Fiaz
ea6ec6b15a drivers: i2c: silabs: i2c driver for EFR series 2 devices
Added the i2c driver for EFR series 2 devices.

Signed-off-by: S Mohamed Fiaz <Fiaz.Mohamed@silabs.com>
2025-09-08 15:52:34 -04:00
S Mohamed Fiaz
a048ed841d west.yml: Update hal_silabs revision
This commit updates the hal_silabs revision

Signed-off-by: S Mohamed Fiaz <Fiaz.Mohamed@silabs.com>
2025-09-08 15:52:34 -04:00
Sebastian Bøe
3648cd87d4 soc: nordic: gen_uicr: Support secondary firmware
Add support for secondary firmware in gen_uicr.py.

Signed-off-by: Sebastian Bøe <sebastian.boe@nordicsemi.no>
2025-09-08 15:52:20 -04:00
Sebastian Bøe
67b0e045eb soc: nordic: Update UICR format
Update the C struct for UICR to the latest revision.

Signed-off-by: Sebastian Bøe <sebastian.boe@nordicsemi.no>
2025-09-08 15:52:20 -04:00
Sebastian Bøe
180f1f8917 soc: noric: nrf54h20: Fix custom CONFIG_KERNEL_BIN_NAME bug
Fix bug where users were unable to name their binary Bøe when building
for nrf54h20.

Signed-off-by: Sebastian Bøe <sebastian.boe@nordicsemi.no>
2025-09-08 15:52:20 -04:00
Immo Birnbaum
1d6a77280d doc: releases: migration guide entry
Describe the modification of the hardware checksum offloading
configuration for the Xilinx GEM Ethernet controller.

Signed-off-by: Immo Birnbaum <mail@birnbaum.immo>
2025-09-08 15:51:57 -04:00
Immo Birnbaum
6803583927 dts: bindings: ethernet: adjust Xilinx GEM binding
Adjust the DT binding of the Xilinx GEM controller so that the
explicit enable flags for RX/TX hardware checksum offloading are
turned into explicit disable flags.

Signed-off-by: Immo Birnbaum <mail@birnbaum.immo>
2025-09-08 15:51:57 -04:00
Immo Birnbaum
4ef8e14297 drivers: ethernet: xlnx_gem: invert RX/TX checksum offload behaviour
Invert the RX/TX checksum offloading to hardware behaviour so that
hardware checksum generation / evaluation for TCP/UDP packets on
either IPv4 or IPv6 is enabled by default, but can be disabled
explicitly.

This behaviour, which should optimize network performance, has
become possible with the implementation of the device driver's
get_config function, indicating to the network stack that HW
checksum offloading is not supported for, e.g., ICMP packets.
Before this implementation, enabling the HW checksum offloading
resulted in invalid packets for any unsupported protocol and
could therefore not be enabled by default.

For QEMU, which does not support the emulation of the HW
checksum offloading, automatically disable the offloading.

Signed-off-by: Immo Birnbaum <mail@birnbaum.immo>
2025-09-08 15:51:57 -04:00
Carles Cufi
9e52df0234 Revert "boards: nordic: nRF54L15DK: set HFXO clock latency to 854"
This reverts commit d0a076984b.

The reason for reverting this is that the only safe startup time for
54L series is the one defined in the SoC .dtsi files (1650us), and other
startup times are not reliable even when tested on a particular board.

Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
2025-09-08 15:51:46 -04:00
Carles Cufi
480f2cee44 maintainers: Remove Hubert Mis from hal_nordic collaborators
Hubert no longer works at Nordic.

Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
2025-09-08 15:51:29 -04:00
Anas Nashif
5e6e3a6de3 arch: mark z_prep_c as FUNC_NORETURN
z_prep_c does not return, mark it as such consistently across
architectures.  We had some arches do that, others not. This resolves a
few coding guideline violations in arch code.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-09-08 15:51:07 -04:00
Anas Nashif
6ad396344d soc: espressif: declare z_cstart
Declare z_cstart as extern as otherwise we will need to pull in
kernel_internal.h.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-09-08 15:51:07 -04:00
Anas Nashif
a2705b7072 arch: x86: declare z_interrupt_stacks
Declare z_interrupt_stacks as extern.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-09-08 15:51:07 -04:00
Anas Nashif
25938ec2bf arch: init: rename z_data_copy -> arch_data_copy
Do not use private API prefix and move to architecture interface as
those functions are primarily used across arches and can be defined by
the architecture.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-09-08 15:51:07 -04:00
Anas Nashif
6b46c826aa arch: init: z_bss_zero -> arch_bss_zero
Do not use private API prefix and move to architecture interface as
those functions are primarily used across arches and can be defined by
the architecture.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-09-08 15:51:07 -04:00
Anas Nashif
d98184c8cb arch: boot: rename z_early_memcpy -> arch_early_memcpy
Do not use private API prefix and move to architecture interface as
those functions are primarily used across arches and can be defined by
the architecture.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-09-08 15:51:07 -04:00
Anas Nashif
641fc4a018 arch: init: rename z_early_memset -> arch_early_memset
Do not use private API prefix and move to architecture interface as
those functions are primarily used across arches and can be defined by
the architecture.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-09-08 15:51:07 -04:00
Anas Nashif
06b179233e kernel: use cmake macro for adding kernel files
simplify cmake file and use macros for adding files that are part of the
kernel based on the configuration.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-09-08 15:51:07 -04:00
Anas Nashif
e39de0e257 device: move device syscalls to device.c
Move device model syscalls to device.c and decouple kernel header from
device related routines. Cleanup init to have only what is needed.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-09-08 15:51:07 -04:00
Anas Nashif
7aa3269a3f kernel: boot args kconfig cleanup
Cleanup kconfig of bootargs and put everything in one menuconfig.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-09-08 15:51:07 -04:00
Anas Nashif
c9269b9b85 kernel: init: move boot arg handling to own file
No reason for this to be part of already packed init.c.
Moved to own file and build only when BOOTARGS are enabled.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-09-08 15:51:07 -04:00
Anas Nashif
53a51b9287 kernel/arch: Move early init/boot code out of init/kernel headers
Cleanup init.c code and move early boot code into arch/ and make it
accessible outside of the boot process/kernel.

All of this code is not related to the 'kernel' and is mostly used
within the architecture boot / setup process.

The way it was done, some soc code was including kernel_internal.h
directly, which shouldn't be done.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-09-08 15:51:07 -04:00
Anas Nashif
16aa0ef1de tests: interrupt: move under arch
Move under arch, as this is not a kernel feature really. arch also
matches the test idcentifier in place.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-09-08 15:51:07 -04:00
Anas Nashif
e14833016f tests: gen_isr_table: move under arch
Move under arch, as this is not a kernel feature really. arch also
matches the test idcentifier in place.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-09-08 15:51:07 -04:00
Anas Nashif
f15ea42fe9 tests: xip: move under arch
Move under arch, as this is not a kernel feature really. arch also
matches the test idcentifier in place.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-09-08 15:51:07 -04:00
Anas Nashif
cf6db903e1 kernel: move xip into arch/common
Not really a kernel feature, more for architecture, which is reflected
in how XIP is enabled and tested. Move it to architecture code to keep
which much of the 'implementation' and usage is.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-09-08 15:51:07 -04:00
Jilay Pandya
1e855434e1 shields: fix mikroe h bridge 4 click
- minor corrections in h bridge 4 click
- add references in shield documentation
- update overlay

Signed-off-by: Jilay Pandya <jilay.pandya@outlook.com>
2025-09-08 11:13:44 -04:00
Chun-Chieh Li
13315d1ea0 drivers: usb: udc: numaker: refactor large isr function
For clear, this splits large isr function into smaller ones which are
dedicated for handling plug/unplug, wakeup, reset/suspend/resume, SOF,
Setup, and endpoint events.

Signed-off-by: Chun-Chieh Li <ccli8@nuvoton.com>
2025-09-08 11:13:23 -04:00
Chun-Chieh Li
866080d9c5 drivers: usb: udc: numaker: remove unneeded volatile
This removes unneeded 'volatile' qualifier for normal memory variables.

Signed-off-by: Chun-Chieh Li <ccli8@nuvoton.com>
2025-09-08 11:13:23 -04:00
Chun-Chieh Li
e6bc45504a drivers: usb: udc: numaker: support VBUS detect
This supports VBUS detect (caps.can_detect_vbus). This requires enables
VBUS detect interrupt early.

Signed-off-by: Chun-Chieh Li <ccli8@nuvoton.com>
2025-09-08 11:13:23 -04:00
Chun-Chieh Li
cf787d4e80 drivers: usb: udc: numaker: refine timing to clear interrupt flags
This refines interrupt handling sequence: clear interrupt flag first,
then process it. This can avoid one race condition when interrupt flag
is cleared but not processed for interrupts of the same type coming
very closely.

Signed-off-by: Chun-Chieh Li <ccli8@nuvoton.com>
2025-09-08 11:13:23 -04:00
Chun-Chieh Li
4516310f4b drivers: usb: udc: numaker: fix timing to enable D+ pull-up
This fixes timing to enable D+ pull-up so that device won't be recognized
by host until user application invokes udc_enable().

Signed-off-by: Chun-Chieh Li <ccli8@nuvoton.com>
2025-09-08 11:13:23 -04:00
Chun-Chieh Li
3bd8b61ff9 drivers: usb: udc: numaker: fix typo
This fixes typo in isr function name.

Signed-off-by: Chun-Chieh Li <ccli8@nuvoton.com>
2025-09-08 11:13:23 -04:00
Chun-Chieh Li
e2ff312b28 drivers: usb: udc: numaker: recover unwanted assignment break
This recovers unwanted assignment break caused by clang-format.

Signed-off-by: Chun-Chieh Li <ccli8@nuvoton.com>
2025-09-08 11:13:23 -04:00
Fabio Baltieri
9a276296dd tests: posix: add a test for types.h and _GNU_SOURCE
This combination (with newlib) seems to catch some build failures due to
include depdenency, adding a test file so it gets caught in CI.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2025-09-08 11:11:40 -04:00
Fabio Baltieri
fbe0c9feb9 utils: utf8: change utf8_count_chars return to int
Change utf8_count_chars return type to int and drop thesys/types.h, this
way the function does not depend on posix types.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2025-09-08 11:11:40 -04:00
Fabio Baltieri
8366365c03 util: move utf8 utils to a separate header
This moves the declaration of the utf8 utils defined in lib/utils/utf8.c
in their own header. Main reason to do this is that the current setup
requried adding an include for sys/types.h in util.h, which can result
in a build falure due to a circular header depdenecy when using:

CONFIG_POSIX_API=y
CONFIG_NEWLIB_LIBC=y
_GNU_SOURCE

the loop and error are:

- include/sys/types.h:50: <- this is a NEWLIB one
- include/zephyr/posix/sys/select.h:9:
- include/zephyr/posix/posix_types.h:30:
- include/zephyr/kernel.h:17:
- include/zephyr/kernel_includes.h:25:
- include/zephyr/sys/atomic.h:18:

include/zephyr/sys/util.h:705:1:
error: unknown type name 'ssize_t'

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2025-09-08 11:11:40 -04:00
Sebastian Bøe
789f3cea8c soc: nordic: ironside: Update boot report structures and error codes
Restructure the IronSide boot report interface with enhanced error
reporting and boot context information.

Signed-off-by: Sebastian Bøe <sebastian.boe@nordicsemi.no>
2025-09-08 16:01:46 +02:00
Aksel Skauge Mellbye
a43eea5765 boards: silabs: Clean up flash partitions
Ensure that flash partitioning makes use of the entire flash with
no overlapping regions. Remove scratch partitions.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-09-08 16:01:38 +02:00
Martin Hoff
da58cc2698 boards: silabs: xg29_rb4412a: add dht alias and regulator
This commit allows xg29_rb4412a board to correctly run the dht_polling
sample.

Signed-off-by: Martin Hoff <martin.hoff@silabs.com>
2025-09-08 16:01:28 +02:00
Mandus Börjesson
8409c87e36 mgmt: hawkbit: Add option to not reboot system after update
Some applications might require cleanup prior to performing a system
reboot. Add an option that disables hawkbits automatic reboots so that
it can be postponed until the application is ready.

Signed-off-by: Mandus Börjesson <borjessonmandus@gmail.com>
2025-09-08 16:01:18 +02:00
Vinayak Kariappa Chettimada
aefeeb922b Bluetooth: Controller: Fix missing ISO Receiver address capture
Fix missing ISO Receiver access address capture that caused
ISO PDU reception error. Missing access address capture for
subsequent subevent when prior subevent did not have an
anchor point sync prevent proper drift compensation hence
causing ISO PDU reception error for the entire BIG event.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2025-09-08 16:01:09 +02:00
Vinayak Kariappa Chettimada
85f4f0483b Bluetooth: Controller: Fix ISO Sync Receiver subevent jitter
Fix the jitter considered in the PDU reception in the
subevents of ISO Sync Receiver to not exceed such that the
reception is scheduled late (causing assertion).

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2025-09-08 16:01:09 +02:00
Erik Sandgren
1dadb5df2c samples: Bluetooth: Print that sample does not support > 1 subevent
This commit adds a print statement to both connected_cs_initiator and
connected_cs_reflector which will inform the user that the sample cannot
handle more than 1 CS subevent per CS procedure.

This is preferable over the sample failing silently if a user is
attempting to use such a configuration.

Signed-off-by: Erik Sandgren <erik.sandgren@nordicsemi.no>
2025-09-08 16:00:56 +02:00
Erik Sandgren
e135588a31 samples: Bluetooth: Update params in connected CS sample
This change is made to fix the currently broken CS samples, to prevent
them from just printing error messages like:
`Channel sounding not enough memory to store step data (530 > 512)`.

This change updates the CS config and procedure parameters. The
intention with the updated parameter selection is to use parameters that
result in:
- CS procedures with only a single CS subevent per procedure. This is
  required because the samples are not designed to support > 1 subevent
  per procedure and the samples will break down if > 1 subevent per
  procedure is generated.
- A limited number of CS steps per procedure. This is achieved by
  setting `.channel_map_repetition = 1` and only enabling a limited set
  of channels in the channel map. This is required because the samples
  are designed to transfer all of the step data from one procedure, from
  the reflector to the initiator, using a single GATT write operation
  which is limited to 512 bytes.

Signed-off-by: Erik Sandgren <erik.sandgren@nordicsemi.no>
2025-09-08 16:00:56 +02:00
Jeppe Odgaard
c6f31346d2 net: config: sntp: add resync interval range
RFC4330 section 10 states:

A client MUST NOT under any conditions use a poll interval less then 15
seconds.

Signed-off-by: Jeppe Odgaard <jeppe.odgaard@prevas.dk>
2025-09-08 14:41:25 +02:00
Chaitanya Tata
09c9ba7bdc manifest: hostap: Pull change to remove old MbedTLS support
Pull change to remove support for MbedTLS old versions.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-09-08 14:37:48 +02:00
S Mohamed Fiaz
e8fd6b1a12 driver: pwm: pwm_silabs_siwx91x: Add pm device support for pwm driver
This commit enables the pm device driver support
for the pwm_silabs_siwx91x driver.

Signed-off-by: S Mohamed Fiaz <fiaz.mohamed@silabs.com>
2025-09-08 14:37:36 +02:00
Kai Cheng
62a4506c6d Bluetooth: SDP: fix sdp record not uninitialized
sdp matching_recs maybe filled with uninitialized record. if
sdp_svc_search_req come from remote with invalid max_rec_count,
which is greater than num_services, matching_recs would response
uninitialized record result.

Signed-off-by: Kai Cheng <chengkai@xiaomi.com>
2025-09-08 14:37:29 +02:00
Kyle Micallef Bonnici
bcc920db47 devicetree: format files in tests/subsys/usb
Applying dts-linter results for files in

tests/subsys/usb

Signed-off-by: Kyle Micallef Bonnici <kylebonnici@hotmail.com>
2025-09-08 10:28:48 +01:00
Kyle Micallef Bonnici
4ddc384a54 devicetree: format files in tests/subsys/storage
Applying dts-linter results for files in

tests/subsys/storage

Signed-off-by: Kyle Micallef Bonnici <kylebonnici@hotmail.com>
2025-09-08 10:28:48 +01:00
Kyle Micallef Bonnici
f1038a6f6c devicetree: format files in tests/subsys/sd
Applying dts-linter results for files in

tests/subsys/sd

Signed-off-by: Kyle Micallef Bonnici <kylebonnici@hotmail.com>
2025-09-08 10:28:48 +01:00
Kyle Micallef Bonnici
fa51c44c44 devicetree: format files in tests/subsys/pm
Applying dts-linter results for files in

tests/subsys/pm

Signed-off-by: Kyle Micallef Bonnici <kylebonnici@hotmail.com>
2025-09-08 10:28:48 +01:00
Kyle Micallef Bonnici
931f322fd7 devicetree: format files in tests/subsys/modem
Applying dts-linter results for files in

tests/subsys/modem

Signed-off-by: Kyle Micallef Bonnici <kylebonnici@hotmail.com>
2025-09-08 10:28:48 +01:00
Kyle Micallef Bonnici
de15901ae1 devicetree: format files in tests/subsys/mem_mgmt
Applying dts-linter results for files in

tests/subsys/mem_mgmt

Signed-off-by: Kyle Micallef Bonnici <kylebonnici@hotmail.com>
2025-09-08 10:28:48 +01:00
Kyle Micallef Bonnici
ece7bd7fa8 devicetree: format files in tests/subsys/ipc
Applying dts-linter results for files in

tests/subsys/ipc

Signed-off-by: Kyle Micallef Bonnici <kylebonnici@hotmail.com>
2025-09-08 10:28:48 +01:00
Kyle Micallef Bonnici
e74dc147e5 devicetree: format files in tests/subsys/fs
Applying dts-linter results for files in

tests/subsys/fs

Signed-off-by: Kyle Micallef Bonnici <kylebonnici@hotmail.com>
2025-09-08 10:28:48 +01:00
Kyle Micallef Bonnici
5f5dce2ebc devicetree: format files in tests/subsys/dfu
Applying dts-linter results for files in

tests/subsys/dfu

Signed-off-by: Kyle Micallef Bonnici <kylebonnici@hotmail.com>
2025-09-08 10:28:48 +01:00
Kyle Micallef Bonnici
fb62a82c04 devicetree: format files in tests/subsys/debug
Applying dts-linter results for files in

tests/subsys/debug

Signed-off-by: Kyle Micallef Bonnici <kylebonnici@hotmail.com>
2025-09-08 10:28:48 +01:00
Kyle Micallef Bonnici
746cf6fa2e devicetree: format files in tests/misc/kconfigoptions
Applying dts-linter results for files in

tests/misc/kconfigoptions

Signed-off-by: Kyle Micallef Bonnici <kylebonnici@hotmail.com>
2025-09-08 10:28:48 +01:00
Kyle Micallef Bonnici
0fccc5ecc1 devicetree: format files in tests/lib/shared_multi_heap
Applying dts-linter results for files in

tests/lib/shared_multi_heap

Signed-off-by: Kyle Micallef Bonnici <kylebonnici@hotmail.com>
2025-09-08 10:28:48 +01:00
Kyle Micallef Bonnici
014ad10045 devicetree: format files in tests/lib/devicetree
Applying dts-linter results for files in

tests/lib/devicetree

Signed-off-by: Kyle Micallef Bonnici <kylebonnici@hotmail.com>
2025-09-08 10:28:48 +01:00
Kyle Micallef Bonnici
25bbbb51ae devicetree: format files in tests/kernel/mem_protect
Applying dts-linter results for files in

tests/kernel/mem_protect

Signed-off-by: Kyle Micallef Bonnici <kylebonnici@hotmail.com>
2025-09-08 10:28:48 +01:00
Kyle Micallef Bonnici
9459c634aa devicetree: format files in tests/kernel/interrupt
Applying dts-linter results for files in

tests/kernel/interrupt

Signed-off-by: Kyle Micallef Bonnici <kylebonnici@hotmail.com>
2025-09-08 10:28:48 +01:00
Kyle Micallef Bonnici
01320ce042 devicetree: format files in tests/drivers/uart
Applying dts-linter results for files in

tests/drivers/uart

Signed-off-by: Kyle Micallef Bonnici <kylebonnici@hotmail.com>
2025-09-08 10:28:48 +01:00
Kyle Micallef Bonnici
bcf78ec70f devicetree: format files in tests/drivers/tee
Applying dts-linter results for files in

tests/drivers/tee

Signed-off-by: Kyle Micallef Bonnici <kylebonnici@hotmail.com>
2025-09-08 10:28:48 +01:00
Kyle Micallef Bonnici
9f527dc39f devicetree: format files in tests/drivers/syscon
Applying dts-linter results for files in

tests/drivers/syscon

Signed-off-by: Kyle Micallef Bonnici <kylebonnici@hotmail.com>
2025-09-08 10:28:48 +01:00
Kyle Micallef Bonnici
0dd8ed1e4b devicetree: format files in tests/drivers/stepper
Applying dts-linter results for files in

tests/drivers/stepper

Signed-off-by: Kyle Micallef Bonnici <kylebonnici@hotmail.com>
2025-09-08 10:28:48 +01:00
Kyle Micallef Bonnici
73956f45c8 devicetree: format files in tests/drivers/spi
Applying dts-linter results for files in

tests/drivers/spi

Signed-off-by: Kyle Micallef Bonnici <kylebonnici@hotmail.com>
2025-09-08 10:28:48 +01:00
Kyle Micallef Bonnici
7450ea9177 devicetree: format files in tests/drivers/sensor
Applying dts-linter results for files in

tests/drivers/sensor

Signed-off-by: Kyle Micallef Bonnici <kylebonnici@hotmail.com>
2025-09-08 10:28:48 +01:00
Kyle Micallef Bonnici
d7f0983c61 devicetree: format files in tests/drivers/rtc
Applying dts-linter results for files in

tests/drivers/rtc

Signed-off-by: Kyle Micallef Bonnici <kylebonnici@hotmail.com>
2025-09-08 10:28:48 +01:00
Kyle Micallef Bonnici
82c286c094 devicetree: format files in tests/drivers/regulator
Applying dts-linter results for files in

tests/drivers/regulator

Signed-off-by: Kyle Micallef Bonnici <kylebonnici@hotmail.com>
2025-09-08 10:28:48 +01:00
Kyle Micallef Bonnici
6913619ab2 devicetree: format files in tests/drivers/pwm
Applying dts-linter results for files in

tests/drivers/pwm

Signed-off-by: Kyle Micallef Bonnici <kylebonnici@hotmail.com>
2025-09-08 10:28:48 +01:00
Kyle Micallef Bonnici
bd327a878a devicetree: format files in tests/drivers/pinctrl
Applying dts-linter results for files in

tests/drivers/pinctrl

Signed-off-by: Kyle Micallef Bonnici <kylebonnici@hotmail.com>
2025-09-08 10:28:48 +01:00
Kyle Micallef Bonnici
b6fa8c1a23 devicetree: format files in tests/drivers/mspi
Applying dts-linter results for files in

tests/drivers/mspi

Signed-off-by: Kyle Micallef Bonnici <kylebonnici@hotmail.com>
2025-09-08 10:28:48 +01:00
Kyle Micallef Bonnici
ead3a74114 devicetree: format files in tests/drivers/memc
Applying dts-linter results for files in

tests/drivers/memc

Signed-off-by: Kyle Micallef Bonnici <kylebonnici@hotmail.com>
2025-09-08 10:28:48 +01:00
Kyle Micallef Bonnici
e50ac06756 devicetree: format files in tests/drivers/mbox
Applying dts-linter results for files in

tests/drivers/mbox

Signed-off-by: Kyle Micallef Bonnici <kylebonnici@hotmail.com>
2025-09-08 10:28:48 +01:00
Kyle Micallef Bonnici
68ec973177 devicetree: format files in tests/drivers/interrupt_controller
Applying dts-linter results for files in

tests/drivers/interrupt_controller

Signed-off-by: Kyle Micallef Bonnici <kylebonnici@hotmail.com>
2025-09-08 10:28:48 +01:00
Kyle Micallef Bonnici
1186adc854 devicetree: format files in tests/drivers/input
Applying dts-linter results for files in

tests/drivers/input

Signed-off-by: Kyle Micallef Bonnici <kylebonnici@hotmail.com>
2025-09-08 10:28:48 +01:00
Kyle Micallef Bonnici
226e910c45 devicetree: format files in tests/drivers/i2s
Applying dts-linter results for files in

tests/drivers/i2s

Signed-off-by: Kyle Micallef Bonnici <kylebonnici@hotmail.com>
2025-09-08 10:28:48 +01:00
Kyle Micallef Bonnici
8ccabacb26 devicetree: format files in tests/drivers/i2c
Applying dts-linter results for files in

tests/drivers/i2c

Signed-off-by: Kyle Micallef Bonnici <kylebonnici@hotmail.com>
2025-09-08 10:28:48 +01:00
Kyle Micallef Bonnici
e36e9516ad devicetree: format files in tests/drivers/gpio
Applying dts-linter results for files in

tests/drivers/gpio

Signed-off-by: Kyle Micallef Bonnici <kylebonnici@hotmail.com>
2025-09-08 10:28:48 +01:00
Kyle Micallef Bonnici
c91b3de6a8 devicetree: format files in tests/drivers/fuel_gauge
Applying dts-linter results for files in

tests/drivers/fuel_gauge

Signed-off-by: Kyle Micallef Bonnici <kylebonnici@hotmail.com>
2025-09-08 10:28:48 +01:00
Kyle Micallef Bonnici
008d0d9cc9 devicetree: format files in tests/drivers/flash_simulator
Applying dts-linter results for files in

tests/drivers/flash_simulator

Signed-off-by: Kyle Micallef Bonnici <kylebonnici@hotmail.com>
2025-09-08 10:28:48 +01:00
Kyle Micallef Bonnici
3f09c05860 devicetree: format files in tests/drivers/flash
Applying dts-linter results for files in

tests/drivers/flash

Signed-off-by: Kyle Micallef Bonnici <kylebonnici@hotmail.com>
2025-09-08 10:28:48 +01:00
Kyle Micallef Bonnici
5fbff92735 devicetree: format files in tests/drivers/eeprom
Applying dts-linter results for files in

tests/drivers/eeprom

Signed-off-by: Kyle Micallef Bonnici <kylebonnici@hotmail.com>
2025-09-08 10:28:48 +01:00
Kyle Micallef Bonnici
c48a0e71e4 devicetree: format files in tests/drivers/dma
Applying dts-linter results for files in

tests/drivers/dma

Signed-off-by: Kyle Micallef Bonnici <kylebonnici@hotmail.com>
2025-09-08 10:28:48 +01:00
Kyle Micallef Bonnici
aa57e18446 devicetree: format files in tests/drivers/counter
Applying dts-linter results for files in

tests/drivers/counter

Signed-off-by: Kyle Micallef Bonnici <kylebonnici@hotmail.com>
2025-09-08 10:28:48 +01:00
Kyle Micallef Bonnici
c8f2284e13 devicetree: format files in tests/drivers/coredump
Applying dts-linter results for files in

tests/drivers/coredump

Signed-off-by: Kyle Micallef Bonnici <kylebonnici@hotmail.com>
2025-09-08 10:28:48 +01:00
Kyle Micallef Bonnici
6a75efab3e devicetree: format files in tests/drivers/comparator
Applying dts-linter results for files in

tests/drivers/comparator

Signed-off-by: Kyle Micallef Bonnici <kylebonnici@hotmail.com>
2025-09-08 10:28:48 +01:00
Kyle Micallef Bonnici
9b4189e872 devicetree: format files in tests/drivers/clock_control
Applying dts-linter results for files in

tests/drivers/clock_control

Signed-off-by: Kyle Micallef Bonnici <kylebonnici@hotmail.com>
2025-09-08 10:28:48 +01:00
Kyle Micallef Bonnici
afa310f104 devicetree: format files in tests/drivers/can
Applying dts-linter results for files in

tests/drivers/can

Signed-off-by: Kyle Micallef Bonnici <kylebonnici@hotmail.com>
2025-09-08 10:28:48 +01:00
Kyle Micallef Bonnici
f1664b0e0b devicetree: format files in tests/drivers/build_all
Applying dts-linter results for files in

tests/drivers/build_all

Signed-off-by: Kyle Micallef Bonnici <kylebonnici@hotmail.com>
2025-09-08 10:28:48 +01:00
Kyle Micallef Bonnici
8da9d5117b devicetree: format files in tests/drivers/adc
Applying dts-linter results for files in

tests/drivers/adc

Signed-off-by: Kyle Micallef Bonnici <kylebonnici@hotmail.com>
2025-09-08 10:28:48 +01:00
Kyle Micallef Bonnici
e70034b10b devicetree: format files in tests/cmake/hwm
Applying dts-linter results for files in

tests/cmake/hwm

Signed-off-by: Kyle Micallef Bonnici <kylebonnici@hotmail.com>
2025-09-08 10:28:48 +01:00
Kyle Micallef Bonnici
c4e6557f12 devicetree: format files in tests/boot/mcuboot_recovery_retention
Applying dts-linter results for files in

tests/boot/mcuboot_recovery_retention

Signed-off-by: Kyle Micallef Bonnici <kylebonnici@hotmail.com>
2025-09-08 10:28:48 +01:00
Kyle Micallef Bonnici
396bde4068 devicetree: format files in tests/boards/nrf
Applying dts-linter results for files in

tests/boards/nrf

Signed-off-by: Kyle Micallef Bonnici <kylebonnici@hotmail.com>
2025-09-08 10:28:48 +01:00
Kyle Micallef Bonnici
639264205d devicetree: format files in tests/boards/mec172xevb_assy6906
Applying dts-linter results for files in

tests/boards/mec172xevb_assy6906

Signed-off-by: Kyle Micallef Bonnici <kylebonnici@hotmail.com>
2025-09-08 10:28:48 +01:00
Kyle Micallef Bonnici
776e00b79d devicetree: format files in tests/boards/mec15xxevb_assy6853
Applying dts-linter results for files in

tests/boards/mec15xxevb_assy6853

Signed-off-by: Kyle Micallef Bonnici <kylebonnici@hotmail.com>
2025-09-08 10:28:48 +01:00
Kyle Micallef Bonnici
789532cb59 devicetree: format files in tests/bluetooth/shell
Applying dts-linter results for files in

tests/bluetooth/shell

Signed-off-by: Kyle Micallef Bonnici <kylebonnici@hotmail.com>
2025-09-08 10:28:48 +01:00
Kyle Micallef Bonnici
babae28c5d devicetree: format files in tests/arch/arm
Applying dts-linter results for files in

tests/arch/arm

Signed-off-by: Kyle Micallef Bonnici <kylebonnici@hotmail.com>
2025-09-08 10:28:48 +01:00
Kyle Micallef Bonnici
177bd7289b devicetree: format files in samples/tfm_integration
Applying dts-linter results for format files in

samples/tfm_integration

Signed-off-by: Kyle Micallef Bonnici <kylebonnici@hotmail.com>
2025-09-08 10:23:22 +01:00
Kyle Micallef Bonnici
02f1c8d86c devicetree: format files in samples/subsys
Applying dts-linter results for format files in

samples/subsys

Signed-off-by: Kyle Micallef Bonnici <kylebonnici@hotmail.com>
2025-09-08 10:23:22 +01:00
Kyle Micallef Bonnici
62750836ce devicetree: format files in samples/shields
Applying dts-linter results for format files in

samples/shields

Signed-off-by: Kyle Micallef Bonnici <kylebonnici@hotmail.com>
2025-09-08 10:23:22 +01:00
Kyle Micallef Bonnici
ec0c3d93dc devicetree: format files in samples/sensor
Applying dts-linter results for format files in

samples/sensor

Signed-off-by: Kyle Micallef Bonnici <kylebonnici@hotmail.com>
2025-09-08 10:23:22 +01:00
Kyle Micallef Bonnici
f6bb5dfecc devicetree: format files in samples/net
Applying dts-linter results for format files in

samples/net

Signed-off-by: Kyle Micallef Bonnici <kylebonnici@hotmail.com>
2025-09-08 10:23:22 +01:00
Kyle Micallef Bonnici
48713d0263 devicetree: format files in samples/modules
Applying dts-linter results for format files in

samples/modules

Signed-off-by: Kyle Micallef Bonnici <kylebonnici@hotmail.com>
2025-09-08 10:23:22 +01:00
Kyle Micallef Bonnici
66ddbaf45f devicetree: format files in samples/drivers
Applying dts-linter results for format files in

samples/drivers

Signed-off-by: Kyle Micallef Bonnici <kylebonnici@hotmail.com>
2025-09-08 10:23:22 +01:00
Kyle Micallef Bonnici
b12160ba3e devicetree: format files in samples/boards
Applying dts-linter results for format files in

samples/boards

Signed-off-by: Kyle Micallef Bonnici <kylebonnici@hotmail.com>
2025-09-08 10:23:22 +01:00
Kyle Micallef Bonnici
a9335b7ee8 devicetree: format files in samples/bluetooth
Applying dts-linter results for format files in

samples/bluetooth

Signed-off-by: Kyle Micallef Bonnici <kylebonnici@hotmail.com>
2025-09-08 10:23:22 +01:00
Kyle Micallef Bonnici
dafb63bfc7 devicetree: format files in samples/basic
Applying dts-linter results for format files in

samples/basic

Signed-off-by: Kyle Micallef Bonnici <kylebonnici@hotmail.com>
2025-09-08 10:23:22 +01:00
Michał Stasiak
e817d8d721 tests: drivers: clock_control_api: fix Kconfig logic
Kconfig was using symbol with redundant CONFIG prefix.

Signed-off-by: Michał Stasiak <michal.stasiak@nordicsemi.no>
2025-09-08 09:59:58 +01:00
Jonas Berg
8c3efa4244 boards: RPi debug probe as general purpose microcontroller board
This is for using the Raspberry Pi Debug Probe as a general purpose
microcontroller board, not for using it in its original debugging role.

Product photo from https://www.raspberrypi.com/products/debug-probe/

Tested with the samples mentioned in the index.rst page.

Signed-off-by: Jonas Berg <jonas.s.t.berg@gmail.com>
2025-09-08 09:59:51 +01:00
Johan Alfvén
8bdca5805a hal_ethos_u: decouple ETHOS_U_LOG_LEVEL from STDOUT_CONSOLE
Previously the ETHOS_U_LOG_LEVEL choice and int symbol only existed
when STDOUT_CONSOLE was enabled. This caused build and compile issues
if logging was disabled, since CONFIG_ETHOS_U_LOG_LEVEL would be
undefined and C code using LOG_MODULE_REGISTER() would fail.

- Replace dependency on STDOUT_CONSOLE with LOG.
- Ensure ETHOS_U_LOG_LEVEL is always defined, even when LOG is off.
  In that case default to 0 (NONE).

This guarantees a valid CONFIG_ETHOS_U_LOG_LEVEL is present in all
configurations and allows clean builds regardless of console settings.

Signed-off-by: Johan Alfvén <johan.alfven@arm.com>
2025-09-08 09:59:36 +01:00
Gang Li
3e92c3f5ab modules: hostap: WPA Auto security supports WPA/WPA2 mixed mode
WPA Auto security adds support for WPA/WPA2/WPA3 PSK security.
Supports auto security mode, enabling STA to select the most secure mode
among WPA, WPA2, and WPA3 based on the capabilities of the AP.

Signed-off-by: Gang Li <gang.li_1@nxp.com>
2025-09-08 09:59:26 +01:00
Gang Li
f72f7a27e9 modules: hostap: fix WPA2-PSK connection failures
When the external AP is in WPA/WPA2 mixed mode, the group cipher uses
TKIP, the group cipher mismatches, so the connection fails.
Fix: set the WPA2 group cipher to TKIP + CCMP by default.

Signed-off-by: Gang Li <gang.li_1@nxp.com>
2025-09-08 09:59:26 +01:00
Tomasz Chyrowicz
7a54526de0 samples: Enable Direct XIP through sysbuild
Enable Direct XIP with revert MCUboot mode through sysbuild
configuration.

Signed-off-by: Tomasz Chyrowicz <tomasz.chyrowicz@nordicsemi.no>
2025-09-08 09:59:18 +01:00
Jonas Berg
6798c081ba boards: Add Adafruit Itsybitsy RP2040
Product photo from https://learn.adafruit.com/assets/101892
with the license CC BY-SA 3.0

Tested with the samples mentioned in the index.rst file.

Signed-off-by: Jonas Berg <jonas.s.t.berg@gmail.com>
2025-09-08 09:58:52 +01:00
Chris Friedt
a4498bd4d1 tests: posix: common: use realtime clock instead of monotonic
Use the realtime clock, since that is always guaranteed to be available
with _POSIX_TIMERS.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-09-08 09:58:44 +01:00
Utsav Munendra
19988acd90 drivers: flash_mspi: Implement flash API get_size
Implement the Zephyr Flash Driver API for completeness.

Signed-off-by: Utsav Munendra <utsavm@meta.com>
2025-09-08 09:50:20 +02:00
Aaron Ye
b7f7f7b54f samples: logging: logger: Add sample case for SWO logger
Add the SWO logger test item to the logger sample. Also add the
logging tag to the tested platform.

Signed-off-by: Aaron Ye <aye@ambiq.com>
2025-09-08 09:48:44 +02:00
Aaron Ye
229fdf0fe7 logging: backends: Use CMSIS 6 register defines in SWO initialization
ARM CMSIS 6 has different ITM and TPI register definition comparing
with CMSIS 5. Update the swo initialization to use CMSIS 6 defines.
For the Cortex-M cores which are higher than Cortex-CM7, the LAR
has been removed from ITM.

Signed-off-by: Aaron Ye <aye@ambiq.com>
2025-09-08 09:48:44 +02:00
Elmo Lan
ee2ebbd3a8 drivers: gpio: rts5912 remap gpio number
Provide a map from RTS5912_GPIO_NUM_000 to RTS5912_GPIO_NUM_131
for appication call be easier read.
For example:
Used: <&gpiog 6 (GPIO_OUTPUT)>
Now: <RTS5912_GPIO_NUM_102 (GPIO_OUTPUT)>

Signed-off-by: Elmo Lan <elmo_lan@realtek.com>
2025-09-08 09:48:22 +02:00
Tomáš Juřena
87dbd2e2a4 drivers: counter: stm32: Disable BYPSHAD in init
Disable the shadow registers bypass in init function before RTC
deinitialisation to avoid infinite loop as the bit cases the RSF bit
to be kept in 0. The systick is not working in PRE_KERNEL_1 so it will
never timeout.

Signed-off-by: Tomáš Juřena <jurenatomas@gmail.com>
2025-09-08 09:48:12 +02:00
Tomáš Juřena
c1bbed6fab samples: boards: st: power_mgmt: blinky: Enable NUCLEO-C071RB
Enables the NUCLEO-C071RB board to the blinky sample to be run by twister.

Signed-off-by: Tomáš Juřena <jurenatomas@gmail.com>
2025-09-08 09:48:12 +02:00
Tomáš Juřena
c38a22ec67 dts: arm: st: c0: Add power states
Adds power-states node to support stop mode. As idle timer is used RTC.

Signed-off-by: Tomáš Juřena <jurenatomas@gmail.com>
2025-09-08 09:48:12 +02:00
Tomáš Juřena
e4e666b951 soc: st: stm32: stm32c0x: Add stop mode support
Enables low power stop mode for C0.

Code is taken from F4 family, tested on nucleo-c71rb with
samples/basic/blinky.

Power consumption in run mode 3.7 mA, in stop mode ~87 uA.

Signed-off-by: Tomáš Juřena <jurenatomas@gmail.com>
2025-09-08 09:48:12 +02:00
Glenn Andrews
e38ba02c38 drivers: w1: use correct reset byte for overdrive mode
Test the received byte against the byte sent depending on the speed
selected, not the standard-speed mode byte every time.

Signed-off-by: Glenn Andrews <glenn.andrews.42@gmail.com>
2025-09-08 09:48:01 +02:00
Alexandre Francoeur
171ed89f67 boards: mxchip: az3166_iotdevkit: Add "accel0" alias to dts
dts improvement for MXCHIP - AZ3166 IoT Dev kit.
I added accel0 alias for compatibility with the accel_polling sample.

Signed-off-by: Alexandre Francoeur <afrancoeur@uzinakod.com>.
2025-09-07 10:18:58 +01:00
Yurii Lozynskyi
c09edc10fc drivers: watchdog: Shift watchdog to pdl
Shift ifx_cat1 watchdog driver to using pdl instead of hal calls

Signed-off-by: Yurii Lozynskyi <yurii.lozynskyi@infineon.com>
2025-09-06 18:16:55 -04:00
Benjamin Cabé
1f3fb17a77 doc: shields: fix wrong board name for mimxrt1170_evk//cm7
fix a typo in board name (mixm... instead of mimx...) and actually use
a proper board name anyway since it looks like this was still using
a HWMv1 name.
Fixes zephyrproject-rtos/zephyr#95015

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-06 08:29:50 -04:00
Benjamin Cabé
fa201b3c2e include: drivers: doc: uniformize wording of Doxygen groups
Use consistent wording for Doxygen groups of device driver interfaces.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-06 06:36:28 -04:00
Benjamin Cabé
fbd2e28f43 include: drivers: add Doxygen @file tag
Ensure all top-level device driver headers have a Doxygen @file tag and
put the @file in the same group as the driver API.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-06 06:36:28 -04:00
Benjamin Cabé
3e9f46c1ca doc: doxygen: improve name/desc of Device Drivers group
add an actual meaningful brief and detailed desc

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-06 06:36:28 -04:00
Benjamin Cabé
08e41ca0ba include: drivers: lora: follow naming scheme for doxygen group
Minor changes so that LoRa API uses the same naming scheme as other
device drivers.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-06 06:36:28 -04:00
Benjamin Cabé
1d2b03feb3 include: drivers: edac: follow naming scheme for doxygen group
Minor changes so that edac API uses the same naming scheme as other
device drivers.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-06 06:36:28 -04:00
Benjamin Cabé
82765de253 include: mspi: fold MSPI devicetree macros doc under MSPI group
Move MSPI devicetree macros documentation under MSPI group to not
clutter top-level device drivers page.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-06 06:36:28 -04:00
Benjamin Cabé
b98c2106c3 include: arch: cache: move arch/cache.h to arch-interface Doxygen group
This module was erroneously showing up in Device Drivers category.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-06 06:36:28 -04:00
Benjamin Cabé
1cb7fc7e1e include: dt-bindings: fix doxygen group for sent.h
do not redefine sent_interface group, but rather add to existing one

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-06 06:36:28 -04:00
Benjamin Cabé
80c2cb82c6 drivers: sensor: include: add doxygen for sensor_data_generic_header
Basically just fixing the comment style to use javadoc-style comments
so that doxygen picks these up

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-06 06:36:28 -04:00
Benjamin Cabé
604759e970 doc: groups.dox: fix mcumgr transport layers group
The group dedicated to transport layers for MCUmgr ended up being
orphan, probably due to a bad rebase in the recent past. This commit is
fixing it.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-06 06:36:28 -04:00
Fabio Baltieri
1947a11e48 ci: twister: fix result merge when there's only 1 runner
The current test result merge command uses artifacts/*/*/twister.xml as
an argument but that directory hierarchy only works if there's >1
runners. If twister decies to only schedule one, then the only file is
going to be in

artifacts/twister-out/twister.xml

and the current command is going to fail with a file not found error.

Using a ** glob for finding the files.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2025-09-06 06:36:06 -04:00
Fabio Baltieri
9b7c4c85c8 list_backports: fix typo
Fix typo, organisation -> organization.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2025-09-06 06:35:37 -04:00
Fabio Baltieri
102be7bbf0 scripts: do_not_merge: take a repo and org argument
Take a repo and org argument to the do_not_merge.py script so it can be
used in the testing repository.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2025-09-06 06:35:37 -04:00
Krzysztof Chruściński
09634c9869 tests: kernel: common: Extend bitarray test
Add test for sys_bitarray_alloc and sys_bitarray_free with 32 bit
bitarray which is using an optimized algorithm.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-09-06 10:38:18 +02:00
Krzysztof Chruściński
a6c04cf7d8 lib: utils: bitarray: Use optimized version for 32 bit array
When bitarray is limited to a single 32 bit word then bitmask_find_gap
can be used which is much faster than bit by bit search which is
used in bitarray spanning across multiple 32 bit words. Tests shows
that allocation and freeing is 2-3 times faster.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-09-06 10:38:18 +02:00
Krzysztof Chruściński
187204a754 tests: unit: util: Add test for bitmask_find_gap
Add test for new util function.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-09-06 10:38:18 +02:00
Krzysztof Chruściński
53c2d58ff8 lib: utils: Add function for finding group of cleared bits in a bit mask
Add function which finds contiguous number of bits which are not set
in the 32 bit mask.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-09-06 10:38:18 +02:00
Taras Zaporozhets
993b642f2e drivers: flash: sam0: Fix incorrect page write size
According to the datasheet, one page is made of 64 bytes
and one row is made of 4 pages, that is 256 bytes.
This MR fixes the incorrect page write size for sam0
and sets it to 64 bytes.

Signed-off-by: Taras Zaporozhets <zaporozhets.taras@gmail.com>
2025-09-06 10:35:25 +02:00
Camille BAUD
00eafee64c boards: bflb: ai_m62_12f: add buttons and leds
add the available button and leds

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-09-06 10:35:17 +02:00
Camille BAUD
02d51a7059 drivers: gpio: Add BL61x GPIO driver
Adds the gpio driver for BL616 and 618

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-09-06 10:35:17 +02:00
Camille BAUD
e0ca880329 dts: bflb: Fix GPIO node for bl61x
makes gpio driver work for bl61x

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-09-06 10:35:17 +02:00
Henrik Brix Andersen
ec1e05c421 drivers: hwinfo: add HWINFO driver for native_sim
Add a HWINFO driver for native_sim with support for getting the device
ID. Default device ID will be that returned from gethostid(), but the ID
can be overriden via the -hostid command line option.

Signed-off-by: Henrik Brix Andersen <henrik@brixandersen.dk>
2025-09-06 08:40:34 +02:00
Alessandro Manganaro
c53d1facde samples: bluetooth: peripheral_hr: adding stm32wba configuration
Adding configuration to facilitate the testing of
stdby BLE feature for stm32wbax nucleo boards

Signed-off-by: Alessandro Manganaro <alessandro.manganaro@st.com>
2025-09-06 08:40:02 +02:00
Alessandro Manganaro
d808d9e2f9 drivers: bluetooth: hci: stm32wba driver update for pm
Reworking  pm implementation in stm32wba ble hci driver.
Enabling "no-reset" quirk for stm32wba ble hci driver to
maintain specific configuration required for pm.

Signed-off-by: Alessandro Manganaro <alessandro.manganaro@st.com>
2025-09-06 08:40:02 +02:00
Alessandro Manganaro
75a726196c boards: st: nucleo_wbaxxxx: clock settings changes
system clock at 32MHz (nucleo_wba55cg and nucleo_wba65ri).
32 Mhz is the lowest value to manage radio events.
lsi clock disabled (nucleo_wba55cg).

Signed-off-by: Alessandro Manganaro <alessandro.manganaro@st.com>
2025-09-06 08:40:02 +02:00
Charles Hardin
81283c678a kernel: event api extensions to clear events and avoid phantom events
This is variation of the PR to handle phantom events and hopefully
this get merged into the PR to land.

See-also: https://github.com/zephyrproject-rtos/zephyr/pull/89624
Signed-off-by: Charles Hardin <ckhardin@gmail.com>
2025-09-05 16:50:28 -04:00
Ivynya Lu
41a7f95f35 soc: nordic: nrf53: assign pin xl1,xl2 to app core if lfxo disabled
Fixes zephyrproject-rtos/zephyr#92663

Disabled LFXO via devicetree allows pin 0.00 and 0.01 to work correctly
as gpio by assigning it to the app core instead of peripheral. Removed
deprecated Kconfig options so DT is the only config path now.

Signed-off-by: Ivynya Lu <ivy.lu@level.co>
2025-09-05 16:49:38 -04:00
Appana Durga Kedareswara rao
8f359542b8 boards: versalnet_apu: Add QEMU support via west and Twister
Add support for running the APU ELF on QEMU using the
`west build -t run_qemu` target. QEMU integration is now wired through
west and Twister for the `versalnet_apu` board.

Signed-off-by: Appana Durga Kedareswara rao <appana.durga.kedareswara.rao@amd.com>
2025-09-05 16:48:38 -04:00
Appana Durga Kedareswara rao
aee42fddf4 boards: amd: Add generic APU board support for Versal Net SoC (Cortex-A78)
Introduce a generic board configuration for the APU on the Versal Net SoC,
which is based on the ARM Cortex-A78 processor.

This board setup provides a baseline environment for enabling and testing
Cortex-A78 features and peripheral integration on the APU subsystem.

Signed-off-by: Appana Durga Kedareswara rao <appana.durga.kedareswara.rao@amd.com>
2025-09-05 16:48:38 -04:00
Appana Durga Kedareswara rao
687e081dfc soc: amd: Add initial support for Versal Net SoC APU (Cortex-A78)
Add initial support for the Versal Net SoC APU, which is based on
the Arm Cortex-A78 processor. It includes basic wiring for memory
regions, UART, interrupt controller, and timer.

The versalnet_apu.dtsi file defines peripherals shared across the SoC,
while versalnet_a78.dtsi captures peripherals private to the Cortex-A78
processor. These device trees lay the groundwork for further APU-based
development on the Versal Net platform.

Signed-off-by: Appana Durga Kedareswara rao <appana.durga.kedareswara.rao@amd.com>
2025-09-05 16:48:38 -04:00
Appana Durga Kedareswara rao
90cc187735 arm: dts: Add bindings for Cortex-A78
Add CPU bindings for the Cortex-A78 to enable reading CPU device tree
properties in Kconfig. This is required to correctly configure and
use CPU-specific settings based on the device tree.

Signed-off-by: Appana Durga Kedareswara rao <appana.durga.kedareswara.rao@amd.com>
2025-09-05 16:48:38 -04:00
Appana Durga Kedareswara rao
7542107048 arm64: Add new CPU_CORTEX_A78 configuration for Cortex-A78 support
Introduce a new Kconfig option CPU_CORTEX_A78 to enable support for the
Arm Cortex-A78 CPU architecture within Zephyr. This configuration can be
selected by boards or SoCs that utilize the Cortex-A78 core, enabling
architecture-specific features and optimizations as needed.

Signed-off-by: Appana Durga Kedareswara rao <appana.durga.kedareswara.rao@amd.com>
2025-09-05 16:48:38 -04:00
Miguel Gazquez
838f0c0f72 dt-bindings: sensor: lsm9ds1: Fix misleading descriptions
The LSM9DS1 bindings were described as a full 9-axis IMU, while each
binding only covers one part of the device. This also made the
"Supported features" section of the generated docs misleading, since it
only shows the first sentence.

Update the descriptions to explicitly state whether they cover the
accelerometer + gyroscope or the magnetometer.

Signed-off-by: Miguel Gazquez <miguel.gazquez@bootlin.com>
2025-09-05 16:37:58 -04:00
Anas Nashif
0e0e20b144 MAINTAINERS: remove inactive maintainers/collaborators
Remove inactive maintainers/collaborators.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-09-05 16:33:34 -04:00
Anas Nashif
0c84cc5bc6 kernel: drop deprecated pipe API
This API was deprecated in 4.1, so drop it for the 4.3 release. Use new
PIPE API instead.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-09-05 17:13:05 +02:00
Furkan Akkiz
4c306fdcea boards: adi: Remove unnecessary DMA header includes
SoC dtsi files already include DMA headers. This commit removes
unnecessary DMA header includes from board dts files.

Signed-off-by: Furkan Akkiz <hasanfurkan.akkiz@analog.com>
2025-09-05 17:11:58 +02:00
Furkan Akkiz
e99cb5a323 dts: arm: adi: Include max32666_dma.h in max32666.dtsi file
Moved including 'max32666_dma.h' file operation into 'max32666.dtsi' file.

Signed-off-by: Furkan Akkiz <hasanfurkan.akkiz@analog.com>
2025-09-05 17:11:58 +02:00
Marc Herbert
8ad23f8313 twister: add space in custom_flash_scripts example and test
This makes sure parsers don't trip over whitespace (as many do).

I suggested this late in #93944

Signed-off-by: Marc Herbert <marc.herbert@intel.com>
2025-09-05 17:11:51 +02:00
Marc Herbert
2b24a495f1 doc: twister: fix argument order in custom flash example
Fixes sample command added to the documentation by commit
a31f784e95 ("twister: add a --flash-command flag")

During the review of #93944, I recommended to change the order and pass
user --flag(s) last. This was changed in the code but not in the example
added to the documentation.

Signed-off-by: Marc Herbert <marc.herbert@intel.com>
2025-09-05 17:11:51 +02:00
Benjamin Cabé
f44c22b974 doc: snippets: group Wi-Fi snippets together
Top-level snippets list is getting crowded.
Group Wi-Fi snippets together.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-05 17:11:28 +02:00
Benjamin Cabé
fd413f1c70 doc: snippets: group Nordic snippets together
Top-level snippets list is getting crowded.
Groupd Nordic snippets together.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-05 17:11:28 +02:00
Benjamin Cabé
c0e60abba7 doc: snippets: fix incorrect glob pattern
snippets toctree should only look one level deep, and **/* wouls cause
matching to be too greedy.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-05 17:11:28 +02:00
Øyvind Hagen
27e5a8fcf5 usb: device: fix CDC ACM serial state notification for Rx Carrier
Use the actual value instead of the flag.

Signed-off-by: Øyvind Hagen <oyvinha@ifi.uio.no>
2025-09-05 17:11:16 +02:00
Furkan Akkiz
f94ab07118 drivers: pwm: Fix prescaler configuration
This commit fixes the bug in the prescaler configuration formula.
Prescaler enumarations values are not consecutive numbers, so this
formula does not work correctly. This commit adds prescaler enums into
an array and sets PWM prescaler from this array with using
prescaler_index parameter.

Signed-off-by: Furkan Akkiz <hasanfurkan.akkiz@analog.com>
2025-09-05 17:11:07 +02:00
Kapil Bhatt
e7d5d7e804 drivers: nrf_wifi: Disable VHT capabilities for softAP mode
Disable VHT (Wi-Fi 5) capabilities when building with softAP support
to ensure consistent Wi-Fi 4 only behavior across all channels and
frequency bands.

Signed-off-by: Kapil Bhatt <kapil.bhatt@nordicsemi.no>
2025-09-05 17:11:01 +02:00
Mark Wang
0e86cb85f2 bluetooth: avdtp: fix the issue of registering same endpoint
return error when the already registered endpoint is registered again.

Signed-off-by: Mark Wang <yichang.wang@nxp.com>
2025-09-05 17:10:41 +02:00
Benjamin Cabé
76e22343e0 shields: add MikroE AMBIENT-2 Click shield
Adds support for the MikroE AMBIENT-2 Click shield

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-05 17:10:33 +02:00
Mario Paja
faf1919bd9 samples: i2s: output: add nucleo_l432kc
Add nucleo_l432kc in samples/drivers/i2s/output

Signed-off-by: Mario Paja <mariopaja@hotmail.com>
2025-09-05 17:10:15 +02:00
Mario Paja
4bddeb9d00 drivers: i2s: i2s_stm32_sai add support for stm32l4xx
STM32L4xx series shares several SAI & DMA configurations with
the other platforms. These changes aim to remove specific
DMA & SAI configurations which are not used by STM32L4xx

Signed-off-by: Mario Paja <mariopaja@hotmail.com>
2025-09-05 17:10:15 +02:00
Mario Paja
be4b2e2001 dts: st: l4: add sai1 node
Add SAI1 A & B nodes for STM32L4xx series

Signed-off-by: Mario Paja <mariopaja@hotmail.com>
2025-09-05 17:10:15 +02:00
Sylvio Alves
10ac1260bb samples: openamp: espressif: move configs from SoC to board level
Previously, the openamp sample enabled ESP32/ESP32S3 SoCs directly,
which caused all SoCs of these families to be included in the testcase.
However, only a subset of boards is actually supported and mapped in
Kconfig.sysbuild.

To avoid applying defaults to unsupported boards, move the configuration
out of the SoC directory and into board-specific files. This ensures that
only the intended boards are targeted by the openamp sample and avoids
misleading test coverage.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2025-09-05 17:10:03 +02:00
Etienne Carriere
f878a55d2e shields: devicetree: fix typos introduced using Arduino header constants
Fix typo introduced in some shields DTS overlay files by commit
c683b044d9 ("shields: devicetree: use arduino-header-r3.h constants
in all shields").

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-09-05 13:47:12 +02:00
Jeppe Odgaard
a119e58da3 doc: releases: add shell mqtt backend kconfigs
Add shell MQTT backend Kconfigs to release notes from commits
ddc4479243 and
7c796c417e.

Signed-off-by: Jeppe Odgaard <jeppe.odgaard@prevas.dk>
2025-09-05 13:46:52 +02:00
Yangbo Lu
ff0ab71291 samples: net: vlan: add imx943_evk_mimx94398_m33_ddr target support
Added imx943_evk_mimx94398_m33_ddr target support for vlan.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-09-05 13:46:45 +02:00
Yangbo Lu
4d06ea1f07 samples: net: vlan: add mimxrt1180_evk_mimxrt1189_cm33 target support
Added mimxrt1180_evk_mimxrt1189_cm33 target support for vlan.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-09-05 13:46:45 +02:00
Yangbo Lu
45cde66a02 drivers: eth_nxp_imx_netc: initialize vlan control
Initialized vlan control for ENETC.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-09-05 13:46:45 +02:00
Josuah Demangeon
190cde1f25 samples: usb: shell: update the output in the README
Update the USB shell sample to the new syntax. This is based on tests
done with native_sim, along with the virtual.conf, virtual.overlay and
device_and_host_prj.conf extra config files.

Signed-off-by: Josuah Demangeon <josuah.demangeon@nordicsemi.no>
2025-09-05 13:45:30 +02:00
Josuah Demangeon
916c6e60ef usb: host: wrap the mutex lock with a helper
Hide the mutex lock details inside a wrapper call, like done for the
device stack API. This is not used for the per-device lock of the host
stack which use a different mutex lock.

Signed-off-by: Josuah Demangeon <josuah.demangeon@nordicsemi.no>
2025-09-05 13:45:30 +02:00
Josuah Demangeon
e8ecb6c3af usb: host: check that descriptor is in bound before dereferencing
In the while loop parsing descriptors, check that the descriptor is past
the end just before dereferencing it to check if it is seemingly valid.

Signed-off-by: Josuah Demangeon <josuah.demangeon@nordicsemi.no>
2025-09-05 13:45:30 +02:00
Josuah Demangeon
a6faa0ca32 usb: host: rename "struct usbh_contex" to "usbh_context"
Make the struct name match the device naming for ease of use, although
slightly longer name. Propagate the change to the subsystem, includes,
tests and samples.

Signed-off-by: Josuah Demangeon <josuah.demangeon@nordicsemi.no>
2025-09-05 13:45:30 +02:00
Krzysztof Chruściński
9f4bd38ef7 scripts: west_commands: build: Fix warning during rebuild
5718af02c5 introduced a regression where a warning was printed
about unknown BOARD when rebuilding. Commit moved _find_board()
to an earlier stage and that was failing during the rebuild. Instead
of moving board finding earlier we can move parsing of the test_item
to the later stage as it is needed only just before running cmake.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-09-05 12:28:01 +02:00
Samuel Tsai
07dc0ad40d Bluetooth: host: adv: revert 39cb574 to fix spurious error log
Commit 39cb574 changed the log level from LOG_DBG to LOG_ERR in
bt_le_adv_resume(). This causes the error log
"No valid legacy adv to resume" to appear during normal connection
establishment when using bt_le_ext_adv_start(), even though the
system is functioning correctly.

Revert the change to restore the original LOG_DBG level.

Fixes: #94954

Signed-off-by: Samuel Tsai <stsai@atmosic.com>
2025-09-05 12:27:45 +02:00
Mark Wang
06dfa99980 bluetooth: a2dp: fix the process of failed cmd
If the cmd fail to receive response (for example: timeout), the buf is
NULL, then need to callback the result.

Signed-off-by: Mark Wang <yichang.wang@nxp.com>
2025-09-05 12:27:29 +02:00
Jamie McCrae
72c4af32d3 cmake: Rename option variable
Renames a variable used in a macro to avoid collisions in picolibc

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-09-05 12:27:19 +02:00
Adam Kondraciuk
14b78981f7 drivers: i2s: nrf_tdm: Allow using 8 channels
TDM should have clock divider bypass enabled when calculated clock divider
exceeds maximum allowed value which is `CKDIV2`.

Signed-off-by: Adam Kondraciuk <adam.kondraciuk@nordicsemi.no>
2025-09-05 12:26:56 +02:00
Khoa Nguyen
9a7a2b008f samples: drivers: jesd216: Add support for qspi_nor for RA
Add support for qspi_nor for the sample jesd216 to run sample
on Renesas RA6 boards

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-09-05 12:26:44 +02:00
Khoa Nguyen
82f9734a2c samples: drivers: spi_flash: add support for qspi Renesas RA
Add support for qspi Renesas RA to run the sample spi_flash

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-09-05 12:26:44 +02:00
Khoa Nguyen
9e9f9726e5 tests: drivers: flash: Add support to test qspi_nor for RA6
Add support to test flash/common for qspi_nor on Renesas
ek_ra6m5, ek_ra6m4, ek_ra6m3, ek_ra6e2

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-09-05 12:26:44 +02:00
Quy Tran
97a1cca9df boards: renesas: Add boards support for QSPI flash driver
Add support for QSPI flash driver on EK-RA6E2, EK-RA6M3, EK-RA6M4
and EK-RA6M5

Signed-off-by: Quy Tran <quy.tran.pz@renesas.com>
Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-09-05 12:26:44 +02:00
Quy Tran
305259dbd3 dts: renesas: Add devicetree property for QSPI support on RA6
Add qspi node on Renesas RA6 devicetree to support QSPI flash driver

Signed-off-by: Quy Tran <quy.tran.pz@renesas.com>
2025-09-05 12:26:44 +02:00
Tri Nguyen
1e25973c75 drivers: flash: Initial support QSPI Flash driver for Renesas RA6
Add QSPI Flash driver supports for Renesas RA6.

Signed-off-by: Tri Nguyen <tri.nguyen.wj@bp.renesas.com>
Signed-off-by: Thao Luong <thao.luong.uw@renesas.com>
Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-09-05 12:26:44 +02:00
Fabrice DJIATSA
1e8f67e513 include: zephyr: drivers: dma: fix STM32_DMA_GET_INSTANCE() macro
Add the STM32 auxiliary macro STM32_DMA_GET_CHANNEL_INSTANCE to handle
naming convention conflicts between STM32 series.
The H5, H7RS, N6, U3, MP2, U5, and WBA series use
the LL_DMA_GET_CHANNEL_INSTANCE definition, while other series use
__LL_DMA_GET_CHANNEL_INSTANCE.

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2025-09-05 12:26:32 +02:00
Sylvio Alves
0a339a2d7b mcuboot: kconfig: set default MOVE for Espressif SoCs
Make sure default MOVE option is enabled for Espressif SoCs.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2025-09-05 09:31:37 +02:00
Pieter De Gendt
1e737d7a5f scripts: west_commands: twister_cmd: Fix twister wrapper
Commit 4f637258ef reworked the twister main
function. Update the west wrapper to align with that change.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-09-05 09:31:33 +02:00
Stephanos Ioannidis
59a5909abb SDK_VERSION: Use Zephyr SDK 0.17.4
This commit updates ZEPHYR_SDK to point to the Zephyr SDK 0.17.4 release.

Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
2025-09-05 07:44:24 +02:00
Stephanos Ioannidis
13ba04fd1f ci: Switch to CI image v0.28.4
This commit updates the CI workflows to use the CI image v0.28.4, which
includes Zephyr SDK 0.17.4.

Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
2025-09-05 07:44:24 +02:00
Bjarki Arge Andreasen
682c835113 pm: device_runtime: put_sync_locked: fix usage count on err
If pm action fails within put_sync_locked, usage count should be
reset to reflect the state of the device.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-09-05 07:44:08 +02:00
Bjarki Arge Andreasen
b2ea652ddf tests: pm: device_runtime_api: test neg driver retval
Test the test driver returning negative values on calls to
pm_device_runtime_get/put calls.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-09-05 07:44:08 +02:00
Bjarki Arge Andreasen
59093ff24e tests: pm: device_runtime_api: add retval to test_driver
Add API to configure the return value of pm actions of the
test_driver used by the device_runtime_api test suite.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-09-05 07:44:08 +02:00
Sean Kyer
f62bf95d25 doc: release: Add CPUFreq to 4.3 release notes
Add CPUFreq and enabling Kconfig to 4.3 release notes.

Signed-off-by: Sean Kyer <sean.actor@gmail.com>
2025-09-05 07:43:56 +02:00
Sean Kyer
78fe364636 tests: cpu_freq: Add SoC and on_demand tests
Add tests for CPU frequency subsystem covering
SoC integration of pstate as well as the on_demand
policy.

Signed-off-by: Sean Kyer <Sean.Kyer@analog.com>
2025-09-05 07:43:56 +02:00
Sean Kyer
3b60bb91e9 native: cpu_freq: Add CPU freq support to native_sim
Define P-states for native_sim and add mock cpu_freq
driver.

Signed-off-by: Sean Kyer <Sean.Kyer@analog.com>
2025-09-05 07:43:56 +02:00
Sean Kyer
e4fb01c66b cpu_freq: Add CPU Frequency Scaling subsystem
Add a CPU frequency scaling subsystem, allowing a policy
algorithm to control the frequency of a given SoC/MCU
automatically at runtime.

Implement a basic, "on-demand" policy algorithm which
iterates through the P-states supported by the SoC and
selects the first P-state where it's trigger threshold is
less than the CPU load.

The CPU frequency scaling subsystem does not currently
support SMP. The CPU load measurement can be made to support
SMP since statistics are measured from the scheduler.

Co-authored-by: Eric Hay <Eric.Hay@analog.com>
Signed-off-by: Sean Kyer <Sean.Kyer@analog.com>
2025-09-05 07:43:56 +02:00
Eric Hay
73ce03246b cpu_load: Add CPU Load subsystem
Implement CPU load measurement subsystem. The statistics
used to calcualte the load are taken from the scheduler.
Specifically, the number of cycles used by the idle thread.

Co-authored-by: Sean Kyer <Sean.Kyer@analog.com>
Signed-off-by: Eric Hay <Eric.Hay@analog.com>
2025-09-05 07:43:56 +02:00
Jiafei Pan
c7578b00dd samples: dsa: add imx943_evk A55 CPU Core support
Added overlay and conf file, updated board document.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-09-05 07:43:28 +02:00
Jiafei Pan
47a947be1c boards: imx943_evk: add dsa switch dts nodes for a55
Added networking switch dts nodes for the board imx943_evk A55 Core.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-09-05 07:43:28 +02:00
Jiafei Pan
640711929b dts: arm64: imx943: add dsa switch dts nodes
Added dts nodes for DSA networking switch.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-09-05 07:43:28 +02:00
Jiafei Pan
c10f64c97f drivers: dsa: netc: add mmio memory mapping support
Added memory mapping for the driver to support A-Core.
Add update related device tree accordingly.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-09-05 07:43:28 +02:00
Jiafei Pan
0e4b971b98 samples: net: zperf: add imx943 a55 support
Configure heap memory size to be enough for GIC ITS.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-09-05 07:43:28 +02:00
Jiafei Pan
25f4eb9ac0 boards: imx943_evk: a55: add NETC support
Enabled NETC support on i.MX 943 A55 platform.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-09-05 07:43:28 +02:00
Jiafei Pan
f62cadeeca dts: arm64: imx943_a55: add netc device nodes
Added NETC related device nodes in SoC dts.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-09-05 07:43:28 +02:00
Jiafei Pan
13268e37b6 soc: imx943: a55: add netc power and clock init in soc.c
Power up NETCMIX and configure netc clock in soc_init().

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-09-05 07:43:28 +02:00
Jiafei Pan
006f5a6e7a dts: arm64: imx943_a55: add SCMI power device node
Added SCMI power dts node.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-09-05 07:43:28 +02:00
Jiafei Pan
1b6e15f4ee drivers: netc_blk: add imx943 support
Add NETCMIX block initialization for i.MX 943.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-09-05 07:43:28 +02:00
Jiafei Pan
41ef564902 tests: arm64_gicv3_its: add imx943_evk support
Add imx943_evk support, as hardware limication, it only has 832 LPIs.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-09-05 07:43:28 +02:00
Jiafei Pan
cfd01bef15 boards: imx943_evk: refine GIC and SCMI objects init priority
GIC ITS depends on kernel heap, so move GIC initialize to be behind of
heap which initialization priority is CONFIG_KERNEL_INIT_PRIORITY_OBJECTS
which is 30 by default.

MU mailbox and SCMI objects depend on GIC, so set their init priority
to be same with GIC, the initialization sequence decided by the dts
dependency although they use the same init priority.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-09-05 07:43:28 +02:00
Jiafei Pan
296c0e2405 boards: imx943_evk: a55: enlarge memory size
Enlarge the memory size to 10M bytes as it is not enough if run some
networking application.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-09-05 07:43:28 +02:00
Jiafei Pan
22fe1ec2e3 soc: imx943_a55: enable gic v3 its and LPI interrupts
Added dts node for GIC v3 ITS, enabled LPI interrupts, and enabled
GIC ITS driver on the SoC.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-09-05 07:43:28 +02:00
Jiafei Pan
b5d43e8314 west.yml: update revision of hal_nxp
To include the update for netc for imx943 a-core.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-09-05 07:43:28 +02:00
Niu Zhihong
8f85d8e62a dt-bindings: input: fix swapped comments for gear buttons
The comments for INPUT_BTN_GEAR_DOWN and INPUT_BTN_GEAR_UP were
incorrectly swapped. This commit fixes the documentation to match
the actual button definitions.

Signed-off-by: Niu Zhihong <zhihong@nzhnb.com>
2025-09-04 20:08:45 -04:00
Diego Herranz
7489a38e3b fb: cfb_shell: fix draw circle help text
HELP_DRAW_CIRCLE existed, but HELP_DRAW_RECT was used instead.

Signed-off-by: Diego Herranz <diegoherranz@diegoherranz.com>
2025-09-04 20:08:27 -04:00
Benjamin Cabé
e9bcda38ca drivers: sensor: a01nyub: use logical AND in condition
Fix typo where a bitwise AND was used instead of a logical AND.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-04 21:04:51 +02:00
Benjamin Cabé
6132640d08 doc: samples: shields: fix doc build warnings
Ensure all RST files only ever belong to one single toctree by means of
cleaning up existing in globs used in nested folders.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-04 21:04:42 +02:00
Benjamin Cabé
aaa6ab545c doc: samples: canbus: cleanup sample category
Main sample category page for CANbus contained "old" toctree alongside
zephyr:code-sample-category, causing doc build warning due to documents
belonging to multiple toctrees.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-04 21:04:42 +02:00
Benjamin Cabé
c02a33efcc doc: samples: stm32: fix doc warnings
Ensure all RST files only ever belong to one single toctree by means of
cleaning up existing in globs used in nested folders.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-04 21:04:42 +02:00
Benjamin Cabé
1185829f3b drivers: sensor: bmi270: fix off-by-one error
When the loop completes without breaking, tries would be
BMI270_CONFIG_FILE_RETRIES + 1 so the error check was never hit.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-04 21:04:30 +02:00
Diego Herranz
f1e72c4a75 drivers: flash: shell: fix KiB symbol spelling
It's Bytes rather than bits, and it's also Kibi (1024).

Signed-off-by: Diego Herranz <diegoherranz@diegoherranz.com>
2025-09-04 21:04:22 +02:00
Kai Vehmanen
fa02e373be drivers: dai: dmic: do not call k_sleep() in PM callbacks
The call to k_sleep() is not safe as dai_dmic_probe() is called
from PM dmic_pm_action() and k_can_yield() may be false.

Problem was caught on Intel WCL ADSP platform with SOF as application
and a Zephyr build with asserts enabled.

Fix the issue by using k_busy_wait() instead.

Signed-off-by: Kai Vehmanen <kai.vehmanen@linux.intel.com>
2025-09-04 21:04:15 +02:00
Benjamin Cabé
af2eaf4310 dts: gpio: add mention of pin number macros in nexus bindings docs
For all GPIO headers/connectors, add a short mention of the header file
that can be used to access pin numbers macros.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-04 21:04:04 +02:00
Benjamin Cabé
fab062f3be include: devicetree: gpio: add doxygen for ST Morpho header
Add doxygen documentation for this header.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-04 21:04:04 +02:00
Benjamin Cabé
ed0067e6ae include: devicetree: gpio: add doxygen for Arduino MKR header
Add doxygen documentation for this header.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-04 21:04:04 +02:00
Benjamin Cabé
459252356f include: devicetree: gpio: add doxygen for Raspberry Pi CSI connector
Add doxygen documentation for this header.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-04 21:04:04 +02:00
Benjamin Cabé
b99aeec528 include: devicetree: gpio: add doxygen for Arduino Nano header
Add doxygen documentation for this header.
Also fix typo for ARDUINO_NANO_HEADER_A5.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-04 21:04:04 +02:00
Benjamin Cabé
6315d117e3 include: devicetree: gpio: add doxygen for Arducam DVP connector
Add doxygen documentation for this header.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-04 21:04:04 +02:00
Benjamin Cabé
198147a49b scripts: kconfig: use tabulate for printing hardenconfig results
Make use of `tabulate` to pretty print the results of the hardening tool
instead of custom formatting.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-04 21:03:57 +02:00
Benjamin Cabé
5e032d7f84 scripts: kconfig: apply ruff fixes to hardenconfig.py
Wrap long lines so that there is no need to exclude this file from ruff
anymore.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-04 21:03:57 +02:00
Philipp Steiner
df2af8d553 drivers: fuel_gauge: max17048: fix minor issues
Fixes minor issues of the max17048 driver, which came up during
another PR.
This was tested with the CI and the Adafruit ESP32-S3 Reverse TFT Feather.

Signed-off-by: Philipp Steiner <philipp.steiner1987@gmail.com>
2025-09-04 21:03:48 +02:00
Philipp Steiner
7632193e42 drivers: fuel_gauge: apply clang-format rules for the drivers
Format existing drivers according to clang-format rules.
Not all drivers were formatted, according to the clang-format rules,
this commit resolves this.

Signed-off-by: Philipp Steiner <philipp.steiner1987@gmail.com>
2025-09-04 21:03:48 +02:00
Philipp Steiner
175dc28b1f drivers: fuel_gauge: Refactor public driver interfaces
Refactor drivers so all have the same clean public interface.
With this change, all drivers have the same coding style.
This change does not change how the driver works and was tested with
the "fuel-gauge-build all test"

Signed-off-by: Philipp Steiner <philipp.steiner1987@gmail.com>
2025-09-04 21:03:48 +02:00
Philipp Steiner
c70ae26bbb tests: drivers: build_all: fuel_gauge: Add devices to build test
Add build tests for the following missing devices:
- x-powers,axp2101-fuel-gauge
- onnn,lc709203f
- silergy,sy24561

This is important, because it guarantees that all drivers will be
build the driver during CI.

Signed-off-by: Philipp Steiner <philipp.steiner1987@gmail.com>
2025-09-04 21:03:48 +02:00
Alessandro Manganaro
a3a27d0ab1 dts: arm: st: wba: standby exit latency update
Updating standby exit latency time according worst case value
from stm32wba5 and stm32wba6 datasheets.

Signed-off-by: Alessandro Manganaro <alessandro.manganaro@st.com>
2025-09-04 21:03:19 +02:00
Alessandro Manganaro
299a189508 soc: st: stm32: stm32wbax pm enhancements
soc power management rework to support power states
removing dependency on ST system clock manager (SCM).

Signed-off-by: Alessandro Manganaro <alessandro.manganaro@st.com>
2025-09-04 21:03:19 +02:00
Wajdi ELMuhtadi
f9081725cf drivers: sensor: wsen_isds_2536030320001: add sensor driver
Add wsen_isds_2536030320001 driver with
the corrected name and compatibility with
the hal update as well as added new features.

Signed-off-by: Wajdi ELMuhtadi <wajdi.elmuhtadi@we-online.com>
2025-09-04 21:03:10 +02:00
Loic Domaigne
d6ce2f4f41 tests: kernel: device: Add tests for deferred init failure
These tests verify the expected returned value and device state for
error cases (-EALREADY, -errno) conform to the device_init()
documentation.

Signed-off-by: Loic Domaigne <tech@domaigne.com>
2025-09-04 21:03:01 +02:00
Loic Domaigne
6b61ec9d9b kernel: fix error propagation for device deferred initialization
This fix makes sure that do_device_init() returns a negative value if
the device's initialization failed. Previously, it mistakely returned
+errno instead of -errno.

This oversight happened during the refactoring of z_sys_init_run_level()
to support deferred initialization, from which most of do_device_init()
code derives. The rc value computed and stored in dev->state->init_res
is the POSITIVE value of the resulting errno. Returning rc therefore
breaks the convention of a negative value to signal failure.

Signed-off-by: Loic Domaigne <tech@domaigne.com>
2025-09-04 21:03:01 +02:00
Declan Snyder
11431a801d dts: nxp_rt118x: Use DT spec names for nodes
Use recommended node names from the DT spec on RT118x

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-09-04 16:48:42 +02:00
Victor Brzeski
a52966b3bc uac2: rate limit ops->get_recv_buf error log
Rate limit the get_recv_buf() callback from the application to
reduce system trash when buffer pressure gets high.

Signed-off-by: Victor Brzeski <vbrzeski@gmail.com>
2025-09-04 16:46:17 +02:00
Szymon Janc
e0ce77dd28 tests: Bluetooth: Tester: Disallow changing adv type when enabled
This is used for properly tracking if legacy or extended advertising
API is used and should not be changed if advertisign is enabled.

Signed-off-by: Szymon Janc <szymon.janc@codecoup.pl>
2025-09-04 16:45:56 +02:00
Szymon Janc
7ef7dee60f tests: Bluetooth: Tester: Fix leaking advertising instance
If extended advertising was used GAP module was always creating
new instance on advertising start (while failing to stop it at
the same time).

Signed-off-by: Szymon Janc <szymon.janc@codecoup.pl>
2025-09-04 16:45:56 +02:00
Lukasz Fundakowski
4f637258ef twister: refactor twister_main to simplify the system tests
Refactored twister_main.py module to simplify the code and system tests.
Removed the need to patch `sys.argv` in blackbox tests.

Signed-off-by: Lukasz Fundakowski <lukasz.fundakowski@nordicsemi.no>
2025-09-04 16:45:42 +02:00
Benjamin Cabé
654d794dd0 include: devicetree: gpio: add doxygen group for GPIO pin headers macros
Add a Doxygen group for the GPIO pin headers macros and initially
document Arduino Uno (R3) header pin constants.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-04 16:45:07 +02:00
Benjamin Cabé
822ea37614 dts: gpio: add mention of ARDUINO_HEADER_R3_* constants in binding desc
Add mention of ARDUINO_HEADER_R3_* constants in binding description for
the Arduino Uno (R3) header.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-04 16:45:07 +02:00
Benjamin Cabé
c683b044d9 shields: devicetree: use arduino-header-r3.h constants in all shields
Make shield overlays less error prone and easier to maintain by
switching to GPIO pin constants defined in arduino-header-r3.h.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-04 16:45:07 +02:00
Johann Fischer
7feddfa243 samples: usb: mass: add flashdisk overlay file
There are a few board overlay files with identical lines describing the
flash disk. Move these lines to a separate overlay file that could be
used for any board with a large enough storage partition. Update the
documentation accordingly.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-09-04 16:45:01 +02:00
Noah Pendleton
6169269da8 west: blobs: fetch --allow-regex filter
When building in CI for specific SOCs, it's useful to only have `west blobs
fetch` pull a selected set of blob objects. This is especially helpful on
`hal_espressif`, which currently has 78 blob objects.

Add a `--allow-regex` arg to the `west blobs fetch` subcommand to filter
only specified blobs, for example:

```bash
# only download esp32 blobs, skip the other variants
❯ west blobs fetch hal_espressif --allow-regex 'lib/esp32/.*'
```

Also, replace all `str.format()` invocations with f-strings per review
feedback.

Signed-off-by: Noah Pendleton <noah.pendleton@gmail.com>
2025-09-04 16:44:52 +02:00
Benjamin Cabé
2ee5a8d632 ci: workflows: doc: change working directory for codecov upload
Currently the workflow is correctly uploading to codecov but all the
paths are prefixed with an extra `zephyr/`.
Use the `working-directory` parameter to ensure the paths are correct,
and also ensure that only the new.info file is ever processed.

Tested locally by doing the equivalent of what the action now does
using the codecov CLI and I was able to both reproduce the bug as well
as confirm the fix.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-04 16:44:38 +02:00
Jamie McCrae
81413f07ce samples/smp_svr: Increase stack size required
Increase stack size as support for SHA512 requires more data.

Signed-off-by: Dominik Ermel <dominik.ermel@nordicsemi.no>
Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-09-04 14:43:26 +02:00
Jamie McCrae
d12c6888e3 mgmt: mcumgr: grp: img_mgmt: Add support for SHA512 in images
Adds support for images signed with SHA512.

Signed-off-by: Dominik Ermel <dominik.ermel@nordicsemi.no>
Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-09-04 14:43:26 +02:00
Declan Snyder
7e92b70437 include: devicetree: Add more PHA macros
Add more macros for interacting with controller/data type of
relationships (phandle arrays / cells)

Add macros for arbitrarily iterating cells of phandle specifiers

Add tests for the new macros

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-09-04 14:43:13 +02:00
Pieter De Gendt
8d61b3633a doc: develop: optimizations: tools: Add ram_plot/rom_plot targets
Add information about the ram_plot and rom_plot build targets to generate
memory usage reports using sunburst charts.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-09-04 14:42:52 +02:00
Pieter De Gendt
aea45b9e56 cmake: reports: Add ram/rom plot targets
Add a plot variant for every ram/rom report target.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-09-04 14:42:52 +02:00
Pieter De Gendt
b42d89c67f scripts: footprint: Add a plot script for size reports
Add a helper script that can take in a size report in json and render it in
a sunburst chart.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-09-04 14:42:52 +02:00
Vit Stanicek
459a87f495 tests: test_dma_loop: Release DMA channels upon use
Release DMA channels allocated through dma_request_channel with
dma_release_channel in test_loop, test_loop_suspend_resume and
test_loop_repeated_start_stop.

This prevents channel allocation leaks and enables the tests to still
run even if the utilised DMA driver is configured to only utilise a
subset of implemented DMA channels.

Signed-off-by: Vit Stanicek <vit.stanicek@nxp.com>
2025-09-04 14:42:27 +02:00
Vit Stanicek
1c0ae3cc18 drivers: dma_mcux_lpc: Sanitise chan. data overrun
Add a num_of_allocated_channels field to struct dma_mcux_lpc_config. Add
a a capacity check for dma_X_channel_data_arr in dma_mcux_lpc_configure.

Signed-off-by: Vit Stanicek <vit.stanicek@nxp.com>
2025-09-04 14:42:27 +02:00
Yangbo Lu
263911d79e net: net_if: use simple vlanX for vlan interface name
Used simple vlanX for vlan interface name. What interface the
vlan interface was attached to could be checked by "net iface"
or "net vlan".

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-09-04 11:34:15 +02:00
Yangbo Lu
0948812f70 net: vlan: drop current vlan interface naming
There were two problems about vlan interface naming currently.

1. When there were more than 1 vlan interfaces. It's not able to
   initialze name for all of them to same name VLAN-<free>.
2. When enabled vlan with tag, the name VLAN-xxx was used.
   However we may need to support multiple physical interfaces
   in the future. So, it's not able to use same name VLAN-xxx
   either for same tag on different physical interfaces.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-09-04 11:34:15 +02:00
Yangbo Lu
3fc03623ad net: shell: vlan: fix tag/attached info showing
There was call trace to execute "net vlan" if vlan interface
hadn't been enabled. Fixed it.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-09-04 11:34:15 +02:00
Emil Gydesen
aa27460880 Bluetooth: CCP: Add support for set/get provider name
Add support for setting and getting the bearer provider
name. For now the name will be duplicated by the TBS
implementation, but will be optimizied in the future
so only one copy of the name exists.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-09-04 11:30:36 +02:00
Tomasz Chyrowicz
7c1a74f867 modules: Add VID and CID Kconfigs
Add a possibility to specify VID and CID for each MCUboot image and pass
it to the imgtool.

Signed-off-by: Tomasz Chyrowicz <tomasz.chyrowicz@nordicsemi.no>
2025-09-04 11:28:14 +02:00
Emil Gydesen
04da363847 tests: Bluetooth: Tester: MCP BSIM test
Adds BSIM testing of the MCP features of the BT Tester.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-09-04 11:27:19 +02:00
Tony Han
1fd4886ad9 drivers: ethernet: phy: ksz8081: add support for interrupt mode
Enable Link-Up and Link-Down interrupts. On the interrupt handling
the monitor work is scheduled to update the link status and calling
corresponding callback routine.

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-09-04 11:26:38 +02:00
Tony Han
44845e16b6 drivers: ethernet: ksz8081: move init_int_gpios() to after reset
Call ksz8081_init_int_gpios() after phy_mc_ksz8081_reset() due to
keep the configurations for interrupt.

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-09-04 11:26:38 +02:00
Tony Han
e2113ce2c5 drivers: ethernet: ksz8081: fix internal flags for auto-negotiation
Update the internal driver flags to avoid setting DO_AUTONEG_FLAG
unconsciously when setting LINK_STATE_VALID.

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-09-04 11:26:38 +02:00
David Schneider
9a55545fd2 doc: update SDK compatibilty URL
Zephyr Version Compatibility page get moved in sdk-ng project. This
patch updates to URL to match the new page name.

Signed-off-by: David Schneider <schneidav81@gmail.com>
2025-09-04 11:26:08 +02:00
Babak Arisian
9564d5861f Bluetooth: Audio: shell: docs: Update broadcast assistant documentation
Updated the documentation for the BAP broadcast assistant client shell
commands to include the previously added 'add_by_broadcast_name' command.

Signed-off-by: Babak Arisian <bbaa@demant.com>
2025-09-04 11:26:00 +02:00
Declan Snyder
10e379c7fb soc: mcx: Add mcx cmc hwinfo binding
Add a stupid binding for doc purposes. Terrible coupling when we have to
configure DT in order to generate documentation properly. At least we
get rid of one of the stupid HAS_MCUX_ kconfigs in the process.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-09-04 08:11:43 +02:00
Bas van Loon
8d417a31a2 drivers: sdhc: imx_usdhc: Add more verbose error reporting.
When USDHC_Reset fails, we should be more verbose about it failing. Add
the error prints here so that we can observe the failure in logs.

Signed-off-by: Bas van Loon <bas@arch-embedded.com>
2025-09-04 08:10:40 +02:00
Bas van Loon
04d40ecc68 drivers: sdhc: imx_usdhc: Fix USDHC_Reset reset type.
Probably a C/P error. This error was leading to reset timeouts as the
wrong mask is being used.

Signed-off-by: Bas van Loon <bas@arch-embedded.com>
2025-09-04 08:10:40 +02:00
Anas Nashif
18db88a0cf ci: coverage: add a flag for test coverage
Add a flag for test coverage, to distinguish from doxygen coverage.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-09-04 08:10:31 +02:00
Felix Wang
ebe1f3b7d6 tests: drivers: counter_basic_api: Enable FTM test for frdm_ke17z
This test covers following test cases:
- test_set_top_value_with_alarmp
- test_valid_function_without_alarm
- test_set_top_value_without_alarm

Signed-off-by: Felix Wang <fei.wang_3@nxp.com>
2025-09-04 08:10:20 +02:00
Felix Wang
193e9170bb drivers: Counter: FTM Support on Zephyr
1.Update dts bindings to move clock-source properties from
nxp,ftm-pwm.yaml to nxp,ftm.yaml.
2.Provide counter driver based on FTM driver from NXP mcux-sdk-ng

Signed-off-by: Felix Wang <fei.wang_3@nxp.com>
2025-09-04 08:10:20 +02:00
Anas Nashif
8beabb78bf ci: manifest: install west, do not use requirement file
We only need west, so not go about installing packages using the
scripts/requirements-actions.txt file.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-09-03 21:23:54 -04:00
Carles Cufi
267469b503 flash: spi_nor: Fix VLA error when building with clang
The following error is issued by clang when building with
SPI_NOR_SFDP_RUNTIME enabled:

error: fields must have a constant size:
'variable length array in structure' extension will never be supported
1379 | uint32_t dw[MIN(php->len_dw, 20)];

Instead, hardcode the array length to 20 32-bit words (it's instantiated
in the stack anyway).

Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
2025-09-03 21:21:27 +02:00
Benjamin Cabé
5f5e31134b doc: display: consolidate MIPI docs in Display section
Move MIPI-DBI and MIPI-DSI docs from top-level Peripherals section to
under Display section.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-03 21:21:18 +02:00
Benjamin Cabé
c0ed6c0a8c include: display: mipi: re-arrange doxygen groups
Move MIPI headers under Display group so that they don't clutter
top-level Device Drivers group.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-03 21:21:18 +02:00
Benjamin Cabé
1df6e7caea include: dt-bindings: mipi_dbi: doxygen fixups
Improve/fix documentation of this header file

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-03 21:21:18 +02:00
Benjamin Cabé
94a4b13df3 include: doc: mipi: flag MIPI-DBI and MIPI-DSI API as unstable
These have many implementations in-tree so are to be considered
unstable.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-03 21:21:18 +02:00
Jonas Berg
6946ec9530 boards: shields: Add Adafruit INA237 current sensor shield
Product photo from https://learn.adafruit.com/assets/137463
with the license CC BY-SA 3.0

Tested with the command mentioned in the index.rst page.

Signed-off-by: Jonas Berg <jonas.s.t.berg@gmail.com>
2025-09-03 21:21:12 +02:00
Jamie McCrae
036ccc4157 west.yml: MCUboot synchronization from upstream
Update Zephyr fork of MCUboot to revision:
  aa4fa2b6e17361dd3ce16a60883059778fd147a9

Brings following Zephyr relevant fixes:

  - 557f84be bootutil: Move primary/secondary slot definition to
    bootutil_public
  - 82bd4a76 boot: bootutil: Fix pure image validation check with
    offset swap
  - fe8f9fc0 bootutil: Fixed security counter overflow detected to
    late
  - 10a3cffa boot: zephyr: boards: nrf54h20dk cpuapp add chosen
    code part
  - 86678000 zephyr: use REQUIRED in dt_nodelabel calls to fail
    early and with meaningful message
  - e0b84a0c zephyr: Fix FLASH_DEVICE_ID for nRF54H20 platform
  - 504847e3 bootutil: Fix PureEdDSA when flash base is not 0x0
  - aa229135 bootutil: Fix bootutil_aes_ctr_drop memset usage
  - 713b98b6 boot/boot_serial: build-time skip of the erasing of
    img status page

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-09-03 21:21:03 +02:00
Mickael Bosch
bfea9cf94f drivers: serial: stm32: fix non-LP UARTs with PM
Re-configure the registers if they re erased because of a STOP2 low power
mode.

Return the error code when re-initializing the UART after a STANDBY low
power mode.

Fix few typos and comments.

Run clang format on uart_stm32_pm_action()

Signed-off-by: Mickael Bosch <mickael.bosch@linux.com>
2025-09-03 17:05:17 +02:00
Johann Fischer
1d282539a3 usb: device_next: avoid false error logging in CDC ECM/NCM
The interface descriptor and its associated string descriptor are shared
between different speed configurations. Do not try to add a string
descriptor if it has already been added and the index is not zero.

Similar to commit ec851ba7c7
("usb: device_next: avoid false error logging in CDC ACM").

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-09-03 17:04:39 +02:00
Jeremy Dick
f7757d5f92 drivers: spi: spi_renesas_ra Remove reference to undefined PM device
Remove a reference to get a PM device that isn't defined

Signed-off-by: Jeremy Dick <jdick@pivotint.com>
2025-09-03 17:04:30 +02:00
Jeremy Dick
f51f86e13a drivers: spi: spi_renesas_ra Don't stop SPI transactions early
Don't stop polled SPI transactions early if they aren't read and write

Signed-off-by: Jeremy Dick <jdick@pivotint.com>
2025-09-03 17:04:30 +02:00
Jeremy Dick
f2fb6f5244 drivers: spi: spi_renesas_ra Use the correct hardware chip select
Choose the chip select based on the slave ID for SPI transactions

Signed-off-by: Jeremy Dick <jdick@pivotint.com>
2025-09-03 17:04:30 +02:00
Benjamin Cabé
0132ea07fb doc: fix spelling errors tree-wide
fix some spelling errors in code comments and Kconfig helps

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-03 17:04:13 +02:00
Benjamin Cabé
7d45d3e821 driver: gicv3: doc: fix spelling errors in kconfig file
fixed a few typos / spelling mistakes

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-03 17:04:13 +02:00
Benjamin Cabé
dd4bf1aadc pm: policy: doc: fix spelling of help text
s/whithout/without/

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-03 17:04:13 +02:00
Benjamin Cabé
89fef8aa6d doc: correct the spelling of "comparison"
s/comparision/comparison/

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-03 17:04:13 +02:00
Benjamin Cabé
2f29ee07c2 boards: native_sim: fix typo "simulator"
s/Simular/Simulator/

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-03 17:04:13 +02:00
Benjamin Cabé
a8b763fe3b doc: fix "buses" spelling
Plural of "bus" is "buses", not "busses".

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-03 17:04:13 +02:00
Khaoula Bidani
5161f69409 west.yml: hal_stm32 : cube package update to latest version
Main changes on H7 cube package:
Fix DMA source and destination addresses

Signed-off-by: Khaoula Bidani <khaoula.bidani-ext@st.com>
2025-09-03 17:04:01 +02:00
Miguel Gazquez
84cfd706e9 drivers: sensor: lsm9ds1: use consistent variable name data
In both lsm9ds1 and lsm9ds1_mag drivers, the device data structure is
generally referenced with the variable name data.
However, in the initialization functions, the variable was named
lsm9ds1 (or lsm9ds1_mag for the magnetometer), which breaks this
convention.

Rename these variables to data for consistency across the driver.

Signed-off-by: Miguel Gazquez <miguel.gazquez@bootlin.com>
2025-09-03 14:58:30 +01:00
Miguel Gazquez
6ce58d4d71 drivers: sensor: lsm9ds1: add device PM support
Adds support for device PM for the lsm9ds1 sensor, putting the sampling
frequency of both the accelerometer and the gyroscope at 0 when the device
is suspended.

Signed-off-by: Miguel Gazquez <miguel.gazquez@bootlin.com>
2025-09-03 14:58:30 +01:00
Benjamin Cabé
ce628ea558 shields: add MikroE 3D-HALL-3 Click shield
Adds support for the MikroE 3D-HALL-3 Click shield

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-03 14:58:23 +01:00
Camille BAUD
abbeab9773 soc: bflb: Add sysmap configuration
Memory region configuration: Configure the flags of each memory
regions present on the device using the mechanism provided by
the xuantie core (chapter 9.2 of E907 manual).
This enables matching more closely the real memory space of
the device than the defaults.

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-09-03 14:58:16 +01:00
Camille BAUD
c146af8e6a soc: bflb: BL61x tmpVal -> tmp
Variable is snakecase when it shouldnt

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-09-03 14:58:16 +01:00
Benjamin Cabé
ed677d0d9d shields: add MikroE IR-GESTURE Click shield
Adds support for the MikroE IR-GESTURE Click shield

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-03 14:58:04 +01:00
Benjamin Cabé
03ac047758 shields: add MikroE PRESSURE-3 Click shield
Adds support for the MikroE PRESSURE-3 Click shield

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-03 14:57:49 +01:00
Benjamin Cabé
be879d8aaf shields: add MikroE PROXIMITY-9 Click shield
Adds support for the MikroE PROXIMITY-9 Click shield

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-03 14:57:41 +01:00
Benjamin Cabé
e55b793923 shields: add MikroE AIR-QUALITY-3 Click shield
Adds support for the MikroE AIR-QUALITY-3 Click shield

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-03 14:56:43 +01:00
Benjamin Cabé
a48dd9bb4e shields: add MikroE LSM6DSL Click shield
Adds support for the MikroE LSM6DSL Click shield

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-03 14:56:33 +01:00
Camille BAUD
b13ec9ab54 soc: bflb: address e24 boot failures
This should fix e24 failing to boot by ensuring
interrupts are disabled at startup

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-09-03 14:56:23 +01:00
Camille BAUD
1d6dd89987 soc: bflb: Remove Extraneous code
Remove unecessary unused code and Kconfig

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-09-03 14:56:23 +01:00
Benjamin Cabé
c1cfd10d76 include: usb: bos: add doxygen documentation
Fully document the bos.h header file

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-03 14:55:59 +01:00
Johann Fischer
70a68dfe3c drivers: udc_kinetis: allocate control OUT length as multiple of MPS0
Controllers that use buffers directly must always allocate the length of
the control OUT buffer as a multiple of the control endpoint MPS.
Kinetis UDC driver explicitly checks the remaining buffer size and
finishes the transfer earlier.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-09-03 14:55:50 +01:00
Johann Fischer
d493523b76 drivers: udc_kinetis: fix typo and remove unused variable
Fix typo und remove unused variable, add a check for buffer allocation.
Do not disable controller on udc_disable.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-09-03 14:55:50 +01:00
Johann Fischer
e61cd224dd drivers: udc: do not reset odd buffer flag on endpoint enable
Some controllers, such as those used in Kinetis devices, do not provide
a way to reset the buffer descriptor flags for each endpoint. Do not
reset the odd flag on endpoint enable, as this will cause it to become
out of sync with the hardware.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-09-03 14:55:50 +01:00
Etienne Carriere
209bfbde89 Revert "tests: ram_context_for_isr: exclude STM32C0 boards"
This reverts commit 4f18ccd73b
now that STM32C0 based target are supported by the test default
configuration (see commit 7dbd60016c ("tests: ram_context_for_isr:
Use Kconfig for IRQ config").

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-09-03 14:53:39 +03:00
Jeremy Dick
ab7b60ca0f dts: arm: renesas: ra: Define vbatts pins on RA4 and RA6
Define the vbatts-pins for the RA4E1, RA4M1, RA4M2, RA4M3, RA4W1
RA6E1, RA6M1, RA6M2, RA6M3, RA6M4, and RA6M5

Signed-off-by: Jeremy Dick <jdick@pivotint.com>
2025-09-03 14:53:29 +03:00
Benjamin Cabé
637f1cd411 net: shell: dns: use int type for %.*s format specifier
The `%.*s` format specifier expects an int so cast the size_t parameter
to int.

Fixes an issue spotted in CI for:

    west twister -p native_sim/native/64 -s sample.net.dns_resolve.mdns

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-03 14:53:17 +03:00
Emil Gydesen
6fca2ed995 doc: releases: Add entries for unicast_group_info_get
Add entries for the two new functions,
bt_bap_unicast_group_get_info and bt_cap_unicast_group_get_info.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-09-03 13:49:54 +03:00
Emil Gydesen
2d85792e6a tests: Bluetooth: CAP: Unittest bt_cap_unicast_group_get_info
Add unittests for bt_cap_unicast_group_get_info.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-09-03 13:49:54 +03:00
Emil Gydesen
5746852090 tests: Bluetooth: CAP: Test bt_cap_unicast_group_get_info
Add an additional step when doing CAP unicast tests where
we validate that the presentation delay set for each stream
match the presentation delay from bt_bap_unicast_group_get_info
via the BAP unicast group pointer retrieved via
bt_cap_unicast_group_get_info.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-09-03 13:49:54 +03:00
Emil Gydesen
29f5628c7f Bluetooth: CAP: Add bt_cap_unicast_group_get_info
Add bt_cap_unicast_group_get_info to get information about
a CAP unicast group. For now this just contain the pointer
to the BAP unicast group, which then can be used with
bt_bap_unicast_group_get_info to get information specific
to BAP. The bt_cap_unicast_group_info struct can later be
expanded with any additional information CAP may add.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-09-03 13:49:54 +03:00
Emil Gydesen
f27f8edfec tests: Bluetooth: BAP: Add test of bt_bap_unicast_group_get_info
Use bt_bap_unicast_group_get_info in the BSIM test to verify that
the return values are as expected.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-09-03 13:49:54 +03:00
Emil Gydesen
dae29d344a Bluetooth: BAP: Add bt_bap_unicast_group_get_info
Add bt_bap_unicast_group_get_info to get information
about a unicast group. In this first iteration the info
struct only contains the sink and source presentation
delay, but the info struct can easily be expanded on
later to contain more.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-09-03 13:49:54 +03:00
Emil Gydesen
e42e875777 Bluetooth: BAP: Add validation of presentation delay
BAP section 7.1 states that all streams in a direction shall
have the same presentation delay. To achieve this, we need to
store the configured presentation delay for a unicast group,
so that we can compare with the new presentation delay.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-09-03 13:49:54 +03:00
Benjamin Cabé
aedd23f7ad doc: modbus: connectivity: move Modbus docs to Connectivity
The Modbus subsystem belongs to the Connectivity category rather than
OS Services.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-03 13:49:43 +03:00
Benjamin Cabé
dfd027db77 include: modbus: doc: move modbus doxygen group to connectivity
Modbus subsystem has to do with connectivity, it is not a device
driver class.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-03 13:49:43 +03:00
Flavio Ceolin
9fdbe5f66e bt: host/classic: Use proper flexible array
0 length array is a GNU extension. Use proper C99 flexible
array.

Signed-off-by: Flavio Ceolin <flavio@hubblenetwork.com>
2025-09-03 13:49:31 +03:00
Flavio Ceolin
1441a5a9dc bt: controller/openisa: Use proper flexible array
0 length array is a GNU extension. Use proper C99 flexible
array.

Signed-off-by: Flavio Ceolin <flavio@hubblenetwork.com>
2025-09-03 13:49:31 +03:00
Flavio Ceolin
e50da84e74 bt: host/classic: Use proper flexible array
0 length array is a GNU extension. Use proper C99 flexible
array.

Signed-off-by: Flavio Ceolin <flavio@hubblenetwork.com>
2025-09-03 13:49:31 +03:00
Flavio Ceolin
bfa44f5aa2 tests: bt/tester: Use proper flexible array
0 length array is a GNU extension. Use proper C99 flexible
array.

Signed-off-by: Flavio Ceolin <flavio@hubblenetwork.com>
2025-09-03 13:49:31 +03:00
Flavio Ceolin
bb66123ecd bt: controller/util: Use proper flexible array
0 length array is a GNU extension. Use proper C99 flexible
array.

Signed-off-by: Flavio Ceolin <flavio@hubblenetwork.com>
2025-09-03 13:49:31 +03:00
Flavio Ceolin
69fb9d62f1 lib: heap: Use proper flexible array
0 length array is a GNU extension. Use proper C99 flexible
array.

Signed-off-by: Flavio Ceolin <flavio@hubblenetwork.com>
2025-09-03 13:49:31 +03:00
Flavio Ceolin
6f0e9caa9c bt: audio: Use proper flexible array
0 length array is a GNU extension. Use proper C99 flexible
array.

Signed-off-by: Flavio Ceolin <flavio@hubblenetwork.com>
2025-09-03 13:49:31 +03:00
dependabot[bot]
ed1a671bfd ci: github: bump the actions-deps group across 1 directory with 5 updates
Bumps the actions-deps group with 5 updates in the / directory:

| Package | From | To |
| --- | --- | --- |
| [actions/checkout](https://github.com/actions/checkout) | `4.2.2` | `5.0.0` |
| [aws-actions/configure-aws-credentials](https://github.com/aws-actions/configure-aws-credentials) | `4.2.1` | `4.3.1` |
| [actions/download-artifact](https://github.com/actions/download-artifact) | `4.3.0` | `5.0.0` |
| [codecov/codecov-action](https://github.com/codecov/codecov-action) | `5.4.3` | `5.5.0` |
| [github/codeql-action](https://github.com/github/codeql-action) | `3.29.2` | `3.29.11` |



Updates `actions/checkout` from 4.2.2 to 5.0.0
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](11bd71901b...08c6903cd8)

Updates `aws-actions/configure-aws-credentials` from 4.2.1 to 4.3.1
- [Release notes](https://github.com/aws-actions/configure-aws-credentials/releases)
- [Changelog](https://github.com/aws-actions/configure-aws-credentials/blob/main/CHANGELOG.md)
- [Commits](b475783126...7474bc4690)

Updates `actions/download-artifact` from 4.3.0 to 5.0.0
- [Release notes](https://github.com/actions/download-artifact/releases)
- [Commits](d3f86a106a...634f93cb29)

Updates `codecov/codecov-action` from 5.4.3 to 5.5.0
- [Release notes](https://github.com/codecov/codecov-action/releases)
- [Changelog](https://github.com/codecov/codecov-action/blob/main/CHANGELOG.md)
- [Commits](18283e04ce...fdcc847654)

Updates `github/codeql-action` from 3.29.2 to 3.29.11
- [Release notes](https://github.com/github/codeql-action/releases)
- [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md)
- [Commits](181d5eefc2...3c3833e0f8)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-version: 5.0.0
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: actions-deps
- dependency-name: aws-actions/configure-aws-credentials
  dependency-version: 4.3.1
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: actions-deps
- dependency-name: actions/download-artifact
  dependency-version: 5.0.0
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: actions-deps
- dependency-name: codecov/codecov-action
  dependency-version: 5.5.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: actions-deps
- dependency-name: github/codeql-action
  dependency-version: 3.29.11
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: actions-deps
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-09-03 13:49:18 +03:00
Łukasz Stępnicki
621d793726 soc: nordic: nrf54h: turn off NRFS DVFS service
DVFS is supported with IronSide call. NRFS DVFS
will be not enabled by default.

Signed-off-by: Łukasz Stępnicki <lukasz.stepnicki@nordicsemi.no>
2025-09-03 13:48:59 +03:00
Jamie McCrae
799a470c8f tests: mgmt: mcumgr: img_mgmt_slot_info: Fix nRF5340 overlay
Fixes deleting nodes in the overlay file that no longer exist

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-09-03 13:48:46 +03:00
Benjamin Cabé
11a9096c7c drivers: rtc: ds3231: fix uninitialized variable error
Until recently this driver wasn't built in CI. Now that it is, clang
is complaining about `err` possibly being uninitialized in case
`bitmask` is 255. Fix it by actually removing code that was
unnecessarily trying to access the uninitialized variable.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-03 11:04:07 +02:00
Ajay Neeli
8231941414 boards: amd: kv260_r5: update ttc0 clock frequency
- Update TTC0 clock frequency to 100MHz to align with the Configurable
Example Designs (CED) for kv260 board as used in Vivado.
- Add support for deriving SYS_CLOCK_HW_CYCLES_PER_SEC from Device Tree

Signed-off-by: Ajay Neeli <ajay.neeli@amd.com>
2025-09-03 11:03:58 +02:00
Lukasz Fundakowski
6fcb3ff219 twister: refactoring: Improve error message when test failed
Modified the assertion statements to raise informative exceptions
that indicate which lines did not pass the assertions.
Added unit tests using pytest to validate the functionality of
the modified functions.

Signed-off-by: Lukasz Fundakowski <lukasz.fundakowski@nordicsemi.no>
2025-09-03 11:03:47 +02:00
Jamie McCrae
4977c5cef9 scripts/kconfig/cmake: Generate/use env file for zephyr module paths
Adds a output env file that lists the paths of zephyr modules
which can be used in Kconfig files and uses this in Kconfig. Also
updates Kconfig doc output to generate and use this

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-09-03 11:03:40 +02:00
Erwan Gouriou
47de4d1d9e drivers: stm32: Make use of new GET_INSTANCE DMA macro
Use the new macro and factorize code when possible.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2025-09-03 11:03:31 +02:00
Erwan Gouriou
daeb7b9094 include: drivers: stm32 dma: Provide a GET_INSTANCE macro
To simplify the work on client drivers, provide a STM32_DMA_GET_INSTANCE()
macro which abstracts:
- STM32_DMA_STREAM_OFFSET
- __LL_DMA_GET_STREAM_INSTANCE() vs __LL_DMA_GET_CHANNEL_INSTANCE()

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2025-09-03 11:03:31 +02:00
Erwan Gouriou
67d2281ffe drivers: stm32: Keep DMA stream offset handling internal to driver
In HAL based stm32 drivers, dma handling is done internally to HAL.
Though, in order to avoid a dma_config() call is done to ensure stream
will be set as busy in zephyr dma driver to avoid potential resource
sharing conflict.
This dma_config() call was done while taking into account
STM32_DMA_STREAM_OFFSET, which is wrong as it will prevent zephyr dma
driver to set the right stream as busy.
Fix this in impacted drivers.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2025-09-03 11:03:31 +02:00
Erwan Gouriou
db1d31e938 drivers: dma: stm32: Minor indentation fix
Makes it easier to grep.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2025-09-03 11:03:31 +02:00
Erwan Gouriou
b9577e6edb drivers: dma: stm32: Align channel offset handling in all API functions
To ease code understanding of offset handling within the driver,
harmonize its treatment within impacted functions.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2025-09-03 11:03:31 +02:00
Erwan Gouriou
5e4bf3780d drivers: dma: stm32u5: Clean up stream offset code
STM32_DMA_STREAM_OFFSET is defined as 0 in case "dma u5" is in use.
Clean up code relating to this define.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2025-09-03 11:03:31 +02:00
Erwan Gouriou
d50ad1cfd9 drivers: disk: sdmmc: stm32l4: Select DMA if enabled in dt
On STM32L4, similarly to other STM32 series, enable DMA directly based
on dt configuration and avoid need to configure it at application level.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2025-09-03 11:03:31 +02:00
Sylvio Alves
4651a02ff4 twister: reset ESP32 via RTS/DTR to capture early boot logs
When testing ESP32-based platforms in CI, early boot logs can be missed
if the serial connection isn't reset properly. This patch applies the
standard RTS/DTR toggle sequence to reset the ESP32 after flashing,
ensuring consistent log capture from the very beginning.

The logic is applied conditionally when the runner is "esp32".

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2025-09-03 11:03:20 +02:00
Jamie McCrae
15744c2701 dts/boards: nordic: nrf5340: Split partition into s and ns versions
Splits up partition configuration for nrf5340-based cpuapp board
targets for secure and non-secure versions, the secure version now
has an extra 16KiB per slot which was previously wrongly reserved
for TF-M partitions which the secure board target does not use

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-09-03 11:02:52 +02:00
Tony Han
6c1b1dc600 board: atmel: sam: remove warning suppress for duplicate unit-address
As the compiling warning "duplicated unit-address" been solved by
using a common parent node, remove the suppress from makefiles.

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-09-03 08:56:44 +02:00
Tony Han
06fc36e496 drivers: ethernet: sam_eth: get the register address from parent node
Get the register address from the common parent node as the device
tree updated in the last commit.

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-09-03 08:56:44 +02:00
Tony Han
17981d2db9 dts: arm: atmel: refactor to use common parent nodes for sam ethernet
The ethernet mac and mdio share registers, refactor them to have common
parent nodes.

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-09-03 08:56:44 +02:00
Benjamin Cabé
c62985fd4b doc: usb: re-organize doxygen groups for usb hardware
USB host, device, Type-C, and BC1.2 are now all grouped under a
top-level USB entry in the "Device drivers" doxygen group.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-03 08:56:35 +02:00
John Gietzen
e7709ec329 boards: st: Add I3G4250D gyroscope for stm32f411e_disco board
Add support for I3G4250D gyroscope that is present on D revisions
of the stm32f411e_disco board.

Signed-off-by: John Gietzen <john@gietzen.us>
2025-09-03 08:56:27 +02:00
John Lin
a5c33fda39 boards: raspberrypi: rpi_pico: Add MCUboot variants
Add MCUboot variants to RPI Pico / Pico W and SysBuild parititions:
 - rpi_pico/rp2040/mcuboot
 - rpi_pico/rp2040/w/mcuboot

Add MCUboot variants to RPI Pico 2 / Pico 2 W and SysBuild partitions:
 - rpi_pico2/rp2350a/m33/mcuboot
 - rpi_pico2/rp2350a/w/m33/mcuboot

Signed-off-by: John Lin <john.lin@beechwoods.com>
2025-09-03 08:56:17 +02:00
Henrik Brix Andersen
36f78b52b7 scripts: valgrind: suppress missing clean-up in nct_new_thread()
Suppress memory leaks detected by valgrind originating from
nct_new_thread(), part of the native_sim CPU thread emulation.

This covers calls to posix_new_thread() as well, since this function simply
calls nct_new_thread (but may be optimized out by the compiler).

Signed-off-by: Henrik Brix Andersen <henrik@brixandersen.dk>
2025-09-03 06:10:49 +02:00
Fabio Baltieri
867676c906 twister: pass flash_command to the harness
Add the necessary logic to pass the custom flash_command to the pytest
harness.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2025-09-03 06:10:37 +02:00
Fabio Baltieri
a31f784e95 twister: add a --flash-command flag
Currently twister requires west to flash a board, either directly using
west-flash or indirectly through the cmake flash target.

Add an option to specify a custom flash script, this is passed a
build-dir and board-id flags so it can be used to implement custom
flashing scripts in a system that does not use west.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2025-09-03 06:10:37 +02:00
Jonas Berg
5857aee4ab boards: shields: Add Sparkfun RV8803 RTC shield
Product photo from
https://www.sparkfun.com/sparkfun-real-time-clock-module-rv-8803-qwiic.html

Tested with the command mentioned in the index.rst page.

Signed-off-by: Jonas Berg <jonas.s.t.berg@gmail.com>
2025-09-03 06:10:16 +02:00
Jonas Berg
30fbfffb67 boards: shields: Add Adafruit AHT20 temp and humidity sensor shield
Product photo from https://learn.adafruit.com/assets/91687
with the licence CC BY 3.0

Tested with the command mentioned on the index.rst page.

Signed-off-by: Jonas Berg <jonas.s.t.berg@gmail.com>
2025-09-03 06:10:01 +02:00
Jonas Berg
5f5638b1cb boards: shields: Add Adafruit DPS310 pressure sensor shield
Product photo from https://learn.adafruit.com/assets/87727
with the license CC BY-SA 3.0

Tested with the command mentioned in the index.rst page.

Signed-off-by: Jonas Berg <jonas.s.t.berg@gmail.com>
2025-09-03 06:09:41 +02:00
Jun Lin
e9d470b2f4 ec_host_cmd: shi: npcx: not reset when receiving bad data
When the SHI driver receives data from the host and finds it is invalid
(due to a checksum error or an unsupported protocol version),
it currently resets the state machine, initializes the output buffer,
and waits for CS de-assertion. Upon CS de-assertion, the driver resets
the state machine and initializes the output buffer again. This commit
removes the first redundant reset and re-initialization in the function
`shi_npcx_bad_received_data()`, improving the driver’s efficiency.

Signed-off-by: Jun Lin <CHLin56@nuvoton.com>
2025-09-03 06:09:25 +02:00
Mario Paja
5af3adf66f drivers: i2s: stm32_sai: fix h7xx DMA configuration
This change fixes STM32H7xx dma configuration.
PeriphInc and MemInc should be the same for both directions.
MemDataAlignment should be set to DMA_MDATAALIGN_HALFWORD

Signed-off-by: Mario Paja <mariopaja@hotmail.com>
2025-09-03 01:44:22 +02:00
Jonas Berg
12a8eaf47d boards: shields: Add Adafruit APDS9960 proximity sensor shield
Product photo from https://learn.adafruit.com/assets/89850

Tested with the command mentioned on the index.rst page.

Signed-off-by: Jonas Berg <jonas.s.t.berg@gmail.com>
2025-09-03 01:43:07 +02:00
Jonas Berg
7428a84667 boards: shields: Add Adafruit 24LC32 EEPROM shield
Product photo from https://learn.adafruit.com/assets/123033
with license CC BY-SA 3.0.

Tested with the command mentioned on the index.rst page.

Signed-off-by: Jonas Berg <jonas.s.t.berg@gmail.com>
2025-09-03 01:42:31 +02:00
Jonas Berg
97d5bae13f boards: shields: Add product photos to some shields
The photos are from
https://learn.adafruit.com/assets/13421
https://learn.adafruit.com/assets/31967
https://learn.adafruit.com/assets/9187
and have the license CC BY-SA 3.0

I have cropped the photos, downsampled to width 500 px and
converted to webp.

Signed-off-by: Jonas Berg <jonas.s.t.berg@gmail.com>
2025-09-03 01:42:10 +02:00
Aditya Chopra
32789e550d drivers: sensor: paj7620: Fix potential integer overflow in driver
Fix Coverity issue CID 524766: A potential integer overflow could occur
in paj7620_set_sampling_rate() due to multiplication of
sensor_value->val1 instance(which is of type int32_t) with 1000000
without typecasting it to int64_t.

Fixes #90482

Signed-off-by: Aditya Chopra <adityachopra2912@gmail.com>
2025-09-03 01:41:47 +02:00
Jonas Berg
89d1c52687 boards: shields: Add Adafruit VCNL4040 proximity sensor shield
Product photo from https://learn.adafruit.com/assets/78982
with license CC BY-SA 3.0

Tested with command mentioned in the index.rst page.

Signed-off-by: Jonas Berg <jonas.s.t.berg@gmail.com>
2025-09-03 01:40:17 +02:00
Mario Paja
a5107fbc0a drivers: i2s: stm32_sai set mem_block to NULL after STOPPING
Set mem_block to NULL after the STOPPING command in order to exit
TX callback at the end of the buffer transmission.

Signed-off-by: Mario Paja <mariopaja@hotmail.com>
2025-09-03 01:40:09 +02:00
Mario Paja
abb3c2a472 drivers: i2s: stm32_sai fix tx callback mem_block release
This change fixes a wrong buffer release on tx callback which
was not correctly fixed by
https://github.com/zephyrproject-rtos/zephyr/pull/94696.

Signed-off-by: Mario Paja <mariopaja@hotmail.com>
2025-09-03 01:40:09 +02:00
Jonas Berg
2581729925 boards: shields: Add Adafruit HT16K33 LED matrix shield
Product photo from https://learn.adafruit.com/assets/87051
with the license CC BY-SA 3.0

Tested with the command mentioned in the index.rst page.

Signed-off-by: Jonas Berg <jonas.s.t.berg@gmail.com>
2025-09-03 01:37:48 +02:00
Vinayak Kariappa Chettimada
eba31282e8 samples: Bluetooth: observer: Extended Scanning on BBC Micro Bit board
Add configuration overlay file to support observer sample
with Extended Scanning on BBC Micro Bit board.

Due to slow CPU, there will be assertions, and this commit
(for now) validates build-only. And the sample may run for
a duration until it asserts.

Asserts:

- ASSERTION FAIL [start_us == (aux_start_us + 1U)]
  @ WEST_TOPDIR/zephyr/subsys/bluetooth/controller/ll_sw/
  nordic/lll/lll_scan_aux.c:359
  This will happen for small aux offset value, definitely
  for the 300 us because CPU usage latency to setup such
  auxiliary PDU reception on nRF51 is high due to slow CPU.

- ASSERTION FAIL [0]
  @ WEST_TOPDIR/zephyr/subsys/bluetooth/controller/ll_sw/
  nordic/lll/lll_scan_aux.c:592
    prepare_cb: Actual EVENT_OVERHEAD_START_US = 579
  This will happen due to CPU usage latencies scheduling
  the radio events, due to slow CPU.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2025-09-03 01:36:57 +02:00
Vinayak Kariappa Chettimada
53835e9524 samples: Bluetooth: observer with 10 ms continuous scanning
Updated observer sample to use 10 ms continuous scanning
parameters.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2025-09-03 01:36:57 +02:00
Vinayak Kariappa Chettimada
230df77993 Bluetooth: Controller: Relax radio packet pointer assignment deadline
Relax the radio packet pointer assignment deadline assertion
until access address being transmitted. The PDU buffer is
probably only needed just after access address is being
transmitted or received by the radio. This will give some
more breathing room for slow CPUs like in nRF51x SoCs.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2025-09-03 01:36:57 +02:00
Jonas Berg
4227016559 boards: shields: Add Adafruit LIS2MDL magnetometer shield
The product photo is from https://learn.adafruit.com/assets/88773
with license CC BY-SA 3.0

Tested with the command mentioned on the index.rst page.

Signed-off-by: Jonas Berg <jonas.s.t.berg@gmail.com>
2025-09-03 01:32:49 +02:00
Jeppe Odgaard
451193f2e3 drivers: sensor: explorir_m: check transceive return value in init
Check `explorir_m_uart_transceive`'s return value in `explorir_m_init` and
return the value if not 0.

Signed-off-by: Jeppe Odgaard <jeppe.odgaard@prevas.dk>
2025-09-03 01:32:37 +02:00
Daniel Hajjar
a47f304bdf lib: libc: minimal: Refactor stdbool.h for C23
Updated minimal libc to use the type "bool" which was introduced in C23
instead of defining it as a macro.

Link: https://en.cppreference.com/w/c/header/stdbool
Signed-off-by: Daniel Hajjar <daniel.hajjar16@gmail.com>
2025-09-03 01:28:42 +02:00
Jonas Berg
222c79c1fb boards: shields: Add Adafruit DRV2605L haptics driver shield
Product photo from https://learn.adafruit.com/assets/122966
with license CC BY-SA 3.0

Tested with the command mentioned in the index.rst page.

Signed-off-by: Jonas Berg <jonas.s.t.berg@gmail.com>
2025-09-03 01:28:05 +02:00
Benjamin Cabé
81a6d60069 test: rtc: add maxim,ds3231-rtc to build_all test suite
Ensure this driver is tested in the build_all test suite.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-03 01:24:15 +02:00
Benjamin Cabé
ce024da41a test: rtc: build_all: no need for explicit status="okay"
DT node are okay by default, so drop unnecessary status="okay"
properties.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-03 01:24:15 +02:00
Benjamin Cabé
abc03fe279 drivers: rtc: ds3231: make header file private
rtc_ds3231.h only contains register definitions and bitmasks used
internally by the driver - make this header file private.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-03 01:24:15 +02:00
Benjamin Cabé
774271ad09 boards: infineon: increase boostrap size for cyw920829 soc
Fix CI issues whereby arch.arm.swap.common.no_optimizations test is
failing due to overlapping sections

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-02 19:19:40 -04:00
Jonas Berg
57126f2836 boards: shields: Add Adafruit MCP9808 temperature sensor shield
Product photo from https://learn.adafruit.com/assets/102984
with the license CC BY-SA 3.0

Tested with the command mentioned on the index.rst page.

Signed-off-by: Jonas Berg <jonas.s.t.berg@gmail.com>
2025-09-03 01:19:10 +02:00
Adib Taraben
4ca352b052 phy_adin2111.c: correctly assign state parameter with state from device
This fixes an unintialized variable access problem in callback.

Signed-off-by: Adib Taraben <theadib@gmail.com>
2025-09-03 01:18:54 +02:00
Aksel Skauge Mellbye
c1ead6e68a manifest: Update hal_silabs to include simplicity_sdk v2025.6.1
Update HAL to pull in latest upstream fixes for Silicon Labs
Series 2 devices.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-09-03 01:17:26 +02:00
Henrik Brix Andersen
8a29bfad2f doc: develop: west: alias: add example for auto-excluding platforms
Add an example west alias for automatically excluding certain platforms
when running Twister via west.

This is especially useful for excluding the 32-bit native_sim target when
running on hosts systems without a 32-bit host C library
(i.e. Linux/AArch64).

Signed-off-by: Henrik Brix Andersen <henrik@brixandersen.dk>
2025-09-03 01:16:50 +02:00
Jonas Berg
bc28fb1b19 boards: shields: Add Adafruit INA219 current sensor shield
Product photo from https://learn.adafruit.com/assets/104390
which has the license CC BY-SA 3.0

Tested with the command mentioned in the index.rst file.

Signed-off-by: Jonas Berg <jonas.s.t.berg@gmail.com>
2025-09-03 01:16:21 +02:00
Alexander Apostolu
b4783e5eb0 doc: hardware: peripherals: sensor: temp_polling: fix compile error
Fix compile errors in the sensor documentation for temperature
polling - extra curly braces and unused variable.

Signed-off-by: Alexander Apostolu <apostolu240@gmail.com>
2025-09-03 01:16:11 +02:00
Pisit Sawangvonganan
fa3f2e1b2a modbus: serial: rename rtu_tx_adu to modbus_rtu_tx_adu
Renamed the static function `rtu_tx_adu` to `modbus_rtu_tx_adu`
for naming consistency with `modbus_rtu_rx_adu`.

Signed-off-by: Pisit Sawangvonganan <pisit@ndrsolution.com>
2025-09-03 01:10:49 +02:00
Benjamin Cabé
5b7bf2e68a include: drivers: rtc: counter: deprecate counter-based DS3231 driver
There is a "native" RTC driver for DS3231 now (maxim,ds3231-rtc, one of
the multiple functions implemented as MFD) so do all we can to
discourage the use of the legacy, counter-API based, driver.

Flag the compatible as deprecated.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-03 01:10:40 +02:00
Jonas Berg
17b301a753 boards: shields: Add Adafruit TSL2591 light sensor shield
Tested with the command mentioned on the index.rst page.

The product photo is from https://learn.adafruit.com/assets/95227
with the license CC BY-SA 3.0

Signed-off-by: Jonas Berg <jonas.s.t.berg@gmail.com>
2025-09-03 01:10:28 +02:00
Laurentiu Mihalcea
e7fb812dbb MAINTAINERS: add entry for the firmware subsystem
The firmware subsystem has been around since Zephyr 4.0. Therefore,
add an entry for it in the MAINTAINERS file such that changes will
no longer go unnoticed. For now, nominate myself as its maintainer.

Signed-off-by: Laurentiu Mihalcea <laurentiu.mihalcea@nxp.com>
2025-09-03 01:10:13 +02:00
Lena Voytek
6ecfd5c1b1 boards: adafruit: add initial support for esp32 feather v2
The Adafruit ESP32 Feather V2 is a board that uses the Feather standard
layout. It uses an ESP32-PICO v3 02 module, and includes a USB-C
connector, LiPo battery charger, NeoPixel RGB LED, and STEMMA QT
connector.

Signed-off-by: Lena Voytek <lena@voytek.dev>
2025-09-03 01:09:58 +02:00
Raffael Rostagno
cdc3a52642 pinctrl: esp32h2: Add peripherals support
Add pinctrl defines for the following peripherals:

- SPI
- I2C
- I2S
- LEDC PWM
- MCPWM
- TWAI
- PCNT

Signed-off-by: Raffael Rostagno <raffael.rostagno@espressif.com>
2025-09-02 21:41:09 +02:00
Raffael Rostagno
1c0e877351 dts: esp32h2: Add peripherals
Add device tree entries for the following peripherals:

- ADC
- I2C
- I2S
- LEDC PWM
- MCPWM
- PCNT
- SPI
- DMA
- TWAI
- USB serial

Signed-off-by: Raffael Rostagno <raffael.rostagno@espressif.com>
2025-09-02 21:41:09 +02:00
Raffael Rostagno
2ff00c620a west.yml: hal_espressif: Update for ESP32-H2 peripherals
Update HAL for ESP32-H2 peripherals support.

Signed-off-by: Raffael Rostagno <raffael.rostagno@espressif.com>
2025-09-02 21:41:09 +02:00
Vincent Jardin
0fc64c1efe boards: renesas: add 3 LED support
The ek_ra4m2 board has 3 LED.

Signed-off-by: Vincent Jardin <vjardin@free.fr>
2025-09-02 21:40:53 +02:00
Yasin Ustuner
09d4c9bded tests: counter: Remove unused line
This commit removes unused line from
counter_basic_api test.

Signed-off-by: Yasin Ustuner <Yasin.Ustuner@analog.com>
2025-09-02 21:40:33 +02:00
Shan Pen
cdd4460a31 drivers: disk: sdmmc_stm32: Add compatibility macros for STM32F4 SDIO
Add compatibility macros to map SDMMC constants to SDIO equivalents
for STM32F4 series MCUs. STM32F4 uses SDIO peripheral with SDIO_*
constants while newer STM32F7/H7 series use SDMMC peripheral with
SDMMC_* constants.

This fixes compilation errors on STM32F4 platforms where SDMMC_*
constants are undefined:
- SDMMC_CLOCK_EDGE_RISING
- SDMMC_CLOCK_BYPASS_ENABLE/DISABLE
- SDMMC_CLOCK_POWER_SAVE_ENABLE/DISABLE
- SDMMC_HARDWARE_FLOW_CONTROL_DISABLE

Fixes zephyrproject-rtos/zephyr#94896

Signed-off-by: Shan Pen <bricle031@gmail.com>
2025-09-02 21:40:24 +02:00
Liam Ogletree
6524cc4f22 tests: drivers: Add AT25XV021A flash device to test cases
Dummy values mirror at25 and spi-nor implementation.

Signed-off-by: Liam Ogletree <liam.ogletree@cirrus.com>
2025-09-02 21:40:07 +02:00
Liam Ogletree
97752191f4 drivers: flash: Add support for Atmel AT25 SPI flash variant
The AT25XV021A variant is a flash variant of Atmel's AT25 family
that adds extra protections, requiring additional writes to the
device to program or erase data.

This commit adds a flash driver for AT25XV021A devices instead of
modifying (1) the existing AT45 SPI flash driver or (2) the
existing AT24/25 EEPROM driver because this variant poses
fundamental changes that affect all aspects of the driver.

Notably,
 - AT25XV021A includes a second status register, and the format
	and functions of the existing status register is
	changed from the existing drivers.
 - AT25XV021A requires executing page or chip erase commands
	before writing, making it incompatible with the
	existing AT24/25 EEPROM driver.
 - AT25XV021A adds a software protection layer that requires
	extra writes before executing program or erase commands.

Tested writing to and erasing from an AT25XV021A device. Tested
reading from an AT25XV021A device across page boundaries. Tested
chip erase function. Tested driver initialization from varying
initial hardware states.

Signed-off-by: Liam Ogletree <liam.ogletree@cirrus.com>
2025-09-02 21:40:07 +02:00
Terry Geng
1f53d6a2d3 drivers: spi: spi_pico_pio: Remove pio from ...data
Make use of the inline function to reduce unnecessary variables.

Signed-off-by: Terry Geng <terry@terriex.com>
2025-09-02 21:39:55 +02:00
Terry Geng
814750d115 drivers: misc: pio_rpi_pico: Make pio_rpi_pico_get_pio inline.
The `pio` value is stored in the internal `pio_rpi_pico_config` structure
that is not exposed. However, it is the first element of the structure.
Here, I convert the pointer to `pio_rpi_pico_config` into a pointer to PIO
to access this value.

Signed-off-by: Terry Geng <terry@terriex.com>
2025-09-02 21:39:55 +02:00
Joel Guittet
7837f5e509 drivers: wifi: esp32: fix integration of connection manager
Connection manager doesn't depends on ESP32 Wi-FI AP+STA mode.
This modification fix integration of connection manager binding
in the Wi-Fi ESP32 driver.

Signed-off-by: Joel Guittet <joelguittet@gmail.com>
2025-09-02 18:43:56 +02:00
Fin Maaß
29add12625 boards: nxp: frdm_mcxn947: deactivate eth phy on cpu1
deactivate eth phy on cpu1, because
mdio is also only activated on cpu0.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-09-02 18:42:53 +02:00
Syver Haraldsen
bd9dc902e1 storage/stream_flash: Add test for buffered data size API
Add a test for the new API to query the buffered data size in the
stream_flash subsystem.

Signed-off-by: Syver Haraldsen <syver.haraldsen@nordicsemi.no>
2025-09-02 18:42:45 +02:00
Syver Haraldsen
6331225c94 storage/stream_flash: Add API to query buffered data size
add a wrapper function to read the number of bytes currently buffered
and pending for the next flash write operation.

Signed-off-by: Syver Haraldsen <syver.haraldsen@nordicsemi.no>
2025-09-02 18:42:45 +02:00
Charles Hardin
633246a3ea net: dns: add query support for additional types CNAME, SRV, and TXT
These types are useful for IoT deployments and should be available
thru the resolver interface to get the data. The SRV is especially
useful to find services on the local network when not using a dns-sd
deployment and just something like Avanhi or Bonjour.

Signed-off-by: Charles Hardin <ckhardin@gmail.com>
2025-09-02 18:42:35 +02:00
Charles Hardin
b60ae6fb1a net: dns: only add periods between labels and not on the first label
When resolving SRV records - the label might not be compressed so
the first entry into the net buf is the start of the name and a
period could end up at the start - ie. ".example.local" so only add
a period when the buffer is not empty.

Signed-off-by: Charles Hardin <ckhardin@gmail.com>
2025-09-02 18:42:35 +02:00
Charles Hardin
ece1ed567b net: dns: adjust the enum for response type to be positive on success
The enum will auto increment, so in debug the IP and DATA records are
negative numbers which initially made this look like an error, so just
push the expected good values to be positive numbers in case of a print
or something else would imply these are ok.

Signed-off-by: Charles Hardin <ckhardin@gmail.com>
2025-09-02 18:42:35 +02:00
Emil Gydesen
2dc358cee2 Bluetooth: ISO: Add check to prevent premature BIG termination
There was an issue where terminating the BIG while in the
ISO connected callbacks could lead to continueing the loops
would cause access to cleared memory.

The simple solution to this is to simply prevent
bt_iso_big_terminate from terminating the BIGs while we are
processing the BIG HCI events.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-09-02 18:42:04 +02:00
Jordan Yates
066ed265ff doc: lora_lorawan: document LoRa Basics Modem
Document the current status of LoRaMAC-node and LoRa Basics Modem.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-09-02 18:41:44 +02:00
Jordan Yates
2270898271 samples: lora: validate LBM build
Add testcases for `CONFIG_LORA_MODULE_BACKEND_LORA_BASICS_MODEM` in the
LoRa API samples.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-09-02 18:41:44 +02:00
Jordan Yates
03513a6910 lora: lbm: choice of reported RSSI type
Add a choice of which RSSI type should be reported to the application
layer, packet RSSI (which stops at the noise floor) or signal RSSI
(which estimates the LoRa signal strength into the noise floor).

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-09-02 18:41:44 +02:00
Jordan Yates
611e14bd6d lora: lbm: enable SX126x RX boost option
Add the option to enable the RX boost mode in devicetree.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-09-02 18:41:44 +02:00
Jordan Yates
38384e1233 lora: LoRa Basics Modem backend for SX12xx chips
As a first integration of the LoRa Basics Modem backend, implement the
LoRa API for the standard SX126x/SX127x chips.

Much of the logic from `lbm_common.c` is taken from the loramac-node
`sx12xx_common` implementation, but it should now be agnostic for all
LoRa RF transceivers.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-09-02 18:41:44 +02:00
Jordan Yates
26438a5563 manifest: add lora-basics-modem module
Import the lora-basics-modem module as an alternate backend for LoRa
and LoRaWAN, since loramac-node has been deprecated.

Support is currently limited and experimental.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-09-02 18:41:44 +02:00
Jordan Yates
01c97e205d lora: shift drivers to dedicated loramac-node folder
Move the current implementation of the LoRa API using `loramac-node` to
a dedicated folder in preparation for the LoRa basics modem
implementation.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-09-02 18:41:44 +02:00
Emil Gydesen
de263b2bf8 doc: Bluetooth: ISO: Add broadcast to ISO shell docs
Add examples of how to use the ISO shell with broadcast.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-09-02 18:41:32 +02:00
Emil Gydesen
258e793cc8 Bluetooth: ISO: Shell: Fix bcode for big_create
The broadcast code was attempting to read from argv[1] instead
of argv[2] that actually contains the broadcast code.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-09-02 18:41:32 +02:00
Vaishnav Achath
3015714384 MAINTAINERS: Add @glneo as TI K3 Platforms maintainer
Add Andrew Davis (@glneo) as TI K3 Platform maintainer, Andrew is an
active collaborator and permanent employee of TI Processor SW team.
Also move myself as collaborator for K3 platforms.

Signed-off-by: Vaishnav Achath <vaishnav.a@ti.com>
2025-09-02 11:18:06 -04:00
Gerson Fernando Budke
0034709df5 .gitignore: Ignore direnv .envrc file
Ignore the direnv .envrc file to automatically loads and unloads
environment variables from the current directory.

Signed-off-by: Gerson Fernando Budke <nandojve@gmail.com>
2025-09-02 11:17:49 -04:00
Erwan Gouriou
c7086c7e67 drivers: flash_stm32_xspi: Fix Dummy Cycles on MX66UM1G45G NOR at 200MHz
This commit is fixing configuration of mx66uw1g45g NOR when working
at 200MHz.
According to its specification, when running at 200MHz, this memory should
use a Number Dummy Cycles configuration of 20 (DC bits in CFGR2), which is
the device's default configuration.
Applying the 66MHz configuration as done today was preventing flash to run
at frequency higher than 100Mhz.

This commit doesn't solve the more generic problem of this driver which
is applying this 66MHz configuration universally, irrespective of the
frequency and the memory device, but fixes the configuration which was
reported broken today.

Providing a global change would require starting a clear split between XSPI
controller configuration an bus device configuration, which is what new
MSPI API intend to solve, so this will be tackled once this driver will be
available.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2025-09-02 15:54:56 +02:00
Erwan Gouriou
f179972548 boards: stm32n6570_dk/nucleo_n657x0_q: Set NOR XSPI controller clk to HCLK5
Fix copy/paste issue on XSPI_SEL macro and use HCLK5 as kernel clk.
This has no functional impact on NOR as HCLK5 is the default clk which
was used due to the copy/paste error.
Remove now useless ic3 nodes.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2025-09-02 15:54:56 +02:00
Benjamin Cabé
c820085376 drivers: timer: stm32: fix typo in kconfig help
Corrected the LSE frequency value from 32678 to 32768.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-02 15:54:48 +02:00
Benjamin Cabé
c416937d9f include: drivers: flash: clean up doxygen
Rework doxygen group naming and fold "internal" Flash API into the main
Flash API group.
Also a minor fix of a missing javadoc-style comment.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-02 15:54:37 +02:00
Elmo Lan
6a98a11b66 soc : realtek: ec: rts5912: fix waiting time not enough
For the ULPM set, it asks for a 10ms ready time for the module.
Use k_busy_wait instead of k_msleep to ensure we wait enough clock cycles.

Signed-off-by: Elmo Lan <elmo_lan@realtek.com>
2025-09-02 15:54:31 +02:00
Theis Mejnertsen
7c7dae4f9e tests: zms: add function to test zms handling of invalid inputs
The ZMS API should not unexpectedly crash the application; this commit
adds tests to check if the ZMS API can safely handle and return -EINVAL
if called with a NULL fs pointer.

This commit also adds test to confirm the return value matches the
documentation if user calls the ZMS API before ZMS is mounted

Signed-off-by: Theis Mejnertsen <theismejnertsen@gmail.com>
2025-09-02 15:54:17 +02:00
Theis Mejnertsen
aca602f2d0 fs: zms: add input validation of fs pointer for api
Add checks on the fs pointer passed through the api before using to
avoid causing an exception

Signed-off-by: Theis Mejnertsen <theismejnertsen@gmail.com>
2025-09-02 15:54:17 +02:00
Theis Mejnertsen
4e4482205f fs: zms: make zms_active_sector_free_space return type signed
zms_active_sector_free_space is documented to return -EACCES on fs not
mounted error but currently returns an usigned type size_t. This fixes
that by changing the return value into a ssize_t

Signed-off-by: Theis Mejnertsen <theismejnertsen@gmail.com>
2025-09-02 15:54:17 +02:00
Fabrice DJIATSA
7ff93d7454 scripts: twister: pylib: not needed board id with BOOT-SERIAL mode
STM32CubeProgrammer does not support flashing in BOOT-SERIAL mode
using the device's serial number.

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2025-09-02 15:54:07 +02:00
Francois Ramu
c965767203 samples: drivers: spi flash testing with stm32 in memmapped mode
Add a testcase to execute the samples/drivers/spi_flash on
stm32 disco kits where the external flash is accessible
in memory mapped mode : CONFIG_STM32_MEMMAP=y.
In this testcase condition, the DMA transfer is not used but memcopy.
limit to "st,stm32-Xspi-nor" compatible only.

Signed-off-by: Francois Ramu <francois.ramu@st.com>
2025-09-02 15:54:01 +02:00
Alberto Escolar Piedras
a1466cfc60 sys: timeutil: Move and rename K_TICKS macros
These macros depend on time.h (which is not included in clock.h)
and are not really kernel related, but translation from the kernel
tick representation into time_spec values.
Let's place them in timeutils with their related macros/functions.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-09-02 15:53:54 +02:00
Alberto Escolar Piedras
551a7abbc5 sys: timeutil & test: Multiple fixes
* Fixes in code and test so it works with any expected time_t size.
* Fix test_timespec_normalize so it also tests the output of
  timespec_normalize(), fixing some incorrect expected values
  accordingly.
* Test: Do not force a C library in the integration platform
  and do not filter by libC as it is not necessary anymore.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-09-02 15:53:54 +02:00
Chris Friedt
f4936880a8 Revert "tests/lib/timespec_util: Skip two tests by now"
This reverts commit 8f092623ae.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-09-02 15:53:54 +02:00
Chris Friedt
4ff059395b sys: timeutil: compute the remainder in timespec to timeout conversion
Since it's possible that rounding up might not always be the right thing
to do in every situation, in order to allow the application to make more
informed decisions, we created a modified timespec_to_timeout() that also
returns the remainder (or difference) between the requested time to
convert and resulting k_timeout_t. The difference is expressed as a
timespec object.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-09-02 15:53:54 +02:00
Chris Friedt
fd41e08f4e tests: lib: timespec_util: elaborate timespec to k_timeout_t conversion
Elaborate on testing for functions that convert between timespec and
k_timeout_t.

We explicitly add tests to verify functionality in the regions of
interest, verify the semantic equivalence of specific time points.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-09-02 15:53:54 +02:00
Chris Friedt
4a72b590c6 sys: timeutil: ensure safety of timespec conversion routines
Originally, the timespec_to_timeout() and timespec_from_timeout() tests
assumed that tv_sec and tv_nsec values divided evenly with the number of
ticks per second (CONFIG_SYS_CLOCK_TICKS_PER_SEC). However, those
assumptions broke down when testing with 32768 ticks/s .

Upon further investigation, there were additional corner cases
discovered that were not handled in an ideal or safe way.

Part of this fix involved identifying several "domains" and special
values that have semantic meaning that must be handled particularly
carefully.

Additional hidden-API constants were made to simplify the solution.

K_TICK_MIN (1)
K_TICK_MAX (UINT32_MAX-1 in 32-bit, INT64_MAX in 64-bit)

K_TIMESPEC_NO_WAIT (like K_NO_WAIT)
K_TIMESPEC_FOREVER (like K_FOREVER)

1. Converting a negative k_timeout_t

These only exist in 64-bit representation and actually encode absolute
timepoints via ticks. Since the stated purpose of the conversion
functions is to convert between durations, we must reject absolute
time points in timespec_from_timeout().

2. Converting a negative timespec

We assume that this duration means a timeout has already expired, and
round these up to K_NO_WAIT in timespec_to_timeout().

3. Due to the larger numeric space in the timespec representation,
the reverse mapping of timespec to k_timeout_t is "fuzzy". However,
K_NO_WAIT (K_TIMESPEC_NO_WAIT) and K_FOREVER (K_TIMESPEC_FOREVER) must
remain semantically equivalent. The previous implementation also held this
to be true, but the test cases are a bit clearer about it now.

4. Also, due to the larger numeric space in timespec representation,
there was a special requirement to round up to the nearest tick
boundary for any timespec in the strictly exclusive range
(K_TIMESPEC_NO_WAIT, K_TIMESPEC_MAX). We must round up, since
a) rounding down to K_NO_WAIT is most certainly not representative
   of a non-zero finite duration delay
b) the kernel operates on tick boundaries

5. Above the K_TIMESPEC_MAX boundary, which is the highest possible
timespec that can be represented by a tick, and specifically in the
64-bit timeout representation, there is a domain that cannot be
rounded up to K_TIMESPEC_FOREVER and should always be rounded down to
K_TIMESPEC_MAX.

This is to ensure that finite durations remain finite (even if
they are beyond the heat death of the universe).

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-09-02 15:53:54 +02:00
Chris Friedt
f68af2d4c7 sys: clock: additional constants and macros for timespec conversion
Define additional constants and macros for converting between timespec
objects and k_timeout_t.

There are four semantically important durations identified with new
constants identified via '.

1. K_NO_WAIT / K_TIMESPEC_NO_WAIT'
  *  duration of zero

2. K_TICK_MIN' / K_TIMESPEC_MIN'
  * minimum number of ticks strictly greater than K_NO_WAIT

3. K_TICK_MAX' / K_TIMESPEC_MAX'
  * maximum number of ticks strictly and semantically less than K_FOREVER

4. K_FOREVER / K_TIMESPEC_FOREVER'
  * the familiar non-expiring number of ticks (i.e. infinity)

With these definitions, there are 3 meaningful regions for conversion
between timespec and k_timeout_t representation:

1. < K_TIMESPEC_NO_WAIT (i.e. a negative timespec)
  * should be rounded up to K_TIMESPEC_NO_WAIT
  * < K_NO_WAIT in ticks is an absolute time point in 64-bit
    representation should no be permitted in the affected conversion
    routines, as they are explicitly  for converting time durations rather
    than absolute time points.

2. K_TIMESPEC_NO_WAIT < x < K_TIMESPEC_MAX
  * should be rounded-up to the next tick boundary
  * must be represented as the minimal non-zero duration in ticks

3. K_TIMESPEC_MAX <= x < K_TIMESPEC_FOREVER
  * must be represented as the maximum expiring duration in ticks
  * should be rounded-down to K_TIMESPEC_MAX

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-09-02 15:53:54 +02:00
Luc BEAUFILS
f743822acc dts: arm: stm32mp2_m33.dtsi: add iwdg4 watchdog node
This is the independent watchdog for the non-secure world of M33 core.

Signed-off-by: Luc BEAUFILS <luc.beaufils@savoirfairelinux.com>
2025-09-02 15:53:41 +02:00
Luc BEAUFILS
b30d291030 dt-bindings: stm32mp2_clock: add iwdg4 clock
Add the IWDG4 clock definition to the STM32MP2 clock bindings.

Signed-off-by: Luc BEAUFILS <luc.beaufils@savoirfairelinux.com>
2025-09-02 15:53:41 +02:00
Luc BEAUFILS
d31f0138ad drivers: wdt_iwdg_stm32.c: freeze watchdog in debug mode for mp2x SoCs
The IWDG4 is on the APB3 bus on STM32MP2x SoCs. When the system is
in debug mode, the watchdog should be frozen to prevent it from
expiring and resetting the system during debugging sessions.

Signed-off-by: Luc BEAUFILS <luc.beaufils@savoirfairelinux.com>
2025-09-02 15:53:41 +02:00
Luc BEAUFILS
df4ed5e281 clock_control: clock_stm32_ll_mp2: add wwdg1 clock support
WWDG1 clock = ((MCU clock / LSMCU div) /APB3 prescaler)

Signed-off-by: Luc BEAUFILS <luc.beaufils@savoirfairelinux.com>
2025-09-02 15:53:41 +02:00
Luc BEAUFILS
dd86d70923 dts: arm: stm32mp2_m33: add wwdg1 node
Add the wwdg1 node, which is the wwdg for non-secure world.

Signed-off-by: Luc BEAUFILS <luc.beaufils@savoirfairelinux.com>
2025-09-02 15:53:41 +02:00
Luc BEAUFILS
d67bb71435 dt-bindings: stm32mp2_clock: add wwdg1 clock
Add clock binding for WWDG1 peripheral in STM32MP2 series.

Signed-off-by: Luc BEAUFILS <luc.beaufils@savoirfairelinux.com>
2025-09-02 15:53:41 +02:00
Luc BEAUFILS
43b63b13e6 drivers: wdt_wwdg_stm32: freeze watchdog in debug mode for mp2x SoCs
Like the H7x series, the MP2x series has a WWDG1 peripheral in the APB3
bus. The MP2 has the same LL function to freeze the watchdog in debug
mode.

Signed-off-by: Luc BEAUFILS <luc.beaufils@savoirfairelinux.com>
2025-09-02 15:53:41 +02:00
Tim Lin
d3d334c584 drivers/bbram: Enable bbram driver for it51xxx series
The BBRAM driver of it51xxx is compatible with it8xxx2.

Signed-off-by: Tim Lin <tim2.lin@ite.corp-partner.google.com>
2025-09-02 12:33:48 +02:00
cyliang tw
16f2b2fc1c boards: nuvoton: add support for numaker m5531
Add new development board numaker_m5531 for m5531h2l.

Signed-off-by: cyliang tw <cyliang@nuvoton.com>
2025-09-02 12:33:43 +02:00
cyliang tw
f33104e014 dts: arm: nuvoton: add support for m5531h2l
Add m5531h2l.dtsi to support chip m5531h2l of m55m1x SoC series.

Signed-off-by: cyliang tw <cyliang@nuvoton.com>
2025-09-02 12:33:43 +02:00
Emil Gydesen
600010cf5f Bluetooth: BAP: Switch to new USB stack for BAP shell
Modify the BAP shell to use the new USB stack, as the current
one used is now deprecated.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-09-02 12:33:11 +02:00
Qiankun Li
287d3a142c samples: net: wifi: Add apsta_mode configurations for rw612.
Add more apsta_mode configurations for frdm_rw612
and rd_rw612_bga.

Add overlay file to set apsta_mode configurations.

Signed-off-by: Qiankun Li <qiankun.li@nxp.com>
2025-09-02 12:33:01 +02:00
Qiankun Li
433adcff3d samples: net: wifi: Enable apsta_mode macros in *.conf file.
Update *.conf to enable apsta_mode macros
without impacting origin boards support.

Signed-off-by: Qiankun Li <qiankun.li@nxp.com>
2025-09-02 12:33:01 +02:00
Qiankun Li
a4000c60a9 samples: net: wifi: Add new Kconfig for apsta_mode
Introduce a dedicated Kconfig option for apsta_mode example to
allow more flexible configuration in the application layer.
This change helps make apsta_mode more generic and easier to
integrate across different vendor platforms.

Add compile-time assertions for the following macros:
CONFIG_WIFI_SAMPLE_AP_SSID
CONFIG_WIFI_SAMPLE_SSID
CONFIG_WIFI_SAMPLE_AP_IP_ADDRESS
CONFIG_WIFI_SAMPLE_AP_NETMASK

Default to empty string ("") if the following
two macros are not defined:
CONFIG_WIFI_SAMPLE_AP_PSK
CONFIG_WIFI_SAMPLE_PSK

Signed-off-by: Qiankun Li <qiankun.li@nxp.com>
2025-09-02 12:33:01 +02:00
Qiankun Li
e045e397e1 drivers: wifi: nxp: Set default bandwidth for softap
When params->bandwidth is 0, set it
as a default value(WIFI_FREQ_BANDWIDTH_20MHZ).

Signed-off-by: Qiankun Li <qiankun.li@nxp.com>
2025-09-02 12:33:01 +02:00
Qiankun Li
e0b65d2908 samples: net: wifi: Add apsta_mode support for rw612 boards.
Add conf files for frm_rw612 and rd_rw612_bga
to support apsta_mode example.

Signed-off-by: Qiankun Li <qiankun.li@nxp.com>
2025-09-02 12:33:01 +02:00
Aksel Skauge Mellbye
aec461634f drivers: gpio: silabs: Support EM4 wakeup interrupts
EM4 wakeup interrupts are dedicated interrupts tied to specific
pins that enable wakeup from EM4 through reset. Add support
for using these interrupts instead of the regular interrupts when
the GPIO_INT_TRIG_WAKE flag is set.

Since it's not possible to tell what pin is associated with what
EM4WU interrupt at runtime, the driver must store a mapping table
sourced from device tree.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-09-02 11:10:33 +02:00
Aksel Skauge Mellbye
962bdefd86 dts: arm: silabs: Add EM4 wakeup pins and power state
Add EM4 wakeup capable pin mapping to GPIO port node. Pins
capable of EM4 wakeup have dedicated interrupt flags.

Add EM4 as a soft-off power state that is disabled by default.
Marking it as disabled allows users to enter it with
`pm_state_force()`, while preventing the power management
subsystem from selecting the state automatically.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-09-02 11:10:33 +02:00
Emil Gydesen
83ac15c95b doc: releases: Add entry for bt_cap_initiator_broadcast_foreach_stream
Add entry for the new function bt_cap_initiator_broadcast_foreach_stream.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-09-02 11:10:22 +02:00
Emil Gydesen
4059d5b6a7 Bluetooth: CAP: Implement bt_cap_initiator_broadcast_foreach_stream
Implement the function bt_cap_initiator_broadcast_foreach_stream that
allows users to iterate on all BAP streams in a BAP broadcast source.
This can be used to easily get references to other broadcast streams in
the same group.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-09-02 11:10:22 +02:00
Pavel Vasilyev
427cf0da6a bluetooth: mesh: pb_adv: check SegN in Transaction Continuation PDU
Check that SegN is not 0. SegN = 0 is invalid as the first segment is
sent in Transaction Start PDU.

Signed-off-by: Pavel Vasilyev <pavel.vasilyev@nordicsemi.no>
2025-09-02 11:09:59 +02:00
Muzaffar Ahmed
d94b2fd4e4 drivers: wifi: siwx91x: Add support for definitive MFP config
Replaced the MFP config logic with dedicated getter and setter APIs

Signed-off-by: Muzaffar Ahmed <muzaffar.ahmed@silabs.com>
2025-09-02 11:09:39 +02:00
Francois Ramu
e5620e07c9 drivers: flash: stm32 xspi flash read with memcopy when executing
When the application is executed in external flash, the read operation
cannot be in indirect mode but with memcopy.
Note that writing or erasing the external flash being executed
is not possible during the execution.

Signed-off-by: Francois Ramu <francois.ramu@st.com>
2025-09-02 11:09:29 +02:00
Anas Nashif
232db11f0d twister: tests: fix test output parsing
Fix test output parsing and update to what twister produces.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-09-02 10:00:24 +02:00
Anas Nashif
8d0a6b59c6 twister: do not use twister internals for reason field
Do not use twister internals for reason field.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-09-02 10:00:24 +02:00
Anas Nashif
a6277ddaef twister: remove stray debug message
Remove leftover debug message.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-09-02 10:00:24 +02:00
Marcin Niestroj
8f25922b6c boards: other: convert to ARDUINO_HEADER_R3_* macro
Use ARDUINO_HEADER_R3_* macros, as those are much more readable and less
error prone.

Signed-off-by: Marcin Niestroj <m.niestroj@emb.dev>
2025-09-02 10:00:13 +02:00
Marcin Niestroj
9333d7a118 boards: panasonic: convert to ARDUINO_HEADER_R3_* macro
Use ARDUINO_HEADER_R3_* macros, as those are much more readable and less
error prone.

Signed-off-by: Marcin Niestroj <m.niestroj@emb.dev>
2025-09-02 10:00:13 +02:00
Marcin Niestroj
68d76cea7b boards: nordic: convert to ARDUINO_HEADER_R3_* macro
Use ARDUINO_HEADER_R3_* macros, as those are much more readable and less
error prone.

Signed-off-by: Marcin Niestroj <m.niestroj@emb.dev>
2025-09-02 10:00:13 +02:00
Marcin Niestroj
7161062f99 boards: nxp: convert to ARDUINO_HEADER_R3_* macro
Use ARDUINO_HEADER_R3_* macros, as those are much more readable and less
error prone.

Signed-off-by: Marcin Niestroj <m.niestroj@emb.dev>
2025-09-02 10:00:13 +02:00
Marcin Niestroj
0b3d003795 boards: u-blox: convert to ARDUINO_HEADER_R3_* macro
Use ARDUINO_HEADER_R3_* macros, as those are much more readable and less
error prone.

Signed-off-by: Marcin Niestroj <m.niestroj@emb.dev>
2025-09-02 10:00:13 +02:00
Marcin Niestroj
f464d29843 boards: st: convert to ARDUINO_HEADER_R3_* macro
Use ARDUINO_HEADER_R3_* macros, as those are much more readable and less
error prone.

Signed-off-by: Marcin Niestroj <m.niestroj@emb.dev>
2025-09-02 10:00:13 +02:00
Tomasz Bursztyka
9663b17dba drivers: clock_control: Fix setting hfxt oscillator in mspm0 clock
Trival fix, as there is no mspm0_hfclk_cfg (yet anyway?).

Signed-off-by: Tomasz Bursztyka <tobu@bang-olufsen.dk>
2025-09-02 10:00:05 +02:00
Tomasz Bursztyka
8454ff70f2 drivers: counter: Fix mspm0 alarm cancellation
Cancelling the alarm needs to reset the callback to NULL, else setting
an alarm subsequently will never work.

chan_id parameter being unused, using ARG_UNUSED() relevantly then.

Signed-off-by: Tomasz Bursztyka <tobu@bang-olufsen.dk>
2025-09-02 09:59:58 +02:00
Tomasz Bursztyka
3d9fd26286 dts: mspm0g: Add timg 8/9/14 counter nodes for x51x series
TIMG8/9/14 added.

Signed-off-by: Tomasz Bursztyka <tobu@bang-olufsen.dk>
2025-09-02 09:59:49 +02:00
Tomasz Bursztyka
5ca7ed3893 dts: mspm0g: Add timg 6/7/12 counter nodes
TIMG12 having a 32bits resolution

Signed-off-by: Dimitris Karnikis <dika@bang-olufsen.dk>
Signed-off-by: Tomasz Bursztyka <tobu@bang-olufsen.dk>
2025-09-02 09:59:49 +02:00
Tomasz Bursztyka
b81741519d dts: bindings: Fixing description of ti,msmpm0-pwm binding
Small typo.

Signed-off-by: Tomasz Bursztyka <tobu@bang-olufsen.dk>
2025-09-02 09:59:49 +02:00
Tomasz Bursztyka
5e3f1611e1 dts: mspm0: Fix timer/counter/pwm names to enforce uniqueness
There are 14 TIMG and 2 TIMA, all which can be either a counter or a pwm,
so let's fix the names to avoid ambiguity and enforce uniqueness.

Rule applied here being:

tim<g/a><n>: tim<g/a><n>@<address> {
        ...

        counter<g/a><n>: counter<g/a><n> {
                ...
        };

        pwm<g/a><n>: pwm<g/a><n> {
                ...
        };
};

It will be much easier then once get the 16 timer nodes included.

Signed-off-by: Tomasz Bursztyka <tobu@bang-olufsen.dk>
2025-09-02 09:59:49 +02:00
Emil Gydesen
27b2d17ad1 samples: Bluetooth: BAP: Unicast Server: Refactor TX
Refactors the TX of the unicast server. This commit effectively
copies the TX approach of the unicast client sample, to make
the sample more similar.
This changes the TX to be based on the number of complete
packets event (which results in free'ing the buffer), instead of
a timer. This completely ensures that we do not skip any sequence
numbers which may be rejected by the controller.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-09-02 09:59:41 +02:00
Elmo Lan
79d7ce61d2 driver: crypto: fix timing discrepancies
Use a temporary variable to store and compare the reference time
instead of calling the time function multiple times,
which may lead to slight mismatches in comparison due to timing drift.

Signed-off-by: Elmo Lan <elmo_lan@realtek.com>
2025-09-02 07:56:56 +02:00
Ederson de Souza
f2512a1da0 doc/releases: Notes about Intel CET and Hardware Shadow Stack
Notes about new public macros and Kconfigs related to Intel CET and
Hardware shadow stack.

Signed-off-by: Ederson de Souza <ederson.desouza@intel.com>
2025-09-02 07:56:48 +02:00
Ederson de Souza
b6a54ea3d4 doc/security: Mention control-flow integrity mechanisms
A simple explanation of control-flow integrity on Zephyr and Intel CET.

Signed-off-by: Ederson de Souza <ederson.desouza@intel.com>
2025-09-02 07:56:48 +02:00
Ederson de Souza
d115489910 kernel/thread_stack: Document hardware shadow stack macros
While these are not expected to be used by applications in normal
scenarios, they are still public and document them can be helpful in
non-normal scenarios.

Signed-off-by: Ederson de Souza <ederson.desouza@intel.com>
2025-09-02 07:56:48 +02:00
Ederson de Souza
eb6da2ec20 tests/arch/x86: Add tests for shadow stack
Ensure they behave as expected.

Signed-off-by: Ederson de Souza <ederson.desouza@intel.com>
2025-09-02 07:56:48 +02:00
Ederson de Souza
948c884054 tests/kernel/lifo/lifo_api: Don't reuse name for different thread stacks
A limitation on current HW shadow stack implementation for x86 is that
more than one thread stack can't share the same variable name, even if
they are static. To avoid skipping useful tests, for now, while this
limitation holds, change the name of the stack variable.

Signed-off-by: Ederson de Souza <ederson.desouza@intel.com>
2025-09-02 07:56:48 +02:00
Ederson de Souza
53c7e9a3f8 tests/kernel/fifo/fifo_api: Don't reuse name for different thread stacks
A limitation on current HW shadow stack implementation for x86 is that
more than one thread stack can't share the same variable name, even if
they are static. To avoid skipping useful tests, for now, while this
limitation holds, change the name of the stack variable.

Signed-off-by: Ederson de Souza <ederson.desouza@intel.com>
2025-09-02 07:56:48 +02:00
Ederson de Souza
2d94c5d7aa arch/x86: Support for automatic shadow stacks
- No more need for special IRQ shadow stacks - just reuse the one
   created for z_interrupt_stacks;
   - Add the linker sections for the pairs of stack/shadow stack;
   - Support shadow stack arrays.

Last item was a bit challenging: shadow stacks need to be initialised
before use, and this is done statically for normal shadow stacks. To
initialise the shadow stacks in the array, one needs how many entries it
has. While a simple approach would use `LISTIFY` to them do the
initialization on all entries, that is not possible as many stack arrays
are created using expressions instead of literals, such as
`CONFIG_MP_MAX_NUM_CPUS - 1`, which won't work with `LISTIFY`.

Instead, this patch uses a script, `gen_static_shstk_array.py` that
gathers all needed information and patches the ELF to initialize the
stack arrays. Note that this needs to be done before any other operation
on the ELF file that creates new representations, such as the .bin
output.

Signed-off-by: Ederson de Souza <ederson.desouza@intel.com>
2025-09-02 07:56:48 +02:00
Ederson de Souza
cdaca274a5 kernel: Automatically set up HW shadow stack for thread stacks
This patch modifies thread stack macros (such as K_KERNEL_STACK_DECLARE
or K_KERNEL_STACK_ARRAY_DECLARE) to also create a HW shadow stack (when
CONFIG_HW_SHADOW_STACK=y), as well as define a pairing between the
thread stack (or thread stack array) and the shadow stack (or shadow
stack array).

This pairing, which currently is simply an array of pairs (stack,
shadow_stack) is searched during thread setup to find the corresponding
shadow stack and attach it to the thread. If linear search on this array
proves to be a performance issue, the actual structure can be revisited.

To define the size of the shadow stack for a given stack, the stack size
is used. A new Kconfig, CONFIG_HW_SHADOW_STACK_PERCENTAGE_SIZE is used
to define how big the shadow stack is compared to the stack. Note that
this size is in *addition* to the stack size. To avoid some shadow
stacks becoming too small, CONFIG_HW_SHADOW_STACK_MIN_SIZE is used to
define a minimum size. Note that after this size is defined, platform
restrictions on the size of the shadow stack are still applied.

Signed-off-by: Ederson de Souza <ederson.desouza@intel.com>
2025-09-02 07:56:48 +02:00
Ederson de Souza
08ec5e89fc cmake: New list for post build commands that should run early
New cmake list, `post_build_patch_elf_commands`, will be prepended to
`post_build_commands` one, effectively making these commands to run just
after the ELF is created. It's particularly useful for operations that
patch the ELF generated, before other representations of it (such as
.bin) are created.

Signed-off-by: Ederson de Souza <ederson.desouza@intel.com>
2025-09-02 07:56:48 +02:00
Ederson de Souza
d3d82a1159 tests/kernel/fatal/exception: Skip stack sentinel test with shadow stack
Test could trip shadow stack protections instead of normal stack
sentinel, thus requiring special handling for this case. Just avoid this
test instead, if CONFIG_HW_SHADOW_STACK=y.

Signed-off-by: Ederson de Souza <ederson.desouza@intel.com>
2025-09-02 07:56:48 +02:00
Ederson de Souza
10d6ef0ea5 kernel: Option to allow shadow stack to be reused
It seems that, at least on tests, it's common to call k_thread_create()
on a thread multiple times. This trips a check for the CET shadow stack
- namely, set a shadow stack on a thread which already has a shadow
stack.

This patch adds a Kconfig option to allow that, iff the base address and
size of the new shadow stack are the same as before. This will trigger a
reset of the shadow stack, so it can be reused.

It may be the case that this behaviour (reusing threads) is more common
than only for tests, in which case it could make sense to change the
default - in this patch, is only true if ZTEST.

Even if being enabled by default becomes the reality, it would still
make sense to keep this option - more conscious apps could avoid the
need for the shadow stack reset code altogether.

Signed-off-by: Ederson de Souza <ederson.desouza@intel.com>
2025-09-02 07:56:48 +02:00
Ederson de Souza
6a76424177 arch/x86: Use Zephyr HW shadow stack arch interface
So that kernel created threads can use shadow stacks. Note that
CONFIG_X86_CET_SHADOW_STACK is abandoned in favour of
CONFIG_HW_SHADOW_STACK.

This means change some types, functions and macro throughout shadow
stack code.

Signed-off-by: Ederson de Souza <ederson.desouza@intel.com>
2025-09-02 07:56:48 +02:00
Ederson de Souza
016eaf2959 kernel: Add interface for hardware shadow stack usage
In order to allow kernel created threads (such as main and idle threads)
to make use of hardware shadow stack implementation, add an interface
for them.

This patch basically provides an infra that architectures need to
implement to provide hardware shadow stack.

Also, main and idle threads are updated to make use of this interface
(if hardware shadow stacks are enabled).

Signed-off-by: Ederson de Souza <ederson.desouza@intel.com>
2025-09-02 07:56:48 +02:00
Ederson de Souza
5df48fd5d9 arch/x86: Allow SoC to run preparatory steps on shadow stack
Some SoCs may need to do some preparatory work before changing the
current shadow stack pointer (and thus, currently used shadow stack).
This patch adds a way for that, shielded by a Kconfig
(CONFIG_X86_CET_SOC_PREPARE_SHADOW_STACK_SWITCH).

As currently only 32 bit SoC may use this, support is only added to the
32 bit code.

Signed-off-by: Ederson de Souza <ederson.desouza@intel.com>
2025-09-02 07:56:48 +02:00
Ederson de Souza
ad93c6a1ac arch/x86: Support shadow stack on IRQ on ia32
An IRQ shadow stack is created to be used by IRQ.

Signed-off-by: Ederson de Souza <ederson.desouza@intel.com>
2025-09-02 07:56:48 +02:00
Ederson de Souza
82de622d23 arch/x86: Support shadow stack on ia32
Most notable difference on base support is the need to keep the shadow
stack tokens, which are 8 bytes, 8 bytes aligned. Some helper macros are
used for that.

Also, an `ssp` entry is added to the task state segment (TSS).

Signed-off-by: Ederson de Souza <ederson.desouza@intel.com>
2025-09-02 07:56:48 +02:00
Ederson de Souza
86b401075a arch/x86: Verify shadow stack pointers
Currently, it's permitted to have threads that don't have a shadow
stack. When those are run, shadow stack is disabled on the CPU. To
identify those, the thread `shstk_addr` member is checked.

This patch adds an optional check, behind
CONFIG_X86_CET_VERIFY_KERNEL_SHADOW_STACK, that checks if an outgoing
thread has this pointer NULL with shadow stack currently enabled on
the CPU, meaning a 1) bug or 2) some attempt to tamper with the pointer.

If the check fails, k_panic() is called. Note that this verification is
not enough to guarantee `shstk_addr` can't be tampered with. For
instance, it only works on a running thread. Ideally, all threads should
be shadow stack capable, so a missing `shstk_addr` would simply be a
hard fault, but that is still to come.

Signed-off-by: Ederson de Souza <ederson.desouza@intel.com>
2025-09-02 07:56:48 +02:00
Ederson de Souza
3c9bb1d1ce arch/x86: Support shadow stack on exception handling
Main peculiarity is that if an exception results in current thread being
aborted, we need to clear the busy bit on the shadow stack on the swap
to the new thread, otherwise future exceptions will fail when trying to
use a busy shadow stack.

Signed-off-by: Ederson de Souza <ederson.desouza@intel.com>
2025-09-02 07:56:48 +02:00
Ederson de Souza
01d6b0cf48 arch/x86: Support shadow stack on nested IRQs
Nested interrupts are supported, on the normal stack, by creating a
stack whose size is a multiple of CONFIG_ISR_DEPTH, and updating the
pointer used by Interrupt Stack Table (IST) to point to a new base,
inside the "oversized" stack.

The same approach is used for the shadow stack: shadow stack size is
multiplied by CONFIG_ISR_DEPTH, and the pointer to the stack on the
shadow stack pointer table is update to point to the next base.

Signed-off-by: Ederson de Souza <ederson.desouza@intel.com>
2025-09-02 07:56:48 +02:00
Ederson de Souza
246cd228f2 arch/x86: Support shadow stack on IRQ
For IRQs, shadow stack support a mechanism similar to the Interrupt
Stack Table (IST) for x86_64: a table, indexed by the IST index, pointing
to a 64 byte table in memory containing the address of seven shadow stacks
to be used by the interrupt service routines.

This patch adds support to this mechanism. It is worth noting that, as
Zephyr may exit from an interrupt by going to a different thread than
the one that was interrupted, some housekeeping is done to ensure that
the necessary shadow stack tokens are on the right shadow stack before
return from the interrupt.

Signed-off-by: Ederson de Souza <ederson.desouza@intel.com>
2025-09-02 07:56:48 +02:00
Ederson de Souza
436078968a arch/x86: Shadow Stack support
Shadow Stack is one of the capabilities provided by Intel Control-flow
Enforcement Technology (CET), aimed at defending against Return Oriented
Programming.

This patch enables it for x86_64 (32-bit support coming in future
patches):

    - Add relevant Kconfigs;
    - Shadow stacks should live in specially defined memory pages, so
      gen_mmu.py was updated to allow that;
    - A new macro, Z_X86_SHADOW_STACK_DEFINE, added to define the area
      for a shadow stack;
    - A new function, z_x86_thread_attach_shadow_stack(), added to
      attach a shadow stack to a never started thread;
    - locore.S changed to enable/disable shadow stack when a thread
      using it comes in/out of execution.

As not all threads are currently shadow stack capable, threads that do
not use it will still run with shadow stack disabled. Ideally, at some
point in the future, all threads would use the shadow stack, so no need
to disable it at all.

Signed-off-by: Ederson de Souza <ederson.desouza@intel.com>
2025-09-02 07:56:48 +02:00
Ederson de Souza
49cb4ddbe2 arch/x86: Extend IBT support to x86_64
Add code to enable it and sprinkle `endbr64` on asm code, where needed.
Namely, IRQs and excepts entrypoints.

Finally, tests added to ensure IBT behaves sanely.

Signed-off-by: Ederson de Souza <ederson.desouza@intel.com>
2025-09-02 07:56:48 +02:00
Ederson de Souza
1c7dc6930a arch/x86: Indirect Branch Tracking support
Indirect Branch Tracking (IBT) is one of the capabilities provided by
Intel Control-flow Enforcement Technology (CET), aimed at defending
against Jump/Call Oriented Programming.

This patch enables it for x86 (32-bit, 64-bit support coming in future
patches):

    - Add relevant Kconfigs (everything is behind X86_CET);
    - Code to enable it;
    - Enable compiler flags to enable it;
    - Add `endbr32` instructions to asm code, where needed.

Points in the code where an indirect branch is expected to land need
special instructions that tell the CPU they are valid indirect branch
targets. Those are added by the compiler, so toolchain support is
necessary. Note that any code added to the final ELF also need those
markers, such as libc or libgcc.

Finally, tests added to ensure IBT behaves sanely.

Signed-off-by: Ederson de Souza <ederson.desouza@intel.com>
2025-09-02 07:56:48 +02:00
Daniel Leung
d36813a27c x86: add exception handling for control protection exception
This adds exception handling of control protection exception
in fatal code.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
Signed-off-by: Ederson de Souza <ederson.desouza@intel.com>
2025-09-02 07:56:48 +02:00
Pieter De Gendt
294f7e52c5 linker: Split nocache memory sections into loadable and non-loadable
Commit f9168ae464 made all non-cached memory
loadable by default.

However as nocache memory is typically used for reserving larger buffers to
be shared between peripherals, this comes at fairly large cost towards ROM
usage.

This commit creates two distinct sections for both loadable and
non-loadable nocache memory sections.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-09-01 23:28:28 +02:00
Manikanta Guntupalli
156e6488db drivers: i3c: Correct initialization order
The current initialization sequence enables the I3C controller before
setting the controller information, which can result in improper setup
and cause the controller to not function as expected.

Fix the initialization order by ensuring that the controller information
is set prior to enabling the controller.

Signed-off-by: Manikanta Guntupalli <manikanta.guntupalli@amd.com>
Signed-off-by: Balanakakamal V <balanakakamal.v@amd.com>
2025-09-01 23:28:09 +02:00
Iliar Rabet
9ac88999eb util: tests function utf8_count_chars
adds 3 test cases for function utf8_count_chars

Signed-off-by: Iliar Rabet <iliar.rabet@gmail.com>
2025-09-01 23:27:44 +02:00
Iliar Rabet
4a4a46c26f util: adds the utf8_count_chars function
The function utf8_count_chars counts the number of UTF-encoded characters

Signed-off-by: Iliar Rabet <iliar.rabet@gmail.com>
2025-09-01 23:27:44 +02:00
Pieter De Gendt
8993a5ed10 drivers: flash: shell: Fix printing partitions without labels
Commit df0f74d491 added a shell command to be
able to print out the partitions. However the label property is optional.

Print both the name and label if available.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-09-01 23:27:28 +02:00
Chun-Chieh Li
cfa837c6dd drivers: usb: udc: refine log message in udc_common.c
This refines log message in udc_common.c, including:
1. Add address of allocated net_buf info into udc_ep_buf_alloc log so
   that net_buf create/destroy can be easily monitored with calls to
   udc_ep_buf_alloc and udc_buf_destroy.
2. Add ep info into udc_ep_buf_alloc log on failure.

Signed-off-by: Chun-Chieh Li <ccli8@nuvoton.com>
2025-09-01 23:27:19 +02:00
Erwan Gouriou
f0a585645d dts: arm: st: n6: Disable axisram3
Those memories should be disabled by default and enabled
at application level.

Incidentally, fix the way Kconfig symbol is enabled as
we should not parse status of ramcfg, but status of enabled
memory nodes.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2025-09-01 23:27:13 +02:00
Erwan Gouriou
7db506b8d0 dts: arm: st: n6: Add npu node and dts binding
Provide binding for `st,stm32-npu` compatible and node in SoC dtsi.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2025-09-01 23:27:13 +02:00
Erwan Gouriou
196f725fd2 soc: stm32n6: Add NPU driver
Provide Neural-ART driver for STM32N6.
This driver handles unit initialization (clock, rif).

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2025-09-01 23:27:13 +02:00
Gerson Fernando Budke
6bdd63fe93 drivers: serial: sam0: Fix rx ready
The uart_sam0_irg_rx_ready() function always returns true, even if
interrupt is disabled. This happens because the function do not
evaluate if the interrupt is enable of not. This fixes the issue
by adding the missing check.

Signed-off-by: Gerson Fernando Budke <nandojve@gmail.com>
2025-09-01 16:56:36 +01:00
Sebastian Bøe
aa2a439299 west: runners: nrf_common: Delete deprecated suit handling
Delete deprecated suit handling.

SUIT is no longer supported.

Signed-off-by: Sebastian Bøe <sebastian.boe@nordicsemi.no>
2025-09-01 16:56:02 +01:00
Iuliana Prodan
cd31d1da72 MAINTAINERS: Remove carlocaione from Open AMP maintainers
Remove carlocaione from the OpenAMP maintainers list
because he hasn't been active for a while.

Signed-off-by: Iuliana Prodan <iuliana.prodan@nxp.com>
2025-09-01 16:55:53 +01:00
Aksel Skauge Mellbye
9a8b6d9a38 include: zephyr: drivers: gpio: Make enum gpio_int_trig complete
The gpio_int_trig enum did not enumerate all possible combinations
of flags after the addition of the GPIO_INT_WAKEUP flag.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-09-01 16:41:10 +02:00
Aksel Skauge Mellbye
c29aa88f9e include: zephyr: drivers: gpio: Propagate GPIO_INT_WAKEUP flag
The GPIO_INT_WAKEUP flag is available in the binding header,
but was not propagated from dt_flags in the interrupt_configure_dt
function. Allow GPIOs to be declared as wakeup sources in dts
by propagating the flag.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-09-01 16:41:10 +02:00
Aksel Skauge Mellbye
a8cd0a3637 include: zephyr: dt-bindings: gpio: Fix flags mask
Since 45a3d31, the GPIO_INT_WAKEUP flag has been available in
the binding header. Update the mask to include it.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-09-01 16:41:10 +02:00
Emil Gydesen
90e5b7d658 Bluetooth: Shell: Only add broadcast audio val one place
Instead of add BT_UUID_BROADCAST_AUDIO_VAL for either BAP or
CAP, we now only do it one place (in BAP). This can now be done
since the default_source.broadcast_id was recently added.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-09-01 16:41:05 +02:00
Emil Gydesen
6fe1474225 Bluetooth: Audio: Shell: Store broadcast_id statically
Add a broadcast_id field in broadcast_source so that it can be
lookup later, which is useful for doing broadcast assitant
procedures on a local broadcast source.

The broadcast ID is now created at the same time as the
broadcast source(s), instead at the time of retriving
the advertising data.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-09-01 16:41:05 +02:00
Dmitrii Sharshakov
8433c491b2 build: uf2: set offset when building RAM images
Follow ROMABLE_REGION from include/.../arm/cortex_m/scripts/linker.ld

This enables UF2 images to be created for RAM-only apps on RP2350.

Signed-off-by: Dmitrii Sharshakov <d3dx12.xx@gmail.com>
2025-09-01 16:40:54 +02:00
Muzaffar Ahmed
c3595fdebe west.yml: Update hal_silabs revision
This commit updates the hal_silabs revision in west.yml

Signed-off-by: Muzaffar Ahmed <muzaffar.ahmed@silabs.com>
Signed-off-by: Arunmani Alagarsamy <arunmani.a@silabs.com>
2025-09-01 16:40:40 +02:00
Muzaffar Ahmed
42c065f9cc drivers: wifi: siwx91x: Add support for RTS Threshold
Implemented siwx91x_set_rts_threshold and siwx91x_get_rts_threshold

Signed-off-by: Muzaffar Ahmed <muzaffar.ahmed@silabs.com>
Signed-off-by: Arunmani Alagarsamy <arunmani.a@silabs.com>
2025-09-01 16:40:40 +02:00
Emil Gydesen
933816c887 tests: Bluetooth: Tester: CCP BSIM test
Adds BSIM testing of the CCP features of the BT Tester.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-09-01 16:39:46 +02:00
Immo Birnbaum
41716ff905 soc: renode: cortex_r8_virtual: overhaul MPU regions
Apply the same modifications made to the ZynqMP's memory
regions to the cortex_r8_virtual SoC which was mainlined
while the fixes for the ZynqMP were being developed
(minus the OCM mapping, as there's no indication that this
type of memory was considered).

The cortex_r8_virtual appears to be a stripped down copy
of the old qemu_cortex_r5 codebase, therefore, the duplicated
MPU regions have the same flaws as qemu_cortex_r5 or any
actual ZynqMP-based target for that matter.

Signed-off-by: Immo Birnbaum <mail@birnbaum.immo>
2025-09-01 16:39:37 +02:00
Immo Birnbaum
7f6ee56910 soc: xlnx: zynqmp: overhaul MPU regions
Overhaul the MPU region definitions that are being
configured when the MPU is set up:
- drop local attribute definitions in favor of those
  already provided in arm_mpu_v7m.h
- actually tie the RAM region to the device tree
- set up a (potentially overlapping) R/O region for
  .text and .rodata, which hasn't existed so far
- Consider XIP

Signed-off-by: Immo Birnbaum <mail@birnbaum.immo>
2025-09-01 16:39:37 +02:00
Immo Birnbaum
8e977215d3 arch: arm: cortex_a_r: update ROM region size calculation
update the directive that calculates the ROM region size
bit mask for the MPU setup.

Signed-off-by: Immo Birnbaum <mail@birnbaum.immo>
2025-09-01 16:39:37 +02:00
Immo Birnbaum
eff4ed0488 dts: arm: xilinx: zynqmp: remove sram0 declaration at SoC level
Remove the universal, unconditional declaration of the RAM area
at the SoC level, due to:

- the hardcoded base address 0 overlapping the exception vectors,
  the ATCM and the BTCM areas.
- the availability of the BTCM not being guaranteed unconditionally
  (config pin dependant)
- the possibility of having a 'black hole' between the ATCM and
  the BTCM depending on the operating mode of the R-cores cluster,
  which leads to a part of the text section being unavailable
- qemu not properly implementing the configuration-dependant
  behaviour of the ATCM and BTCM areas.

Signed-off-by: Immo Birnbaum <mail@birnbaum.immo>
2025-09-01 16:39:37 +02:00
Immo Birnbaum
099f0e2511 boards: qemu: cortex_r5: declare 64MB sram0 area at board level
Declare the sram0 area for this board to start at 0x4000000
and to be 64MB in size. The base address is the lowest possible
multiple of 64MB which doesn't have its base address at 0,
therefore preventing the mixed use of regular RAM and the
ATCM/BTCM and the possible issues of having a 'black hole'
between the ATCM and BTCM areas or the BTCM being completely
disabled.

Signed-off-by: Immo Birnbaum <mail@birnbaum.immo>
2025-09-01 16:39:37 +02:00
Immo Birnbaum
6ad1347a4e boards: qemu: cortex_r5: expand usable RAM area below 4G boundary
Expand the RAM area beginning behind the BTCM to allow the use
of a 64MB SRAM area starting at 0x4000000, which is the lowest
possible 64MB area with a non-zero start address that doesn't
overlap with the ATCM and BTCM memory areas.

Signed-off-by: Immo Birnbaum <mail@birnbaum.immo>
2025-09-01 16:39:37 +02:00
Immo Birnbaum
1e903675d9 boards: enclustra: mercury_xu: move unmodified sram0 from SoC to board DT
Move the unmodified sram0 memory area declaration to this board's
device tree due to its removal from the SoC device tree.

Signed-off-by: Immo Birnbaum <mail@birnbaum.immo>
2025-09-01 16:39:37 +02:00
Immo Birnbaum
30abc773fe boards: amd: kv260_r5: move unmodified sram0 from SoC to board DT
Move the unmodified sram0 memory area declaration to this board's
device tree due to its removal from the SoC device tree.

Signed-off-by: Immo Birnbaum <mail@birnbaum.immo>
2025-09-01 16:39:37 +02:00
Benjamin Cabé
6e1ff6a211 ci: workflows: doc: upload Doxygen coverage report to codecov.io
Upload Doxygen coverage report to codecov.io in cron-scheduled doc build

Fixes zephyrproject-rtos/zephyr#94708

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-01 09:18:46 -04:00
Ilya Tagunov
09a034e8ce toolchain: arcmwdt: override unsuitable default implementations
Provide toolchain-specific implementations for the new functions
added in d77b58a, because the default ones end up with build failures.

As the MWDT toolchain doesn't support different combinations of
compilers and linkers, there's no need to pass any linker properties
from the compiler, at least for the time being. Moreover, the default
implementation of compiler_set_linker_properties() uses the compiler
flag (--print-libgcc-file-name) that doesn't make any sense for MWDT.
Therefore, provide an empty implementation of the function.

The default implementation of toolchain_linker_add_compiler_options()
doesn't cause any issues for now, but it's still better to replace
it with the passthrough implementation borrowed from ld/lld.

Signed-off-by: Ilya Tagunov <Ilya.Tagunov@synopsys.com>
2025-09-01 14:01:46 +02:00
Shontal Biton
0ddd78528c tests: eeprom: Added support for xg28
Added support for xg28 in eeprom test.

Signed-off-by: Shontal Biton <shontal1005@gmail.com>
2025-09-01 14:01:41 +02:00
Shontal Biton
c7a6482d9c boards: silabs: Add support for Silabs EFR32ZG28 BRD4401C board
Add support for Silicon Labs BRD4401C (a.k.a xG28-RB4401C) Radio Board.

Signed-off-by: Shontal Biton <shontal1005@gmail.com>
2025-09-01 14:01:41 +02:00
Shontal Biton
799a3f9a4f soc: silabs: Add support for Silabs EFR32ZG28 SoC
Add support for Silicon Labs EFR32ZG28 SoC.

Signed-off-by: Shontal Biton <shontal1005@gmail.com>
2025-09-01 14:01:41 +02:00
Pavel Vasilyev
fe5b266ddb bluetooth: mesh: pb_adv: check TotalLength against adv buf length
Check that the buffer length of the received advertising data is less
than reported TotalLength in Transaction Start PDU.

Signed-off-by: Pavel Vasilyev <pavel.vasilyev@nordicsemi.no>
2025-09-01 07:44:57 -04:00
Jun Lin
0d68cc39ac dts: npcx: re-arrange the default interrupt priority
Because the EC host command with SHI/SPI backend is timing sensitive, it
required the CPU to response the SHI interrrupt as soon as possible.
This commit re-arranges the default interrupt priority by:
1. keep the SHI's interrupt priority to 1.
2. Decrease the priority of the other peripherals by 1.
   (i.e. increase the priority `value` by 1)

Signed-off-by: Jun Lin <CHLin56@nuvoton.com>
2025-09-01 07:44:23 -04:00
Abderrahmane JARMOUNI
86ad7b3481 boards: fanke: fk723m1_zgt6: fix Kconfig warning
Move Kconfig symbol setting to 'Kconfig.defconfig' file to fix
compliance check "defined without a type" warning.

Signed-off-by: Abderrahmane JARMOUNI <git@jarmouni.me>
2025-09-01 12:01:09 +02:00
Fin Maaß
d5c29cc1e2 dfu: mcuboot: return flash area id without intermediate var
return flash area id directly without intermediate var.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-09-01 12:01:01 +02:00
Muhammad Waleed Badar
7dbd60016c tests: ram_context_for_isr: Use Kconfig for IRQ config
Replace hardcoded platform-specific IRQ definitions with
Kconfig symbols TEST_IRQ_NUM and TEST_IRQ_PRIO.

Signed-off-by: Muhammad Waleed Badar <walid.badar@gmail.com>
2025-09-01 12:00:51 +02:00
Torsten Rasmussen
795445535d scripts: parse module.yml for dts bindings
Change BoardYml compliance check from using get_module_setting_root()
to load and parse module.yml directly.

get_module_setting_root cannot be used directly with module.yml.
Instead adjust the code so that the module.yml file is loaded locally
and the dts_root setting is extracted from the dictionary.

Signed-off-by: Torsten Rasmussen <Torsten.Rasmussen@nordicsemi.no>
2025-09-01 12:00:42 +02:00
Jamie McCrae
c5ac112506 doc: extensions: kconfig: Add support for sysbuild
Adds support for outputting details on sysbuild Kconfigs for use
with the documentation Kconfig lookup tool

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-09-01 12:00:33 +02:00
Aksel Skauge Mellbye
c31b9e971e tests: drivers: Add overlays for bg29_rb4420a
Add support for bg29_rb4420a in driver tests.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-09-01 09:32:24 +02:00
Aksel Skauge Mellbye
f2d1da6001 boards: silabs: bg29_rb4420a: Add BG29 WLCSP board
Add EFR32BG29 board with boost DCDC converter and WLCSP package.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-09-01 09:32:24 +02:00
Emil Dahl Juhl
fddd6efb82 dts: arm: st: n6: correct sai1_a address
When compiling, the following warning occurs:

Warning (simple_bus_reg): /soc/sai1@452005804: simple-bus unit address
format error, expected "52005804"

Looking at table 3 in the reference manual[1] for the stm32n6 it seems that
the sai1_a address simply had a typo, where a "4" was added in front of the
correct address.

Fix the typo.

[1] RM0486 Rev 2: https://www.st.com/resource/en/reference_manual/rm0486-stm32n647657xx-armbased-32bit-mcus-stmicroelectronics.pdf

Signed-off-by: Emil Dahl Juhl <emil@s16s.ai>
2025-09-01 09:32:16 +02:00
Marek Matej
8752465f41 drivers: flash: shell: add partition listing
Add command `flash partitions` to list all existing partitions.

Signed-off-by: Marek Matej <marek.matej@espressif.com>
2025-09-01 09:32:06 +02:00
Jonas Berg
0bc5f7d4db samples: Fix documentation formatting for pressure polling sample
The sample output is not rendered properly, as can be seen on
https://docs.zephyrproject.org/latest/samples/sensor/pressure_polling/README.html

Adjust the formatting so that the code block is rendered properly.
The text "## Default configuration" does not appear in the sample output.

Signed-off-by: Jonas Berg <jonas.s.t.berg@gmail.com>
2025-09-01 08:34:14 +02:00
The Nguyen
59eb0e41f0 boards: renesas: update SDRAM configuration on ek_ra8p1
Correct pin configuration for SDRAM controller
Correct SDRAM address multiplex shift configuration

Signed-off-by: The Nguyen <the.nguyen.yf@renesas.com>
2025-09-01 08:34:06 +02:00
The Nguyen
c092b4e4c3 boards: renesas: update SDRAM pin config for ek_ra8d1
Correct pin configuration for SDRAM on ek_ra8d1 board

Signed-off-by: The Nguyen <the.nguyen.yf@renesas.com>
2025-09-01 08:34:06 +02:00
James Wu
ed38ff2b2f modem: add macro MODEM_CHAT_MATCH_WILDCARD_DEFINE
Add a macro MODEM_CHAT_MATCH_WILDCARD_DEFINE, it's complementary to
MODEM_CHAT_MATCH_DEFINE.

Example:

MODEM_CHAT_MATCH_DEFINE(ok_match, "OK", "", NULL);
MODEM_CHAT_MATCH_WILDCARD_DEFINE(version_match, "\"?.?.?-???", "",
                                 ublox_match_sw_version_callback);

MODEM_CHAT_SCRIPT_CMDS_DEFINE(script_cmds,
                              MODEM_CHAT_SCRIPT_CMD_RESP("AT", ok_match),
                              MODEM_CHAT_SCRIPT_CMD_RESP("AT+VER?",
			                                 version_match));

Signed-off-by: James Wu <wu.zhuhua@gmail.com>
2025-09-01 08:33:55 +02:00
Mikhail Siomin
60a12bd336 cmake: fix build using clang when default and target arch do not match
Use CMAKE_C_COMPILER_TARGET to allow clang to correctly determine
the runtime library for the target architecture.
Otherwise, the default runtime library will be selected.

Signed-off-by: Mikhail Siomin <victorovich.01@mail.ru>
2025-09-01 08:33:00 +02:00
Jonas Berg
04dfa77d37 boards: Add Adafruit Feather Canbus board
Add support for the Adafruit Feather Canbus board.
The image is from https://learn.adafruit.com/assets/120914, with
the license CC BY-SA 3.0.

Signed-off-by: Jonas Berg <jonas.s.t.berg@gmail.com>
2025-08-31 06:18:05 -04:00
Anas Nashif
f42dc20073 twister: deal with status/reason setting in handler in one place
Multiple handlers were setting status/reason in slightly different ways,
but the code was mostly trying to do the same. Put this code in the
handler class and implement in one place.

This fixes an issue where in some cases qemu failures were not handled
correctly and status of cases was not updated, leading to multiple
failures.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-08-31 06:17:16 -04:00
Benjamin Cabé
5f0e96021c include: drivers: ptp: add missing doxygen group
add ptp_clock_interface group and put under io_interfaces

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-08-31 06:15:33 -04:00
Benjamin Cabé
5fa58ec09c doc: coding guidelines: add more reference to CERT-C
Used https://wiki.sei.cmu.edu/confluence/display/c/MISRA+C%3A2012 to
add references to relevant CERT-C section(s) for each MISRA-C rule,
where applicable.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-08-31 06:15:06 -04:00
Anas Nashif
02f4290a5e doc: coding guidelines: remove confusing misra severity column
The misra severity is being treated as relevant to whether a guideline
should be followed or not in the context of the zephyr project.

Remove from the table, the MISRA severity can be looked up in many
public places or in the MISRA coding guielines themselves.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-08-31 06:15:06 -04:00
Tim Pambor
375d51452e scripts: twister: Fix --flash-before with serial-pty script
Honor the --flash-before option when using a serial-pty script with
--device-serial-pty <script> and start the script only after
flashing the device.

Signed-off-by: Tim Pambor <tim.pambor@codewrights.de>
2025-08-30 18:00:32 +01:00
Anas Nashif
db8e7ab65a workflows: twister: install lcov
Install lcov needed for some tests.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-08-30 18:00:09 +01:00
Anas Nashif
de8914ddc0 twister: coverage: --gcov-object-directory works with >= gcovr 7.0
This command line option is not available in older versions of gcovr.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-08-30 18:00:09 +01:00
Anas Nashif
d175b5005d twister: tests: resolve warning about function being uncallable
Get rid of warnings about uncallable functions due to variable names
having test prefix.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-08-30 18:00:09 +01:00
Anas Nashif
d0675936da twister: tests: fix failing blackbox tests
Few tests failing and were not caught due to CI not running.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-08-30 18:00:09 +01:00
Lukasz Fundakowski
1c5cfc3ad4 ci: fix github actions for twister blackbox tests
Twister blackbox tests are not executed on CI.
This change fixes the problem.

Signed-off-by: Lukasz Fundakowski <lukasz.fundakowski@nordicsemi.no>
2025-08-30 18:00:09 +01:00
Benjamin Cabé
f5cc5d857c include: drivers: sensor: add missing doxygen for sensor_channel_afbr_s50
Make sure enum has a doxygen documentation

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-08-30 12:31:47 +02:00
Benjamin Cabé
2ed0d0d44d include: drivers: sensor: enhance Doxygen documentation for FDC2X1X
Complete the Doxygen documentation for this sensor driver,
put in sensor_interface_ext group.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-08-30 12:31:47 +02:00
Benjamin Cabé
b50c314b07 include: drivers: sensor: enhance Doxygen documentation for PAT9136
Complete the Doxygen documentation for this sensor driver,
put in sensor_interface_ext group.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-08-30 12:31:47 +02:00
Benjamin Cabé
5ca4ff8bb5 include: drivers: fpga: add doxygen group
add doxygen group for FPGA driver API

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-08-30 12:31:21 +02:00
Benjamin Cabé
aa7d79488b include: drivers: comparator: add doxygen doc to comparator_callback_t
While reasonably straightforward, ensure the signature of the
comparator_callback_t is properly documented.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-08-30 12:31:09 +02:00
Benjamin Cabé
506e95325d include: can: re-organize doxygen groups
group controller and transceiver API under a common umbrella

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-08-30 12:30:50 +02:00
Emil Gydesen
f6f79f0c5b Bluetooth: Audio: Shell: Reduce memory usage of the shell
Modify values in audio.conf to reduce memory usage.
Most notably disabling logs reduced the FLASH requirements.
Ideally the shell works as expected without debug logs, but
there are far too many profiles and services to verify them all.
All the log options are left in audio.conf so they can easily be
re-enabled when needed.

Memory before this change:
Memory region         Used Size  Region Size  %age Used
           FLASH:     1018512 B         1 MB     97.13%
             RAM:      423146 B       448 KB     92.24%
        IDT_LIST:          0 GB        32 KB      0.00%

Memory after this change:
Memory region         Used Size  Region Size  %age Used
           FLASH:      791308 B         1 MB     75.47%
             RAM:      369090 B       448 KB     80.46%
        IDT_LIST:          0 GB        32 KB      0.00%

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-08-30 12:30:34 +02:00
Lukasz Fundakowski
71a5f29150 twister: Add configuration reader to pytest-twister-harness
Added a class that helps to read Kconfigs from a configuration file.

Signed-off-by: Lukasz Fundakowski <lukasz.fundakowski@nordicsemi.no>
2025-08-30 12:30:26 +02:00
Etienne Carriere
39e73fe2ed tests: drivers: i2c: i2c_target_api: add nucleo_h503rb board
Add ST nucleo_h503rb board to I2C driver i2c_target_api test.
The board configuration make it testing transfer of 300 bytes data
to ensure the ReloadMode of the SoC I2C controller nicely handles
exchanges of more than 256 byte.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-08-30 12:30:15 +02:00
Etienne Carriere
81b76e0a4e tests: drivers: i2c: i2c_target_api: configure transfer byte size
Add CONFIG_I2C_TEST_DATA_MAX_SIZE to I2C driver i2c_target_api tests
to set the max data size of tested I2C transfer. The effective I2C
transfer  data size depends on that value and the size of the
EEPROM defined in the board DTS file.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-08-30 12:30:15 +02:00
Etienne Carriere
2560dca75d samples: drivers: i2c: rtio_loopback: configure transfer byte size
Add configuration options CONFIG_I2C_RTIO_LOOPBACK_DATA_READ_MAX_SIZE
and CONFIG_I2C_RTIO_LOOPBACK_DATA_WRITE_MAX_SIZE to set the number
of bytes exchanged during I2C transfers in I2C driver rtio_loopback
sample.

Add also a bit of verbosity when exchanged data are corrupted.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-08-30 12:30:15 +02:00
Etienne Carriere
862faccb27 samples: drivers: i2c: rtio_loopback: fix CONFIG_I2C_TARGET_BUFFER _MODE=n
Allow to disable CONFIG_I2C_TARGET_BUFFER_MODE in rtio_loopback I2C
driver sample.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-08-30 12:30:15 +02:00
Emil Gydesen
bf45652465 tests: Bluetooth: Tester: TMAP BSIM test
Adds BSIM testing of the TMAP features of the BT Tester.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-08-30 12:30:04 +02:00
Clay Wynn
40e91b4242 os: add __weak to to assert_print to allow customization
System designers may want to change the behavior of assert_print, such as
storing the message off into retained RAM and instantly rebooting. Adding
__weak allows customatization

Signed-off-by: Clay Wynn <cwynn@meta.com>
2025-08-29 22:57:52 -04:00
Julien Panis
22d04f7f93 drivers: crypto: cc23x0: Add power management
Add PM support to cc23x0 AES module.

Signed-off-by: Julien Panis <jpanis@baylibre.com>
2025-08-29 22:55:37 -04:00
Benjamin Cabé
ce97cd1d9c include: devicetree: show DT helpers in their respective device sections
The various DT helpers benefit from being shown in their respective
device sections as it's expected that some users will be looking there
rather than generic Devicetree help pages.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-08-29 22:55:23 -04:00
Keith Packard
3ed633b69b modules/hal_rpi_pico: Switch boot_stage2 to picolibc
Now that rpi_pico can use picolibc, let's switch to it.

Signed-off-by: Keith Packard <keithp@keithp.com>
2025-08-29 19:19:08 -04:00
Anas Nashif
2310331e3e rpi_pico: make it work with picolibc
The picolibc changes were merged upstream; switch to using that revision.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-08-29 19:19:08 -04:00
Andrei Lalaev
d28a755c02 boards: raspberrypi: rpi_pico2: include LED only for Pico 2
At the moment, "blinky" sample can be built for Pico 2 W, but it doesn't
work as expected because the board has no LED connected to GPIO.

rpi_pico2.dtsi is a common dtsi, used by Pico 2 and Pico 2 W, it
shouldn't contain board specific stuff (like LEDs).
So, include "rpi_pico-led.dtsi" directly in Pico 2 board dts.

Signed-off-by: Andrei Lalaev <andrey.lalaev@gmail.com>
2025-08-29 19:18:48 -04:00
Anisetti Avinash Krishna
e018a7e8dd drivers: pwm: Enable PWM support for PTL-h
Enable PWM support on PTL-h and add 64bit
address support for PWM driver.

Signed-off-by: Anisetti Avinash Krishna <anisetti.avinash.krishna@intel.com>
2025-08-29 19:18:28 -04:00
Sven Ginka
0d794df481 board: sensry: ganymed-sk - fix missing gpio/NET_L2
when compiling net-samples then the required gpio is disabled.
the installed vsc8541 phy requires gpio for reset. additionally,
we enable NET_L2 when network is enabled.

Signed-off-by: Sven Ginka <s.ginka@sensry.de>
2025-08-29 18:21:26 +02:00
Sven Ginka
bf4c8c2e22 board: sensry: ganymed-bob - fix missing gpio/NET_L2
when compiling net-samples then the required gpio is disabled.
the installed vsc8541 phy requires gpio for reset. additionally,
we enable NET_L2 when network is enabled.

Signed-off-by: Sven Ginka <s.ginka@sensry.de>
2025-08-29 18:21:26 +02:00
Chris Friedt
ab8b55ac99 posix: move posix limit definitions to posix_limits.h
Rather than keeping limits defined in a common way, controllable with one
Kconfig, move posix definitions out of the standard common libc header
`<limits.h>` into `<zephyr/posix/posix_limits.h>`, not controlled with
Kconfig. Additionally, include `<zephyr/posix/posix_limits.h>` wherever
an in-tree C library includes a custom `<limits.h>`.

Note: the only reason any of the `<limits.h>` files exist, is to define
the POSIX limit PATH_MAX without declaring `_POSIX_C_SOURCE`, which would
be necessary according to the standard, and each of the custom `<limits.h>`
files is nearly identical in this regard.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-08-29 18:21:10 +02:00
Chris Friedt
c4533d1b69 posix: move limit definitions to common libc limits.h
In order to reduce conflicts with limits defined in external C libraries,
move Zephyr's POSIX limits from posix_features.h to limits.h in the
common C library sources.

In order to give the implementation better control over where POSIX
limit definitions originate, use `#include_next <limits.h>` to pull in
the corresponding header of the C library, and provide a non-user
configurable option `CONFIG_TC_PROVIDES_POSIX_LIMIT_DEFS` that may be set
in order to ensure that the C library version of POSIX limits are used.

Note: this may mean that runtime invariant values are inconsistent with
parts that are actually in use within Zephyr, so applications are
encouraged to use `sysconf()` with external C libraries that implement
parts of the POSIX standard to query system configuration values at
runtime.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-08-29 18:21:10 +02:00
Vinayak Kariappa Chettimada
67126ab8aa Bluetooth: Controller: Fix building with Privacy without LE Encryption
Fix building with Privacy feature without enabling LE
Encryption support. This should allow being either Observer
or Broadcaster role with Privacy features.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2025-08-29 18:20:22 +02:00
Pieter De Gendt
c2a2f99202 soc: nxp: imxrt10xx: Configurable DCDC voltages
Allow users to configure the DCDC target voltages for low power and normal
mode.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-08-29 18:20:08 +02:00
Tomi Fontanilles
90650158bb doc: secure_storage: document the 30-bit UID
Add a bullet point for this new, relatively important deviation from
the official specification.

Also, advertise the Zephyr-specific zephyr/psa/* header files as they
are related and probably need more attention from end users.

Signed-off-by: Tomi Fontanilles <tomi.fontanilles@nordicsemi.no>
2025-08-29 18:19:36 +02:00
Tomi Fontanilles
1e78561cff secure_storage: use %# flag character for hex printing
Instead of literally having 0x in the format string, use the %# flag
character so the printf implementation adds the 0x for us.

Signed-off-by: Tomi Fontanilles <tomi.fontanilles@nordicsemi.no>
2025-08-29 18:19:36 +02:00
Tomi Fontanilles
91029d7c0b samples: psa: specify integration_platforms
Explicitly specify native_sim as integration platform for better PR
CI coverage.

Signed-off-by: Tomi Fontanilles <tomi.fontanilles@nordicsemi.no>
2025-08-29 18:19:36 +02:00
Tomi Fontanilles
254a1daa07 tests: secure_storage: remove an integration platform
nrf54l15dk/nrf54l15/cpuapp already covers the non-emulated case as
part of the integration_platforms.
Having ophelia4ev/nrf54l15/cpuapp does not bring any additional value
and increases CI load, so remove it.

Signed-off-by: Tomi Fontanilles <tomi.fontanilles@nordicsemi.no>
2025-08-29 18:19:36 +02:00
Tomi Fontanilles
f399ae95eb doc: migration guide: document Secure storage UID size change to 32 bits
Add a migration guide entry regarding the modification of the UID size
as it is by default a breaking change.

Signed-off-by: Tomi Fontanilles <tomi.fontanilles@nordicsemi.no>
2025-08-29 18:19:36 +02:00
Tomi Fontanilles
772db024da tests: secure_storage: psa: its: fix ZMS test
77f19eb1b5 made ZMS depend on
FLASH_MAP.
Enable that Kconfig option in the ZMS Kconfig overlay file.

Signed-off-by: Tomi Fontanilles <tomi.fontanilles@nordicsemi.no>
2025-08-29 18:19:36 +02:00
Tomi Fontanilles
45ea4327fa tests: secure_storage: psa: its: add test scenarios for 64-bit UIDs
Add test scenarios for the newly-added CONFIG_SECURE_STORAGE_64_BIT_UID
enabled with both the ZMS and Settings backends.
They don't test backward compatibility but it makes sure that secure
storage compiles and works fine with this configuration.

Signed-off-by: Tomi Fontanilles <tomi.fontanilles@nordicsemi.no>
2025-08-29 18:19:36 +02:00
Tomi Fontanilles
1a477748aa secure_storage: its: use %l printf length modifier
Cast the UIDs to unsigned long when they are 32 bits.
This allows to use a single %l length modifier instead of the double
one for long long.

Certain printf implementations only support the former and not the
latter length modifier, so this has the advantage to work with them
now that the UIDs are 32-bit by default.

Signed-off-by: Tomi Fontanilles <tomi.fontanilles@nordicsemi.no>
2025-08-29 18:19:36 +02:00
Tomi Fontanilles
806c344146 secure_storage: make UIDs 32-bit
Make the storage UID type 32-bit long.
This makes it more convenient to use those UIDs as storage entry IDs
when storing the entries to NVM.
The previous 64+ bits UIDs made it incovenient to use them as such.
As Zephyr defines UID ranges to be used (see
e.g. `zephyr/psa/key_ids.h`), this guarantees that all the UIDs will
fit within the 30 bits reserved for them.

The secure storage ITS implementation API is changed to take
`psa_storage_uid_t` separately so the implementation can check
that no forbidden bits are set before they are packed into
`secure_storage_its_uid_t`.

This change breaks backward compatibility because
`secure_storage_its_uid_t`, which is used both as part of the additional
data for authentication and for generating encryption keys, changes
size from 12 to 4 bytes.
For users wanting to preserve backward compatibility (for example when
upgrading an existing installation to a newer Zephyr release) or that
for some reason want to use a 64-bit `psa_storage_uid_t`, the Kconfig
option CONFIG_SECURE_STORAGE_64_BIT_UID is added. When enabled, it
makes the implementation behave the same as previously and compatibility
with existing entries is preserved. This was tested manually.

Fixes zephyrproject-rtos/zephyr#86177.

Signed-off-by: Tomi Fontanilles <tomi.fontanilles@nordicsemi.no>
2025-08-29 18:19:36 +02:00
Bjarki Arge Andreasen
db8274a5f9 modem: add versions to all headers
Versions for specific modem modules don't include versions in their
headers, and the chat module did not even define a group.

This commits updates most modem modules to include versions in
their headers. Specifically, the following modules have their
versions set to 1.0.0, as these should no longer be marked
experimental:

- modem_chat
- modem_cmux
- modem_pipe
- modem_pipelink
- modem_ppp
- modem_ubx

Though the modem_ubx was recently refactored, it is tested in CI
and is implemented by two drivers, and has been present since
release 3.7, so it is not marked as experimental.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-08-29 18:19:27 +02:00
Bjarki Arge Andreasen
26888c8fcc modem: modules: remove EXPERIMENTAL
Remove the EXPERIMENTAL label from the MODEM_MODULES and update
API version to 1.0.0. These modules are fully tested and widely
used, and have been present for 2 years.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-08-29 18:19:27 +02:00
Declan Snyder
02b99470a3 drivers: ethernet: ksz8081: Save link state for get
Instead of using mdio bus for getting link state, only get it in the
monitor and save it off for get rate api implementation to use

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-08-29 18:19:17 +02:00
Declan Snyder
043ec3d9ee drivers: phy_ksz8081: Fix boot and link up
Two issues are being simultaneously address in this commit:

Issue 1:

Current issue is that zephyr boot / init is slow because it is blocked
by the phy ksz8081 init doing autonegotiation which can take on the
order of a few seconds.

Fix by now doing autonegotiation in the monitor handler instead of in
the cfg link call. The cfg link call will now only set the ANAR register
and a software flag to let the monitor handler know whether or not to
redo the autonegotiation sequence.

Issue 2:

The ksz8081 phy currently does not link up ever on cold boots on the NXP
RT platforms due to regression on mainline. My understanding of why is
not clear, but I found that re-setting the RMII override bit by the time
the monitor work handler runs with the change to fix the first issue,
makes the link come up.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-08-29 18:19:17 +02:00
Declan Snyder
be8a0f3d1e drivers: phy_ksz8081: Improve logging
Improve logging in the driver, using appropriate log levels.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-08-29 18:19:17 +02:00
Declan Snyder
aad41f8d66 phy: ksz8081: Minor refactor of init gpio code
Minor refactor to remove the #ifdefs inline in init function.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-08-29 18:19:17 +02:00
Mark Wang
101add04bb bluetooth: avdtp: fix the checking of rsp_handler
rsp_handler should be used instead of cmd_handler

Signed-off-by: Mark Wang <yichang.wang@nxp.com>
2025-08-29 13:15:19 +02:00
MA Junyi
718f0e7272 scripts: compliance: Add items to UNDEF_KCONFIG_ALLOWLIST
`BOOT_ENCRYPT_ALG_AES_128` and `BOOT_ENCRYPT_ALG_AES_256` are used in
`share/sysbuild/image_configurations/BOOTLOADER_image_default.cmake`
They were first introduced in commit 9a1fe30

Signed-off-by: MA Junyi <mjysci@live.com>
2025-08-29 13:15:09 +02:00
James Roy
7cb48cce26 ztest: Fix the test_status variable to use the ztest_status enum
global variable `test_status` should use the enum instead
of equivalent integers (such as `1`).

Signed-off-by: James Roy <rruuaanng@outlook.com>
2025-08-29 13:14:58 +02:00
Tomáš Juřena
2db38416e6 boards: st: nucleo_l432kc: Add arduino connector
Adds new node for arduino nano connector.

Signed-off-by: Tomáš Juřena <jurenatomas@gmail.com>
2025-08-29 11:05:56 +02:00
Vit Stanicek
51e0c52837 samples: i2s_codec: Factorise initial loop count
Replace hard-wired constant "2" with CONFIG_I2S_INIT_BUFFERS in the loop
where audio data is read and written.

Signed-off-by: Vit Stanicek <vit.stanicek@nxp.com>
2025-08-29 11:05:48 +02:00
Vit Stanicek
d11474ce64 samples: i2s_codec: Modify DMIC channel mapping
Modify DMIC channel mapping (req_chan_map_lo) to account for physical
1:1 mapping between logical channel numbers and physical channel space.

Signed-off-by: Vit Stanicek <vit.stanicek@nxp.com>
2025-08-29 11:05:48 +02:00
Vit Stanicek
4bdc70d045 samples: i2s_codec: Reorganise Kconfig fragments
Reorganise Kconfig fragments (prj.conf, boards/*.conf). Rename
mimxrt1170_evk@B/mimxrt1176/cm7 fragments to
mimxrt1170_evk/mimxrt1176/cm7. Change Kconfig defaults for SAMPLE_RATE
and I2S_INIT_BUFFER.

This change is meant to reduce the length of target-specific
configuration, as some of the settings are duplicated across targets.
Also, with the inclusion of the sine wave vector, the default sample
rate of this sample changed to 16 kHz.

Signed-off-by: Vit Stanicek <vit.stanicek@nxp.com>
2025-08-29 11:05:48 +02:00
Vit Stanicek
a39483477d samples: i2s_codec: Fix buffer size
Use BLOCK_SIZE instead of the test 16 kHz sine wave length. Add a build
check so that BLOCK_SIZE doesn't overflow the test sine wave buffer.

This accounts for situations where the sample queue can't be big enough,
mainly when it doesn't fit in the device's SRAM and the count of samples
queued will be less. As the test sine wave vector contains ~42 periods,
it can be truncated.

Signed-off-by: Vit Stanicek <vit.stanicek@nxp.com>
2025-08-29 11:05:48 +02:00
Vit Stanicek
36967affbd samples: i2s_codec: Move audio slab to uncached
Move mem_slab (audio queue) to an uncached region with __nocache.

On platforms with data cache (such as platforms with the Cortex M7
core), it's desirable to have the audio data in an uncached region, so
that all data is committed in the selected location before DMA transfers
are triggered.

Playback problems observed on mimxrt1170_evk/mimxrt1176/cm7 before this
was done.

Signed-off-by: Vit Stanicek <vit.stanicek@nxp.com>
2025-08-29 11:05:48 +02:00
Vit Stanicek
bddc1a4664 samples: i2s_codec: Parametrise peripheral and codec position
Add Kconfig symbol USE_CODEC_CLOCK. Modify configuration for supported
boards.

This change enables to adjust the position of both the codec and I2S
peripheral on the I2S bus.

Signed-off-by: Vit Stanicek <vit.stanicek@nxp.com>
2025-08-29 11:05:48 +02:00
Vit Stanicek
8d826fd1ea samples: i2s_codec: Add mimxrt595_evk DTO lic. hdr.
Add license header to the mimxrt595_evk/mimxrt595s/cm33 i2s_codec's DT
overlay.

Signed-off-by: Vit Stanicek <vit.stanicek@nxp.com>
2025-08-29 11:05:48 +02:00
Christian Rask
c5c2e230f9 boards: shields: x_nucleo_gfx01m2: add tearing effect gpio configuration
Add tearing effect configuration of the spi display. The falling edge
of the tearing signal is chosen because the spi bandwidth is lower than
the display refresh rate at 60fps.

Signed-off-by: Christian Rask <christianrask2@gmail.com>
2025-08-29 11:05:38 +02:00
Christian Rask
23157c10e5 drivers: display: ili9xxx: add tearing effect support
Add tearing effect support for better display synchronization. If
tearing effect is configured in the mipi_dbi device, the display
controller configures its tearing effect register.
Display orientation configuration is updated to also rotated the
direction of the display pixel vertical scanline, such that scan order
matches the display orientation.

Signed-off-by: Christian Rask <christianrask2@gmail.com>
2025-08-29 11:05:38 +02:00
Christian Rask
fe356031db drivers: mipi_dbi: spi: add tearing effect support
Add tearing effect support for better display synchronization. This
allows users to configure an external interrupt on falling/rising edges
of the gpio connected to the display controllers tearing effect pin.
See dt-bindings/mipi_dbi/mipi_dbi.h for details of how this works for
mipi_dbi display interfaces.

Signed-off-by: Christian Rask <christianrask2@gmail.com>
2025-08-29 11:05:38 +02:00
Lyle Zhu
77e6ff8ad4 tests: tester: Correct return value if ext adv create failed
The error code instead of `BTP_STATUS_FAILED` of the function
`bt_le_ext_adv_create()` should be returned.

Returns the error code returned by `bt_le_ext_adv_create()`.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-08-29 11:05:29 +02:00
Lyle Zhu
7f12732dd6 tests: tester: Add debug log
Add debug log if the function `tester_gap_create_adv_instance()` is
failed.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-08-29 11:05:29 +02:00
Lyle Zhu
e8bbf5c732 tests: tester: Add LOG_* to btp.c for debug purpose
Add `LOG_ERR()` to log all reasons if status is `BTP_STATUS_FAILED`.
Add `LOG_DBG()` to log the excution result of the BTP commander.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-08-29 11:05:29 +02:00
Lyle Zhu
8f251c1d83 tests: bsim: tester: Fix payload length endian issue
The payload length saved in command header should be changed from CPU
endian to little-endian.

Use `sys_cpu_to_le16()` to fix the issue.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-08-29 11:05:29 +02:00
Lyle Zhu
d973e4e3ce tests: bsim: tester: Add BT tester GAP ISO smoke test
Add test iso_broadcaster for GAP ISO broadcaster.
Add test iso_sync_receiver for GAP ISO sync receiver.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-08-29 11:05:29 +02:00
Lyle Zhu
eaf1439ea9 Bluetooth: tester: Add event of periodic BIGInfo advertising report
Add event `BTP_GAP_EV_PERIODIC_BIGINFO` to notify the received periodic
BIGInfo advertising report.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-08-29 11:05:29 +02:00
Lyle Zhu
a7eeea1130 Bluetooth: tester: Support feature ISO broadcaster
Add command `BTP_GAP_CREATE_BIG` to create BIG.

Add command `BTP_GAP_BIS_BROADCAST` to send broadcast data.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-08-29 11:05:29 +02:00
Lyle Zhu
33fc4a8d2d Bluetooth: tester: Support feature ISO sync receiver
Add command `BTP_GAP_BIG_CREATE_SYNC` to create BIG sync establishment.

Add event `BTP_GAP_EV_BIG_SYNC_ESTABLISHED` to notify the event that
the BIG sync is established.

Add event `BTP_GAP_EV_BIG_SYNC_LOST` to notify the event that the BIG
sync is lost.

Add event `BTP_GAP_EV_BIS_DATA_PATH_SETUP` to notify the event that
the data path of the BIS is setup.

Add event `BTP_GAP_EV_BIS_STREAM_RECEIVED` to notify the received BIS
stream data.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-08-29 11:05:29 +02:00
Jaakko Korhonen
7390004b06 shell: modules: devmem: fix devmem load occasionally losing bytes
Changed devmem load to process all characters from the *recv buffer.

Signed-off-by: Jaakko Korhonen <jaakko.korhonen@nordicsemi.no>
2025-08-29 09:01:20 +02:00
Duy Nguyen
84c2f87540 dts: renesas: rx: Change CPU compatible for RX dts
Change the compatible of CPU core for qemu_rx, rx130 and rx261
target accroding to the change of dt-binding for rx cpu core

Signed-off-by: Duy Nguyen <duy.nguyen.xa@renesas.com>
2025-08-29 09:00:50 +02:00
Duy Nguyen
de3a78bb9a include: arch: rx: Change the ROM value by using KCONFIG
Change the ROM_START and ROM_SIZE to using KCONFIG option
same as other architecture

Signed-off-by: Duy Nguyen <duy.nguyen.xa@renesas.com>
2025-08-29 09:00:50 +02:00
Quy Tran
eb61b44ee9 drivers: cmt: Update cmt driver for Renesas RX
- Update sys_clock_set_timeout function for Renesas RX using CMT
- Remove some unused definitions

Signed-off-by: Quy Tran <quy.tran.pz@renesas.com>
2025-08-29 09:00:50 +02:00
Duy Nguyen
d29af6ff16 arch: rx: Update Exception Vector Table handling for RX
The RXv2, RXv3 feature with a configuration to be able to relocate
the exception vector table by setting the extb register in the
CPU, this commit support to enable the config and code handling
for it

Signed-off-by: Duy Nguyen <duy.nguyen.xa@renesas.com>
2025-08-29 09:00:50 +02:00
Quy Tran
8b4581ba1d arch: rx: Get swint register address from devicetree
Update irq_offload to get the swint register address from dts

Signed-off-by: Quy Tran <quy.tran.pz@renesas.com>
2025-08-29 09:00:50 +02:00
Duy Nguyen
8a0716de24 arch: rx: Add bindings for RX CPU core version
Adding bindings for rx cpu core version and remove the redundant
compatible in the qemu_rx and rsk_rx130 boards

Signed-off-by: Duy Nguyen <duy.nguyen.xa@renesas.com>
2025-08-29 09:00:50 +02:00
Bjarki Arge Andreasen
1a47cd95d8 power_domain: nrfs_gdpwr: patch init sync
The nrfs_gdpwr driver has a two stage init, which requires tracking
an "expected" state of the power domain, to be applied once the
ipc service needed to control the power domain is ready. This was
tracked with the "off" member of struct domain_data.

So, "off" was initialized to false, but, should actually be
initialized to true, since by default, if nothing needs the power
domain, it should be turned off when ipc service is ready.

To fix this, rename "off" member to "on" and adjust logic.

Additionally, define the correct struct domain_data in the
DOMAIN_DEFINE() macro. Can save 2 bytes. This did not cause any
issue since we typecast it anyway, and its size is large enough.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-08-29 09:00:19 +02:00
Dmitrii Sharshakov
166e1a3b81 drivers: udc_rpi_pico: use reset API
No need to toggle reset line manually, use the standard reset API.

This improves code searchability and aids debugging.

Requires f2f496df84 to make sure reset
deassertion is waited for.

Signed-off-by: Dmitrii Sharshakov <d3dx12.xx@gmail.com>
2025-08-29 08:59:59 +02:00
Khaoula Bidani
302ab40380 drivers: clock_control: stm32: fix compilation issue
Fix compilation issue in test overlay without pll
like hse_8_bypass.overlay and hsi_8.overlay

Signed-off-by: Khaoula Bidani <khaoula.bidani-ext@st.com>
2025-08-28 19:57:57 +02:00
Łukasz Duda
6c75315c86 openthread: Use OPENTHREAD instead of L2_OPENTHREAD in dependencies
Update Kconfig dependencies in mbedTLS and logging backend to use
OPENTHREAD instead of NET_L2_OPENTHREAD.

Signed-off-by: Łukasz Duda <lukasz.duda@nordicsemi.no>
2025-08-28 19:57:41 +02:00
Vinayak Kariappa Chettimada
4277e9ae8b tests: bsim: Bluetooth: Param update implementation review rework
Updated the test with review rework, and added comments.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2025-08-28 19:57:28 +02:00
Vinayak Kariappa Chettimada
0d1b4d2ba6 Bluetooth: Controller: Fix prepare pipeline for overlapping events
Fix prepare pipeline processing of overlapping events by
including ticks_at_expire value to uniquely identify
overlapping events.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2025-08-28 19:57:28 +02:00
Vinayak Kariappa Chettimada
93b951d6fb Bluetooth: Controller: Fix prepare pipeline overflow in observer role
Fix long standing bug in processing resume events that cause
prepare pipeline overflow due to incorrectly enqueueing up
preemptor events as duplicate events in the pipeline where
being aborted before currently active event.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2025-08-28 19:57:28 +02:00
Vinayak Kariappa Chettimada
c2eb901ea1 Bluetooth: Controller: Introduce prepare deferred feature
Introduce prepare being deferred due to previous events
desire to continue. In such case the deferred prepare param
will have the defer flag set.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2025-08-28 19:57:28 +02:00
Vinayak Kariappa Chettimada
8ecb264fec Bluetooth: Controller: Disable connection event continuation on overlap
Disable connection event continuation on overlap with same
connection's next event. This implementation has bugs and
needs to be fixed in subsequent commits.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2025-08-28 19:57:28 +02:00
Vinayak Kariappa Chettimada
2d732e292a Bluetooth: Controller: Fix stuck forced continuation under throughput
Fix stuck forced continuation of connection event under high
throughput scenario. At near supervision timeout the force
flag is set, but in the next connection event if full
connection interval is used for data transmission and a
subsequent request to abort happens it was not honoured
causing the tx-rx chain to keep continuing until supervision
timeout.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2025-08-28 19:57:28 +02:00
Vinayak Kariappa Chettimada
2b49185452 Bluetooth: Controller: Fix window widening on connection update
Fix window widening on connection update to current window
widening periodic at the instant, and use new periodic
window widening for subsequent new connection interval.

Relates to commit 247037bd3e ("Bluetooth: Controller: Fix
incorrect elapsed events value").

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2025-08-28 19:57:28 +02:00
Vinayak Kariappa Chettimada
c0fbfc3bb8 Bluetooth: Controller: Fix drift compensation on connection update
Fix drift compensation applied late under high throughput at
after the instant has passed for a connection update.

Workaround test failures due to Zephyr Controller scheduling
overlap causing Periodic Advertising Sync timeouts, ACL
connection failed to be established or Controller assertion
when having latency at the CIS setup instant.

Workaround by using `-start_offset` to ensure that the ACL
established does not overlap the sink being established.

Relates to commit 5f852998d0 ("tests: bsim: Bluetooth:
Workaround Zephyr Controller scheduling overlap").

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2025-08-28 19:57:28 +02:00
Vinayak Kariappa Chettimada
58091b181f Bluetooth: Controller: Fix conn timeout due to delayed conn upd ind
Unlike legacy Zephyr Controller's double headed Tx queue
linked list, the new split Zephyr Controller's new LLCP does
not place a control PDU at the head of the Tx queue causing
control PDUs to be delayed on air.

Pause the data enqueue until pending PDUs are transmitted
across before enqueuing LE Connection Update Ind PDU, and
thereafter resume other PDUs being enqueued again.

There can still be connection timeout if enqueued PDUs are
not being transmitted/acked during repeated retransmissions.

Updated bap_unicast_audio_acl_disconnect test to not use
random seed, to be similar to unicast_client test; to get
it to pass without overlapping state/roles casing connection
failed to be established after the changes in this PR.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2025-08-28 19:57:28 +02:00
Vinayak Kariappa Chettimada
852422522c Bluetooth: Controller: Fix LLCP event_counter used during current event
Fix LLCP to use event_counter in the current event to
compare instant when trying to check instant passed on
reception of PDU with instant.

Fixes regression in commit e3e410aeed ("Bluetooth: Controller:
Fix LLCP event_counter value used during prepare").

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2025-08-28 19:57:28 +02:00
Vinayak Kariappa Chettimada
a905be5fb3 tests: bsim: Bluetooth: Fail throughput test with increased Tx count
Make the throughput test to fail when increasing Tx buffers
that will delay a LE Connection Ind PDU from being
transmitted on air due to previously queued Data PDUs.

Unlike legacy Zephyr Controller's double headed Tx queue
linked list, the new split Zephyr Controller's new LLCP does
not place a control PDU at the head of the queue causing
control PDUs to be delayed on air.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2025-08-28 19:57:28 +02:00
Vinayak Kariappa Chettimada
4d91a84b4b tests: bsim: Bluetooth: Add param update to throughput test
Add connection parameter update to throughput test to cover
any connection timeout performing connection update while
subjected to high throughput scenarios.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2025-08-28 19:57:28 +02:00
Vinayak Kariappa Chettimada
daffb534ba Bluetooth: Controller: Remove duplicate define CONN_DATA_BUFFERS
Remove duplicate define CONN_DATA_BUFFERS and use
CONFIG_BT_BUF_ACL_TX_COUNT instead.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2025-08-28 19:57:28 +02:00
Vinayak Kariappa Chettimada
3e2beedb21 Bluetooth: Controller: Minor update adding comments
Minor update adding comments in the implementation.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2025-08-28 19:57:28 +02:00
Vinayak Kariappa Chettimada
043dee2919 Bluetooth: Controller: Move declaration close to locality of reference
Move the declaration code to locality of reference and be
consistent in how the code pattern is, related to calling
LLL disable.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2025-08-28 19:57:28 +02:00
Vinayak Kariappa Chettimada
e94d9c7811 Bluetooth: Controller: Fix event overhead check for single timer use
Single timer use needs additional event overhead to start
radio to ensure the software switch implementation executing
in radio completion ISR can correctly set the tIFS switching
after a maximum radio ISR latency.

The latency value shall be the used additional overhead so
that there is no spurious tIFS switch before radio ISR
executes.

The additional event overhead value is not considered in the
event overhead check.

Relates to commit 37bf99eee7 ("Bluetooth: Controller: Fix
radio_tmr_start_us for single timer use").

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2025-08-28 19:57:28 +02:00
Vinayak Kariappa Chettimada
66d85b448b Bluetooth: Controller: Fix assertion establishing connection
Fix an assertion detecting delayed prepare establishing an
ACL connection due to scanner or advertiser not disabled
immediately when scheduling the first connection event.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2025-08-28 19:57:28 +02:00
Vinayak Kariappa Chettimada
fe7675e209 Bluetooth: Controller: Fix assertion due to cleared pending radio IRQ
Fix assertion on scan disable observed in BabbleSIM audio
tests due to clearing of pending radio IRQ under race
conditions between scanning being stopped by application
and scanning stopped on central connection setup.

irq_enable/disable is not needed either as radio_isr_set
is always called from Radio or LLL execution context which
are co-operative with each other at same execution priority.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2025-08-28 19:57:28 +02:00
Vinayak Kariappa Chettimada
355648a69f Bluetooth: Controller: Fix missing radio tmr status reset
Fix missing radio tmr status reset on radio_disable call,
without this which disables PPI/DPPI caused under race
conditions the radio to transition into Tx or Rx state and
put the Controller's state out of sync with the Radio
peripherals internal state. The symptoms being that the
Central role was not transmitting in the next interval;
also, caused the defer iterations to reach maximum events
being enqueued in the pipeline, and manifesting as large
CPU overheads in redundant prepare of deferred events.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2025-08-28 19:57:28 +02:00
Vinayak Kariappa Chettimada
4b272e0b33 Bluetooth: Controller: Fix missing radio status reset
Fix missing radio status reset on early abort of central
and peripheral prepare.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2025-08-28 19:57:28 +02:00
Peter Johanson
5eeddab167 scripts: west: flash: Fix RFP runner platform check
Adjust the RFP runner platform check to properly handle Darwin or Windows
and skip setting a default RPF port on those two platforms.

Signed-off-by: Peter Johanson <peter@peterjohanson.com>
2025-08-28 14:00:02 +02:00
Aleksander Wasaznik
73fbdbe1e7 Bluetooth: document bt_addr_le_is_resolved()
I believe there is some confusion about what this function does. This
function is doing some type-bending, so it's extra important to document
it.

Signed-off-by: Aleksander Wasaznik <aleksander.wasaznik@nordicsemi.no>
2025-08-28 13:59:45 +02:00
Michał Stasiak
2939ccdf42 drivers: adc: adc_nrfx_saadc: add nRF54LS05B analog pins
Added array of analong pins for nRF54LS05B.

Signed-off-by: Michał Stasiak <michal.stasiak@nordicsemi.no>
2025-08-28 13:59:34 +02:00
Michał Stasiak
a9eadb411d soc: nordic: nrf54l: remove redundant inclusion of GLITCHDET
GLITCHDET is not used in this file
and causes issues for devices without GLITCHDET.

Signed-off-by: Michał Stasiak <michal.stasiak@nordicsemi.no>
2025-08-28 13:59:34 +02:00
Nikodem Kastelik
c1d28a4ea7 manifest: update hal_nordic revision to integrate nrfx 3.14.0
New nrfx release contains MDK 8.72.2
and various fixes for nRF devices.

Signed-off-by: Nikodem Kastelik <nikodem.kastelik@nordicsemi.no>
2025-08-28 13:59:34 +02:00
Łukasz Stępnicki
53a07893d5 boards: nordic: nrf54h20dk: ipc to cpusys with unbound
Unbound feature in IPC with cpusys will be enabled by default.
This is needed to enable IPC link renewal.
If unbound is not needed then it can be disabled in overlay,
sysctrl will detect if it is present.

Signed-off-by: Łukasz Stępnicki <lukasz.stepnicki@nordicsemi.no>
2025-08-28 13:59:22 +02:00
Lyle Zhu
613dcf327e Bluetooth: Classic: SCO: Get SCO conn info
Save the air_mode to SCO connect object.

Add a structure `struct bt_conn_sco_info` to return the SCO conn info.

Return SCO info through `struct bt_conn_sco_info` when calling the
function `bt_conn_get_info()`.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-08-28 13:59:10 +02:00
Jonathan Nilsen
3455917731 soc: nordic: ironside: run clang-format on some files
Format a few files with clang-format.

Signed-off-by: Jonathan Nilsen <jonathan.nilsen@nordicsemi.no>
2025-08-28 13:58:58 +02:00
The Nguyen
7ca1eceb39 samples: shields: add rtk0eg0019b01002bj sample
First commit to add rtk0eg0019b01002bj shield sample

Signed-off-by: The Nguyen <the.nguyen.yf@renesas.com>
2025-08-28 13:58:43 +02:00
The Nguyen
f78752d902 boards: renesas: rssk_ra2l1: enable Cap Touch Shield support
This commit to enable rssk_ra2l1 build with rtk0eg0019b01002bj
shield.

Signed-off-by: The Nguyen <the.nguyen.yf@renesas.com>
2025-08-28 13:58:43 +02:00
The Nguyen
d71b4a1938 boards: shields: add support for rtk0eg0019b01002bj shield
Add Capacitive Touch Application Board RTK0EG0019B01002BJ

Signed-off-by: The Nguyen <the.nguyen.yf@renesas.com>
2025-08-28 13:58:43 +02:00
Ta Minh Nhat
23fdb9e070 board: renesas: Add ethernet support for ek_ra6m4 and ek_ra6m5
Add ethernet support for ek_ra6m4, ek_ra6m5.

Signed-off-by: Ta Minh Nhat <nhat-minh.ta.yn@bp.renesas.com>
2025-08-28 13:58:33 +02:00
Ta Minh Nhat
652d822203 west: runner: rfp: support memory partition for rfp runner
Add rfp runner support for ek_ra6m4 and ek_ra6m5.
Add memory partition for rfp runner.

Signed-off-by: Ta Minh Nhat <nhat-minh.ta.yn@bp.renesas.com>
2025-08-28 13:58:33 +02:00
Ta Minh Nhat
4228444dd1 driver: ethernet: Add ethernet driver support for ra6m4 and ra6m5
Add ethernet support for RA6M4, RA6M5.
Add soc script for generating Renesas Partition Data (RFP file).

Signed-off-by: Ta Minh Nhat <nhat-minh.ta.yn@bp.renesas.com>
Singed-off-by: Duy Nguyen <duy.nguyen.xa@renesas.com>
2025-08-28 13:58:33 +02:00
Ta Minh Nhat
222bb2995c test: pwm: Change pwm channel pwm_loopback test
Change default pwm to pwm0 in ek_ra6m4, ek_ra6m5 to avoid
pin conflict with ethernet phy.

Signed-off-by: Ta Minh Nhat <nhat-minh.ta.yn@bp.renesas.com>
2025-08-28 13:58:33 +02:00
Ta Minh Nhat
5ca5966f19 board: renesas: Change default pwm in Renesas RA6 boards
Change default pwm to pwm0 to avoid pin conflict with ethernet phy.

Signed-off-by: Ta Minh Nhat <nhat-minh.ta.yn@bp.renesas.com>
2025-08-28 13:58:33 +02:00
Steffen Jahnke
455b0eeb7f boards: panasonic: Update naming PAN B611 Evaluation Board
The PAN B511 evaluation board is a development tool for the
nRF54L15 from Nordic Semiconductor. Due to marketing reasons
the naming was adjusted from panb511 to panb611.

Signed-off-by: Steffen Jahnke <steffen.jahnke@eu.panasonic.com>
2025-08-28 11:32:23 +02:00
Alex Fabre
714cbd85ec log: backend: net: add const qualifier to hostname
When setting the net log hostname, the string content is not modified.

Signed-off-by: Alex Fabre <alex.fabre@rtone.fr>
2025-08-28 11:32:11 +02:00
Jacob Wienecke
2299f9add6 boards: mimxrt1010_evk: doc: fix debug connector number
The debug connector designation for JTAG/SWD is J55. J16 is for OPENSDA
"OPENDBG INTERFACE JTAG CONNECTOR"

Signed-off-by: Jacob Wienecke <jacob.wienecke@nxp.com>
2025-08-28 11:31:44 +02:00
Keith Packard
a4fde2d205 linker/xt-ld: Compute crtbegin/crtend paths in toolchain_linker_finalize
The computation of paths to crtbegin.o and crtend.o must be delayed until
after the compiler_file_path function has been defined. The
toolchain_linker_finalize function is where these are supposed to get set
now.

Signed-off-by: Keith Packard <keithp@keithp.com>
2025-08-28 08:57:17 +02:00
Bastien Beauchamp
ad849debee pm: skip min_residency_ticks calculation if input is 0
In the default PM policy, the function k_us_to_ticks_ceil32() is used
and does calculation using 64-bit integers which can be slow and
avoidable if the input is 0.

Signed-off-by: Bastien Beauchamp <bastien.beauchamp@silabs.com>
2025-08-28 08:57:06 +02:00
Bastien Beauchamp
0f948aba74 simplicity_sdk: Patch in sl_power_manager_hal_s2.c
Patch needed to fix a bug where the SLEEPDEEP bit is not cleared
properly after a wakeup from EM2.

Signed-off-by: Bastien Beauchamp <bastien.beauchamp@silabs.com>
2025-08-28 08:57:06 +02:00
Bastien Beauchamp
d4db7f62ec soc: silabs: add a config for low latency interrupt on Sliabs S2 devices
The high frequency clock was always restored before handling the
interrupts to make sure that the system clock is as expected. However,
the response time to interrupt when we were in EM2 was a between 300 and
600 us. By default, we use the low interrupt latency.

Signed-off-by: Bastien Beauchamp <bastien.beauchamp@silabs.com>
2025-08-28 08:57:06 +02:00
Aaron Ye
0d46a93417 drivers: bluetooth: hci: stop rx thread when closes the HCI
Stops the RX thread when closes the HCI for Ambiq HCI driver

Signed-off-by: Aaron Ye <aye@ambiq.com>
2025-08-28 06:24:49 +02:00
Aaron Ye
2c63115f51 drivers: bluetooth: hci: add close function for Ambiq Apollo4 series
This commit adds close function support for Ambiq Apollo4 series SoC
so the bt_disable() API can be used.

Signed-off-by: Aaron Ye <aye@ambiq.com>
2025-08-28 06:24:49 +02:00
Aaron Ye
8bbc05df71 Bluetooth: Host: direction: correct the cte_req_enable opcode
The opcode of hci_df_set_conn_cte_req_enable command should be
BT_HCI_OP_LE_CONN_CTE_REQ_ENABLE (0x2056).

Signed-off-by: Aaron Ye <aye@ambiq.com>
2025-08-28 06:24:33 +02:00
Cheng Chang
2768acb856 bluetooth: host: avdtp: Fix command and response format error
There are three aspects of changes involved:
1.  The format of Service Category should be checked  in set
configuration cmd and error code and Service Category
should be detailed in response.
2. There is no  INT Stream Endpoint ID in re_config cmd,.
3. Fail ACP SEID should be added to start and suspend rej rsp.

Signed-off-by: Cheng Chang <cheng.chang@nxp.com>
2025-08-28 06:24:19 +02:00
Aksel Skauge Mellbye
b83267dba0 drivers: serial: silabs_usart: Fix configure error cases
Enable uart_elementary test and fix edge cases where the
configure function did not return the appropriate error code
when given invalid parity or flow control parameters.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-08-28 00:40:11 +02:00
Aksel Skauge Mellbye
3f7e614da6 drivers: watchdog: gecko: Fix API corner cases
Properly return the correct error codes when the watchdog API
is misused. Fail timeout install if WDT_FLAG_RESET_CPU_CORE is
set, a watchdog reset will at a minimum cause a soft reset of
the entire SoC.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-08-28 00:40:04 +02:00
Aksel Skauge Mellbye
de1ef0a56c tests: drivers: watchdog: Enable tests for xg24 and xg27
Enable watchdog tests for representative xg24 and xg27 boards.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-08-28 00:40:04 +02:00
Aksel Skauge Mellbye
39e468b0f6 dts: arm: silabs: xg27: Fix wdog0 unit address
The wdog0 unit address and reg entry pointed to the secure
alias, while the SMU was configured to expect the non-secure
alias.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-08-28 00:40:04 +02:00
Aksel Skauge Mellbye
9a9bc10556 tests: drivers: watchdog: Support requiring PM for pause test
Some devices require PM to go to sufficiently deep sleep modes
for the watchdog to get paused using WDT_OPT_PAUSE_IN_SLEEP.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-08-28 00:40:04 +02:00
Aksel Skauge Mellbye
b2e21d57d0 tests: drivers: watchdog: Support devices with limited timeouts
Support running the error case test on devices with a limited
number of timeouts.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-08-28 00:40:04 +02:00
Aksel Skauge Mellbye
bbd4461265 tests: drivers: watchdog: Support window.min
Add test flag to support running error case test on devices with
support for window.min

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-08-28 00:40:04 +02:00
Aksel Skauge Mellbye
af4cbdcf31 drivers: adc: gecko: Fix error return values
Enable the adc_error_cases test on Series 2 devices and change
the return values in the driver for unsupported configurations
to what the test expects.

Ensure that the resolution configuration in the test is valid
such that the invalid buffer test correctly receives -ENOMEM.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-08-28 00:39:57 +02:00
Benjamin Cabé
647142fac3 doc: update putty.software hyperlinks
Main putty website's official URL is https://putty.website

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-08-27 20:52:46 +02:00
Khaoula Bidani
808a87769c samples: boards: st: power_mgmt: fix compilation issue
Fix compilation issue in test overlay nucleo_wba55cg.overlay

Signed-off-by: Khaoula Bidani <khaoula.bidani-ext@st.com>
2025-08-27 20:52:34 +02:00
Emil Gydesen
56b0e3eb34 Bluetooth: Host: Rearrange fields in bt_le_ext_adv
Move the CONFIG_BT_EXT_ADV fields up and have the 2
8-bit values first, so they can be placed in the same
word as the previous 2 when applicable.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-08-27 20:52:19 +02:00
Emil Gydesen
ef700ec525 Bluetooth: CAP: Remove sid from u->b handover params
The SID is now gettable via bt_le_ext_adv_get_info.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-08-27 20:52:19 +02:00
Emil Gydesen
5cd678a68a doc: releases: Document new field sid in bt_le_ext_adv_info
Add entry for the new field, `sid`, in the bt_le_ext_adv_info
struct.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-08-27 20:52:19 +02:00
Emil Gydesen
bbcbcbfc41 Bluetooth: Adv: Store SID and expose via adv_info
Store the SID in the advertising set, and let it be possible
to get it again via bt_le_ext_adv_get_info.

The SID may be used by higher layers to shared information
about the advertising set.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-08-27 20:52:19 +02:00
Emil Gydesen
b714ea3484 Bluetooth: Shell: Increment SID per set
Instead of always using SID=0 for advertising sets (which can be
tricky if there are multiple advertising sets using the same SID
and address), the SID will be incremented and wrap around when
reaching the max to reduce the risk of 2 or more sets having the
same SID.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-08-27 20:52:19 +02:00
Aiden Hu
2dd8570eec modules: hal_nxp: mcux: update macros for usb host EHCI
Change the default value for QH/QTD/ITD/SITD
of usb host ehci.

Signed-off-by: Aiden Hu <weiwei.hu@nxp.com>
2025-08-27 16:35:52 +02:00
Aiden Hu
d560f54e9f soc: nxp: rw: update soc.c of rw for usb clock
usb clock enablement for UHC NXP EHCI on rw.

Signed-off-by: Aiden Hu <weiwei.hu@nxp.com>
2025-08-27 16:35:52 +02:00
Aiden Hu
5d9353b1fa dts: arm: nxp: update nxp_rw6xx_common.dtsi for usb host.
Add usbh node.

Signed-off-by: Aiden Hu <weiwei.hu@nxp.com>
2025-08-27 16:35:52 +02:00
Benjamin Cabé
e7b49592b2 include: drivers: swdp: Add missing doxygen comments
Complete the documentation of swdp.h

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-08-27 16:35:33 +02:00
Sean Kyer
3a54a4d123 settings: Add EXPERIMENTAL to TF-M ITS backend
Add select EXPERIMENTAL to the TF-M ITS
backend of the settings subsystem.

Signed-off-by: Sean Kyer <sean.actor@gmail.com>
2025-08-27 16:35:23 +02:00
Sean Kyer
102ce2ac3b tests: settings: ITS: Explicitly enable TF-M ITS
Explicitly enable the TF-M ITS backend for the
settings subsystem in the settings its test.

Signed-off-by: Sean Kyer <sean.actor@gmail.com>
2025-08-27 16:35:23 +02:00
Sean Kyer
20360ff4da settings: Remove default selection of TF-M ITS backend
Remove the default selection of SETTINGS_TFM_ITS when
TFM_PARTITION_INTERNAL_TRUSTED_STORAGE is enabled
which caused this backend to be built when it was
not intended.

Signed-off-by: Sean Kyer <sean.actor@gmail.com>
2025-08-27 16:35:23 +02:00
Bernt Johan Damslora
46e9b4a6af boards: nrf9280pdk: Add revision 0.2.0
Add revision support and overlays for rev. 0.2.0.

Signed-off-by: Bernt Johan Damslora <bernt.damslora@nordicsemi.no>
2025-08-27 16:35:09 +02:00
Bernt Johan Damslora
cb1b569fc3 boards: nrf9280pdk: disable IEEE 802.15.4 support
nRF92 series is not supported in the IEEE 802.15.4 stack yet,
so remove it from the board for now.

Signed-off-by: Bernt Johan Damslora <bernt.damslora@nordicsemi.no>
2025-08-27 16:35:09 +02:00
Jiafei Pan
7305de28db board: imx95_evk: fix jlink device id
Device ID should be MIMX9596 for i.MX95 EVK board.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-08-27 16:33:06 +02:00
Benjamin Cabé
6aa3e9e972 include: lorawan: document deps of clock sync and frag transport APIs
Add Doxygen tags giving users an indication that some API will only be
available if the corresponding Kconfig option is enabled.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-08-27 16:32:57 +02:00
Benjamin Cabé
993713a47f include: lorawan: remove ifdef-ry
Do not KConfig-gate function declarations as per
Zephyr's API guidelines

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-08-27 16:32:57 +02:00
Lyle Zhu
5245307512 Bluetooth: GATT: Check len of response before parsing response PDU
In function `parse_read_by_uuid()`, the response length is not checked
before parsing the response PDU. There is a potential issue that the
`len` will be underflowed if the `len` is less than the size of
`struct bt_att_data`.

Check the length before parsing the response PDU. If the length is less
then the size of `struct bt_att_data`, notify the upper layer with the
error `BT_ATT_ERR_INVALID_PDU` and stop the parsing.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-08-27 15:16:47 +02:00
Georgios Vasilakis
7f9459571a boards: ezurio: Fix RRAM size for nRF54l10 NS
The nRF54L1 has 1012 KB RRAM and not 1022 KB as
it was set before. This adjusts the NS target
RRAM size for the relevant Ezurio boards
which use the nRF54L10.

Signed-off-by: Georgios Vasilakis <georgios.vasilakis@nordicsemi.no>
2025-08-27 15:16:38 +02:00
Georgios Vasilakis
fdf55fe460 manifest: Bring TF-M with fixed nRF54L10 NS RRAM size
Corrects the RRAM size in the TF-M repo.

Signed-off-by: Georgios Vasilakis <georgios.vasilakis@nordicsemi.no>
2025-08-27 15:16:38 +02:00
Georgios Vasilakis
9f0d2770f1 boards: nordic: Fix RRAM size for nRF54l10 NS
The nRF54L1 has 1012 KB RRAM and not 1022 KB as
it was set before. This adjusts the NS target
with the correct size.

Signed-off-by: Georgios Vasilakis <georgios.vasilakis@nordicsemi.no>
2025-08-27 15:16:38 +02:00
Georgios Vasilakis
dd95a7d83d Revert "boards: nordic: nrf54l10_cpuapp_ns: Add workaround for partitions"
This reverts commit 002838ab9e.

Signed-off-by: Georgios Vasilakis <georgios.vasilakis@nordicsemi.no>
2025-08-27 15:16:38 +02:00
Sebastian Głąb
e0fcfa1be9 samples: subsys: usb: hid-keyboard: Confirm operation with console
Use console logs to determine if sample operates correctly.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
2025-08-27 09:47:38 +02:00
Qiang Zhang
d350cde656 test: added input_dume test implementation.
added gpio_kpp test implementation.

Signed-off-by: Qiang Zhang <qiang.zhang_6@nxp.com>
2025-08-27 09:47:10 +02:00
Qiang Zhang
be362de579 boards: nxp: add kpp peripheral to mimxrt1180_evk.
add kpp peripheral to mimxrt1180_evk.

Signed-off-by: Qiang Zhang <qiang.zhang_6@nxp.com>
2025-08-27 09:47:10 +02:00
Qiang Zhang
55adebb51b dts: add KPP driver bindings.
add KPP driver bindings.

Signed-off-by: Qiang Zhang <qiang.zhang_6@nxp.com>
2025-08-27 09:47:10 +02:00
Qiang Zhang
2441e76ad0 driver: input: Add support for KPP driver.
Added support for KPP driver.

Signed-off-by: Qiang Zhang <qiang.zhang_6@nxp.com>
2025-08-27 09:47:10 +02:00
Qiang Zhang
0887ccd660 clock: Add KPP clock support for ccm.
Add KPP clock support for ccm.

Signed-off-by: Qiang Zhang <qiang.zhang_6@nxp.com>
2025-08-27 09:47:10 +02:00
Qiang Zhang
79e4b31d8f hal_nxp: Add KPP driver support.
Add KPP driver support.

Signed-off-by: Qiang Zhang <qiang.zhang_6@nxp.com>
2025-08-27 09:47:10 +02:00
Jeppe Odgaard
cbc2b3b540 shell: mqtt: remove username and password preprocessor checks
`#ifdef` will always evaluate to true when used on string Kconfig options.
Therefore username and password is set to "" if unset in Kconfig which is
not an issue.

Signed-off-by: Jeppe Odgaard <jeppe.odgaard@prevas.dk>
2025-08-27 09:47:04 +02:00
Maksymilian Goryszewski
90723c86ed tests: posix: fs: Added fstat tests
Test posix fstat() function

Signed-off-by: Maksymilian Goryszewski <mgoryszewski@internships.antmicro.com>
2025-08-27 08:27:14 +02:00
Maksymilian Goryszewski
ba30c7b4e8 lib: posix: fs: Basic fstat() using seek and tell
Implement limited posix fstat()

Signed-off-by: Maksymilian Goryszewski <mgoryszewski@internships.antmicro.com>
2025-08-27 08:27:14 +02:00
Fabio Baltieri
eb7e08641d docs: contribution, style: specify that tabs are 8 characters
GitHub, in a moment of infinite wisdom, decided to change the default
tab from eight to four characters.

According to the GitHub announcement the problem that the change
addressed is that "many users are unaware that tab size can be adjusted
in their settings". As a result now users with this so called "improved"
setting sees a different indentation from all other users.

Help GitHub in their awareness mission, by making the users aware that
tab size can (or rather, has to) be adjusted in their settings to the
previous default, by mentioning it in the contribution guideline.

Call it out in the quick style guide too since it's not the default
anymore.

Link: https://github.blog/changelog/2025-08-07-default-tab-size-changed-from-eight-to-four/
Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2025-08-27 08:27:05 +02:00
Zhaoxiang Jin
fba3a1e314 boards: nxp: Use the mcxa346 linkserver for mcxa266
The frdm-mcxa266 linkserver is not ready now,
temporarily use the frdm-mcxa346 linkserver.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-08-27 08:26:34 +02:00
Khoa Nguyen
a02be914ca drivers: gpio: Add select PINCTRL for renesas_ra_ioport
Add select PINCTRL for renesas_ra_ioport

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-08-27 05:15:28 +02:00
Sylvio Alves
2802a9a6f3 drivers: flash: esp32: handle zero-length reads as no-op
Add a guard clause in flash_esp32_read() to return 0 when the
requested length is zero. This avoids unnecessary operations
and aligns with expected flash API behavior, where reading
zero bytes is treated as a no-op.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2025-08-27 05:15:19 +02:00
Terry Geng
d7d5aeb800 drivers: spi: spi_pico_pio: Prevent dma_config check if DMA is not enabled
At this moment, DMA for SPI 3-wire half-duplex operation is not supported
by the pio driver. A check was implemented there to prevent user from
enabling DMA, but wasn't bypassed when CONFIG_SPI_RPI_PICO_PIO_DMA is
not enabled at all, under which the `dma_config` structure isn't defined
at all.

Fixed #94897.

Signed-off-by: Terry Geng <terry@terriex.com>
2025-08-27 05:15:09 +02:00
Dmitrii Sharshakov
3c8eeeaebb samples: settings: handle failures
If we cannot initialize settings subsystem, it does not make
much sense to do calls into it. This leads to uninitialized
variables being printed and generally makes it hard to tell whether
or not the sample runs with the given config.

Signed-off-by: Dmitrii Sharshakov <d3dx12.xx@gmail.com>
2025-08-27 05:14:53 +02:00
WenBin Zhang
231d59f890 samples: zperf: Improve TCP performance
For TCP, CONFIG_PICOLIBC_USE_MODULE=y has a significant impact
on performance.

Use nucleo_h743zi board with loopback:
```
before:
tcp upload: 49.35 Mbps/s

after:
tcp upload: 56.52 Mbps/s
```

Use nucleo_h743zi board, default config:
```
before:
tcp upload: 71.3Mbps/s
tcp download: 75.11 Mbps/s

after:
tcp upload: 75.3Mbps/s
tcp download: 94.39 Mbps/s
```

Use nucleo_h743zi board, with tx async mode #93965:
```
before:
tcp upload: 71.3Mbps/s
tcp download: 75.11 Mbps/s

after:
tcp upload: 92.9Mbps/s
tcp download: 94.5Mbps/s
```

Signed-off-by: WenBin Zhang <freey7955@gmail.com>
2025-08-27 05:14:43 +02:00
Daniel Leung
fe5f8e0737 x86: pcie: fix allocating 1 vector under MSI-X
Fix an issue where 1 vector is being requested when MSI-X is
enabled. The previous logic always assumed the PCIE device has
only fixed or single MSI when we are requesting 1 vector, which
is not entirely correct. So if there is no vector allocated
already, try to allocate one.

Fixes #93319

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-08-27 05:14:34 +02:00
Daniel Leung
d4b4da94e7 x86: fix return for arch_pcie_msi_vectors_allocate()
arch_pcie_msi_vectors_allocate() has a return type of uint8_t.
One of the error path returns -1 which would result in 255
being returned. So fix that by returning 0 instead, as there is
no vector being allocated anyway.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-08-27 05:14:34 +02:00
Daniel Leung
bf892ffe29 tests: disk/disk_performance: add CONFIG_NVME for qemu_x86_64
qemu_x86_64 has NVME disk as overlay so we need to enable
kconfig CONFIG_NVME or else it would fail to compile.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-08-27 05:14:34 +02:00
Sebastian Głąb
b50b5b4f4e boards: nordic: nrf54lm20dk: Add usbd to supported features
Add 'usbd' to the list of features supported by nrf54lm20dk.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
2025-08-26 23:51:09 +02:00
Benjamin Cabé
0928c70f19 include: sensing: doc: documentation improvements
- Move sensing documentation in the "OS Services" group
  and clean up group declarations
- Add missing documentation for the Sensing Subsystem API and complete
  existing docs when it was too terse
- Other grammar/cosmetic improvements

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-08-26 23:50:47 +02:00
Benjamin Cabé
0f7b1033d5 include: sensing: doc: sensor types doxygen fixes
add missing docs, group types using `@name`

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-08-26 23:50:47 +02:00
Declan Snyder
5aa89556fb samples: Fix confusing openamp sample doc
A lot of users seem to be confused by this sample when they try to do
west debug. This is because Zephyr currently does not support flashing
all the cores from a sysbuild automatically when doing a west debug
command. So west flash needs to be done prior to a west debug command.
The README previously actually said the step by step instructions are to
do the build, then immediately west debug, which would cause faulting
and crashing, so change the instructions goal to be a flash, and put a
note about needing to flash before debugging.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-08-26 23:50:33 +02:00
Ephraim Westenberger
a7527b1bf7 soc: Add support for the bgm240sa22vna module
Silicon Labs controller with integrated radio each rely on a specific
binary blob (RAIL library) for using the EFR32 radio subsystem.
This commit adds support for the Silicon Labs BGM240SA22VNA SoC.

Signed-off-by: Ephraim Westenberger <ephraim.westenberger@gmail.com>
2025-08-26 23:49:37 +02:00
Michal Simek
7944467170 drivers: ethernet: xilinx: remove unused data variable
Clean up unused variable 'data' in eth_xilinx_axienet.c.

Signed-off-by: Michal Simek <michal.simek@amd.com>
2025-08-26 22:08:23 +02:00
Raffael Rostagno
382ce7cbd3 drivers: mcpwm: esp32: Fix duty rounding
Duty value in the driver is calculated from timer cycles, which
can introduce precision loss when converting from pwm_set() to
pwm_set_cycles(). To avoid truncating values with a fractional
part ≥ 0.5 and further drifting the effective duty, round the
computed duty to the nearest integer.

Signed-off-by: Raffael Rostagno <raffael.rostagno@espressif.com>
2025-08-26 22:08:11 +02:00
Benjamin Cabé
98b006566d include: ec_host_cmd: doxygen improvements
- add some missing docs
- make sure API guarded by Kconfig is showing up in the docs
- show EC Host Command docs in the Device Management group
- re-arrange groups for backends and simulator API

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-08-26 22:07:52 +02:00
Benjamin Cabé
8ea45f3a72 doc: groups.dox: add device management group
Make sure that subsystems such as MCUmgr, EC Host Command, etc. are
grouped under a Device Management group instead of showing up as
top-level "OS Services".

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-08-26 22:07:52 +02:00
Philémon Jaermann
efacee0145 drivers: gnss: Correctly set the 1 bit bitfield is_tracked/corrected
Currently, if a SV is tracked, we try to store:
flags & BIT(3) -> 0b1000 -> least significant bit 0 is stored.
Same is valid for the is_corrected field.

Use double negation to treat any non-zero value as true.

Signed-off-by: Philémon Jaermann <p.jaermann@gmail.com>
2025-08-26 22:07:43 +02:00
Raffael Rostagno
2643ea23c0 tests: drivers: counter: esp32h2: Add config
Add test config for ESP32-H2.

Signed-off-by: Raffael Rostagno <raffael.rostagno@espressif.com>
2025-08-26 22:07:36 +02:00
Raffael Rostagno
4cad8d65ff tests: drivers: uart: esp32h2: Add test config
Add test config for ESP32-H2.

Signed-off-by: Raffael Rostagno <raffael.rostagno@espressif.com>
2025-08-26 22:07:36 +02:00
Raffael Rostagno
c7a295b068 tests: clock: esp32h2: Add testcase
Render test settings more generic regarding clock options, in order
to better support new devices. Add ESP32-H2 testcase to rtc_clk suite.

Signed-off-by: Raffael Rostagno <raffael.rostagno@espressif.com>
2025-08-26 22:07:36 +02:00
Raffael Rostagno
ebd1b1c44b boards: esp32h2_devkitm: Add initial support
Add initial support for esp32h2_devkitm.

Signed-off-by: Raffael Rostagno <raffael.rostagno@espressif.com>
2025-08-26 22:07:36 +02:00
Raffael Rostagno
c5770e1b14 drivers: hwinfo: esp32h2: Add support
Add hwinfo support for ESP32-H2.

Signed-off-by: Raffael Rostagno <raffael.rostagno@espressif.com>
2025-08-26 22:07:36 +02:00
Raffael Rostagno
1bd2734991 drivers: wdt: esp32h2: Add support
Add WDT support for ESP32-H2.

Signed-off-by: Raffael Rostagno <raffael.rostagno@espressif.com>
2025-08-26 22:07:36 +02:00
Raffael Rostagno
36c528316d drivers: systimer: esp32h2: Add support
Add systimer support for ESP32-H2.

Signed-off-by: Raffael Rostagno <raffael.rostagno@espressif.com>
2025-08-26 22:07:36 +02:00
Raffael Rostagno
d1ecc51dcd drivers: uart: esp32h2: Add support
Add UART support for ESP32-H2.

Signed-off-by: Raffael Rostagno <raffael.rostagno@espressif.com>
2025-08-26 22:07:36 +02:00
Raffael Rostagno
270307f61d drivers: gpio: esp32h2: Add support
Add gpio support for ESP32-H2.

Signed-off-by: Raffael Rostagno <raffael.rostagno@espressif.com>
2025-08-26 22:07:36 +02:00
Raffael Rostagno
9d257c362f drivers: pinctrl: esp32h2: Add support
Add pinctrl support for ESP32-H2.

Signed-off-by: Raffael Rostagno <raffael.rostagno@espressif.com>
2025-08-26 22:07:36 +02:00
Raffael Rostagno
6293140ff6 drivers: clock_control: esp32h2: Add support
Add clock control support for ESP32-H2.

Signed-off-by: Raffael Rostagno <raffael.rostagno@espressif.com>
2025-08-26 22:07:36 +02:00
Raffael Rostagno
5bd4741c83 soc: esp32h2: Add initial support
Add initial support files for ESP32-H2 SoC.

Signed-off-by: Raffael Rostagno <raffael.rostagno@espressif.com>
2025-08-26 22:07:36 +02:00
Raffael Rostagno
5a84b68e61 bindings: clock: intmux: pinctrl: esp32h2: Add defines
Add defines for clock, interrupt management and pin control.

Signed-off-by: Raffael Rostagno <raffael.rostagno@espressif.com>
2025-08-26 22:07:36 +02:00
Raffael Rostagno
7f68a73c8e west.yml: hal_espressif: Update for ESP32-H2 support
Update HAL for ESP32-H2 support.

Signed-off-by: Raffael Rostagno <raffael.rostagno@espressif.com>
2025-08-26 22:07:36 +02:00
Aleksander Wasaznik
3a8846e947 Bluetooth: Document bt_conn_le_cs_mode and clarify encoding notes
Add API documentation for `bt_conn_le_cs_mode` and internal extractors
for main and sub-mode parts. Clarify that the enum values are an
internal encoding, not a stable API, and that the sub-mode extractor
maps 0 to HCI 0xFF (unused) for a compact representation.

Also mark the extractors as private helpers and tighten wording for
developer clarity.

Signed-off-by: Aleksander Wasaznik <aleksander.wasaznik@nordicsemi.no>
2025-08-26 16:14:16 +02:00
Mike J. Chen
ebab75bb73 nvs: support sector_size of 64KB
Allows NVS to work with flash device configured to
use only 64KB block erase. Due to how addresses
are encoded internally in NVS, 64KB is the maximum
sector size. Add a test for this during mount.

Add a native_sim unit test case for 64kb erase block size

Signed-off-by: Mike J. Chen <mjchen@google.com>
2025-08-26 16:13:23 +02:00
Aksel Skauge Mellbye
33da9bfd92 drivers: spi: silabs: Add missing iodev_submit implementation
Series 2 EUSART and SiWx91x GSPI drivers were missing the
`iodev_submit` member from their API structs, leading to
null pointer dereference if CONFIG_SPI_RTIO was used.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-08-26 16:04:32 +02:00
Jeppe Odgaard
a8c8f7f2b8 shell: mqtt: select NET_CONNECTION_MANAGER
Replace `select NET_MGMT` and `select NET_MGMT_EVENT` with
`select NET_CONNECTION_MANAGER` to get L4 events.

Signed-off-by: Jeppe Odgaard <jeppe.odgaard@prevas.dk>
2025-08-26 13:25:47 +02:00
Jeppe Odgaard
ddc4479243 shell: mqtt: use topic levels
Change topic from <device_id>_rx (and tx) to <device_id>/sh/rx.

This allows use of wildcards. E.g. subscribe to all devices "+/sh/tx".

Level "sh" is added to the topic to make it less generic and prevent
potential clashes with other topics.

The topic part after <device_id> is configurable via Kconfig.

Signed-off-by: Jeppe Odgaard <jeppe.odgaard@prevas.dk>
2025-08-26 13:25:47 +02:00
Etienne Carriere
5ff3dbeeee drivers: i2c: stm32: exclude stm32f7 family for PM in RTIO driver
Exclude STM32F7 SoC series from PM support since that SoC doees not
yet manage power management in Zephyr and HAL API functions
LL_I2C_EnableWakeUpFromStop() and LL_I2C_DisableWakeUpFromStop()
are not implemented in the H7 HAL/LL drivers.

This change ports into the STM32 RTIO driver the change made in the
non-RTIO driver through commit 1804eb7bc3 ("drivers: i2c: stm32:
exclude stm32f7 family for PM").

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-08-26 11:34:55 +02:00
Etienne Carriere
e29ebbe13c drivers: i2c: stm32: drop few redundant guards in RTIO driver
Drop few CONFIG_PM_DEVICE_RUNTIME guards, the pm_device_runtime
functions they are masking are no-op automatically when the
corresponding config option is not selected.

This change is related to the change made in the STM32 non-RTIO driver
trough commit 4f3523d9af ("i2c: stm32: drop few redundant guards").

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-08-26 11:34:55 +02:00
Etienne Carriere
181e544550 drivers: i2c: stm32: sync stm32_v2 RTIO on PM runtime state
Always call pm_device_runtime_get() when registering a target
even if the device is not wakeup capable to prevent I2C target not being
function if the device goes into a SoC Stop mode.

This change ports into the STM32 v2 RTIO driver the change made in the
non-RTIO driver through commit 67f80e35b8 ("i2c: stm32: always call
runtime_get when registering targets").

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-08-26 11:34:55 +02:00
Ajay Parida
092347cdb1 driver: nrf_wifi: TWT setup duration
Build time configuration option to set TWT setup duration.
If AP does not respond to TWT setup request for this period,
STA will timeout and report setup failure.

Signed-off-by: Ajay Parida <ajay.parida@nordicsemi.no>
2025-08-26 11:34:45 +02:00
Kapil Bhatt
028eec235e manifest: Update nrf_wifi revision to fix raw tx
Fix TX buffer issue for raw tx.

Signed-off-by: Kapil Bhatt <kapil.bhatt@nordicsemi.no>
2025-08-26 11:34:45 +02:00
Vinayak Kariappa Chettimada
3461135d02 Bluetooth: Controller: Fix assertion in scan aux release
Fix assertion under race conditions where LLL scheduling
did not have an auxiliary context assigned but when node rx
is released an auxiliary context is picked from the scan
context that has no parent assigned yet due to a previously
assigned auxiliary context to the scan context was not
cleared.

Relates to commit 49642efa41 ("Bluetooth: Controller: Fix
regression in scan aux release").

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2025-08-26 11:34:36 +02:00
Vinayak Kariappa Chettimada
5ce9d0c621 Bluetooth: Controller: Fix extended scanning assert on invalid chan_idx
Fix extended scanning assert on invalid chan_idx received in
the aux pointer structure.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2025-08-26 11:34:36 +02:00
Sebastian Bøe
ac851ca160 soc: nordic: uicr: Reorganize how gen_uicr.py is invoked
Reorganize how gen_uicr.py is invoked.

Instead of invoking it from one of the Zephyr images we invoke it from
a new special Zephyr image called uicr.

This uicr Zephyr image is flashed in the same way as normal Zephyr
images so special handling in the runner is no longer necessary.

Also, we simplify gen_uicr.py by moving parsing of Kconfig/DT from
gen_uicr.py to CMake.

Signed-off-by: Sebastian Bøe <sebastian.boe@nordicsemi.no>
2025-08-26 09:38:18 +02:00
Jonathan Nilsen
ae191f66c9 soc: nordic: uicr: Populate UICR.VERSION field in gen_uicr.py
Set the VERSION field to 2.0 in gen_uicr.py to indicate the version of
the format the script produces blobs for. This is required for forwards
compatibility with newer versions of IronSide SE.

Signed-off-by: Jonathan Nilsen <jonathan.nilsen@nordicsemi.no>
2025-08-26 09:38:18 +02:00
Sebastian Bøe
5f9d20cf38 tests: drivers: comparator: gpio_loopback: Update SNIPPET_ROOT
When SNIPPET is added to the build, it is added to all images. But not
all images have the test directory added to their SNIPPET_ROOT, so we
also update the SNIPPET_ROOT.

This allows, for instance, the uicr image of nrf54H to find this
snippet.

Ref: NCSDK-NONE

Signed-off-by: Sebastian Bøe <sebastian.boe@nordicsemi.no>
2025-08-26 09:38:18 +02:00
Arunmani Alagarsamy
06158853c3 drivers: wifi: siwx91x: Add support for regulatory domain GET
Added support for retrieving the regulatory domain information from
the siwx91x driver. Since the SDK does not provide a GET API for
region details, the driver now stores the country code and reuse
the configuration `sli_si91x_set_region_ap_request_t` to get the
channel information. This stored data is returned when a GET
operation is requested.

Signed-off-by: Arunmani Alagarsamy <arunmani.a@silabs.com>
2025-08-26 09:38:05 +02:00
Arunmani Alagarsamy
eac7784574 soc: silabs: siwg917: Relocate country code mapping function
Moved the `siwx91x_map_country_code_to_region()` function
from the Wi-Fi driver source file to nwp.c.

This change prepares the codebase for upcoming enhancements
related to the regulatory domain GET operation.

Signed-off-by: Arunmani Alagarsamy <arunmani.a@silabs.com>
2025-08-26 09:38:05 +02:00
Arunmani Alagarsamy
72a3f7e4c9 drivers: wifi: siwx91x: Add support for setting regulatory domain
Add support for configuring the regulatory domain (region code) to
ensure the device operates in compliance with local RF regulations.

The region must be set before the Wi-Fi interface becomes active
i.e., before scan or connection in STA mode, or before starting in
AP mode.

Since the SDK does not support setting the country code directly,
the driver maps country codes to region codes

Signed-off-by: Arunmani Alagarsamy <arunmani.a@silabs.com>
2025-08-26 09:38:05 +02:00
Make Shi
9cfbed62df Bluetooth: Shell: AVRCP: Shell interface for browsing support
- Add shell interface for browsing connect and disconnect testing and
  SetBrowsedPlayer command testing.

Signed-off-by: Make Shi <make.shi@nxp.com>
2025-08-26 09:32:21 +02:00
Make Shi
240ad5cedc bluetooth: avrcp: Add support for AVRCP browsing
- AVRCP SDP record updates for browsing channel
- L2CAP setup for AVCTP browsing channel, and add connect/disconnect
- Add SetBrowsedPlayer browsing command handling

Signed-off-by: Make Shi <make.shi@nxp.com>
2025-08-26 09:32:21 +02:00
Make Shi
b923bde676 bluetooth: avrcp: provide an API for net buffer allocation
Add bt_avrcp_create_pdu() to allocate net_buf with protocol headroom.

Signed-off-by: Make Shi <make.shi@nxp.com>
2025-08-26 09:32:21 +02:00
Make Shi
895ba04b32 Bluetooth: AVCTP: Refactors the AVCTP to support multiple L2CAP PSMs
- This patch refactors the AVCTP layer to support multiple L2CAP PSMs
- Introduced bt_avctp_server structure for dynamic L2CAP server
  registration and new server register apis
- Added k_sem protected server list to support multiple AVCTP servers

Signed-off-by: Make Shi <make.shi@nxp.com>
2025-08-26 09:32:21 +02:00
Gang Li
009114a607 modules: hostap: flush all unused BSS entries before 11V roaming
For 11V roaming, it attempts to use previously received scan results,
if they are recent enough to be used for connection.
If wifi driver does not keep the previous scan results, it will failed
to find the bss entry.
Fix: flush all unused BSS entries, for 11V roaming, don't try to use
recent scan results.

Signed-off-by: Gang Li <gang.li_1@nxp.com>
2025-08-26 08:35:08 +02:00
Jannik Woernle
b10204b36d kernel: k_pipe: Fixed initializer order
Changed order of Z_PIPE_INITIALIZER to match with k_pipe struct

Signed-off-by: Jannik Woernle <jjw2202@outlook.de>
2025-08-26 08:34:55 +02:00
Johann Fischer
b318fb3fc3 boards: remove test feature usb_cdc
The test feature USB_CDC is not required or used in any of the USB
samples or tests, yet it mysteriously appears again and again for
various boards.

Follow-up on commit ef784cd3fd
("boards: remove test feature usb_cdc and usb")

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-08-26 04:07:45 +02:00
Johann Fischer
6f57a7a3f3 boards: replace test feature usb_device with usbd for some boards
Replace test feature usb_device with usbd for boards that use the CDC
ACM serial backend. Otherwise, Twister could use these boards with
deprecated legacy samples, but the build would fail due to warnings
about the CDC ACM log level.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-08-26 04:07:45 +02:00
Johann Fischer
8b065f9183 samples: cdc_acm: set CDC ACM log level to OFF
When building for the board with a serial backend, a warning will appear
regarding the log level of the CDC ACM implementation. Set it to "OFF"
to avoid CI failures.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-08-26 04:07:45 +02:00
Johann Fischer
ec9488ceaa samples: usb: explicitly disable initialization at boot
To avoid conflicts with boards using the CDC ACM serial backend,
explicitly disable initialization at boot.

Similar to commit 11c7371f99
("samples: Explicitly disable boot USB device support init at boot")
addressing it for the legacy device stack.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-08-26 04:07:45 +02:00
Johann Fischer
489ea9df31 samples: usb: legacy: disable next device stack explicitly
Disable the new device stack explicitly to avoid build issues in CI.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-08-26 04:07:45 +02:00
Daniel DeGrasse
dcb472926c include: zephyr: move disks directory to disk
Move disks directory to disk to match with the naming of the driver
class. This only affects the recently introduced header for STM32 disk
drivers so it should be very low impact.

Signed-off-by: Daniel DeGrasse <ddegrasse@tenstorrent.com>
2025-08-26 04:07:27 +02:00
Ioannis Damigos
92d092f715 include: drivers: bluetooth: Use DT_ENUM_IDX_OR to get HCI bus from DT
Use DT_ENUM_IDX_OR instead of DT_STRING_UPPER_TOKEN_OR to get HCI bus
from DT, in order to avoid the expansion of UART/SPI/etc. macros when
they exist in vendor's SoC headers.

Fixes #93675

Signed-off-by: Ioannis Damigos <ioannis.damigos.uj@renesas.com>

fix
2025-08-26 04:07:10 +02:00
Ioannis Damigos
70c70fda24 doc/releases: Update migration guide regarding IPM HCI bus removal
Update migration guide regarding IPM HCI bus removal.

Signed-off-by: Ioannis Damigos <ioannis.damigos.uj@renesas.com>
2025-08-26 04:07:10 +02:00
Ioannis Damigos
4920a6d7b1 bluetooth: hci: Remove deprecated IPM HCI bus
Remove deprecated IPM HCI bus.

Signed-off-by: Ioannis Damigos <ioannis.damigos.uj@renesas.com>
2025-08-26 04:07:10 +02:00
Ioannis Damigos
fe645cd346 dts/bindings/bluetooth: Use IPC instead of deprecated IPM
Use IPC in bt-hci-bus property instead of deprecated IPM.

Signed-off-by: Ioannis Damigos <ioannis.damigos.uj@renesas.com>
2025-08-26 04:07:10 +02:00
Emil Gydesen
23e0d30a39 Bluetooth: ISO: Expand defines and their text
Add a few missing defines for limits used in ISO.
Add missing units and provide the value in both
hex and decimal (with units) for easier-to-read support.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-08-25 17:50:33 +02:00
Erwan Gouriou
4cd7d139fa tests: flash: Enable test on stm32n6570_dk
Since no internal flash is available, provide the right configuration
so the test can run on external flash for stm32n6570_dk.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2025-08-25 17:50:11 +02:00
Erwan Gouriou
b49fa46d9d drivers: flash: stm32 o/xspi: Implement get_size()
This api was missing from these driver. Add it.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2025-08-25 17:50:11 +02:00
Erwan Gouriou
c74aaabaf6 drivers: flash: stm32 xspi: Flash has explicit erase
Select FLASH_HAS_EXPLICIT_ERASE for STM32 XSPI driver.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2025-08-25 17:50:11 +02:00
Erwan Gouriou
bffe74e5e8 tests: clock_control: stm32l0: Fix dts build due to missing hsi-div
Following introduction of hsi-div on L0, upate hsi description on l0.
Since this description is not compatible with l1 series anymore add a
dedicated l0 test variant and matching overlay.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2025-08-25 17:50:11 +02:00
Emil Gydesen
62c8ca3498 Bluetooth: CAP: Shell: Print generated broadcast ID
Since the broadcast ID is generated at runtime, it is nice
to get it printed so that it can be shared.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-08-25 17:49:55 +02:00
Emil Gydesen
bfaa1169e8 Bluetooth: BAP: Shell: Print generated broadcast ID
Since the broadcast ID is generated at runtime, it is nice
to get it printed so that it can be shared.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-08-25 17:49:55 +02:00
Emil Gydesen
7ec51764d0 Bluetooth: BAP: Shell: Print broadcast ID and broadcast name when scanning
When scanning, the broadcast_scan_recv now prints the broadcast ID
and the broadcast name (if found). Without this, it is not possible
to use the shell to scan for an unknown broadcast ID or broadcast
name.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-08-25 17:49:55 +02:00
Emil Gydesen
5416b3a182 doc: Bluetooth: GAP: Shell: Remove reference to name for adv
The adv-create command no longer takes a name, and the shell
documentation has been updated to reflect that.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-08-25 17:49:55 +02:00
Emil Gydesen
555ebf93ba doc: Bluetooth: CAP: Shell: Remove reference to name for adv
The adv-create command no longer takes a name, and the shell
documentation has been updated to reflect that. Instead the
device name can be added via the adv-data command.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-08-25 17:49:55 +02:00
Jonas Spinner
da75828459 net: gptp: fix clock accuracy description
Previously, the Kconfig option `NET_GPTP_CLOCK_ACCURACY_2_5MS` had a
incorrect description "1.5ms".

Signed-off-by: Jonas Spinner <jonas.spinner@burkert.com>
2025-08-25 17:49:39 +02:00
Fabian Blatz
9cc01806c6 doc: Fix anchor element for Kconfig symbol location
Fixes the element href assignment of the Kconfig symbol generation.

Signed-off-by: Fabian Blatz <fabianblatz@gmail.com>
2025-08-25 15:33:12 +02:00
Adrian Bonislawski
b82c44ce20 boards: intel_adsp: set correct stack size for ACE30_WCL
set correct stack size for ACE30_WCL

Signed-off-by: Adrian Bonislawski <adrian.bonislawski@intel.com>
2025-08-25 15:33:00 +02:00
Fin Maaß
57c4a5572a drivers: ethernet: remove select MDIO
remove `select MDIO` from the
ethernet drivers, that don't directly use mdio
and only use the ethernet phy api, now that the
phys select MDIO

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-08-25 15:32:38 +02:00
Fin Maaß
e053f1aad5 drivers: ethernet: phy: select GPIO
devices on a bus are recomended to
select its needed drivers, apply this to the eth phys
that need gpios, so that they just work by
enableing the device in the dts.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-08-25 15:32:38 +02:00
Fin Maaß
f5bbdaf8e7 drivers: ethernet: phy: select MDIO
devices on a bus are recomended to
select its protocol, apply this to the eth phys
on the mdio bus, so that they just work by
enableing the device in the dts.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-08-25 15:32:38 +02:00
Tim Lin
c4ddc85e69 soc: it51xxx: Disable default 15K pull-down on GPF4/GPF5
When GPIOF4 and GPIOF5 are not used as USB alternate function,
the default 15K pull-down should be disabled.

Signed-off-by: Tim Lin <tim2.lin@ite.corp-partner.google.com>
2025-08-25 13:32:58 +02:00
Armando Visconti
03f20f9712 rtio: Add Flush completion queue API
Add API to flush completion queue.

Signed-off-by: Armando Visconti <armando.visconti@st.com>
2025-08-25 13:32:11 +02:00
Sven Ginka
ddc4f5f0be drivers: ethernet: sy1xx: fix random mac
before that commit, random mac was used even when defining
zephyr,random-mac-address to false.

Signed-off-by: Sven Ginka <s.ginka@sensry.de>
2025-08-25 13:32:03 +02:00
Sven Ginka
a79e986e03 drivers: ethernet: sy1xx: fix warning
casting the address to uint32_t removes the compiler warning.

Signed-off-by: Sven Ginka <s.ginka@sensry.de>
2025-08-25 13:32:03 +02:00
Sven Ginka
63299bb68b drivers: ethernet: sy1xx: fix static prototype
removed invalid arguments.

Signed-off-by: Sven Ginka <s.ginka@sensry.de>
2025-08-25 13:32:03 +02:00
Mark Wang
3544546356 bluetooth: a2dp: implement the get_all_capabilities
From avdtp spec, the get_all_capablities should be used if the avdtp
version is v1.3, otherwise the get_capabilities should be used.

Signed-off-by: Mark Wang <yichang.wang@nxp.com>
2025-08-25 13:31:55 +02:00
Mark Wang
d8f35a5baa bluetooth: sdp: add avdtp protocol
get the avdtp version through the bt_sdp_get_proto_param

Signed-off-by: Mark Wang <yichang.wang@nxp.com>
2025-08-25 13:31:55 +02:00
Benjamin Cabé
88de138290 include: gnss: dt-bindings: remove unused header file
This file contains macro definitions for baudrates that are not needed ;
probably leftover from an earlier iteration of the binding that used an
enum for the baudrate(?)

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-08-25 11:39:58 +02:00
Alessandro Manganaro
8c11033f59 dts: arm: st: wba: temporary fix to build stm32wba5x boards
Due to a mismatch in naming of debug jtrst pin name
(compared to hal_stm32) all boards based on stm32wba5x
are not compiling.
This temporary fix will solve this issue until a systematic
approach will be put in place.

Signed-off-by: Alessandro Manganaro <alessandro.manganaro@st.com>
2025-08-25 11:39:50 +02:00
Emil Gydesen
c9e1725665 Bluetooth: GATT: ASSERT instead of LOG_DBG for write length check
In bt_gatt_write_without_response_cb there is a check for
write != length. However since the call to bt_att_create_pdu
should ensure that this is possible, this should never happen.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-08-25 11:39:42 +02:00
Emil Gydesen
04a15510a9 Bluetooth: ASCS: Use LOG_DBG when failing to alloc buffer for notification
Since there is a retry mechanism implement, this is not something
that the user needs to be warned about.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-08-25 11:39:42 +02:00
Emil Gydesen
d3ffdf4b24 Bluetooth: GATT: Modify some LOG_WRN/ERR to LOG_DBG
When an API function returns an appropriate error code,
LOG_DBG is better suited than LOG_WRN or LOG_ERR as the
caller can handle the return value.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-08-25 11:39:42 +02:00
Emil Gydesen
ace3a60137 Bluetooth: ATT: Change LOG_ERR to DBG when failing to allocate buffer
For user-initiated requests like notifications, read and write
requests, there will be an error code, so there does not need to be
a generic LOG_ERR if these fail to be allocated.

However if the response or (indication) confirmation PDUs fail
to be allocated, these should still be logged as errors.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-08-25 11:39:42 +02:00
Emil Gydesen
00d4ab1c9c Bluetooth: Conn: LOG_DBG for buffer alloc fail
Use LOG_DBG rather than LOG_WRN, as that is an expected
scenario when using K_NO_WAIT (e.g. when sending
GATT notifications), and it is better for higher layers
to determine if this is indeed an error.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-08-25 11:39:42 +02:00
Filip Stojanovic
2ccab02419 boards: weact: blackpill_h523ce: Add board support
This adds support for the WeAct blackpill_h523ce board.

Signed-off-by: Filip Stojanovic <filipembedded@gmail.com>
2025-08-25 11:39:32 +02:00
Filip Stojanovic
034673bc89 dts: arm: st: add stm32h523Xe support
Provide support for STM32H523XE.

Signed-off-by: Filip Stojanovic <filipembedded@gmail.com>
2025-08-25 11:39:32 +02:00
Mikhail Siomin
9135918249 soc: st: stm32: fix ccm region name in linker
Use the region name token to describe the location of sections.
Because for some linkers (e.g. llvm lld) region_name and "region_name"
are not the same.

Signed-off-by: Mikhail Siomin <victorovich.01@mail.ru>
2025-08-25 09:13:33 +02:00
Pavel Vasilyev
d59af08b19 bluetooth: host: gatt: Compile out att cmds for long write proc
`bt_att_recv`, which parses ATT PDUs, already contains code that
responds with `BT_ATT_ERR_NOT_SUPPORTED` if a given handler is not
implemented.

Therefore, `att_prepare_write_req` and `att_exec_write_req` handlers do
not need to explicitly return `BT_ATT_ERR_NOT_SUPPORTED` when
`CONFIG_BT_ATT_PREPARE_COUNT` is set to 0 and can be completely removed.

Signed-off-by: Pavel Vasilyev <pavel.vasilyev@nordicsemi.no>
2025-08-25 09:13:22 +02:00
Utsav Munendra
030b9f3597 drivers: mspi: mspi_dw: Fix compilation with CONFIG_MSPI_XIP disabled
Move `api_timing_config()` impl outside of the block gated behind
CONFIG_MSPI_XIP.

Signed-off-by: Utsav Munendra <utsavm@meta.com>
2025-08-25 09:12:45 +02:00
Peter Mitsis
9bdb17aa32 tests: Add test for IPI work items
Adds a simple test case for IPI work items.

Signed-off-by: Peter Mitsis <peter.mitsis@intel.com>
2025-08-25 09:12:31 +02:00
Peter Mitsis
17ba7e7383 doc: Add IPI work item
Updates the SMP documentation to include notes on IPI work items.

Signed-off-by: Peter Mitsis <peter.mitsis@intel.com>
2025-08-25 09:12:31 +02:00
Peter Mitsis
0111cc9030 kernel: Execute function on another CPU
Adds infrastructure to allow the execution of a function on
a different CPU. The function to be executed on another CPU
runs within the IPI handler at ISR level (and is thus subject
to those constraints).

Signed-off-by: Peter Mitsis <peter.mitsis@intel.com>
2025-08-25 09:12:31 +02:00
Alen Karnil
4363d14bef dts: arm: st: stm32f303: fix I2C3 address in nodename
Correct stm32f303 I2C3 address in nodename.

Signed-off-by: Alen Karnil <alankarnil@gmail.com>
2025-08-25 09:12:23 +02:00
Benjamin Cabé
5a1065c37f scripts: ci: differentiate warnings from failures in compliance_check
We have a few checks that report warnings, and for some of them it's
actually the _only_ type of failure they report, so it can be confusing
when the output of check_compliance.py says the "check failed" and lists
all the things that are effectively warnings as "ERROR"s.
This commit makes the output more clear by differentiating between
warnings and actual errors, both when printing out individual failures,
but also when printing the summary for each test case (ie. a test case
is said to be "failing" only when it has at least one error, and is only
showing up as having warnings if it only contains... warnings).

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-08-25 09:12:13 +02:00
Johann Fischer
617b71bc17 doc: update pyOCD repository links
The repository has been moved to a new organization, see
https://pyocd.io/. Update links to the pyOCD repository.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-08-24 20:04:29 +02:00
Mahesh Mahadevan
bd8a2d3db4 soc: rw: Fix build failures when include RTC header files
Include the RTC header files only for when Standby power
mode is enabled.

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2025-08-24 00:07:55 -04:00
Mahesh Mahadevan
9cb38ecf58 drivers: mcux_os_timer: Fix build failure
z_nxp_os_timer_ignore_timer_wakeup() was only added
when Standby mode was enabled. Move this function
out of the conditional section.

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2025-08-24 00:07:55 -04:00
Luis Ubieda
5945a3fcd1 ethernet: nxp: Scrub tx_header
As it's not being used anywhere in the driver. Moreover, the extra
unref would trigger a double-free assert (#94311); which is what
motivated this cleanup.

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-08-23 05:11:35 +02:00
Pete Johanson
9e7313d982 drivers: memc: MAX32 memc linker support improvements
In order to allow the linker to place certain objects into external RAM,
e.g. heaps, adjust the memc initialization level to PRE_KERNEL_1, allowing
clock control and memc to come up before priority objects like heaps are
initialized.

Signed-off-by: Pete Johanson <pete.johanson@analog.com>
2025-08-23 05:11:25 +02:00
David Leach
6ae130b4a5 manifest: hal_nxp: clean up unneeded files
Last update included files not needed in the NXP HAL

Signed-off-by: David Leach <david.leach@nxp.com>
2025-08-23 05:11:16 +02:00
Sylvio Alves
7305e109fb bluetooth: esp32: make LE discardability length-safe
Determine event discardability after parsing the HCI header and require
at least one byte before reading the LE subevent. This removes a possible
OOB read on malformed/short LE Meta events. Also mark LE Extended
Advertising Report as discardable, matching legacy Advertising Report to
reduce RX pool pressure during heavy scanning.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2025-08-23 05:11:05 +02:00
Sylvio Alves
089df60140 bluetooth: esp32: fix VHCI semaphore misuse in HCI send path
The TX flow control semaphore was initialized with a count of 1 and
released again after every bt_esp32_send() call. This broke the VHCI
flow control contract and could allow sending more packets than the
controller advertised.

This prevents host/controller overruns and ensures proper synchronization
with the ESP32 VHCI interface.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2025-08-23 05:11:05 +02:00
Camille BAUD
71be3c2823 dts: bflb: fix bad uart device address
4 didnt become a 2 like it should have

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-08-23 05:10:56 +02:00
Kamil Krzyżanowski
db15de5274 drivers: serial: stm32: fix race condition when both APIs enabled
Fix a bug where if CONFIG_UART_ASYNC_API was enabled in the config, the
interrupt flags would get cleared after the interrupt driven API callback
finished executing, causing data loss if data happened to arrive after the
callback but before the flags were cleared.

Signed-off-by: Kamil Krzyżanowski <kamnxt@kamnxt.com>
2025-08-22 16:51:17 +02:00
Benjamin Cabé
6191f131d4 include: bindesc: doc: doxygen clean-ups
Re-organize groups, including addition of a top level "Binary
Descriptors" group that becomes the main entry in OS Services

Add missing documentation to some API (bindesc_entry, with public
fields, and bindesc_handle, opaque)

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-08-22 16:46:43 +02:00
Piotr Kosycarz
2a17181576 tests: drivers: uart: uart_error: Add missing pull up for nrf53
Add missing pull up to the overlay file.

Signed-off-by: Piotr Kosycarz <piotr.kosycarz@nordicsemi.no>
2025-08-22 16:46:35 +02:00
Benjamin Cabé
b69c9c1f10 net: include: icmp: doxygen fixes
Group name was incorrectly used as a brief description ;
used the opportunity to fully clean-up file and group
definition

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-08-22 16:46:29 +02:00
Tom Burdick
9c27d72922 rtio: Add a context pool
Adds a context pool that can be used when a number of threads may be
dynamically created to use with RTIO. While the pool has a small cost to
it, the cost of verifying a statically declared kobject likely makes it
worth avoiding dynamically allocating these with the typical
kobject_alloc method. Instead this arena style pool of objects can be
used where the kobject validation uses the gperf hash created at build
time.

Signed-off-by: Tom Burdick <thomas.burdick@intel.com>
2025-08-22 16:45:53 +02:00
Sebastian Głąb
80ab4b8100 boards: nordic: nrf54l15dk: Extend ext memory node with reset GPIO
Extend external memory node with 'reset-gpios' property.
When this property is defined, driver will reset
the memory at startup.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
2025-08-22 14:51:02 +02:00
Benjamin Cabé
71722b2d40 include: drivers: espi: doxygen comments for espi_evt_data_pvt
follow up to commit 5e3f1dbaa that introduced espi_evt_data_pvt without
full doxygen comments for it.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-08-22 14:50:54 +02:00
Mario Paja
82ea32bd6e dts: st: use dma defines to describe sai dma configs
Use DMA defines to describe SAI DMA configuration.

Signed-off-by: Mario Paja <mariopaja@hotmail.com>
2025-08-22 14:50:47 +02:00
Pavel Vasilyev
50928fc517 bluetooth: host: remove bt_ prefix from internal functions
Remove the bt_ prefix from internal functions to avoid confusion when
reading code.

Signed-off-by: Pavel Vasilyev <pavel.vasilyev@nordicsemi.no>
2025-08-22 14:50:38 +02:00
Pavel Vasilyev
dfe05dd0d7 bluetooth: host: prefix API functions with bt_
Prefix API functions of a module with bt_ to avoid confusion when
reading code.

Signed-off-by: Pavel Vasilyev <pavel.vasilyev@nordicsemi.no>
2025-08-22 14:50:38 +02:00
Pavel Vasilyev
c21e613fa9 bluetooth: host: mark internal functions and variables as static
Mark functions and variables as static when not used outside a unit.

Signed-off-by: Pavel Vasilyev <pavel.vasilyev@nordicsemi.no>
2025-08-22 14:50:38 +02:00
Marek Porwisz
c846939548 net: openthread: Fix exiting diag when transmission is ongoing
Crash was observed if "diag stop" was invoked during the transmission.
The issue was caused by an update to otPlatRadioSleep that made it
compilant with the documentation and not allowing direct Transmit to
Sleep transition.
The transmission result was forwarded to OpenThread making it crash due
to an invalid state.

Signed-off-by: Marek Porwisz <marek.porwisz@nordicsemi.no>
2025-08-22 14:50:24 +02:00
Benjamin Cabé
f7f84f0a46 include: drivers: misc: Add doxygen docs for NXP FlexIO driver
Add missing doxygen docs for the NXP FlexIO driver and "mount" into the
Misc. drivers doxygen group.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-08-22 12:57:03 +02:00
Mario Paja
c83703c30f samples: i2s: output: add nucleo_n657x0
Add nucleo_n657x0 in samples/drivers/i2s/output

Signed-off-by: Mario Paja <mariopaja@hotmail.com>
2025-08-22 12:56:57 +02:00
Mario Paja
d9aacfa037 drivers: i2s: add sai support for stm32n6xx
This commit adds specific DMA configuration for STM32N6xx.
STM32N6xx uses GPDMA for SAI as STM32U5xx/U3xx/H5xx/H7RS etc.
In constrast to these series, STM32N6xx DMA requires a secure
and privileged channel.

Signed-off-by: Mario Paja <mariopaja@hotmail.com>
2025-08-22 12:56:57 +02:00
Mario Paja
3ef3de0d78 dts: st: n6: add SAI1 A/B & SAI2 A/B nodes
Add SAI1 & SAI2 nodes to STM32N6xx series

Signed-off-by: Mario Paja <mariopaja@hotmail.com>
2025-08-22 12:56:57 +02:00
Guillaume Gautier
12ce564915 boards: st: nucleo_c031c6: use asynchronous clock for adc
Use an asynchronous clock with an increased prescaler value for the ADC of
the Nucleo C031C6 so that the adc_sequence sample runs correctly.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2025-08-22 12:45:01 +02:00
Henrik Brix Andersen
04f88f2be1 samples: boards: st: backup_sram: switch to Zephyr cache management API
Switch the STM32 Backup SRAM sample to use the Zephyr cache management API.

Signed-off-by: Henrik Brix Andersen <henrik@brixandersen.dk>
2025-08-22 12:38:20 +02:00
Benjamin Cabé
87138ea36e include: drivers: flash: andes: fix doxygen for Andes XIP flash exops
Use proper Doxygen commands so that 100% of the
andes_flash_xip_api_ex.h header is documented.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-08-22 12:38:11 +02:00
Benjamin Cabé
bf6b2366c7 include: drivers: flash: npcx: fix doxygen for NPCX flash exops
Use proper Doxygen commands so that 100% of the
npcx_flash_api_ex.h header is documented.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-08-22 12:38:11 +02:00
Benjamin Cabé
aa8e51622b include: drivers: flash: ra: fix doxygen for Renesas RA flash exops
Use proper Doxygen commands so that 100% of the
ra_flash_api_extensions.h header is documented.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-08-22 12:38:11 +02:00
Benjamin Cabé
12c705e65b include: drivers: flash: rts5912: fix doxygen for rts5912 flash exops
Use proper Doxygen commands so that 100% of the rts5912_flash_api_ex.h
header is documented.

Note that this uncovers weird usage of in vs. out parameters in the
various functions and might be worth a cleanup as a follow-up.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-08-22 12:38:11 +02:00
Benjamin Cabé
d990c20851 include: drivers: flash: stm32: fix doxygen for stm32 flash exops
Use proper Doxygen commands so that 100% of the
stm32_flash_api_extensions.h header is documented.
Removed unnecessary #ifdefs since enums needed not to be guarded from
declaration in the context of the header file.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-08-22 12:38:11 +02:00
Benjamin Cabé
f0f4198cc0 include: drivers: flash: Add Doxygen group for flash exops
Add a new Doxygen group for vendor-specific extended operations so that
they can all be properly documented and show up in one place.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-08-22 12:38:11 +02:00
Jun Lin
b30d2ac07c ec_host_cmd: shi: npcx: change log level for some error messages
It was observed in a project that when an error transaction occurs,
printing the error message can delay resetting the SHI state machine and
initializing the output buffer, which may cause the subsequent
transaction to fail, especially during stress tests involving heavy host
command communication.
This commit changes some error log level from ERR to DBG to prevent the
condition above from happening.
Also change the default debug level for the SHI driver to LOG_LEVEL_ERR.

Signed-off-by: Jun Lin <CHLin56@nuvoton.com>
2025-08-22 12:37:17 +02:00
Jakub Zymelka
20cb820648 drivers: adc: nrfx_saadc: Fix for negative samples correction
Increment pointer only when channel was selected.

Signed-off-by: Jakub Zymelka <jakub.zymelka@nordicsemi.no>
2025-08-22 12:37:06 +02:00
Anthony Williams
7293068571 drivers: flash: nrf_qspi_nor: Implement fix for NRF5340 Errata 159
Add a workaround for `NRF53_ERRATA_159_ENABLE_WORKAROUND`
instead of simply printing an error and failing the transaction.

Signed-off-by: Anthony Williams <anthony289478@gmail.com>
2025-08-22 12:36:27 +02:00
Mathieu CHOPLAIN
4f18ccd73b tests: ram_context_for_isr: exclude STM32C0 boards
The test attempts to register an ISR for an IRQ
used by a device driver on this platform.
This breaks builds of the test and makes CI red.

Temporarily exclude all C0-based platforms from
the test until a clean solution is implemented.

Signed-off-by: Mathieu CHOPLAIN <mathieu.choplain@st.com>
2025-08-22 12:36:18 +02:00
Lyle Zhu
f772e3f21d tests: Bluetooth: Add test case test_sdp_discover_with_range
Add a test case test_sdp_discover_with_range to test the ssa request
with attribute ID range with the following test steps.
Step 1, Discover all included attribute IDs,
Step 2, Set the start of range from 0 to (max value + 9) of the
        discovered attribute ID,
Step 3, Set the end of range from start of range to (max value + 9)
        of the discovered attribute ID.
step 4, Send SSA request with the specific attribute ID range,
Step 5, check the discovery result according to the range,
Step 6, repeat step 4 - 5 until the range to
        (max value + 9, max value + 9).

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-08-22 12:36:09 +02:00
Lyle Zhu
de0b53578a Bluetooth: SDP: Fix ssa discovery issue caused by setting range
If the range of the service search attribute request is set and the
start of the range is not 0x0000, the response data of the request is
not valid. It is caused by the data element sequence has not be added
to response data. The client cannot parse the response data properly.

The root cause of this issue is that the total length of service
record will be added only when adding the first attribute of service
record.

Fix the issue by reset the `state.last_att` and `state.last_att_index`
if the index of current record is not same with `state.current_svc`.

And do not update `state.last_att`, `state.last_att_index`, and
`state.current_svc` in the function `select_attrs()`.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-08-22 12:36:09 +02:00
Lyle Zhu
bb159e9d08 Bluetooth: SDP: Fix issue that RX buf is used for others discovery
In current implementation, the received buffer is incorrectly used for
other SDP discover requests.

Release the RX buffer when the SDP discovery is done. And allocate the
new RX buffer from the pool of the new SDP discovery request.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-08-22 12:36:01 +02:00
Tanguy Raufflet
1ab9ef8c3a stm32mp257f_ev1_stm32mp257fxx_m33.dts: add spi node
This commit adds the spi3 node to the device tree for the
STM32MP257F-EV1 board. This node corresponds to the spi exposed by the
GPIO expansion connector [1].

[1]: https://wiki.st.com/stm32mpu/wiki/STM32MP257x-EV1_-_hardware_description

Signed-off-by: Tanguy Raufflet <tanguy.raufflet@savoirfairelinux.com>
2025-08-22 12:35:56 +02:00
Tanguy Raufflet
769219b778 boards: st: stm32mp257f_ev1_stm32mp257fxx_m33.yaml: update documentation
The SPI is now supported.

Signed-off-by: Tanguy Raufflet <tanguy.raufflet@savoirfairelinux.com>
2025-08-22 12:35:56 +02:00
Tanguy Raufflet
eb0f0530eb dts: arm: st: stm32mp2_m33.dtsi: add spi nodes
Add SPI nodes in non-secure context to dtsi.

Signed-off-by: Tanguy Raufflet <tanguy.raufflet@savoirfairelinux.com>
2025-08-22 12:35:56 +02:00
Tanguy Raufflet
9532ee7803 drivers: clock_stm32_ll_mp2: add spi clock
Add SPI clocks rate reading to the STM32MP2 clock driver.

Signed-off-by: Tanguy Raufflet <tanguy.raufflet@savoirfairelinux.com>
2025-08-22 12:35:56 +02:00
Tanguy Raufflet
786d770b46 dt-bindings: stm32mp2_clock.h: add clock for spi peripherals
Add clock bindings for SPI peripherals for the STM32MP2 series.

Signed-off-by: Tanguy Raufflet <tanguy.raufflet@savoirfairelinux.com>
2025-08-22 12:35:56 +02:00
Taeyoun Park
cb4c836e84 boards: st: Enable CAN1 and CAN2 on nucleo_f207zg
Enable CAN1 and CAN2 in nucleo_f207zg.dts. Update supported
features in YAML and the board documentation accordingly.

Signed-off-by: Taeyoun Park <nvnv0422@gmail.com>
2025-08-22 12:35:50 +02:00
Taeyoun Park
7ccbd9f396 dts: arm: Add CAN1 and CAN2 nodes to stm32f207
Add CAN1 and CAN2 device tree nodes for STM32F207

Signed-off-by: Taeyoun Park <nvnv0422@gmail.com>
2025-08-22 12:35:50 +02:00
Krzysztof Chruściński
5e838284ab drivers: serial: nrfx_uarte: Add support for device deinit
Add device deinit function. Support is optional as it is not widely
used and it enables pinctrl sleep state so it impacts memory footprint.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-08-22 12:35:42 +02:00
Krzysztof Chruściński
4b374ec7f5 drivers: pinctrl: Allow keeping pinctrl sleep state
When PM or PM_DEVICE is enabled pinctrl sleep state is using for
device suspension. However, there are cases where power management is
not used but we still want to be able to put pins to sleep state, e.g.
device deinit.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-08-22 12:35:42 +02:00
Garrett L. Ward
d8d90c087b scripts: west: runners: stm32cubeprogrammer: fix path lookup on macOS
On Windows and Linux, the stm32cubeprogrammer runner will use
STM32_Programmer_CLI from PATH if it is available, but this was not
implemented on macOS. Add PATH lookup for macOS as well, using the same
approach as Windows and Linux.

Fixes zephyrproject-rtos/zephyr#93056

Signed-off-by: Garrett L. Ward <glward@glward.net>
2025-08-22 12:35:34 +02:00
Jake Greaves
7ae90a6ae4 drivers: clock_control: STM32U5XX wake up clocks
Disable wake-up source clocks for STM32U5XX if not enabled by DTS.

Signed-off-by: Jake Greaves <jake.greaves@analog.com>
2025-08-22 12:35:25 +02:00
Benjamin Cabé
bd98c836eb include: drivers: video: doxygen fixes for video-controls.h
A bit of doxygen love to this header to improve documentation coverage,
mainly focusing on missing documentation for a few enumerations, as well
as making sure javadoc-style comments are used where appropriate.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-08-22 09:45:57 +02:00
Mario Paja
c70aaee863 drivers: i2s: stm32_sai fix drain and stop of tx stream
Fix two issues with the SAI TX Stream.

1. Drain command does not release the last memory buffer
2. TX Stream status does not change to READY after STOPPING

Signed-off-by: Mario Paja <mariopaja@hotmail.com>
2025-08-22 09:45:51 +02:00
CHEN Xing
ed5b9cffd2 drivers: counter: sam_tc: Big fix for alarm 1
Issue: the alarm 1 do not generate interrupt
There are three compare registers in a SAM TC channel:
RA --> alarm 0
RB --> alarm 1
RC --> top_value
By default the RB/TOIB was configured as an input and no longer
generates interrupt.
Set the direction of TIOB to output for alarm 1 interrupt.

Fixes zephyrproject-rtos/zephyr#85018

Signed-off-by: CHEN Xing <xing.chen@microchip.com>
2025-08-22 09:45:41 +02:00
Keith Packard
cc93349925 west: Add cmsis-dsp fix for shifting by negative amounts
This patch has been accepted upstream https://github.com/ARM-software/CMSIS-DSP/pull/265 and
into the Zephyr module https://github.com/zephyrproject-rtos/cmsis-dsp/pull/7

This PR is ready for review and merging.

Signed-off-by: Keith Packard <keithp@keithp.com>
2025-08-22 09:45:26 +02:00
Yves Wang
066a2f472f tests: watchdog: Add nxp mcxn4x and ke1xz for ewm
Support frdm_mcxn947 and frdm_ke17z for watchdog reset_none_ewm

Signed-off-by: Yves Wang <zhengjia.wang@nxp.com>
2025-08-22 09:45:18 +02:00
Yves Wang
d7b219cc34 dts: nxp: add ewm for mcxnx4x and ke1xz
Add ewm peripheral for nxp mcxnx4x and ke1xz.
Attach xtal32k to ewm for frdm_mcxn947.

Signed-off-by: Yves Wang <zhengjia.wang@nxp.com>
2025-08-22 09:45:18 +02:00
Yves Wang
201f70bfa9 drivers: watchdog: Make clock divider optional
Some SoCs did not provide ewm clock divider

Signed-off-by: Yves Wang <zhengjia.wang@nxp.com>
2025-08-22 09:45:18 +02:00
Andrej Butok
9a48044906 boards: nxp: mimxrt1060: fix flash module type for Rev. C.
- Fixes the flash module type used for MIMXRT1060-EVKC.
  It has the 16MB w25q128jw flash module
- Fixes flash driver initialization failure for MIMXRT1060-EVKC.
- Older MIMXRT1060-EVK/EVKB have the 8MB is25wp064 flash module.

Signed-off-by: Andrej Butok <andrey.butok@nxp.com>
2025-08-22 06:53:20 +02:00
Neil Chen
e1210ba709 boards: nxp: frdm_mcxa156: Add arduino_gpio for frdm_mcxa153 board
Support arduino_gpio example for NXP frdm_mcxa153 board.
Test using tests/drivers/gpio/gpio_basic_api.

Signed-off-by: Neil Chen <cheng.chen_1@nxp.com>
2025-08-22 06:53:12 +02:00
Neil Chen
183542baff driver: gpio: update gpio_mcux.c driver
GPIO interrupts do not work on MCXA, MCXA has ICR register but feature
FSL_FEATURE_GPIO_HAS_INTERRUPT_CHANNEL_SELECT value is 0, can't only use
this feature to support ICR. So adjust feature judgment.

Signed-off-by: Neil Chen <cheng.chen_1@nxp.com>
2025-08-22 06:53:12 +02:00
Javier Santos
09d79795e1 boards: nxp: frdm_mcxa156, frdm_mcxa166, frdm_mcxa276: fix led2 color
The red LED repeats twice, so it changes to blue.

Signed-off-by: Javier Santos <jasr93@outlook.es>
2025-08-22 06:53:02 +02:00
Declan Snyder
ee960a819e dts: nxp: rt7xx: Use DT spec recommended node names
Use node names as recommended by DT spec.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-08-22 06:52:51 +02:00
Declan Snyder
8167efa28b soc: nxp: imxrt7xx: Split soc code files
Instead of one soc.c with all the code, split into files for each area
of concern.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-08-22 06:52:51 +02:00
Declan Snyder
6cb2bf551d soc: imxrt7xx: Split Kconfig files to CPU folders
For better organization, split the Kconfig files into one per each CPU.

Also, there was a bug where MFD was made to depend on flexcomm being
enabled, when really it probably meant to just default y if flexcomm is
enabled.

Leave Kconfig.soc in one file for the SOC.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-08-22 06:52:51 +02:00
Declan Snyder
40edefb4cf drivers: mcux_os_timer: Optimize counter timeout set
We can both optimize and clean up the code by using short circuit logic
and static variables instead of stack variables.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-08-22 06:52:42 +02:00
Declan Snyder
513b1645e0 drivers: mcux_os_timer: Refactor ISR
Refactor ISR by:
1) making a helper function to put the tickful calculation in, to reduce
   an indentation level and cognitively separate this case while reading
2) Rewrite the calculations to simplify them. More info on that below.

Math changes:
- In the ISR, there was a variable called "now" which represented the
current cycle count of the timer. last_count was updated using a
calculation based on the number of elapsed ticks
and the hardware cycles per second value. However, this is
redundant because mathematically, this is equivalent to "now". So the
variable can just be set to now.
Proof is that the previous calculation was (in programming language):
(1) last_count = last_count + elapsed_ticks * CYC_PER_TICK
So let's rewrite this as the following to be clear about the different
values we are talking about here (in math language):
(2) count[t] = count[t-1] + elapsed_ticks * CYC_PER_TICK
We calculated elapsed ticks in the function as:
(3) elapsed_ticks = (now - last_count) / CYC_PER_TICK
(4) elapsed_ticks = (now - count[t-1]) / CYC_PER_TICK
Rearranging (2), we see
(5) elapsed_ticks = ( count[t] - count[t-1] ) / CYC_PER_TICK
Substituting this into (4), we get:
(6) ( count[t] - count[t-1] ) / CYC_PER_TICK =
			(now - count[t-1]) / CYC_PER_TICK
Doing simple algebra, you can see we result with:
(7) count[t] = now
So therefore, we can simplify the programming expression to
(8) last_count = now

- The other change is regarding the calculation of the next tick match
  value for tickful kernel mode. The previous calculation was doing:
(1) next = now + CYC_PER_TICK
We know that last_count is equivalent to now, at this point in the code
with the first change:
(2) next = last_count + CYC_PER_TICK
And then, for some reason, we are adding yet another CYC_PER_TICK to
next if (next - now) < MIN_DELAY. The reason for that I do not
understand, but let's write that down:
(3) next - now < MIN_DELAY
Now rewrite (2) as (4) and (3) as (5):
(4) count[t+1] = count[t] + CYC_PER_TICK
(5) count[t+1] - count[t] < MIN_DELAY
And now we substitute (4) into (5):
(6) count[t] + CYC_PER_TICK - count[t] < MIN_DELAY
And simplify:
(7) CYC_PER_TICK < MIN_DELAY
So actually no runtime calculations are needed here, this is a
hardcoding. The reason for this calculation I don't know, but we can
simplify the code.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-08-22 06:52:42 +02:00
Declan Snyder
992f6fb774 mcux_os_timer: Refactor elapsed ticks calculation
There are a couple places where effectively the exact same calculation
is done. Refactor to share code to do this calculation to make it easier
to read, and explode the code to multiple statements to be even easier
to follow the calculation. Compiler will likely optimize the same way
when opt enabled. Rename dticks variable to be more explicit what that
means (elapsed ticks).

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-08-22 06:52:42 +02:00
Declan Snyder
d26f3b41b3 drivers: timer: mcux_os_timer: General refactor
Refactor to remove nesting and consolidate lines of code.

I also ran clang format but that actually did not change very much in
addition to what I had already changed manually.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-08-22 06:52:42 +02:00
Yongxu Wang
341ee11749 modules: hal_nxp: add trdc_1 driver component
Added CONFIG_TRDC_MCUX_TRDC_1 to involve mcux trdc_1 driver

Signed-off-by: Yongxu Wang <yongxu.wang@nxp.com>
2025-08-22 06:52:33 +02:00
Yongxu Wang
c79d8f3347 modules: hal_nxp: set sentinel device driver state as on
Some SoCs such as iMX8ULP and iMX93 use sentinel controller
for secure system management, this change ensures the device
driver is available by default.

Signed-off-by: Yongxu Wang <yongxu.wang@nxp.com>
2025-08-22 06:52:33 +02:00
Yongxu Wang
9a4ab3252d soc: nxp: imx93: m33: enable trdc setting across all execution modes
This update ensures that TRDC settings are correctly applied
when user space is enabled. By default, the M33 core operates
in privileged mode.

However, when user threads are scheduled, the system transitions
to unprivileged mode. The TRDC configuration is adjusted to support
this behavior, maintaining secure and functional access control
for both privileged and unprivileged execution contexts.

Signed-off-by: Yongxu Wang <yongxu.wang@nxp.com>
2025-08-22 06:52:33 +02:00
Zhaoxiang Jin
115b0e0dc8 driver: regulator: Improve nxp vref driver.
1.Remove the code that sets the UTRIM register to 0,
because UTRIM is automatically loaded with a factory-trimmed
value, zeroing will affect the accuracy. Only need to clear
VREF UTRIM[TRIM2V1] at the initialization stage.

2. VREF does not have NXP_VREF_MODE_INTERNAL_REGULATOR mode,
the internal voltage regulator and chop oscillator are used
to suppress power supply noise and reduce voltage offset,
so remove the NXP_VREF_MODE_INTERNAL_REGULATOR mode.
there are only three modes in VREF, the first is the standby
mode (CSR[BUF21EN] = 0, CSR[HI_PWR_LV] = X), the second is
low power mode (CSR[BUF21EN] = 1, CSR[HI_PWR_LV] = 0), and
the third is high power mode (CSR[BUF21EN] = 1, CSR[HI_PWR_LV] = 1).

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-08-22 06:52:21 +02:00
Zhaoxiang Jin
fa348d8e1b dts: bindings/regulator: Add new properties for nxp vref
1. Added new boolean type 'nxp,internal-voltage-regulator-en'
and 'nxp,chop-oscillator-en' properties for 'nxp,vref'.
The user can use these properties to improve the stability
and accuracy of the VREF output voltage.

2. Added properties 'nxp,current-compensation-en' and
'nxp,internal-voltage-regulator-en' and 'nxp,chop-oscillator-en'
for LPC55S3x, MCXN23x, MCXN94x, and MCXW7x VREF node.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-08-22 06:52:21 +02:00
Zhaoxiang Jin
8ffc36ce63 tests: voltage: Improve nxp boards hardware settings
1.The VREFO is internally connected to the ADC channel,
so can change the measurement channel to simplify the
test process.

2.Change the VREF mode to NXP_VREF_MODE_HIGH_POWER as the
'NXP_VREF_MODE_INTERNAL_REGULATOR' mode is removed.

3.Increase ADC sample time to improve ADC accuracy

4.Adjust tolerance-microvolt to a suitable value,
20000uv is a more suitable value for NXP VREF,
the actual VREF tolerance-microvolt can be smaller
than this value, but hardware differences may cause
this case to fail to run on some boards.

5.Add frdm_mcxn236 and frdm_mcxw71 to test platform.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-08-22 06:52:21 +02:00
Zhaoxiang Jin
eb27e42c16 drivers: regulator/pca9420: Correct wrong maximum index.
PCA9420 LDO1 range maximum index is 0x8U not 0x9U.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-08-22 06:52:21 +02:00
Benjamin Cabé
d3f1b82f98 include: drivers: usb: bc12: fix doxygen comments
Trivial fixes to doxygen documentation of BC 1.2 header

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-08-22 03:32:39 +02:00
Duy Nguyen
d2f4497ec7 boards: renesas: ek_ra6m5: added mikrobus and arduino labels
Added mikrobus_serial, mikrobus_i2c, mikrobus_spi, mikrobus_header,
arduino_header, arduino_serial, arduino_i2c and arduino_spi node
labels to EK-RA6M4 device tree board definition, allowing
compatible shield boards to be used.

Signed-off-by: Duy Nguyen <duy.nguyen.xa@renesas.com>
2025-08-22 03:32:26 +02:00
Peter Marheine
a0374a16ec dt-bindings: rp2350: correct PWM names for GPIOs 40..47
The macros for PWM output on these GPIOs had names that referred to PWM
channels that do no exist on this chip- it only has 12 channels, where
channels 8..11 are exposed on both GPIOs 32..39 and 40..47.

Signed-off-by: Peter Marheine <peter@taricorp.net>
2025-08-22 03:32:16 +02:00
Peter Marheine
26ab6d858e soc: rp2350: support PWM channels >8
RP2350 adds four more PWM slices from the eight available on RP2040,
which are only broken out to package pins on RP2350B. This change fixes
the driver to support the correct number of slices on RP2350.

Tested by confirming that PWM can correctly be configured on GPIO 44 of
RP2350B.

Signed-off-by: Peter Marheine <peter@taricorp.net>
2025-08-22 03:32:16 +02:00
Peter Marheine
bc9b80cb02 soc: rp2350: correctly handle GPIOs >31
RP2350 has 48 GPIOs, where only the first 30 are broken out to pins on
RP2350A (same as RP2040) and the remaining 18 are only usable on RP2350B.
This change makes the soc pinctrl driver support GPIOs above 31, where
previously it was impossible to configure GPIOs 32 through 47.

Tested on RP2350B, confirming that GPIO44 can be correctly configured for
PWM.

Signed-off-by: Peter Marheine <peter@taricorp.net>
2025-08-22 03:32:16 +02:00
Robert Lubos
faa507ef6c net: Fix misc Kconfig style issues in networking area
Fix misc Kconfig style issues in networking area.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-08-21 20:12:48 +02:00
Benjamin Cabé
7236e9f45c include: drivers: espi: doxygen housekeeping
Add missing doxygen comments

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-08-21 20:12:25 +02:00
Aditi Bhaskar
3edce47faf samples: drivers: uart: async_api: Remove overlay
- Remove overlay and conf for cyw920829m2evk_0 since it is superfluous

Signed-off-by: Aditi Bhaskar <aditi.bhaskar@infineon.com>
2025-08-21 20:12:15 +02:00
Peter Mitsis
fedbe50b20 portability: cmsis: Base Event Flags on k_event
Updates the implementation of the osEventFlags APIs to use
Zephyr kernel events instead of polling.

Fixes #92899

Signed-off-by: Peter Mitsis <peter.mitsis@intel.com>
2025-08-21 20:11:57 +02:00
Tim Lin
9cf0d669e5 drivers/espi: ite: Use structured evt_data for PVT, PVT2, and PVT3 events
Replace direct assignment of evt.evt_data with structured access via
espi_evt_data_pvt. This change separates the incoming evt_data into
type and data fields.

This update alse includes support for handling PVT, PVT2, and PVT3
events using the structured event data.

Signed-off-by: Tim Lin <tim2.lin@ite.corp-partner.google.com>
2025-08-21 20:11:42 +02:00
Tim Lin
5e3f1dbaa6 drivers/espi: Add structure for evt_data in peripheral PVT events
Introduce a new bit field structure "espi_evt_data_pvt" to represent
the evt_data field in PVT IO related eSPI peripheral events.

With this change, callback functions handling eSPI events can extract
both the data and its associated type from evt_data.

Signed-off-by: Tim Lin <tim2.lin@ite.corp-partner.google.com>
2025-08-21 20:11:42 +02:00
Rory Piper
ea1245eb92 drivers: flash_stm32h7: Fix REAL_FLASH_SIZE_KB size
For devices other than the stm32h745/747/755/757 that use
dual-core cortex-M4/cortex-M7, do not multiply flash
controller size by 2. Single-core stm32h7x devices define
their flash-controllers dtsi as a single area, not two banks.
Use the presence of the bank2-flash-size prop to determine if
this is a dual-core stm3h7x or not.

Signed-off-by: Rory Piper <rory.piper@signal-fire.com>
2025-08-21 20:11:19 +02:00
Benjamin Cabé
071b571ba4 include: mgmt: mcumgr: doc: massive doxygen makeover
This cleans up the doxygen documentation for the MCUmgr subsystem
(consolidated the doxygen groups, added some missing docs, added proper
@name'd sections where appropriate, etc).

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-08-21 18:43:57 +02:00
Philémon Jaermann
917e518e04 dts: arm: Remove AES from the u575
Which does not have HW support for it, as stated by ST here:
https://www.st.com/en/microcontrollers-microprocessors/stm32u575-585.html

"
The STM32U575 portfolio offers from 1 to 2 Mbytes of flash memory
and from 48- to 169-pin packages.
The STM32U585 is available with 2 Mbytes of flash memory and provides
an additional encryption accelerator engine (AES, PKA, and OTFDEC).
"

All the U5 SoC have a hash HW accelerator (even the ones which don't
have crypto support: U535XX, U575XX, U59XXX and U5FXXX).
The hash node is therefore moved directly inside the stm32u5.dtsi.

Signed-off-by: Philémon Jaermann <p.jaermann@gmail.com>
2025-08-21 18:42:47 +02:00
Benjamin Cabé
318989f388 Bluetooth: Mesh: doc: document Health Fault values
add doxygen comments to the Mesh health fault macros

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-08-21 18:42:37 +02:00
Arthur Gay
4008f5c9c2 drivers: disk: sdmmc_stm32: Add API to retrieve SD card CID register
Introduce a new API function in the sdmmc_stm32 driver that allows
applications to access the Card Identification (CID) register of the
SD/MMC card. This functionality, already available in the SPI-based SD
and MMC subsystems, was previously missing from the STM32 SDMMC driver.

This enhancement enables use cases such as verifying the correct SD card
during manufacturing, ensuring that OEMs use the specified SD card, and
preventing mismatches.

Signed-off-by: Arthur Gay <arthur.gay@marshmallow.kids>
2025-08-21 18:42:26 +02:00
Tanguy Raufflet
40d6ee6057 stm32mp257f_ev1_stm32mp257fxx_m33.dts: add i2c node
This commit adds the i2c8 node to the device tree for the
STM32MP257F-EV1 board. This node corresponds to the i2c exposed by the
GPIO expansion connector [1] and not used by the cortex A35.

[1]: https://wiki.st.com/stm32mpu/wiki/STM32MP257x-EV1_-_hardware_description

Signed-off-by: Tanguy Raufflet <tanguy.raufflet@savoirfairelinux.com>
2025-08-21 18:41:59 +02:00
Tanguy Raufflet
2fcab45e93 boards: st: stm32mp257f_ev1_stm32mp257fxx_m33.yaml: update documentation
The I2C is now supported.

Signed-off-by: Tanguy Raufflet <tanguy.raufflet@savoirfairelinux.com>
2025-08-21 18:41:59 +02:00
Tanguy Raufflet
65d3117c3c dts: arm: st: stm32mp2_m33.dtsi: add i2c nodes
Add I2C nodes in non-secure context to dtsi.

Signed-off-by: Tanguy Raufflet <tanguy.raufflet@savoirfairelinux.com>
2025-08-21 18:41:59 +02:00
Tanguy Raufflet
697fe436e9 drivers: i2c: Kconfig.stm32: enable combined interrupt for STM32MP2
According to the STM32MP2 reference manual, the I2C controller uses
a single interrupt line for all events (EV + ERR), so the combined
interrupt must be enabled for the STM32MP2 series.

Signed-off-by: Tanguy Raufflet <tanguy.raufflet@savoirfairelinux.com>
2025-08-21 18:41:59 +02:00
Tanguy Raufflet
457d1ca58f drivers: clock_stm32_ll_mp2: add i2c clock
Add I2C clocks rate reading to the STM32MP2 clock driver.

Signed-off-by: Tanguy Raufflet <tanguy.raufflet@savoirfairelinux.com>
2025-08-21 18:41:59 +02:00
Tanguy Raufflet
256f648c28 dt-bindings: stm32mp2_clock.h: add clock for i2c peripherals
Add clock bindings for I2C peripherals for the STM32MP2 series.

Signed-off-by: Tanguy Raufflet <tanguy.raufflet@savoirfairelinux.com>
2025-08-21 18:41:59 +02:00
Tanguy Raufflet
fb854d3a05 dts: arm: st: stm32mp2_m33.dtsi: add node gpioz
Add GPIO Z node to the device tree for STM32MP2 SoC.

Signed-off-by: Tanguy Raufflet <tanguy.raufflet@savoirfairelinux.com>
2025-08-21 18:41:59 +02:00
Tanguy Raufflet
bec960356c drivers: gpio: stm32: add gpioz support for the STM32MP2
Add support for GPIOZ in the STM32 GPIO driver.

Signed-off-by: Tanguy Raufflet <tanguy.raufflet@savoirfairelinux.com>
2025-08-21 18:41:59 +02:00
Tanguy Raufflet
6325b73739 drivers: pinctrl: stm32: add gpioz pinctrl support for STM32MP2
The STM32MP2 series needs gpioz pinctrl support to be able to use
the GPIOZ pins.

Signed-off-by: Tanguy Raufflet <tanguy.raufflet@savoirfairelinux.com>
2025-08-21 18:41:59 +02:00
Tanguy Raufflet
5046fdb858 modules: hal_stm32: update the HAL to integrate I2C8 clock configuration
Update hal_stm32 to include the modifications allowing to read the I2C8
clock frequency in the same way as I2C1-7.

Signed-off-by: Tanguy Raufflet <tanguy.raufflet@savoirfairelinux.com>
2025-08-21 18:41:59 +02:00
Sylvio Alves
34eb58c043 espressif: fix Kconfig style issues
Fix Kconfig style issues in Espressif files.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2025-08-21 18:41:52 +02:00
Jake Greaves
ba4bb91b1b drivers: serial: STM32U5 series lpuart
Allow LPUART to function and wakeup the device from STOP modes

Signed-off-by: Jake Greaves <jake.greaves@analog.com>
2025-08-21 17:13:36 +02:00
Vinayak Kariappa Chettimada
4ec8980022 Bluetooth: Controller: Fix BT_CTLR_ADV_ADI_IN_SCAN_RSP
Fix to rename BT_CTRL_ADV_ADI_IN_SCAN_RSP to
BT_CTLR_ADV_ADI_IN_SCAN_RSP.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2025-08-21 17:13:30 +02:00
Vinayak Kariappa Chettimada
e4df18b51b Bluetooth: Controller: Fix bt_ctrl to bt_ctlr abbreviation
The Controller is abbreviated as CTLR in contrast to CTRL
which is used in the context of Link Layer Control
Procedures.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2025-08-21 17:13:30 +02:00
Ivan Wagner
f5c99047da samples: boards: st: wkup_pins: add overlay for Nucleo-WBA55CG
Added wakeup pins sample for nucleo-wba55cg board.

Signed-off-by: Ivan Wagner <ivan.wagner@tecinvent.ch>
2025-08-21 17:09:24 +02:00
Ivan Wagner
d8d98aa2e2 soc: st: stm32wba: add support for sys_poweroff
Adding sys_poweroff to WBA family. It switches to standby
(non-retention) mode. It can be woken up by any wakeup source.

Signed-off-by: Ivan Wagner <ivan.wagner@tecinvent.ch>
2025-08-21 17:09:24 +02:00
Ivan Wagner
27cc32a076 dts: arm: st: stm32wba: added power control peripheral
Added support for wakeup pins (events).

Signed-off-by: Ivan Wagner <ivan.wagner@tecinvent.ch>
2025-08-21 17:09:24 +02:00
Sven Ginka
410ce46578 drivers: ethernet: vsc8541: fix init
added missing config.

Signed-off-by: Sven Ginka <s.ginka@sensry.de>
2025-08-21 17:06:21 +02:00
Guillaume Gautier
abe9a57018 tests: drivers: pwm: loopback: add overlays for stm32n6570_dk
Enable two timers and PWM in STM32N6570-DK board dts.
Add overlays to test the pwm_loopback test on STM32N6570-DK board.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2025-08-21 17:05:57 +02:00
Guillaume Gautier
db1453bdb1 tests: drivers: counter: basic_api: add overlays for stm32n6570_dk
Add overlays to run the counter_basic_api test on STM32N6570-DK board.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2025-08-21 17:05:57 +02:00
Guillaume Gautier
78fa4f0142 drivers: clock: n6: prevent clock configuration if NO_SEL is used
For STM32N6, when a device clock source is defined with NO_SEL, do not
configure it.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2025-08-21 17:05:57 +02:00
Guillaume Gautier
c712d1e817 dts: arm: st: n6: add timers nodes
Add all 18 timer instances for STM32N6.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2025-08-21 17:05:57 +02:00
Ayman Elfayoumi
48689343dc Bluetooth: Simplify le_adv_update() function
Closes #94549
Removed vestigial d and d_len variables from le_adv_update()
and replaced them with a single bt_ad wrapper. This simplifies
the function while maintaining identical functionality.

Signed-off-by: Ayman Elfayoumi <aelfayoumi2@gmail.com>
2025-08-21 17:05:51 +02:00
Benjamin Cabé
5c7b7511ad include: drivers: sensor: enhance Doxygen documentation for XBR818
Complete the Doxygen documentation for this sensor driver,
put in sensor_interface_ext group.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-08-21 17:05:39 +02:00
Benjamin Cabé
c9a5b3dd07 include: drivers: sensor: enhance Doxygen documentation for VEAA X-3
Complete the Doxygen documentation for this sensor driver,
put in sensor_interface_ext group.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-08-21 17:05:39 +02:00
Benjamin Cabé
9e421453b6 include: drivers: sensor: enhance Doxygen documentation for TMP11X
Complete the Doxygen documentation for this sensor driver,
put in sensor_interface_ext group.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-08-21 17:05:39 +02:00
Benjamin Cabé
a083467e67 include: drivers: sensor: enhance Doxygen documentation for TMAG5273
Complete the Doxygen documentation for this sensor driver,
put in sensor_interface_ext group.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-08-21 17:05:39 +02:00
Benjamin Cabé
c6d4f08f73 include: drivers: sensor: enhance Doxygen documentation for TLE9104
Complete the Doxygen documentation for this sensor driver,
put in sensor_interface_ext group.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-08-21 17:05:39 +02:00
Benjamin Cabé
dd4021e8cd include: drivers: sensor: enhance Doxygen documentation for TCS3400
Complete the Doxygen documentation for this sensor driver,
put in sensor_interface_ext group.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-08-21 17:05:39 +02:00
Benjamin Cabé
5839060a6c include: drivers: sensor: enhance Doxygen documentation for SGP40
Complete the Doxygen documentation for this sensor driver,
put in sensor_interface_ext group.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-08-21 17:05:39 +02:00
Benjamin Cabé
8dd89aa175 include: drivers: sensor: enhance Doxygen documentation for SCD4X
Complete the Doxygen documentation for this sensor driver,
put in sensor_interface_ext group.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-08-21 17:05:39 +02:00
Benjamin Cabé
cde1bfeeeb include: drivers: sensor: enhance Doxygen documentation for QDEC MCUX
Complete the Doxygen documentation for this sensor driver,
put in sensor_interface_ext group.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-08-21 17:05:39 +02:00
Benjamin Cabé
8fcb347c96 include: drivers: sensor: enhance Doxygen documentation for PAJ7620
Complete the Doxygen documentation for this sensor driver,
put in sensor_interface_ext group.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-08-21 17:05:39 +02:00
Benjamin Cabé
c2a136e13d include: drivers: sensor: enhance Doxygen documentation for MLX90394
Complete the Doxygen documentation for this sensor driver,
put in sensor_interface_ext group.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-08-21 17:05:39 +02:00
Benjamin Cabé
3b4fd4a56c include: drivers: sensor: enhance Doxygen documentation for MH-Z19B
Complete the Doxygen documentation for this sensor driver,
put in sensor_interface_ext group.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-08-21 17:05:39 +02:00
Benjamin Cabé
21089fdd7b include: drivers: sensor: enhance Doxygen documentation for LM95234
Complete the Doxygen documentation for this sensor driver,
put in sensor_interface_ext group.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-08-21 17:05:39 +02:00
Benjamin Cabé
22a5816c00 include: drivers: sensor: enhance Doxygen documentation for Grow R502A
Complete the Doxygen documentation for this sensor driver,
put in sensor_interface_ext group.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-08-21 17:05:39 +02:00
Benjamin Cabé
838e398c71 include: drivers: sensor: enhance Doxygen documentation for FCX-MLDX5
Complete the Doxygen documentation for this sensor driver,
put in sensor_interface_ext group.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-08-21 17:05:39 +02:00
Benjamin Cabé
a9da4ce4b3 include: drivers: sensor: enhance Doxygen documentation for F75303
Complete the Doxygen documentation for this sensor driver,
put in sensor_interface_ext group.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-08-21 17:05:39 +02:00
Benjamin Cabé
6e599fd5e5 include: drivers: sensor: enhance Doxygen documentation for ExplorIR-M
Complete the Doxygen documentation for this sensor driver,
put in sensor_interface_ext group.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-08-21 17:05:39 +02:00
Benjamin Cabé
e64bcda107 include: drivers: sensor: enhance Doxygen documentation for BMP581
Complete the Doxygen documentation for this sensor driver,
put in sensor_interface_ext group.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-08-21 17:05:39 +02:00
Benjamin Cabé
ad929338c2 include: drivers: sensor: enhance Doxygen documentation for BMM350
Complete the Doxygen documentation for this sensor driver,
put in sensor_interface_ext group.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-08-21 17:05:39 +02:00
Benjamin Cabé
0d06b41ea5 include: drivers: sensor: enhance Doxygen documentation for BD8LB600FS
Complete the Doxygen documentation for this sensor driver,
put in sensor_interface_ext group.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-08-21 17:05:39 +02:00
Benjamin Cabé
28ff20fc38 include: drivers: sensor: enhance Doxygen documentation for AFBR-S50
Complete the Doxygen documentation for this sensor driver,
put in sensor_interface_ext group.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-08-21 17:05:39 +02:00
Benjamin Cabé
518f5d295d include: drivers: sensor: enhance Doxygen documentation for ADLTC2990
Complete the Doxygen documentation for the ADLTC2990 sensor driver,
put in sensor_interface_ext group.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-08-21 17:05:39 +02:00
Benjamin Cabé
c1251fa09e include: drivers: sensor: add new Doxygen group for device-specific API
Add a new Doxygen group that can be used to group device-specific API
extensions.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-08-21 17:05:39 +02:00
Marek Matej
48c87b9238 boards: espressif: update images
Update Espressif boards images to use transparent background.

Signed-off-by: Marek Matej <marek.matej@espressif.com>
2025-08-21 17:05:35 +02:00
Marek Matej
df0c723dda boards: espressif: update documentation
Re-work the Espressif supported boards documentation:

* Include repeated parts into included block
* Flatten the headers hierarchy
* Update the board variants usage.
* Fix references

Signed-off-by: Marek Matej <marek.matej@espressif.com>
2025-08-21 17:05:35 +02:00
Benjamin Cabé
6f2d4073f5 drivers: include: pwm: add doxygen for MAX31790
Add a doxygen group for PWM api extensions and mount the now cleaned up
documentation for the MAX31790 driver into it.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-08-21 16:01:33 +02:00
Benjamin Cabé
5fe902f178 include: drivers: video: doxygen fixes
Clean up some redundant or paraphrasing Doxygen comments.
Add documentation for the MIPI CSI-2 data types.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-08-21 16:00:14 +02:00
Guennadi Liakhovetski
414ede3057 xtensa: jump to GDB upon exception
If the GDB stub is enabled the exception handler will jump to the GDB
stub to allow remote GDB debugging.

Signed-off-by: Guennadi Liakhovetski <guennadi.liakhovetski@linux.intel.com>
2025-08-21 15:58:44 +02:00
Kevin Wang
618b6b46a5 tests: drivers: dma: Update board config and overlay for adp_xc7k_ae350
1. Add config and overlay file in test scatter_gather for adp_xc7k_ae350
   and adp_xc7k_ae350_clic to support the test case.
2. Modify the config file in test chan_blen_transfer and loop_transfer
   because the tests do not support the NOCACHE memory configuration,
   the DCACHE configuration needs to be disabled.

Signed-off-by: Kevin Wang <kevinwang821020@google.com>
2025-08-21 15:58:35 +02:00
Kevin Wang
06bec271d9 drivers: dma: atcdmac300: Upgrade atcdmac driver to support series device
1. Upgrade the ATCDMAC driver to make it compatible with multiple
   ATCDMAC series drivers.
2. Rename the driver from ATCDMAC300 to ATCDMACX00.

Signed-off-by: Kevin Wang <kevinwang821020@google.com>
2025-08-21 15:58:35 +02:00
Sebastian Głąb
4330c06a20 boards: nordic: nrf54lm20dk: Extend ext memory node with reset GPIO
Extend external memory node with 'reset-gpios' property.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
2025-08-21 15:46:57 +02:00
Pavel Vasilyev
bcdd74d815 bluetooth: host: gatt: destroy key after hash calc completes
To generate the GATT Database Hash characteristic, the function
`db_hash_setup` is called. It allocates an entry for the AES key that will
be used in the CMAC calculation. Next, `db_hash_update` is called to feed
all GATT database entries into the hash. Finally, `db_hash_finish`
produces the resulting hash.

However, the AES key entry allocated in `db_hash_setup` was not being
destroyed after the hash generation completed. This caused a memory
leak, eventually leading to the error `PSA_ERROR_INSUFFICIENT_MEMORY`
(`-134`).

This commit fixes the issue by destroying the allocated AES key after
the GATT Database Hash calculation is complete, by calling
`psa_destroy_key` in `db_hash_finish`.

Signed-off-by: Pavel Vasilyev <pavel.vasilyev@nordicsemi.no>
2025-08-21 15:46:48 +02:00
Emil Gydesen
f31fd73d23 samples: Bluetooth: BAP: Broadcast sink fix bad USB check
Use CONFIG_USE_USB_AUDIO_OUTPUT instead of CONFIG_USB_DEVICE_AUDIO
when assigning USB streams, as CONFIG_USB_DEVICE_AUDIO is unused
by the sample.

Additionally the BSIM test for the sample also incorrectly used it,
so the Cmakelist.txt file was updated to correctly include sources.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-08-21 15:46:39 +02:00
Ayush Singh
740ce9f2bf boards: beagle: pocketbeagle_2: Add MSPM0 support
PocketBeagle 2 contains an MSPM0L1105 soc which emulates ADC and EEPROM.
It is connected to the AM62xx soc over I2C and SPI.

The initial support just allows building the minimal zephyr sample. Due
to the constraints and the purpose of the SOC, most peripherals should
not be enabled in the main dts.

Signed-off-by: Ayush Singh <ayush@beagleboard.org>
2025-08-21 15:46:28 +02:00
Ayush Singh
ef9baf67e7 drivers: clock_control: mspm0: Check SOC for HFCLK
- The function DL_SYSCTL_setHFCLKSourceHFCLKIN is not defined for
  MSPM0L11XX and MSPM0L13XX.

Signed-off-by: Ayush Singh <ayush@beagleboard.org>
2025-08-21 15:46:28 +02:00
Ayush Singh
ce57c2f39d soc: ti: mspm0: mspm0l: Selectively enable MPU
- Not all MSPM0L series socs seem to have MPU. After a glance at the TI
  website for features, only MSPM0L222x class socs seem to have MPU.

Signed-off-by: Ayush Singh <ayush@beagleboard.org>
2025-08-21 15:46:28 +02:00
Thomas Altenbach
7436b9dd85 drivers: flash: flash_stm32_qspi: Add support for cs-high-time
This commit adds support for the new cs-high-time devicetree property.
The QUADSPI_DCR_CSHT is now configured according to the value indicated
in the devicetree, for both single and dual flash modes.

Signed-off-by: Thomas Altenbach <altenbach.thomas@gmail.com>
2025-08-21 15:46:12 +02:00
Thomas Altenbach
7c39ca348a boards: Add cs-high-time for all STM32 boards using QSPI flash
This commit set the value of the cs-high-time property for all
STM32-based boards defined in Zephyr and having a QSPI flash memory.
The value is chosen according to the flash memory requirements (often
named 'tSHSL' in the datasheets) and the maximum QSPI frequency.

Signed-off-by: Thomas Altenbach <altenbach.thomas@gmail.com>
2025-08-21 15:46:12 +02:00
Thomas Altenbach
d14750118b dts: bindings: flash_controller: Add CS high time to stm32-qspi-nor
The STM32 QUADSPI peripheral allows to configure, in clock cycles, the
duration the chip select signal must stay high between each command sent
to the flash memory controller (QUADSPI_DCR_CSHT).

Currently, this value is set by the flash driver to 1 clock cycle in
single flash mode and 3 clock cycles in dual flash mode. However, the
minimal duration depends on the flash memory (typically 30-50 ns) and
the number of clock cycles on the QSPI's clock frequency. So, adding
this new property allows to select the value of CSHT to match the
requirement of the flash memory used. Also note that in single flash
mode, the current configuration is out-of-spec for most flash memories.

Signed-off-by: Thomas Altenbach <altenbach.thomas@gmail.com>
2025-08-21 15:46:12 +02:00
Thomas Altenbach
b147d78c2f drivers: flash: stm32_qspi: Use sample shift also in single flash mode
The QSPI 1/2 sample shift (SSHIFT) was only enabled in dual flash mode.
This feature is useful to guarantee that data is ready at the sampling
moment, even if the signals are a bit delayed due to PCB constraints.
Therefore, it should be enabled when possible (only supported in STR
mode).

Signed-off-by: Thomas Altenbach <altenbach.thomas@gmail.com>
2025-08-21 15:46:12 +02:00
Benjamin Cabé
ee2a1bb17a include: logging: consolidate log backends API docs
Make sure that the log backends API docs are showing up in online docs

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-08-21 13:13:56 +02:00
Vinayak Kariappa Chettimada
5f852998d0 tests: bsim: Bluetooth: Workaround Zephyr Controller scheduling overlap
Workaround test failures due to Zephyr Controller scheduling
overlap causing Periodic Advertising Sync timeouts, ACL
connection failed to be established or Controller assertion
when having latency at the CIS setup instant.

Workaround by using `-start_offset` to ensure that the ACL
established does not overlap the sink being established.

Relates to commit 490da9ec96 ("tests: bsim: Bluetooth:
Workaround overlapping ACL in BAP broadcast sink").

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2025-08-21 13:07:20 +02:00
Vinayak Kariappa Chettimada
278dcabe97 samples: Bluetooth: hci_ipc: Support two Broadcast ISO instances
Update to support two Broadcast ISO instances and update HCI
buffer counts.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2025-08-21 13:07:20 +02:00
Vinayak Kariappa Chettimada
1d7437a644 tests: bsim: Bluetooth: Test 250 ACL connections
Updated to test 250 ACL connections in the multiple
identity across nrf52_bsim, nrf5340bsim and nrf54l15bsim
targets.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2025-08-21 13:07:20 +02:00
Vinayak Kariappa Chettimada
7f0ba00095 Bluetooth: Move BT_BUF_EVT_DISCARDABLE_ to Host Kconfig
Move BT_BUF_EVT_DISCARDABLE_ to Host Kconfig, as this is
not used by the Controller.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2025-08-21 13:07:20 +02:00
Vinayak Kariappa Chettimada
41505da49a Bluetooth: Missing Kconfig depends for BT_BUF_EVT_DISCARDABLE_
Missing depends on !BT_HCI_RAW for HCI Discardable Events
count and size.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2025-08-21 13:07:20 +02:00
Vinayak Kariappa Chettimada
3a8738179a Bluetooth: Controller: Fix assertion on BIG terminate sync
Fix assertion on BIG terminate sync and due to not receiving
terminate control procedure when there are no free buffers.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2025-08-21 13:07:20 +02:00
Cheng Chang
a5f25ba7b7 tests: bluetooth: classic: Add test suite l2cap client.
IUT works as a l2cap client with basic mode. The peer device,
l2cap server with basic mode, is a PC with running bumble on it.
This test only performs the function of L2CAP basic mode.
Support multiple l2cap enerties in new shell l2cap_br,
which may support more test function.

In the test suite , there are two groups in test cases.
Group 1 Including case1-case24 focuses on connection and
disconnection around l2cap. The impact of active and passive
acl connectivity, disconnectivity and authentication as well as
disconnection from ACL without l2cap disconnect is tested.

Group2 Including case25-case31 revolves around the basic
 parameters of L2CAPserver configuration, data transfer.
Case 25: Test l2cap connection with max MTU(0xffff).But the max mtu
which the stack supports is (CONFIG_BT_BUF_ACL_RX_SIZE - 4U = 196).
Case 26:  Test l2cap multi_channel connection and data tranfer.
Case 27: Test l2cap connection with invaild PSM.
Case 28: Test l2cap re_connect after disconnected.
Case 29: Test l2cap connection with min MTU(0x30).set server mtu = 48,
client mtu=48. l2cap connect successfully,
both server and client mtu should be 48.
Case 30: Test l2cap connection with min MTU(0x30). set server mtu = 48,
client mtu=0x27. l2cap connect fail.
Case 31: Test l2cap connection with min MTU(0x30).set server mtu = 30,
client mtu=48.l2cap connect successfully,
both server and client mtu should be 48.

test_l2cap_client.py is a file containing real test cases.
test_l2cap_common.py is a common file. It encapsulates some
test function functions that are commonly used for test cases.

Signed-off-by: Cheng Chang <cheng.chang@nxp.com>
2025-08-21 13:07:08 +02:00
Guillaume Gautier
308e219ea5 drivers: pwm: stm32: use kernel clock instead of dedicated function
Now that the timer kernel clocks are defined in device tree, use the
clock get API to fetch the clock frequency instead of calculating the
value in the driver.
Removes the now unused function get_tim_clk.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2025-08-21 13:06:58 +02:00
Guillaume Gautier
2ab5452b32 drivers: counter: stm32: use kernel clock instead of dedicated function
Now that the timer kernel clocks are defined in device tree, use the
clock get API to fetch the clock frequency instead of calculating the
value in the driver.
Removes the now unused function counter_stm32_get_tim_clk.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2025-08-21 13:06:58 +02:00
Guillaume Gautier
2cccfda4cf dts: arm: st: wl: add support for timer kernel clock
Add support for timer kernel clock for STM32WL.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2025-08-21 13:06:58 +02:00
Guillaume Gautier
4ccef2d443 dts: arm: st: wba: add support for timer kernel clock
Add support for timer kernel clock for STM32WBA.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2025-08-21 13:06:58 +02:00
Guillaume Gautier
af762bd51a dts: arm: st: wb: add support for timer kernel clock
Add support for timer kernel clock for STM32WB.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2025-08-21 13:06:58 +02:00
Guillaume Gautier
525227e28a dts: arm: st: u5: add support for timer kernel clock
Add support for timer kernel clock for STM32U5.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2025-08-21 13:06:58 +02:00
Guillaume Gautier
234f1450ce dts: arm: st: u0: add support for timer kernel clock
Add support for timer kernel clock for STM32U0.

Contrary to other series, on U0, TIMPCLK is always equal to PCLK, so no
need to define it, we can use PCLK directly.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2025-08-21 13:06:58 +02:00
Guillaume Gautier
e180737aec dts: arm: st: l5: add support for timer kernel clock
Add support for timer kernel clock for STM32L5.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2025-08-21 13:06:58 +02:00
Guillaume Gautier
492558f5a2 dts: arm: st: l4: add support for timer kernel clock
Add support for timer kernel clock for STM32L4.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2025-08-21 13:06:58 +02:00
Guillaume Gautier
be85642714 dts: arm: st: l1: add support for timer kernel clock
Add support for timer kernel clock for STM32L1.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2025-08-21 13:06:58 +02:00
Guillaume Gautier
7e7c145e90 dts: arm: st: l0: add support for timer kernel clock
Add support for timer kernel clock for STM32L0.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2025-08-21 13:06:58 +02:00
Guillaume Gautier
3ba81b31bd dts: arm: st: h7rs: add support for timer kernel clock
Add support for timer kernel clock for STM32H7RS.

Define a new property for the timer prescaler in the RCC binding of H7RS.

Also fix the clock bus of TIM16 and TIM17 (they are on APB2 instead of 1)

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2025-08-21 13:06:58 +02:00
Guillaume Gautier
7c44ebe493 dts: arm: st: h7: add support for timer kernel clock
Add support for timer kernel clock for STM32H7.

Define a new property for the timer prescaler in the RCC binding of H7.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2025-08-21 13:06:58 +02:00
Guillaume Gautier
1614da68c7 dts: arm: st: h5: add support for timer kernel clock
Add support for timer kernel clock for STM32H5.

Define a new RCC binding for H5 with the timer prescaler property (timpre).

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2025-08-21 13:06:58 +02:00
Guillaume Gautier
e2882b7c06 dts: arm: st: g4: add support for timer kernel clock
Add support for timer kernel clock for STM32G4.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2025-08-21 13:06:58 +02:00
Guillaume Gautier
11d5f30ba5 dts: arm: st: g0: add support for timer kernel clock
Add support for timer kernel clock for STM32G0.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2025-08-21 13:06:58 +02:00
Guillaume Gautier
7a612f3f2d dts: arm: st: f7: add support for timer kernel clock
Add support for timer kernel clock for STM32F7.
The STM32F7 RCC clock driver complies with st,stm32f4-rcc
driver variant.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2025-08-21 13:06:58 +02:00
Guillaume Gautier
9c4fc612b8 dts: arm: st: f2: add support for timer kernel clock
Add support for timer kernel clock for STM32F2.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2025-08-21 13:06:58 +02:00
Guillaume Gautier
231d75ae29 dts: arm: st: f4: add support for timer kernel clock
Add support for timer kernel clock for STM32F4.

Define a new RCC binding to add the timer prescaler property (timpre).
This new binding is used for all STM32F4 except F405/F407/F415/F417 who do
not support it.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2025-08-21 13:06:58 +02:00
Guillaume Gautier
136bed1aaa dts: arm: st: f3: add support for timer kernel clock
Add support for timer kernel clock for STM32F3.
Also reorganizes the timer instances:
- TIM3 is not available on F301, F318, F302x6 or x8, but is available for
  all others
- TIM4 is available on F302xB and higher, F303xB and higher, F358, F398,
  F373 and F378
- TIM7 is not available on F301, F318, F302, but is available for all
  others
- TIM8 is only available on F303xB and higher, F358 and F398
- TIM20 is only available on F303xD and xE,and on F398

Depending of the SoC version, some timers have access to one or two
distinct clock sources. Timers with NO_SEL selection only have access
to the base TIMPLCKx clock, those defined with TIMx_SEL(0) can use another
source clock: STM32_SRC_TIMPLLCLK. That's why some clocks are redefined.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2025-08-21 13:06:58 +02:00
Guillaume Gautier
9b6ec7e69e dts: arm: st: f1: add support for timer kernel clock
Add support for timer kernel clock for STM32F1

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2025-08-21 13:06:58 +02:00
Guillaume Gautier
898f99e672 dts: arm: st: f0: add support for timer kernel clock
Add support for timer kernel clock for STM32F0

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2025-08-21 13:06:58 +02:00
Guillaume Gautier
f3caba8639 dts: arm: st: c0: add support for timer kernel clock
Add support for timer kernel clock for STM32C0

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2025-08-21 13:06:58 +02:00
Guillaume Gautier
142f62a911 drivers: clock: stm32: add support for timer kernel clock
Add initial support for timer kernel clock for STM32.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2025-08-21 13:06:58 +02:00
Marek Matej
bbae11a878 samples: subsys: ipc: openamp sysbuild targets
* Add missing ESP32 targets
* Fix typo in target name

Signed-off-by: Marek Matej <marek.matej@espressif.com>
2025-08-21 13:06:06 +02:00
Emil Gydesen
555dbcda7c doc: releases: Bluetooth: Add note for GMAP BGS new requirement
Add note for the new requirement for the GMAP BGS role. There is
no GMAP sample or any changes in-tree that need to be updated for
this, so the best we can do, without implement a whole new sample,
is to refer to the BAP broadcast assistant sample.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-08-21 11:10:23 +02:00
Emil Gydesen
eac0f93484 doc: Bluetooth: Update GMAP version to 1.0.1
Zephyr now supports GMAP version 1.0.1.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-08-21 11:10:23 +02:00
Emil Gydesen
8b6162aec3 Bluetooth: GMAP: Add requirement for Broadcast assitant for BGS
As per GMAP 1.0.1, the BGS role now requires support for the
BAP Broadcast Assistant.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-08-21 11:10:23 +02:00
Benjamin Cabé
1d50a6af9c include: drivers: gpio: add gpio.h @file to doxygen group
This helps anchoring the file to the proper section in the online
documentation when browsing by file.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-08-21 11:09:22 +02:00
Benjamin Cabé
f393f83d06 include: drivers: gpio: gpio_utils doxygen improvements
add a missing doc + actually show up the utilities from the gpio_utils.h
header file in the doxygen documentation.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-08-21 11:09:22 +02:00
Benjamin Cabé
235704f040 include: dt-bindings: gpio: add to existing doxygen group
Redefining the gpio_interface group is bad Doxygne practice, add to
existing group instead.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-08-21 11:09:22 +02:00
Benjamin Cabé
6377b1ff84 include: dt-bindings: gpio: add vendor headers to gpio_interface_ext
Group the vendor headers into the doxygen group used for device-specific
GPIO API extensions as opposed to have them clutter top-level GPIO docs

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-08-21 11:09:22 +02:00
Benjamin Cabé
fca7d8a8d5 include: drivers: gpio: add doxygen group for vendor extensions
Add a new doxygen group for device-specific GPIO API extensions and
put vendor header files in it.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-08-21 11:09:22 +02:00
Benjamin Cabé
96979bed2c include: llext: fix doxygen docs for LLEXT_TEMPORARY_BUF_LOADER
fix comment style so that it's proper doxygen

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-08-21 11:08:58 +02:00
Chang An
6c936eb5ba samples: Bluetooth: Fix compatibility with Google Pixel unicast audio
Update BAP unicast server samples to work with Google Pixel:

Fix sink/source location count to match actual sink/source count,
  preventing "Codec channel setup fail" errors on phone

Increase ATT prepare count from 1 to 2 to handle phone sending
Codec Config for 3 ASEs simultaneously, avoiding Codec Config
failures during recording

Signed-off-by: Chang An <chang.an_1@nxp.com>
2025-08-21 11:08:47 +02:00
Rafal Dyla
8876a3bbd2 modules: hal_nordic: nrfs: Disabling subscription
- Code optimization for platforms which don't use subscription feature
in the temperature service.
- Test adaptation to code changes

Signed-off-by: Rafal Dyla <rafal.dyla@nordicsemi.no>
2025-08-21 11:08:09 +02:00
Tomasz Bursztyka
347fb0a75a drivers: pwm: Use DEVICE_API relevantly on mspm0 driver
It was missing thus it was not possible to get a valid answer
from DEVICE_API_IS().

Signed-off-by: Tomasz Bursztyka <tobu@bang-olufsen.dk>
2025-08-21 06:52:34 +02:00
Jordan Yates
3b7a797d2d lorawan: services: swap select to depends on
Switch the selects on `LORAWAN_FRAG_TRANSPORT` to `depends on`. `select`
should only be used for simple symbols without dependencies themselves.
Mixing `depends on X` and `select X` on different symbols is the primary
cause of Kconfig dependency loops.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-08-21 06:52:11 +02:00
Ren Chen
80d5ecc148 drivers: spi: it51xxx: move interrupt flags check to compile time
as title.

Signed-off-by: Ren Chen <Ren.Chen@ite.com.tw>
2025-08-21 06:51:59 +02:00
Ren Chen
d860b6f598 dts: ite: it51xxx: set high-level triggered mode for spi0 node
This commit sets the interrupt mode to high-level
triggered, as fifo mode is enabled by default
(CONFIG_SPI_ITE_IT51XXX_FIFO_MODE=y) and the fifo
mode only supports high-level triggered.

Signed-off-by: Ren Chen <Ren.Chen@ite.com.tw>
2025-08-21 06:51:59 +02:00
Ren Chen
8563510dfd driver: spi: it51xxx: enable spi clock only when spi transaction
This commit disables spi clock during idle to reduce power
consumption.

Tested with: reduce current cons. by around 0.08mA on it515xx_evb

Signed-off-by: Ren Chen <Ren.Chen@ite.com.tw>
2025-08-21 06:51:59 +02:00
Will McGloughlin
af212ab596 boards: st: nucleo_u385rg_q: USB device support
Enable USB for the Nucleo U385RG-Q. Samples in samples/subsys/usb compile
and operate as expected.

Signed-off-by: Will McGloughlin <willem.mcg@gmail.com>
2025-08-21 06:51:46 +02:00
Will McGloughlin
d0c90f7997 dts: arm: st: stm32u3: Add USB DTS node
Add USB DTS node for STM32U3 series SoCs.

Signed-off-by: Will McGloughlin <willem.mcg@gmail.com>
2025-08-21 06:51:46 +02:00
Charles Hardin
0fe091bc46 net: dns: fix the bounds conditions on the failures and error returns
The loop condition is not the count of the actual tries since the
continue or breaks can occur on the loop and thus a failure count
can falsely match a loop count even when a query is outstanding.

This can be seen when a dual stack resolve is used for IPv4 and IPv6
that has two fds to be used and the interface has only gotten an
IPv6 address. The failures on the IPv4 will indicate a 1 and the break
on the tried attempt on the IPv6 will break the loop on a 1.

Signed-off-by: Charles Hardin <ckhardin@gmail.com>
2025-08-21 01:43:59 +02:00
Derek Snell
6d748db7c7 drivers: mipi_dbi: nxp_lcdic: add DMA_ADDR_ADJ_NO_CHANGE
Update dma_block_config for memory to peripheral transfers.

Signed-off-by: Derek Snell <derek.snell@nxp.com>
2025-08-21 01:43:50 +02:00
Dmitrii Sharshakov
a8dec5b42c boards: arm: add probe-rs runner for RP2350 boards
Add the chip parameter for probe-rs. Verified on Feather RP2350.

Signed-off-by: Dmitrii Sharshakov <d3dx12.xx@gmail.com>
2025-08-21 01:43:00 +02:00
Benjamin Cabé
72fdf7e7f3 include: drivers: misc: add rpi_pico pio driver in doc tree
Mount the Raspberry Pi Pico PIO driver into the Misc. drivers
doxygen group.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-08-20 18:47:03 +02:00
Guowei Li
49965a09b2 board: arm64: Add suport for ROC-RK3588-PC
Add initial support for the ROC-RK3588-PC AArch64 board.
It features a quad-core Cortex-A55 CPU based on the ARMv8.2 architecture.
This commit also enables SMP, allowing all four cores to run the
synchronization sample.

Signed-off-by: Guowei Li <15035660024@163.com>
2025-08-20 18:46:54 +02:00
Guowei Li
d4d9eb57a3 dts: rockchip: add rk3588
Add initial device tree support for the Rockchip RK3588 SoC.
The DTS describes:
- Four Cortex-A55 cores with PSCI enable-method
- GICv3 interrupt controller
- ARMv8 timer
- UART2 and UART3 (disabled by default)

Signed-off-by: Guowei Li <15035660024@163.com>
2025-08-20 18:46:54 +02:00
Jake Greaves
e247cc3d9c drivers: counter: stm32: config rtc prescaler from DT
Handle RTC prescaler options inside RTC counter driver

Signed-off-by: Jake Greaves <jake.greaves@analog.com>
2025-08-20 18:46:47 +02:00
Jake Greaves
20d9780f61 drivers: rtc: STM32U5XX rtc scalers
Allow RTC prescalers to be configurable via dts

Signed-off-by: Jake Greaves <jake.greaves@analog.com>
2025-08-20 18:46:47 +02:00
Emil Gydesen
161d8a2355 tests: Bluetooth: Tester: CSIP BSIM test
Adds BSIM testing of the CSIP features of the BT Tester.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-08-20 18:46:39 +02:00
Terry Geng
8753fef6d9 tests: drivers: spi: loopback: Add test for pico-spi-pio driver with DMA.
With the addition of a new overlay file that specifies DMA channels.

Signed-off-by: Terry Geng <terry@terriex.com>
2025-08-20 18:46:31 +02:00
Terry Geng
7210087cbc drivers: spi: spi_pico_pio: Implement DMA support for 4-wire operation
This commit largely mirrors the approach of implementing DMA in the pl022
driver.

Signed-off-by: Terry Geng <terry@terriex.com>
2025-08-20 18:46:31 +02:00
Cristian Bulacu
89cb309603 net: openthread: Add new kconfig OT options.
Added:
	`OPENTHREAD_CONFIG_BORDER_AGENT_MESHCOP_SERVICE_ENABLE`
	`OPENTHREAD_CONFIG_BORDER_ROUTING_DHCP6_PD_CLIENT_ENABLE`
	`OPENTHREAD_CONFIG_CHANNEL_MONITOR_AUTO_START_ENABLE`
	`OPENTHREAD_CONFIG_SRP_SERVER_FAST_START_MODE_ENABLE`
	`OPENTHREAD_CONFIG_TREL_MANAGE_DNSSD_ENABLE`

Signed-off-by: Cristian Bulacu <cristian.bulacu@nxp.com>
2025-08-20 15:36:47 +01:00
Cristian Bulacu
8c9bfa0e4b samples: net: openthread: coap: Fix sample compilation issue.
Included required header to access OT specific data.

Signed-off-by: Cristian Bulacu <cristian.bulacu@nxp.com>
2025-08-20 15:36:47 +01:00
Cristian Bulacu
250745e198 modules: openthread: Fix compile warnings introduced by OT stack upmerge
Changes done to accomodate -Wundef introduced flag when compiling OT
2918437bb8

Signed-off-by: Cristian Bulacu <cristian.bulacu@nxp.com>
2025-08-20 15:36:47 +01:00
Benjamin Cabé
371c4d51ef include: drivers: dai: fix doxygen syntax
Fix bad doxygen comments for a few enums and structs

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-08-20 16:33:03 +02:00
Henrik Brix Andersen
722a4d1eb0 tests: drivers: retained_mem: api: add STM32 backup SRAM example
Add example configuration fir testing the retained memory driver using
STM32 backup SRAM as the backend.

Signed-off-by: Henrik Brix Andersen <henrik@brixandersen.dk>
2025-08-20 16:31:52 +02:00
Henrik Brix Andersen
816f6cbd99 drivers: retained_mem: retained_mem_zephyr_ram: flush d-cache if enabled
Flush the data cache if cache management is enabled. Flushing the data
cache is required to ensure data retention across system resets.

Signed-off-by: Henrik Brix Andersen <henrik@brixandersen.dk>
2025-08-20 16:31:52 +02:00
Henrik Brix Andersen
d5ead50fc6 soc: st: stm32: h7x: enable cache management by default
Enable cache management by default on Cortex-M7 of the STM32H7x
series. Remove cache management enablement from the ST STM32H7B3I-DK
development board.

Signed-off-by: Henrik Brix Andersen <henrik@brixandersen.dk>
2025-08-20 16:31:52 +02:00
Henrik Brix Andersen
8af9d1a53d soc: st: stm32: allow configuration of Backup SRAM initialization priority
Add CONFIG_STM32_BACKUP_SRAM_INIT_PRIORITY for configuring the
initialization priority of the STM32 Backup SRAM driver.

Signed-off-by: Henrik Brix Andersen <henrik@brixandersen.dk>
2025-08-20 16:31:52 +02:00
Henrik Brix Andersen
205f4624c9 soc: st: stm32: automatically enable CONFIG_STM32_BACKUP_SRAM based on DTS
Automatically enable CONFIG_STM32_BACKUP_SRAM based on the devicetree node
status.

Signed-off-by: Henrik Brix Andersen <henrik@brixandersen.dk>
2025-08-20 16:31:52 +02:00
Gerson Fernando Budke
ef4b757a75 MAINTAINERS: Add nandojve as microchip maintainer
Add nandojve in the list of hal_microchip maintainers. In addition,
update the microchip sam platform to support both atmel and mchp
SoC series.

Signed-off-by: Gerson Fernando Budke <nandojve@gmail.com>
2025-08-20 16:31:35 +02:00
Mohamed Moawad
ed9fa3aa83 lib: libc: default LIBC_ALLOW_LESS_THAN_64BIT_TIME for ARCMWDT
Set CONFIG_LIBC_ALLOW_LESS_THAN_64BIT_TIME to default 'y' for
ARCMWDT_LIBC toolchain.
The ARCMWDT_LIBC uses a 32-bit time_t
which fails the 64-bit time_t validation introduced to prevent Y2038
issues. This change eliminates the need to manually configure this
option for every ARCMWDT test while maintaining the validation
for other toolchains that support 64-bit time_t.

Signed-off-by: Mohamed Moawad <moawad@synopsys.com>
2025-08-20 16:31:26 +02:00
Pieter De Gendt
08336629c1 drivers: display: mcux_elcdif: Optional start on init
After 8495e30726 some display controller
drivers failed to start. Make the start optional and enabled by default if
there are frame buffers allocated by the driver.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-08-20 16:31:09 +02:00
Olivier Lesage
90113e68ea bluetooth: host: Combine main and sub mode CS step options
Not all combinations of main mode and sub mode are valid, so to make it
harder to select incorrect parameters, the main mode and sub mode
enums are combined into one.

Now the user chooses any valid option in enum bt_conn_le_cs_mode.

Signed-off-by: Olivier Lesage <olivier.lesage@nordicsemi.no>
2025-08-20 16:30:57 +02:00
Camille BAUD
f181737677 boards: add dt_xt_zb1_devkit
Introduce a bl70x board.

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-08-20 16:30:48 +02:00
Camille BAUD
eab94972ed drivers: uart: Update bflb uart driver for BL70x
BL70x almost equal BL60x here

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-08-20 16:30:48 +02:00
Camille BAUD
1e511e4bfe dts: uart: Add uart node to BL70x
Adds the uart node for BL70x

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-08-20 16:30:48 +02:00
Camille BAUD
d68418c068 drivers: clock_control: Add BL70x clock control
Adds clock_control driver for BL70x

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-08-20 16:30:48 +02:00
Camille BAUD
78e68d6c21 dts: clock_control: Add bl70x clock nodes and bindings
This adds the clock_control nodes and bindings

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-08-20 16:30:48 +02:00
Camille BAUD
41ab7ec622 drivers: pinctrl: Update bflb pinctrl for bl70x
BL70x = BL60x here

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-08-20 16:30:48 +02:00
Camille BAUD
f139e5a868 dts: pinctrl: Add bl70x pinctrl node
This adds the pinctrl node

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-08-20 16:30:48 +02:00
Camille BAUD
ea06ab3e93 drivers: syscon: Add condition for BL70x
BL70x = BL60x in this case

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-08-20 16:30:48 +02:00
Camille BAUD
c36bd29a19 dts: syscon: Add BL70x efuse node
Adds the syscon node

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-08-20 16:30:48 +02:00
Camille BAUD
1af25a1f21 soc: bflb: Add support for BL70x SoCs
Adds SoC folder contents for BL70x

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-08-20 16:30:48 +02:00
Camille BAUD
c1d20a52a0 dts: bflb: Add bl70x dts
Introduce most basic DTS for BL70x

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-08-20 16:30:48 +02:00
Anisetti Avinash Krishna
5c7e12b53a boards: intel: Added PTL board support
Added PTL-H board support, PTL SOC and panther_lake.dtsi

Signed-off-by: Anisetti Avinash Krishna <anisetti.avinash.krishna@intel.com>
2025-08-20 13:56:16 +02:00
Emil Gydesen
e4e04d7a78 samples: Bluetooth: BAP: Broadcast: Print BIG and BIS IDs
Update the broadcast sink and source samples to use
bt_iso_chan_get_info to get the BIG handle and BIS number of a
BAP stream.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-08-20 13:46:02 +02:00
Emil Gydesen
d4c1b0c1be samples: Bluetooth: BAP: Unicast: Print CIG and CIS IDs
Update the unicast client and server samples to use
bt_iso_chan_get_info to get the CIG and CIS IDs of a
BAP stream.

The samples show how it is possible to get the information early
as the unicast client (it is possible right after the stream
has been added to a group), and how the values are only
available to the server once the CIS is connected, which
is indicated by the stream_started callback.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-08-20 13:46:02 +02:00
Emil Gydesen
31fa4ddd12 doc: releases: Add entry for new iso field in bt_bap_stream
Add entry for the new field added to the bt_bap_stream.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-08-20 13:46:02 +02:00
Emil Gydesen
31a3315d61 Bluetooth: BAP: Replace bt_bap_iso with bt_iso_chan for streams
Modify the struct bt_bap_stream to have a direct reference to the
bt_iso_chan, rather than having a reference to the parent
bt_bap_iso.

This change will allow users to more easily and directly access
the bt_iso_chan, instead of getting the reference via
bt_bap_ep_get_info.
Additionally, this allows users to access the bt_iso_chan for
streams that are not codec configured, and thus not have a
bt_bap_ep reference.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-08-20 13:46:02 +02:00
Emil Gydesen
d273d68c33 doc: releases: Add entry for new ISO info fields
Add entry for new fields added to the ISO info structs.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-08-20 13:46:02 +02:00
Emil Gydesen
a0e899d086 tests: Bluetooth: ISO: Verify ranges of BIG handles and BIS Numbers
Verify that the BIG handles and BIS Numbers in the ISO info
struct are valid.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-08-20 13:46:02 +02:00
Emil Gydesen
25247fa401 Bluetooth: ISO: Expose CIG_ID, CIS_ID, BIG_Handle and BIS_Number
Expose the IDs, handles and numbers of CIGs, BIGs, CISes and BISes
via the ISO info struct. This information may be needed by higher
layer (such as the Basic Audio Profile (BAP)) or used as indexes
for arrays in the application layer.

The location of the CIG_ID, CIS_ID, BIG_Handle and BIS_Number
are moved to the location struct inside of struct bt_conn_iso
instead of being stored directly in it.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-08-20 13:46:02 +02:00
Emil Gydesen
6b1fafb660 Bluetooth: ISO: Change bis_id to bis_number
Modify the bis_id in struct bt_conn_iso to be bis_number
and correctly initialize it for both the broadcaster and
the sync receiver.

The field is currently unused and the term bis_id does not
exist in the core spec. The BIS Index was renamed to BIS
Number in Core 6.1, and thus the Zephyr code base will
reflect that.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-08-20 13:46:02 +02:00
Nikodem Kastelik
6171bdaa6e soc: nordic: nrf54l: make SWO available
Existing nRF54L Series SoCs support SWO.

Signed-off-by: Nikodem Kastelik <nikodem.kastelik@nordicsemi.no>
2025-08-20 13:45:53 +02:00
Marek Matej
c223970ba1 snippets: espressif: Fix flash partitions overlay
Snippets overlays are applied last and can revert DTS changes by
restoring definitions from the base DTSI. Remove only the `partitions`
node when customizing flash size and layout.

Signed-off-by: Marek Matej <marek.matej@espressif.com>
2025-08-20 13:45:44 +02:00
Camille BAUD
cadf35102e boards: add ai_m62_12
Introduce a BL61x board

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-08-20 13:45:26 +02:00
Camille BAUD
f3f434b4d5 dts: uart: Add uart nodes to BL61x
Adds the uart nodes for BL61x

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-08-20 13:45:26 +02:00
Camille BAUD
0ab46a6d9c drivers: clock_control: Add BL61x clock control
Adds clock_control driver for BL61x

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-08-20 13:45:26 +02:00
Camille BAUD
559ad926c1 dts: clock_control: Add BL61x clock nodes and bindings
This adds the clock_control nodes and bindings

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-08-20 13:45:26 +02:00
Camille BAUD
14c449986e drivers: pinctrl: Add BL61x pinctrl
This adds pinctrl support in the bflb driver for BL61x

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-08-20 13:45:26 +02:00
Camille BAUD
f0df862788 dts: pinctrl: Add bl61x pinctrl node
This adds the pinctrl node

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-08-20 13:45:26 +02:00
Camille BAUD
61e79b32e6 drivers: syscon: fix headers used in BFLB efuse driver
Fixes wrong headers

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-08-20 13:45:26 +02:00
Camille BAUD
d57bf82360 dts: syscon: Add BL61x efuse node
Adds the syscon node

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-08-20 13:45:26 +02:00
Camille BAUD
f6f72ac8dd soc: bflb: Add support for BL61x SoCs
Adds SoC folder contents for BL61x

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-08-20 13:45:26 +02:00
Camille BAUD
e069d3ed79 dts: bflb: Add bl61x dts
Introduce most basic DTS for BL61x

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-08-20 13:45:26 +02:00
Camille BAUD
be7d254618 vendor-prefixes: Add xuantie
Adds alibaba's CPU brand

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-08-20 13:45:26 +02:00
Hein Wessels
70a8be66de drivers: gpio: esp32: correct comment about pin drive strength
The comment about which drive strength option is high or low was
wrong and this commit fixes it. For example, ESP32_GPIO_DS_ALT
results in GPIO_DRIVE_CAP_0 being used which is the weakest
option according to the HAL file espressif-esp32-gpio.h.

Signed-off-by: Hein Wessels <heinwessels93@gmail.com>
2025-08-20 13:45:16 +02:00
Mario Paja
31fc280c12 boards: seeed: xiao_esp32c6 external antenna support
This PR adds adds The RF switch node and support for
the extenal antenna.

Signed-off-by: Mario Paja <mariopaja@hotmail.com>
2025-08-20 13:44:55 +02:00
Emil Gydesen
b7b6d39a45 tests: Bluetooth: Tester: HAP BSIM test
Adds BSIM testing of the HAP features of the BT Tester.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-08-20 12:06:28 +02:00
Thorsten Klein
b0f40e4dd0 scripts: zephyr_module: accept empty env vars for extra modules
Proceed if the environment variables ZEPHYR_EXTRA_MODULES or
EXTRA_ZEPHYR_MODULES are set to an empty string. Handle same way as if
the variable is unset.

Signed-off-by: Thorsten Klein <thorsten.klein@bshg.com>
2025-08-20 12:06:07 +02:00
Cla Mattia Galliard
5b68835fca MAINTAINERS.yml: transfer membership to alternative account
Transfer the membership to alternative account.

Signed-off-by: Cla Mattia Galliard <cla-mattia.galliard@zuehlke.com>
2025-08-20 12:05:59 +02:00
Chang An
2ce80f1696 samples: Bluetooth: make bap_broadcast_source work with google pixel
Broadcast name used for scaning device that displays information on the
available broadcast sources.

Signed-off-by: Chang An <chang.an_1@nxp.com>
2025-08-20 12:05:48 +02:00
Jamie McCrae
db8f991c77 kconfig: Use $(...) instead of ${...} for getting variables
Updates this to comply with the Zephyr Kconfig recommendations

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-08-20 12:05:41 +02:00
Jamie McCrae
ea9815ff34 scripts: zephyr_module: Add variable with module path
Adds a variable that has the path of the module directory, this
is supplied as an argument when running cmake normally but is
not supplied when running the check compliance script, this
addition allows checks to be ran that use such syntax in Kconfig
files. This is then removed from cmake as the python file handles
it instead

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-08-20 12:05:41 +02:00
Paul Wedeck
86c72a19fc boards: fk723m1_zgt6: initial support
Add the FK723M1-ZGT6 V1.0 board based on
the stm32h723zgt6.

Signed-off-by: Paul Wedeck <paulwedeck@gmail.com>
2025-08-20 12:05:35 +02:00
BUDKE Gerson Fernando
32712a4003 docs: migration-guide-4.3: Add st,stm32u5-otghs-phy note
Add migration note with details to guide user to correct select the
clock reference.

Signed-off-by: BUDKE Gerson Fernando <gerson.budke@leica-geosystems.com>
2025-08-20 12:05:24 +02:00
BUDKE Gerson Fernando
77070941fa dts: phy: Add clock-reference prop in stm32u5-otghs-phy
The OTG_HS PHY from stm32u5a5xx device require the correct reference
clock frequency selction in SYSCFG_OTGHSPHYCR. The current default is
hard coded to 16Mhz (which matches the development board crystal).
However, a custom board my require a different crystal and then the
USB will not work. This add a required field in the
st,stm32u5-otghs-phy binding to force user to select the correct
clock reference. The current nucleo_u5a5zj_q baord was updated to
reflect the mandatory field.

Signed-off-by: BUDKE Gerson Fernando <gerson.budke@leica-geosystems.com>
2025-08-20 12:05:24 +02:00
Benjamin Cabé
ad0f411f5f include: video: group video-controls.h under main video Doxygen group
Ensure the "Video Controls" do not show up as a top level device API
but are rather folded into the main video Doxygen group.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-08-20 09:29:28 +02:00
Pieter De Gendt
f1b4c7c992 drivers: ethernet: nxp_imx_netc: Fix LAA bit location
The Locally Administered Address (LAA) bit should be set on the first
octet of the MAC address.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-08-20 09:29:14 +02:00
Lars-Ove Karlsson
7ec00e958d toolchain: linker: IAR fix for new linker optimization options
The IAR linker ilink does not have any optimization options, and
with the newly added linker optimization flags that default to
the compiler optimization flags, ilink will fail with an
"illegal command line option" error.
This temporary workaround will use a harmless option instead to
avoid errors, until we can update the linker.

Signed-off-by: Lars-Ove Karlsson <lars-ove.karlsson@iar.com>
2025-08-20 09:29:04 +02:00
Adrian Gielniewski
163526b2fc drivers: Do not use deprecated OpenThread instance pointer.
Implementation should use a dedicated function to get OpenThread
instance instead of using the deprecated pointer from context.

Signed-off-by: Adrian Gielniewski <adrian.gielniewski@nordicsemi.no>
2025-08-20 09:28:10 +02:00
Alain Volmat
d9a916dca4 dts: arm: st: add pllsai2 node for stm32l4 series 7 and upper
Add a disabled node describing the PLLSAI2 pll available from
stm32l47* and upper.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-08-20 09:28:02 +02:00
Alain Volmat
b6bc2e22a9 dts: arm: st: add pllsai1 node into stm32l4.dtsi
Add a disabled node describing the PLLSAI1 pll within the stm32l4.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-08-20 09:28:02 +02:00
Alain Volmat
7d447a1dda drivers: clock: stm32: add PLLSAI2 support (common + L4)
Add stm32 common clock handling for the SAI2 PLL.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-08-20 09:28:02 +02:00
Alain Volmat
0abbc2f0f3 drivers: clock: stm32: add PLLSAI1 support (common + L4)
Add stm32 common clock handling for the SAI1 PLL.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-08-20 09:28:02 +02:00
Alain Volmat
f5ff9fd080 dts: arm: st: include stm32l4plus_clock.h in stm32l4+ dtsi
Add include of the stm32l4+ specific clock bindings in
stm32l4p5.dtsi in order to let all stm32l4+ benefit from it.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-08-20 09:28:02 +02:00
Alain Volmat
d646b9b267 include: dt-bindings: stm32_clocks: add stm32l4+ bindings header
On stm32l4+ series, the SAI1 and SAI2 clock source selection fields
are within a different register hence a different binding header
file is introduced to allow proper field usage on those platforms.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-08-20 09:28:02 +02:00
Alain Volmat
565bae248f dts: bindings: stm32_clocks: add bindings for PLLSAI of STM32L4
Add description of the SAI1 and SAI2 PLLs of the stm32l4.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-08-20 09:28:02 +02:00
Lucien Zhao
1695dc04cc dts: bindings: hwinfo: Modify bindings name
Modify the name of the binding yml file to ensure
it is consistent with "compatible".

Signed-off-by: Lucien Zhao <lucien.zhao@nxp.com>
2025-08-20 07:42:31 +02:00
Mike J. Chen
d47353928c drivers: dma_mcux_lpc: fix missing peripheral case
Change 4e0e3c990d caused
a regression in that SPI_MCUX_FLEXCOMM_TX DMA
transfers weren't properly set to be a peripheral
transfer.

Signed-off-by: Mike J. Chen <mjchen@google.com>
2025-08-20 07:40:13 +02:00
CHEN Xing
147f8b040c modules: update west.yml for hal_atmel
Sam4l use different TC_CMR_WAVEFORM_EEVT macro name.
Update these macro names to be consistent with other sam mcu.

Signed-off-by: CHEN Xing <xing.chen@microchip.com>
2025-08-20 07:40:03 +02:00
Declan Snyder
0f66420cb2 drivers: mcux_edma: Fix dtcm desc kconfig dep
The syntax was wrong for the chosen dtcm node. Also fixing build error
on 1180 by re-allowing the symbol on some tests.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-08-20 07:39:54 +02:00
Zhaoxiang Jin
a27aecfd28 tests: dac: Enable dac_api test on mimxrt1180_evk
1.Enable dac_api test on mimxrt1180_evk
2.Reorganized the test_dac.c file so that the same
dac configuration items are placed under the one
conditional macro.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-08-20 07:39:31 +02:00
Zhaoxiang Jin
1a8496d86c samples: dac: Enable dac sample on mimxrt1180_evk
Enable dac sample on mimxrt1180_evk

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-08-20 07:39:31 +02:00
Zhaoxiang Jin
7638d2204a boards: nxp: Enable DAC on mimxrt1180_evk cm33 and cm7
Enable DAC on mimxrt1180_evk cm33 and cm7

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-08-20 07:39:31 +02:00
Zhaoxiang Jin
fe9272c150 dts: nxp: Enable dac for nxp rt118x
Enable dac for nxp rt118x

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-08-20 07:39:31 +02:00
Krzysztof Chruściński
5718af02c5 scripts: west_command: build: Support for conditional platform configs
extra_configs or extra_args can use additional filtering which was not
supported by the west build command. West is not aware of arch so that
filter type is not supported but platform (board) is known so it can
be used to apply expected configuration.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-08-20 07:39:16 +02:00
Mahesh Mahadevan
004955b58c boards: rw612: Enable XTAL32
This oscillator has better accuracy and is available by default
on this board.
Disable this in the ethernet variant where XTAL32 is disconnected
so we can use the ethernet pins.

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2025-08-20 07:38:27 +02:00
Mahesh Mahadevan
c3058ec765 dts: nxp_rw6xx: Use device tree property to configure XTAL32
Switch the XTAL32 configuration from Kconfig to devicetree

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2025-08-20 07:38:27 +02:00
Benjamin Cabé
f4a85bbaa9 include: drivers: consolidate emulation headers
Do not clutter the "Device Drivers" documentation with emulation
headers.
Ensure each emulated device API appears both in the device group as
well as "Emulator interfaces" (e.g. bbram_emul is showing up in
both BBRAM docs as well as Emulator Interfaces docs)

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-08-20 02:43:24 +02:00
Tomáš Juřena
488b1aa1c1 boards: makerbase: Use STM32_CLOCK macro in all boards
Replacing the hexadecimal values with bit position is less error-prone
and easier to follow.

The change was done by following command (convert only values where one
bit is set):

```
find boards/st/ -type f \( -name "*.dts" -o -name "*.dtsi" \) \
  -exec gawk -i inplace '{
    if (match(\
        $0,\
        /(.*)STM32_CLOCK_BUS_([A-Z0-9_]+)[ \t]+0x([0-9A-Fa-f]+)>([;,]?)/,\
        m)) {
      val = strtonum("0x" m[3])
      if (and(val, val-1) == 0) {
        bit = int(log(val)/log(2))
        print m[1] "STM32_CLOCK(" m[2] ", " bit ")>" m[4]
      } else {
        print $0
      }
    } else {
      print
    }
  }' {} \;
```

Signed-off-by: Tomáš Juřena <jurenatomas@gmail.com>
2025-08-20 02:18:25 +02:00
Tomáš Juřena
17a0b3ea6e boards: iar: Use STM32_CLOCK macro in all boards
Replacing the hexadecimal values with bit position is less error-prone
and easier to follow.

The change was done by following command (convert only values where one
bit is set):

```
find boards/st/ -type f \( -name "*.dts" -o -name "*.dtsi" \) \
  -exec gawk -i inplace '{
    if (match(\
        $0,\
        /(.*)STM32_CLOCK_BUS_([A-Z0-9_]+)[ \t]+0x([0-9A-Fa-f]+)>([;,]?)/,\
        m)) {
      val = strtonum("0x" m[3])
      if (and(val, val-1) == 0) {
        bit = int(log(val)/log(2))
        print m[1] "STM32_CLOCK(" m[2] ", " bit ")>" m[4]
      } else {
        print $0
      }
    } else {
      print
    }
  }' {} \;
```

Signed-off-by: Tomáš Juřena <jurenatomas@gmail.com>
2025-08-20 02:18:25 +02:00
Tomáš Juřena
a7d9a81279 boards: antmicro: Use STM32_CLOCK macro in all boards
Replacing the hexadecimal values with bit position is less error-prone
and easier to follow.

The change was done by following command (convert only values where one
bit is set):

```
find boards/st/ -type f \( -name "*.dts" -o -name "*.dtsi" \) \
  -exec gawk -i inplace '{
    if (match(\
        $0,\
        /(.*)STM32_CLOCK_BUS_([A-Z0-9_]+)[ \t]+0x([0-9A-Fa-f]+)>([;,]?)/,\
        m)) {
      val = strtonum("0x" m[3])
      if (and(val, val-1) == 0) {
        bit = int(log(val)/log(2))
        print m[1] "STM32_CLOCK(" m[2] ", " bit ")>" m[4]
      } else {
        print $0
      }
    } else {
      print
    }
  }' {} \;
```

Signed-off-by: Tomáš Juřena <jurenatomas@gmail.com>
2025-08-20 02:18:25 +02:00
Tomáš Juřena
7b33edd1b9 boards: witte: Use STM32_CLOCK macro in all boards
Replacing the hexadecimal values with bit position is less error-prone
and easier to follow.

The change was done by following command (convert only values where one
bit is set):

```
find boards/st/ -type f \( -name "*.dts" -o -name "*.dtsi" \) \
  -exec gawk -i inplace '{
    if (match(\
        $0,\
        /(.*)STM32_CLOCK_BUS_([A-Z0-9_]+)[ \t]+0x([0-9A-Fa-f]+)>([;,]?)/,\
        m)) {
      val = strtonum("0x" m[3])
      if (and(val, val-1) == 0) {
        bit = int(log(val)/log(2))
        print m[1] "STM32_CLOCK(" m[2] ", " bit ")>" m[4]
      } else {
        print $0
      }
    } else {
      print
    }
  }' {} \;
```

Signed-off-by: Tomáš Juřena <jurenatomas@gmail.com>
2025-08-20 02:18:25 +02:00
Tomáš Juřena
bb047704cf boards: rakwireless: Use STM32_CLOCK macro in all boards
Replacing the hexadecimal values with bit position is less error-prone
and easier to follow.

The change was done by following command (convert only values where one
bit is set):

```
find boards/st/ -type f \( -name "*.dts" -o -name "*.dtsi" \) \
  -exec gawk -i inplace '{
    if (match(\
        $0,\
        /(.*)STM32_CLOCK_BUS_([A-Z0-9_]+)[ \t]+0x([0-9A-Fa-f]+)>([;,]?)/,\
        m)) {
      val = strtonum("0x" m[3])
      if (and(val, val-1) == 0) {
        bit = int(log(val)/log(2))
        print m[1] "STM32_CLOCK(" m[2] ", " bit ")>" m[4]
      } else {
        print $0
      }
    } else {
      print
    }
  }' {} \;
```

Signed-off-by: Tomáš Juřena <jurenatomas@gmail.com>
2025-08-20 02:18:25 +02:00
Tomáš Juřena
da2672c781 boards: weact: Use STM32_CLOCK macro in all boards
Replacing the hexadecimal values with bit position is less error-prone
and easier to follow.

The change was done by following command (convert only values where one
bit is set):

```
find boards/st/ -type f \( -name "*.dts" -o -name "*.dtsi" \) \
  -exec gawk -i inplace '{
    if (match(\
        $0,\
        /(.*)STM32_CLOCK_BUS_([A-Z0-9_]+)[ \t]+0x([0-9A-Fa-f]+)>([;,]?)/,\
        m)) {
      val = strtonum("0x" m[3])
      if (and(val, val-1) == 0) {
        bit = int(log(val)/log(2))
        print m[1] "STM32_CLOCK(" m[2] ", " bit ")>" m[4]
      } else {
        print $0
      }
    } else {
      print
    }
  }' {} \;
```

Signed-off-by: Tomáš Juřena <jurenatomas@gmail.com>
2025-08-20 02:18:25 +02:00
Tomáš Juřena
80036d3a3b boards: we: Use STM32_CLOCK macro in all boards
Replacing the hexadecimal values with bit position is less error-prone
and easier to follow.

The change was done by following command (convert only values where one
bit is set):

```
find boards/st/ -type f \( -name "*.dts" -o -name "*.dtsi" \) \
  -exec gawk -i inplace '{
    if (match(\
        $0,\
        /(.*)STM32_CLOCK_BUS_([A-Z0-9_]+)[ \t]+0x([0-9A-Fa-f]+)>([;,]?)/,\
        m)) {
      val = strtonum("0x" m[3])
      if (and(val, val-1) == 0) {
        bit = int(log(val)/log(2))
        print m[1] "STM32_CLOCK(" m[2] ", " bit ")>" m[4]
      } else {
        print $0
      }
    } else {
      print
    }
  }' {} \;
```

Signed-off-by: Tomáš Juřena <jurenatomas@gmail.com>
2025-08-20 02:18:25 +02:00
Tomáš Juřena
750857d1cf boards: seger: Use STM32_CLOCK macro in all boards
Replacing the hexadecimal values with bit position is less error-prone
and easier to follow.

The change was done by following command (convert only values where one
bit is set):

```
find boards/st/ -type f \( -name "*.dts" -o -name "*.dtsi" \) \
  -exec gawk -i inplace '{
    if (match(\
        $0,\
        /(.*)STM32_CLOCK_BUS_([A-Z0-9_]+)[ \t]+0x([0-9A-Fa-f]+)>([;,]?)/,\
        m)) {
      val = strtonum("0x" m[3])
      if (and(val, val-1) == 0) {
        bit = int(log(val)/log(2))
        print m[1] "STM32_CLOCK(" m[2] ", " bit ")>" m[4]
      } else {
        print $0
      }
    } else {
      print
    }
  }' {} \;
```

Signed-off-by: Tomáš Juřena <jurenatomas@gmail.com>
2025-08-20 02:18:25 +02:00
Tomáš Juřena
25d0a03baa boards: seeed: Use STM32_CLOCK macro in all boards
Replacing the hexadecimal values with bit position is less error-prone
and easier to follow.

The change was done by following command (convert only values where one
bit is set):

```
find boards/st/ -type f \( -name "*.dts" -o -name "*.dtsi" \) \
  -exec gawk -i inplace '{
    if (match(\
        $0,\
        /(.*)STM32_CLOCK_BUS_([A-Z0-9_]+)[ \t]+0x([0-9A-Fa-f]+)>([;,]?)/,\
        m)) {
      val = strtonum("0x" m[3])
      if (and(val, val-1) == 0) {
        bit = int(log(val)/log(2))
        print m[1] "STM32_CLOCK(" m[2] ", " bit ")>" m[4]
      } else {
        print $0
      }
    } else {
      print
    }
  }' {} \;
```

Signed-off-by: Tomáš Juřena <jurenatomas@gmail.com>
2025-08-20 02:18:25 +02:00
Tomáš Juřena
0d18f32137 boards: seco: Use STM32_CLOCK macro in all boards
Replacing the hexadecimal values with bit position is less error-prone
and easier to follow.

The change was done by following command (convert only values where one
bit is set):

```
find boards/st/ -type f \( -name "*.dts" -o -name "*.dtsi" \) \
  -exec gawk -i inplace '{
    if (match(\
        $0,\
        /(.*)STM32_CLOCK_BUS_([A-Z0-9_]+)[ \t]+0x([0-9A-Fa-f]+)>([;,]?)/,\
        m)) {
      val = strtonum("0x" m[3])
      if (and(val, val-1) == 0) {
        bit = int(log(val)/log(2))
        print m[1] "STM32_CLOCK(" m[2] ", " bit ")>" m[4]
      } else {
        print $0
      }
    } else {
      print
    }
  }' {} \;
```

Signed-off-by: Tomáš Juřena <jurenatomas@gmail.com>
2025-08-20 02:18:25 +02:00
Tomáš Juřena
fc94af1e8f boards: ronoth: Use STM32_CLOCK macro in all boards
Replacing the hexadecimal values with bit position is less error-prone
and easier to follow.

The change was done by following command (convert only values where one
bit is set):

```
find boards/st/ -type f \( -name "*.dts" -o -name "*.dtsi" \) \
  -exec gawk -i inplace '{
    if (match(\
        $0,\
        /(.*)STM32_CLOCK_BUS_([A-Z0-9_]+)[ \t]+0x([0-9A-Fa-f]+)>([;,]?)/,\
        m)) {
      val = strtonum("0x" m[3])
      if (and(val, val-1) == 0) {
        bit = int(log(val)/log(2))
        print m[1] "STM32_CLOCK(" m[2] ", " bit ")>" m[4]
      } else {
        print $0
      }
    } else {
      print
    }
  }' {} \;
```

Signed-off-by: Tomáš Juřena <jurenatomas@gmail.com>
2025-08-20 02:18:25 +02:00
Tomáš Juřena
4531b8ab18 boards: others: Use STM32_CLOCK macro in all boards
Replacing the hexadecimal values with bit position is less error-prone
and easier to follow.

The change was done by following command (convert only values where one
bit is set):

```
find boards/st/ -type f \( -name "*.dts" -o -name "*.dtsi" \) \
  -exec gawk -i inplace '{
    if (match(\
        $0,\
        /(.*)STM32_CLOCK_BUS_([A-Z0-9_]+)[ \t]+0x([0-9A-Fa-f]+)>([;,]?)/,\
        m)) {
      val = strtonum("0x" m[3])
      if (and(val, val-1) == 0) {
        bit = int(log(val)/log(2))
        print m[1] "STM32_CLOCK(" m[2] ", " bit ")>" m[4]
      } else {
        print $0
      }
    } else {
      print
    }
  }' {} \;
```

Signed-off-by: Tomáš Juřena <jurenatomas@gmail.com>
2025-08-20 02:18:25 +02:00
Tomáš Juřena
da1fa63a5c boards: olimex: Use STM32_CLOCK macro in all boards
Replacing the hexadecimal values with bit position is less error-prone
and easier to follow.

The change was done by following command (convert only values where one
bit is set):

```
find boards/st/ -type f \( -name "*.dts" -o -name "*.dtsi" \) \
  -exec gawk -i inplace '{
    if (match(\
        $0,\
        /(.*)STM32_CLOCK_BUS_([A-Z0-9_]+)[ \t]+0x([0-9A-Fa-f]+)>([;,]?)/,\
        m)) {
      val = strtonum("0x" m[3])
      if (and(val, val-1) == 0) {
        bit = int(log(val)/log(2))
        print m[1] "STM32_CLOCK(" m[2] ", " bit ")>" m[4]
      } else {
        print $0
      }
    } else {
      print
    }
  }' {} \;
```

Signed-off-by: Tomáš Juřena <jurenatomas@gmail.com>
2025-08-20 02:18:25 +02:00
Tomáš Juřena
41214e9484 boards: mxchip: Use STM32_CLOCK macro in all boards
Replacing the hexadecimal values with bit position is less error-prone
and easier to follow.

The change was done by following command (convert only values where one
bit is set):

```
find boards/st/ -type f \( -name "*.dts" -o -name "*.dtsi" \) \
  -exec gawk -i inplace '{
    if (match(\
        $0,\
        /(.*)STM32_CLOCK_BUS_([A-Z0-9_]+)[ \t]+0x([0-9A-Fa-f]+)>([;,]?)/,\
        m)) {
      val = strtonum("0x" m[3])
      if (and(val, val-1) == 0) {
        bit = int(log(val)/log(2))
        print m[1] "STM32_CLOCK(" m[2] ", " bit ")>" m[4]
      } else {
        print $0
      }
    } else {
      print
    }
  }' {} \;
```

Signed-off-by: Tomáš Juřena <jurenatomas@gmail.com>
2025-08-20 02:18:25 +02:00
Tomáš Juřena
65ddf37780 boards: microe: Use STM32_CLOCK macro in all boards
Replacing the hexadecimal values with bit position is less error-prone
and easier to follow.

The change was done by following command (convert only values where one
bit is set):

```
find boards/st/ -type f \( -name "*.dts" -o -name "*.dtsi" \) \
  -exec gawk -i inplace '{
    if (match(\
        $0,\
        /(.*)STM32_CLOCK_BUS_([A-Z0-9_]+)[ \t]+0x([0-9A-Fa-f]+)>([;,]?)/,\
        m)) {
      val = strtonum("0x" m[3])
      if (and(val, val-1) == 0) {
        bit = int(log(val)/log(2))
        print m[1] "STM32_CLOCK(" m[2] ", " bit ")>" m[4]
      } else {
        print $0
      }
    } else {
      print
    }
  }' {} \;
```

Signed-off-by: Tomáš Juřena <jurenatomas@gmail.com>
2025-08-20 02:18:25 +02:00
Tomáš Juřena
4d04478674 boards: google: Use STM32_CLOCK macro in all boards
Replacing the hexadecimal values with bit position is less error-prone
and easier to follow.

The change was done by following command (convert only values where one
bit is set):

```
find boards/st/ -type f \( -name "*.dts" -o -name "*.dtsi" \) \
  -exec gawk -i inplace '{
    if (match(\
        $0,\
        /(.*)STM32_CLOCK_BUS_([A-Z0-9_]+)[ \t]+0x([0-9A-Fa-f]+)>([;,]?)/,\
        m)) {
      val = strtonum("0x" m[3])
      if (and(val, val-1) == 0) {
        bit = int(log(val)/log(2))
        print m[1] "STM32_CLOCK(" m[2] ", " bit ")>" m[4]
      } else {
        print $0
      }
    } else {
      print
    }
  }' {} \;
```

Signed-off-by: Tomáš Juřena <jurenatomas@gmail.com>
2025-08-20 02:18:25 +02:00
Tomáš Juřena
55d4766084 boards: blues: Use STM32_CLOCK macro in all boards
Replacing the hexadecimal values with bit position is less error-prone
and easier to follow.

The change was done by following command (convert only values where one
bit is set):

```
find boards/st/ -type f \( -name "*.dts" -o -name "*.dtsi" \) \
  -exec gawk -i inplace '{
    if (match(\
        $0,\
        /(.*)STM32_CLOCK_BUS_([A-Z0-9_]+)[ \t]+0x([0-9A-Fa-f]+)>([;,]?)/,\
        m)) {
      val = strtonum("0x" m[3])
      if (and(val, val-1) == 0) {
        bit = int(log(val)/log(2))
        print m[1] "STM32_CLOCK(" m[2] ", " bit ")>" m[4]
      } else {
        print $0
      }
    } else {
      print
    }
  }' {} \;
```

Signed-off-by: Tomáš Juřena <jurenatomas@gmail.com>
2025-08-20 02:18:25 +02:00
Tomáš Juřena
2856c76760 boards: arduino: Use STM32_CLOCK macro in all boards
Replacing the hexadecimal values with bit position is less error-prone
and easier to follow.

The change was done by following command (convert only values where one
bit is set):

```
find boards/st/ -type f \( -name "*.dts" -o -name "*.dtsi" \) \
  -exec gawk -i inplace '{
    if (match(\
        $0,\
        /(.*)STM32_CLOCK_BUS_([A-Z0-9_]+)[ \t]+0x([0-9A-Fa-f]+)>([;,]?)/,\
        m)) {
      val = strtonum("0x" m[3])
      if (and(val, val-1) == 0) {
        bit = int(log(val)/log(2))
        print m[1] "STM32_CLOCK(" m[2] ", " bit ")>" m[4]
      } else {
        print $0
      }
    } else {
      print
    }
  }' {} \;
```

Signed-off-by: Tomáš Juřena <jurenatomas@gmail.com>
2025-08-20 02:18:25 +02:00
Tomáš Juřena
3eb9120e14 boards: alientek: Use STM32_CLOCK macro in all boards
Replacing the hexadecimal values with bit position is less error-prone
and easier to follow.

The change was done by following command (convert only values where one
bit is set):

```
find boards/st/ -type f \( -name "*.dts" -o -name "*.dtsi" \) \
  -exec gawk -i inplace '{
    if (match(\
        $0,\
        /(.*)STM32_CLOCK_BUS_([A-Z0-9_]+)[ \t]+0x([0-9A-Fa-f]+)>([;,]?)/,\
        m)) {
      val = strtonum("0x" m[3])
      if (and(val, val-1) == 0) {
        bit = int(log(val)/log(2))
        print m[1] "STM32_CLOCK(" m[2] ", " bit ")>" m[4]
      } else {
        print $0
      }
    } else {
      print
    }
  }' {} \;
```

Signed-off-by: Tomáš Juřena <jurenatomas@gmail.com>
2025-08-20 02:18:25 +02:00
Tomáš Juřena
01f41da1bc boards: adi: Use STM32_CLOCK macro in all boards
Replacing the hexadecimal values with bit position is less error-prone
and easier to follow.

The change was done by following command (convert only values where one
bit is set):

```
find boards/st/ -type f \( -name "*.dts" -o -name "*.dtsi" \) \
  -exec gawk -i inplace '{
    if (match(\
        $0,\
        /(.*)STM32_CLOCK_BUS_([A-Z0-9_]+)[ \t]+0x([0-9A-Fa-f]+)>([;,]?)/,\
        m)) {
      val = strtonum("0x" m[3])
      if (and(val, val-1) == 0) {
        bit = int(log(val)/log(2))
        print m[1] "STM32_CLOCK(" m[2] ", " bit ")>" m[4]
      } else {
        print $0
      }
    } else {
      print
    }
  }' {} \;
```

Signed-off-by: Tomáš Juřena <jurenatomas@gmail.com>
2025-08-20 02:18:25 +02:00
Tomáš Juřena
106fffe716 boards: adafruit: Use STM32_CLOCK macro in all boards
Replacing the hexadecimal values with bit position is less error-prone
and easier to follow.

The change was done by following command (convert only values where one
bit is set):

```
find boards/st/ -type f \( -name "*.dts" -o -name "*.dtsi" \) \
  -exec gawk -i inplace '{
    if (match(\
        $0,\
        /(.*)STM32_CLOCK_BUS_([A-Z0-9_]+)[ \t]+0x([0-9A-Fa-f]+)>([;,]?)/,\
        m)) {
      val = strtonum("0x" m[3])
      if (and(val, val-1) == 0) {
        bit = int(log(val)/log(2))
        print m[1] "STM32_CLOCK(" m[2] ", " bit ")>" m[4]
      } else {
        print $0
      }
    } else {
      print
    }
  }' {} \;
```

Signed-off-by: Tomáš Juřena <jurenatomas@gmail.com>
2025-08-20 02:18:25 +02:00
Tomáš Juřena
4635588474 boards: 96boards: Use STM32_CLOCK macro in all boards
Replacing the hexadecimal values with bit position is less error-prone
and easier to follow.

The change was done by following command (convert only values where one
bit is set):

```
find boards/st/ -type f \( -name "*.dts" -o -name "*.dtsi" \) \
  -exec gawk -i inplace '{
    if (match(\
        $0,\
        /(.*)STM32_CLOCK_BUS_([A-Z0-9_]+)[ \t]+0x([0-9A-Fa-f]+)>([;,]?)/,\
        m)) {
      val = strtonum("0x" m[3])
      if (and(val, val-1) == 0) {
        bit = int(log(val)/log(2))
        print m[1] "STM32_CLOCK(" m[2] ", " bit ")>" m[4]
      } else {
        print $0
      }
    } else {
      print
    }
  }' {} \;
```

Signed-off-by: Tomáš Juřena <jurenatomas@gmail.com>
2025-08-20 02:18:25 +02:00
Tomáš Juřena
f3e5644f66 boards: st: Use STM32_CLOCK macro in all boards
Replacing the hexadecimal values with bit position is less error-prone
and easier to follow.

The change was done by following command (convert only values where one
bit is set):

```
find boards/st/ -type f \( -name "*.dts" -o -name "*.dtsi" \) \
  -exec gawk -i inplace '{
    if (match(\
        $0,\
        /(.*)STM32_CLOCK_BUS_([A-Z0-9_]+)[ \t]+0x([0-9A-Fa-f]+)>([;,]?)/,\
        m)) {
      val = strtonum("0x" m[3])
      if (and(val, val-1) == 0) {
        bit = int(log(val)/log(2))
        print m[1] "STM32_CLOCK(" m[2] ", " bit ")>" m[4]
      } else {
        print $0
      }
    } else {
      print
    }
  }' {} \;
```

Signed-off-by: Tomáš Juřena <jurenatomas@gmail.com>
2025-08-20 02:18:25 +02:00
Yasushi SHOJI
4c506c01ca scripts: west_commands: sdk: clarify toolchain selection help
Users were confused about which toolchain names to pass to
`west sdk install -t`, since the documentation did not list them.
Enhance the help text to suggest installing all toolchains if
unsure and point to the SDK release notes where the available
toolchains are listed.

ref: https://github.com/zephyrproject-rtos/zephyr/discussions/94572

Signed-off-by: Yasushi SHOJI <yashi@spacecubics.com>
2025-08-20 02:18:12 +02:00
Yasushi SHOJI
8f7700be19 doc: getting_started: simplify Python dependency install step
The original wording made the `west packages` step look optional, which
caused confusion for users. Rephrase it as a direct instruction to make it
clear this step is required.

ref: https://github.com/zephyrproject-rtos/zephyr/discussions/94572

Signed-off-by: Yasushi SHOJI <yashi@spacecubics.com>
2025-08-20 02:18:12 +02:00
Abderrahmane JARMOUNI
75034073d0 MAINTAINERS: add myself as Samples collaborator
Add myself (JarmouniA) as collaborator in the Samples area.

Signed-off-by: Abderrahmane JARMOUNI <git@jarmouni.me>
2025-08-20 02:18:02 +02:00
Dmitrii Sharshakov
3835d9ae0f sensor: adltc2990: correct emulator implementation
Fix an out of bounds access found by ASan.

Also remove mock_i2c_reg_error which seems to never be read.

Signed-off-by: Dmitrii Sharshakov <d3dx12.xx@gmail.com>
2025-08-20 02:17:53 +02:00
Dmitrii Sharshakov
7ebdf390d7 tests: fuel_gauge: sy24561: improve test
Validate properties we receive, make sure warnings and errors are
printed, verify config register writes, run on native_sim_64 as well.

Signed-off-by: Dmitrii Sharshakov <d3dx12.xx@gmail.com>
2025-08-20 02:17:37 +02:00
Dmitrii Sharshakov
81455310b3 fuel_gauge: sy24561: improve emulation
Fix issues found by ASan, log register writes for inspection using
console harness.

Fixes: 5f84be617e

Signed-off-by: Dmitrii Sharshakov <d3dx12.xx@gmail.com>
2025-08-20 02:17:37 +02:00
Dmitrii Sharshakov
b98e7f501f pm: fix NULL pointer dereference with stats
Fix null pointer dereference in pm_system_suspend

Fixes #89228

Signed-off-by: Dmitrii Sharshakov <d3dx12.xx@gmail.com>
2025-08-20 02:17:20 +02:00
Will McGloughlin
a06cacf16c boards: st: nucleo_l552ze_q: Enable USB
The USB device samples do not build for the Nucleo L552ZE-Q because usb is
not enabled in the board DTS files. Fix it by enabling usb in the board DTS
files.

Signed-off-by: Will McGloughlin <willem.mcg@gmail.com>
2025-08-20 02:17:08 +02:00
Jonas Berg
41a0060338 Drivers: GPIO: Allow AW9523 to be used without interrupts
There will be an compilation error if there is no interrupt GPIO defined
in the device tree file, as parts of the config and data structs
have #if that depends on the presence of interrupt GPIO.

Use the same #if constructs also on the functions that use those
structs.

Signed-off-by: Jonas Berg <jonas.s.t.berg@gmail.com>
2025-08-20 02:16:57 +02:00
Mahesh Mahadevan
95e274b866 drivers: pinctrl_mci_io_mux: Fix sleep output configuration
The sleep output configuration should be skipped for pins
22 to 28.
This was causing incorrect GPIO wakeups when entering
standby mode on RW612.

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2025-08-19 23:36:38 +02:00
Maureen Helm
8a63b53193 boards: adi: max78000fthr: Enable feather i2c instance
Enables the i2c instance connected to the feather header.

Signed-off-by: Maureen Helm <maureen.helm@analog.com>
2025-08-19 23:36:29 +02:00
Jilay Pandya
1e34d479eb drivers: step_dir: refactor stepper_handle_timing_signal
1. Reduce the spinlock scope in stepper_handle_timing_signal
2. perform a step each time the timing signal is called
3. Increment/Decrement actual_position and steps using atomics

Signed-off-by: Jilay Pandya <jilay.pandya@outlook.com>
2025-08-19 23:36:20 +02:00
Jilay Pandya
3314473589 drivers: stepper: move_by(dev,0) shall return steps_completed
move_by(dev,0) shall stop the timing source and trigger
STEPPER_EVENT_STEPS_COMPLETED event

Signed-off-by: Jilay Pandya <jilay.pandya@outlook.com>
2025-08-19 23:36:20 +02:00
Declan Snyder
ad39866b12 soc: mcxw: Add LPIT support
Enable LPIT peripheral on MCXW7x socs.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-08-19 23:36:06 +02:00
Declan Snyder
42ed3294f2 soc: rw: Clock ctimer if using it for PWM
Clock ctimer if being used for PWM. Otherwise, it not only doesn't work
but makes the chip unable to be communicated to by the debugger.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-08-19 23:35:59 +02:00
Declan Snyder
88918da169 boards: frdm_mcxn947: Add missing flexcomm clocks
Add the missing flexcomm clocking code for this board.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-08-19 23:35:50 +02:00
Mahesh Mahadevan
4a67a61227 soc: rw612: Handle counter overflow in Power Mode 3
The RTC counter that is used in Power Mode 3 to track
System time could overflow for large timeouts.
Add code to catch wakeup events due to this overflow and re-enter
Power Mode 3.

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2025-08-19 23:35:32 +02:00
Mahesh Mahadevan
4da30d01b8 drivers: mcux_os_timer: Handle counter overflow in Power Mode 3
The counter that is used in Power Mode 3 to track System time could
overflow for large timeouts.
Add an API that the power system could use to ignore wakeup events
from the timer.

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2025-08-19 23:35:32 +02:00
Mahesh Mahadevan
ac7451e6af drivers: timer: Move MAX_WAIT to header file
Move MAX_WAIT define to the system timer header file
so system timer drivers can use this define.

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2025-08-19 23:35:32 +02:00
Neil Chen
501c6abaac boards: frdm_mcxn236: Support sai for NXP frdm_mcxn236
1. Support sai for NXP frdm_mcxn236.
2. Verified tests/drivers/i2s/i2s_speed

Signed-off-by: Neil Chen <cheng.chen_1@nxp.com>
2025-08-19 23:35:24 +02:00
Neil Chen
c9ce1a7d9c boards: frdm_mcxn236: add ewm support
1. Add EWM Support for frdm_mcxn236
2. verified tests/drivers/watchdog/wdt_basic_reset_none

Signed-off-by: Neil Chen <cheng.chen_1@nxp.com>
2025-08-19 23:35:24 +02:00
Neil Chen
31656330e0 soc: mcxn23x: Add HWINFO support
1.Add HWINFO support by reading the UUID from Flash Bank0_IFR1.
2.Verified tests/drivers/hwinfo/api

Signed-off-by: Neil Chen <cheng.chen_1@nxp.com>
2025-08-19 23:35:24 +02:00
Benjamin Cabé
1b97f4b2b0 include: usbc: doc: Group all USB-C API in same doxygen Group
Put every header defined in include/zephyr/drivers/usb_c/ into the same
doxygroup (`usb_type_c`) so as to not clutter the top-level
`io_interfaces` group with multiple USB-C related groups.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-08-19 20:47:57 +02:00
Henrik Brix Andersen
e1f7569c59 boards: st: nucleo_h723zg: list usbd as a supported feature
Add "usbd" in the list of supported features for the ST NUCLEO-H723ZG
development board.

Signed-off-by: Henrik Brix Andersen <henrik@brixandersen.dk>
2025-08-19 20:47:50 +02:00
Henrik Brix Andersen
4db2a3d288 boards: others: candlelightfd: add list of supported features
Add list of supported features for the candleLightFD board variants.

Signed-off-by: Henrik Brix Andersen <henrik@brixandersen.dk>
2025-08-19 20:47:40 +02:00
Keith Packard
c1c351d175 modules/cmsis_6: Move to version with picolibc patch
This version along the zephyr branch allows cmsis_6 to compile against
picolibc.

Signed-off-by: Keith Packard <keithp@keithp.com>
2025-08-19 20:47:35 +02:00
f8330b5589 dts: xilinx: add cadence spi controllers to zynqmp.dtsi
Adds spi controller nodes for Cadence SPI controllers in zynqmp.dtsi.

Signed-off-by: Michael Estes <michael.estes@byteserv.io>
2025-08-19 20:47:27 +02:00
Jonas Berg
016f455163 Boards: Shields: Add Adafruit LIS3DH accelerometer shield
Add the Adafruit LIS3DH I2C accelerometer shield.
The picture is from the Adafruit product page.

Signed-off-by: Jonas Berg <jonas.s.t.berg@gmail.com>
2025-08-19 19:23:44 +02:00
Benjamin Cabé
8de9e05dfb include: drivers: input: add @file tag to analog_axis headers
This helps anchoring the file to the proper section in the online
documentation when browsing by file.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-08-19 19:18:38 +02:00
Benjamin Cabé
b1358efd84 include: drivers: input: enhance Doxygen documentation for pmw3610
Complete the Doxygen documentation for this input driver, put in
input_interface_ext group.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-08-19 19:18:38 +02:00
Benjamin Cabé
487ea79700 include: drivers: input: add missing @file command to input_kbd_matrix.h
This helps anchoring the file to the proper section in the online
documentation when browsing by file.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-08-19 19:18:38 +02:00
Benjamin Cabé
b3c85b37df include: drivers: input: add missing @file command to input_touch header
This helps anchoring the file to the proper section in the online
documentation when browsing by file.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-08-19 19:18:38 +02:00
Benjamin Cabé
94231fd096 include: drivers: input: add missing @file command to input_hid header
This helps anchoring the file to the proper section in the online
documentation when browsing by file.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-08-19 19:18:38 +02:00
Benjamin Cabé
93dda038a2 include: drivers: input: add Doxygen documentation for keymap utilities
Add docs and group under input_interface Doxygen group.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-08-19 19:18:38 +02:00
Benjamin Cabé
f355788ca5 include: drivers: input: enhance Doxygen documentation for ra_ctsu
Complete the Doxygen documentation for this input driver, put in
input_interface_ext group.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-08-19 19:18:38 +02:00
Benjamin Cabé
81cdd69fc8 include: drivers: input: enhance Doxygen documentation for paw32xx driver
Complete the Doxygen documentation for this input driver,
put in input_interface_ext group.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-08-19 19:18:38 +02:00
Benjamin Cabé
05478edacb include: drivers: input: enhance Doxygen documentation for pat912xx driver
Complete the Doxygen documentation for this input driver,
put in input_interface_ext group.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-08-19 19:18:38 +02:00
Benjamin Cabé
56a527321e include: drivers: input: enhance Doxygen documentation for CY8CMBR3xxx
Complete the Doxygen documentation for this input driver,
put in input_interface_ext group.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-08-19 19:18:38 +02:00
Benjamin Cabé
0c006d7523 include: drivers: input: add Doxygen group for hw-specific API extensions
new input_interface_ext group can be used for grouping device-specific
input API extensions together.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-08-19 19:18:38 +02:00
Benjamin Cabé
9105152e57 include: drivers: input: fix doxygen for input_touchscreen_common_config
properly document the struct fields

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-08-19 19:18:38 +02:00
Benjamin Cabé
0ff45a6d9f include: drivers: input: add @file command to input.h
This helps anchoring the file to the proper section in the online
documentation when browsing by file.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-08-19 19:18:38 +02:00
Pieter De Gendt
300016c801 drivers: ethernet: stm32: Set LAA bit on MAC address based on device ID
The MAC addressed derived from the device ID is not assigned by the
manufacturer and therefor the Locally Administered Address (LAA) bit should
be set.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-08-19 19:14:45 +02:00
Dmitrii Sharshakov
b2db425b62 soc: raspberrypi: rp2350: indicate DSP extension support
Confirmed by section 3.7.2 in the datasheet (version 29 July 2025) and
running a sample piece of code exercising smuad, smladx and
other DSP intrinsics.

Signed-off-by: Dmitrii Sharshakov <d3dx12.xx@gmail.com>
2025-08-19 19:14:29 +02:00
Tim Pambor
e3a99bd625 shell: backend: Default to poll mode for uart_native_pty
The interrupt-driven UART API is emulated via polling on native_sim,
which introduces additional overhead. Defaulting to poll mode improves
performance by avoiding this emulation cost.

Signed-off-by: Tim Pambor <tim.pambor@codewrights.de>
2025-08-19 19:14:21 +02:00
Tim Pambor
120f5a073c serial: uart_native_pty: IRQ support
Add support for the interrupt-driven API. Interrupts are
emulated using a polling thread.

Signed-off-by: Tim Pambor <tim.pambor@codewrights.de>
Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-08-19 19:14:21 +02:00
John Lin
0ad98e9edb dts: vendor: raspberrypi: 4M partitions for raspberrypi
4M partitions for Raspberry Pi Pico 2/W series.

Signed-off-by: John Lin <john.lin@beechwoods.com>
2025-08-19 19:14:12 +02:00
Seppo Takalo
6cdae490e3 net: lwm2m: Suppress many LOG_ERR() that are not fatal
Suppress many LOG_ERR() messages from LwM2M registry
that are not necessary runtime errors.

Libraries and applications should be able to do following
without causing LOG_ERR to be produced:

* Checking existence of object, resource or resource instance
  using lwm2m_engine_get_res(), lwm2m_engine_get_res_inst()
  or path_to_objs(). These are only exposed in internal header.
* Delete object instance or resource instance without checking
  if it exits.

As there is no public API to check existence of some path,
application is much easier to write in a way that it directly
calls just lwm2m_get...(), lwm2m_set...(), lwm2m_delete...()
and trust the return code of -ENOENT.

Signed-off-by: Seppo Takalo <seppo.takalo@nordicsemi.no>
2025-08-19 19:13:59 +02:00
Andreas Schmidt
62d9e618fa dts: arm: st: stm32g4: add quadspi node
The STM32G4 variants g473, g474, g483, g484, g491 and g4a1 do support QSPI
interface. All mentioned variants include the stm32g491.dtsi.

Signed-off-by: Andreas Schmidt <andreas.schmidt@dormakaba.com>
2025-08-19 19:13:51 +02:00
Hans Binderup
0b7db98317 dts: mspm0: add uart1,2 and 3 to generic mspm0.dtsi
It's now possible to describe and enable the other HW uarts.

Adding interrupts to uart0 as well.

Signed-off-by: Hans Binderup <habi@bang-olufsen.dk>
2025-08-19 19:13:34 +02:00
Jackson Farley
bfdfa2086f serial: Add error checking and interrupt support on mspm0 driver
It is now possible to enable CONFIG_UART_INTERRUPT_DRIVEN for mspm0
uart driver.

Signed-off-by: Jackson Farley <j-farley@ti.com>
Co-authored-by: Hans Binderup <habi@bang-olufsen.dk>
2025-08-19 19:13:34 +02:00
Joel Guittet
820aa7a015 drivers: uart: demonstration of bitbang driver
Add sample for uart bitbang driver.

Signed-off-by: Joel Guittet <joelguittet@gmail.com>
2025-08-19 19:13:19 +02:00
Joel Guittet
3e3ceeae49 drivers: serial: add uart-bitbang support
Initial support for uart bitbang driver.

Signed-off-by: Joel Guittet <joelguittet@gmail.com>
2025-08-19 19:13:19 +02:00
Benjamin Cabé
d7ce089a70 doc: kernel: services: use footnotes in data passing table
Minor cosmetic update so that the notes in the "Data Passing" summary
table are actual interactive footnotes.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-08-19 18:02:26 +02:00
Lothar Felten
7c02d06350 boards: st: nucleo_h563zi: device tree: add alias for led1
Add alias for led1 in addition to led0.
The leds are present on the ST Nucleo H563zi board.
Tested with ST Nucleo H563zi board.

Signed-off-by: Lothar Felten <lothar.felten@gmail.com>
2025-08-19 18:02:17 +02:00
Camille BAUD
6f8eeaa86f west.yml: Update bflb hal for bl70x and bl61x
Update to commit with bl70x and bl61x files

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-08-19 18:01:45 +02:00
Andreas Karner
7df35633dc dts: st: nucleo_u575zi_q enable user button pull down
This PR enabled pull down option for the user button
of the nucleo_u575zi_q board to enhance wake up performance
from standby and stop3 sleep modes.

Signed-off-by: Andreas Karner <andreas.karner@outlook.com>
2025-08-19 18:01:22 +02:00
Lucien Zhao
7fbebea81d boards: mimxrt700_evk: add hwinfo reset_cause support on cm33_cpu0
1. enable hwinfo support
- get_reset_cause
- get_supported_reset_cause
- clear_reset_cause
2. verified tests/drivers/hwinfo

Signed-off-by: Lucien Zhao <lucien.zhao@nxp.com>
2025-08-19 18:00:53 +02:00
Lucien Zhao
5aa600d117 drivers: hwinfo: add hwinfo_mcux_rstctl.c drivers
Implementation is specific to RSTCTL module.
Code mostly copied from hwinfo_mcux_rcm driver.

Signed-off-by: Lucien Zhao <lucien.zhao@nxp.com>
2025-08-19 18:00:53 +02:00
Sri Surya
2febb866e5 boards: ambiq: Add support for the Ambiq Apollo2 EVB board
Adds support for the Ambiq Apollo2 EVB board (AMAPHEVB).

Signed-off-by: Sri Surya <srisurya@linumiz.com>
2025-08-19 18:00:41 +02:00
Sri Surya
358c113a96 soc: ambiq: apollo2: Add support for Apollo2 SoC
Added SoC series for the Ambiq Apollo2 SoC.

Signed-off-by: Sri Surya <srisurya@linumiz.com>
2025-08-19 18:00:41 +02:00
Sri Surya
ad322030a2 dts: arm: ambiq: Add DTSI for Apollo2 SOC
Added DTSI for Apollo2 SOC family

Signed-off-by: Sri Surya <srisurya@linumiz.com>
2025-08-19 18:00:41 +02:00
Sri Surya
acdf69be17 drivers: serial: pl011: Add support for Ambiq Apollo2 SoC UART
Added UART Support for Apollo2 SOC and cleanup.

Signed-off-by: Sri Surya <srisurya@linumiz.com>
2025-08-19 18:00:41 +02:00
Sri Surya
3d91929346 drivers: pinctrl: Add pinctrl driver for Apollo2 SoC
This commit adds pinctrl support for Apollo2 SoC.

Signed-off-by: Sri Surya <srisurya@linumiz.com>
2025-08-19 18:00:41 +02:00
Sri Surya
1a27391c46 dts: bindings: pinctrl: Add pinctrl bindings for Apollo2 SOC
Add pinctrl bindings for apollo2 soc

Signed-off-by: Sri Surya <srisurya@linumiz.com>
2025-08-19 18:00:41 +02:00
Daniel Leung
df35aaaa94 doc: ipc_service: fix header levels
Some header levels are incorrect, e.g. "API Reference" header
level was lower than individual header for each API group.
So fix them.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-08-19 18:00:32 +02:00
Aksel Skauge Mellbye
c8ebe3ce61 boards: seeed: xiao_mg24: Add support for PyOCD runner
Add PyOCD as a runner for xiao_mg24. Document how to install
the flashloader from CMSIS-Pack. PyOCD can be used for flashing
and debugging.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-08-19 14:16:31 +02:00
Bennet Leins
6ac6d4388c boards: st: fix STM nucleo_h533RE LED2
green_led_2 should be set to GPIO_ACTIVE_HIGH
according to the Data sheet [1] provided by ST.

"To light LD2, a high logic state '1' must be written
into the corresponding GPIO PA5. A transistor is used
to drive the LD2."

Link: https://www.st.com/resource/en/user_manual/um3121-stm32h5-nucleo64-board-mb1814-stmicroelectronics.pdf [1]
Signed-off-by: Bennet Leins <bennet.leins@bender.de>
2025-08-19 14:16:23 +02:00
Emil Dahl Juhl
9bb00a0815 boards: st: nucleo_n657x0_q: correct led polarity
As is apparent on the nucleo-n657x0-q schematics[1], all of the three
user leds are controlled via. active low gpios.

Correct the polarity of the leds.

[1] https://www.st.com/resource/en/schematic_pack/mb1940-n657x0q-c02-schematic.pdf

Signed-off-by: Emil Dahl Juhl <emil@s16s.ai>
2025-08-19 14:16:13 +02:00
Kapil Bhatt
f48a66121a net: zperf: Improve UDP multicast upload
UDP multicast uploads did not produce zperf-compatible server stats,
so the client waited for and tried to decode a non-existent reply,
causing “Unexpected response flags” and misleading
“LAST PACKET NOT RECEIVED!!!” output.

This change treats multicast as client-only: after sending
the negative-id FIN it does not wait for or decode server stats,
Instead transmits the FIN a few times to help receivers detect test end.
The shell prints a clear “Statistics (client only)” summary for multicast
and suppresses the error when client stats are valid.

Unicast behavior is unchanged.

Signed-off-by: Kapil Bhatt <kapil.bhatt@nordicsemi.no>
2025-08-19 14:16:05 +02:00
Khaoula Bidani
e4840d00ca boards: st: stm32u3: enable fdcan for stm32u3 boards
Enable FDCAN for Nucleo U385RG-Q board.
Sort properties in the board chosen node and the
supported features in the board description YAML file.

Signed-off-by: Khaoula Bidani <khaoula.bidani-ext@st.com>
2025-08-19 14:15:57 +02:00
Khaoula Bidani
8e3f133eae dts: arm: st: u3: add fdcan
Add FDCAN support to STM32U3

Signed-off-by: Khaoula Bidani <khaoula.bidani-ext@st.com>
2025-08-19 14:15:57 +02:00
Emil Gydesen
e6d6578d96 Bluetooth: CAP: Add missing check for abort in the started cb
bt_cap_initiator_started did not have a check for aborted like
all the other callbacks, which could cause the procedure to
continue even if it was aborted.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-08-19 14:15:48 +02:00
Quy Tran
7de5949b6b tests: driver: adc: Add ADC overlay for RSK-RX130
Add adc overlay node for RSK-RX130-512kb board

Signed-off-by: Quy Tran <quy.tran.pz@renesas.com>
2025-08-19 14:15:41 +02:00
Quy Tran
7ac8efb8c3 boards: renesas: Add ADC support on RSK-RX130 board
Add ADC pinctrl and yaml support on the RSK-RX130 board

Signed-off-by: Quy Tran <quy.tran.pz@renesas.com>
2025-08-19 14:15:41 +02:00
Quy Tran
53cb4fcb05 dts: renesas: rx: Add dts property node for adc on RX130
Add ADC node on RX130-common dts file

Signed-off-by: Quy Tran <quy.tran.pz@renesas.com>
2025-08-19 14:15:41 +02:00
Minh Tang
3f13f25752 drivers: adc: Initial support for ADC driver on RX130
Add driver code and devicetree for 12-bit ADC on
RX130 MCU

Signed-off-by: Minh Tang <minh.tang.ue@bp.renesas.com>
2025-08-19 14:15:41 +02:00
Tamás Kiss
c9087bce75 logging: fix dictionary mode for dropped messages on rtt backend
With the dictionary feature enabled, the RTT backend would still print
the "messages dropped" message as a string instead of the binary format.
Fix that by calling the correct process function when dictionary mode
is enabled.

Signed-off-by: Tamás Kiss <tmik@demant.com>
2025-08-19 13:03:03 +02:00
Krzysztof Chruściński
804e502484 drivers: clock_control: nrf: Add missing flags clearing
When BT dedicated API was turning off the HF clock it was not resetting
status flags. When onoff API was attempting to request HF clock after
that it was detecting unexpected state as status flag was indicating
as if HF clock was on.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-08-19 13:02:44 +02:00
Krzysztof Chruściński
63bc35ad4c soc: nordic: Use default SYS_CLOCK_TICKS_PER_SEC for PPR core
PPR was using 1 kHz system clock frequency instead of default 31250 Hz
used on other cores with GRTC. Low frequency impacts system clock
accuracy. There is no reason to use different frequency for PPR.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-08-19 13:02:38 +02:00
Khoa Nguyen
76fae0bcaf samples: boards: renesas: elc: Add support sample elc for ek_ra4c1
Add support sample app ``renesas/elc`` for Renesas ek_ra4c1 board

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-08-19 13:02:29 +02:00
Khoa Nguyen
1a02d973d4 samples: drivers: counter: Add support alarm for Renesas ek_ra4c1
Add support sample app ``alarm`` for Renesas ek_ra4c1 board

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-08-19 13:02:29 +02:00
Khoa Nguyen
5be75b73b7 tests: drivers: counter: Add support counter_basic_api for ek_ra4c1
Add support test app ``counter_basic_api`` for Renesas ek_ra4c1

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-08-19 13:02:29 +02:00
Khoa Nguyen
538fca94ee tests: boards: renesas: elc: Add support test app elc for ek_ra4c1
Add support test app ``renesas/elc`` for Renesas ek_ra4c1 board

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-08-19 13:02:29 +02:00
Khoa Nguyen
367cbaa266 tests: drivers: uart: Add support test UART for ek_ra4c1
Add support test app ``uart_async_api`` for Renesas ek_ra4c1 board

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-08-19 13:02:29 +02:00
Khoa Nguyen
565c41acee tests: drivers: spi: Add support spi test for ek_ra4c1
Add support test app spi_loopback for ek_ra4c1 board

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-08-19 13:02:29 +02:00
Khoa Nguyen
e4f7e4127e tests: drivers: pwm: Add support test PWM for ek_ra4c1
Add support test app pwm_loopback for ek_ra4c1 board

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-08-19 13:02:29 +02:00
Khoa Nguyen
ec1611a44c tests: drivers: i2c: Add support test I2C for ek_ra4c1
Add support test app i2c_api for ek_ra4c1 board

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-08-19 13:02:29 +02:00
Khoa Nguyen
1d3c7fa1c5 tests: drivers: adc: Add support test ADC for ek_ra4c1
Add support test app adc_accuracy_test and adc_api for ek_ra4c1

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-08-19 13:02:29 +02:00
Khoa Nguyen
a887e36133 boards: renesas: Add support for Renesas ek_ra4c1 board
Add support for Renesas ek_ra4c1 board

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-08-19 13:02:29 +02:00
Khoa Nguyen
9e66dfef44 dts: arm: renesas: ra: Add support for Renesas RA4C1 soc
Add support for Renesas r7fa4c1bd3cfp soc

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-08-19 13:02:29 +02:00
Khoa Nguyen
7d89580a41 manifest: Update hal_renesas for RA4C1 support
Update hal_renesas which support for RA4C1 MCU

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-08-19 13:02:29 +02:00
Jakub Zymelka
138f977704 drivers: adc: nrfx: enable negative values for single-ended ADC readings
The ADC driver API already supports ADC readings which can return signed
values, these are differential readings. In Nordic's datasheet, we have
a mode called "single ended", but its just a name. "Single ended" is a
differential reading, with the negative channel tied to GND. This is not
compatible with zephyrs definition of a single ended reading.

To support Nordic's "single ended" mode, the user must configure
a differential reading, with the negative input tied to ground, which
the saadc driver can then use to configure the reading as Nordic SAADC
"single ended", and return negative values as expected.

Signed-off-by: Jakub Zymelka <jakub.zymelka@nordicsemi.no>
2025-08-19 13:02:21 +02:00
Aksel Skauge Mellbye
93d33faa5c soc: silabs: silabs_s2: Align power states with HAL
The definition of the EM3 energy mode is that software switches
off the LFRCO and LFXO before entering deep sleep. On Series 2,
oscillators are clocked on-demand based on peripheral requests
from hardware. Requesting EM3 will result in EM2 if any active
peripheral uses one of the oscillators, and requesting EM2
will result in EM3 if no peripherals use the oscillators.

In version 2025.6 of the HAL, this was reflected in the API
of the power manager by making EM3 an alias of EM2. Reflect
this in Zephyr by removing the separate EM3 power state.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-08-19 11:39:52 +02:00
Omri Sarig
c712502fb9 scripts/logging: Create live_log_parser
Create a new, generic parser, that is able to parse dictionary logs live
- showing the messages as they are received from the device.

This functionality previously existed only for reading the log from a UART.
With the new script, the functionality is extended to be able to also read
the log from a file or stdin.
Additionally, the script is written in an extend-able way, making it simple
to support more input sources in the future.

The new script contains a better version of the live functionality than the
old script of log_parser_uart script, therefore, the old script has been
deprecated.
The UART script is still available, and will work by invoking the new
implementation with relevant arguments translation, however, it should
ideally not be used any longer, and should be removed from a future
release.

Signed-off-by: Omri Sarig <omsi@demant.com>
2025-08-19 11:39:49 +02:00
Omri Sarig
152e6252fe scripts/logging: Handle partly read packets
The current implementation of the serial log parser is running in a loop -
every 2 seconds it checks if there is any information ready to be read, and
in this case, it reads this information and parses it.
In case the last packet of the information is not fully available, the
script will read only the first part of the packet, and will fail when
parsing, ending the run with an error.

This should not the be the case, as it is not an error to have only part
of the packet in the buffer.
This commit fixes this problem - now, instead of failing because the parser
does not have enough information, the parser will parse all the full
packets it have, and keep the last, partial packet in the queue, to be
parsed together with the next chunk of data.

This is done by updating the log parsers to return the amount of parsed
data when trying to parse the information, and updating the calling scripts
to correctly handle this new return value.
Additionally, the parser is now quietly failing in case of having a partial
message, and throw an exception for any other kind of error in the parsing
(instead of returning a boolean return code).

In addition to the partial packet handling, the current commit also do the
following, minor improvements:
* parserlib now fails by throwing an exception, instead of exiting - this
  is done to make it possible to choose a different handling for the errors
  from the calling code, if needed.
* The dictionary and parser are now created before the parse operation.
  This makes the uart parser more efficient, and also removes the
  previously duplicated messages of build id, target architecture and
  endianess (which was printed every time new information was received from
  the UART).

Signed-off-by: Omri Sarig <omsi@demant.com>
2025-08-19 11:39:49 +02:00
Omri Sarig
cb94b1ba2a scripts/logging: Add support for numbered %ll and %hh
Python does not support values of long-long (ll) or short-short (hh) in
string-formatting. The current parser is correctly removing the first "h"
or "l" from the format, to make it possible to correctly parse these
strings when they are in the dictionary.

However, the current implementation does not correctly handle the case of
having a number before the "ll" or "hh" argument - which is supported by
both C and Python.

This commit updates the parser to correctly handle these cases, by changing
the simple replace operator with a regex replace, which is able to
correctly handle this case.

Before this commit, the string of:
    "This is my long variable: %08llX"
will stay the same, which will throw a ValueError when parsing this
dictionary message:
    "ValueError: unsupported format character 'h' (0x68) at index ".
After this commit, the string will be correctly fixed to
    "This is my long variable: %08lX"
which is parsed correctly.

Signed-off-by: Omri Sarig <omsi@demant.com>
2025-08-19 11:39:49 +02:00
Aleksander Wasaznik
54165f4fb7 MAINTAINERS: Move tests/bsim/bluetooth/tester to Bluetooth Qualification
`tests/bsim/bluetooth/tester/` contains tests for
`tests/bluetooth/tester/` so it should belong to the same maintainer
area.

Signed-off-by: Aleksander Wasaznik <aleksander.wasaznik@nordicsemi.no>
2025-08-19 12:28:06 +03:00
Hake Huang
cac9752696 shield: mimxrt1170_evk: fix the shield usage
original rk055hdmipi4m does not support mimxrt1170_evk
change to rk055hdmipi4ma0

Signed-off-by: Hake Huang <hake.huang@oss.nxp.com>
2025-08-19 12:27:55 +03:00
Peter Johanson
2f21baacd0 boards: seeed: Fix XIAO MG24 standard uart pins
Properly use EUSART1 for the XIAO connector serial device, and switch XIAO
SPI to EUSART0 to allow simultaneous use.

Signed-off-by: Peter Johanson <peter@peterjohanson.com>
2025-08-19 12:27:41 +03:00
Johan Hedberg
31a78a9d6b boards: silabs: Use default value for COMMON_LIBC_MALLOC_ARENA_SIZE
Use the default -1 value for COMMON_LIBC_MALLOC_ARENA_SIZE, i.e. let the
heap expand to the remaining amount of memory.

Signed-off-by: Johan Hedberg <johan.hedberg@silabs.com>
2025-08-19 12:27:26 +03:00
Khaoula Bidani
985d49c18b drivers: clock_control: fix PLL input frequency
Updated the PLL input frequency calculation to include
division by the HSI clock divider.
Enable HSI divider using LL_RCC_HSI_EnableDivider().

Signed-off-by: Khaoula Bidani <khaoula.bidani-ext@st.com>
2025-08-19 12:27:17 +03:00
Khaoula Bidani
11c0826419 dts: arm: st: l0: update hsi clock node to use hsi divider
Updated the clk_hsi node to use the "st,stm32l0-hsi-clock"
compatible to use hsi divider.

Signed-off-by: Khaoula Bidani <khaoula.bidani-ext@st.com>
2025-08-19 12:27:17 +03:00
Khaoula Bidani
d2be504eeb drivers: clock_control: add HSI_DIV on STM32L0
Enable support for HSI_DIV and its use as a clock source on STM32L0 SoCs.

Signed-off-by: Khaoula Bidani <khaoula.bidani-ext@st.com>
2025-08-19 12:27:17 +03:00
Khaoula Bidani
2e368d1bba dts: bindings: clocks: Add clocks bindings for stm32l0 series
Add hsi clock for stm32l0.

Signed-off-by: Khaoula Bidani <khaoula.bidani-ext@st.com>
2025-08-19 12:27:17 +03:00
Jonas Berg
aef421525b Boards: Add Adafruit RP2040 Adalogger
Add the Adafruit RP2040 Adalogger board.
The board image is from the Adafruit product page.

Signed-off-by: Jonas Berg <jonas.s.t.berg@gmail.com>
2025-08-19 09:13:32 +02:00
Aditya Ganesh
38b40ed16e drivers: dac - Added additional channel selection support for AD5686
Added support for selecting channels A, B, both together, and all channels
on the AD5686 DAC driver. This improves flexibility for multi-channel
DAC applications.

Signed-off-by: Aditya Ganesh <adga5133@colorado.edu>
2025-08-19 09:13:20 +02:00
Pete Dietl
c407fbcfc9 [drivers]: gpios: SN74HC595: Extend to allow for chained shift registers
The current driver has a few limitations:
1. The `ngpios` DT property is fixed at eight.
   Since the SN74HC595 and kin are designed to be
   easily daisychain-able, the upper bound on `ngpios`
   should be limited only by the maximum number of pins
   that Zephyr supports per GPIO port, which is 32.
2. In the case of having no control over the shift register's
   reset input, the device tree node should accept a default
   value to shift into the register(s) during init.
3. There seems to be an assumption that the serial clock
   and load clock are tied together. While this is often the
   case, the device tree node should be more flexible in
   allowing the specification of a separate load clock GPIO pin.
4. The device tree node should also be able to accept a GPIO pin
   to drive the enable input pin of the shift register(s).

This commit addresses all of these issues.

Signed-off-by: Pete Dietl <petedietl@gmail.com>
2025-08-19 09:13:12 +02:00
Jilay Pandya
090130c35b samples: stepper: drop newline characters from LOGs
remove unnecessary newline characters from LOGs
introduce logging in tmc50xx sample

Signed-off-by: Jilay Pandya <jilay.pandya@outlook.com>
2025-08-18 22:01:30 +02:00
Pavel Vasilyev
8de6705ec3 drivers: bluetooth: Align bt_hci_send behavior on error
This change alignes HCI drivers behavior with Host expectation. That is:
if an HCI driver managed to send a packet to Controller, the HCI driver
also unreferences it. If the HCI driver didn't manage to send the
packet to Controller and returns an error code, it does not unreferences
buffer.

This change aligns the behavior of HCI drivers with the Host's
expectations. Specifically:
- If an HCI driver successfully sends a packet to the Controller, the
  HCI driver also unreferences it.
- If the HCI driver fails to send the packet to the Controller and
  returns an error code, it does not unreference the buffer.

Fixes #94445

Signed-off-by: Pavel Vasilyev <pavel.vasilyev@nordicsemi.no>
2025-08-18 22:01:15 +02:00
Keith Packard
3ab84aa2a7 tests/mem_protect: Adjust backing store size
This test is failing; perhaps we've shrunk the kernel enough to change what
this value needs to be?

Signed-off-by: Keith Packard <keithp@keithp.com>
2025-08-18 22:01:08 +02:00
Keith Packard
a72b31b655 tests/kernel: Loosen bounds on timeslice schedule for slow clocked systems
RX consistently fails this test by a tiny amount. Loosen the tolerance to
let it work.

Signed-off-by: Keith Packard <keithp@keithp.com>
2025-08-18 22:01:08 +02:00
Keith Packard
b56e138521 tests/arm_mpu_pxn: Insist that trivial functions are not inlined
GCC 14 takes a look these functions which are just 'return true' and
inlines them even though they has the noinline attribute set. This happens
because the compiler computes the possible range of values from the
function call, and as that is a single value (true), it replaces the call
with that value. So it's not strictly inlining the function?

Insist a bit harder by adding a compiler_barrier to the functions which
seems to solve the issue.

Signed-off-by: Keith Packard <keithp@keithp.com>
2025-08-18 22:01:08 +02:00
Keith Packard
302b192dd9 tests/kernel: Avoid C library calls from interrupt handlers
On arm64, GCC feels free to use floating point registers for essentially
anything unless we build with -mgeneral-regs-only. After the FPU gets used
in an interrupt handler, interrupts are disabled as there's no place to
save the registers during a nested exception. As the C library may be built
separately without this flag, we cannot use any of its functions or risk
having nested exceptions fail.

Switch printk usage to k_str_out and stick to (mostly) Zephyr internal
functions to ensure nested interrupts work correctly.

Signed-off-by: Keith Packard <keithp@keithp.com>
2025-08-18 22:01:08 +02:00
Keith Packard
9051e2ea3e toolchain/gcc: Add "memory" clobber to asm traps before CODE_UNREACHABLE
GCC 14.3 will happily delete any code that appears before
__builtin_unreachable that isn't separated with an obvious branch. That
includes __asm__ statements, even those which generate traps.

The failure case that I debugged was on x86 in
z_check_stack_sentinel. There is a store to restore the sentinel to the
correct value just before the ARCH_EXCEPT, and that macro emits 'int $32'
followed by CODE_UNREACHABLE. Because the compiler didn't understand that
ARCH_EXCEPT was changing execution flow, it decided that the sentinel
restoring store 'couldn't' be reached and elided it.

I added the "memory" clobber to the asm statement in ARCH_EXCEPT before
CODE_UNREACHABLE to enforce that all pending store operations be performed
before the asm statement occurs. This ensures that they are not deleted by
the compiler.

I think this might be a GCC bug. The GCC documentation explicitly documents
that asm statements which change the flow of control should be followed by
__builtin_unreachable.

Signed-off-by: Keith Packard <keithp@keithp.com>
2025-08-18 22:01:08 +02:00
Keith Packard
8d95c2c2ba modules/cmsis-dsp: Don't use Zephyr stdint.h
Zephyr replaces the toolchain version of stdint.h to define uint32_t and
int32_t as int rather than long. This breaks the ARM MVE intrinics which
require uint32_t to be defined as unsigned long.

Define 'ZEPHYR_USE_TOOLCHAIN_STDINT_H_' as that causes zephyr_stdint.h to
be skipped, ensuring that the normal stdint.h types are used instead.

Signed-off-by: Keith Packard <keithp@keithp.com>
2025-08-18 22:01:08 +02:00
Keith Packard
469d54e227 drivers/adc/adc_stm32: Check both single-ended and differential defines
The stm32u3x header files defines LL_ADC_SINGLE_ENDED but not
LL_ADC_DIFFERENTIAL as the device doesn't support differential mode. The
driver only checked for LL_ADC_SINGLE_ENDED and assumed that when that was
defined, LL_ADC_DIFFERENTIAL would also be defined.

Check for both when figuring out which calibration type will be required.

Signed-off-by: Keith Packard <keithp@keithp.com>
2025-08-18 22:01:08 +02:00
Keith Packard
c5e8b6c634 soc/intel_adsp: soc_adsp_halt_cpu always fails when NUM_CPUS <= 1
When the target has only a single CPU, this function cannot ever
succeed. Skip all of the drama and just return -EINVAL. This makes GCC 14
happy as it doesn't get confused about possible out of bounds access of the
soc_cpus_active array.

Signed-off-by: Keith Packard <keithp@keithp.com>
2025-08-18 22:01:08 +02:00
Keith Packard
b031864385 arch/x86: Support picolibc with zefi
Disable the default startup file with -nostartfiles.

Signed-off-by: Keith Packard <keithp@keithp.com>
2025-08-18 22:01:08 +02:00
Bjarki Arge Andreasen
2387d348bd tests: spi: spi ctrl peri: nrf54h20dk cpurad uart135 device runtime
Add zephyr,pm-device-runtime-auto; to uart135 which is the uart
used for logging to enable PM_DEVICE_RUNTIME for it, which is
required for its power domains.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-08-18 22:01:03 +02:00
sudarsan N
863186a4e2 spi: rtio: null pointer dereference in spi_rtio_transceive
Check if cqe is NULL before accessing cqe->result in
spi_rtio_transceive(). Prevents possible null pointer dereference
from rtio_cqe_consume() return value.

CID: 516229
Fixes: #90547

Signed-off-by: sudarsan N <sudarsansamy2002@gmail.com>
2025-08-18 22:00:54 +02:00
Łukasz Stępnicki
551805a829 tests: kernel: interrupt: generic ISR offset definition for nrf54h20 VPRs
All VPRs in nrf54h20 can have same ISR offset configuration.

Signed-off-by: Łukasz Stępnicki <lukasz.stepnicki@nordicsemi.no>
2025-08-18 22:00:44 +02:00
John Batch
fc8a988a83 tests: drivers: gpio: add overlay to run test on IFX kit_psc3m5_evk
Adds an overlay to enable the GPIO api tests to run on the
kit_psc3m5_evk board. GPIO 3.0 is used as an output, 3.1 is used as an
input for the test.  The test expects GPIO 3.0 and GPIO 3.1 to be
jumpered together.

Signed-off-by: John Batch <john.batch@infineon.com>
2025-08-18 22:00:33 +02:00
Zhaoxiang Jin
d4fc1da29e boards: nxp: Move board specific files from hal to zephyr
Move board specific files (dcd, flash_config, etc.) from
nxp hal repo to zephyr repo.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-08-18 22:00:19 +02:00
Peter Wang
d172b9d76b boards: nxp: Renamed MCXA276 to MCXA266
1. Renamed MCXA276 to MCXA266
2. NXP frdm_mcxa276 is renamed to frdm_mcxa266,
add this information to migration-guide-4.3.rst.

Signed-off-by: Peter Wang <chaoyi.wang@nxp.com>
2025-08-18 22:00:19 +02:00
Zhaoxiang Jin
7d3fc2b176 boards: nxp: Renamed MCXA166 to MCXA346
1. Renamed MCXA166 to MCXA346.
2. NXP frdm_mcxa166 is renamed to frdm_mcxa346,
add this information to migration-guide-4.3.rst.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-08-18 22:00:19 +02:00
Zhaoxiang Jin
f130db64df modules: hal_nxp: Add core_id for RT685 HIFI4 core
1. Add core_id for RT685 HIFI4 core, this variable is
used in MCUX SDK cmake.
2. Set cmake variables 'CONFIG_MCUX_COMPONENT_driver.smartdma_mcxn'
and 'CONFIG_MCUX_COMPONENT_driver.smartdma_rt500' to "ON" as these
variables control the loading of source files in the latest driver
CMakeList.txt.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-08-18 22:00:19 +02:00
Zhaoxiang Jin
c6e5758d46 drivers: interrupt_controller: Update CMakeLists to fix build error
Now use the 5-parameter function "PINT_PinInterruptConfig"
deprecated in MCUX SDK, need to add compile definition
'PINT_USE_LEGACY_CALBACK' to make intc_nxp_pint compatible
with updated 'fsl_pint' driver.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-08-18 22:00:19 +02:00
Zhaoxiang Jin
34bf4ed28c west.yml: Update hal_nxp to mcux sdk 25.06.00
Update hal_nxp to mcux sdk 25.06.00.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-08-18 22:00:19 +02:00
Zhaoxiang Jin
bfe65a0179 scripts: compliance: Add items to UNDEF_KCONFIG_ALLOWLIST
'MCUX_HW_CORE' and 'MCUX_HW_FPU_TYPE' are used in
modules/hal_nxp/device.cmake. It is a variable used
by MCUX SDK CMake.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-08-18 22:00:19 +02:00
Zhaoxiang Jin
ab4531589a modules: nxp: Add more MCUX SDK NG cmake variables
These variables are used to make MCUX SDK NG cmake
can find the right cmake files.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-08-18 22:00:19 +02:00
Fin Maaß
bea75bb138 drivers: spi: remove spi_cs_is_gpio checks
remove spi_cs_is_gpio checks before
spi_context_cs_control, as it is also done
inside and we don't need to check two times.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-08-18 22:00:07 +02:00
Fin Maaß
3f4f8965f3 drivers: spi: spi_context: exclude gpio code if no gpio cs
exclude gpio code if no gpio cs are used
for that spi driver.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-08-18 22:00:07 +02:00
Eden Frosst
0598b2cc81 drivers: serial: stm32: propagate baud rate config failure
The uart_stm32 driver gives no way for a user to
tell if setting a new baud rate was successful.
Propagate error checks up to the API level.

Signed-off-by: Eden Frosst <edenfrosst@gmail.com>
2025-08-18 21:59:59 +02:00
Jakub Zymelka
376b34ca63 drivers: adc: nrfx_saadc: Add support for SAADC internal sampling timer
The SAMPLERATE register can be used as a local timer instead
of triggering individual SAMPLE tasks. When SAMPLERATE.MODE is set
to Timers, it is sufficient to trigger SAMPLE task only once in order
to start the SAADC and triggering the STOP task will stop sampling.
The SAMPLERATE.CC field controls the sample rate.

The SAMPLERATE timer should not be combined with SCAN mode and
only one channel should be enabled when using the internal timer.

Signed-off-by: Jakub Zymelka <jakub.zymelka@nordicsemi.no>
2025-08-18 21:59:50 +02:00
Emil Dahl Juhl
44929f7089 dts: arm: st: n6: describe rng block
The stm32n6 features an RNG block. The RNG is a true NIST SP800-90B
compliant entropy source according to the stm32n657x0 reference manual[1].

Per Table 3 in the reference manual, the RNG peripheral register boundary
address (secure) is 0x54020000 to 0x540203FF. That is, base address
0x54020000 and size 0x400.

Per Table 73 in the reference manual, the RNG peripheral has only a single
rng_clk option (hsis_osc_ck).
Per section 14.10.66 (and more) the RNG peripheral control is performed
through AHB3 using bit 0.
As such, the `clocks` property contains a single phandle to the RCC AHB3
bit 0 entries.

Per Table 135 in the reference manual, the RNG peripheral interrupt is
located at position 40 in the NVIC.

[1] RM0486 Rev 2: https://www.st.com/resource/en/reference_manual/rm0486-stm32n647657xx-armbased-32bit-mcus-stmicroelectronics.pdf

Signed-off-by: Emil Dahl Juhl <emil@s16s.ai>
2025-08-18 17:49:45 +02:00
Joakim Andersson
e63996f498 soc: stm32u5x: Add break in switch to avoid wrong debug message
Add break in switch case to avoid the debug message when SOC_LOG_LEVEL
has been set to debug.

Signed-off-by: Joakim Andersson <joerchan@gmail.com>
2025-08-18 17:49:36 +02:00
Alain Volmat
6b1f864e76 drivers: smbus: stm32: add select PINCTRL
stm32 smbus driver is relying on the pinctrl framework
hence select CONFIG_PINCTRL to ensure proper build.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-08-18 17:49:28 +02:00
Alain Volmat
fd5dd5e04f drivers: sdhc: stm32: add select PINCTRL
stm32 sdhc driver is relying on the pinctrl framework
hence select CONFIG_PINCTRL to ensure proper build.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-08-18 17:49:28 +02:00
Alain Volmat
379fa75ca7 drivers: i3c: stm32: add select PINCTRL
stm32 i3c driver is relying on the pinctrl framework
hence select CONFIG_PINCTRL to ensure proper build.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-08-18 17:49:28 +02:00
Alain Volmat
5017279493 drivers: ethernet: dwmac_stm32h7x: add select PINCTRL
stm32 dwmac_stm32h7x driver is relying on the pinctrl framework
hence select CONFIG_PINCTRL to ensure proper build.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-08-18 17:49:28 +02:00
Alain Volmat
fd041a7573 drivers: clock: stm32-mco: add missing select PINCTRL
stm32 mco clock driver is relying on the pinctrl framework
for configuring the MCO pin hence select CONFIG_PINCTRL
to allow proper build.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-08-18 17:49:28 +02:00
Alain Volmat
14525b99d5 drivers: crypto: stm32: ensure RESET is selected
stm32 crypto driver requires a reset control hence ensure that
CONFIG_RESET is properly selected to allow proper build.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-08-18 17:49:28 +02:00
Alain Volmat
5c12e5526a drivers: display: stm32-ltdc: ensure RESET is selected
stm32 ltdc driver requires a reset control hence ensure that
CONFIG_RESET is properly selected to allow proper build.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-08-18 17:49:28 +02:00
Alain Volmat
c73140ebd9 drivers: mipi_dsi: stm32: ensure RESET is selected
stm32 mipi dsi driver requires a reset control hence ensure that
CONFIG_RESET is properly selected to allow proper build.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-08-18 17:49:28 +02:00
Alain Volmat
54c939a069 drivers: video: stm32: dcmi: ensure RESET is selected
stm32 dcmi driver requires a reset control hence ensure that
CONFIG_RESET is properly selected to allow proper build.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-08-18 17:49:28 +02:00
Alain Volmat
4542ab9677 drivers: video: stm32: dcmipp: ensure RESET/PINCTRL are selected
stm32 dcmipp driver requires a reset control and pinctrl
(depending on the configuration) hence ensure that
CONFIG_RESET and CONFIG_PINCTRL are properly selected to allow
proper build.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-08-18 17:49:28 +02:00
Georgij Černyšiov
f38a32617a drivers: memc: stm32: FMC NOR/PSRAM add bank validation
Ensure NSBank values are validated at build time.
That helps to identify and fix incorrect bank values.

Signed-off-by: Georgij Černyšiov <geo.cgv@gmail.com>
2025-08-18 17:49:20 +02:00
Georgij Černyšiov
6df089676d drivers: memc: stm32: FMC NOR/PSRAM refactor
Simplifies the driver code:
* Use existing FMC_NORSRAM_DEVICE and FMC_NORSRAM_EXTENDED_DEVICE
  defines. No need to keep references to them in the driver's config.
* Refine initialization loop.

Signed-off-by: Georgij Černyšiov <geo.cgv@gmail.com>
2025-08-18 17:49:20 +02:00
Jordan Yates
827da4a9e0 disk: sdmmc_stm32: support clock bypass
Add support for the SDMMC clock bypass feature for those SoCs that have
it. This provides a SDMMC bus speed double that of `clk-div = <0>`.

Updated the `clk-div` documentation at the same time to be clearer on
how the bus clock speed is determined.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-08-18 17:49:14 +02:00
Jordan Yates
deb24ef099 disk: sdmmc_stm32: explicit initialisation
Explicitly initialise the SDMMC initialisation struct to make it clear
the configuration being applied.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-08-18 17:49:14 +02:00
Pavel Vasilyev
818e18eacb bluetooth: host: Use critical section when making channel ready to send
A public API call that sends ACL data — for example, `bt_gatt_notify` —
can be invoked from a preemptive thread context. This API, in turn,
calls the `raise_data_ready` function, which adds an L2CAP channel to
the `l2cap_data_ready` list.

The atomic variable used to create a critical section around
`l2cap_data_ready` did not work, because a preemptive thread can be
pre-empted at any time. This means that regardless of the `atomic_set`
result, we cannot trust it — the thread could be preempted after the
call, and the atomic variable state could be changed (specifically by
the TX processor in this case). The same issue applies to
`bt_conn_data_ready`, which is called next.

When making an L2CAP channel ready for sending data, we need to use a
critical section when appending a channel to the `l2cap_data_ready`
list. The same applies to the `conn_ready` list.

Since cooperative threads can only be rescheduled explicitly, we must
ensure there are no rescheduling points when accessing either the
`l2cap_data_ready` or `conn_ready` lists.

For `l2cap_data_ready`, this occurs in `get_ready_chan`, which is called
from `l2cap_data_pull`, which in turn is called by the TX processor. For
`conn_ready`, it occurs in `get_conn_ready`, which is also called from
the TX processor. Both functions have no rescheduling points when
working with their respective lists, so they do not require a critical
section.

This change removes the atomic variables previously used to create a
critical section for both lists, as they were ineffective. Instead,
`k_sched_lock`/`k_sched_unlock` are used where code may be executed from
a preemptive thread context. The `sys_slist_find` function is used to
check whether a channel or connection is already in the corresponding
list.

Fixes #89705

Signed-off-by: Pavel Vasilyev <pavel.vasilyev@nordicsemi.no>
2025-08-18 16:05:48 +02:00
Henrik Brix Andersen
faecad66c7 retention: bootmode: remove unused log module
Remove unused log module from the bootmode retention module.

Signed-off-by: Henrik Brix Andersen <hebad@vestas.com>
2025-08-18 16:00:37 +02:00
Damian Krolik
ea7c4ff536 modules: openthread: configure router selection jitter
Add CONFIG_OPENTHREAD_ROUTER_SELECTION_JITTER_OVERRIDE
Kconfig option that enables setting the router selection
jitter to CONFIG_OPENTHREAD_ROUTER_SELECTION_JITTER at
startup.

Signed-off-by: Damian Krolik <damian.krolik@nordicsemi.no>
2025-08-18 16:00:26 +02:00
Etienne Carriere
5c10c9403a soc: st: stm32wbx: always clear wakeup flags on power off entry
STM32WBx SoCs reference manuals say that for Shutdown mode (aka Power OFF)
entry, "WUFx bits are cleared in power status register 1 (PWR_SR1)".
Therefore call LL_PWR_ClearFlag_WU() unconditionally (regarding
CONFIG_STM32_WKUP_PINS) in z_sys_poweroff() sequence.

Reference manuals references:
- STM32WB55xx/STM32WB35xx: RM0434 Rev 14, Table 34.
- STM32WB50CG/STM32WB30CE: RM0471 Rev 9, Table 32.
- STM32WB15CC: RM0473 Rev 11, Table 33.
- STM32WB10CC: RM0478 Rev 9, Table 31.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-08-18 16:00:15 +02:00
Etienne Carriere
cd2b47b3f9 soc: st: stm32wlx: always clear wakeup flags on power off entry
STM32WLx SoCs reference manual says that for Shutdown mode (aka Power OFF)
entry, "WUFx bits are cleared in power status register 1 (PWR_SR1)".
Therefore call LL_PWR_ClearFlag_WU() unconditionally (regarding
CONFIG_STM32_WKUP_PINS) in z_sys_poweroff() sequence.

Reference manuals references:
- STM32WBLEx/STM32WL5x: RM0461 Rev 10, Table 47.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-08-18 16:00:15 +02:00
Etienne Carriere
40341f73b4 soc: st: stm32u5: always clear wakeup flags on power off entry
STM32U5x SoCs reference manual says that for Shutdown mode (aka Power OFF)
entry, "WUFx bits cleared in PWR_WUSR". Therefore call
LL_PWR_ClearFlag_WU() unconditionally (regarding CONFIG_STM32_WKUP_PINS)
in z_sys_poweroff() sequence.

Reference manuals references:
- STM32U5: RM0456 Rev 5, Table 107.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-08-18 16:00:15 +02:00
Etienne Carriere
574b77dee7 soc: st: stm32l4: always clear wakeup flags on power off entry
STM32L4x SoCs reference manuals say that for Shutdown mode (aka Power OFF)
entry, "WUFx bits are cleared in power status register 1 (PWR_SR1)".
Therefore call LL_PWR_ClearFlag_WU() unconditionally (regarding
CONFIG_STM32_WKUP_PINS) in z_sys_poweroff() sequence.

Reference manuals references:
- STM32L41xx/L42xx/L43xx/L44xx/L45xx/L46xx: RM0394 Rev 5, Table 29.
- STM32L47xx/L48xx/L49xx/L4Axx: RM0351 Rev 10, Table 31.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-08-18 16:00:15 +02:00
Etienne Carriere
9116458d3c soc: st: stm32g0: always clear wakeup flags on power off entry
STM32G0x SoCs reference manuals say that for Shutdown mode (STM32G0x1)
or Standby mode (STM32G0x0) entry (used for Power OFF entry), that
"WUFx bits are cleared in Power status register 1 (PWR_SR1)".
Therefore call LL_PWR_ClearFlag_WU() unconditionally (regarding
CONFIG_STM32_WKUP_PINS) in z_sys_poweroff() sequence.

Reference manuals references:
- STM32G0x0: RM0454 Rev 5, Table 25.
- STM32G0x1: RM0444 Rev 6, Table 34.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-08-18 16:00:15 +02:00
Etienne Carriere
4601d794b9 soc: st: stm32f4: always clear wakeup flags on power off entry
STM32F4x SoCs reference manuals say that for Standby mode (aka Power OFF)
entry, "WUF bit is cleared in Power Control register (PWR_CR)" [1]
and "WUF bit is cleared in Power Control/Status register (PWR_CR)" [2].
Therefore call LL_PWR_ClearFlag_WU() unconditionally (regarding
CONFIG_STM32_WKUP_PINS) in z_sys_poweroff() sequence.

Reference manuals references:
- [1] STM32F401xx: RM0368 Rev 6, Table 20.
- [2] STM32F469xx/STM32F479xx: RM0386 Rev 6, Table 23.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-08-18 16:00:15 +02:00
Etienne Carriere
64dfb55bfe soc: st: stm32c0: always clear wakeup flags on power off entry
STM32C0x SoCs reference manual says the wakeup source status flags (from
register PWR_SR1) are not cleared by hardware and therefore should be
cleared by software before entering Standby or Shutdown power mode.
Therefore call LL_PWR_ClearFlag_WU() unconditionally (regarding
CONFIG_STM32_WKUP_PINS) in z_sys_poweroff() sequence.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-08-18 16:00:15 +02:00
Etienne Carriere
7473b64f4b soc: st: stm32g0: G0x0 SoCs use Standby mode for Power OFF
Fix STM32G0x0 SoCs power off sequence that do not support Shutdown mode
and which deppest power mode state is Standby mode.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2025-08-18 16:00:15 +02:00
Henrik Lindblom
97356ad45c dts: stm32u5: add stm32u595xx
Add variants of the stm32u595 chip with 2M (u595XI) and 4M (u595XJ) of
flash.

Signed-off-by: Henrik Lindblom <henrik.lindblom@vaisala.com>
2025-08-18 16:00:05 +02:00
Khaoula Bidani
112fe454fb drivers: i2c: make DMA config field conditional on I2C
This commit updates I2C_DMA_DATA_INIT() macro to use
IF_ENABLED(DT_INST_DMAS_HAS_NAME(...), (...)),
so that the DMA configuration field is only generated if the
corresponding DMA property exists in the Device Tree.
This prevents macro expansion errors and allows a mix of I2C
peripherals with and without DMA support in the same build.

Signed-off-by: Khaoula Bidani <khaoula.bidani-ext@st.com>
2025-08-18 15:59:55 +02:00
Afonso Oliveira
3cf92af0a7 soc: snps: nsim: arc_v: rmx: remove redudant compiler filtering
Remove CONFIG_SOC_SERIES_NSIM_ARC_V_RMX conditional check from
zephyr_compile_options_ifdef and apply all extensions
unconditionally when using arcmwdt compiler.

Since this CMakeLists.txt is already SoC-specific, the
additional config check is redundant.

Signed-off-by: Afonso Oliveira <afonsoo@synopsys.com>
2025-08-18 15:59:41 +02:00
Afonso Oliveira
8baddeb85a snps: nsim: arc_v: update RMX100 hardware configuration
Update the hardware configuration for the Synopsys nSIM ARC-V RMX100:

- Change CLINT base address from 0x2000000 to 0xa0010000. The CLINT
  is now created by default in the RMX100 configuration, with its
  MMIO base already configured to use this address.

- Update nSIM MMIO base address to 2560 to align with the new memory
  map requirements.

- Remove PLIC support as the ARC-V RMX architecture only supports
  APLIC (Advanced Platform-Level Interrupt Controller), not PLIC.
  Note that APLIC support is not yet available in Zephyr, so
  interrupt controller functionality will be limited until APLIC
  is implemented.

- Replace legacy MPU configuration with PMP (Physical Memory Protection):
  Remove mpu_version, mpu_regions, and mpu_granule properties and add
  ARCV_PMP interface with 16 regions and granule=1. The MPU options
  were legacy and PMP is the standard RISC-V memory protection mechanism.

These changes align with the latest ARC-V RMX100 hardware memory map
and architectural requirements.

Signed-off-by: Afonso Oliveira <afonsoo@synopsys.com>
2025-08-18 15:59:41 +02:00
Afonso Oliveira
1bef065c8e soc: snps: nsim: arc_v: rename SOC configuration symbols
Rename SOC configuration symbols from generic names to more specific
ones that include the vendor and platform information. This improves
clarity and prevents potential naming conflicts.

Changes:
- SOC_SERIES_RMX -> SOC_SERIES_NSIM_ARC_V_RMX
- SOC_RMX100 -> SOC_NSIM_ARC_V_RMX100

Signed-off-by: Afonso Oliveira <afonsoo@synopsys.com>
2025-08-18 15:59:41 +02:00
Francois Ramu
0af1649921 boards: st: stm32h7RS target boards has pyocd runner
Add the pyocd as runner for the stm32h7s3l8 nucleo or stm32h7s78 dk
so that debugging becomes possible if openocd is not available.
Check with 'pyocd list --target'

Signed-off-by: Francois Ramu <francois.ramu@st.com>
2025-08-18 15:59:23 +02:00
Mario Paja
4c450a4cfb samples: i2s: output: add nucleo_h7s3l8
Add Nucleo H7S3L8 board in samples/drivers/i2s/output

Signed-off-by: Mario Paja <mariopaja@hotmail.com>
2025-08-18 15:59:08 +02:00
Mario Paja
cfe0b9a3d8 dts: st: h7rs: add sai node for stm32h7rs
Define SAI1 A & B nodes for STM32H7RS series

Signed-off-by: Mario Paja <mariopaja@hotmail.com>
2025-08-18 15:59:08 +02:00
Mario Paja
faf5eb18a6 dts: st: h7rs: add gpdma1 node
This PR adds gpdma node on stm32h7rs series

Signed-off-by: Mario Paja <mariopaja@hotmail.com>
2025-08-18 15:59:08 +02:00
Mario Paja
85b408edf1 drivers: i2s: add sai support for stm32h7xx
Define SAI1 node for STM32H7xx series.
Add STM32H7xx related DMA configs.
Enable samples/drivers/i2s/output for nucleo_h745zi_q/m7

Signed-off-by: Mario Paja <mariopaja@hotmail.com>
2025-08-18 15:58:58 +02:00
Quang Le
c03b9b1abc dts: renesas: Add external interrupt support for Renesas RZ/A3UL, V2L
Add external interrupt nodes to Renesas RZ/A3UL, V2L

Signed-off-by: Quang Le <quang.le.eb@bp.renesas.com>
Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
2025-08-18 15:58:44 +02:00
Quang Le
be9fabb967 dts: renesas: Update interrupt nodes for Renesas RZ/G3S, N2L, T2M, T2L
- Change node's name, node's register size, node's address cells
of intc node for Renesas RZ/G3S
- Add `renesas, rz-intc` compatible and #size-cells of 0 to intc node
of Renesas RZ/G3S
- Add `reg` property to irq nodes for Renesas RZ/G3S
- Add `renesas, rz-icu` compatible for Renesas RZ/N2L, T2M, T2L

Signed-off-by: Quang Le <quang.le.eb@bp.renesas.com>
Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
2025-08-18 15:58:44 +02:00
Quang Le
efe6812ec5 drivers: intc: Add external interrupt support for Renesas RZ/A3UL, V2L
Add external interrupt support for Renesas RZ/A3UL, V2L

Signed-off-by: Quang Le <quang.le.eb@bp.renesas.com>
Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
2025-08-18 15:58:44 +02:00
Quang Le
b1d1d3a539 manifest: Update commit id for hal_renesas
Update commit id for hal_renesas

Signed-off-by: Quang Le <quang.le.eb@bp.renesas.com>
Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
2025-08-18 15:58:44 +02:00
Ha Duong Quang
7e1146fe9d doc: flash_debug: add requirement for debug probe supported
Document the S32DS and S32Debug Probe OS supported version,
and guide to upgrade the OS of the S32DebugProbe.

Signed-off-by: Ha Duong Quang <ha.duongquang@nxp.com>
2025-08-18 13:07:32 +02:00
Ha Duong Quang
0f0dd2774b west: update to support for S32DS3.6
S32DS3.6 requires to use python 3.10, so update
PYTHONPATH for S32DS3.6 when debug on windows.

Update to verify new behavior of supported commands
with S32D3.6 on windows.

Update to find out the usb device connected by VID
and PID instead of class "NXP Probes" on windows
Because based on the S32 Debug probe OS version the
device class of USB is changed. Therefore a reliable
way to identify the probe is check the USB VID and PID.

Signed-off-by: Ha Duong Quang <ha.duongquang@nxp.com>
2025-08-18 13:07:32 +02:00
S Mohamed Fiaz
be0a0f1a1e drivers: gpio: silabs: gpio driver enhancements for EFR series 2 devices
Added changes to gpio driver and Kconfig
for EFR series 2 devices.

Signed-off-by: S Mohamed Fiaz <fiaz.mohamed@silabs.com>
2025-08-18 13:07:23 +02:00
Francois Ramu
fd3cb3b03f tests: drivers: watchdog wwdg of the stm32h573 is erasing sram
When a reset coccurs the sram1 where the m_state value is stored
is erased. Then the board indefinitely reboots.
Avoid this excluding the target board.
Or set the SRAM13_RST bit in the option byte in FLASH_OPTSR2_CUR.

Signed-off-by: Francois Ramu <francois.ramu@st.com>
2025-08-18 13:07:00 +02:00
Francois Ramu
c32b481413 drivers: watchdog: stm32 wwdg check callback before calling
Check that the callback function exists before calling it
inside the ISR.

Signed-off-by: Francois Ramu <francois.ramu@st.com>
2025-08-18 13:07:00 +02:00
Łukasz Stępnicki
10941ca73e arch: riscv: added helper config to include isr wrapper
Added helper Kcoinfig option USE_ISR_WRAPPER which can be used to
include isr_wrapper even if GEN_SW_ISR_TABLE is not enabled. This
is needed to enable configurations where only IRQ vector table is
used with multithreading (only direct isr used). This change is
backward compatibible with previous config.

Signed-off-by: Łukasz Stępnicki <lukasz.stepnicki@nordicsemi.no>
2025-08-18 13:06:50 +02:00
Dmitrii Sharshakov
f581964698 samples: canopennode: add native_sim(_64) boards
Add simulated platforms to experiment with CanOpen on.

Signed-off-by: Dmitrii Sharshakov <d3dx12.xx@gmail.com>
2025-08-18 13:06:41 +02:00
Adam Kondraciuk
612fd940fa boards: nordic: nrf54h20dk: Disable EXMIF and GPIO6 by default
External flash memory is typically not used, so it should
be disabled by default. The GPIO6 port used by this device
should also be disabled.

Signed-off-by: Adam Kondraciuk <adam.kondraciuk@nordicsemi.no>
2025-08-18 11:59:15 +02:00
Francois Ramu
0a1d63f75a boards: st: stm32h7rs boards have no TrustZone
Remove the reference to TrustZone for the stm32h7s3 nucleo and
the stm32h7s7 disco. They do not have the feature embedded.
Other fixes about non-applicable features.

Signed-off-by: Francois Ramu <francois.ramu@st.com>
2025-08-18 11:59:06 +02:00
Anson Mansfield
7302f72797 boards: adafruit: Add support for Adafruit Feather RP2040.
Added support for the Adafruit Feather RP2040, based on existing board
definitions for the Qt Py RP2040 and others.

Board image (c) Kattni Rembor, CC-BY-SA-3.0 per licensing info at
https://learn.adafruit.com/assets/100345.

Signed-off-by: Anson Mansfield <amansfield@mantaro.com>
2025-08-18 11:58:56 +02:00
Fabrice DJIATSA
d48026b446 drivers: dma: stm32u5: update dma_suspend function
The previous 1ms sleep introduced unnecessary latency
while waiting for the SUSPF flag.
Switching to a 750µs busy-wait provides a more responsive
and precise delay,improving performance in time-sensitive contexts.

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2025-08-18 11:58:08 +02:00
Philippe Peurichard
1af06e4204 samples: drivers: memc: add support of stm32f469i-disco for PSRAM
If st_stm32_fmc_sdram compatible is present, get base address and
external memory size. Add stm32f469i-disco overlay file

Signed-off-by: Philippe Peurichard <p.peurichard@gmail.com>
2025-08-18 11:57:56 +02:00
Philippe Peurichard
c7fd589415 boards: add FMC/SDRAM support for stm32f469i-disco board
On stm32f469i-disco board, a 16MBytes SDRAM external memory
is connected via FMC to STM32F4 SoC.

Signed-off-by: Philippe Peurichard <p.peurichard@gmail.com>
2025-08-18 11:57:56 +02:00
Lyle Zhu
2df8578c7a Bluetooth: Classic: SDP: Improve SDP discovery response
In current implementation, the attribute of the registered SDP record
will not be included in responding packet if the attribute data length
is more than the MAX payload size(`MIN(SDP_MTU, sad->sdp->chan.tx.mtu)
- sizeof(struct bt_sdp_hdr)`). And it causes the failure of ssa or sa
discovery.

Improve the SDP server to support the case by extending the
continuation state length. A 4 bytes space is extended to store the
attribute offset.

In this way, the attribute can be transmitted in segments according
to the reaming space of the responding buffer.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-08-18 11:57:23 +02:00
Georgij Černyšiov
84349e8566 drivers: mipi_dbi: stm32: move barriers outside of the loop
Relocate __DSB barriers outside the data write
loops to improve efficiency.

Signed-off-by: Georgij Černyšiov <geo.cgv@gmail.com>
2025-08-18 11:57:17 +02:00
Arthur Gay
404e497897 drivers: disk: stm32 sdmmc: add stm32h7rs support
Add STM32H7RS to the list of series that support HWFC for SDMMC.

Signed-off-by: Arthur Gay <arthur.gay@marshmallow.kids>
2025-08-18 11:57:09 +02:00
Johann Fischer
58b37007d2 drivers: udc_stm32: fix remote wakeup handling
Clear the suspended status and submit the resume event once the remote
wakeup signaling is finished. Clear the suspended status on bus reset as
well.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-08-18 11:56:57 +02:00
Johann Fischer
bd5dcc603f drivers: udc: make suspend/resume logging message more precise
Make suspend/resume logging message more precise.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-08-18 11:56:57 +02:00
Phuc Pham
0760f6fcff samples: drivers: adc: Add ADC support for Renesas RZ/A3UL, T2M, N2L, V2L
Add ADC sample support for Renesas RZ/A3UL-SMARC,
RZ/T2M-RSK, RZ/N2L-RSK, RZ/V2L-SMARC

Signed-off-by: Phuc Pham <phuc.pham.xr@bp.renesas.com>
Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
2025-08-18 11:56:47 +02:00
Phuc Pham
3661d1903f tests: drivers: adc: Add ADC support for Renesas RZ/A3UL, T2M, N2L, V2L
Add ADC test support for Renesas RZ/A3UL-SMARC,
RZ/T2M-RSK, RZ/N2L-RSK, RZ/V2L-SMARC

Signed-off-by: Phuc Pham <phuc.pham.xr@bp.renesas.com>
Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
2025-08-18 11:56:47 +02:00
Phuc Pham
7b9329e43d boards: renesas: Add ADC support for Renesas RZ/A3UL, T2M, N2L, V2L
Add ADC support for board Renesas RZ/A3UL-SMARC,
RZ/T2M-RSK, RZ/N2L-RSK, RZ/V2L-SMARC

Signed-off-by: Phuc Pham <phuc.pham.xr@bp.renesas.com>
Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
2025-08-18 11:56:47 +02:00
Phuc Pham
1fa1565aed dts: renesas: Add ADC support for Renesas RZ/A3UL, T2M, N2L, V2L
Add ADC nodes to Renesas RZ/A3UL, T2M, N2L, V2L

Signed-off-by: Phuc Pham <phuc.pham.xr@bp.renesas.com>
Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
2025-08-18 11:56:47 +02:00
Phuc Pham
41e78de206 dts: renesas: Fix ADC register size for Renesas RZ/G3S
Change the adc node's compatible of RZ/G3S to renesas,rz-adc-c
Fix ADC node register size for Renesas RZ/G3S

Signed-off-by: Phuc Pham <phuc.pham.xr@bp.renesas.com>
Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
2025-08-18 11:56:47 +02:00
Phuc Pham
371f2925dc drivers: adc: Add ADC support for Renesas RZ/A3UL, T2M, N2L, V2L
Add ADC driver support for Renesas RZ/A3UL, T2M, N2L, V2L

Signed-off-by: Phuc Pham <phuc.pham.xr@bp.renesas.com>
Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
2025-08-18 11:56:47 +02:00
Phuc Pham
8931a9260f manifest: Update commit id for hal_renesas
Update commit id for hal_renesas

Signed-off-by: Phuc Pham <phuc.pham.xr@bp.renesas.com>
Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
2025-08-18 11:56:47 +02:00
Kai Cheng
99243afec0 Bluetooth: PNP: add pnp product id interface and tool
add pnp product id interface and tool for HID profile

Signed-off-by: Kai Cheng <chengkai@xiaomi.com>
2025-08-18 10:55:19 +02:00
Kai Cheng
82fd0b898a Bluetooth: PNP: add pnp vendor id interface and tool
add pnp vendor id interface for hid feature.

Signed-off-by: Kai Cheng <chengkai@xiaomi.com>
2025-08-18 10:55:19 +02:00
Kai Cheng
ff2503c002 Bluetooth: SDP: wrap sdp attr item into u16 common func
Wrap sdp attr item into u16 common function, and it would help
to add pnp etc info

Signed-off-by: Kai Cheng <chengkai@xiaomi.com>
2025-08-18 10:55:19 +02:00
MA Junyi
c552847a2f boards: embedsky: add support for TQ‑H503A
This patch introduces a new board definition for embedsky’s
TQ‑H503A development board, based on the STM32H503CBT6 SoC.

Tested: successfully built, ran and debug
`hello_world` and `blinky` samples.

Signed-off-by: MA Junyi <mjysci@live.com>
2025-08-18 10:54:55 +02:00
Artur Hadasz
b43ce97c6b bootloader: mcuboot: Fix encryption not being selected in bootloader
In some cases this resulted in the device not booting.

Signed-off-by: Artur Hadasz <artur.hadasz@nordicsemi.no>
2025-08-18 10:54:37 +02:00
Hake Huang
364da85a8c tests: display: display_check: add customized variable for configs
To ensure the case can be compatible with different cameras,
we need customized setting for camera,
so add environment variable to control the configs

Signed-off-by: Hake Huang <hake.huang@oss.nxo.com>
2025-08-18 10:54:22 +02:00
Dmitrii Sharshakov
4229700496 hwinfo: rpi_pico: add more reset reasons for RP2350
RP2350 features a glitch detector which can be treated as a security
mitigation, and more ways debug adapters can reset CPUs, add those
as well.

Signed-off-by: Dmitrii Sharshakov <d3dx12.xx@gmail.com>
2025-08-18 10:53:49 +02:00
Camille BAUD
ffb28eed1d doc: greyscale -> grayscale migration guide
notice change of property name

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-08-16 21:38:13 +02:00
Camille BAUD
70469b6a27 drivers: display: improve LUT table for ssd1363
Model on ssd1327

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-08-16 21:38:13 +02:00
Camille BAUD
36f2436206 drivers: display: greyscale -> grayscale for ssd1363
british english -> american english

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-08-16 21:38:13 +02:00
Camille BAUD
21f80b33d2 drivers: display: ssd1327: lut table as const
LUT table to rom instead of ram

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-08-16 21:38:13 +02:00
Piotr Kosycarz
f458e8b904 samples: drivers: led: lp5569: add required fixture
Indicating that additional HW is needed to run this sample.

Signed-off-by: Piotr Kosycarz <piotr.kosycarz@nordicsemi.no>
2025-08-16 21:38:03 +02:00
Declan Snyder
6639d78355 drivers: flexio: Fix build errors when doze not defined
some platforms dont have these doze related symbols defined, and causes
a build error, fix with #ifdef bandaid.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-08-16 10:20:41 +02:00
Sean Kyer
3ef52ad3eb samples: net: ocpp: Fix cast warning
Fix warnings generated for casting between pointers
and integers of different sizes in ocpp sample.

Signed-off-by: Sean Kyer <Sean.Kyer@analog.com>
2025-08-16 10:20:26 +02:00
Sean Kyer
a28925af31 net: ocpp: Fix cast warning
Fix warnings generated from casting pointers
of different sizes and string literals in ocpp

Signed-off-by: Sean Kyer <Sean.Kyer@analog.com>
2025-08-16 10:20:26 +02:00
Emil Gydesen
f3a0e276a0 tests: Bluetooth: CAP: Test return early for unicast_group_foreach_stream
Add test that ensures that bt_cap_unicast_group_foreach_stream terminates
correctly if the callback returns true.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-08-16 10:20:18 +02:00
Emil Gydesen
04dc211f64 Bluetooth: CAP: Fix bad return from bap_unicast_group_foreach_stream_cb
The function should stop iterating if the callback provided to
bt_cap_unicast_group_foreach_stream returns true.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-08-16 10:20:18 +02:00
Emil Gydesen
f085069b70 doc: releases: Add entry for bt_bap_broadcast_source_foreach_stream
Add entry for the new function bt_bap_broadcast_source_foreach_stream.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-08-16 10:20:10 +02:00
Emil Gydesen
dd3aa38f2f tests: Bluetooth: BAP: Unittest bt_bap_broadcast_source_foreach_stream
Adds unittests for bt_bap_broadcast_source_foreach_stream.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-08-16 10:20:10 +02:00
Emil Gydesen
ddfc33a4e5 Bluetooth: BAP: Implement bt_bap_broadcast_source_foreach_stream
Implement the function bt_bap_broadcast_source_foreach_stream that
allows users to iterate on all BAP streams in a BAP broadcast source.
This can be used to easily get reference to other broadcast streams in
the same group as any other stream via the stream->group pointer
or a broadcast source pointer directly.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-08-16 10:20:10 +02:00
Mathieu CHOPLAIN
ae95774268 doc: release: release notes-4.3: document new ARM C-M save/restore APIs
Add node about new architecture APIs to save and restore ARM Cortex-M
system state.

Signed-off-by: Mathieu CHOPLAIN <mathieu.choplain@st.com>
2025-08-16 10:19:54 +02:00
Michele Sardo
9e84e4a638 arch: arm: cortex_m: Add API for SCB save and restore
Add new API to save and restore SCB context. This is typically useful when
entering and exiting suspend-to-RAM low-power modes.

The scb_context_t and the backup/restore functions are designed to only
handle SCB registers that are:
- Mutable: Their values can be changed by software.
- Configurable: They control system behavior or features.
- Stateful: Their values represent a specific configuration that an
            application might want to preserve and restore.

Registers excluded from backup/restore are:
1. CPU/feature identification registers
	Motivation: These registers are fixed in hardware and read-only.
2. ICSR (Interrupt Control and State Register)
	Motivation: Most bits of ICSR bits are read-only or write-only
	and represent volatile system state. STTNS is the only read-write
	field and could be considered part of the system state, but it is
	only present on certain ARMv8-M CPUs, and Zephyr does not use it.
3. CFSR (Configurable Fault Status Register)
   HFSR (HardFault Status Register)
   DFSR (Debug Fault Status Register)
   AFSR (Auxiliary Fault Status Register)
   MMFAR (MemManage Fault Address Register)
   BFAR (BusFault Address Register)
	Motivation: These registers are read/write-one-to-clear and
	contain only fault-related information (which is volatile).

Co-authored-by: Mathieu Choplain <mathieu.choplain@st.com>

Signed-off-by: Michele Sardo <msmttchr@gmail.com>
Signed-off-by: Mathieu Choplain <mathieu.choplain@st.com>
2025-08-16 10:19:54 +02:00
Biwen Li
0e830e84ec boards: nxp: imx943_evk: m33: add i2c support
Add i2c support for m33(in NETCMIX) of imx943_evk

Signed-off-by: Biwen Li <biwen.li@nxp.com>
2025-08-16 10:19:31 +02:00
jacob kung
7d6b48a403 drivers: spi: spi_et171: add memory aligned rx buffers for DMA transceive
Split the RX buffer into multiple sub-buffers aligned to DCACHE boundaries
to ensure proper operation during DMA transceive.

Signed-off-by: jacob kung <jacob.kung@egistec.com>
2025-08-16 10:18:58 +02:00
jacob kung
a0adc1f7f5 drivers: spi: add et171 spi driver
The Egis ET171 SPI controller was based on Andes ATCSPI200,
but has since been modified. In particular, the WrTranCnt and RdTranCnt
fields from the SPI Transfer Control Register have been moved to dedicated
Wr_Tran_Cnt and Rd_Tran_Cnt registers.

Signed-off-by: jacob kung <jacob.kung@egistec.com>
2025-08-16 10:18:58 +02:00
Johan Hedberg
30527e5403 Bluetooth: Host: Rename acl_data to bt_conn_rx
We already have bt_conn_tx for outgoing buffer user data, so name the
struct for incoming (rx) buffers similarly. Also, update ISO to use this
struct instead of a custom iso_data struct, since the content and purpose
is identical.

Signed-off-by: Johan Hedberg <johan.hedberg@silabs.com>
2025-08-16 10:18:50 +02:00
Fabio Baltieri
1cb0b6a7ff manifest: update hal_ti to work with cmsis_6
Pick up a commit to drop a hal cmsis 5 copy and fix it to work with
cmsis 6.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2025-08-15 10:04:07 -04:00
Håvard Reierstad
fbd7acec25 Bluetooth: Host: Remove deprecated device name API
Removes the BT_LE_ADV_OPT_USE_NAME and BT_LE_ADV_OPT_FORCE_NAME_IN_AD
advertiser options and related flags, macros and functions. The
application now needs to include the device name explicitly.

The API was deprecated in
https://github.com/zephyrproject-rtos/zephyr/pull/71700

Signed-off-by: Håvard Reierstad <haavard.reierstad@nordicsemi.no>
2025-08-15 15:34:58 +02:00
Alberto Escolar Piedras
8522f513b1 boards native: Support using lld as linker for native simulator runner
Let's assume that if a user sets the linker to be lld (likely with
CONFIG_LLVM_USE_LLD=y) that they also want the native simulator runner
to be linked with it.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-08-15 15:34:50 +02:00
Martin Stumpf
c50a48ac31 display: sdl: add CONFIG_SDL_DISPLAY_COLOR_TINT
Allows the SDL display to be tinted in a specific color,
to allow the simulation of monochrome colored displays
like `R8` (`L8` + tint `0xff0000`)

Signed-off-by: Martin Stumpf <finomnis@gmail.com>
2025-08-15 15:34:27 +02:00
Yangbo Lu
2be724d0ce soc: nxp: imxrt118x: keep AHB clock running when CM7 is sleeping
Keep AHB clock running when CM7 is sleeping and TCM is accessible.
Otherwise, NETC transmission will fail.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-08-15 15:34:17 +02:00
Jeppe Odgaard
0970aa2dc1 drivers: sensor: ti: tmp11x: clang-format files and change DEFINE_TMP11X
Run clang-format on tmp11x.c and tmp11x.h and change `DEFINE_TMP11X` to
prevent too long lines when clang-format is run.

Signed-off-by: Jeppe Odgaard <jeppe.odgaard@prevas.dk>
2025-08-15 15:34:12 +02:00
Jeppe Odgaard
0d01361e5b drivers: sensor: ti: tmp11x: reuse variable
Reuse `value` variable in `tmp11x_attr_set` to reduce the number of local
variables.

Signed-off-by: Jeppe Odgaard <jeppe.odgaard@prevas.dk>
2025-08-15 15:34:12 +02:00
Jeppe Odgaard
ec02138402 drivers: sensor: ti: tmp11x: add optional attribute storage
Enable optional storage of sensor attribute values in EEPROM. On reset, the
device goes through a POR sequence that loads the values programmed in the
EEPROM into the respective register map locations.

The driver stores sample frequency, offset, oversampling, lower threshold,
upper threshold, alert pin polarity, alert mode and conversion mode if the
value is continuous or shutdown.

The functionality has been tested with sensor shell and power cycling
sensor:

Test (undocumented) temperature offset is stored:
```shell
uart:~$ sensor attr_set ti_tmp11x@48 ambient_temp offset 0
ti_tmp11x@48 channel=ambient_temp, attr=offset set to value=0
uart:~$ sensor get ti_tmp11x@48 ambient_temp
[...] (25.523436)
uart:~$ sensor attr_set ti_tmp11x@48 ambient_temp offset 50
ti_tmp11x@48 channel=ambient_temp, attr=offset set to value=50
uart:~$ sensor get ti_tmp11x@48 ambient_temp
[...] (75.617186)
uart:~$
[15:12:20.088] Disconnected
[15:12:36.106] Connected
uart:~$ sensor get ti_tmp11x@48 ambient_temp
[...] (75.554686)
uart:~$ sensor attr_get ti_tmp11x@48 ambient_temp offset
ti_tmp11x@48(channel=ambient_temp, attr=offset) value=50.000000
```

Test one-shot mode is not stored:
```shell
uart:~$ sensor attr_set ti_tmp11x@48 ambient_temp 18 1
ti_tmp11x@48 channel=ambient_temp, attr=accel_x set to value=1
uart:~$ sensor get ti_tmp11x@48 ambient_temp
[...] (75.562499)
uart:~$ sensor get ti_tmp11x@48 ambient_temp
Read failed
[00:00:21.332,000] <wrn> sensor_compat: Failed to fetch samples
uart:~$
[15:16:24.529] Disconnected
[15:16:33.540] Connected
uart:~$ sensor get ti_tmp11x@48 ambient_temp
[...] (75.406249)
uart:~$ sensor get ti_tmp11x@48 ambient_temp
[...] (75.351561)
```

Signed-off-by: Jeppe Odgaard <jeppe.odgaard@prevas.dk>
2025-08-15 15:34:12 +02:00
Jeppe Odgaard
0eebb85297 drivers: sensor: ti: tmp11x: add eeprom await function
Move await eeprom programming into function and add poll loop timeout.

Signed-off-by: Jeppe Odgaard <jeppe.odgaard@prevas.dk>
2025-08-15 15:34:12 +02:00
Vinayak Kariappa Chettimada
72dac165d8 Bluetooth: Controller: Use OVERHEAD_XTAL_US from devicetree
Use the external crystal high frequency clock settling value
from devicetree.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2025-08-15 15:34:00 +02:00
Vinayak Kariappa Chettimada
b9fbf51d9e tests: Bluetooth: Mesh: Increase subnet bridge ivu test time
Commit increases IV index update testing time for subnet
bridge.

Due to change in startup time for external crystal, test
time expires earlier than test scenario reaches end.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2025-08-15 15:34:00 +02:00
Vinayak Kariappa Chettimada
1f1dfa534f linker: Fix DT_NODE_HAS_STATUS and DT_NODE_HAS_STATUS_OKAY redefined
Fix ‘DT_NODE_HAS_STATUS’ and ‘DT_NODE_HAS_STATUS_OKAY’
redefined warning.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2025-08-15 15:34:00 +02:00
Sandro Scherer
aa6f87dcbf style: fix readability-math-missing-parentheses warnings
If a project has enabled the clang-tidy check
readability-math-missing-parentheses,
then warnings are raised on usage of
some macros (e.g ARRAY_SIZE and K_MSEC).

Signed-off-by: Sandro Scherer <sand.scherer@gmail.com>
2025-08-15 10:31:05 +01:00
Hieu Nguyen
0db74e30ab tests: drivers: pwm: Add PWM support for Renesas RZ/A3UL
Add PWM test support for Renesas RZ/A3UL-SMARC

Signed-off-by: Hieu Nguyen <hieu.nguyen.ym@bp.renesas.com>
Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
2025-08-15 10:30:49 +01:00
Hieu Nguyen
5f1b728068 boards: renesas: Add PWM support for Renesas RZ/A3UL
Add PWM support for board Renesas RZ/A3UL-SMARC

Signed-off-by: Hieu Nguyen <hieu.nguyen.ym@bp.renesas.com>
Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
2025-08-15 10:30:49 +01:00
Hieu Nguyen
7bb772b9ea dts: renesas: Add PWM support for Renesas RZ/A3UL
Add MTU nodes to Renesas RZ/A3UL

Signed-off-by: Hieu Nguyen <hieu.nguyen.ym@bp.renesas.com>
Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
2025-08-15 10:30:49 +01:00
Hieu Nguyen
8e40b8a057 drivers: pwm: Add PWM support for Renesas RZ/A3UL
Add PWM driver support for Renesas RZ/A3UL

Signed-off-by: Hieu Nguyen <hieu.nguyen.ym@bp.renesas.com>
Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
2025-08-15 10:30:49 +01:00
Hieu Nguyen
e8903d5f32 manifest: Update commit id for hal_renesas
Update commit id for hal_renesas

Signed-off-by: Hieu Nguyen <hieu.nguyen.ym@bp.renesas.com>
Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
2025-08-15 10:30:49 +01:00
Johann Fischer
4bf0381592 usb: device_next: cdc_ncm: disable data interface when disconnected
Disable the data interface when the device is disconnected or when the
CDC-NCM and CDC-ECM instances are disabled for any reason.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-08-15 10:11:16 +03:00
Cristian Bulacu
a54a83fabf tests: net: socket: Add test for hop limit ancillary data using recvmsg()
Testing that recvmsg() returns IPv4 TTL and IPv6 hop limit ancillary
data.

Signed-off-by: Cristian Bulacu <cristian.bulacu@nxp.com>
2025-08-15 10:10:59 +03:00
Cristian Bulacu
3fcf06d0d9 tests: net: socket: Fix recv pktinfo ancillary test for recvmsg()
Fixed setsockopt based on socket family and added correct cmsg_type for
parsing ancillary data.

Signed-off-by: Cristian Bulacu <cristian.bulacu@nxp.com>
2025-08-15 10:10:59 +03:00
Cristian Bulacu
4f644d8441 net: socket: Fix recvmsg() pktinfo support.
Fix an issue where IPV6_RECVPKTINFO was used instead of IPV6_PKTINFO
when insert_pktinfo was called.

Signed-off-by: Cristian Bulacu <cristian.bulacu@nxp.com>
2025-08-15 10:10:59 +03:00
Cristian Bulacu
6c826efd5a net: context: Add support for setting hop limit from ancillary data
Add support to parse over msghdr and set pkt hop limit, if needed, when
sendmsg() is used.

Signed-off-by: Cristian Bulacu <cristian.bulacu@nxp.com>
2025-08-15 10:10:59 +03:00
Cristian Bulacu
05f8edfebc net: socket: Add support for setting hop limit options
Add IP_RECVTTL or IPV6_RECVHOPLIMIT BSD socket options
that can be used to extract ttl/hop limit from ancillary data
in recvmsg() call.

Signed-off-by: Cristian Bulacu <cristian.bulacu@nxp.com>
2025-08-15 10:10:59 +03:00
Cristian Bulacu
4388cb1438 net: context: Add support for setting receive hop limit option
Add support for setting IPV6_RECVHOPLIMIT or IP_RECVTTL socket option.

Signed-off-by: Cristian Bulacu <cristian.bulacu@nxp.com>
2025-08-15 10:10:59 +03:00
Richard Wheatley
d00a734c0c drivers: entropy: add puf-trng entropy driver
add puf-trng entropy driver to apollo510

Signed-off-by: Richard Wheatley <richard.wheatley@ambiq.com>
2025-08-15 10:10:45 +03:00
Declan Snyder
b70e761d42 modules: hal_nxp: Remove HAS_MCUX_FLEXSPI/SEMC
Remove these legacy kconfig, not necessary.

The DT already has the bindings and nodes required to represent if there
is a FlexSPI and/or SEMC.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-08-15 10:10:32 +03:00
Declan Snyder
5e3a432fed adc: Remove CONFIG_ADC_MCUX_ETC
This Kconfig does not belong in the ADC folder, because there is not
actually a zephyr ADC driver for this. Also, remove HAS_MCUX_ADC_ETC as
well because it is a useless config.

The cmake line to pull in this driver from the SDK in the zephyr repo is
totally unnecessary. If a user wants to use this SDK driver they can add
it to their build like any other SDK driver or any other
external code module. Zephyr should not be a cesspool of random build
glue for random pieces of code.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-08-15 10:10:32 +03:00
Declan Snyder
6b7a6d6a34 soc: k2x: Remove HAS_MCUX_SMC
Only the k2x series socs seem to be pulling in this driver for some
reason, the kconfig is not needed.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-08-15 10:10:32 +03:00
Declan Snyder
e8c6275949 soc: imxrt: Remove HAS_MCUX_ DCDC, GPC, PMU
Remove these kconfigs and substitute with equivalent series configs.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-08-15 10:10:32 +03:00
Declan Snyder
7ff0038921 modules: Remove HAS_MCUX_TPM
The only code change to remove this was a redundant usage in the rt1180
soc.c which was not needed because it was redundant, if you catch my
drift.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-08-15 10:10:32 +03:00
Declan Snyder
5ae654eeef modules: hal_nxp: Removed unused HAS_MCUX_* configs
Remove the configs that are not actually used for anything anymore or
never were, or that are redundant with other configs, and don't have any
code changes outside of Kconfig to remove.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-08-15 10:10:32 +03:00
Declan Snyder
5f742ac862 modules: nxp: imx: Remove HAS_IMX_* configs
Remove all these legacy configs which are not necessary.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-08-15 10:10:32 +03:00
Declan Snyder
83420a7139 modules: hal_nxp: Remove CONFIG_HAS_MCUX_FLEXCOMM
The presence of the flexcomm should be driven by DT, not this legacy
kconfig.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-08-15 10:10:32 +03:00
Bayrem Gharsellaoui
3d11792219 tests: crypto: Add nucleo_u575zi_q support to crypto_hash test
Enable crypto.hash test on nucleo_u575zi_q board

Signed-off-by: Bayrem Gharsellaoui <bayrem.gharsellaoui@protonmail.com>
2025-08-15 10:10:24 +03:00
Bayrem Gharsellaoui
8a901edc85 boards: stm32: Enable HASH peripheral for nucleo_u575zi_q
Add device tree support for STM32 HASH peripheral on the nucleo_u575zi_q

Signed-off-by: Bayrem Gharsellaoui <bayrem.gharsellaoui@protonmail.com>
2025-08-15 10:10:24 +03:00
Bayrem Gharsellaoui
95934d2abd drivers: crypto: Add STM32 HASH hardware driver
Add STM32 HASH driver with SHA-224/256 support for STM32U5

Signed-off-by: Bayrem Gharsellaoui <bayrem.gharsellaoui@protonmail.com>
2025-08-15 10:10:24 +03:00
Emil Gydesen
3eb4d79aeb tests: Bluetooth: CAP: Add verification of CAP unicast start callbacks
Add verification of the CAP Unicast Audio Start callback parameters.
There was a missing part in the BAP Unicast Client mock that did not
set the ISO state correctly, which caused the procedures to fail, but
without the verification that was not caught.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-08-15 10:10:02 +03:00
Martin Stumpf
12a866f7d3 samples: lvgl: Refactor screen_transparency sample
The LVGL screen_transparency sample was refactored in two ways:

- Remove old obsolete display initialization code. LVGL does not even
  react to this code because LVGL color format is determined during LVGL
  initialization, which comes before main().
  Further, the way it is written right now is incompatible with `AL_88`
  color.
- Add some RGB color text for demonstration purposes.

Signed-off-by: Martin Stumpf <finomnis@gmail.com>
2025-08-14 22:38:38 -04:00
Martin Stumpf
7472a7994c lvgl: Add support for AL_88 color
While both LVGL and Zephyr support AL_88 color, the glue to connect them
was still missing. Now AL_88 should be fully supported by Zephyr+LVGL.

Signed-off-by: Martin Stumpf <finomnis@gmail.com>
2025-08-14 22:38:38 -04:00
Martin Stumpf
f3ea237564 tests: drivers: display: Add test cases for AL_88
Enable display_read_write test for AL_88 color and add support for
AL_88 in display_check.

Signed-off-by: Martin Stumpf <finomnis@gmail.com>
2025-08-14 22:38:38 -04:00
Martin Stumpf
b316dac7f4 samples: drivers: display: Add support for AL_88 color
Renders three different shades of gray in each corner, with one corner
continually changing color.

Signed-off-by: Martin Stumpf <finomnis@gmail.com>
2025-08-14 22:38:38 -04:00
Martin Stumpf
4da9a89cd0 display: sdl: Add support for AL_88 color format
The SDL display driver can now handle and display AL_88 content.

Signed-off-by: Martin Stumpf <finomnis@gmail.com>
2025-08-14 22:38:38 -04:00
Martin Stumpf
a769062aa0 display: sdl: fix clear color for ARGB8888
Clear color for ARGB8888 was set to opaque white, which is an odd
choice.

This change makes the clear color "transparent".

Signed-off-by: Martin Stumpf <finomnis@gmail.com>
2025-08-14 22:38:38 -04:00
Martin Stumpf
8c6c761744 display: add PIXEL_FORMAT_AL_88
When rendering an overlay on top of something like a video stream on a
monochrome display, the only way to achieve this right now is by using
ARGB8888 and discarding two of the colors, which is not ideal.

This introduces the new AL_88 pixel format, which is much more efficient
for this usecase.

This change is somewhat inspired by LVGL, which also supports AL_88
natively.

Signed-off-by: Martin Stumpf <finomnis@gmail.com>
2025-08-14 22:38:38 -04:00
Declan Snyder
1ffea478a1 boards: mimxrt1060_evk: Add debug jumpers doc
The RT1060 board page was outdated forgetting EVKC in the debug
configuration section.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-08-14 22:38:21 -04:00
Declan Snyder
9278404021 dma_mcux_edma: Simplify mmap ifdefs
Halve all this ifdef code by making a macro function for the memory
mapping.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-08-14 22:38:08 -04:00
Declan Snyder
0dcc642886 dma_mcux_edma: Extract dmamux code to helpers
Extract and group dmamux related code together for readability.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-08-14 22:38:08 -04:00
Declan Snyder
071aa4cc29 dma_mcux_edma: Split configure function into helpers
There was actually three different types of configuration modes
happening here, and this function was getting extremely bulky and hard
to read due to the amount of nesting of conditionals. Split these into
separate functions and call them appropriately depending on the type of
transfer.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-08-14 22:38:08 -04:00
Declan Snyder
2379fac44f dma_mcux_edma: Split reload function into helpers
There is two completely different types of reload modes happening here,
therefore we should split this function into two completely separate
functions because it was getting large and hard to read. Removes
one level of indentation.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-08-14 22:38:08 -04:00
Declan Snyder
fcfbf247e1 dma_mcux_edma: Simplify max data size code
Instead of having preprocessor code, make a hidden kconfig
to indicate this and be smarter about the C code (these are all powers
of two)

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-08-14 22:38:08 -04:00
Declan Snyder
2a2449056c dma_mcux_edma: Simplify channel gap compliation
One #ifdef outside the functions is simpler to read than two #ifdefs
inside the functions.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-08-14 22:38:08 -04:00
Declan Snyder
7610eba406 drivers: dma_mcux_edma: Simplify cache attr macros
The dependency on the chosen node for dtcm can be expressed in Kconfig
language.

Cache we care about is CPU DCACHE, not the meaningless "MCUX Cache"

The macros can be reordered to be simpler by having only one level of
conditional (no nesting) instead of three levels.

Move this code closer in the file to where this cache attribute macro is
actually going to be used (the init macro) instead of randomly splitting
up the struct definitions at the top.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-08-14 22:38:08 -04:00
Sebastian Huber
4d34bee581 drivers: i2c: mchp_mss: Rework
Use a mutex to protect the I2C bus from concurrent access.  Replace busy
waiting with a binary semaphore.  Process the messages in the interrupt
handler state machine to generate a single transaction.  In the
interrupt handler, process the states until nothing more is to do.  This
prevents superfluous interrupt entry/exit pairs.  Return error
conditions to the caller.  Check the messages for consistency and return
an error for unsupported message lists.

Signed-off-by: Sebastian Huber <sebastian.huber@embedded-brains.de>
2025-08-14 22:37:54 -04:00
Sebastian Huber
a8514b539b drivers: i2c: mchp_mss: Fix mss_i2c_configure()
Clear the clock bits before setting new ones.

Signed-off-by: Sebastian Huber <sebastian.huber@embedded-brains.de>
2025-08-14 22:37:54 -04:00
Russ Webber
e8972a92da drivers: sensors: as5600: change to raw reading
Changed to use the raw reading rather than the scaled value, as that's
what the angle calculation is expecting. Added log messages that
communicate magnet sense state.

Signed-off-by: Russ Webber <russ@sentryrobotics.au>
2025-08-14 22:37:41 -04:00
Siratul Islam
9aecdd47c7 boards: weact: add runner support for stm32f446_core and stm32f405_core
Add pyocd and stm32cubeprogrammer runners to both boards.

Signed-off-by: Siratul Islam <sirat4757@gmail.com>
2025-08-14 15:11:23 -04:00
Adrien Lessard
2fde221017 tests: pm: device_power_domains: failed power pm_action_cb
Added tests to demonstrate a safe rollback when either TURN_ON or RESUME
fail. Note: before this PR, rollback would only be valid if TURN_ON
failed, not when RESUME failed.

Signed-off-by: Adrien Lessard <adrien.lessard@rbr-global.com>
2025-08-14 15:11:13 -04:00
Adrien Lessard
c5229fcda6 pm: device_runtime: fix pm_device_runtime_get rollback
In a call to pm_device_runtime_get, if the power domain is taken but
action_cb fails, the power domain is not released.

Signed-off-by: Adrien Lessard <adrien.lessard@rbr-global.com>
2025-08-14 15:11:13 -04:00
Hake Huang
add2c83f7e tests: ram_context_for_isr: exclude interrupt conflict platforms
some NXP platforms' last interrupt is not free for testing, need skip

fixes: #94169

Signed-off-by: Hake Huang <hake.huang@oss.nxp.com>
2025-08-14 15:10:54 -04:00
Emil Gydesen
f149118e7c Bluetooth: BAP: Source: Remove LOG_WRN for started/stopped
Removed the LOG_WRN if the started or stopped callback
for streams are not set. The reasoning is that there is also
the group-wide started and stopped callbacks, and an application
may want to use those instead of the per-stream callbacks.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-08-14 18:04:01 +02:00
Emil Gydesen
cb7965a1a9 Bluetooth: BAP: Sink: Remove LOG_WRN for started/stopped
Removed the LOG_WRN if the started or stopped callback
for streams are not set. The reasoning is that there is also
the group-wide started and stopped callbacks, and an application
may want to use those instead of the per-stream callbacks.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-08-14 18:04:01 +02:00
Furkan Akkiz
2337205c10 tests: drivers: flash: Increase storage partition size
Test requires at least (2 * page_info.size) size for test area. Because
of that, this commit increases storage_partition size for max32690evkit
and max32690fthr boards.

Signed-off-by: Furkan Akkiz <hasanfurkan.akkiz@analog.com>
2025-08-14 18:03:50 +02:00
Emil Gydesen
e6da768edc Bluetooth: BAP: Add missing ep->iso checks
The bt_bap_unicast_client_ep_qos function attempts to access
ep->iso->chan.iso->iso, but where some of the pointers may be
invalid. Add an additional check for these.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-08-14 18:03:41 +02:00
Emil Gydesen
6dffbf88f9 Bluetooth: BAP: Broadcast Source: Fix missing group relations
Adds missing assignments to stream->group and
cleanup of ep->broadcast_source.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-08-14 18:03:32 +02:00
Emil Gydesen
aac06ba84f Bluetooth: BAP: Broadcast Sink: Fix missing group relations
Adds missing assignments to stream->group and
cleanup of ep->broadcast_sink.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-08-14 18:03:32 +02:00
Emil Gydesen
ff7de521c2 Bluetooth: BAP: Fix missing endian conversions for codec_cfgs
Adds a few missing endian conversions when handling codec_cfgs.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-08-14 18:03:25 +02:00
Dylan Philpot
dc31254d06 boards: Add support for TI MSPM0G3519_LP
Add board files and dts for launchpad.

Signed-off-by: Dylan Philpot <d-philpot@ti.com>
2025-08-14 18:03:16 +02:00
Dylan Philpot
e1526c9d13 dts: add support MSPM0Gx51x SOC family
Includes device tree files for SOCs and updates
to common MSPM0 device tree

Signed-off-by: Dylan Philpot <d-philpot@ti.com>
2025-08-14 18:03:16 +02:00
Dylan Philpot
4b40993e41 pinctrl: add support for more than 10 pin functions
Adding defines to support pins that have more than
10 pinmux options

Signed-off-by: Dylan Philpot <d-philpot@ti.com>
2025-08-14 18:03:16 +02:00
Dylan Philpot
423abf4df0 west: point to HAL mspm0gx51x support
pointing to HAL revision

Signed-off-by: Dylan Philpot <d-philpot@ti.com>
2025-08-14 18:03:16 +02:00
Raffael Rostagno
8543023f6a west.yml: hal_espressif: Update for fflush
Update HAL for fflush linking fix.

Signed-off-by: Raffael Rostagno <raffael.rostagno@espressif.com>
2025-08-14 16:00:20 +01:00
Saravanan Sekar
fa59d597c0 MAINTANERS: Update hal_ti Maintainers
Add an additional maintainer - Saravanan Sekar for Texas Instrument
HAL repo.

Signed-off-by: Saravanan Sekar <saravanan@linumiz.com>
2025-08-14 16:00:14 +01:00
Marc Lasch
2c58f8d33c drivers: net: ppp: Set point-to-point interface flag
Set the point-to-point flag because PPP is a point-to-point protocol. This
flag enables specific IPv6 neighbor discovery handling, to select the
correct sending interface. Without it set, a different interface might be
selected based on the destination address.

Signed-off-by: Marc Lasch <marc.lasch@husqvarnagroup.com>
2025-08-14 15:55:44 +02:00
Keith Packard
e8bdc342d8 west: Add cmsis-dsp fix for gcc 14.3
GCC version 14.3 does more extensive checking for potentially uninitialized
values and warns about a couple of arrays. Initialize them to zero to make
the compiler happy.

Signed-off-by: Keith Packard <keithp@keithp.com>
2025-08-14 15:55:34 +02:00
Tim Pambor
e4e5e7adc8 drivers: uart: emul: Fix uninitialized variable errors
Fix compiler errors about variables potentially being used uninitialized.
These are false positives, as the compiler is confused by the
K_SPINLOCK() macro. Explicit initialization avoids these errors.

Signed-off-by: Tim Pambor <tim.pambor@codewrights.de>
2025-08-14 15:49:49 +02:00
Marco Widmer
d45985347b twister: coverage: set gcov working directory
gcovr runs gcov to generate temporary coverage files into the gcov
working directory. The working directory defaults to gcovr's -r
argument.

When running twister with the --coverage-per-instance argument, multiple
gcovr instances may run in parallel. Since they all share the same gcov
working directory, they may interfere with each other, resulting in
errors like this:

	AssertionError: Sanity check failed, output file
	spinlock.h##4167b923a06cc9590c8eef372f016a6d.gcov doesn't exist
	but no error from GCOV detected.

To fix this, specify a separate gcov working directory for every test
through gcovr's --gcov-object-directory option.

Signed-off-by: Marco Widmer <marco.widmer@bytesatwork.ch>
2025-08-14 15:49:35 +02:00
Pavel Vasilyev
3329fefe37 tests: bsim: bluetooth: ll: multiple_id: Increase test timeout
multiple.sh couldn't complete with the previous timeout on nRF54L15.

Signed-off-by: Pavel Vasilyev <pavel.vasilyev@nordicsemi.no>
2025-08-14 15:49:09 +02:00
Pavel Vasilyev
ef7681d49c tests: bsim: bluetooth: ll: multiple_id: Increase BT_MAX_PAIRED to 231
Alignt with BT_MAX_CONN value to be able to keep 231 active connection.

Signed-off-by: Pavel Vasilyev <pavel.vasilyev@nordicsemi.no>
2025-08-14 15:49:09 +02:00
Pavel Vasilyev
39dbdda591 tests: bsim: bluetooth: ll: multiple_id: Increase event pool size
Increase events pool size to avoid deadlocks on nRF5340 platform.

Signed-off-by: Pavel Vasilyev <pavel.vasilyev@nordicsemi.no>
2025-08-14 15:49:09 +02:00
Pavel Vasilyev
ec1c4d436f tests: bsim: bluetooth: ll: multiple_id: Disable printk
Disable printk as this test generates enormous amount of log messages.

Signed-off-by: Pavel Vasilyev <pavel.vasilyev@nordicsemi.no>
2025-08-14 15:49:09 +02:00
Pavel Vasilyev
6107e88543 tests: bsim: bluetooth: ll: multiple_id: Allow unpair old bond
In the multiple_central.sh test, same Central bonds with Peripheral
multiple times. Because Peripheral uses different identity for the next
bond, Host by default sees the conflict with the old bond and rejects
the new one. For the test we don't care about security and can simply
replace the old bond.

Signed-off-by: Pavel Vasilyev <pavel.vasilyev@nordicsemi.no>
2025-08-14 15:49:09 +02:00
Pavel Vasilyev
8834984b69 tests: bsim: bluetooth: ll: multiple_id: Enable SMP
Enable SMP.

Signed-off-by: Pavel Vasilyev <pavel.vasilyev@nordicsemi.no>
2025-08-14 15:49:09 +02:00
Pavel Vasilyev
83dae71a22 tests: bsim: bluetooth: ll: multiple_id: Enable RealEncryption
Enable RealEncrytion.

Signed-off-by: Pavel Vasilyev <pavel.vasilyev@nordicsemi.no>
2025-08-14 15:49:09 +02:00
Pavel Vasilyev
7e0d3ae565 tests: bsim: bluetooth: ll: multiple_id: Fix test termination
Calling `bs_trace_silent_exit` after successful test completion of one of
devices causes termination of the entires tests suite without letting
other devices complete the test.

This commit move `bs_trace_silent_exit` call to `test_tick_f` handler,
which is triggered when time set by
`bst_ticker_set_next_tick_absolute` expires.

Signed-off-by: Pavel Vasilyev <pavel.vasilyev@nordicsemi.no>
2025-08-14 15:49:09 +02:00
Pavel Vasilyev
a18811857b bluetooth: host: smp: Update bt_keys addr when receiving identity addr
In addition to aligning the destination address of all connection
objects during the identity resolution phase, we also need to update the
corresponding address field in the `struct bt_keys` structure for each
of these connection objects.

If we don't do this, `bt_keys_get_type` for that connection won't find
the `bt_keys` structure in the pool and will allocate a new one. This
will result in orphaned `bt_keys` structures in the pool.

This completes the change done in 637dabc3c9

Signed-off-by: Pavel Vasilyev <pavel.vasilyev@nordicsemi.no>
2025-08-14 15:49:09 +02:00
Pavel Vasilyev
1a61ba5316 bluetooth: host: Increase BT_MAX_PAIRED to 250
This is done to align with BT_MAX_CONN max value.

Signed-off-by: Pavel Vasilyev <pavel.vasilyev@nordicsemi.no>
2025-08-14 15:49:09 +02:00
Pavel Vasilyev
c3edbac5cb bluetooth: host: hci_core: Move event length check to bt_recv_unsafe
The event header is already accessed in `bt_recv_unsafe`. If length is
valid there, no point in checking it again in `hci_event` or
`hci_event_prio`.

Signed-off-by: Pavel Vasilyev <pavel.vasilyev@nordicsemi.no>
2025-08-14 15:49:09 +02:00
Pavel Vasilyev
9e5e23d1e9 bluetooth: host: hci_core: prioritize LE Conn Complete event handling
During debugging multiple.sh test, a race condition was observed where
advertiser state on Host and Controler was desynchronized.

Below is the sequence of actions led to this issue:

0. Host has queued few priority events at this moment.
1. Controller establishes a connection and stops the advertiser.
2. Controller sends to Host BT_HCI_EVT_LE_ENH_CONN_COMPLETE.
3. Host deprioritizes BT_HCI_EVT_LE_ENH_CONN_COMPLETE event and doesn't
   process it immediately.
4. Controller sends to Host other priority events which are processed
   immediately.
5. Host wants to disable the advertiser in order to update the Resolving
   List (see `bt_id_add`).
6. Host sends to Controller BT_HCI_OP_LE_SET_ADV_ENABLE(Disable)
   command.
7. Controller sends to Host BT_HCI_EVT_CMD_COMPLETE event on
   BT_HCI_OP_LE_SET_ADV_ENABLE command.
8. Host prioritizes this BT_HCI_EVT_CMD_COMPLETE event, processes it
   immediately and clears `BT_ADV_ENABLED` flag for the advertiser.
   Note that Controller already has the advertiser disabled after
   establishing connection on step 1.
9. Host sends few commands in a row and Controller sends
   BT_HCI_EVT_CMD_COMPLETE events that are prioritized (see
   `bt_id_add`).
10. Host wants to re-enable the advertiser after updating the Resolving
    List.
11. Host sends to Controller BT_HCI_OP_LE_SET_ADV_ENABLE(Enable)
    command.
12. Controller sends to Host BT_HCI_EVT_CMD_COMPLETE event on
    BT_HCI_OP_LE_SET_ADV_ENABLE.
13. Host prioritizes this BT_HCI_EVT_CMD_COMPLETE, processes it
    immediately and sets `BT_ADV_ENABLED` flag for the advertiser.
14. Controller has the advertiser enabled.
15. Host now processes the delayed BT_HCI_EVT_LE_ENH_CONN_COMPLETE
    event.
16. Host resets the advertiser state, thinking the Controller's
    advertiser is also stopped.

This commit prioritizes LE Connection Complete and LE Enhanced
Connection Complete events to drop advertiser state on Host immediately
once the corresponding event was received.

Signed-off-by: Pavel Vasilyev <pavel.vasilyev@nordicsemi.no>
2025-08-14 15:49:09 +02:00
Pavel Vasilyev
6f3248b34f bluetooth: host: id: Print identity handle upon collision detection
To improve clarity, print identity handle upon collision detection.

Signed-off-by: Pavel Vasilyev <pavel.vasilyev@nordicsemi.no>
2025-08-14 15:49:09 +02:00
Pavel Vasilyev
cebbf72e1c samples: bluetooth: peripheral_identity: Restart adv on failed conn
If connection is failed to establish, the sample will get stuck
eventually and won't do anything while it could re-start advertiser to
try establish a connection again.

This commit makes the sample restart the advertuser if such issue
happens.

Signed-off-by: Pavel Vasilyev <pavel.vasilyev@nordicsemi.no>
2025-08-14 15:49:09 +02:00
Pavel Vasilyev
87ab1cfe8f samples: bluetooth: peripheral_identity: Stop scanner in privacy
When CONFIG_BT_PRIVACY is enabled, we cannot start an advertiser with an
RPA generated for a different identity than scanner role. Therefore, we
need to stop scanning.

Signed-off-by: Pavel Vasilyev <pavel.vasilyev@nordicsemi.no>
2025-08-14 15:49:09 +02:00
Pavel Vasilyev
4083389bcb samples: bluetooth: peripheral_identity: Add more logs
This commit adds more logs to peripheral_identity sample improve clarity
of what the sample is currently doing.

Signed-off-by: Pavel Vasilyev <pavel.vasilyev@nordicsemi.no>
2025-08-14 15:49:09 +02:00
Pavel Vasilyev
9038d21953 samples: bluetooth: central_multilink: Add more logs
This commit adds more logs to central_multilink sample improve clarity
of what the sample is currently doing.

Signed-off-by: Pavel Vasilyev <pavel.vasilyev@nordicsemi.no>
2025-08-14 15:49:09 +02:00
Benjamin Cabé
051a951553 scripts: west: spdx: convert datatypes.py classes to Python data classes
Remove a bit of boilerplate code and add typing in the process.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-08-14 15:48:57 +02:00
Nirav Agrawal
27e4533038 bluetooth: tbs: fix issues for setting URI scheme for GTBS
- "bt_tbs_set_uri_scheme_list()" function does not setting URI for
 GTBS instance. Using "inst_lookup_index()" fixes issue to find
 registered GTBS instance for provided bearer_index.
- "bt_tbs_set_uri_scheme_list()" function overrides URI scheme list
 with latest provided list. But the expectation is that it should
 keep previously added URI schemes and only update new scheme which
 are not part existing list. Code is updated to fix this.
- The same function uses net-buf to combine all URI schems for all
 TBS bearer if current request is not for GTBS instance. Currently,
 the code only uses combined URI scheme list for logging purpose and
 it is not used to send for URI Scheme notification to provide
 updated GTBS URI scheme to remote. Code is now updated to add
 dynamic buffer to add all TBS URI scheme list for GTBS instance
 and notify it similar to other functions to optimise memory usage.

Signed-off-by: Nirav Agrawal <nirav.agrawal@nxp.com>
2025-08-14 15:48:50 +02:00
Emil Gydesen
82a83cd3fc Bluetooth: BAP: BA: Fix sonarcloud issue with assignment and ++
Sonarcloud does not allow to use the result of a incremental
(++) as an assignment.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-08-14 15:48:42 +02:00
Emil Gydesen
65550f5ff4 Bluetooth: BAP: BA: Add log and return on invalid UUID
If the chrc->uuid is somehow an invalid UUID, we log it and
terminate the discovery procedure.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-08-14 15:48:42 +02:00
Tomas Galbicka
001633c13d boards: nxp: mimxrt1180_evk: Add support for CM7 flash execution
Add support for executing the CM7 core directly from flash memory
(XIP - eXecute In Place) instead of copying to ITCM. This provides
the following benefits:

- Allows for larger code size than the 512KB ITCM limit
- Simplifies memory management for large applications
- Reduces boot time by eliminating the need to copy code to ITCM

The implementation includes:

1. A new Kconfig option CM7_BOOT_FROM_FLASH (default: n) to control
   the execution mode
2. A device tree overlay (cm7_flash_boot.overlay) that configures
   the flash memory for CM7 execution
3. Updates to soc.c to calculate the correct CM7 boot address
   based on the flash partition
5. Documentation updates with instructions for both execution modes

Signed-off-by: Tomas Galbicka <tomas.galbicka@nxp.com>
2025-08-14 15:48:33 +02:00
Emil Gydesen
ebf206cd08 Bluetooth: TBS: Fix TBS API accessing NULL inst
Some TBS API functions attempted to take the mutex
of an instance before the NULL check.

Reorder the checks of the functions, and also modify function
to be more similar (using the same terms and structure).

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-08-14 15:48:01 +02:00
Emil Gydesen
f9a84d4682 samples: Bluetooth: BAP Unicast Server: Improve reporting and TX
Improve reporting by introducing a configurable reporting interval
and make the report text more useful.

Change TX to always send the same size, as that is what is
expected/required by LE Audio.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-08-14 15:47:53 +02:00
Emil Gydesen
e309ebc9f9 samples: Bluetooth: BAP Unicast Client improve reporting
Make the reporting interval configurable to make it easier
to actually follow. Improve what gets reported.

Add check for SDU size to ensure correctness when not
using LIBLC3.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-08-14 15:47:53 +02:00
Emil Gydesen
64f54eb2d9 tests: Bluetooth: Tester: MICP BSIM test
Adds BSIM testing of the MICP features of the BT Tester.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-08-14 15:47:42 +02:00
Jakub Zymelka
fe0b6b3b55 drivers: adc: nrfx: Temporary fix for SAADC power consumption
This is temporary fix for SAADC power consumption. Need to be
removed after hal_nrfx version upgrade.

Signed-off-by: Jakub Zymelka <jakub.zymelka@nordicsemi.no>
2025-08-14 10:44:43 +01:00
Wai-Hong Tam
8222eee990 led_strip: ws2812_spi: Support configurable symbol width
This commit introduces a new devicetree property, bits-per-symbol, to
allow the symbol width to be configured from 3 to 8 bits. This change
is particularly beneficial for MCUs that lack DMA for their SPI
peripheral and have a limited hardware FIFO.

This property provides flexibility by allowing developers to select a
slower SPI clock frequency and use the symbol width to scale the
timings to meet strict LED strip requirements, minimizing the risk of
FIFO underruns.

Additionally, using higher-density patterns (e.g., 3-bit or 4-bit
symbols) makes more efficient use of the pixel buffer, which reduces
the RAM footprint required for the LED strip data.

The implementation is optimized with a fast path for the common 8-bit
symbol case, while a generic bit-packing loop handles all other
widths.

Signed-off-by: Wai-Hong Tam <waihong@google.com>
2025-08-14 10:44:31 +01:00
Christian Mauderer
84a47b887e drivers: pcie: Add PCIE_CONF_CMDSTAT_SERR
Add constant for bit defining the SERR# driver state.

Signed-off-by: Christian Mauderer <christian.mauderer@embedded-brains.de>
2025-08-14 10:44:11 +01:00
Christian Mauderer
144895dc8e pcie: controller: Use device for register accesses
Use the device in register accesses. This allows to use this code with
multiple controllers instead of only the "chosen" one.

Signed-off-by: Christian Mauderer <christian.mauderer@embedded-brains.de>
2025-08-14 10:44:11 +01:00
Sebastian Huber
f5734fcd30 include: Include missing header
This makes <zephyr/drivers/pcie/controller.h> self-contained.

Signed-off-by: Sebastian Huber <sebastian.huber@embedded-brains.de>
2025-08-14 10:44:11 +01:00
Pieter De Gendt
9925808976 github: errno: Run workflow if SDK_VERSION file is modified
The CI workflow runs on specific paths being touched, add the SDK_VERSION
as one of those paths.
Update to match the CI image with the actual SDK test

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-08-14 10:40:49 +03:00
Lyle Zhu
0af3fd6faa Bluetooth: Classic: RFCOMM: Remove TX thread from DLC
There are two main issues found with using DLC TX thread,
Issue 1, the RAM consumption. Every DLC will have a dedicated thread
and thread stack.
Issue 2, the thread stack overflow issue. There is no way to strike a
balance between stack size and RAM consumption. Since the deep of call
stack is depended on the upper layer, the thread stack needs to set by
application. Due to the thread stack of DLC is dedicated, RAM
consumption is the product of the added value and the number of DLCs.

Use a TX worker to replace DLC TX thread.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-08-14 10:40:38 +03:00
Adam Wojasinski
8fb7f8a19d net: lib: ptp: Fix PTP_UDP_IPv6_PROTOCOL compilation error
When the `PTP_UDP_IPv6_PROTOCOL` configuration is enabled
the `mcast_addr` variable is defined as an IPv6 structure, which
doesn't have `s_addr` member.

To not introduce preprocessor guarded code blocks in functions
added union to represent both configurations: IPv4 and IPv6.

Fixes: #92975

Signed-off-by: Adam Wojasinski <awojasinski@baylibre.com>
2025-08-14 10:40:16 +03:00
Hieu Nguyen
be2ab1fa55 tests: drivers: pwm: Add PWM support for Renesas RZ/T2M, N2L, V2L
Add PWM test support for Renesas RZ/T2M-RSK, RZ/N2L-RSK, RZ/V2L-SMARC

Signed-off-by: Hieu Nguyen <hieu.nguyen.ym@bp.renesas.com>
Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
2025-08-14 10:40:07 +03:00
Hieu Nguyen
0a9e500918 boards: renesas: Add PWM support for Renesas RZ/T2M, N2L, V2L
Add PWM support for board Renesas RZ/T2M-RSK, RZ/N2L-RSK, RZ/V2L-SMARC

Signed-off-by: Hieu Nguyen <hieu.nguyen.ym@bp.renesas.com>
Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
2025-08-14 10:40:07 +03:00
Hieu Nguyen
f9fd3d3057 dts: renesas: Add PWM support for Renesas RZ/T2M, N2L, V2L
Add GPT nodes to Renesas RZ/T2M, N2L, V2L

Signed-off-by: Hieu Nguyen <hieu.nguyen.ym@bp.renesas.com>
Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
2025-08-14 10:40:07 +03:00
Hieu Nguyen
7aa3266840 drivers: pwm: Add PWM support for Renesas RZ/T2M, N2L, V2L
Add PWM driver support for Renesas RZ/T2M, N2L, V2L

Signed-off-by: Hieu Nguyen <hieu.nguyen.ym@bp.renesas.com>
Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
2025-08-14 10:40:07 +03:00
Hieu Nguyen
e2a055242d manifest: Update commit id for hal_renesas
Update commit id for hal_renesas

Signed-off-by: Hieu Nguyen <hieu.nguyen.ym@bp.renesas.com>
Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
2025-08-14 10:40:07 +03:00
Lyle Zhu
3a46e25582 Bluetooth: Classic: Shell: Add connectionless command set
Add connectionless shell commands, `register`, `unregister`, and
`send`.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-08-14 10:39:54 +03:00
Lyle Zhu
0b3f572d85 Bluetooth: Classic: L2CAP: Add connectionless data reception feature
Add a Kconfig `BT_L2CAP_CONNLESS` to enable the feature.

Add an API `bt_l2cap_br_connless_register()` to register the monitor
to receive the unicast connectionless data.

Add an API `bt_l2cap_br_connless_unregister()` to unregister the
registered callbacks.

Add an API `bt_l2cap_br_connless_send()` to send unicast
connectionless data.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-08-14 10:39:54 +03:00
Keith Packard
d77b58aacb cmake: Delay computation of linker paths until needed
With inclusion of the optimization flag into the multilib selection
process, we cannot compute the compiler library path when the compiler's
target.cmake is processed as LINKER_OPTIMIZATION_FLAG is not computed until
much later.

Instead, add a function (compiler_file_path) which can be used to locate
the appropriate crtbegin.o and crtend.o files.

Delay computation of lib_include_dir and rt_library until after all
compiler flags have been computed by adding compiler_set_linker_properties
and calling that just before toolchain_linker_finalize is invoked.

Place default implementations of both of these functions in a new file,
cmake/compiler/target_template.cmake, where we assume the compiler works
like gcc or clang and handlers the --print-file-name and
--print-libgcc-file-name options. Compilers needing alternate
implementations can override these functions in their target.cmake files.

These implementations require that no generator expressions are necessary
for the compiler to compute the right library paths.

This mechanism is also used to take any additional compiler options by
adding a new (optional) linker function,
toolchain_linker_add_compiler_options, which maps compiler options to
equivalent linker options, discarding any that aren't applicable.

Signed-off-by: Keith Packard <keithp@keithp.com>
2025-08-13 22:13:24 -04:00
Keith Packard
d29cbf6563 cmake: Pass optimization flag to linker too
The linker may want to know the desired optimization level as when
the multilib configuration includes -Os as a selector.

Adopt the same pattern as the assembler optimization flags by allowing
toolchains to specify linker optimization flags which default to the
compiler optimization flags and the apply those using add_link_options.

Signed-off-by: Keith Packard <keithp@keithp.com>
2025-08-13 22:13:24 -04:00
Pieter De Gendt
ffc3c4aa6b samples: boards: nxp: mimxrt1060_evk: system_off: Fix GPIO config
A pull-up should be described in hardware (device tree) instead of
software.
Also interrupt on edges instead of the level.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-08-13 22:12:46 -04:00
Pieter De Gendt
bf6b76abbd dts: arm: nxp: rt10xx: Add power state for soft-off
In order for samples/boards/nxp/mimxrt1060_evk/system_off to work, a
soft-off power state is needed.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-08-13 22:12:46 -04:00
Marek Matej
9735a2b752 samples: ipc: openamp on esp32
Updating openamp samples to work on ESP32 targets.

Signed-off-by: Marek Matej <marek.matej@espressif.com>
2025-08-13 22:12:22 -04:00
WenBin Zhang
d28602adaf tracing: systemview: Add isr name for Segger-sysview
With symtab enabled, the isr name is collected by symbol table

Signed-off-by: WenBin Zhang <freey7955@gmail.com>
2025-08-13 22:12:01 -04:00
John Batch
291fed487c tests: kernel: timer tests for kit_psc3m5_evk board
Adding overlays for Infineon kit_psc3m5_evk board to kernel/common,
kernel/timer/timer_error_case and kernel/timer/timer_api tests
when run in secure mode.  These tests require more memory than
the board assigns to secure mode by default.

Signed-off-by: John Batch <john.batch@infineon.com>
2025-08-13 22:11:42 -04:00
Bill Waters
9a2ae1ceb3 samples: drivers: uart: async_api: Add board overlay
Add overlay file for these boards:

  - cy8cproto_062_4343w
  - cy8cproto_063_ble
  - cyw920829m2evk_02

Signed-off-by: Bill Waters <bill.waters@infineon.com>
2025-08-13 22:10:57 -04:00
Iuliana Prodan
0f0ae97afc Revert "ipm: imx: send firmware ready reply to check for fw boot completion"
This reverts commit 01ab719ed7.

This is no longer needed, as we now have a scalable solution
using a vendor-specific resource table, which allows each vendor
to define its own supported features.

Signed-off-by: Iuliana Prodan <iuliana.prodan@nxp.com>
2025-08-13 22:10:23 -04:00
Iuliana Prodan
7253ad3493 samples: openamp_rsc_table: remove unused config
Remove the FW_READY reply config, as it's not required for
the M7 core on i.MX8M Plus.
This setting triggers an interrupt to the host, which is
unnecessary in the case of M7 (check host-side imx_rproc
driver in Linux).

Signed-off-by: Iuliana Prodan <iuliana.prodan@nxp.com>
2025-08-13 22:10:23 -04:00
Iuliana Prodan
227f0e4d18 samples: openamp_rsc_table: use vendor-specific rsc table to reply to host
Update for both 8QM and 8QXP, the nxp_openamp_imx8-adsp board
configuration to enable vendor-specific resource table features
instead of FW_READY reply config.

Signed-off-by: Iuliana Prodan <iuliana.prodan@nxp.com>
2025-08-13 22:10:23 -04:00
Iuliana Prodan
164022d8d3 samples: openamp_rsc_table: use vendor-specific rsc table to reply to host
Update the imx8mp_evk_mimx8ml8_adsp board configuration to enable
vendor-specific resource table features instead of FW_READY reply
config.

Signed-off-by: Iuliana Prodan <iuliana.prodan@nxp.com>
2025-08-13 22:10:23 -04:00
Yangbo Lu
2e10e7faeb test: ram_context_for_isr: exclude imx943 m33
i.MX943 M33 supports multi-level interrupt with NUM_IRQS 405.
Current ram_context_for_isr test does not cover multi-level interrupt.
So exclude i.MX943 M33.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-08-13 22:09:50 -04:00
Yangbo Lu
02da44356c boards: nxp: imx943_evk: doc update for NETC switch support for M33
Added NETC switch support for M33 in doc.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-08-13 22:09:50 -04:00
Yangbo Lu
6a8d8d0bc7 samples: net: dsa: add imx943_evk_mimx94398_m33_ddr board support
Added imx943_evk_mimx94398_m33_ddr board support.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-08-13 22:09:50 -04:00
Yangbo Lu
81747cf28f boards: nxp: imx943_evk: add NETC switch support for M33
Added NETC switch support for M33.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-08-13 22:09:50 -04:00
Yangbo Lu
5b2c553b53 dts: arm: nxp_imx943_m33: add NETC switch node
Added NETC switch node.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-08-13 22:09:50 -04:00
Yangbo Lu
7c9c8d8f44 drivers: dsa_nxp_imx_netc: add tag protocol support
Added tag protocol support.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-08-13 22:09:50 -04:00
Yangbo Lu
a5f612b86a drivers: eth_nxp_imx_netc: allow to transmit DSA tag frame
Allowed to transmit DSA tag frame.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-08-13 22:09:50 -04:00
Yangbo Lu
0e1b918066 net: dsa: support tag protocol setup
Supported tag protocol setup.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-08-13 22:09:50 -04:00
Yangbo Lu
28d0198ef1 net: dsa: add NXP NETC tag protocol driver
Added NXP NETC tag protocol driver.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-08-13 22:09:50 -04:00
Yangbo Lu
92416e2416 net: dsa: add tag protocol definition and binding
Added tag protocol definition and binding. Also introduced
zephyr,dsa-port compatible for future tag protocol driver Kconfig
dependency checking.

Updated existed dts.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-08-13 22:09:50 -04:00
Yangbo Lu
b3e4dc1c9d drivers: ethernet: move NXP NETC DSA driver to dsa directory
Moved NXP NETC DSA driver to dsa directory.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-08-13 22:09:50 -04:00
Yangbo Lu
560249bcbc net: dsa: move DSA core options to subsystem
Moved DSA core options to subsystem.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-08-13 22:09:50 -04:00
Yangbo Lu
1039173062 west.yml: update hal_nxp to support netc tag driver
Updated hal_nxp to support netc tag driver.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-08-13 22:09:50 -04:00
Jordan Yates
19134fc53f net: lib: tls_credentials: fix unregistered log module
A logging module named `tls_credentials` was being declared, but no
other source module was creating and registering it. Do the registration
in the file to fix the compiler error.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-08-13 22:08:46 -04:00
Ofir Shemesh
edf8a24b19 tests: drivers: spi: spi_loopback: move SPI delays to lpspi3 node
Place SPI delay properties under LPSPI instead of OCRAM for
mimxrt1180_evk_mimxrt1189_cm7.

Signed-off-by: Ofir Shemesh <ofirshemesh777@gmail.com>
2025-08-14 02:09:08 +01:00
Olivier Lesage
6558eca56c bluetooth: cs: Add docs about main/sub step mode combinations
Add docs about what main/sub mode combinations are considered valid
by spec.

In hindsight it would've been smarter to expose only one enum for both,
such that the user can't select invalid combinations.

Signed-off-by: Olivier Lesage <olivier.lesage@nordicsemi.no>
2025-08-13 18:31:58 +02:00
Guðni Már Gilbert
b7efede67e scripts: kconfig: optimize write_kconfig_filenames
Filter duplicate entries in `kconf.kconfig_filenames` before calling
`os.path.realpath`.

Before (current code), all entries in `kconf.kconfig_filenames` go
through `os.path.realpath`. Including all duplicate entries.

With the proposed change, the duplicate entries are removed before
calling `os.path.realpath`.

Signed-off-by: Guðni Már Gilbert <gudni.m.g@gmail.com>
2025-08-13 18:31:41 +02:00
Emil Gydesen
bcfb14878b doc: migration guide: Bluetooth: Add guide for target latency and PHY
Some applications may need to modify their code to account
for the changes to struct bt_audio_codec_cfg.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-08-13 18:31:14 +02:00
Dmitrii Sharshakov
ef60501775 ipm: clarify wait parameter interpretation
Wait acts as a boolean, make this clear to avoid implementations
interpreting this as a duration to wait for.

Signed-off-by: Dmitrii Sharshakov <d3dx12.xx@gmail.com>
2025-08-13 18:31:04 +02:00
Aaron Massey
5c5923c233 drives: fuel_gauge: Remove unused battery_cutoff property
The FUEL_GAUGE_BATTERY_CUTOFF enum property was never used and never tested
nor was it intended to be. This property unfortunately made it past review.

Remove it. This is unlikely to cause a breakage since no upstream driver
ever implemented it as a property.

Signed-off-by: Aaron Massey <aaronmassey@google.com>
2025-08-13 18:30:52 +02:00
Ishraq Ibne Ashraf
634df1e1bf boards: seeed: Adding initial board support
Initial board support for Wio-WM1110 Dev Kit.

Signed-off-by: Ishraq Ibne Ashraf <ishraq.i.ashraf@gmail.com>
2025-08-13 18:30:42 +02:00
Marc Lasch
38e105475f boards: holyiot_yj17095: Add Holyiot YJ-17095 module support
The Holyiot YJ-17095 module provides Bluetooth low energy (BLE)
connectivity in a very small form factor of 9.4mm x 9.25mm.

Signed-off-by: Marc Lasch <mlasch@mailbox.org>
2025-08-13 18:30:34 +02:00
Mark Wang
b82a8eb880 west: MAINTAINERS: add libsbc
add libsbc to west.yml and add libsbc to MAINTAINERS.yml

Signed-off-by: Mark Wang <yichang.wang@nxp.com>
2025-08-13 10:26:58 -04:00
Mark Wang
6d8ad0836c libsbc: sbc: implement SBC codec
Use the Android Bluetooth SBC encoder and decoder.
The Android Bluetooth SBC is put as external library (libsbc).
sbc.c/sbc.h implement the interface that is compliant with
Zephyr style and can be used by Zephyr's other modules (
like A2DP).

Signed-off-by: Mark Wang <yichang.wang@nxp.com>
2025-08-13 10:26:58 -04:00
Bartosz Miller
86fb21502c samples: subsys: ipc: Run multi-endpoint IPC sample on nrf54h20
Extend IPC multi-endpont sample for 54h20

Signed-off-by: Bartosz Miller <bartosz.miller@nordicsemi.no>
2025-08-13 10:26:38 -04:00
Tomasz Leman
3570954d8b doc: coverage: fix twister coverage-basedir option syntax
Correct the command line option from --coverage_basedir to
--coverage-basedir to match the actual twister argument syntax.

Signed-off-by: Tomasz Leman <tomasz.m.leman@intel.com>
2025-08-13 10:26:23 -04:00
Mikhail Siomin
83f1bd7341 drivers: spi_nxp_lpspi: allow use of SPI_HOLD_ON_CS flag for lpspi v1
Allow use of SPI_HOLD_ON_CS flag for lpspi with major version 1
when cs is controlled by gpio.

Signed-off-by: Mikhail Siomin <victorovich.01@mail.ru>
2025-08-13 14:33:50 +03:00
Jori Rintahaka
0f89b4ab87 tests: bluetooth: tester: add filter list flag to start discovery
Implement Start Discovery command Accept Filter List filtering.
Add a flag to the command's flags field to enable filtering.

Signed-off-by: Jori Rintahaka <jori.rintahaka@silabs.com>
Signed-off-by: Johan Hedberg <johan.hedberg@silabs.com>
2025-08-13 14:33:40 +03:00
Jilay Pandya
6f2973953b drivers: refactor setting of dir pin in step-dir common
current the dir-pin is getting set each and every time perform_step
is called, this is inefficient, since the direction pin shall be set
only once, when a motion command(move_by/move_to/run) is called.

Signed-off-by: Jilay Pandya <jilay.pandya@outlook.com>
2025-08-13 14:32:59 +03:00
Pieter De Gendt
713603595b drivers: input: chsc5x: Add suspend/resume PM actions
Implement suspend and resume actions for the CHSC5X touch driver.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-08-13 14:32:44 +03:00
Seppo Takalo
b51ba607e0 tests: mcumgr: smp_client: Fix double free on test case
smp_client is automatically freeing all net_buf* given for it,
so testcase does not need to call smp_client_buf_free() for
buffers that are processed.

Signed-off-by: Seppo Takalo <seppo.takalo@nordicsemi.no>
2025-08-13 14:32:17 +03:00
Pieter De Gendt
be216ba9e6 drivers: counter: mcux_snvs: Convert Kconfig symbol to dts property
The SNVS RTC can act as a wakeup source, re-use pm.yaml properties and
remove the Kconfig symbol.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-08-13 11:10:03 +01:00
Pieter De Gendt
f8473d1a3d samples: boards: nxp: mimxrt1060_evk: Remove default selected options
Remove Kconfig symbols that are default selected based on the device tree.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-08-13 11:10:03 +01:00
Pieter De Gendt
1ebb7e09ca dts: bindings: Move NXP i.MX SNVS from rtc to counter
The SNVS RTC is a Real Time Counter instead of a Real Time Clock.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-08-13 11:10:03 +01:00
Pavel Vasilyev
33b6e9c642 tests: bsim: bluetooth: host: Remove net_buf_unref call after bt_send
If `bt_send` returns 0, the buffer will be unreferenced by an hci
driver. If it returns error, the buffer won't be unreferenced.

Since it is a test, simply check that `bt_send` always returns 0
otherwise fail the test.

Signed-off-by: Pavel Vasilyev <pavel.vasilyev@nordicsemi.no>
2025-08-13 11:09:55 +01:00
Michał Stasiak
4abc1dd67c modules: hal_nordic: remove deprecated error code
NRFX_ERROR_ALREADY_INITIALIZED has beed deprecated and
repleaced by NRFX_ERROR_ALREADY.

Signed-off-by: Michał Stasiak <michal.stasiak@nordicsemi.no>
2025-08-13 11:09:47 +01:00
Vit Stanicek
9341a6980b Revert "boards: mimxrt700_evk: Enable NS & NP GPIO0 access"
This reverts commit 40f08428d3.

The PCNS and ICNS registers of the mimxrt798s's GPIO0 peripheral allow
accesses to be set up only with mutual exclusivity (either the
cm33_cpu0 or the hifi4), thus the access is reverted to the cm33_cpu0
domain.

Signed-off-by: Vit Stanicek <vit.stanicek@nxp.com>
2025-08-13 11:09:32 +01:00
Vit Stanicek
30e053ca2c soc: mimxrt798s/hifi4: Disable GPIO support
Remove INPUTMUX interrupt assignments for PINT and GPIO peripherals.
Remove gpio0 DT node.

As the GPIO peripherals can be secured on the mimxrt798s, accesses from
the cm33_cpu0 and hifi4 are mutually exclusive, so the GPIO0 will stay
enabled in the cm33_cpu0 domain.

Signed-off-by: Vit Stanicek <vit.stanicek@nxp.com>
2025-08-13 11:09:32 +01:00
Vit Stanicek
846d967921 dt: mimxrt700_evk/hifi4: Remove GPIO0 nodes
Remove overlay of gpio0 node. Remove dependent nodes (LEDs, keys).
Remove alias bindings of those.

Signed-off-by: Vit Stanicek <vit.stanicek@nxp.com>
2025-08-13 11:09:32 +01:00
Vit Stanicek
7181d692b9 samples: rtxxx-amp: amp_blinky: Disable for mimxrt700_evk/hifi4
Add a build error conditional for mimxrt700_evk/mimxrt798s/cm33_cpu0,
thus disabling build for the hifi4 domain. Remove that target from
platform_allow in sample.yaml.

Signed-off-by: Vit Stanicek <vit.stanicek@nxp.com>
2025-08-13 11:09:32 +01:00
Ilya Tagunov
c8c894b83e lib: libc: arcmwdt: add a declaration for the strnlen function
ARC MWDT C library does not have an implementation of the strnlen
function, so we have a wrapper over standard-compliant strnlen_s.
However, there is no declaration of the wrapper, so add one.

Signed-off-by: Ilya Tagunov <Ilya.Tagunov@synopsys.com>
2025-08-13 11:09:01 +01:00
Dmitrii Sharshakov
6e2001ba90 Bluetooth: isoal: fix building with verbose logging
Fixes d414cab87a (likely a missed rename)

Signed-off-by: Dmitrii Sharshakov <d3dx12.xx@gmail.com>
2025-08-13 11:08:48 +01:00
Jiafei Pan
b9ee247352 samples: net: zperf: add imx95 evk a55 suppport
Add i.MX 95 EVK A55 support for zperf sample.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-08-13 11:08:39 +01:00
Jiafei Pan
0c2bb624d3 boards: imx95_evk: a55: enlarge networking stack size
The issue is caused by default stack size 1500 bytes of NET_RX_STACK_SIZE
is to small for ARM64 platform, then the stack of net_rx thread is
overflow and break the net_mgmt thread's stack, as a result net_mgmt thread
is crashed.

So this patch will enlarge all the stack size of net stack threads.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-08-13 11:08:39 +01:00
Jiafei Pan
5a56cb6fc0 boards: imx95_evk: a55: add NETC support
Added NETC PSI0 support on the i.MX 95 EVK board for A55 platform.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-08-13 11:08:39 +01:00
Jiafei Pan
7d747f5a2e soc: imx95: a55: add netc power and clock init in soc.c
Power up NETCMIX and configure netc clock in soc_init().

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-08-13 11:08:39 +01:00
Jiafei Pan
cb3b08b046 dts: arm64: imx95_a55: add SCMI power device node
Added SCMI power dts node.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-08-13 11:08:39 +01:00
Jiafei Pan
0965d794a6 dts: arm64: imx95_evk: add netc dts nodes
Added NETC dts nodes in imx95_evk A55 platform.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-08-13 11:08:39 +01:00
Jiafei Pan
f11cdece2f west.yml: depend on hal_nxp PR
Tmp patch to depend on hal_nxp PR 571.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-08-13 11:08:39 +01:00
Mike J. Chen
737aa7d9f3 drivers: dma: dma_mcux_lpc: fix multiple bugs with continuous mode
There are multiple bugs related to continuous/circular mode.
Continuous/circular mode is where the DMA runs continuously
until the stop API is called, instead of auto-stopping on
completion on a single transfer. After a stop, the DMA
can then be reconfigured/restarted.

1. Fix bug where stop didn't actually stop. This can cause memory
   corruption if the user thought the DMA stopped and repurposed
   the dest memory, but in fact the DMA is still writing to it.
   The bug was due the incorrect usage of the DMA controller busy
   state. The DMA controller is busy only when a transfer is
   actively in progress, but the driver needed to stop even if
   the transfer is not active but is only enabled (and may become
   active on a subsequent trigger event). Change so that data->busy
   doesn't use the DMA controller busy state but tracks the enable
   state. Also, to make it doubly safe, make stop function always stop
   regardless of data->busy state because it is alway safe/correct
   to do so.

2. Fix race condition where a stop request from another ISR might race
   with a DMA completion interrupt, and the DMA completion callback
   gets invoked after the DMA has already been stopped. The fix
   is to unregister the callback with the sdk DMA driver, so the
   ISR still runs and clear the interrupt without invoking the
   callback. There is potentially still a race if the interrupt
   is restarted before the ISR fires, so the callback might be
   called too early. However, the Zephyr DMA driver doesn't
   have the channel level details that the SDK driver does and
   it cannot clear just the channel interrupt.

Also a couple of general fixes/improvements:

a. Use interrupt B for end of transfer (single transfer or end
   of block list). Use interrupt A for interrupts of a block
   in the middle of a transfer or for continuous/circular transfers.
   This fixes the dma callback so it can properly report
   DMA_STATUS_BLOCK vs DMA_STATUS_COMPLETE.

b. Reorder some fields in struct channel_data to pack a little
   better in memory

Signed-off-by: Mike J. Chen <mjchen@google.com>
2025-08-13 11:08:21 +01:00
Mike J. Chen
4e0e3c990d drivers: dma: dma_mcux_lpc: fix src_inc/dst_inc for block chain
The dma driver was determining src_inc and dst_inc from the
config of the first block buffer and ignoring the config
flags for any additional buffers in the chain, which could
lead to incorrect transfers (e.g. in a multiple rx buffer
case, if the first buffer was to receive to NULL,
but the subsequent buffers were not NULL, the bug
would manifest as all transfers being made with
dst_inc of 0). Change the driver to setup
each dma descriptor according to the addr_adj flag
of each block_buffer.

Add check that peripheral transfers have addr_adj set to
NO_CHANGE instead of assuming it, to help catch errors.

Also now check for invalid addr_adj request of
decrement, which this controller doesn't support.

Signed-off-by: Mike J. Chen <mjchen@google.com>
2025-08-13 11:08:21 +01:00
Mike J. Chen
1c4351a208 drivers: mcux: spi and dma: add explicit dma channel type for SPI_TX
The spi_mcux_flexcomm driver uses a special last DMA blk_cfg
to trigger a release of the SPI chip select. This transfer
is always a 4-byte transfer, regardless of the width specified
during dma_configure().

The way the spi_mcux_flexcomm driver communicated this special
transfer was kind of a hack, where the dma_mcux_lpc driver would
assume that when a blk_cfg with source_addr_adj and dest_addr_adj
both set to NO_CHANGE was for this SPI_TX special case.

However, this is an unsafe hack since it is perfectly valid
to have dma use cases for both src/dest_addr_adj to be NO_CHANGE
that is not for SPI_TX. One example is when transmitting a
fixed/repeating value to a periperhal address (e.g. send 100
bytes of the same value from a single memory address over SPI).

This CL introduces a dma_mcux_lpc specific dma channel_direction
which the two drivers now use to cleary request this special
transfer case.

Signed-off-by: Mike J. Chen <mjchen@google.com>
2025-08-13 11:08:21 +01:00
Mike J. Chen
df46b30b8b drivers: spi: mcux_flexcomm: add error handling code
In spi_mcux_transfer_next_packet(), if the next
transfer start fails, add calls to
spi_context_cs_control() to release cs and
spi_context_complete() with error code -EIO.

Signed-off-by: Mike J. Chen <mjchen@google.com>
2025-08-13 11:08:21 +01:00
Mike J. Chen
03684e8572 drivers: spi: mcux_flexcomm: make async mode with dma work
The current driver implementation would block even when the async
API was invoked, so it wasn't really async.

This CL also fully chains the DMA transfer using multiple dma blocks
and makes the number of dma blocks available a config value. The
increase in number of dma blocks is needed so that a spi_buf_set
that has many entries can be converted into chained dma transfers
with the last transfer in a separate block that will set the EOT flag.

Also make some improvements:
1) When doing single cnt transfer, don't use the SDK driver but
   use a new fucntion spi_mcux_transfer_single_word().
   It's much more efficient and does not use an ISR
   like the SDK function does just to send one word.

2) Fix calls to spi_context_update_tx/rx() so that the
   correct word size is passed in, instead of previously
   being hardcoded to 1. This only matters when word size
   is two. Evaluate the word_size_bytes and word_size_bits
   once and store the values in data instead of computing
   it multiple times in various parts of the driver

3) When CONFIG_SPI_MCUX_FLEXCOMM_DMA is defined, we
   do not use the IRQ handler, so add #ifdefs to compile
   that code out. This reduces code size.

Signed-off-by: Mike J. Chen <mjchen@google.com>
2025-08-13 11:08:21 +01:00
Mike J. Chen
0c1e9c3e7a Revert "drivers: spi: mcux_flexcomm: use rxignore bit instead of dummy read."
This reverts commit a3530d6a43.

This change incorrect if chip-select is via a GPIO pin,
released by spi_context_cs_control(), and not the controller
default chip-select pin that can be released using a final
FIFOWR.

When GPIO is used for chip-select control, the chip-select could
be released too soon because the transfer callback is invoked
when the last byte is put into the TX FIFO but that byte might
not yet have clocked out yet on the SPI pins. The rx part of
the transfer is really what completes the transfer so ignoring
it is incorrect.

We could try to special case and use ignore only when
spi_context_cs_control() does nothing, but since it is a very
small optimization, it doesn't seem worth the extra
complexity.

Signed-off-by: Mike J. Chen <mjchen@google.com>
2025-08-13 11:08:21 +01:00
Tomasz Bursztyka
60e5a5622b shell: Improve device list command with an optional filter
It might come in handy to filter the output of a device list
command, by adding a filter (auto-completion enabled as well).

Such as:
$ device list uart
devices:
- uart@2f8 (READY)
  DT node labels: uart1
- uart@3f8 (READY)
  DT node labels: uart0

Signed-off-by: Tomasz Bursztyka <tobu@bang-olufsen.dk>
Co-authored-by: Dimitris Karnikis <dika@bang-olufsen.dk>
Co-authored-by: Hans Binderup <habi@bang-olufsen.dk>
2025-08-13 11:08:07 +01:00
Tomasz Bursztyka
1cb1a2777e shell: Add an init command to device module
Optional, this command can be helpful to debug device initialization
process.

Signed-off-by: Tomasz Bursztyka <tobu@bang-olufsen.dk>
2025-08-13 11:08:07 +01:00
Tomasz Bursztyka
c30cbe39b4 shell: utils: Add non-ready device handling functions
It might come in handy to access non-initialized devices throuhg the
shell. I.e. devices which 'zephyr,deferred-init' DTS attribute was set.

Signed-off-by: Tomasz Bursztyka <tobu@bang-olufsen.dk>
2025-08-13 11:08:07 +01:00
Tomasz Bursztyka
eb85374e2a shell: Fix device name lookup buffer size
It is actually easy to have device name going beyond 20 characters.
There is a maximum defined internally, better using it.

Signed-off-by: Tomasz Bursztyka <tobu@bang-olufsen.dk>
2025-08-13 11:08:07 +01:00
Yongxu Wang
e7d59641e2 pm: power_mgmt_soc: add imx95_evk m7 into test case yml
enable imx95_evk m7 for this power_mgmt_soc test case

Signed-off-by: Yongxu Wang <yongxu.wang@nxp.com>
2025-08-13 11:08:00 +01:00
Yongxu Wang
e0e40165ee soc: nxp: imx95: setup m7mix and wakeupmix power on in suspend mode
wakeupmix keep power on state is essential for system
suspend mode, because of console uart locate in it.

temporarily set the M7 mix to power on,
further optimization will be carried out later

Signed-off-by: Yongxu Wang <yongxu.wang@nxp.com>
2025-08-13 11:08:00 +01:00
Yongxu Wang
ae974a2263 soc: nxp: imx9: add basic pm process for i.MX95 M7
add basic pm_state_set and pm_state_exit_post_ops

Signed-off-by: Yongxu Wang <yongxu.wang@nxp.com>
2025-08-13 11:08:00 +01:00
Yongxu Wang
19d118d98d dts: arm: nxp_imx95_m7: add pm node
added wait/stop/suspend pm node for imx95 m7

Signed-off-by: Yongxu Wang <yongxu.wang@nxp.com>
2025-08-13 11:08:00 +01:00
Yongxu Wang
3b2518382c drivers: firmware: scmi: add cpu lpm interface api
Added scmi_cpu_pd_lpm_set api for nxp imx scmi interface

This api set the lpm setting for some peripherals applied
when cpu enter a low power mode, such as keep iMX95 wakeup mix
power on when M7 core enter suspend mode, scmi agent record and
deal with this request

Signed-off-by: Yongxu Wang <yongxu.wang@nxp.com>
2025-08-13 11:08:00 +01:00
Yongxu Wang
480f01ece8 drivers: firmware: scmi: disable interrupt communication in polling mode
SCMI processor interrupts from agent are enabled by default during the
`setup_chan` initialization phase. This is suitable for interrupt-driven
communication, where the agent triggers an interrupt to notify the platform
after completing a message transaction.

However, when using the polling model, interrupts are not required and may
cause unintended behavior or performance issues in PM.
To ensure correct operation under polling mode, the interrupt should
be explicitly disabled after channel setup.

Signed-off-by: Yongxu Wang <yongxu.wang@nxp.com>
2025-08-13 11:08:00 +01:00
Yongxu Wang
d24b50e952 drivers: scmi: add use_polling parameter in scmi_send_message
SCMI supports both polling and interrupt modes for message completion.
Previously, the scmi_send_message() API used a 'pre_kernel' flag to
determine which mode to use_polling during the pre-kernel phase and
interrupts post-kernel.

This approach tightly coupled the decision logic with kernel state,
limiting flexibility. In particular, certain power management (PM)
related SCMI APIs require polling mode even in post-kernel context
to avoid unintended CPU wakeups caused by interrupts.

This patch replaces the 'pre_kernel' with a more generic
'use_polling' parameter, allowing callers to explicitly specify
the desired behavior. Typical usage can still rely on k_is_pre_kernel()
to determine polling mode in higher level api, while PM related
calls can directly enforce polling regardless of kernel state.

Signed-off-by: Yongxu Wang <yongxu.wang@nxp.com>
2025-08-13 11:08:00 +01:00
Jonas Berg
8843fd9fe1 Samples: Fix ID for VCNL4040 sensor sample
The ID of the sample is wrong, so it is not possible to link
to the sample documentation. I found this issue when working
on a shield for the VCNL4040 proximity sensor.

To my knowledge, there are no references to the invalid ID yet.

Signed-off-by: Jonas Berg <jonas.s.t.berg@gmail.com>
2025-08-12 20:39:48 -04:00
Lukasz Fundakowski
fc8164036c twister: Fix pytest warnings while discovers tests
Added `__test__ = False` to classes that have
`Test` in the name.

Signed-off-by: Lukasz Fundakowski <lukasz.fundakowski@nordicsemi.no>
2025-08-12 20:39:29 -04:00
Jordan Yates
9d0d3ef076 net_buf: buf: return on double free
If assertions are disabled, return on double free instead of wrapping
around the reference count.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-08-12 20:39:06 -04:00
Jordan Yates
5184e3f86a net_buf: buf: assert on double free
Unreferencing a buffer that has already been freed should trigger an
assertion as it indicates a critical logic error and potential security
concern.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-08-12 20:39:06 -04:00
Jordan Yates
97b9a0c1c5 net_buf: buf: remove custom assertion logic
There is no need for a custom assert macro that is only used once, or
conditional compilation of the assert macro based on `__ASSERT_ON`. If
assertions are disabled the compiler should simply discard the code.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-08-12 20:39:06 -04:00
Jordan Yates
4e13c1168e tests: udc: fix double free
When the UDC device is enabled, the dequeue operation automatically
frees the enqueued buffer.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-08-12 20:39:06 -04:00
Jordan Yates
008ce8cf2d tests: net_buf: buf: remove double free
`net_buf_frag_del` already unreferences the deleted fragment.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-08-12 20:39:06 -04:00
Henrik Brix Andersen
1d45e17037 Revert "serial: uart_native_pty: IRQ support"
This reverts commit df1e6f5290.

Fixes: #94425

Signed-off-by: Henrik Brix Andersen <henrik@brixandersen.dk>
2025-08-12 20:33:02 -04:00
Hake Huang
6364bafba3 tests: mimxrt1060_evk: adjust i2s testing for NXP mimxrt1060 board
1. enable the codec + i2s sample
2. skip i2s loopback as this conflicts with lcd

Signed-off-by: Hake Huang <hake.huang@nxp.com>
2025-08-12 18:40:31 -04:00
Johan Hedberg
381ec33879 Bluetooth: Controlller: Remove deprecated BT_CTLR Kconfig option
This option was deprecated in Zephyr 4.1.0, so it can be removed for Zephyr
4.3.0.

Signed-off-by: Johan Hedberg <johan.hedberg@silabs.com>
2025-08-12 18:40:20 -04:00
Jamie McCrae
ffddc76bf0 west.yml: MCUboot synchronization from upstream
Update Zephyr fork of MCUboot to revision:
  bf5321bb6906e9e75b4c85b7c98b71c06ae52e90

Brings following Zephyr relevant fixes:

  - bf5321bb boot: zephyr: Remove reference to deprecated BT_CTLR
    option
  - 800868a9 bootutil: swap_scratch: Fix scratch scrambling
  - 16cfdaf3 boot: zephyr: Fix including asn1 when ed25519 is used

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
Signed-off-by: Johan Hedberg <johan.hedberg@silabs.com>
2025-08-12 18:40:20 -04:00
Johan Hedberg
811cd87734 tests: Don't use deprecated BT_CTLR Kconfig option
The new option is HAS_BT_CTLR, however since it's a promptless option,
disable the native link layer instead, which most likely was the intended
effect.

Signed-off-by: Johan Hedberg <johan.hedberg@silabs.com>
2025-08-12 18:40:20 -04:00
Johan Hedberg
eb69b43e71 samples: Remove usage of deprecated BT_CTLR Kconfig option
Use HAS_BT_CTLR which has replaced the deprecated BT_CTLR option.

Signed-off-by: Johan Hedberg <johan.hedberg@silabs.com>
2025-08-12 18:40:20 -04:00
Johan Hedberg
d27df89ce4 boards: Remove usage of deprecated BT_CTLR Kconfig option
Use HAS_BT_CTLR instead of the deprecated BT_CTLR.

Signed-off-by: Johan Hedberg <johan.hedberg@silabs.com>
2025-08-12 18:40:20 -04:00
Fin Maaß
9eb8e0c88f drivers: spi: litex: litespi: support interrupts
support interrupts for rx_ready, so we can use the
time we are waiting for other stuff.

implement async spi transfers.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-08-12 21:34:03 +02:00
Fin Maaß
bd7a5790ab drivers: spi: litex: increase SPI_MAX_CS_SIZE to 32
LiteSPI now has support for multiple CS.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-08-12 21:34:03 +02:00
Fin Maaß
1be193bf63 drivers: i2c: litex: remove warnings from CI
remove warnings from CI.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-08-12 21:34:03 +02:00
Fin Maaß
771b6ac07f drivers: i2c: litex: litei2c: support interrupts
support interrupts for rx_ready, so we can use the
time we are waiting for other stuff.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-08-12 21:34:03 +02:00
Michal Smola
c0b439e5ec samples: sensor: accel_trig: Fix harness configuration
Error message HARNESS:Console:no regex patterns configured
is shown when sample.sensor.accel_trig sample is run.
The error occurs because harness configuration is changed
(a fixture is added) in the test case. When the configuration
is changed in a test case, common configuration is not
inherited and required properties need to be redefined.
Add console harness configuration for the test case.

Signed-off-by: Michal Smola <michal.smola@nxp.com>
2025-08-12 21:33:52 +02:00
Mahesh Mahadevan
fd3adad019 soc: nxp: rw: Move the code for pin configuration in sleep mode to SoC file
All pins are configured by default to be output low during sleep.
A device-tree property called "sleep-output" is provided for cases where
pins need to be configured differently.

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2025-08-12 21:33:34 +02:00
Mahesh Mahadevan
5541f3f18b boards: frdm_rw612: Certain pins need be configured differently in sleep
By default, all pins will be set to output low in sleep. The LED pins
should output high in sleep so that its stays inactive.
The RESET pin of the LCD display should be left high as well in sleep.

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2025-08-12 21:33:34 +02:00
Mahesh Mahadevan
94f93405c1 dts: nxp: Add sleep-output property
This property allows a user to specify the operation of a
pin in sleep mode.
By default, pins are configured to be output low in sleep mode.

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2025-08-12 21:33:34 +02:00
Marcin Szkudlinski
01d35752a4 mm: add sys_mm_drv_map_* functions with region check
the commit adds sys_mm_drv_map_page_safe and sys_mm_drv_map_region_safe
functions, wrappers for sys_mm_drv_map_region and sys_mm_drv_map_region,
with additional check if a mapped region fits into given memory range

Using of those prevents collisions and/or hijacking of virtual memory

Signed-off-by: Marcin Szkudlinski <marcin.szkudlinski@intel.com>
2025-08-12 21:33:20 +02:00
Marcin Szkudlinski
3d461ee435 mm: add application access to unused_l2_start_aligned marker
this marker is an address of the very first byte not used by the linker,
with alignment to cacheline

Signed-off-by: Marcin Szkudlinski <marcin.szkudlinski@intel.com>
2025-08-12 21:33:20 +02:00
Marcin Szkudlinski
51d3c7aa07 mm: add external control to virtual memory regions
this commit removes creation of virtual memory regions from
Zephyr, allowing the application to create required regions

It is up the application to use virtual memory as needed,
zephyr however is keeping the table and ensures no memory
addresses overlaps

Signed-off-by: Marcin Szkudlinski <marcin.szkudlinski@intel.com>
2025-08-12 21:33:20 +02:00
Tim Pambor
7c0e4aecac samples: sensor_shell: Wait for prompt before sending command
Wait for prompt before sending command to ensure shell is ready.

Signed-off-by: Tim Pambor <tim.pambor@codewrights.de>
2025-08-12 21:33:00 +02:00
Tim Pambor
df1e6f5290 serial: uart_native_pty: IRQ support
Add support for the interrupt-driven API. Interrupts are
emulated using a polling thread.

Signed-off-by: Tim Pambor <tim.pambor@codewrights.de>
2025-08-12 21:33:00 +02:00
Van Petrosyan
00cee2c98d drivers: charger: add generic custom value types to property union
Add simple, typed containers for custom properties

Signed-off-by: Van Petrosyan <van.petrosyan@sensirion.com>
2025-08-12 21:32:35 +02:00
Ilya Tagunov
6a427995b0 soc: snps: rmx: replace custom buildlib with generic RMX linker option
Do not use the custom buildlib configuration for the RMX series as it
was replaced with several even more specific configurations in the
recent MWDT release. Pass the generic RMX option to the linker instead.

Signed-off-by: Ilya Tagunov <Ilya.Tagunov@synopsys.com>
2025-08-12 21:32:18 +02:00
Ilya Tagunov
d8a1e858a1 arcmwdt: linker: append -Hlld option only for ARC architecture
The option -Hlld of the MWDT linker is relevant only for classic ARC.
It is incompatible with ARC-V platform options like -av5rmx.

Signed-off-by: Ilya Tagunov <Ilya.Tagunov@synopsys.com>
2025-08-12 21:32:18 +02:00
Krzysztof Chruściński
0a51a1714d drivers: timer: nrf_rtc: Fix custom wrapping
Use channel 0 for RTC wrapping. Skip that channel when processing
channels.
Fix algorithm that prevents setting CC=0 when custom wrapping is used.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-08-12 21:31:55 +02:00
Jeppe Odgaard
7c796c417e shell: mqtt: add configurable delays
Allow changing delays via Kconfig values.

Use identical delay (`SHELL_MQTT_WORK_DELAY_MS`) for connect, subscribe and
process work instead of varying 1 or 2 second delay.

Signed-off-by: Jeppe Odgaard <jeppe.odgaard@prevas.dk>
2025-08-12 21:31:35 +02:00
Henrik Brix Andersen
badfa0933e manifest: update net-tools to include CAN bus support
Update the net-tools revision to include support for managing host CAN
interfaces (e.g. zcan0 as used by the Zephyr native Linux SocketCAN
driver).

Signed-off-by: Henrik Brix Andersen <henrik@brixandersen.dk>
2025-08-12 21:31:14 +02:00
Piotr Kosycarz
8d5823d814 tests: boards: nrf: xip: extend timeout
Flashing ext flash is long.

Signed-off-by: Piotr Kosycarz <piotr.kosycarz@nordicsemi.no>
2025-08-12 21:30:55 +02:00
Emil Gydesen
965bcd6312 Bluetooth: CAP: Implement unicast to broadcast handover
Implement the unicast to broadcast handover procedure,
as per the Bluetooth CAP specificiation.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-08-12 12:35:57 +02:00
Jakub Zymelka
c535d6e5d1 drivers: adc: nrfx_saadc: Add support for DMM
Add support for DMM which manages cache and dedicated memory spaces.

Signed-off-by: Jakub Zymelka <jakub.zymelka@nordicsemi.no>
2025-08-12 12:35:48 +02:00
Abderrahmane JARMOUNI
cafc00cc74 tests: kernel: mem_heap: enhance k_heap_free() API coverage
Enhance k_heap_free() API coverage by testing NULL free & double free
edge cases

Signed-off-by: Abderrahmane JARMOUNI <git@jarmouni.me>
2025-08-12 12:35:38 +02:00
Abderrahmane JARMOUNI
e79be024e4 tests: kernel: mem_heap: enhance k_heap_calloc() API coverage
Enhance k_heap_calloc() API coverage by testing overflow and zero-size
edge cases

Signed-off-by: Abderrahmane JARMOUNI <git@jarmouni.me>
2025-08-12 12:35:38 +02:00
Abderrahmane JARMOUNI
7f57759f9d tests: kernel: mem_heap: add k_heap_aligned_alloc() coverage
add test coverage for k_heap_aligned_alloc() k_heap API

Signed-off-by: Abderrahmane JARMOUNI <git@jarmouni.me>
2025-08-12 12:35:38 +02:00
Artur Hadasz
9a1fe30199 bootloader: mcuboot: Changes needed to support AES256
This commit adds changes which are necessary to support
the AES256 encryption algorithm in mcuboot.

Signed-off-by: Artur Hadasz <artur.hadasz@nordicsemi.no>
2025-08-12 12:35:31 +02:00
Muzaffar Ahmed
445e993491 net: l2: wifi: Fix get RTS threshold in Wi-Fi shell
Changed the number of mandatory options of `rts threshold` to 1, so as
to allow no arguments for querying.

Signed-off-by: Muzaffar Ahmed <muzaffar.ahmed@silabs.com>
2025-08-12 12:35:22 +02:00
Tim Lin
e98920d695 drivers/i2c: it51xxx: Fix build assert to check port number instead of inst
Currently the build assert checks the number of I2C instances as
the available I2C target mode, which is incorrect.
This patch updates the build assert to check the I2C port_num instead,
since IT51xxx only supports I2C target mode on ports 0 to 2.

Signed-off-by: Tim Lin <tim2.lin@ite.corp-partner.google.com>
2025-08-12 09:56:19 +03:00
Jamie McCrae
637082efb0 lorawan: Imply soft-se instead of selecting it
This allows the software secure enclave to be changed to a
different implementation, which currently is not possible

Signed-off-by: Jamie McCrae <spam@helper3000.net>
2025-08-12 09:56:06 +03:00
Fabio Baltieri
2705260b27 cmake: deprecate the flash debug debugserver attach rtt targets
These call west right now, tell the user to call west directly instead.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2025-08-12 09:55:47 +03:00
Fabio Baltieri
ee5b5f30fe twister: always call flash directly
Drop the logic to use the generator "flash" target, that is using west
anyway, always call flash directly anyway so that those targets can be
deprecated.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2025-08-12 09:55:47 +03:00
Bill Waters
77a62d1b5b linker: noint memory region location
- There are linker file directives that must come at the
  start of the noinit region.  For example, the directive
  that allow that section to not exist in RAM before a
  certain address (. = MAX(ABSOLUTE(.), 0x34002000);).
- Before this update, those could only be added to the end
  of that region.  They will now have the option to be at the
  beginning or the end.

Signed-off-by: Bill Waters <bill.waters@infineon.com>
2025-08-12 09:55:12 +03:00
Ian Morris
e18cf0cfab boards: renesas: ek_ra8d1: added mikrobus node labels
Added mikrobus_serial, mikrobus_spi and mikrobus_header node
labels to EK-RA8D1 device tree board definition, allowing
compatible shield boards to be used.

Signed-off-by: Ian Morris <ian.morris.vf@renesas.com>
2025-08-12 09:54:57 +03:00
Aaron Fong
c9d50b6339 drivers: intc_dw: support multiple instances
Update the initializers to support platforms with multiple instances
of the DesignWare interrupt aggregator. Also ensure that the initialize
function calls irq_enable(). The calculation of the _sw_isr_table entry
also now takes CONFIG_GEN_IRQ_START_VECTOR into account.

Signed-off-by: Aaron Fong <afong@tenstorrent.com>
2025-08-12 09:54:43 +03:00
Hake Huang
d627d56b19 tests: display: add test case using display_harness
add a test case for display using  display harness

Signed-off-by: Hake Huang <hake.huang@nxp.com>
Co-authored-by: Abderrahmane JARMOUNI <git@jarmouni.me>
2025-08-12 09:54:27 +03:00
Hake Huang
9e551f5877 twister: harness: add display harness
display harness to validate display content

Signed-off-by: Hake Huang <hake.huang@nxp.com>
Co-authored-by: Abderrahmane JARMOUNI <git@jarmouni.me>
2025-08-12 09:54:27 +03:00
Quy Tran
c1d0dfdd06 tests: drivers: flash: Add config for test driver flash size
Add config TEST_DRIVER_FLASH_SIZE for Renesas RX130

Signed-off-by: Quy Tran <quy.tran.pz@renesas.com>
2025-08-12 09:54:10 +03:00
Quy Tran
15ac9af103 soc: renesas: rx: Update linker for using code flash
- RDP flash driver type1 requires copy code from ROM
to RAM to program/erase on code flash region

Signed-off-by: Quy Tran <quy.tran.pz@renesas.com>
2025-08-12 09:54:10 +03:00
Quy Tran
3e20f6e6b8 boards: renesas: Add support for flash driver on RSK-RX130-512kb board
Add flash driver support on RSK-RX130-512kb

Signed-off-by: Quy Tran <quy.tran.pz@renesas.com>
2025-08-12 09:54:10 +03:00
Quy Tran
aadf381bdf dts: rx: Add dts property for flash driver on RSK-RX130-512kb
Add dts for flash controller includes code and data flash region
on RSK-RX130-512kb

Signed-off-by: Quy Tran <quy.tran.pz@renesas.com>
2025-08-12 09:54:10 +03:00
Quy Tran
56ec47c62d drivers: flash: Add flash driver support for RX with flash type 1
- Add support for flash driver on RX with flash type 1
- Add bindings for flash driver on RX

Signed-off-by: Quy Tran <quy.tran.pz@renesas.com>
2025-08-12 09:54:10 +03:00
Michal Smola
add9e60c1d drivers: i2c: mcux_lpi2c: Support split role interrupts
Some NXP SoCs have dedicated interrupts for controller and target roles.
The i2c_mcux_lpi2c driver connects only one interrupt.
Add connection of the second interrupt, if enabled, to support SoCs with
split role interrupts.

Signed-off-by: Michal Smola <michal.smola@nxp.com>
2025-08-11 15:59:07 -04:00
Andrey Dodonov
98db4d975c net: lib: http_server: prevent busfault if socket family is AF_UNSPEC
If webserver uses custom socket creation,
and it's family is AF_UNSPEC, net_sprint_addr will return NULL,
which leads to LOG_DBG crashing with busfault.
Add NULL check for that.

Signed-off-by: Andrey Dodonov <Andrey.Dodonov@endress.com>
2025-08-11 15:57:35 -04:00
James Smith
a317f194b9 boards: silabs: xg22_ek2710a: add support for pwm-leds
Add support for pwm-leds on xG22-EK2710A boards.

Signed-off-by: James Smith <james@loopj.com>
2025-08-11 13:24:10 -05:00
Robert Lubos
5e75627d1c tests: net: socket: udp: Add tests for resetting peer address
Verify that resetting peer address with AF_UNSPEC address family work as
expected.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-08-11 13:23:42 -05:00
Robert Lubos
09cbd286c5 net: connection: Use NET_CONN_*_PORT_SPEC flag when comparing ports
The NET_CONN_LOCAL/REMOTE_PORT_SPEC flags were set on the connection but
not really used. At the same time, when remote address was being
cleared, only the flag was unset, but the actual port number left
intact. This could lead to false port comparisons when remote address
was cleared from the connection context.

In order to avoid that, use the NET_CONN_*_PORT_SPEC flags to determine
whether to compare local/remote ports instead of checking the port value
right away (which may not be valid anymore if the flag is unset).

Also align with MISRA rules when comparing flags in other cases.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-08-11 13:23:42 -05:00
Robert Lubos
841035a2d6 net: connection: Fix mixed up comments
Local/remote address port comments were mixed up in the flags
documentation.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-08-11 13:23:42 -05:00
Robert Lubos
271e0c54ed net: context: Reset peer address on connect with AF_UNSPEC
As per POSIX, for non-connection-mode sockets the peer address should be
reset if AF_UNSPEC family type is provided to the connect() call:

  "If the sa_family member of address is AF_UNSPEC, the socket's peer
   address shall be reset.""

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-08-11 13:23:42 -05:00
Johann Fischer
b8b04075fb samples: video: capture: remove stray USB legacy stack configuration
The legacy USB device stack configuration used in the board
configuration overlay files has been deprecated. It is not causing CI
failures because the board lacks a test feature 'video' and is filtered
out in CI.

Besides the deprecated configuration, the sample code does not enable
the USB device stack, so it is not used anyway. Even if it were needed,
the correct way to enable logging via USB CDC ACM would be to use the
cdc-acm-console snippet.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-08-11 13:22:56 -05:00
Chris Friedt
821c142443 posix: sysconf: declare sysconf macro values more reliably
The `sysconf()` implementation in Zephyr can be macro-based or
library-based. Both approaches use the same set of runtime-invariant
definitions in `sys/sysconf.h`.

These were previously fine, as long as POSIX limits were
guaranteed to be defined. However, some C libraries omit definitions
for runtime-invariants values and instead force the application to
query values via `sysconf()`.

The specification formally supports that approach [1]. Normally,
definitions are allowed to do so "on specific implementations where the
corresponding value is equal to or greater than the stated minimum, but
is unspecified." In practice, that is not always the case, but we need
to be able to compile `sysconf()` anyway.

Notable constants that are missing in Picolibc or Newlib include:

- AIO_LISTIO_MAX
- AIO_MAX
- AIO_PRIO_DELTA_MAX
- CHILD_MAX
- DELAYTIMER_MAX
- HOST_NAME_MAX
- IOV_MAX
- LOGIN_NAME_MAX
- MQ_OPEN_MAX
- MQ_PRIO_MAX
- OPEN_MAX
- PAGESIZE
- PAGE_SIZE
- PTHREAD_DESTRUCTOR_ITERATIONS
- PTHREAD_KEYS_MAX
- PTHREAD_THREADS_MAX
- RTSIG_MAX
- SEM_NSEMS_MAX
- SEM_VALUE_MAX
- SIGQUEUE_MAX
- SS_REPL_MAX
- STREAM_MAX
- SYMLOOP_MAX
- TIMER_MAX
- TTY_NAME_MAX

For greater portability, define those values using

1. a Kconfig-derived definition,
2. a symbolic minimum value (required by the spec), or
3. a numeric minimum value (if the required symbolic minimum is missing).

[1]
https://pubs.opengroup.org/onlinepubs/9799919799/basedefs/limits.h.html

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-08-11 13:22:06 -05:00
Chris Friedt
ef7c4dc3aa net: lib: ocpp: use sys_clock_gettime() instead of gettimeofday()
Use the native zephyr sys_clock_gettime() call instead of the XSI
gettimeofday(), since XSI is not required here and would normally
require CONFIG_XSI_SINGLE_PROCESS to be selected.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-08-11 13:21:11 -05:00
Chris Friedt
e197c312cc net: lib: ocpp: select Kconfig for reentrant function gmtime_r()
Select CONFIG_POSIX_C_LANG_SUPPORT_R for the reentrant version of
gmtime(), gmtime_r().

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-08-11 13:21:11 -05:00
Ayush Singh
dc1d6edc0c boards: beagle: beagleconnect_freedom: Add mcumg uart to dts
- Seems most boards add the chosen property in the base devicetree as
  well, so do the same.
- Tested on samples/subsys/mgmt/mcumgr/smp_svr

Signed-off-by: Ayush Singh <ayush@beagleboard.org>
2025-08-11 13:20:24 -05:00
Ayush Singh
91e3915427 boards: beagleconnect_freedom: Enable swap using scratch
- The fs layout for MCUboot on bcf has the following requirements:
  - slot0 and slot1 are on different flash (say A and B).
  - flash A and B have different sector sizes (8K and 4K).
  - slot1 should be >= slot0. This is due to the fact that slot0 is in
    the soc flash. Hence want to have as much usable space as possible.

- Taking all of the above into consideration, swap using scratch seems
  to be the appropriate algorithm for bcf.

Signed-off-by: Ayush Singh <ayush@beagleboard.org>
2025-08-11 13:20:24 -05:00
Ayush Singh
cbcac24a9a boards: beagle: beagleconnect_freedom: Resize mcuboot partitions
- MCUboot seems to work fine with 40K partition. However, it seems like
  swap using scratch algorithm does not work when slot partition size is
  not a multiple of scratch partition size. So made this partition 56K.
- Tested using samples/subsys/mgmt/mcumgr/smp_svr
- Only uses a bit over 32K. Since flash sector size is 8K, 40K partition
  seems to be a good choice with decent headroom.
- The final partition is as follows:
  - MCUboot: 56K
  - slot0: 640K
  - slot1: 640K
  - scratch 128K

Signed-off-by: Ayush Singh <ayush@beagleboard.org>
2025-08-11 13:20:24 -05:00
Chris Friedt
eef8e9f4f2 posix: limits: use numeric minimum values
Ensure that minimum values are numeric and align with the specification.

Define runtime invariant values using Kconfig options or constant
minimum values.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-08-11 13:19:43 -05:00
Andrej Butok
bad99fff50 drivers: nxp: flash_mcux_flexspi: add jedec_id check
- Adds JEDEC-ID check to the flash_mcux_flexspi driver
  if it is defined in DTS.
- Avoids applying DTS settings to a different flash module.

Signed-off-by: Andrej Butok <andrey.butok@nxp.com>
2025-08-11 13:19:01 -05:00
Jamie McCrae
c58ae17389 mgmt: mcumgr: grp: img_mgmt: Show firmware loader slot info
Allows returning image information for the firmware loader image
slot, showing version of the application and flags

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-08-11 13:18:20 -05:00
Martin Hoff
4b3ff98e08 tests: drivers: dma: clean-up conf for silabs boards
With the recent upgrade of the LDMA driver, these conf files are no
longer needed. (The LDMA driver now supports channel allocation and
large transfers)

Signed-off-by: Martin Hoff <martin.hoff@silabs.com>
2025-08-11 13:17:45 -05:00
Martin Hoff
d64db7c5ec drivers: dma: silabs: change default max descriptor from 8 to 16
We need to add CONFIG_DMA_MAX_DESCRIPTOR=16 for a lot of tests, then
this default value of this parameter need to be higher. It allows to
delete some overlay files.

Signed-off-by: Martin Hoff <martin.hoff@silabs.com>
2025-08-11 13:17:45 -05:00
Martin Hoff
9ed0ded09d drivers: dma: silabs: add dma block splitting for high transfer size
The LDMA driver currently has a 1:1 mapping between hardware LDMA
descriptors and struct dma_block_config. This patch allows multiple
hardware descriptors to be allocated for a single struct dma_block_config
if the block size exceeds the transfer capacity of a single hardware
LDMA descriptor. This is beneficial for other peripheral drivers: it is
no longer necessary to split the payload by the transfer capacity of a
single hardware LDMA descriptor.

Signed-off-by: Martin Hoff <martin.hoff@silabs.com>
2025-08-11 13:17:45 -05:00
Magpie Embedded
3d2f8b1cd8 boards: raspberrypi: rpi_pico2w: Add Pico 2W
The Pico 2W board is similar to the Pico 2 apart from the addition of an
Infineon Wifi chip.
This commit is based on the Pico and Pico W setup.
A different sample application is shown as blinky is not yet supported
on the Pico 2W.

Signed-off-by: Magpie Embedded <magpieembedded@gmail.com>
2025-08-11 13:16:43 -05:00
Johann Fischer
0e3cd5b83a samples: usb: remove zephyr_cdc_acm.inf
This file is not referenced anywhere, and the operating systems that
would require it are EOL. Remove it from the tree.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-08-11 14:08:00 +03:00
Sergei Ovchinnikov
b590873e84 dts: bindings: regulator: fix npm13xx soft start current enum
The nPM1300 datasheet featured wrong soft start current values which
were also used in the DTS bindings for its regulator driver. This fixes
the values aligning them with the next release of the document.

Signed-off-by: Sergei Ovchinnikov <sergei.ovchinnikov@nordicsemi.no>
2025-08-11 14:07:49 +03:00
Helmut Lord
169db46cd6 dp: add option to keep reset deasserted
Adds a property to keep reset deasserted even when the SWD port is
disconnected.

Signed-off-by: Helmut Lord <kellyhlord@gmail.com>
2025-08-11 14:07:41 +03:00
Ilya Tagunov
871124a6f3 linker: arc: support MWDT-specific input section naming scheme
The MWDT linker has a specific input section sorting mechanism,
designated as x$y. Some prebuilt ARC libraries actually use it,
causing a lot of warnings when the linker decides where to place
their symbols. Provide explicit instructions in the linker script
instead of making the linker guess.

Signed-off-by: Ilya Tagunov <Ilya.Tagunov@synopsys.com>
2025-08-11 14:07:32 +03:00
Tomasz Leman
bfdab166e3 intel_adsp: Introduce ACE 4.0 architecture with NVL/NVL-S platforms
Introduce the ACE 4.0 architecture, along with support for the NVL and
NVL-S platforms within the Intel ADSP framework in the Zephyr project.

This update includes:

- Addition of ACE 4.0 architecture configurations in Kconfig and
  Kconfig.intel_adsp.
- Inclusion of device tree source files for NVL and NVL-S platforms,
  defining CPU, memory, and peripheral configurations.
- Updates to driver files to support ACE 4.0 specific features,
  including DMIC and SSP configurations.
- Introduction of new header files for ACE 4.0, detailing boot,
  interrupt, IPC, power, and shim functionalities.
- Modifications to the CMakeLists.txt to include ACE 4.0 MMU support.
- Addition of default configurations for NVL and NVL-S platforms in
  Kconfig.defconfig.ace40.

The NVL and NVL-S platforms are part of the Nova Lake series, targeting
advanced audio processing capabilities. ACE 4.0 introduces enhanced DSP
capabilities and advanced power management features, improving audio
stream handling and synchronization compared to ACE 3.0.

Signed-off-by: Flavio Ceolin <flavio.ceolin@intel.com>
Signed-off-by: Daniel Leung <daniel.leung@intel.com>
Signed-off-by: Serhiy Katsyuba <serhiy.katsyuba@intel.com>
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
Signed-off-by: Tomasz Leman <tomasz.m.leman@intel.com>
2025-08-11 12:50:10 +03:00
Ruibin Chang
3fc27e71d2 drivers: input: it8xxx2: resolve runtime assertion failure
When the kso[17:16] lines are enabled and `CONFIG_ASSERT` is
configured, the following error occurs: "Input cannot be
enabled for 'Open Drain', 'Open Source' modes without Output."
To address this, this commit configures kso16 and kso17 as
gpio output before applying the pinctrl settings.

Tested with: no abnormal keyscan occurs during
initialization

Signed-off-by: Ruibin Chang <Ruibin.Chang@ite.com.tw>
Signed-off-by: Ren Chen <Ren.Chen@ite.com.tw>
2025-08-11 12:50:00 +03:00
Ren Chen
3a4cc129a7 drivers: spi: it8xxx2: only enable spi clock during spi transaction
To reduce power consumption, the SPI clock is gated when no spi
transaction is in progress. With this mechanism, current
consumption is reduced by approximately 0.1mA when cpu idle.

Signed-off-by: Ren Chen <Ren.Chen@ite.com.tw>
2025-08-11 12:49:49 +03:00
Ren Chen
fdfece9e7d drivers: spi: it8xxx2: remove cs gpio support
This commit removes gpio-based cs support as it8xxx2 spi
only supports transactions using the dedicated cs pin.

Signed-off-by: Ren Chen <Ren.Chen@ite.com.tw>
2025-08-11 12:49:49 +03:00
Pieter De Gendt
b694f03741 samples: modules: lvgl: demos: Sync main with LVGL work queue thread
If LVGL uses a work queue thread, we can't call LVGL functions from the
main thread. Use a k_event variable to signal between threads.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-08-11 12:49:36 +03:00
Pieter De Gendt
b5883d3a37 modules: lvgl: Provide API mutex (un)locking
Add helper functions that can be used to lock/unlock the LVGL's internal
mutex before calling API funcions.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-08-11 12:49:36 +03:00
Pieter De Gendt
af529f4c40 modules: lvgl: include: Generate doxygen for LVGL workqueue getter
When building API documentation, generate the lvgl_get_workqueue brief.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-08-11 12:49:36 +03:00
Daniel Flodin
a4b66f9214 cmake: assembler optimization options
Commit f499ea0 made it so that the compiler optimization flags are also
passed to the assembler. However, this breaks for the IAR toolchain
since it uses the GNU assembler which does not have the same
optimization flags as the IAR compiler.

This commit separates the compiler and assembler optimizations to make
it possible to specify appropriate flags in a toolchains corresponding
`compiler_flags.cmake`

Signed-off-by: Daniel Flodin <daniel.flodin@iar.com>
2025-08-11 12:49:21 +03:00
Łukasz Stępnicki
bd412d7591 soc: nordic: ironside: dvfs: check abb analog status more than once
Added ABB analog status lock read retries if needed.
After cpu idle ABB macro may need some time to initialize
and report status locked. Attempts cound can be configured
using Kconfig option.

Signed-off-by: Łukasz Stępnicki <lukasz.stepnicki@nordicsemi.no>
2025-08-11 12:49:12 +03:00
Karthikeyan Krishnasamy
51a8cc2d60 tests: drivers: rtc: add rtc_api test suite support
Add rtc_api test coverage support for lp_mspm0g3507

Signed-off-by: Karthikeyan Krishnasamy <karthikeyan@linumiz.com>
2025-08-11 12:49:01 +03:00
Karthikeyan Krishnasamy
33a43faffc dts: arm: ti: mspm0: add support for rtc
Add a rtc support for mspm0

Signed-off-by: Karthikeyan Krishnasamy <karthikeyan@linumiz.com>
2025-08-11 12:49:01 +03:00
Karthikeyan Krishnasamy
e386692b64 drivers: rtc: add driver support for ti mspm0 rtc
added Real-Time Clock driver support for Texas Instruments
MSPM0 Family, currently this driver supports rtc time keeping
and calendar alarms functionality

Signed-off-by: Karthikeyan Krishnasamy <karthikeyan@linumiz.com>
2025-08-11 12:49:01 +03:00
Karthikeyan Krishnasamy
0278b9c2d5 dts: bindings: rtc: introduce ti mspm0 rtc binding
add Real-Time Clock binding for Texas Instruments MSPM0 Family

Signed-off-by: Karthikeyan Krishnasamy <karthikeyan@linumiz.com>
2025-08-11 12:49:01 +03:00
Hau Ho
b630941164 boards: renesas: rx: Initial support for EK-RX261 board
Initial support for EK-RX261 board using RX261 SOC

Singed-off-by: Quy Tran <quy.tran.pz@renesas.com>
Signed-off-by: Hau Ho <hau.ho.xc@bp.renesas.com>
2025-08-11 12:48:35 +03:00
Phi Tran
5afa17cd21 boards: renesas: rx: Initial support for FPB-RX261 board
Initial support for board FPB-RX261

Signed-off-by: Phi Tran <phi.tran.jg@bp.renesas.com>
2025-08-11 12:48:35 +03:00
Phi Tran
6966f0a910 drivers: uart: Update sci uart for support RX261
This commit to update sci uart for support RX261

Signed-off-by: Phi Tran <phi.tran.jg@bp.renesas.com>
2025-08-11 12:48:35 +03:00
Phi Tran
84190f4581 drivers: gpio: Update gpio and pinctrl driver for support RX261
Update gpio driver and pinctrl driver for support RX261

Signed-off-by: Phi Tran <phi.tran.jg@bp.renesas.com>
2025-08-11 12:48:35 +03:00
Phi Tran
8340dedbea drivers: clock control: Add support clock control for RX261
Add support clock control for RX261

Signed-off-by: Phi Tran <phi.tran.jg@bp.renesas.com>
2025-08-11 12:48:35 +03:00
Hau Ho
aa8ae86a9c dts: renesas: initial support dts SoC layer on RX261.
This commit to initial support dts SoC layer on RX261

Signed-off-by: Hau Ho <hau.ho.xc@bp.renesas.com>
Signed-off-by: Phi Tran <phi.tran.jg@bp.renesas.com>
2025-08-11 12:48:35 +03:00
Hau Ho
262fc25690 soc: renesas: rx: Initial support for RX261 SOC
This commit to initial support for RX261 SOC.

Signed-off-by: Hau Ho <hau.ho.xc@bp.renesas.com>
Signed-off-by: Phi Tran <phi.tran.jg@bp.renesas.com>
2025-08-11 12:48:35 +03:00
Phi Tran
3bd10d9793 arch: update fixed vectors for config HOCO frequency.
Add macro to update fixed vectors to configure Hoco frequency
via the register OFS1.

Signed-off-by: Phi Tran <phi.tran.jg@bp.renesas.com>
2025-08-11 12:48:35 +03:00
Hau Ho
6b1f06b202 scripts: west: flash: Add support for scripts to flash using the RFP tool.
Add support for scripts to flash using the RFP tool.

Signed-off-by: Hau Ho <hau.ho.xc@bp.renesas.com>
2025-08-11 12:48:35 +03:00
Phi Bang Nguyen
3ae962fd36 samples: video: capture: Add check for buffer size and count
Verify the buffer size and the number of buffers before allocation.

Signed-off-by: Phi Bang Nguyen <phibang.nguyen@nxp.com>
2025-08-10 22:09:01 +03:00
Phi Bang Nguyen
c95ec709c8 samples: video: capture: Drop buffers array variable
The buffers array variable is not needed. Drop it.

Signed-off-by: Phi Bang Nguyen <phibang.nguyen@nxp.com>
2025-08-10 22:09:01 +03:00
Phi Bang Nguyen
086bdae37e drivers: video: sw_generator: Fix min buffers count
The driver needs at least one buffer to be able to start.

Signed-off-by: Phi Bang Nguyen <phibang.nguyen@nxp.com>
2025-08-10 22:09:01 +03:00
Camille BAUD
5d8cf554e8 drivers: display: ssd1327: greyscale -> grayscale
greyscale -> grayscale

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-08-10 22:08:49 +03:00
Camille BAUD
faf96bc1f0 drivers: display: Add gamma table setting to ssd1327
This adds the ability to send gamma settings to the controller

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-08-10 22:08:49 +03:00
Alex Fabre
bfd2ac78ad shell: add app version command
This commit brings a shell command to retreive the following application
version information:

- APP_VERSION_STRING
- APP_VERSION_EXTENDED_STRING
- APP_BUILD_VERSION

Signed-off-by: Alex Fabre <alex.fabre@rtone.fr>
2025-08-09 20:27:30 -04:00
Chris Friedt
62f62dbb0b bluetooth: classic: shell: mitigate label followed by declaration
A recent change triggered a warning in LLVM that was promoted to error
when run with twister.

```shell
goep.c:102:3: error: label followed by a declaration is a C23 extension
  [-Werror,-Wc23-extensions]
  102 |                 int err;
```

Add a scope to the switch case so that the declaration has proper scope.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-08-09 12:39:05 +03:00
Chris Friedt
41120bf07c tests: kernel: mem_map: reduce reserved pages for qemu_x86 tiny
A recent change caused tests to start failing for qemu_x86_tiny/atom .

Similarly to bda38f033a, reduce the number of
reserved pages so that the test suite can pass for this platform.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-08-09 12:38:58 +03:00
Dmitrii Sharshakov
f2f496df84 drivers: reset: rpi_pico: rewrite
Use HAL functions, which also wait for reset to complete.

Remove unused register size and active-low DT props.

Signed-off-by: Dmitrii Sharshakov <d3dx12.xx@gmail.com>
2025-08-09 03:40:17 -04:00
James Smith
5261e53ea3 drivers: gpio: silabs: Don't fail to init is clock is already enabled
Don't fail to initialize gpio if it was already initialized, for
example by mcuboot. Fixes #94281.

Signed-off-by: James Smith <james@loopj.com>
2025-08-09 03:40:09 -04:00
Radosław Koppel
c62bd3a88e Bluetooth: Remove _node field of bt_conn_cb if not used
After the #93703 PR was merged we get a possibility to remove _node field
from bt_conn_cb struct if the BT_CONN_DYNAMIC_CALLBACKS option is disabled.
The list conn_cbs can also be safely removed by more macro usage.

Signed-off-by: Radosław Koppel <r.koppel@k-el.com>
2025-08-09 03:39:52 -04:00
Sam Friedman
a9dc9395a4 Bluetooth: Controller: Allow default to maximum DLE value
CONFIG_BT_CTLR_DATA_LENGTH_MAX should set its default value up to
and including the maximum value supported by the Bluetooth spec
(251 bytes).

Signed-off-by: Sam Friedman <sam@golioth.io>
2025-08-09 03:39:42 -04:00
Steve Boylan
ba65ff34fb pinctrl: raspberrypi: pico: Add GPIO pinctrl definitions
In most circumstances, GPIO pins identified in devicetree are
assigned to the SIO function at initialization.  However, there
are cases where pin assignments change in alternate pinctrl
configurations.  This commit adds the necessary definitions to
specify GPIO opration in pinctrl.

Signed-off-by: Steve Boylan <stephen.boylan@beechwoods.com>
2025-08-08 10:48:55 -05:00
Henrik Brix Andersen
7b42f40a29 tests: drivers: can: timing: respect CONFIG_CAN_SAMPLE_POINT_MARGIN
Respect the newly introduced CONFIG_CAN_SAMPLE_POINT_MARGIN Kconfig option
when verifying if timing can be met.

Signed-off-by: Henrik Brix Andersen <henrik@brixandersen.dk>
2025-08-08 10:48:25 -05:00
Henrik Brix Andersen
63c13b7523 drivers: can: add Kconfig option for specifying the sample point margin
Add a Kconfig option for setting the maximum acceptable deviation in sample
point location (permille).

Signed-off-by: Henrik Brix Andersen <henrik@brixandersen.dk>
2025-08-08 10:48:25 -05:00
Ayush Singh
f484c3c19f tests: drivers: flash: common: Add filter for disable_spi_nor
- Only run the test when storage_partition is not on the spi-nor flash.

Signed-off-by: Ayush Singh <ayush@beagleboard.org>
2025-08-08 10:47:58 -05:00
Ayush Singh
52736cd6b1 boards: beagle: beagleconnect_freedom: Enable flash
- Since flash sample now works fine, add it to supported list.

Signed-off-by: Ayush Singh <ayush@beagleboard.org>
2025-08-08 10:47:58 -05:00
Ayush Singh
3f49bca0ad boards: beagle: beagleconnect_freedom: Fix SPI flash size
- SPI flash size should be given in bits, not bytes.
- Tested with samples/drivers/spi_flash

Signed-off-by: Ayush Singh <ayush@beagleboard.org>
2025-08-08 10:47:58 -05:00
Henrik Brix Andersen
993baae940 tests: kconfig: functions: add tests for dt_compat_enabled
Add tests for the dt_compat_enabled Kconfig function.

Signed-off-by: Henrik Brix Andersen <hebad@vestas.com>
2025-08-08 10:47:29 -05:00
Alberto Escolar Piedras
e1beee608c docs boards native_sim: Clarify that *uart_cmd can be anything
Clarify that the uart "attach commands" can be really anything
the shell can run.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-08-08 10:47:12 -05:00
Alberto Escolar Piedras
c64702a5d7 docs boards native_sim: Change title
Let's better refer to the board by the name "native_sim",
and leave the "native simulator" for the underlaying common
component which is shared with the nrf*bsim targets.

native_sim is the "plain vanilla" native simulator build with
some trivial HW models.
While the nrf*bsim targets use the native simulator (without those
trivial HW models), and expand it with the Nordic HW models.

Hopefully that helps people understand what is common and what
is not.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-08-08 10:47:12 -05:00
Joel Jaldemark
7f7949d849 drivers: modem: add support for getting iccid from laraR6 and saraR5
Add at commands to get iccid from lara R6 and sara R5 modem

Signed-off-by: Joel Jaldemark <joeljaldemark@outlook.com>
2025-08-08 10:46:48 -05:00
Alberto Escolar Piedras
dd0fd90de0 MAINTAINERS: Update nrf_hw_models project collaborators
Let's update this west module/project collaborators:
wopu-ot & thoh-ot have been out of the picture for these HW models for
quite a while now, while rugeGerritsen has been much more active.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-08-08 10:46:23 -05:00
Jérôme Pouiller
7cb4584e3c soc: silabs: Fix SoC names
As discussed here[1], CONFIG_SOC should rely on CONFIG_SOC_* variables
while it currently rely on CONFIG_SOC_PART_NUMBER_*. These variable are in
fact misnamed since the migration to HWMv2. So "PART_NUMBER" has to be
removed from these names.

[1]: https://github.com/zephyrproject-rtos/ \
     zephyr/pull/93285#discussion_r2221382981

Note, this patch has been generated with:

    sed -i -e s/SOC_PART_NUMBER_MGM/SOC_MGM/   \
           -e s/SOC_PART_NUMBER_EF/SOC_EF/     \
           -e s/SOC_PART_NUMBER_SIM3/SOC_SIM3/ \
           -e s/SOC_PART_NUMBER_SIWG/SOC_SIWG/ \
           soc/**/*.soc boards/**/Kconfig.*

Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
2025-08-08 10:46:03 -05:00
Jérôme Pouiller
70b507f06d modules: hal_silabs: Unify KConfig options names
Currently, the options related to the Rail library are just prefixed by
RAIL_. We prefer to keep all the options related to Simplicity SDK into the
same namespace.

So, just add the required prefix to these options.

Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
2025-08-08 10:46:03 -05:00
Davi Herculano
34bdd17d18 driver: i2s: fix nxp i2s multi-lane config
Fix the case where multiple I2S channels are used at
the same time by using the fifo combine feature.

Signed-off-by: Davi Herculano <herculanodavi@gmail.com>
2025-08-08 10:45:26 -05:00
Yangbo Lu
dd19dcb53b drivers: eth_xmc4xxx: adjust ptp clock rate based on nominal frequency
Adjusted ptp clock rate based on nominal frequency.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-08-08 10:44:44 -05:00
Yangbo Lu
2d82a0dcab drivers: eth_e1000: adjust ptp clock rate based on nominal frequency
Adjusted ptp clock rate based on nominal frequency.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-08-08 10:44:44 -05:00
Yangbo Lu
76b7bcc0b2 drivers: eth_stm32_hal: adjust ptp clock rate based on nominal frequency
Adjusted ptp clock rate based on nominal frequency.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-08-08 10:44:44 -05:00
Yangbo Lu
969e619aff include: drivers: ptp_clock: clarify ptp_clock_rate_adjust function
It's not very clear about the function of ptp_clock_rate_adjust in doc.
Previously, all device drivers used it to adjust rate ratio relatively
based on current frequency.

When PI servo was introduced in PTP and gPTP stacks, NXP ENET PTP driver
started to use it to adjust rate ratio based on its nominal frequency.

Rate ratio adjustment based on nominal frequency with PI servo could
get stable frequency control. So, let's clarify ptp_clock_rate_adjust
adjusting rate ratio based on nominal frequency, and convert other
device drivers.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-08-08 10:44:44 -05:00
Felix Wang
dbf14547ab tests: drivers: counter_basic_api: Enable lpit test for mimxrt1180_evk
Enable test for all channels on both cm33 and cm7 core.
This test covers following test cases:
- test_set_top_value_with_alarm
- test_valid_function_without_alarm
- test_set_top_value_without_alarm
Signed-off-by: Felix Wang <fei.wang_3@nxp.com>
2025-08-08 10:44:24 -05:00
Felix Wang
02546580be soc: nxp: imxrt: clock update for LPIT instances on RT118X
1. Configure clock source for lpit3 for imxrt118x devices
2. Support lpit in clock driver

Signed-off-by: Felix Wang <fei.wang_3@nxp.com>
2025-08-08 10:44:24 -05:00
Felix Wang
f4f295710f dts: arm: nxp: rt118x: add lpit instances for RT118X
Add lpit1, lpit2, lpit3 and all of the channels information

Signed-off-by: Felix Wang <fei.wang_3@nxp.com>
2025-08-08 10:44:24 -05:00
Felix Wang
a717fac593 drivers: Counter: LPIT Support on Zephyr
1.Add dts bindings nxp,lpit-channel.yaml and nxp,lpit.yaml
2.Provide counter driver based on lpit driver from NXP mcux-sdk-ng

Signed-off-by: Felix Wang <fei.wang_3@nxp.com>
2025-08-08 10:44:24 -05:00
sudarsan N
acad9532c5 drivers: sensor: voltage_divider: fix unchecked pm_device_runtime_get()
Fix Coverity CID 529858 (CWE-252): Previously, the return value of
pm_device_runtime_get() was not checked during PM resume, which could
lead to missed error conditions.

This patch ensures proper error handling by checking and propagating
the return status of the call.

Fixes: #92608

Signed-off-by: sudarsan N <sudarsansamy2002@gmail.com>
2025-08-08 10:43:26 -05:00
Lyle Zhu
34bd7dc6b8 Bluetooth: GOEP: Support the empty Name header case
According to the OBEX Version 1.5, the Name header could be a empty
string.

Update function `bt_obex_add_header_name` to support the case that the
length of name could be 0.

Update function `bt_obex_get_header_name` to support the case that the
name header is found but the name length is 0.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-08-08 10:43:07 -05:00
Lyle Zhu
5d5add259e test: shell: GOEP: Optimize TLV-triplet setting
Add a TLV array `tlvs` to keep the pending TLV data.

Update `app_param`, `auth_challenge`, and `auth_rsp` to set the one
TLV information each time. When the optional argument `last` set,
write the all pending TLVs to the tx buffer.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-08-08 10:43:07 -05:00
Lyle Zhu
c418d21793 Bluetooth: GOEP: Improve TLV triplet encoding and parsing
Add a structure `struct bt_obex_tlv` to pass/save the one TLV info.

Use a array of `struct bt_obex_tlv` as the set of all TLV-triplets.
Update the following functions to  support the feature, including
`bt_obex_add_header_app_param`, `bt_obex_add_header_auth_challenge`,
and `bt_obex_add_header_auth_rsp`.

Add a function `bt_obex_tlv_parse` to parse the encoded TLV-triplets.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-08-08 10:43:07 -05:00
Lyle Zhu
0dfae64699 Bluetooth: OBEX: Check if the added string is valid
There are types of string can be added by using OBEX adding header
function bt_obex_add_header_*(). One is byte sequence. Another is null
terminated Unicode text.

Add a function bt_obex_string_is_valid() to check if the added string
is valid. And add a function bt_obex_unicode_is_valid() dedicated to
check Unicode string.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-08-08 10:43:07 -05:00
Lyle Zhu
ccad303d50 Bluetooth: shell: Add OBEX commands for GOEP
Add commands for GOEP to test OBEX features.

Add command `alloc-buf` and `release-buf` to allocate and release TX
buffer.

Add command set `add-header` to add the OBEX headers to allocated TX
buffer.

Add command set `client` to send OBEX client requests with allocated
TX buffer.

Add command set `server` to send OBEX responses with allocated TX
buffer.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-08-08 10:43:07 -05:00
Lyle Zhu
8d1b3e9111 Bluetooth: shell: Add transport commands for GOEP
Add commands for GOEP to test transport features.

Add commands for transport over RFCOMM, including `register-rfcomm`,
`connect-rfcomm`, and `disconnect-rfcomm`.

Add commands for transport over L2CAP, including `register-l2cap`,
`connect-l2cap`, and `disconnect-l2cap`.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-08-08 10:43:07 -05:00
Lyle Zhu
bfd42f5c80 Bluetooth: GOEP: Improve the MTU configuration
The MTU of the GOEP should be not less than 255. So, if the transport
is RFCOMM, the CONFIG_BT_BUF_ACL_RX_SIZE should be not less than 264.
It includes,
- 255 bytes for the minimum MTU of GOEP,
- 4 bytes for L2CAP Header,
- 5 bytes for RFCOMM header and FCS.

And if the transport is L2CAP, the CONFIG_BT_BUF_ACL_RX_SIZE should
be not less than 259.
It includes,
- 255 bytes for the minimum MTU of GOEP,
- 4 bytes for L2CAP Header.

Add Kconfig `BT_GOEP_RFCOMM_MTU` to configure the maximum size for
RFCOMM transport. The range of `BT_GOEP_RFCOMM_MTU` is
`[264, BT_RFCOMM_L2CAP_MTU]`. And the GOEP MTU via RFCOMM transport
should be in the range `[255, (BT_GOEP_RFCOMM_MTU-9)]`.

Add Kconfig `BT_GOEP_L2CAP_MTU` to configure the maximum size for
L2CAP transport. The range of `BT_GOEP_L2CAP_MTU` is
`[259, BT_BUF_ACL_RX_SIZE]`. And the GOEP MTU via L2CAP transport
should be in the range `[255, (BT_GOEP_L2CAP_MTU-4)]`.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-08-08 10:43:07 -05:00
Lyle Zhu
3d91b89ed0 Bluetooth: GOEP: Enable GOEP feature
Add a Kconfig BT_GOEP to control the GOEP feature.

Implement the GOEP protocol and transport, both for GOEP 1.1 and GOEP
2.x.

For GOEP transport, OBEX over RFCOMM, and OBEX over L2CAP are
supported.

For GOEP protocol, `put`, `get`, `abort`, `setpath`, and `action` are
supported. And only one operation can be processed at the same time.
The feature `Reliable Session` is unsupported.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-08-08 10:43:07 -05:00
Michał Stasiak
c4af18dc65 drivers: spi: nrfx: release constlat mode on suspend
Release instead of requesting constant latency mode
on SPI suspend.

Signed-off-by: Michał Stasiak <michal.stasiak@nordicsemi.no>
2025-08-08 11:53:53 +03:00
Håvard Reierstad
f231c5f070 Bluetooth: Host: Add req/rsp l2cap validation
L2CAP channels will now, along with the ident, store the opcode of the
pending request. This commit expands the ident lookup function to also
compare received response types to this opcode, and will ignore
unsolicited responses.

Setting of idents for channels are moved after verification of buffer
allocation for the request to be sent. A TODO is added for improving
this functionality at a later time.

Signed-off-by: Håvard Reierstad <haavard.reierstad@nordicsemi.no>
2025-08-08 11:53:43 +03:00
Lucien Zhao
c292b216d2 tests: drivers: spi: spi_loopback: add flexio_spi usage on RT1180
Increase latency for DMA/FLEXIO
Disable default lpspi3 instance
Configure flexio2_spi pin
Enable flexio2 as spi function

Signed-off-by: Lucien Zhao <lucien.zhao@nxp.com>
2025-08-08 11:53:18 +03:00
Lucien Zhao
d61236ded2 tests: driver: pwm: pwm_api: Enable flexio_pwm function on pwm_api case
Enable flexio clock in soc.c file
Add mimxrt1180_evk_flexio_pwm.overlay:
- Configure flexio2_d2 pins
- enable flexio2_pwm
- disable default watchdog tpm5

Signed-off-by: Lucien Zhao <lucien.zhao@nxp.com>
2025-08-08 11:53:18 +03:00
Lucien Zhao
be0a8624d1 dts: arm: nxp: add two flexio instances for RT1180
add two flexio instances for RT1180

Signed-off-by: Lucien Zhao <lucien.zhao@nxp.com>
2025-08-08 11:53:18 +03:00
Lucien Zhao
df0e0f8d8a test: driver: watchdog: support rt1180 platform for wdt_basic_reset_none
Modify mcxw7x_ewm.overlay name to app_ewm.overlay, make overlay
file more universal.

Record mimxrt1180_evk platform into testcase.yaml.

Signed-off-by: Lucien Zhao <lucien.zhao@nxp.com>
2025-08-08 11:53:18 +03:00
Lucien Zhao
0caeac706e dts: arm: nxp: nxp_rt118x.dtsi: add ewm0 module
add ewm0 module for rt1180 platform

Signed-off-by: Lucien Zhao <lucien.zhao@nxp.com>
2025-08-08 11:53:18 +03:00
Lucien Zhao
8f94c91c5b drivers: watchdog: wdt_nxp_ewm.c: add clk_sel feature for ewm IP
emw clk designed on RT1180 can be chosen by CLKCTRL register,
add code to get sel from dts and configure it in driver.

Signed-off-by: Lucien Zhao <lucien.zhao@nxp.com>
2025-08-08 11:53:18 +03:00
Dawid Niedzwiecki
7ee39d1754 drivers: flash: add extended operations to Andes XIP driver
Add the extended operations to the Andes XIP flash driver.

The extended operations supports:
 - reading status registers of the flash chip
 - changing status registers of the flash chip
 - software lock of the status registers
 - modifying SPI read command used in memory-mapped mode

Signed-off-by: Dawid Niedzwiecki <dawidn@google.com>
2025-08-08 11:53:07 +03:00
Chaitanya Tata
9dda88fcbd net: ip: Use rate limited version
As this is the hot data path, use a rate limited warning variant.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-08-08 11:52:54 +03:00
Chaitanya Tata
e22ce7a34c logging: Fix formatting
Auto-format using clang-format, esp. for the aligning backslahes and a
couple of manual edits to fix checkpatch.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-08-08 11:52:54 +03:00
Chaitanya Tata
f684b7749a logging: Fix thread safety for warn once
Use atomic variables to make it thread safe.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-08-08 11:52:54 +03:00
Chaitanya Tata
ccfcb66b4a net: Add ratelimited variants
Add the ratelimtied variants for data path debug.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-08-08 11:52:54 +03:00
Chaitanya Tata
f3511602c0 logging: Add ratelimited variants
These are helpful for logging in data-path, not to overwhelm the
console but still keep the user informed about the issues.

This is similar to printk_ratelimited in Linux kernel.

Add only basic build tests for now.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-08-08 11:52:54 +03:00
Arunprasath P
8d44550d4c boards: microchip: add SAM E54 Xplained Pro board support
Add initial support for the Microchip SAM E54 Xplained Pro board
(ATSAME54-XPRO).

Product page: https://www.microchip.com/en-us/development-tool/atsame54-xpro

Signed-off-by: Arunprasath P <arunprasath.p@microchip.com>
2025-08-08 11:52:35 +03:00
Sunil Abraham
fe830c5c16 drivers: uart: microchip: add minimal support for sercom uart g1 IPs
Add uart driver with minimal features.
Implement polling receive and transmit functionality.

Signed-off-by: Sunil Abraham <sunil.abraham@microchip.com>
2025-08-08 11:52:35 +03:00
Sunil Abraham
1a6b829475 dts: arm: microchip: add uart dts node and bindings for sercom g1 IPs
Add uart dts nodes and minimal set of binding parameters
for sercom uart driver.

Signed-off-by: Sunil Abraham <sunil.abraham@microchip.com>
2025-08-08 11:52:35 +03:00
Mohamed Azhar
715adcc999 drivers: pinctrl: microchip: add pinctrl driver for Port G1 IP
Add pinctrl driver for Microchip Port G1 Peripheral IPs

Signed-off-by: Mohamed Azhar <mohamed.azhar@microchip.com>
2025-08-08 11:52:35 +03:00
Mohamed Azhar
a803182169 dts: arm: microchip: add pinctrl dts node and bindings for Port G1 IP
Add pinctrl dts node and binding parameters for Microchip
Pinctrl Port G1 IP

Signed-off-by: Mohamed Azhar <mohamed.azhar@microchip.com>
2025-08-08 11:52:35 +03:00
Sunil Abraham
4acc520c65 drivers: clock_control: microchip: clock support for SAM D5x/E5x
Add clock control driver with minimal functionality.
Implement basic on, off, get_status and get_rate API.

Signed-off-by: Sunil Abraham <sunil.abraham@microchip.com>
2025-08-08 11:52:35 +03:00
Sunil Abraham
5e9895153c dts: arm: microchip: add clock dts node and bindings for SAM D5x/E5x
Add clock dts node and minimal set of binding parameters
for clock_control driver.

Signed-off-by: Sunil Abraham <sunil.abraham@microchip.com>
2025-08-08 11:52:35 +03:00
Arunprasath P
a3368aa41e soc: microchip: add support for SAM D5x/E5x SoC series
Adds initial SoC-level support for the Microchip SAM D5x
and E5x series, including SoC definition files.

Signed-off-by: Arunprasath P <arunprasath.p@microchip.com>
2025-08-08 11:52:35 +03:00
Arunprasath P
af239ac582 dts: arm: microchip: add dtsi files for Microchip SAM D5x/E5x SoC series
Adds common and SoC-specific .dtsi files for the Microchip
SAM D5x/E5x family. These files define core peripherals,
address maps, and interrupt controller structure shared
across the SAM D5x/E5x variants.

Signed-off-by: Arunprasath P <arunprasath.p@microchip.com>
2025-08-08 11:52:35 +03:00
Arunprasath P
947769517a west.yml: Update west.yml for SAM_D5X_E5X dfp
Update west.yml for SAM_D5X_E5X Device family pack

Signed-off-by: Arunprasath P <arunprasath.p@microchip.com>
2025-08-08 11:52:35 +03:00
Khoa Nguyen
4214373363 tests: drivers: spi: Update buffer size for ek_ra4m1
Update buffer size for Renesas ek_ra4m1 to not overflow RAM

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-08-08 11:52:13 +03:00
Khoa Nguyen
0c989f792f boards: arduino: Update OFS label for portenta_c33 board
Update ofs label to disable all the OFS node on portenta_c33 board

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-08-08 11:52:13 +03:00
Khoa Nguyen
5dcd9926a9 dts: arm: renesas: ra: Update the OFS defination for FSP migration
Update OFS defination to align with FSP 6.0.0

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-08-08 11:52:13 +03:00
Khoa Nguyen
46853e89c2 soc: renesas: ra: Remove .code_in_ram section for Renesas RA SoC
Since the `.code_in_ram` section is not being used,
we would like to remove it.

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-08-08 11:52:13 +03:00
Khoa Nguyen
836e55f724 drivers: ethernet: Update the variable type for R_ETHER_CallbackSet
- Update the variable type for R_ETHER_CallbackSet in
eth_renesas_ra.c
- Update HAL callback event handler to be compatible with FSP 6.0.0

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
Signed-off-by: Ta Minh Nhat <nhat-minh.ta.yn@bp.renesas.com>
2025-08-08 11:52:13 +03:00
Khoa Nguyen
f9918ad203 drivers: mdio: Update the change from migrating FSP 6.0.0
Midify to use ``p_phy_lsi_cfg_list`` in ``ether_phy_cfg.p_extend``
instead of using ``phy_lsi_type`` and ``phy_lsi_address``
in ``ether_phy_cfg``. Update for mdio_renesas_ra

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-08-08 11:52:13 +03:00
Khoa Nguyen
8b768cec4a drivers: flash: Update modification of macro define for RA OSPI
Update modification of macro define for Renesas RA OSPI

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-08-08 11:52:13 +03:00
Khoa Nguyen
168ca66c77 drivers: mipi_dsi: Update the modification of FSP migration
Update modification of FSP 6.0.0 for dsi_renesas_ra

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-08-08 11:52:13 +03:00
Khoa Nguyen
3aa72e4e9e drivers: Update p_context for all Renesas drivers
The p_context no longer has the const type, so all
Renesas-supported drivers need to be updated accordingly.

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-08-08 11:52:13 +03:00
Khoa Nguyen
48174229aa manifest: Update migrate FSP 6.0.0 revision for hal_renesas
Update migrate FSP 6.0.0 revision for hal_renesas

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-08-08 11:52:13 +03:00
Tyler Joseph Huffman
e57dd8e12d Bluetooth: Controller: Adds path loss monitoring functionality
This functionality is implemented in the HCI-facing side of the
controller and the ULL. LLL functionality is not implemented in this
commit.

Furthermore, this removes a dependency for LE Power Control, as the
features are related, but not necessarily required.

Signed-off-by: Tyler Joseph Huffman <tyhu@demant.com>
2025-08-08 11:52:03 +03:00
Mohamed Moawad
4c8a69df1a tests: lib: cobs: Fix test setup failure with minimal libc
Set CONFIG_COMMON_LIBC_MALLOC_ARENA_SIZE=256 for COBS tests to ensure
malloc() succeeds during test fixture allocation in cobs_test_setup().

When using minimal libc, CONFIG_COMMON_LIBC_MALLOC_ARENA_SIZE defaults
to 0, causing malloc() to fail and the zassume_not_null(fixture)
assertion to trigger test setup failure.

Fixes test execution with minimal libc configurations.

Signed-off-by: Mohamed Moawad <moawad@synopsys.com>
2025-08-07 20:57:32 -04:00
Thomas Stranger
eb0818a126 docs: update cmsis rtos and cmake cache link
- CMSIS RTOS v1: link to the dedicated page in arm-software cmsis 5 docs
  - the old link was forwarded to the overview page of CMSIS v6
- CMSIS RTOS v2: link to the dedicated page in arm-software cmsis 6 docs
  - the old link was forwarded to the overview page of CMSIS v6

- CMake Cache: link to the mastering cmake - cmake cache section
  - the old link was forwarded to the generic https://cmake.org/resources/

Signed-off-by: Thomas Stranger <thomas.stranger@outlook.com>
2025-08-07 20:57:02 -04:00
Bjarki Arge Andreasen
0c853738e5 tests: drivers: spi_loopback: nrf54h20/cpurad add missing pm runtime
Add missing zephyr,pm-device-runtime-auto; property to spi130 of
nrf54h20/cpurad required for device pm runtime to work.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-08-07 20:56:39 -04:00
Robert Robinson
fa7e02d290 drivers: clock_control: nordic: Enable calibration from LFRC peripheral
For some nordic devices the LFRC peripheral is used to calibrate
the LFCLK clock instead of NRFX_CLOCK peripheral. This commit
adds support for the changes already made in nrfx drivers.

Signed-off-by: Robert Robinson <robert.robinson@nordicsemi.no>
2025-08-07 20:56:19 -04:00
Emilio Benavente
8d08da892c dts: arm: nxp: rt11xx: Updated ADC indexing
Updated the LPADC instance numbers in the
device tree to line up with the indexing
done in the RM.

Signed-off-by: Emilio Benavente <emilio.benavente@nxp.com>
2025-08-07 20:56:01 -04:00
Bastien Beauchamp
16298e9c21 tests: drivers: dac: add xg23 and xg24 boards to dac tests
Add board overlays and defines to the test sources files to execute
the dac_api and dac_loopback tests on xg23_rb4210a, xg24_dk2601b,
xg24_ek2703a and xg24_rb4187c.

Signed-off-by: Bastien Beauchamp <bastien.beauchamp@silabs.com>
2025-08-07 20:55:50 -04:00
Bastien Beauchamp
c65a98d8a5 boards: silabs: update board support for DAC driver
The xg24_dk2601b, xg24_ek2703a, xg23_rb4210a and
xg24_rb4187c board yaml files were updated
to support the DAC driver.

Signed-off-by: Bastien Beauchamp <bastien.beauchamp@silabs.com>
2025-08-07 20:55:50 -04:00
Bastien Beauchamp
576fdee126 boards: silabs: enable VDAC nodes for xg2x boards
Set status to okay for VDAC nodes for xg23 and xg24 boards.

Signed-off-by: Bastien Beauchamp <bastien.beauchamp@silabs.com>
2025-08-07 20:55:50 -04:00
Bastien Beauchamp
b725bd2096 dts: arm: silabs: instantiate VDAC nodes for xg2x parts
Defines a VDAC node for xg23 and xg24 parts, which are all
compatible with the silabs,vdac binding.

Signed-off-by: Bastien Beauchamp <bastien.beauchamp@silabs.com>
2025-08-07 20:55:50 -04:00
Bastien Beauchamp
9dbbe3b0da drivers: dac: implement the silabs_vdac compatible driver
This implements the DAC driver for silabs VDAC peripherals
using the silabs,vdac compatible binding.

Signed-off-by: Bastien Beauchamp <bastien.beauchamp@silabs.com>
2025-08-07 20:55:50 -04:00
Bastien Beauchamp
e138061ec4 dts: bindings: dac: define silabs,vdac bindings
Defines bindings that are compatible with Silabs VDAC.
Reference your part's design book when configuring
values for the properties.

Signed-off-by: Bastien Beauchamp <bastien.beauchamp@silabs.com>
2025-08-07 20:55:50 -04:00
Bastien Beauchamp
fee3511eec include: zephyr: dt-bindings: dac: silabs: generate VDAC
Generates bindings that define VDAC auxiliary output.
These bindings can be used in devicetree sources to configure
the aux-output property.

Signed-off-by: Bastien Beauchamp <bastien.beauchamp@silabs.com>
2025-08-07 20:55:50 -04:00
Bastien Beauchamp
c970b2f650 modules: hal_silabs: enable VDAC module in series 2 hal
This enables Silabs Series 2 HAL source files for the Silabs
VDAC module to be compiled when the SOC_SILABS_ACMP
configuration is selected.

Signed-off-by: Bastien Beauchamp <bastien.beauchamp@silabs.com>
2025-08-07 20:55:50 -04:00
Bastien Beauchamp
2b8d074724 include: zephyr: dt-bindings: clock: silabs: fix clock branch
Updated CLOCK_BRANCH bindings to stay in sync with the enum
sl_clock_branch_t in the Silicon Labs HAL.

Signed-off-by: Bastien Beauchamp <bastien.beauchamp@silabs.com>
2025-08-07 20:55:50 -04:00
Nikodem Kastelik
8285cc02f6 drivers: spi: nrfx_spis: fix buffer freeing on error
Bounce buffers should be freed rather than user buffers.

Signed-off-by: Nikodem Kastelik <nikodem.kastelik@nordicsemi.no>
2025-08-07 20:55:32 -04:00
Nikodem Kastelik
8423b908b8 tests: drivers: spi: controller_peripheral: add direct variant
Direct variant of this test disables intermediate buffer
in the nRF SPI driver and verifies whether devices like nRF54H20,
which can peform DMA transcations only from specific memory regions,
are handled properly.

Signed-off-by: Nikodem Kastelik <nikodem.kastelik@nordicsemi.no>
2025-08-07 20:55:32 -04:00
Nikodem Kastelik
304e19f958 drivers: spi: nrfx_spim: use dmm
Some nRF SoCs (i.e. nRF54H20) can peform DMA transfers
only from specific memory regions - `dmm` facilitates that.

Signed-off-by: Nikodem Kastelik <nikodem.kastelik@nordicsemi.no>
2025-08-07 20:55:32 -04:00
Van Petrosyan
422fdf46a9 samples: modem_cellular: add auto-APN detection and race-free DNS wait
This update makes the cellular-modem sample usable out-of-the-box on
SIMs that require different APNs, without rebuilding the firmware.

* Automatic APN selection
  * New Kconfig options
    * `CONFIG_SAMPLE_CELLULAR_MODEM_AUTO_APN` - enable logic
    * `CONFIG_SAMPLE_CELLULAR_APN_X` - APN for profile X
    * `CONFIG_SAMPLE_CELLULAR_IMSI_LIST_X` - IMSI list for profile X
  * The application now subscribes to the new
    `CELLULAR_EVENT_MODEM_INFO_CHANGED` event, waits for the IMSI, looks
    up the matching MCC+MNC and calls `cellular_set_apn()`.

* DNS-server detection
  * `NET_EVENT_DNS_SERVER_ADD` may fire together with
    `NET_EVENT_L4_CONNECTED`; the previous wait timed out.
  * Replaced the two consecutive waits with a single call that waits for
    both events (`DNS_SERVER_ADD | L4_CONNECTED`) in any order.

Signed-off-by: Van Petrosyan <van.petrosyan@sensirion.com>
2025-08-07 20:55:14 -04:00
Van Petrosyan
17b57957b1 drivers: modem_cellular: make APN configurable at run-time
* Implement the new cellular_set_apn() driver hook.
  The API validates the string, stores it in the driver’s
  private data and raises an internal event so the state
  machine can resume.

* Insert MODEM_CELLULAR_STATE_WAIT_FOR_APN between DLCI2 open
  and the APN-script step.
  – If CONFIG_MODEM_CELLULAR_APN is defined and non-empty the
    driver skips WAIT_FOR_APN (behaves exactly as before).
  – Otherwise the driver parks in WAIT_FOR_APN until the
    application calls cellular_set_apn().

* Add event-callback support (CELLULAR_EVENT_MODEM_INFO_CHANGED)
  so an app can subscribe to IMSI availability and kick its own
  APN selection logic.

Signed-off-by: Van Petrosyan <van.petrosyan@sensirion.com>
2025-08-07 20:55:14 -04:00
Van Petrosyan
0a444c61e0 drivers: cellular: add event notification API
Introduces cellular_set_callback() and the first event
CELLULAR_EVENT_MODEM_INFO_CHANGED.  Drivers call the registered
callback whenever any modem-info field is updated.

Signed-off-by: Van Petrosyan <van.petrosyan@sensirion.com>
2025-08-07 20:55:14 -04:00
Van Petrosyan
26492d89ff drivers: cellular: introduce cellular_set_apn() API
Add a driver-level hook that lets applications provide (or override)
the APN string at run-time instead of hard-coding it in individual
drivers.

Signed-off-by: Van Petrosyan <van.petrosyan@sensirion.com>
2025-08-07 20:55:14 -04:00
Guilherme Costa
da5eef665a drivers: modem: deprecate MODEM_QUECTEL_BG9X
The modem_cellular implementation should suffice to handle the base
usage of generic BG9x family devices, so deprecate the quectel-bg9x.c
implementation.

Signed-off-by: Guilherme Costa <guilhermecosta@stratioautomotive.com>
2025-08-07 20:54:45 -04:00
Guilherme Costa
5bd812de46 drivers: modem: Add support for Quectel BG96
Added support for compatible 'quectel,bg96' in modem_cellular.c

Renamed BG95-specific variables to BG9x, since the initialization
for BG95 and BG9x is similar.

Signed-off-by: Guilherme Costa <guilhermecosta@stratioautomotive.com>
2025-08-07 20:54:45 -04:00
Guilherme Costa
6fd5518f48 dts: bindings: Add 'quectel,bg96'
Add a compatible for Quectel BG96 to be used in the modem_cellular
subsystem.

Signed-off-by: Guilherme Costa <guilhermecosta@stratioautomotive.com>
2025-08-07 20:54:45 -04:00
Emilio Benavente
1d666872e1 tests: drivers: pwm: Add MCXWX flexio-pwm testing
Enabled testing for the flexio pwm on MCXW7X Platforms.

Signed-off-by: Emilio Benavente <emilio.benavente@nxp.com>
2025-08-07 20:54:15 -04:00
Emilio Benavente
93185f3655 dts: arm: nxp: Added flexio pwm to dts
Updated the nxp_mcxw7x dts to include a
flexio_pwm node.

Signed-off-by: Emilio Benavente <emilio.benavente@nxp.com>
2025-08-07 20:54:15 -04:00
Emilio Benavente
8467f557f9 drviers: pwm: Update flexio pwm update duty cycle
Updated the nxp flexio pwm driver to account
for when the duty cycle is 100% or 0%.
We switch off the counter of the flexio and
manually set the GPIO High or Low. Otherwise
Flexio Peripheral with default to a 50% duty
cycle behavior.
Factored out timerOutput variable.

Signed-off-by: Emilio Benavente <emilio.benavente@nxp.com>
2025-08-07 20:54:15 -04:00
Alberto Escolar Piedras
dece77924f net: ocpp: Fix multiple issues detected by clang
Fix multiple warnings detected by clang:
* implicit conversions back and forth from enumeration type
  'enum ocpp_notify_reason' to 'enum ocpp_pdu_msg'
  in ocpp_internal_handler()
* label followed by a declarations
* variable declared after one switch case and used in another
* mapping a int to uint and later using it in < 0 comparisons
  and with negative values

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-08-07 16:20:41 +02:00
Johann Fischer
1747bd7f14 samples: openthread: uset new USB device stack in coprocessor sample
Use CDC ACM serial backend from the new USB device stack.
It was surprising to find out that the porting layer does not only use
the UART API. The legacy USB device stack API used in the porting layer
has been deprecated and is causing CI failures.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-08-07 15:46:37 +02:00
Łukasz Stępnicki
a5c0ba853b drivers: clock control: ironside dvfs hsfll
Extended clock control driver to support new DVFS service
from IronSide secure domain. Added new compatible nrf-iron-hsfll-local
which can be used to enable new DVFS service support in local
domain.

Signed-off-by: Łukasz Stępnicki <lukasz.stepnicki@nordicsemi.no>
2025-08-07 08:58:54 -04:00
Håvard Reierstad
3c6fe5c519 MAINTAINERS: Add HaavardRei and PavelVPV
Adds HaavardRei and PavelVPV as collaborators for BLE Host and HCI.
Both are working actively on the Zephyr BLE Host.

Signed-off-by: Håvard Reierstad <haavard.reierstad@nordicsemi.no>
2025-08-07 08:58:24 -04:00
S Mohamed Fiaz
dd83b64524 tests: gpio: boards: add overlay for GPIO test driver
Added the xg29_rb4412a.overlay for GPIO API 1-pin
This overlay sets the configuration
needed to validate the GPIO driver on the
xg29_rb4412a board during test execution.

Signed-off-by: S Mohamed Fiaz <fiaz.mohamed@silabs.com>
2025-08-07 08:58:14 -04:00
S Mohamed Fiaz
306c13e421 soc: silabs: series_s2: Kconfig updates for EFR series 2 devices
Updated Kconfig for EFR series 2 devices.

Signed-off-by: S Mohamed Fiaz <fiaz.mohamed@silabs.com>
2025-08-07 08:58:14 -04:00
S Mohamed Fiaz
bbd9631db6 drivers: gpio: silabs: gpio driver for EFR series 2 devices
Added the gpio driver for EFR series 2 devices.

The SILABS_SISDK_GPIO symbol is added to enable
support for the new GPIO driver.
The SOC_GECKO_GPIO symbol is retained for now to
maintain compatibility with existing drivers and
will be removed in a subsequent commit.

Signed-off-by: S Mohamed Fiaz <fiaz.mohamed@silabs.com>
2025-08-07 08:58:14 -04:00
Camille BAUD
a91b959dd4 tests: drivers: display: fix SSD1322 in build_all
This adds new SSD1322 parameters

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-08-07 13:16:06 +02:00
Camille BAUD
ce9e9f0a9d drivers: display: Add greyscale to SSD1322
This adds greyscale to SSD1322

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-08-07 13:16:06 +02:00
Camille BAUD
8608f09bf0 drivers: display: Various fixes and additions to ssd1322
Fixes possible init issue with unlock
Add many missing configuration settings

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-08-07 13:16:06 +02:00
Jaro Van Landschoot
1a23d459bc modbus: serial: Divide by zero check
Check if the baudrate is not 0 before dividing by it
to get the rtu_timeout.

Signed-off-by: Jaro Van Landschoot <jaro.vanlandschoot@basalte.be>
2025-08-07 13:15:55 +02:00
Bjarki Arge Andreasen
015643d1a5 soc: nordic: fix validate_base_addresses NRF_GPIOTE0 for radiocore
Map definition of NRF_GPIOTE0 to NRF_RADIOCORE_GPIOTE when MDK
defines NRF_RADIOCORE_GPIOTE instead of NRF_GPIOTE0

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-08-07 13:15:45 +02:00
Krzysztof Chruściński
dd0db9b2af tests: drivers: gpio: basic_api: Add nrf54h20/cpurad GPIOTE0 config
Add configuration for testing GPIOTE0 instance on nrf54h20/cpurad.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-08-07 13:15:45 +02:00
Krzysztof Chruściński
5f69f77e16 tests: drivers: gpio: basic_api: Improve test
Add return code checking for gpio_pin_interrupt_configure functions.
Add disabling pin interrupt at the end of the test to restore pin
state.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-08-07 13:15:45 +02:00
Krzysztof Chruściński
0d813fb1db drivers: gpio: nrfx: Add support for GPIOTE0 on cpurad
Add support for special GPIOTE0 instance on nrf54h20/cpurad.
This instance requires special handling because:
- there is no support for PORT event (level interrupts)
- TE channels are fixed to the pin

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-08-07 13:15:45 +02:00
Krzysztof Chruściński
69714478aa modules: hal_nordic: nrfx: Add GPIOTE config flag
Add NRFX_GPIOTE_VAR_FEATURE_SUPPORT feature flag to nrfx configuration.
It enables support for special GPIOTE0 instance in nrfx_gpiote driver.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-08-07 13:15:45 +02:00
Krzysztof Chruściński
71d5c0f224 dts: bindings: gpio: nrf-gpiote: Extend description
Add new feature flags to gpiote node.
Include pinctrl. Pins used by GPIOTE0 on nrf54h20/cpurad require CTRLSEL
configuration. Pins are listed using pinctrl and parsed by nrf-regtool
to prepare UICR configuration.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-08-07 13:15:45 +02:00
Krzysztof Chruściński
c72973a095 dts: vendor: nordic: nrf54h20: Add gpiote0 node
Add GPIOTE0 instance in radio peripherals.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-08-07 13:15:45 +02:00
Krzysztof Chruściński
bbb6d74cca modules: hal_nordic: Bump nrf-regtool to 9.2.0
Bump required version of nrf-regtool to 9.2.0.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-08-07 13:15:45 +02:00
Lucas Tamborrino
6379ef4a2c samples: mbox: Add support for ESP32C6
Add mbox sample support for ESP32C6 HP and LP Core

Signed-off-by: Lucas Tamborrino <lucas.tamborrino@espressif.com>
2025-08-07 13:15:36 +02:00
Lucas Tamborrino
02340eec77 drivers: mbox: espressif: add esp32c6 support
Add support for esp32c6 HP and LP Core

Signed-off-by: Lucas Tamborrino <lucas.tamborrino@espressif.com>
2025-08-07 13:15:36 +02:00
Lucas Tamborrino
6968e1252e drivers: intc: esp32: don't build for ESP32C6 LP Core
Espressif's interrupt controller drive should not build for
ESP32C6 LP Core since it's behavior is different.
Add proper condition for that.

Signed-off-by: Lucas Tamborrino <lucas.tamborrino@espressif.com>
2025-08-07 13:15:36 +02:00
Lucas Tamborrino
0049633a86 dt-bindings: Add LP Core interrupt source
Add LP Core interrupt source

Signed-off-by: Lucas Tamborrino <lucas.tamborrino@espressif.com>
2025-08-07 13:15:36 +02:00
Lucas Tamborrino
276f6da3d5 soc: esp32c6: Improve shared memory
Improve shared memory usage among HP and LP Core

Signed-off-by: Lucas Tamborrino <lucas.tamborrino@espressif.com>
2025-08-07 13:15:36 +02:00
Yusuke Omae
ddd41480a7 net: gptp: add missing stepsRemoved assignment
The stepsRemoved of portPriorityVector was
left unassigned when receiving Announce message.

Signed-off-by: Yusuke Omae <s1413091@gmail.com>
2025-08-07 13:15:28 +02:00
Yusuke Omae
877a31ab78 net: gptp: fix comparsion of stepsRemoved
The original implementation select the port
as best_port when stepsRemoved is equal to
the one of best_vector.
When challenger is from announce message
set in GPTP_PA_INFO_SUPERIOR_MASTER_PORT,
its stepsRemoved is the same as in the message.
When challenger is from master_priority
copied in GPTP_PA_INFO_UPDATE,
its stepsRemoved is [stepsRemoved of bestVector]+1.
Thus, we should add one to the challenger's
stepsRemoved in comparsion to avoid useless
update of bestVector.

Signed-off-by: Yusuke Omae <s1413091@gmail.com>
2025-08-07 13:15:28 +02:00
Jiafei Pan
4a072384c9 boards: imx95_evk: add J-Link runner support for A55
J-Link runner could be used to flash and debug.
Updated board document to add J-Link runner support, and also update
spsdk runner command to specify the runner by using "-r" parameter.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-08-07 13:15:19 +02:00
Andrzej Puzdrowski
aa90ede92a boards/nordic/nrf54h20dk: added prototype s2ram_context section
Added DTS node which describes section for PM S2RAM context location

Signed-off-by: Andrzej Puzdrowski <andrzej.puzdrowski@nordicsemi.no>
2025-08-07 13:15:08 +02:00
Andrzej Puzdrowski
20695ed091 arch/arm/core/cortex_m: optional memory section for _cp_context
More complex suspend and resume scheme might require exactly defined
location of this variable due to platform peculiar SW and HW requirement.

DTS zephyr,memory-region node with nodelabel `pm_s2ram` shall be used to
automatic definition of linker section for such objective.

Signed-off-by: Andrzej Puzdrowski <andrzej.puzdrowski@nordicsemi.no>
2025-08-07 13:15:08 +02:00
Sylvio Alves
3d0192df75 runner: esp32: remove unused entries
Both partition_table and bootloader entries are not necessary for esp32
runner.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2025-08-07 13:14:40 +02:00
Kapil Bhatt
9fad784fb9 drivers: nrf_wifi: Add check for minimum RX buffer size
Add check for the RX data buffer size. It should be atleast 400 bytes,
anthing less than that scan fails.

Signed-off-by: Kapil Bhatt <kapil.bhatt@nordicsemi.no>
2025-08-07 13:14:28 +02:00
Pieter De Gendt
b6a7815d04 drivers: rtc: Sort CMake and Kconfig entries
Tidy the list of RTC implementations by sorting them alphabetically.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-08-07 13:14:21 +02:00
Johann Fischer
f63a2b70aa tests: bluetooth: shell: remove test bluetooth.shell.cdc_acm
The default integration platform for all test cases is native_sim, but
there has never been a USB device controller available for native_sim
platform. Since legacy device support has been deprecated and all tests
and samples now use the usbd test feature tag, this test cannot be
performed on native_sim.

Remove bluetooth.shell.cdc_acm to resolve CI failures.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-08-07 13:14:08 +02:00
Johann Fischer
da16c8edbd samples: http_server: include USB samples header conditionally
Only include USB samples header when using USB device stack.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-08-07 13:13:56 +02:00
Ofir Shemesh
169b47ce38 misc: flexram: allow RAM type node to be disabled in DT
Use DT_NODE_HAS_COMPAT_STATUS to skip disabled child nodes. This
avoids build errors when setting a RAM type to 0 banks.

Signed-off-by: Ofir Shemesh <ofirshemesh777@gmail.com>
2025-08-06 21:36:57 -04:00
Pete Johanson
530d89d56b boards: adi: Corrected ram metadata based on chosen RAM bank.
Correct the boad YAML files for the ADI boards, using the correct RAM size
based on the selected RAM bank, not the total RAM present on the given SoC.

Signed-off-by: Pete Johanson <pete.johanson@analog.com>
2025-08-06 21:36:32 -04:00
Daniel DeGrasse
6e3a8da8dc drivers: mspi: mspi_dw: support configuration of TXD_DRIVE_EDGE setting
TXD_DRIVE_EDGE setting will typically be set to BAUDR/4 for DDR mode,
but this may not cover all cases. Add a configurable multiplier and
divisor to apply to the BAUDR value so the value's relation to BAUDR can
be customized.

Signed-off-by: Daniel DeGrasse <ddegrasse@tenstorrent.com>
2025-08-06 21:36:09 -04:00
Tim Lin
f4e466eb60 drivers/espi: ite: Make ITE's eSPI driver to support PVT2 and PVT3
Make ITE's eSPI driver to support PVT2 and PVT3, but it is not
enabled by default.

Signed-off-by: Tim Lin <tim2.lin@ite.corp-partner.google.com>
2025-08-06 21:35:24 -04:00
Tim Lin
fff5d4c46e drivers/espi: Add support for ESPI_PERIPHERAL_HOST_IO_PVT2 & PVT3
Add support the host I/O over eSPI peripheral channel for private
channel2 and channel3.

The default port number of ESPI_PERIPHERAL_HOST_IO_PVT2_PORT_NUM and
ESPI_PERIPHERAL_HOST_IO_PVT3_PORT_NUM are 0x68 and 0x70.

Signed-off-by: Tim Lin <tim2.lin@ite.corp-partner.google.com>
2025-08-06 21:35:24 -04:00
Anas Nashif
1557a29ee0 manifest: optional: sync with SOF upstream
Sync with latest SOF  upstream.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-08-06 21:34:51 -04:00
Bas van Loon
1dcf123e2d fs/ext2: Fix NULL dereference when fs_stat queries root.
When fs_stat() queries the root / mountpoint it should return its root
i_node but instead it tries to return the parent i_node which does not
exist. Fix this by checking if parent is set otherwise return the root
i_node.

Fixes https://github.com/zephyrproject-rtos/zephyr/issues/94000.

Signed-off-by: Bas van Loon <bas@arch-embedded.com>
2025-08-06 21:34:29 -04:00
James Smith
850050b1b6 boards: silabs: Add board image for xg22_ek2710a
Add a board image to the docs of the xg22_ek2710a

Signed-off-by: James Smith <james@loopj.com>
2025-08-06 21:34:11 -04:00
James Smith
69d134f5af boards: silabs: Add support for xg22_ek2710a board
Adds support for the xg22_ek2710a (EFR32xG22E Explorer Kit) board.

Signed-off-by: James Smith <james@loopj.com>
2025-08-06 21:34:11 -04:00
James Smith
ca8d909464 soc: silabs: Add support for additional BG22 SoCs
Adds all known EFR32BG22 SoCs and associated DTS includes.

Signed-off-by: James Smith <james@loopj.com>
2025-08-06 21:34:11 -04:00
James Smith
70b3e7a178 drivers: entropy: add support for EFR32MG22 SoCs
Use CRYPTO_ACC_GECKO_TRNG for entropy on all xG22 SoCs.

Signed-off-by: James Smith <james@loopj.com>
2025-08-06 21:34:11 -04:00
James Smith
9b32f02a0d soc: silabs: Add support for MG22 SoCs
Adds SoC definitions and DTS files for SiLabs EFR32MG22 SoCs

Signed-off-by: James Smith <james@loopj.com>
2025-08-06 21:34:11 -04:00
Dmytro Firsov
93620efc8d MAINTAINERS: add Xen Domain-0 snippet to Xen Platform
The snippet for Zephyr as Xen Domain-0 was missing in the
Xen Platform section of MAINTAINERS.yml.

Add the missing entry to ensure that future pull requests
for this component are correctly tracked and assigned.

Signed-off-by: Dmytro Firsov <dmytro_firsov@epam.com>
2025-08-06 12:04:25 -04:00
Henrik Brix Andersen
f567c22f37 scripts: west: commands: completion: bash: add --domain completion
Add completion support for "west build --domain" under the Bash shell.

Signed-off-by: Henrik Brix Andersen <hebad@vestas.com>
2025-08-06 12:04:10 -04:00
Arunmani Alagarsamy
a9dd0c932d drivers: wifi: siwx91x: Support max TX power configuration via Device Tree
Add support for configuring the maximum TX power for STA and AP modes using
a Device Tree property (`max-tx-power`). If unspecified, the default value
is set to 31 dBm.

Signed-off-by: Arunmani Alagarsamy <arunmani.a@silabs.com>
2025-08-06 12:03:39 -04:00
Tahsin Mutlugun
814a9e6868 dts: adi: Add wut nodes to MAX32 SoCs that have wake-up timers
Add WUT support to MAX32655, MAX32666, MAX32680, MAX32690 and MAX78002
SoCs.

Signed-off-by: Tahsin Mutlugun <Tahsin.Mutlugun@analog.com>
2025-08-06 12:03:12 -04:00
Tahsin Mutlugun
a5ea4c2dc0 drivers: counter: max32_wut: Add missing include
Include adi_max32_clock.h to resolve undeclared ADI_MAX32_PRPH_CLK_SRC_*
errors.

Signed-off-by: Tahsin Mutlugun <Tahsin.Mutlugun@analog.com>
2025-08-06 12:03:12 -04:00
Tomasz Moń
66b938f93a drivers: udc_dwc2: Add nRF54LM20A vendor quirks
Initial implementation of nRF54L quirks necessary for nRF54LM20A.

Signed-off-by: Tomasz Moń <tomasz.mon@nordicsemi.no>
Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-08-06 12:01:34 -04:00
Jamie McCrae
9759ca6785 west.yml: MCUboot synchronization from upstream
Update Zephyr fork of MCUboot to revision:
  4e108f702b5322fb59344ae4976e3d73c973ef12

Brings following Zephyr relevant fixes:

  - 4e108f70 boot: zephyr: adjust sample.yaml to pass USB
    deprecation process
  - 29690581 boot: zephyr: boards: update name of nrf54h20dk
  - cb92ebeb boot: zephyr: boards: nrf52: Fix minimal config
  - 1d7fe64b boot: zephyr: boards: nrf54l15dk: Remove invalid
    Kconfigs
  - c033b71b boot: zephyr: Remove reference to old Kconfigs
  - 268968f8 zephyr: Add support for AES256
  - a5c48f3c imgtool: Allow for AES256 encryption
  - fc8477e5 boot: bootutil: image_validate: Add error on security
    counter fail
  - d5f84b49 zephyr: Add support for slot selection boot hook
  - 7c4ec9ab loader: Add boot hook for slot selection
  - 94d85f91 imgtool: Fix x25519 TLV HMAC tag
  - 32db7886 bootutil: Fix X25519 HMAC-SHA512
  - 2bc36d0f bootutil: Expose hardware security counter
  - b475adf7 zephyr: Add CONFIG_BOOT_BYPASS_KEY_MATCH
  - 6d943d68 bootutil: Support for MCUBOOT_BYPASS_KEY_MATCH
  - e2e372f2 boot: Add config for dongle bare variant
  - dce784a2 loader: Allow to specify slot number in version
  - 5ee96f5b zephyr: Enable building ECDSA PSA variant

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-08-06 11:57:39 -04:00
Johann Fischer
efaaad0a09 usb: mark new stack as unstable and set it as the default
Document that the legacy stack is now deprecated.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-08-06 11:57:39 -04:00
Johann Fischer
4af7549d72 usb: deprecate legacy USB device support
Deprecate legacy USB device support.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-08-06 11:57:39 -04:00
Johann Fischer
31303f7350 samples: usb: update USB samples root documentation
Add note about legacy samples and update USB samples root documentation.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-08-06 11:57:39 -04:00
Johann Fischer
e1613ee139 tests: mcuboot_recovery_retention: use UARTE1 for device management
The test requires two UARTs: one for console output and one for device
management. Use UART1 for device management instead of CDC ACM because
the legacy stack is deprecated and it will take some time for MCUboot to
adapt.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-08-06 11:57:39 -04:00
Johann Fischer
1c0a4ca645 scripts: ci: check_compliance.py: add BOOT_SERIAL_UART to ALLOWLIST
Add Kconfig option BOOT_SERIAL_UART, defined in the MCUboot module but
needed to be used in tests, to the UNDEF_KCONFIG_ALLOWLIST.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-08-06 11:57:39 -04:00
Johann Fischer
49a48a4478 tests: uart_basic_api: use new USB device stack
Use new USB device stack.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-08-06 11:57:39 -04:00
Johann Fischer
891e700ce8 tests: bluetooth: use new USB device stack
Use new USB device stack.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-08-06 11:57:39 -04:00
Johann Fischer
a89977a216 samples: shell_module: use new USB device stack
Use new USB device stack.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-08-06 11:57:39 -04:00
Johann Fischer
3ffd1675eb samples: http_server: use new USB device stack
Remove netusb code, use new USB device stack and CDC NCM implementation.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-08-06 11:57:39 -04:00
Johann Fischer
cdc89fa3b7 samples: echo_server: use new USB device stack
Remove netusb code and use new USB device stack.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-08-06 11:57:39 -04:00
Johann Fischer
0dbd99c26a samples: smp_svr: use new USB device stack
Use new USB device stack.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-08-06 11:57:39 -04:00
Johann Fischer
eb8f5666a6 samples: wpan_serial: use new USB device stack
Use new USB device stack.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-08-06 11:57:39 -04:00
Johann Fischer
670df85752 samples: sensortile_box: use new USB device stack
Use new USB device stack.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-08-06 11:57:39 -04:00
Johann Fischer
e2b01357c4 samples: hci_uart: use new USB device stack
The change only affects board nrf52840dongle_nrf52840.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-08-06 11:57:39 -04:00
Johann Fischer
3f39e1c612 samples: modbus: use new USB device stack
Use new USB device stack.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-08-06 11:57:39 -04:00
Johann Fischer
c2d00d51eb sample: net: remove legacy USB code from the zperf sample
Remove legacy netusb code.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-08-06 11:57:39 -04:00
Johann Fischer
5edefa3d73 samples: usb: add a sample that covers legacy netusb
Add a sample that covers legacy CDC EEM/ECM and RNDIS functions.
Network functionality is limited to ICMP.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-08-06 11:57:39 -04:00
Johann Fischer
84d31614c9 samples: usb: move the legacy code out of the HIC USB sample
Move the legacy code from HCI USB sample to a separate sample in the
legacy directory.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-08-06 11:57:39 -04:00
Johann Fischer
375e8e6ccb samples: usb: move the legacy code out of the USB MSC sample
Move the legacy code from the USB MSC sample to a separate sample in the
legacy directory. Make legacy sample very simple and drop all filesystem
dependencies.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-08-06 11:57:39 -04:00
Johann Fischer
1e50aaa6e0 samples: usb: move the legacy code out of the HID mouse sample
Move the legacy code from the HID mouse sample to a separate sample in
the legacy directory.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-08-06 11:57:39 -04:00
Johann Fischer
a7b0f71925 samples: usb: move the legacy code out of the CDC ACM sample
Move the legacy code of the CDC ACM sample to a separate sample in the
legacy directory.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-08-06 11:57:39 -04:00
Johann Fischer
a466cd8026 samples: usb: make console-next sample default
Move legacy console sample to legacy directory and make console-next
sample default.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-08-06 11:57:39 -04:00
Johann Fischer
089482ee0f samples: usb: make WebUSB next sample default
Move legacy WebUSB sample to legacy directory and make WebUSB next
sample default.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-08-06 11:57:39 -04:00
Johann Fischer
a53b49fd31 samples: usb: make USB DFU next sample default
Move legacy USB DFU sample to legacy directory and make USB DFU next
sample default.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-08-06 11:57:39 -04:00
Johann Fischer
eb50aec6f5 sample: usb: move Audio 1.0 samples to legacy
Move Audio 1.0 headphones-microphone and headset samples that
demonstrate only legacy device stack functionality to the legacy
directory.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-08-06 11:57:39 -04:00
Johann Fischer
57cc2868de board: remove CDC ACM serial backend legacy Kconfig defconfig
The driver for the last board, sam4l_wm400_cape, that uses the legacy
device stack was not ported in time, remove CDC ACM serial backend
configuration from this board.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-08-06 11:57:39 -04:00
Johann Fischer
b03b65a9b5 boards/snippets: use new USB device stack for CDC ACM serial
Use new USB device stack (next) for CDC ACM serial backend. Keep the
legacy configuration for the boards whose drivers are not ported.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-08-06 11:57:39 -04:00
Saravanan Sekar
4cd4839122 MAINTAINERS: Add Open Charge Point Protocol (OCPP) lib
add code owner for OCPP native stack

Signed-off-by: Saravanan Sekar <saravanan@linumiz.com>
2025-08-06 11:57:13 -04:00
Saravanan Sekar
fcefe855b0 samples: net: ocpp: Charge Point test sample
A test sample for ocpp charge point with 2 connectors, central
system steve server is used with test setup (public available)

Signed-off-by: Saravanan Sekar <saravanan@linumiz.com>
2025-08-06 11:57:13 -04:00
Saravanan Sekar
d466ee679b tests: net: ocpp: Add test suit for OCPP lib
Add test suit for OCPP lib with one complete charging session
with a random meter values.

Signed-off-by: Saravanan Sekar <saravanan@linumiz.com>
2025-08-06 11:57:13 -04:00
Saravanan Sekar
50e989a6d0 doc: ocpp: Describe Open Charge Point Protocol (OCPP) support
Describe OCPP Charge Point (CP) support and illustrate how to implement
CP sample.

Signed-off-by: Saravanan Sekar <saravanan@linumiz.com>
2025-08-06 11:57:13 -04:00
Saravanan Sekar
1a4f092348 net: ocpp: Add a support for Open Charge Point Protocol(OCPP v1.6) stack
Basic support for open charge point protocol v1.6 as native stack with
below functionality

1. Framework for ocpp stack and central system communication using RPC over
   websocket according to occp-j.
2. Core profile with basic PDU

Signed-off-by: Saravanan Sekar <saravanan@linumiz.com>
Co-authored-by: Sanjay Vallimanalan <sanjay@linumiz.com>
2025-08-06 11:57:13 -04:00
Muzaffar Ahmed
ce6ef6ac95 drivers: wifi: siwx91x: Add support for link mode query
Mapped the link mode (wireless mode) from wireless info to the wifi
status API.

Signed-off-by: Muzaffar Ahmed <muzaffar.ahmed@silabs.com>
2025-08-06 16:20:14 +02:00
Bjarki Arge Andreasen
c326bf6bc7 drivers: counter: counter_nrfx_timer: fix fast instance clock ctrl
Update handling of fast instances to take into account whether
CONFIG_CLOCK_CONTROL is enabled or not.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-08-06 17:13:11 +03:00
Gaetan Perrot
13a6dc5391 drivers: wifi: nrf_wifi: add NULL check in parse_sband
Ensure event is not NULL before accessing its members in
nrf_wifi_parse_sband().

This adds a defensive check to avoid potential null dereference and ensures
the function returns early when event data is invalid (i.e., zero channels
or bitrates).

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2025-08-06 17:12:51 +03:00
Emil Gydesen
b0f1eb30fb Bluetooth: AICS: Remove bad check in handle_set_gain_op
AICS gain mode does not prevent local nor remote operations from changing
the gain setting value. The gain setting value shall simply be ignored if
in the BT_AICS_MODE_AUTO_ONLY or BT_AICS_MODE_AUTO modes, but the local
application and remote devices can still modify the gain setting value.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-08-06 17:12:27 +03:00
Robin Kastberg
fa165da667 iar: ltorg directive not supported
Currently this directive is not supported in EWARM 9.70.1,
it will be in future versions, but we want Zephyr 4.2
to work with IAR EWARM 9.70.1.

Signed-off-by: Robin Kastberg <robin.kastberg@iar.com>
2025-08-06 17:12:16 +03:00
Fabian Blatz
076994f492 modules: lvgl: Fix stdlib usage
LVGL already provides an implementation wrapping a C standard library into
its own lv_* functions. Add them to the CMakeLists and set the appropriate
defines for them.

Signed-off-by: Fabian Blatz <fabianblatz@gmail.com>
2025-08-06 17:12:00 +03:00
Jukka Rissanen
c3c7394ff3 tests: net: dns_resolve: Increase ztest stack size
The ztest stack size might be too small for the net.dns.resolve.hostname
tests that was added recently. Increase it to 1280 bytes.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-08-06 17:11:44 +03:00
Jamie McCrae
7fefc5b898 tests: boot: test_mcuboot: Fix test for new MCUboot mode
Fixes the test by switching what modes are used

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-08-06 17:11:33 +03:00
Jamie McCrae
c15a53fb8e modules: mcuboot: Default to swap using offset
Updates a missed Kconfig with this change

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-08-06 17:11:33 +03:00
Jamie McCrae
b759b987bb tests: boot: mcuboot_data_sharing: Fix test
Fixes issues with test after the change was made to using swap
using offset

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-08-06 17:11:33 +03:00
Kesavan Yogeswaran
9f59461036 cmake: Clarify comment for zephyr_generated_headers library
Clean up the comment around the zephyr_generated_headers CMake library
to make it more accurate, now that the library is an interface library
rather than a custom target.

This is a follow-up to non-blocking feedback from
https://github.com/zephyrproject-rtos/zephyr/pull/92927.

Signed-off-by: Kesavan Yogeswaran <hikes@google.com>
2025-08-06 17:11:21 +03:00
Sean Madigan
1b7b6af785 bluetooth: host: add frame space update support
This commit adds support for the frame space update feature
to the bluetooth host.

This is mainly just a wrapper around the frame space update
HCI command and event.

Signed-off-by: Sean Madigan <sean.madigan@nordicsemi.no>
2025-08-06 17:11:04 +03:00
Sean Madigan
9bbc906b30 bluetooth: host: Fix BT_LE_LOCAL_SUPPORTED_FEATURES_SIZE define
Fix BT_LE_LOCAL_SUPPORTED_FEATURES_SIZE define, as this was
not working correctly without brackets around
CONFIG_BT_LE_MAX_LOCAL_SUPPORTED_FEATURE_PAGE.

Also fix CONFIG_BT_LE_MAX_LOCAL_SUPPORTED_FEATURE_PAGE help,
as this was talking about remote featues, where this only
applies for local features.

Also update for new CONFIG_BT_CONN_DYNAMIC_CALLBACKS kconfig

Signed-off-by: Sean Madigan <sean.madigan@nordicsemi.no>
2025-08-06 17:11:04 +03:00
Tomasz Moń
382c0dea69 drivers: udc_dwc2: Periodic Transfer Interrupt support
Add Kconfig option to enable Periodic Transfer Interrupt mode for
isochronous endpoints. The tradeoff is reduced CPU usage in exchange for
not timing out isochronous transfers.

Signed-off-by: Tomasz Moń <tomasz.mon@nordicsemi.no>
2025-08-06 17:10:40 +03:00
Dominik Ermel
46051de5a7 modules: fatfs: Update FAT module version check
Update FFCONF_DEF check to match the new value in the module.

Signed-off-by: Dominik Ermel <dominik.ermel@nordicsemi.no>
2025-08-06 17:10:28 +03:00
Dominik Ermel
4d89cb8e22 manifest: Update ELM FAT FS module
Update to version 0.16.

Signed-off-by: Dominik Ermel <dominik.ermel@nordicsemi.no>
2025-08-06 17:10:28 +03:00
Keith Packard
4c2ac61a82 lib/libc: Provide optional check for time_t size
The LIBC_ALLOW_LESS_THAN_64BIT_TIME option disables a compile-time check
ensuring that time_t can hold 64-bit values. This check can prevent
accidental builds on targets with 32-bit time_t and the consequent 2038
issues.

This option is enabled when using the native C library as i386 glibc
uses 32-bit time_t.

A new file, validate_libc.c, is added to lib/libc to contain this and any
future libc tests. The check for CONFIG_EXTERNAL_LIBC is moved to
libc/CMakeLists.txt to ensure that this new file is always compiled.

Signed-off-by: Keith Packard <keithp@keithp.com>
2025-08-06 17:10:15 +03:00
Tim Lin
ff293bb61a drivers/flash: it51xxx: Add the M1K flash driver
The flash M1K driver supports read (up to 1K), write (1K), and
erase (4K) operations, which can be accessed via DLM.
Accessible flash regions include internal e-Flash or external SPI
flash via FSCE# or FSCE1#.

Signed-off-by: Tim Lin <tim2.lin@ite.corp-partner.google.com>
2025-08-06 17:09:46 +03:00
Tim Lin
6114e6a381 soc: ite: it51xxx: Prevent floating FSPI pins by enabling tri-state
To prevent FSPI pins from floating, which may cause internal leakage
and increase SoC power consumption, tri-state is enabled by default.

Signed-off-by: Tim Lin <tim2.lin@ite.corp-partner.google.com>
2025-08-06 17:09:46 +03:00
Johann Fischer
9d06111346 Revert "drivers: counter: sam_tc: Big fix for alarm 1"
This reverts commit 8f5daca5e5.
The CI is failing on sam4l_wm400_cape after this commit.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-08-06 17:09:26 +03:00
Robert Lubos
0f66e9c680 net: context: Don't assert on address family mismatch
Providing a wrong address to the connect() call by the application is no
reason to assert, connect() should just return an error in such case.
Therefore remove the faulty assert and replace it with error log
instead.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-08-06 12:16:42 +03:00
Yunshao Chiang
db02fdc8ef drivers: adc: it51xxx: fix the ADC channels sampling flow
The original code process causes the following two issues:

1. The first sample is always 0 because the `ctx` sequence in `data` is
   assigned the input sequence until the `adc_context_start_read`. As a
   result, the `while (channels) { ... }` loop is not executed, and
   `adc_enable_measurement` is not called.

2. Since the `ctx` sequence in `data` is assigned in
   `adc_context_start_read`, which occurs after the `while (channels) {
   ... }` loop, the ADC samples the previously set channel.

Signed-off-by: Yunshao Chiang <Yunshao.Chiang@ite.com.tw>
2025-08-06 12:16:30 +03:00
Ren Chen
7ac7a0e0bd soc: ite: it8xxx2: increase sspi_clk and fix clock divisor setting
This commit raises the sspi clock from 24MHz to 48MHz and
corrects the clock divisor setting for it82xx2 chips.

Signed-off-by: Ren Chen <Ren.Chen@ite.com.tw>
2025-08-06 12:16:19 +03:00
Ren Chen
4f413d85eb soc: ite: it8xxx2: disable sspi clock and automatic clock gating
This commits disables sspi clock and automatic clock gating.

Signed-off-by: Ren Chen <Ren.Chen@ite.com.tw>
2025-08-06 12:16:19 +03:00
Emil Gydesen
a74a524e3b tests: Bluetooth: Tester: Add missing target latency and PHY
The struct bt_audio_codec_cfg recently got new fields that
previously defaulted to
BT_AUDIO_CODEC_CFG_TARGET_LATENCY_BALANCED and
BT_AUDIO_CODEC_CFG_TARGET_PHY_2M but was not set by the BTP
commands.

For now we restore the previous functionality by setting the
values to the same as we did before, until the BTP commands
are changed (if they are changed).

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-08-06 12:16:07 +03:00
Fabio Baltieri
d9f2f70133 samples: ensure struct addrinfo is always zero initialized
There's few samples with a struct addrinfo on the stack that only
initialize some of the fields, feeding whatever is on the stack for the
rest to the getaddrinfo() code. Bumped into an issue where that
sometimes happens to set the bit of the (ai_flags & AI_NUMERICHOST),
making host resolution failing.

Add a couple of memset on the affected samples so this does not happen.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2025-08-06 12:15:49 +03:00
Fabio Baltieri
9fc2201502 samples: add a couple of missing freeaddrinfo
Add a freeaddrinfo() call on a couple samples using getaddrinfo(). Not
really relevant since these execute once and exit but good to have in
case someone copy paste that in a loop.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2025-08-06 12:15:49 +03:00
Fabio Baltieri
6ebc196008 net: sockets: getaddrinfo: use k_ variants for memory allocation
The rest of the network (and generally Zephyr subsystem code) use the k_
prefixed variants for memory allocation, which results in data goin in
the _system_heap rather than the stdlib z_malloc_heap.

The code in getaddrinfo use the z_ ones as well apart from the actual
getaddrinfo implementation, which seems like an oversight, change it to
use k_calloc and k_free as well.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2025-08-06 12:15:49 +03:00
Jisheng Zhang
13bdae0ad0 arch: arm: Add initial support for Cortex-M52 Core
Add initial support for the Cortex-M52 Core which is an implementation
of the Armv8.1-M mainline architecture.

The support is based on the Cortex-M55 support that already exists in
Zephyr.

Signed-off-by: Jisheng Zhang <jszhang@kernel.org>
2025-08-06 12:15:23 +03:00
Thomas Stranger
598eba4d7a doc: connectivity: networking: lwm2m: update links
Update a couple of lwm2m links

- LwM2M: update to the link the current forwards to
- OMA Specworks LwM2M: update to the link to the releases overview page
      was redirected to the LwM2m overview page.
- LwM2M registry: link to OMA registries, where LwM2M registries are listed
      was redirected to the OMA specifications page before.

Signed-off-by: Thomas Stranger <thomas.stranger@outlook.com>
2025-08-06 12:14:37 +03:00
Dmitrii Sharshakov
5eecc55398 drivers: ipm: esp32: properly handle send wait parameter
As clarified by the subsystem maintainers, wait should be treated as a
boolean, not a duration.

Signed-off-by: Dmitrii Sharshakov <d3dx12.xx@gmail.com>
2025-08-06 12:14:28 +03:00
Chris Friedt
8ff638c5e3 posix: disable clang-format where checkpatch disagrees
checkpatch and clang-format have conflicting formatting requirements for
this file for whatever reason.

Since it is not possible to selectively disable checkpatch, but it is
possible to selectively disable clang-format, disable clang-format
surrounding some macros in `posix_features.h` and `sys/sysconf.h` in order
to eliminate linter noise.

The code is still checked by checkpatch, which should be sufficient.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-08-06 12:14:15 +03:00
Chris Friedt
c9ab343da2 tests: posix: semaphores: use timespec_add() to add to abstime
Use `timespec_add()` to add to an absolute timespec. This is required
because the test was failing occasionally on some qemu platforms in CI
due to this assertion in `timespec_normalize()`, which could happen if
the number of fractional seconds was already close to `NSEC_PER_SEC`
before an offset was added.

```cpp
if (!overflow) {
	__ASSERT_NO_MSG(timespec_is_valid(ts));
}
```

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-08-06 12:14:03 +03:00
Chris Friedt
82460c8a1d posix: signals: use Kconfig options instead of _NSIG
Use CONFIG_POSIX_RTSIG_MAX instead of _NSIG, since RTSIG_MAX isn't always
going to be defined.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-08-06 12:13:53 +03:00
Chris Friedt
a6f2bb0c4c posix: do not rely on PAGE_SIZE being defined in limits.h
Since an implementation may omit definitions of runtime invariant values
in limits.h if the corresponding value is equal to or greater than the
minimum, is unspecified, and must be queried at runtime [1], do not rely
on PAGE_SIZE being declared in limits.h .

[1]
https://pubs.opengroup.org/onlinepubs/9799919799/basedefs/limits.h.html

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-08-06 12:13:42 +03:00
Ian Fyall
6e040484a9 MAINTANERS: Update Infineon Maintainers
Replace Infineon Maintanter ifyall with sreeramIfx.

Signed-off-by: Ian Fyall <ian.fyall@infineon.com>
2025-08-06 12:13:29 +03:00
Wai-Hong Tam
b4404b0340 input: it8xxx2_kbd: Respect kso_ignore_mask for all KSO pins
The kso_ignore_mask DTS property was not being fully applied in the
ITE IT8xxx2 keyboard driver:
 1. The driver performed direct writes to the KBS_KSOH2 register,
    which controls KSO[17:16]. This did not account for the
    kso_ignore_mask and could overwrite bits in the register that
    are used for other GPIO functions.
 2. The driver would attempt to initialize the GPIOs for KSO16 and
    KSO17 based solely on the col-size property. It ignored the
    kso_ignore_mask, which could lead to reconfiguring a pin that
    is intended for another purpose.

Signed-off-by: Wai-Hong Tam <waihong@google.com>
2025-08-06 12:13:16 +03:00
Daniel Baluta
21d2742ab9 soc: imx8m: adsp: Add NonCacheable linker section
There are some drivers like NXP SDMA that need a NonCacheable
data region to put data like channel control or buffer descriptors.

So far, we haven't added such a section because the linker created
one default orphan section at the end of the data section.

But this generates a warning in the build system:
xtensa-nxp_imx8m_adsp_zephyr-elf/bin/ld.bfd: warning: orphan section
NonCacheable' from modules/hal_nxp/libmodules__hal_nxp.a(fsl_sdma.c.obj)'
being placed in section `NonCacheable'

So fix this by explicitly define a NonCacheable area at the end of data
section.

This works because imx8mp cache attributes are
_memmap_cacheattr_imx8_wt_allvalid = 0x22212222
and the area where the NonCacheable section is allocated is
write-through.

So all the configuration for the SDMA core is not-cached at write.

Signed-off-by: Daniel Baluta <daniel.baluta@nxp.com>
2025-08-06 12:13:05 +03:00
Pieter De Gendt
8495e30726 drivers: display: elcdif: Fix zero-length array warning
When setting CONFIG_MCUX_ELCDIF_FB_NUM=0 we can't assign the active pointer
to any framebuffer.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-08-06 12:12:47 +03:00
James Smith
ba86c10145 modules: hal_silabs: Set multiprotocol define based on Kconfig
Set `SL_RAIL_LIB_MULTIPROTOCOL_SUPPORT` to `1` when Rail
Multiprotocol Kconfig is enabled.

This is required to run the Bluetooth multiprotocol initialization
code during `sl_btctrl_init`.

Signed-off-by: James Smith <james@loopj.com>
2025-08-06 12:12:35 +03:00
James Smith
92be5346a8 modules: silabs: Fix broken binary blobs path with Gecko SDK
Bugfix to correct broken binary blobs path when using the Gecko SDK.

Signed-off-by: James Smith <james@loopj.com>
2025-08-06 12:12:35 +03:00
James Smith
364274b32c modules: silabs: Link against RAIL Multiprotocol blobs when enabled
Enables RAIL Multiprotocol support by linking against the multiprotocol
RAIL library blob when `CONFIG_SILABS_GECKO_RAIL_MULTIPROTOCOL` or
`CONFIG_SILABS_SISDK_RAIL_MULTIPROTOCOL` are enabled.

Signed-off-by: James Smith <james@loopj.com>
2025-08-06 12:12:35 +03:00
James Smith
d6c12f9193 soc: silabs: Add Kconfig options to enable RAIL Multiprotocol support
Adds Kconfig options to enable RAIL Multiprotocol support

Signed-off-by: James Smith <james@loopj.com>
2025-08-06 12:12:35 +03:00
Declan Snyder
cc12a5ead6 tests: spi_loopback: Add delay props to RT series
RT series have LPSPI data input setup and hold requirements and CS lead/lag
requirements not being met on the current configuration for this
test, causing flaky data transfer on CPHA 0 and 2 tests.
Fix by adding delay properties.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-08-06 12:12:23 +03:00
Emil Gydesen
eef2aa88b3 Bluetooth: CTS: Fix issue with writing without subscription
The write_ct function calls bt_cts_send_notification and if
bt_cts_send_notification fails to send a notification (e.g.
if there are no clients subscribed), it would return an
error, and thus send a ATT error response to the client,
even if the value was actually written.

This commit changes the behavior so that the notification
does not affect the return value (as it is not directly
linked to the write itself), but rather just logs it if
it fails to send the notification.

The notification can failed to be send for 2 main reasons:
1) The application returns an error on fill_current_cts_time
2) bt_gatt_notify fails to notify due to missing buffers

The first we cannot do much about. For the latter we can
either just live with the missing notification, or implement
a retry if we run out of buffers. For this simple fix the
former was chosen, but can be revisited if it turns out
to be a significant problem.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-08-06 12:12:07 +03:00
Ioannis Karachalios
184b633ff9 tests: drivers: counter: Test failure when counter is running upwards
The "test_late_alarm_error" test vector comes with an update that
should result in test failure when the target counter runs upwards.
That test vector attempts to set an alarm event that is passed the
current tick value. Therefore, counter's direction should be exercised
and then an appropriate alarm event should be defined.

Signed-off-by: Ioannis Karachalios <ioannis.karachalios.px@renesas.com>
2025-08-06 12:11:54 +03:00
Declan Snyder
b901daa8e2 eth_nxp_enet_qos: Fixup logging in driver
Some of the logging was not very useful and missing info, some were the
wrong level. Such as routine drops of packets, this happens sometimes
and is not ideal but not going to cause things to fall apart, so demote
those messages. RX buffer underrun for example is pretty unavoidable
with enough traffic going on the local network.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-08-06 12:11:38 +03:00
Declan Snyder
6267ec59ef drivers: eth_nxp_enet_qos: Move RX underrun code
Extract the RX underrun handle code to a separate function.

Named the function like "dma_rx_resume" to make it clear what the
function is really supposed to do.

Demote the error about not being a first descriptor to a warning.
Because most likely we already got an error about something else which
caused us to drop the packet in the first place. The rest of the frames
are expected to be dropped. And make the string shorter.

Also remove the debug message because the control bits do not tell us
any more information than we don't know already. They only tell us that
we own the descriptor (known since we are processing the frame), that it
is not a first descriptor (known since that is the reason we would drop
it at this point, as indicated by the warning).

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-08-06 12:11:38 +03:00
Declan Snyder
735412b59c drivers: eth_nxp_enet_qos: Update as many desc as possible
Instead of looping through only the amount of descriptors there are,
maybe it is possible to get some more things received in one work item
than even the max number of descriptors if RX is processed fast enough,
instead of waiting for work to be scheduled again.

So change to go around the ring until we actually hit a DMA owned
descriptor.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-08-06 12:11:38 +03:00
Declan Snyder
17db8f7975 eth_nxp_enet_qos: Turn on interrupt after init
Don't enable interrupt until after init because there can be a interrupt
mistakenly happen during the init process which can cause various
problems.

Along similar lines, avoid issue for sporadic TX interrupt with no
packet in tx done handler.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-08-06 12:11:38 +03:00
Declan Snyder
3db8bf7689 drivers: eth_nxp_enet_qos: Don't block TX send
Instead of blocking forever if TX is busy, return an error. This can
avoid deadlock situations.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-08-06 12:11:38 +03:00
Declan Snyder
02eafc19a1 drivers: eth_nxp_enet_qos: Fix deadlock in system workqueue
There was a deadlock occurring, exposed by http server sample because of
situations like this caused by tx done work being blocked in deadlock:
1) The TX would be started by some thread and the driver TX sem would be
   taken.
2) The http server socket would get scheduled on the system workqueue to
   send something, claim the network TX interface mutex,
   and be blocked taking the semaphore.
3) The RX traffic class handler would get blocked trying to claim the
   network interface TX mutex, while trying to send an ACK in the TCP
   callback. This means the RX packets would not be processed.
4) Lots of RX unable to allocate packets errors would happen, and all RX
   would be dropped. This was the main symptom of the deadlock, which
   made it look like a memory leak but actually had nothing to do with
   the RX code nor any memory leak.
5) The TX DMA would finish and schedule the TX DMA done work onto the
   system work queue, behind the http server socket which is blocked on
   the waiting for the driver TX semaphore.
6) If the TX DMA done work would have ran, that's what gives the TX
   driver semaphore. So this is the reason for the deadlock of all these
   different threads and work items, the misqueue in the system
   workqueue.

Fix by just calling the TX DMA done code directly from the ISR, it
should be ISR safe, and really not a lot of code to execute, just
freeing some net buffers and the packet and updating the stats.
An optimization can be made later if needed, but for now,
solving the deadlock is a more urgent priority.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-08-06 12:11:38 +03:00
Declan Snyder
c96d891f75 samples: http_server: Fix warning about integer name
When building with CONFIG_DEBUG=y, there is a build warning about the
name being truncated due to integer size is larger than MAX_NAME_LEN.
So fix MAX_NAME_LEN to be large enough to handle 10 digit integer, which
is maximum.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-08-06 12:11:25 +03:00
Raffael Rostagno
aa09a56e45 samples: bluetooth: Add testcase for ESP32-C2
Add testcase for esp8684_devkitm (ESP32-C2).

Signed-off-by: Raffael Rostagno <raffael.rostagno@espressif.com>
2025-08-06 12:10:59 +03:00
Raffael Rostagno
0f4a112f3b boards: esp8684_devkitm: Add BT node
Add BT node to DTS for BT support.

Signed-off-by: Raffael Rostagno <raffael.rostagno@espressif.com>
2025-08-06 12:10:59 +03:00
Raffael Rostagno
99b8333b8e drivers: bt: esp32c2: Add support
Add BT-HCI support to ESP32-C2 and ESP8684.

Signed-off-by: Raffael Rostagno <raffael.rostagno@espressif.com>
2025-08-06 12:10:59 +03:00
Raffael Rostagno
916d67870d soc: esp32c2: Add BT support
Add bluetooth support to ESP32-C2 and ESP8684.

Signed-off-by: Raffael Rostagno <raffael.rostagno@espressif.com>
2025-08-06 12:10:59 +03:00
Declan Snyder
6381c6056b boards: frdm_mcxn236: Combine dtsi and dts files
There does not appear to be any reason or pattern for this
dtsi file to exist, so move everything to the dts file and delete it.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-08-06 12:10:47 +03:00
Andrej Butok
e17918b2f8 drivers: flash_mcux_flexspi: nxp: add CONFIG_FLASH_PAGE_LAYOUT check
- Adds CONFIG_FLASH_PAGE_LAYOUT check to the flash_mcux_flexspi
  drivers.
- Saves some memory if FLASH_PAGE_LAYOUT is disabled.

Signed-off-by: Andrej Butok <andrey.butok@nxp.com>
2025-08-06 12:10:36 +03:00
Peter Johanson
6cd8882653 boards: adafruit: Add Metro rp2350 board
Add initial Adafruit Metro RP2350 board definition.

Signed-off-by: Peter Johanson <peter@peterjohanson.com>
2025-08-06 12:10:20 +03:00
Emil Gydesen
8e5e9922c5 Bluetooth: ISO: Fix sonarcloud issues in valid_chan_qos
Fixes some sonarcloud issues relating to the if statements.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-08-05 13:37:13 -04:00
Emil Gydesen
549ce01a42 tests: Bluetooth: ISO: BIS: Add timestamp check
Add check that verifies that we do not have unexpected
differences in timestamps.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-08-05 13:37:13 -04:00
Emil Gydesen
2ea62124af tests: Bluetooth: ISO: BIS: Enable BIS test for nRF5340bsim
Enable support for building and running the BIS ISO host test
on the nRF5340bsim board.

The purpose of this is to test the ISO fragmentation on both the
nRF52bsim and nRF5340bsim, as they use different drivers.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-08-05 13:37:13 -04:00
Emil Gydesen
c886ef06e3 tests: Bluetooth: ISO: BIS: Add fragmented data test
Add a test for broadcast ISO that uses fragmentation.
The host will attempt to send SDUs 3 times the HCI ISO
data buffer size, so that it will be fragmented into a
BT_ISO_START, BT_ISO_CONT and a BT_ISO_END HCI ISO data
packet.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-08-05 13:37:13 -04:00
Emil Gydesen
33951ccf05 tests: Bluetooth: ISO: BIS: Use controller buffer size as SDU size
Modify the test to use the controller buffer size as the maximum
SDU size, so per default we can send up to the maximum size
the controller supports. This ensures that the tests will
never do fragmentation over HCI.

This also adds verification of the received data on the
ISO sync receiver.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-08-05 13:37:13 -04:00
Emil Gydesen
9e5e7cd07b tests: Bluetooth: BIS: Reduce number of channels to 2
Reduce the number of channels to 2, as higher numbers does
not really test anything worthwhile.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-08-05 13:37:13 -04:00
Emil Gydesen
3a963e5286 Bluetooth: ISO: Remove check for SDU size
Since the SDUs are now allocated by the application
and the host does not care about the SDU sizes, the check
is useless.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-08-05 13:37:13 -04:00
Declan Snyder
6f26597ddb tests: spi_loopback: nxp_lpspi: Increase latency for DMA
The DMA-based LPSPI is inherently going to have a high latency due to
the requirement for setting up the DMA transfer and the DMA driver may
be extremely bloated, this is no fault of the spi driver and not
relevant to the test. The driver we want to test for latency is the
CPU-based one, the DMA-based one is more prioritizing bandwidth over
latency.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-08-05 13:36:57 -04:00
Kunihiko Hayashi
84414b14f9 snippets: xen_dom0: Add qemu_cortex_a53/smp support
Make the SMP version of qemu_cortex_a53 applicable to the xen_dom0 snippet.

Signed-off-by: Kunihiko Hayashi <hayashi.kunihiko@socionext.com>
2025-08-05 13:28:44 -04:00
Yago Fontoura do Rosario
ca06a1d80d Bluetooth: Add configuration to control the dynamic connection callbacks
This commit allows to the user to control the use or not of dynamic
connection callbacks.
The stack is not using the dynamic connection callbacks so they are
only needed if the applications want to use it.
Setting it to true for backwards compatibility.

With dynamic connection callbacks

           FLASH:      176600 B       512 KB     33.68%
             RAM:       27428 B        64 KB     41.85%
        IDT_LIST:          0 GB        32 KB      0.00%

Without dynamic connection callbacks

           FLASH:      176376 B       512 KB     33.64%
             RAM:       27428 B        64 KB     41.85%
        IDT_LIST:          0 GB        32 KB      0.00%

Signed-off-by: Yago Fontoura do Rosario <yafo@demant.com>
2025-08-05 13:28:06 -04:00
Yago Fontoura do Rosario
e0d22a308e Bluetooth: Host: Conn callbacks registration with BT_CONN_CB_DEFINE
This commit registers the connection callbacks using BT_CONN_CB_DEFINE,
which ensures they are set up at link time rather than runtime.

Signed-off-by: Yago Fontoura do Rosario <yafo@demant.com>
2025-08-05 13:28:06 -04:00
Yago Fontoura do Rosario
b1eaf02ec1 Bluetooth: Audio: Conn callbacks registration with BT_CONN_CB_DEFINE
This commit registers the connection callbacks using BT_CONN_CB_DEFINE,
which ensures they are set up at link time rather than runtime.

Signed-off-by: Yago Fontoura do Rosario <yafo@demant.com>
2025-08-05 13:28:06 -04:00
Scott Worley
78bc3e31c0 tests: arch: arm: arm_irq_vector_table: Add remaining MEC boards
Any PR affecting all Microchip MEC SoC's causes twister to run
the arm IRQ vector table test. Since all the MEC boards are
using the MEC 32 KHz timer instead of ARM SysTick we added all
the remaining boards to the test. Each overlay disables the MEC
32 KHz timer and enables SysTick as the kernel timer.

Signed-off-by: Scott Worley <scott.worley@microchip.com>
2025-08-05 13:27:44 -04:00
Michał Stasiak
fce6b2f919 samples: nordic: system_off: check for supported reset causes
Check whether used reset causes are supported by hwinfo
driver.

Signed-off-by: Michał Stasiak <michal.stasiak@nordicsemi.no>
2025-08-05 13:27:10 -04:00
Michał Stasiak
ab3ef4ade4 drivers: hwinfo: nrf: extend supported reset reasons
Added missing supported reset reasons based on conditional
guards.

Signed-off-by: Michał Stasiak <michal.stasiak@nordicsemi.no>
2025-08-05 13:27:10 -04:00
Greg Leach
e17c6e67fe boards: ezurio: bl654_usb: Bring in line with nrf52840 dongle
Merge in updates from reference nrf52840 dongle board

Signed-off-by: Greg Leach <greg.leach@ezurio.com>
2025-08-05 13:26:34 -04:00
Sylvio Alves
c6935ba8ab samples: espressif: update deep-sleep test case
Update deep-sleep test case to enable CI tests.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2025-08-05 13:26:20 -04:00
Maochen Wang
515567f679 tests: net: wifi: add the build of hostapd enterprise case
Add the build check of hostapd AP enterprise case.

Signed-off-by: Maochen Wang <maochen.wang@nxp.com>
2025-08-05 13:24:02 -04:00
Maochen Wang
3ad0b53003 net: l2: wifi: fix the build error of hostapd enterprise
Fix the build error when hostapd enterprise is enabled, it should use
new wifi_set_enterprise_credentials API, instead of
wifi_set_enterprise_creds.

Signed-off-by: Maochen Wang <maochen.wang@nxp.com>
2025-08-05 13:24:02 -04:00
Maximilian Deubel
59a8eebd18 net: lib: tls_credentials: add invalid sec tag value
Add a definition for an invalid secure tag value to be used
as a placeholder. Negative values are reserved for internal use,
but some of them should be considered valid.
To be able to check against a value, we need to define an invalid one.

Signed-off-by: Maximilian Deubel <maximilian.deubel@nordicsemi.no>
2025-08-05 13:23:43 -04:00
Tim Pambor
be37d72a40 net: tcp: Avoid casting unaligned address to struct in_addr
This change addresses an alignment problem reported by UBSAN by
using a copy of the address. This avoids the need for extensive
rework to support *_raw variants in the routing layer.

Signed-off-by: Tim Pambor <tim.pambor@codewrights.de>
2025-08-05 13:23:21 -04:00
Seppo Takalo
05dfc7145f net: lwm2m: Fix string truncation on some content formatters
LwM2M engine does not allow strings to be truncated as it would
lead to invalind UTF-8 strings.

However, some content formatters were truncating, so I fixed at least
these
* plain text
* TLV
* SenML CBOR
* SenML JSON
* JSON
* CBOR

Signed-off-by: Seppo Takalo <seppo.takalo@nordicsemi.no>
2025-08-05 13:20:57 -04:00
Seppo Takalo
0c2b771858 tests: net: lwm2m: Add tests for string truncation
lwm2m_get_string() and lwm2m_set_string() API does not allow
strings to be truncated and ensures NUL termination
regardles of using string or opaque resources to store the string.

Add tests to verify that is also true on multi-byte UTF-8
strings.

Signed-off-by: Seppo Takalo <seppo.takalo@nordicsemi.no>
2025-08-05 13:20:57 -04:00
Luna Pes
d299ce35d5 drivers: adc: ad7124: fix io control reg len
The IO_CONTROL_1 register is 3 bytes long according to the datasheet.
This fixes the register not being written to correctly.

Signed-off-by: Luna Pes <zephyr@orangemurker.com>
2025-08-05 13:20:41 -04:00
Pieter De Gendt
576b3daffa drivers: regulator: shell: Fix regulator parent name completion
Shell functions targeting regulator parents used the auto-completion of
regulator devices instead.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-08-05 13:20:23 -04:00
Loic Domaigne
2aeac6087d driver: sensor: veml6031 fix untrusted value/array index
Coverity reported potential use of untrusted values / array index. Add
appropriate checks and error reporting when using data->div4, data->gain
and data->itim as value/index.

CID: 516222
CID: 516228
CID: 516248
CID: 516254

Signed-off-by: Loic Domaigne <tech@domaigne.com>
2025-08-05 11:54:27 +01:00
Fabio Baltieri
56a446b4ee modules: cmsis, cmsis_6: only add the intended cmsis module
The current code base is meant to use cmsis for Cortex A and R and
cmsis_6 for Cortex M, but the build system is configured to include the
path for both when Cortex M is selected. This leaves us exposed to PR
using the old headers, that would not get caught in CI but would fail
the build on a project using Cortex M that only has the cmsis_6 module.

Change the cmsis module setting to only include the module files in the
intended case.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2025-08-05 11:54:18 +01:00
Fabio Baltieri
8c81d65782 manifest: update ambiq and microchip hals to pickup the cmsis_6 fixes
Update various hals to pickup the cmsis_6 related fixes.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2025-08-05 11:54:18 +01:00
Fabio Baltieri
a763207962 arch: arm: dwt: use the cmsis_6 macro unconditionally
Always use the cmsis_6 version for DWT_LSR_Present_Msk and
DWT_LSR_Access_Msk, the old ones are not going to be available anymore
when Cortex-M is selected..

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2025-08-05 11:54:18 +01:00
Michał Stasiak
e538997a20 tests: drivers: counter_nrf_rtc: test fixed top on nRF52832
Added overlay for the board.

Signed-off-by: Michał Stasiak <michal.stasiak@nordicsemi.no>
2025-08-05 11:54:06 +01:00
Michał Stasiak
41d56fd4d9 drivers: timer: nrf_rtc_timer: Allow use of custom bit width
Allowed use of counter bit width lower than hardware 24.
In that case, PPI connection is established to trigger
clear task once maximum value is reached.

Signed-off-by: Michał Stasiak <michal.stasiak@nordicsemi.no>
2025-08-05 11:54:06 +01:00
Daniel DeGrasse
7765485646 samples: mgmt: mcumgr: add testcase for ramload with revert
Add testcase to build mcuboot and smp_svr application using ramload
with revert mode

Signed-off-by: Daniel DeGrasse <ddegrasse@tenstorrent.com>
2025-08-05 11:53:58 +01:00
Daniel DeGrasse
188d78b109 mgmt: update img_mgmt_slot_in_use for ramload with revert mode
We should not block erasing pending images when using ramload with
revert mode, because uploading multiple confirmed images with the same
version would brick the device (preventing future FW updates). Update
the dependencies of img_mgmt_slot_in_use to account for this.

Signed-off-by: Daniel DeGrasse <ddegrasse@tenstorrent.com>
2025-08-05 11:53:58 +01:00
Daniel DeGrasse
2ed1ec9e33 dfu: boot: mcuboot: fix boot_fetch_active_slot
boot_fetch_active_slot needs to map the slot number to a flash ID, as
this is what the DFU subsystem expects when interacting with the flash
partition.

Signed-off-by: Daniel DeGrasse <ddegrasse@tenstorrent.com>
2025-08-05 11:53:58 +01:00
Daniel DeGrasse
e1173afe7d dfu: mcuboot: update dependencies for RAMLOAD_WITH_REVERT
Much like in RAMLOAD mode, RAMLOAD_WITH_REVERT requires that mcuboot
subsystem fetch bootloader information via the retention subsystem.

Signed-off-by: Daniel DeGrasse <ddegrasse@tenstorrent.com>
2025-08-05 11:53:58 +01:00
Daniel DeGrasse
aa0ff3cf4f soc: nxp: flexspi_xip: Update FLASH_MCUX_FLEXSPI_XIP ramload dependencies
CONFIG_FLASH_MCUX_FLEXSPI_XIP should also be disabled when using MCUBoot
ramload mode with revert support.

Signed-off-by: Daniel DeGrasse <ddegrasse@tenstorrent.com>
2025-08-05 11:53:58 +01:00
Daniel DeGrasse
6439c0c1d7 cmake: mcuboot: prefer confirmed image when one is created
Prefer flashing the confirmed image when one is created with
CONFIG_MCUBOOT_GENERATE_CONFIRMED_IMAGE. This way, the west runner will
flash this image over the signed image if it exists.

Signed-off-by: Daniel DeGrasse <ddegrasse@tenstorrent.com>
2025-08-05 11:53:58 +01:00
Daniel DeGrasse
77e592c68b cmake: mcuboot: respect alignment size when signing for ramload mode
When signing for ramload mode, respect the write alignment size setting.
This is required when creating a confirmed image, as the BOOT_MAGIC
value changes based on the alignment size in use.

Signed-off-by: Daniel DeGrasse <ddegrasse@tenstorrent.com>
2025-08-05 11:53:58 +01:00
Daniel DeGrasse
2d2e64af17 scripts: ci: exempt BOOT_RAM_LOAD_REVERT from checks
Add BOOT_RAM_LOAD_REVERT as a defined Kconfig to the whitelist

Signed-off-by: Daniel DeGrasse <ddegrasse@tenstorrent.com>
2025-08-05 11:53:58 +01:00
Daniel DeGrasse
879d4ce7f3 modules: mcuboot: add Kconfigs for RAMLOAD_WITH_REVERT mode
Add Kconfigs for RAMLOAD_WITH_REVERT mode in MCUBoot. This mode works in
a manner similar to DIRECT_XIP_WITH_REVERT- namely, mcuboot will only
boot an image that is either confirmed or marked as pending. If both
images are confirmed, mcuboot will still select the one with the higher
version, so downgrading is not possible using this mode.

Signed-off-by: Daniel DeGrasse <ddegrasse@tenstorrent.com>
2025-08-05 11:53:58 +01:00
Daniel DeGrasse
ace8207f4c samples: subsys: mgmt: mcumgr: add support for ramload on mimxrt1050_evk
Add support for using the ramload mode of MCUBoot on the mimxrt1050_evk

Signed-off-by: Daniel DeGrasse <ddegrasse@tenstorrent.com>
2025-08-05 11:53:58 +01:00
Daniel DeGrasse
207211a00d soc: nxp: common: disable FLASH_MCUX_FLEXSPI_XIP if using ramload
MCUBoot RAMLOAD mode relies on CONFIG_XIP=n, but FLASH_MCUX_FLEXSPI_XIP
y-selects this symbol. Disable CONFIG_FLASH_MCUX_FLEXSPI_XIP for the
case where we are using MCUBoot ramload mode.

Signed-off-by: Daniel DeGrasse <ddegrasse@tenstorrent.com>
2025-08-05 11:53:58 +01:00
Daniel DeGrasse
7b45235545 samples: subsys: mcumgr: rework ram load support for multiple boards
MCUMgr ram load support was hardcoding the overlay file for the
nrf52840dk. To make this support generic, move the _ram_load overlay
file to the MCUBoot repository, as part of the mcuboot application.

Signed-off-by: Daniel DeGrasse <ddegrasse@tenstorrent.com>
2025-08-05 11:53:58 +01:00
Chun-Chieh Li
1bc008dae3 drivers: misc: ethos_u: support default dcache flush/invalidate
This provides default ethosu_flush_dcache and ethosu_invalidate_dcache
overrides. User application can disable it through Kconfig option if it
needs to provide its own.

Signed-off-by: Chun-Chieh Li <ccli8@nuvoton.com>
2025-08-05 10:26:54 +01:00
Yuxuan Cai
f6bee983bc drivers: firmware: remove duplicate function definitions
tisci_cmd_get_fwl_region is defined three times
which is causing doc build errors

Signed-off-by: Yuxuan Cai <yuxuan.cai@nordicsemi.no>
2025-08-05 10:26:37 +01:00
Piotr Kosycarz
9b92629435 samples: boards: nordic: spis_wakeup: fix boot for h20
Explicit start radio core.

Signed-off-by: Piotr Kosycarz <piotr.kosycarz@nordicsemi.no>
2025-08-05 10:26:13 +01:00
Xiaolu Sun
8b9955057d drivers: spi_sedi: correct CPOL and CPHA mode handling in SPI config
The CPOL and CPHA mode handling logic in the SPI configuration was
corrected to ensure proper evaluation of the SPI mode bits.
Evaluate CPOL and CPHA bits using value of cpol_mode and cpha_mode:
`(SPI_MODE_GET(config->operation) & SPI_MODE_CPOL) != 0` and
`(SPI_MODE_GET(config->operation) & SPI_MODE_CPHA) != 0`.

This fix ensures that the SPI configuration is robust and adheres to
expected behavior when setting CPOL and CPHA modes.

Signed-off-by: Xiaolu Sun <xiaolu.sun@intel.com>
2025-08-05 10:25:48 +01:00
Sylvio Alves
84112df024 MAINTAINERS: update hal_espressif contributors
Add missing contributors to `hal_espressif` area.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2025-08-05 10:25:34 +01:00
James Smith
6e344ba19e drivers: bluetooth: hci: silabs: Implement hci_close
Implements HCI close support for the silabs efr32 HCI driver.

Calling `bt_disable()` now works as expected, which is particularly
important for multiprotocol applications.

Signed-off-by: James Smith <james@loopj.com>
2025-08-05 10:25:24 +01:00
Luis Ubieda
68afaf5e42 paa3905: Improve error-handling and cleanup during streaming
- Setting IODEV_SQE to NULL to subsequent triggers are rejected.
- Channel all error-resolutions through handle_result_on_error().

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-08-05 10:25:15 +01:00
Alvis Sun
dbc49f04d7 driver: bbram: npcx: update bbram status register bit offset for npck3
Update the bit offset of bit VCC_STS in the BKUP_STS register.

Signed-off-by: Alvis Sun <yfsun@nuvoton.com>
Signed-off-by: Jun Lin <CHLin56@nuvoton.com>
2025-08-05 10:25:09 +01:00
Mathieu Choplain
2881186244 drivers: counter: stm32_timer: use "cc" interrupt if it exists
Currently, the STM32 TIM counter driver will always register itself as ISR
for interrupts[0] of the timer node. This works fine for timers which have
a single "global" interrupt but not for others (e.g., Advanced Timer) which
have separate IRQ lines for various events.

Borrow the pattern from PWM driver: use the "cc" interrupt if it exists on
timer node, otherwise use the "global" interrupt. If neither of those are
found, a build error is raised to ensure silent failures cannot occur.

Signed-off-by: Mathieu Choplain <mathieu.choplain@st.com>
2025-08-05 10:24:56 +01:00
Sebastian Głąb
ee89450165 boards: nordic: nrf54l09pdk: Remove obsolete board
Board nrf54l09pdk was renamed to nrf54lv10dk.
Remove obsolete board definition.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
2025-08-05 10:24:48 +01:00
Sebastian Głąb
d673851ec8 tests: Remove nrf54l09pdk from supported boards
Remove possibility to run tests on nrf54l09pdk as this is
an obsolete board that is going to be removed.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
2025-08-05 10:24:48 +01:00
Sebastian Głąb
e701a8e544 samples: drivers: Remove nrf54l09pdk from supported boards
Remove possibility to run samples on nrf54l09pdk as this is
an obsolete board that is going to be removed.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
2025-08-05 10:24:48 +01:00
Sylvio Alves
2aca4ef0c2 soc: espressif: esp32c2: Enable deep sleep support
Adds support for deep sleep mode on the ESP32-C2 SoC, allowing
significant power savings.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2025-08-04 17:06:38 -04:00
Sylvio Alves
d03550255f soc: espressif: load RTC region into loader process
Only RTC DRAM area is currently being loaded during segment loader.
It means that RTC_IRAM and RTC_DATA is missing, causing
issues when sleep-modes are needed.

This also re-format the segments logging output
to meet with MCUBoot/Simple boot cases.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2025-08-04 17:06:16 -04:00
Marc Lasch
15048337c4 drivers: net: ppp: Fix link-layer address configuration
Restore setting the ppp link-local address either to CONFIG_PPP_MAC_ADDR or
to a random value 00:00:5e:00:53:XX instead of leaving it uninitialized.

Recently the memory handling for the link-layer addresses was changed from
an approach of copying pointers to managing the memory as a member of the
`net_linkaddr` struct (ref ac3cb9dac0).

The piece of code this patch touches however, relied on the use of the
pointers to function properly.

With the recent change, the MAC address was copied to the new member
location before it was even set (either from Kconfig or selected randomly).
As a result, the link-layer address was kept initialized to zero, which
resulted in a IPv6 address of fe80::ff:fe00:0 which is exactly the
link-local EUI-64 representation of the MAC address 00:00:00:00:00:00
(without flipping the "universal/local" bit).

Signed-off-by: Marc Lasch <marc.lasch@husqvarnagroup.com>
2025-08-04 17:05:35 -04:00
Michele Sardo
958bec0df4 arch: arm: add Cortex-M MPU context save/restore API
Add struct z_mpu_context_retained and parameterized functions
z_arm_save_mpu_context() and z_arm_restore_mpu_context() to allow
saving and restoring MPU configuration to/from retained RAM.

This enables preserving MPU state across deep sleep or power-down
modes on Cortex-M devices.

The API is exposed under include/zephyr/arch/arm/mpu/arm_mpu.h
and implemented in arch/arm/core/mpu/arm_mpu.c.

Signed-off-by: Michele Sardo <msmttchr@gmail.com>
2025-08-04 17:04:01 -04:00
Marek Matej
fa1840268b scripts: update the CI requirements for Espressif port
Updated twister.yaml workflow to fetch esptool for the CI.
Fix format of the arguments used in the esptool-5.0.2.
Check that esptool is available on build time.
Update runners for esp32.

Signed-off-by: Marek Matej <marek.matej@espressif.com>
2025-08-04 17:02:52 -04:00
Marek Matej
298ff71795 manifest: update hal_espressif
* Brings changes in how esptool is istalled in the environment.
* Update bluetooth and C2 support files.

Signed-off-by: Marek Matej <marek.matej@espressif.com>
2025-08-04 17:02:52 -04:00
Vinayak Kariappa Chettimada
43232215a4 samples: Bluetooth: peripheral_hr minimal configuration update
Updated peripheral_hr sample to use separate Zephyr
Controller overlay for minimal configuration.

For bbc_microbit:
Memory region         Used Size  Region Size  %age Used
           FLASH:       96268 B       256 KB     36.72%
             RAM:       16296 B        16 KB     99.46%
        IDT_LIST:          0 GB        32 KB      0.00%

For nrf54l15dk/nrf54l15/cpuapp:
Memory region         Used Size  Region Size  %age Used
           FLASH:       95012 B      1428 KB      6.50%
             RAM:       17744 B       188 KB      9.22%
        IDT_LIST:          0 GB        32 KB      0.00%

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2025-08-04 17:02:19 -04:00
Vinayak Kariappa Chettimada
c8d4016e04 Bluetooth: Controller: Fix minimal Kconfig depends and defaults
Fix default value of BT_TICKER_REMAINDER_GET, it will be
selected based on enabled Controller features. This is not
needed by minimal peripheral role.

Fix depends on for BT_CTLR_CONN_RANDOM_FORCE as it is
applicable when more than one simultaneous connections is
supported. Again, this is not needed by minimal peripheral
role.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2025-08-04 17:02:19 -04:00
Raymond Lei
33e1b869b9 drivers: nxp : flexspi: add GD nor flash support
Fix a bug in quad bit enablement.
Add LUT for Giga Device nor flash GD25Q256x.

Signed-off-by: Raymond Lei <raymond.lei@nxp.com>
2025-08-04 19:58:07 +01:00
Sreeram Tatapudi
600e86d475 drivers: serial: Adding PDL based UART driver
Adding a basic UART driver based on the PDL API

Signed-off-by: Sreeram Tatapudi <sreeram.praveen@infineon.com>
2025-08-04 19:57:57 +01:00
Sreeram Tatapudi
6928218421 drivers: Implement initial version of ifx_cat1 pdl clock_control
- Shift ifx_cat1 clock_control driver to using pdl instead of hal calls
- add soc.c file containing call to SystemInit()
- Update board's dts files
- add binding for peri divs
- update system_clocks.dtsi for psc3
- add new peri clock_control driver

Signed-off-by: Sreeram Tatapudi <sreeram.praveen@infineon.com>
2025-08-04 19:57:57 +01:00
Sreeram Tatapudi
b8fd4cd55f drivers: pinctrl: pincontrol driver updates to support PSC3
Update pincontrol driver to support PSC3

Signed-off-by: Sreeram Tatapudi <sreeram.praveen@infineon.com>
2025-08-04 19:57:57 +01:00
Sreeram Tatapudi
ba144130ce drivers: gpio: GPIO driver updates to support PSC3
Update GPIO driver to support PSC3

Signed-off-by: Sreeram Tatapudi <sreeram.praveen@infineon.com>
2025-08-04 19:57:57 +01:00
Sreeram Tatapudi
b3e165e455 boards: infineon: psc3m5_evk: Adding folder structure for PSC3M5_EVK
* Adding folder structure and first pass config for PCS3M5_EVK
    * Adding dtsi, kconfig, and other files for KIT_PSC3M5_EVK
      evaluation board.

Signed-off-by: Sreeram Tatapudi <sreeram.praveen@infineon.com>
2025-08-04 19:57:57 +01:00
Sreeram Tatapudi
01972a1fcc soc: infineon: psc3: Adding folder structure for PSC3 series
Adding kconfig, and other soc files for PSOC Control C3 devices

Signed-off-by: Sreeram Tatapudi <sreeram.praveen@infineon.com>
2025-08-04 19:57:57 +01:00
Sreeram Tatapudi
2049a8a765 dts: infineon: psc3: Adding DTS files for PSC3 series
Adding DTS files and MPN files for PCS3M5_EVK

Signed-off-by: Sreeram Tatapudi <sreeram.praveen@infineon.com>
2025-08-04 19:57:57 +01:00
Mark Wang
f19e7983d0 bluetooth: remove the unnecessary macro wrapper in header files
It eliminates the possibility of using IS_ENABLE(), so it is better to
remove them.

Signed-off-by: Mark Wang <yichang.wang@nxp.com>
2025-08-04 19:57:30 +01:00
Benjamin Cabé
6060d49820 doc: _extensions: Use github form to report documentation errors
This change makes the "Report an issue" button in the documentation
actually pre-fill the bug template as opposed to just opening a "plain"
issue.

The required "Describe the bug" field is not pre-filled at all, making it
mandatory for folks to put in effort into their report where before they
would have been able to just hit "Submit" :)

Fixes zephyrproject-rtos/zephyr#93654

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-08-04 19:57:20 +01:00
Vit Stanicek
f8d55770d4 dt: mimxrt798s/cm33_cpu0: Instantiate MU4
Instantiate the MU4 peripheral in SoC's DT. Enable it in board's DT.
Switch variant of the fsl_mu driver included.

The MU4 peripheral is used for IPC with the mimxrt798s/hifi4 domain.

Signed-off-by: Vit Stanicek <vit.stanicek@nxp.com>
2025-08-04 19:57:10 +01:00
Vit Stanicek
67100dde6c dt: mimxrt798s/cm33_cpu0: Instantiate nxp,rtxxx-dsp-ctrl
Instantiate the nxp,rtxxx-dsp-ctl
driver (nxp,rt700-dsp-ctrl-hifi4 variant) in the mimxrt798s/cm33_cpu0's
DT. Enable it in mimxrt700_evk/mimxrt798s/cm33_cpu0.

Signed-off-by: Vit Stanicek <vit.stanicek@nxp.com>
2025-08-04 19:57:10 +01:00
Vit Stanicek
0011e85ed3 drivers: nxp,rtxxx-dsp-ctl: Extend to mimxrt798s/hifi4
Rework the driver so that it can cover multiple variants. Add variant DT
bindings. Change the compatible name for the mimxrt685s/cm33 DT.

This needed to be done because the hardware initialisation routines
(power, clocks, ...) are different from mimxrt685s/hifi4 to
mimxrt798s/hifi4. The same is expected for the /hifi1 domain.

Signed-off-by: Vit Stanicek <vit.stanicek@nxp.com>
2025-08-04 19:57:10 +01:00
Vit Stanicek
40f08428d3 boards: mimxrt700_evk: Enable NS & NP GPIO0 access
Enable the GPIO0 peripheral regardless of DT status. Program the
peripheral to allow non-secured and non-privileged accesses.

This is to enable access to the GPIO0 peripheral (both port reads/writes
and interrupts) from the mimxrt798s/hifi4 domain, as that domain is
non-privileged.

Signed-off-by: Vit Stanicek <vit.stanicek@nxp.com>
2025-08-04 19:57:10 +01:00
Vit Stanicek
8b1affbb49 soc: mimxrt798s/hifi4: Add soc.c
Add soc.c. Handle IRQ mapping (INPUTMUX) and clock setup.

Signed-off-by: Vit Stanicek <vit.stanicek@nxp.com>
2025-08-04 19:57:10 +01:00
Vit Stanicek
1a41cbc742 soc: mimxrt798s/hifi4: Rework linker and memory defs
Rename symbols so that they reflect purpose of defined memory regions.
Point region symbols to nodes in the DT. Move bogus IDT section before
DSP's ITCM. Move common ROM and RAM sections before the heap.

The move had to be done as these sections and the heap did overlap.

Signed-off-by: Vit Stanicek <vit.stanicek@nxp.com>
2025-08-04 19:57:10 +01:00
Vit Stanicek
7635d98bbb dt: mimxrt700_evk/hifi4: Add definitions
Add dummy interrupt controller, clock control, pin control, Flexcomm 0,
Flexcomm 2, SAI0, SAI1, SAI2 into SoC's DT. Enable relevant nodes in
board's DT and include pinctrl definitions. Add default LED and button
nodes. Set /hifi4's real frequency. Add memory nodes for device's main
SRAM.

Signed-off-by: Vit Stanicek <vit.stanicek@nxp.com>
2025-08-04 19:57:10 +01:00
Vit Stanicek
bd997284a2 boards: mimxrt700_evk: Add jlink runner args for hifi4
Add jlink runner arguments for mimxrt700_evk/mimxrt798s/hifi4, so that
domain can be debugged.

Signed-off-by: Vit Stanicek <vit.stanicek@nxp.com>
2025-08-04 19:57:10 +01:00
Vit Stanicek
1521cb9bc8 soc: mimxrt798s: Expand definitions for /hifi4
Add desired Kconfig implications for the mimxrt798s/hifi4 domain. Add
pinctrl_soc.h and set up an include path for it.

Signed-off-by: Vit Stanicek <vit.stanicek@nxp.com>
2025-08-04 19:57:10 +01:00
Luis Ubieda
9e99b932d9 bmp581: Set streaming handle to NULL when done
To follow with error-handling of multi-shot items, they won't be marked
as cancelled. Instead, we expect them to stop being submitted, hence we
dispose the handle upon finishing every shot.

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-08-04 19:56:40 +01:00
Luis Ubieda
24c0583848 bmm350: Set streaming handle to NULL when done
To follow with error-handling of multi-shot items, they won't be marked
as cancelled. Instead, we expect them to stop being submitted, hence we
dispose the handle upon finishing every shot.

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-08-04 19:56:31 +01:00
Luis Ubieda
2e2d4afa06 afbr-s50: Remove asserts from driver
Run-time errors can still be considered asserts if checkif is
configured as such, otherwise, prevent crashing.

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-08-04 19:56:22 +01:00
Luis Ubieda
f64009b87e afbr-s50: Accept requests if the on-going SQE has been cancelled
Considering the app may have cancelled all the requests as an error
handling strategy, this driver needs to support recovering from such
case.

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-08-04 19:56:22 +01:00
Luis Ubieda
00055d1a7d afbr-s50: Add graceful error-handling on data-ready
Whenever the data-ready callback is invoked, there's a common pattern
that needs to take place:

- Stop measurement timer (to stop on-coming samples), which could be
restored by the application re-submitting the request.
- Set iodev_sqe to NULL, so new requests can come in.
- Report the error on the SQE.

This has been refactored in handle_error_on_result() and now it's
invoked throughout the code.

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-08-04 19:56:22 +01:00
Luis Ubieda
ab67081443 afbr-s50: fix build-time asserts for settings outside dual-freq mode
The existing build-time asserts not only needs to cover dual-frequency
mode does no exceed high-speed settings, it needs to allow not using
dual-frequency mode settings at all, which is what this patch does.

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-08-04 19:56:22 +01:00
Vinit Mehta
c1e7b2e8d8 samples: bluetooth: pbp_public_broadcast: Align ISO TX netbuf size
- Change netbuf buffer pool to use CONFIG_BT_CONN_TX_USER_DATA_SIZE to
  avoid inconsistency and have enough buffer room when sending ISO data

Signed-off-by: Vinit Mehta <vinit.mehta@nxp.com>
2025-08-04 19:56:08 +01:00
Guennadi Liakhovetski
25f98c95a8 soc: intel: ace: fix GDB stub
A recent commit inadvertently broke GDB stub on ACE. Revert that
part of the faulty commit.

Fixes: commit cfd6a0673c ("SoC: Intel: ACE: remove unused litelals
parts in interrupt vectors")

Signed-off-by: Guennadi Liakhovetski <guennadi.liakhovetski@linux.intel.com>
2025-08-04 19:55:57 +01:00
Gordon Klaus
5da1baac69 samples: bluetooth: Add support for nRF54lm20a to two samples
Add support for nRF54lm20a to the beacon and peripheral_hr samples.

Signed-off-by: Gordon Klaus <gordon.klaus@nordicsemi.no>
2025-08-04 19:55:37 +01:00
Chaitanya Tata
1e5c8f75ae drivers: nrf_wifi: Fix the interoperability issues
With few APs we have seen unexplained disconnections and sending
keepalive often solves the problem, so, to fix interoperability reduce
the keepalive period to 30s.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-08-04 19:55:27 +01:00
Chaitanya Tata
59ff12656f net: l2: wifi: Fix the default keepalive value
30s is too aggressive for most APs, and hostapd also uses 5mins as the
default value.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-08-04 19:55:27 +01:00
Bas van Loon
7cc2610c92 net: openthread: Add option to enable radio coexistence module.
This patch adds the option to enable the coexistence module when needed.

Signed-off-by: Bas van Loon <bas@arch-embedded.com>
2025-08-04 19:55:17 +01:00
Bas van Loon
27a32b3b2e net: openthread: Add option to set RCP restoration count.
This patch allows to set the RCP restoration count when necessary.

Signed-off-by: Bas van Loon <bas@arch-embedded.com>
2025-08-04 19:55:08 +01:00
Michał Stasiak
3a871b6b4b tests: kernel: obj_tracking: fix typo
Fixed typo in assertion.

Signed-off-by: Michał Stasiak <michal.stasiak@nordicsemi.no>
2025-08-04 19:54:58 +01:00
Bas van Loon
2cf4ba4d39 net: openthread: Fix build when OPENTHREAD_DIAG is enabled.
Build fails when openthread diag module is enabled and HDLC/RCP is
enabled. The diag.c module should not be built when radio-spinel is
used as it has it's own diag code.

Signed-off-by: Bas van Loon <bas@arch-embedded.com>
2025-08-04 19:54:34 +01:00
Bas van Loon
6be63a1d33 net: openthread: Constify HDLC rx callback data pointer.
Received data should not be modified by upper layers so constify the
pointer to make that clear.

Signed-off-by: Bas van Loon <bas@arch-embedded.com>
2025-08-04 19:54:34 +01:00
Bas van Loon
2769cb9e10 net: openthread: Use proper macro to calculate timeout.
Use K_USEC() to convert the timeout value in microseconds to a value in
ticks dropping the manual conversion from microseconds to milliseconds.

Signed-off-by: Bas van Loon <bas@arch-embedded.com>
2025-08-04 19:54:34 +01:00
Bas van Loon
b6f2923d95 net: openthread: Initialize work queue properly.
According to the work queue API a queue object should be initialized
using the k_work_queue_init() call. This patch adds this missing call.

Signed-off-by: Bas van Loon <bas@arch-embedded.com>
2025-08-04 19:54:34 +01:00
Sylvio Alves
350f322126 soc: espressif: disable default MCUBoot confirmed image generation
MCUBoot currently always builds the image as confirmed,
but image confirmation should be explicitly handled by the application
or subsystems.

This change disables the default behavior to avoid premature confirmation
during build time.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2025-08-04 19:54:25 +01:00
Pieter De Gendt
e4f32fefff samples: modules: lvgl: Add Kconfig guard for LV_Z_DEMO_RENDER
Add a guard to the Kconfig symbols that are available for the render demo.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-08-04 19:54:08 +01:00
Henrik Brix Andersen
79c5b10017 MAINTAINERS: use common label for the Bouffalo Lab platform areas
Use a common label for the Bouffalo Lab platform areas.

Signed-off-by: Henrik Brix Andersen <hebad@vestas.com>
2025-08-04 19:53:59 +01:00
Youssef Zini
9b5aa6b2f4 tests: app_dev: ram_context_for_isr: fix irq_num
This commit fixes the type of `irq_num` in the `fake_driver_config`
structure to `uint16_t`. This is to match the expected type for the case
where  `TEST_IRQ_NUM = (CONFIG_NUM_IRQS - 1)`, on platforms with more
than 256 IRQs.

Signed-off-by: Youssef Zini <youssef.zini@savoirfairelinux.com>
2025-08-04 11:55:47 +01:00
Malte Werschy
6ceb672194 net: sockets: ensure socket obj core is only linked once
Repeated linking of socket object cores can corrupt the linked list.

Fixes: #93587

Signed-off-by: Malte Werschy <werschy.m@gmail.com>
2025-08-04 11:55:34 +01:00
Alberto Escolar Piedras
b0e6471cee manifest: Update nRF hw models to latest
Update the HW models module to:
40403f5f2805cca210d2a47c8717d89c4e816cda

Including the following:
40403f5 TIMER: Bugfix: Be sure to not use more than BITMODE bits
e1a976c RTC: Bugfix: Be sure to not use more than 24bits of CC like the HW
bfb5309 doc: Add nRF54LM20 to table of supported HW

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-08-04 11:54:59 +01:00
Yongxu Wang
d638caacea tests: drivers: pwm: add imx93_evk support for pwm_api test case
There are some issues with USERSPACE, so add an overlay to
disable CONFIG_TEST_USERSPACE, will drop it once it works.

Signed-off-by: Yongxu Wang <yongxu.wang@nxp.com>
2025-08-04 11:54:50 +01:00
Yongxu Wang
969ff6fddf soc: nxp: imx93: fix system tick idle issue on m33
clear SLEEP_HOLD_EN bit to make sure m33 system tick
works fine in idle task

Signed-off-by: Yongxu Wang <yongxu.wang@nxp.com>
2025-08-04 11:54:50 +01:00
Yongxu Wang
77a03b227d boards: nxp: imx93_evk: enable tpm2 pwm on cm33 core
enabled tpm2 interface on imx93_evk m33

Signed-off-by: Yongxu Wang <yongxu.wang@nxp.com>
2025-08-04 11:54:50 +01:00
Yongxu Wang
79486b630d boards: nxp: imx93_evk: add tpm2 pinmux support
Added tpm pinmux setting for imx93_evk board

Signed-off-by: Yongxu Wang <yongxu.wang@nxp.com>
2025-08-04 11:54:50 +01:00
Yongxu Wang
1e23dc0464 dts: arm: imx93_evk m33: add tpm nodes
Added all tpm nodes for imx93_evk m33

Signed-off-by: Yongxu Wang <yongxu.wang@nxp.com>
2025-08-04 11:54:50 +01:00
Parthiban Veerasooran
0261a7db22 ethernet: eth_sam_gmac: enable multiple TX pkt support for max throughput
This change enables GMAC_MULTIPLE_TX_PACKETS to allow multiple TX packets
to be pushed to the DMA engine, improving transmit performance. Previously,
older Zephyr versions (pre-v2.6.0) lacked thread-safe handling in net_pkt
and net_buf, making multiple TX enqueuing unreliable. Issue #32564
("net_buf reference count not protected") was fixed in v2.6.0, providing
proper thread safety. The changes have been tested on SAME54 Curiosity
Ultra with EVB-LAN8670-RMII and KSZ8061 PHY daughter card, and the
expected performance of 9.5Mbps at 10Mbps PHY link speed was observed.

Signed-off-by: Parthiban Veerasooran <parthiban.veerasooran@microchip.com>
2025-08-04 11:54:18 +01:00
Szymon Janc
9a948dc6a9 tests: Bluetooth: Update ICS to TCRL pkg100
No functional changes, only updated required profiles and GATT
depdendencies.

Signed-off-by: Szymon Janc <szymon.janc@codecoup.pl>
2025-08-04 11:53:55 +01:00
Venetia Furtado
44b4fff164 logging: backend: mqtt: Fixed MQTT compiler warning
Added const qualifier to fix the compiler warning

Signed-off-by: Venetia Furtado <venetiarosita@gmail.com>
2025-08-04 11:53:39 +01:00
Christoph Jans
f437ba41c8 boards: Add support for PG23 Pro Kit and PG28 Pro Kit
Adding pg23_pk2504a and pg28_pk2506a boards files.

Signed-off-by: Christoph Jans <jans.christoph@gmail.com>
2025-08-04 11:53:23 +01:00
Christoph Jans
dfb0ac3ae3 dts: silabs: Add dts and bindings for efm32pg23 and efm32pg28
Add device tree and support files for xg23/xg28 based devKit boards.

Signed-off-by: Christoph Jans <jans.christoph@gmail.com>
2025-08-04 11:53:23 +01:00
Christoph Jans
9d06c38fff soc: silabs: Add support for efm32pg23 and efm32pg28
Introducing the efm32pg23 and efm32pg28 Series 2 Silabs chips.

Signed-off-by: Christoph Jans <jans.christoph@gmail.com>
2025-08-04 11:53:23 +01:00
Håvard Reierstad
b799d1897b Bluetooth: Host: Use MTU min for l2cap test
The many_conn l2cap test used a MTU lower than the minimum permitted
value. This commit bumps it to the minimum (23).

Signed-off-by: Håvard Reierstad <haavard.reierstad@nordicsemi.no>
2025-08-04 11:52:01 +01:00
Håvard Reierstad
7debc8a8f5 Bluetooth: Host: Add conn rsp param check
Check whether the connection response parameters both with and without
ECRED are within the valid ranges from the Bluetooth Core Specification
(part 3.A.4 v6.0). Changes validation checks in requests to match the
same pattern.

Signed-off-by: Håvard Reierstad <haavard.reierstad@nordicsemi.no>
2025-08-04 11:52:01 +01:00
Vit Stanicek
75dd8a3a7c drivers: wm8962, wm8904: Fix clock config logic
Fix clock config logic of wm8962 and wm8904 drivers, so that both can be
properly configured for master (generating BCK and WS) and slave
(receiving those) operation.

Signed-off-by: Vit Stanicek <vit.stanicek@nxp.com>
2025-08-04 11:51:44 +01:00
Miguel Gazquez
5df200275d soc: riscv: sensry: Remove __soc_is_irq and disable unused config
The sy1xx SoC enabled CONFIG_RISCV_SOC_EXCEPTION_FROM_IRQ and provided
its own __soc_is_irq implementation. However, the behavior matches the
default implementation, making the override unnecessary.

This commit removes the custom implementation and disables the config
option to remove unnecessary code.

Signed-off-by: Miguel Gazquez <miguel.gazquez@bootlin.com>
2025-08-04 11:51:36 +01:00
Miguel Gazquez
022723752b soc: riscv: wch: Remove unused __soc_is_irq function
The __soc_is_irq function is only used when
CONFIG_RISCV_SOC_EXCEPTION_FROM_IRQ is enabled, which is not the case
for any WCH SoC. The implementation is therefore dead code.

Additionally, the implementation matches the default fallback behavior,
so no functional change would occur even if the config were enabled.

Signed-off-by: Miguel Gazquez <miguel.gazquez@bootlin.com>
2025-08-04 11:51:36 +01:00
Ha Duong Quang
fa64761be1 arch: arm: cortex_m: linker: fix mpu setup failure when XIP disabled
Add a padding section after the final read only data section
to avoid overlap between ROMABLE_REGION and RAMABLE_REGION.

Signed-off-by: Ha Duong Quang <ha.duongquang@nxp.com>
2025-08-04 11:50:39 +01:00
Ayush Singh
b3be861f0b boards: beagle: pocketbeagle_2: m4: Add watchdog
- Using mcu_rti0 as watchdog timer.
- Required for MicroPython.

Signed-off-by: Ayush Singh <ayush@beagleboard.org>
2025-08-04 11:50:20 +01:00
Ayush Singh
c345dffdfc dts: arm: ti: am62x_m4: Add mcu_rti0
- Add watchdog timer for mcu domain.

Signed-off-by: Ayush Singh <ayush@beagleboard.org>
2025-08-04 11:50:20 +01:00
Ayush Singh
15377632c0 drivers: watchdog: Add ti rti driver
- This driver is used in k3 generation CPUs from TI.
- Does not support callbacks right now.

Signed-off-by: Ayush Singh <ayush@beagleboard.org>
2025-08-04 11:50:20 +01:00
Ayush Singh
a86e84b85d dts: bindings: watchdog: Add TI RTI
- The compatible name is the same as used in Linux kernel
- It is the watchdog timer used in K3 generation of processors.

Signed-off-by: Ayush Singh <ayush@beagleboard.org>
2025-08-04 11:50:20 +01:00
e13881ff0c drivers: gpio: add pcal9722 SPI GPIO expander driver
Adds a driver for NXP's PCAL9722 SPI GPIO expander

Signed-off-by: Michael Estes <michael.estes@byteserv.io>
2025-08-04 11:49:29 +01:00
ff222e7c12 dts: bindings: gpio: add dts binding for NXP PCAL9722 SPI GPIO expander
Add DTS binding for NXP PCAL9722 SPI GPIO expander

Signed-off-by: Michael Estes <michael.estes@byteserv.io>
2025-08-04 11:49:29 +01:00
Daniel DeGrasse
a8ecd94044 drivers: display: display_st7796s: update for RGB format change
Zephyr is swapping the definitions of RGB565 and BGR565. Swap the return
values provided by this driver for supported pixel formats to account
for this.

Signed-off-by: Daniel DeGrasse <ddegrasse@tenstorrent.com>
2025-08-03 19:58:22 +01:00
Phi Bang Nguyen
a6602a45d0 display: stm32: ltdc: Revert the BGR565/RGB565 formats swap
This reverts the workaround made in the commit:

772fbfe9cc

as the proper fix has now been merged upstream.

Signed-off-by: Phi Bang Nguyen <phibang.nguyen@nxp.com>
2025-08-03 19:58:22 +01:00
Phi Bang Nguyen
bf8c0aebb3 include: display: Add more documentation for RGB565 and BGR565 formats
Add more detailed documentation for RGB565 and BGR565 formats.

Signed-off-by: Phi Bang Nguyen <phibang.nguyen@nxp.com>
2025-08-03 19:58:22 +01:00
Daniel DeGrasse
a294653848 drivers: mspi: mspi_dw: make sure controller is disabled at entry
Some systems (IE cores with bootloaders) may not disable the DW SPI
peripheral at boot time. Make sure the peripheral is disabled before we
try to configure it.

Signed-off-by: Daniel DeGrasse <ddegrasse@tenstorrent.com>
2025-08-03 19:58:12 +01:00
Daniel DeGrasse
fc64fec8fe drivers: mspi: mspi_dw: support DDR mode
Support DDR mode within the mspi_dw driver

Signed-off-by: Daniel DeGrasse <ddegrasse@tenstorrent.com>
2025-08-03 19:58:12 +01:00
Daniel DeGrasse
e425b3dd1c drivers: mspi: mspi_dw: improve reliability of CS signal
The designware controller has an *interesting* implementation of the CS
signal- CS will be de-asserted whenever the TX FIFO is empty, so slower
cores may see CS de-assert prematurely if they cannot keep pace with
their SPI peripheral. To help reduce odds of de-assertion, implement the
following changes:

- don't write SER bit until directly before we enable interrupts, so
  that transfers don't start early
- prefix the TX FIFO before writing SER, so the FIFO can drain a bit
  before have to service an interrupt

Signed-off-by: Daniel DeGrasse <ddegrasse@tenstorrent.com>
2025-08-03 19:58:12 +01:00
Daniel DeGrasse
9c829a1bbe drivers: mspi: mspi_dw: add API to configure RX_DLY timing
The SSI DW peripheral supports an RX_SAMPLE_DLY register in some
instances- this register controls the number of clock cycles from the
default sample time before the RX input is actually sampled. This can be
used to improve reliability when operating the SSI at a higher clock
speed.

Add an implementation of the mspi_timing_cfg api, and header to define
the identifier so that users can configure this parameter

Signed-off-by: Daniel DeGrasse <ddegrasse@tenstorrent.com>
2025-08-03 19:58:12 +01:00
Daniel DeGrasse
59d8fbc0a9 drivers: mspi: mspi_dw: support newer IP revisions
Bitmask offsets for the MSPI_DW peripheral are incorrect for the
4.03a databook for the DW APB SSI. Add a "v2" compatible to handle these
changed offsets. The compatible does not define new binding properties,
just modifies the register offsets.

Additionally, handle writing the DFS32 mask for v2 of this compatible,
as newer IP supports a dataframe size up to 32 bits.

Signed-off-by: Daniel DeGrasse <ddegrasse@tenstorrent.com>
2025-08-03 19:58:12 +01:00
Daniel DeGrasse
5dbaa86282 drivers: mspi: mspi_dw: properly support multi-level interrupts
Multilevel interrupts require that the irq number be read with DT_IRQN,
so update the driver to use this macro.

Signed-off-by: Daniel DeGrasse <ddegrasse@tenstorrent.com>
2025-08-03 19:58:12 +01:00
Daniel DeGrasse
cb31e67c49 drivers: mspi: mspi_dw: make pinctrl include conditional
The remainder of this driver functions when pin control is disabled,
so make the include conditional as well to fully support this case.

Signed-off-by: Daniel DeGrasse <ddegrasse@tenstorrent.com>
2025-08-03 19:58:12 +01:00
Daniel DeGrasse
98c0cc4e67 drivers: mspi: supply empty vendor specific macros for generic case
Supply empty vendor specific macros for cases where vendor specific
functions are not needed by driver.

Signed-off-by: Daniel DeGrasse <ddegrasse@tenstorrent.com>
2025-08-03 19:58:12 +01:00
Maureen Helm
3da3959a79 boards: adi: Enable usb on additional max32690-based boards
USB support was previously introduced for the max32 soc family on the
max32690evkit board; this change extends that support to two additional
boards with the same soc: apard32690 and max32690fthr.

Signed-off-by: Maureen Helm <maureen.helm@analog.com>
2025-08-02 13:20:13 +02:00
Henrik Brix Andersen
2ee6ebf3f1 drivers: can: native_linux: use CiA recommeded configurations ranges
Use the CAN clock and configuration ranges recommended by CAN in Automation
(CiA).

Signed-off-by: Henrik Brix Andersen <henrik@brixandersen.dk>
2025-08-02 13:20:02 +02:00
Peter Mitsis
4cc973986d arch: Update arch_is_in_isr() SMP implementations
Fixes a flaw in implementations of arch_is_in_isr() that could manifest
on SMP systems. If the reading of the current CPU's nested interrupt
count is not fully atomic on an SMP system, then an ill-timed context
switch could occur leaving the caller reading the nested interrupt
count of a different CPU.

This also applies a little defensive programming to cortex_a_r's
arch_is_in_nested_exception(). Although this routine is presently
only called with interrupts locked (which will prevent the thread
from migrating), switching to use _current_cpu instead of
arch_curr_cpu() is safer as should the routine ever be called
without meeting the locking criteria, it can be detected and fixed.

Signed-off-by: Peter Mitsis <peter.mitsis@intel.com>
2025-08-02 13:19:56 +02:00
Peter Mitsis
85b8ae9b6a arch: xtensa: Fix arch_is_in_isr() race condition
Fixes a flaw in the the xtensa implementation of arch_is_in_isr()
that could manifest on SMP systems. If the reading of the current
CPU's nested interrupt count is not fully atomic on an SMP system,
then an ill-timed context switch could occur leaving the caller
reading the nested interrupt of a different CPU.

Signed-off-by: Peter Mitsis <peter.mitsis@intel.com>
2025-08-02 13:19:21 +02:00
Neil Chen
4e2b0cdf05 boards: frdm_mcxa153, frdm_mcxa156: add ostimer support
1. add ostimer support
2. update ostimer as default kernel timer

Signed-off-by: Neil Chen <cheng.chen_1@nxp.com>
2025-08-02 13:18:46 +02:00
Bas van Loon
d8bd0f9232 samples: fs: Add EXT2 automount sample.
Add a simple sample that tests the functionality of the EXT2 automount
feature. The sample creates a ramdisk and writes some content and tries
to read it back after unmount and mount operation.

Signed-off-by: Bas van Loon <bas@arch-embedded.com>
2025-08-02 13:18:15 +02:00
Bas van Loon
88a09e6379 fs: Implement fstab devicetree integration for EXT2
Device tree and/or automount support was not present and might be useful
when for example the settings module needs early access to a filesystem.
This patch adds support to mount an EXT2 filesystem automatically. The
implementation chosen is to provide the drive name matching a disk
drive specified in the device tree ie on an (e)MMC or SD card.

Signed-off-by: Bas van Loon <bas@arch-embedded.com>
2025-08-02 13:18:15 +02:00
Bas van Loon
4a09047b0e drivers: bluetooth: hci_nxp_setup: Prevent re-init of CRC table.
The CRC32 table only needs to be generated once, so prevent it from
regenerating every time as it only required once.

Signed-off-by: Bas van Loon <bas@arch-embedded.com>
2025-08-02 13:17:58 +02:00
Gaetan Perrot
6c569c5bfa dts: binding: vendor-prefixes: Remove duplicate vendor prefix
The "spacecubics" entry was redundant as we use the "sc" prefix for Space
Cubics, Inc.

Removing this duplicate to avoid confusion and maintain consistency in
vendor naming.

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2025-08-01 19:40:05 +01:00
Jamie McCrae
77f19eb1b5 fs: zms: Add FLASH_MAP dependency
ZMS does not work without this and gives compilation errors, fix
this by adding the correct dependency

Signed-off-by: Jamie McCrae <spam@helper3000.net>
2025-08-01 19:38:48 +01:00
Anas Nashif
6c85528cbe tracing: ctf: fix arguments for timer_status_sync
In the metadata, found that timer_status_sync_pending was missing the
timeout parameter. Noticed when tracing tests/kernel/common.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-08-01 19:38:40 +01:00
Anas Nashif
d794732087 tracing: ctf: add missing k_sleep events
In a096b34835 which introduced tracing of k_sleep, the events in the
metadata file were missed causing issues when running with babeltrace.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-08-01 19:38:40 +01:00
Eve Redero
2fbf09372a doc: bindings: auxdisplay: add supported series
Add details on series supported by Noritake Itron driver.
Upon reading datasheets, series CU-TE, CU-Y, GU-3000, GU-7000 and
GU-D have commands matching the driver, whereas series CU-U, CU-TW,
and GU-800 use different command sets.

Signed-off-by: Eve Redero <eve.redero@gmail.com>
2025-08-01 19:38:08 +01:00
Robert Lubos
4300820e43 samples: net: zperf: Disable timeslicing
Throughputs achieved by the sample are a bit better with timeslicing
disabled, therefore disable it for best out-of-the-box experience.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-08-01 19:37:52 +01:00
Tim Pambor
62ae9c79d2 net: if: Fix net_if_list iteration issue for offloaded interfaces
Disable ASAN for net_if config to avoid iteration issues caused by
AddressSanitizer padding.

Signed-off-by: Tim Pambor <tim.pambor@codewrights.de>
2025-08-01 19:37:43 +01:00
Emil Gydesen
8788f8ba26 Bluetooth: BAP: Add target latency and phy to codec_cfg
The codec configuration operation for unicast (ASCS) contain
both a target PHY and a target latency value that was previously
just hardcoded by the client and unavailable by the server.

This commit adds them to the bt_audio_codec_cfg struct so that
applications can both set and get these values.

The default values used by BT_AUDIO_CODEC_CFG use the same
values as the client would previously set.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-08-01 19:37:31 +01:00
Dmitrii Sharshakov
1c9c0b0d2b drivers: can: can_native_linux: set max bitrate
This enables applications to call timing configuration functions,
which enables more applications to work on native_sim.

Signed-off-by: Dmitrii Sharshakov <d3dx12.xx@gmail.com>
2025-08-01 19:37:24 +01:00
Henrik Brix Andersen
1dbd552b2e boards: native: native_sim: add reference to the SocketCAN snippet
Add reference to the SocketCAN snippet.

Signed-off-by: Henrik Brix Andersen <henrik@brixandersen.dk>
2025-08-01 19:37:08 +01:00
Henrik Brix Andersen
81f5a801e3 snippets: add snippet for enabling SocketCAN support on native_sim
Add snippet for enabling Linux SocketCAN support on the native simulator.

Signed-off-by: Henrik Brix Andersen <henrik@brixandersen.dk>
2025-08-01 19:37:08 +01:00
Lauren Murphy
69a3ed2753 llext: replace stripping script with call to zephyr sdk strip
Replace custom stripping script with a call to Zephyr SDK strip.

Signed-off-by: Lauren Murphy <lauren.murphy@intel.com>
2025-08-01 19:36:59 +01:00
Lauren Murphy
c792d78cb3 llext: add fixes for various tests on mwdt / harvard arch
Adds fixes to get LLEXT tests to work for NSIM VPX on MWDT.

Excludes prelocated extensions for MWDT for now.

Signed-off-by: Lauren Murphy <lauren.murphy@intel.com>
2025-08-01 19:36:59 +01:00
Lauren Murphy
a444f7ded8 llext: add reloc and symbols for mwdt
Adds relocation and symbols generated by MWDT while using it
for NSIM VPX5.

Signed-off-by: Lauren Murphy <lauren.murphy@intel.com>
2025-08-01 19:36:59 +01:00
Lauren Murphy
a4274f884b llext: dynamic heap support for harvard arch
Adds support for LLEXT_HEAP_DYNAMIC with Harvard architecture.

Signed-off-by: Lauren Murphy <lauren.murphy@intel.com>
2025-08-01 19:36:59 +01:00
Lauren Murphy
944aa8174c llext: run on harvard arch with static heaps
Splits LLEXT static heap into an instruction heap placed in
instruction memory and a data heap placed in data memory.

Signed-off-by: Lauren Murphy <lauren.murphy@intel.com>
2025-08-01 19:36:59 +01:00
Lauren Murphy
92db7bcf11 llext: compile llext with arc mwdt on nsim vpx5
Allow users to compile LLEXTs with the MetaWare Design Toolchain.
Provides utility to dramatically shrink bloated extensions by removing
unused section names left behind by MWDT strip. Test extensions will
not fit in NSIM VPX5 memory otherwise; each is reduced from ~16k to ~1k.

Signed-off-by: Lauren Murphy <lauren.murphy@intel.com>
2025-08-01 19:36:59 +01:00
Dmitrii Sharshakov
a610e0ec82 bluetooth: hci: userchan: support connecting over UNIX socket
Can be used with Bluez btvirt

Signed-off-by: Dmitrii Sharshakov <d3dx12.xx@gmail.com>
2025-08-01 19:36:43 +01:00
Håvard Reierstad
2b42a1d81d Bluetooth: Host: Add l2cap credit param checks
Adds a missing requirement from Core Spec V6.0 Vol 3.A chapters 10.1
and 10.2 to ignore L2CAP_FLOW_CONTROL_CREDIT_IND packets with the
credit value set to 0.

Matches existing credit-related functions by checking that the CID
is in the dynamic range (you can't add credits to fixed channels).

Signed-off-by: Håvard Reierstad <haavard.reierstad@nordicsemi.no>
2025-08-01 12:20:43 -04:00
Franck Duriez
06bcb5a222 test: driver/fuel_gauge/sy24561: add test
Add test for fuel gauge SY24561

Signed-off-by: Franck Duriez <franck.lucien.duriez@gmail.com>
2025-08-01 12:20:25 -04:00
Franck Duriez
5f84be617e driver: fuel_gauge/sy24561: add emulator
Add emulator for fuel gauge SY24561

Signed-off-by: Franck Duriez <franck.lucien.duriez@gmail.com>
2025-08-01 12:20:25 -04:00
Franck Duriez
8ef13d072e driver: fuel_gauge/sy24561: add driver
Add driver for silergy sy24561 fuel gauge

Signed-off-by: Franck Duriez <franck.lucien.duriez@gmail.com>
2025-08-01 12:20:25 -04:00
Declan Snyder
81dea9603b tests: spi_loopback: Add arduino overlay for CS test
Add overlay for arduino r3 for the CS testing enablement of the test.

Since I do not know the hardware range situations of all the vendors,
for now I just put this as a platform_allow for two different version
LPSPI platforms. RT1050 has LPSPI v1 and MCXN has LPSPI v2. On MCXN,
lower the SPI priority to let the GPIO interrupt process in time.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-08-01 12:19:53 -04:00
Gaetan Perrot
e85c5b6f24 boards: scobc_a1: Reformat and update copyright
Update header with proper year and author.

Also fix indentation and minor formatting in scobc-a1.cfg.

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2025-08-01 07:58:13 -04:00
Gaetan Perrot
a307b3acd4 doc: scobc_a1: Explain OpenOCD interface selection
Explain how to use CMSIS-DAP, FT2232D, or FT232R interfaces by setting the
OPENOCD_INTERFACE environment variable when flashing the SC-OBC Module A1.

This reflects the recent unification of OpenOCD configuration scripts and
the default selection of CMSIS-DAP as the standard interface.

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2025-08-01 07:58:13 -04:00
Takuya Sasaki
9df66e6592 boards: scobc_a1: Cleanup OpenOCD script
The default OpenOCD interface for the SC-OBC Module A1 has changed to
CMSIS-DAP, with standard interfaces such as the Raspberry Pi Pico Debug
Probe.

To accommodate multiple debug interfaces, the OpenOCD scripts have been
cleaned up.

If you still wish to use FT2232D or FT232R interface,
please set the following environment variable before running
`west flash`:

  $ export OPENOCD_INTERFACE=FT2232D
  $ west flash

  $ export OPENOCD_INTERFACE=FT232R
  $ west flash

Signed-off-by: Takuya Sasaki <takuya.sasaki@spacecubics.com>
Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2025-08-01 07:58:13 -04:00
Camille BAUD
633c0fe234 drivers: misc bflb updates
mostly makes things a little bit safer

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-08-01 07:57:36 -04:00
Camille BAUD
bdffc08279 bflb: Make BL60x independant from SDK
Reorganize and update soc folder files for SDK-independance
Reorganize and update hal_bouffalolab files for SDK-independance
Reorganize and update soc dts files for SDK-independance
Update serial and pinctrl driver files for SDK-independance
Update ai_wb2_12f, bl604e_iot_dvk, and dt_bl10_dvk
to new bl60x support
and fixup openocd config of ai_wb2_12f

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-08-01 07:57:36 -04:00
Camille BAUD
0c352f1b3a soc: bflb: re-add ATOMIC_OPERATIONS_C
This reverts 514258aa23
which causes issues here

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-08-01 07:57:36 -04:00
Gaetan Perrot
22dd888365 drivers: tee: optee: fix possible null pointer dereference
Add check for supp->current being NULL before accessing num_params in
error log.

Prevent potential NULL pointer dereference and crash when invalid
parameter count

Improve error messages for better debugging in cases with no current
request or wrong param count.

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2025-08-01 07:56:54 -04:00
Fin Maaß
56bf288ed8 soc: litex: add array functions to soc.h
adds functions to read and write arrays to the soc.h file.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-08-01 07:55:01 -04:00
Fin Maaß
5a0fba3b9d soc: litex: support little CSR ordering
litex supports little CSR ordering, also support
it in zephyr. historical the default is big ordering.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-08-01 07:55:01 -04:00
Fin Maaß
0a2140589a soc: litex: check CONFIG_LITEX_CSR_DATA_WIDTH
Litex only supports CONFIG_LITEX_CSR_DATA_WIDTH
with 8 and 32 bit, enforce it here too.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-08-01 07:55:01 -04:00
Fin Maaß
456bfbff5d soc: litex: use generic data types
use generic data types

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-08-01 07:55:01 -04:00
Gaetan Perrot
b59d9f2f85 arch: riscv: core: fpu: mark unused function argument
Use ARG_UNUSED() to mark unused function argument.

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2025-08-01 07:54:11 -04:00
Gaetan Perrot
470f3aff83 arch: riscv: core: pmp: mark unused function argument
Use ARG_UNUSED() to mark unused function argument.

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2025-08-01 07:54:11 -04:00
Gaetan Perrot
6f8453f39d arch: sparc: core: thread: mark unused function argument
Use ARG_UNUSED() to mark unused function argument.

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2025-08-01 07:54:11 -04:00
Gaetan Perrot
46341938eb arch: xtensa: core: thread: mark unused function argument
Use ARG_UNUSED() to mark unused function argument.

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2025-08-01 07:54:11 -04:00
Gaetan Perrot
f997d7e51f dts: binding: vendor-prefixes: Update Space Cubics legal entity
Space Cubics changed its legal entity status from "LLC" to "Inc." as of
June 1st, 2025.

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2025-08-01 07:51:51 -04:00
Anas Nashif
b1a3dc00b0 twister: report: switch --detailed-test-id logic
now no-detailed-test-id is enabled by default, so switch the logic so we
do not require the extra parameter when reruning.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-08-01 07:50:10 -04:00
Anas Nashif
7b1cc710b1 ci: test_plan: do not filter same test with different toolchain
Make sure we get same test with different tests included.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-08-01 07:50:10 -04:00
Anas Nashif
45596b7d71 ci: test_plan: fix detailed test id handling
detailed test id is no longer default, so switch the logic to deal with
that.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-08-01 07:50:10 -04:00
Anas Nashif
5d3adb00e3 tests: net: http: also build with clang
Build this test also with clang to increase coverage. This test is
selected because it had some issues with clang, however, there is
nothing special about this tests when it comes to clang, it will be one
of many to come to increase coverage.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-08-01 07:50:10 -04:00
Maochen Wang
92c56cc39e manifest: sync hal_nxp to update wifi driver version
upgrade wifi driver version to r52.p3 and update the TX API.

Signed-off-by: Maochen Wang <maochen.wang@nxp.com>
2025-08-01 07:49:55 -04:00
Maochen Wang
22a05e6a4e drivers: wifi: nxp: update the TX data API
Update the TX data API to support distinguishing if this packet is from
net stack or from internal packet forwarding case.

Signed-off-by: Maochen Wang <maochen.wang@nxp.com>
2025-08-01 07:49:55 -04:00
Alberto Escolar Piedras
059186558f boards nrf_bsim: Add docs for new nrf54lm20bsim target
Add documentation for new simulated nRF54LM20 target

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-08-01 07:48:27 -04:00
Alberto Escolar Piedras
b82baf66af doc: bsim boards: Typo fixes
Just a few grammar fixes

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-08-01 07:48:27 -04:00
Chaitanya Tata
52bf8fbf61 tests: nrf70: bustest: Add more QSPI tests
Add tests based on QSPI command register, this is the entry point even
before we test nRF70 internal memories.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-08-01 07:47:59 -04:00
Chaitanya Tata
e17fe78a70 modules: nrf_wifi: Add generic read/write APIs
These can be used read/write any address.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-08-01 07:47:59 -04:00
Tom Hughes
ea5412ece4 arch: arm: cortex_m: Add debug.h header
Since #75677, it has not been possible to build with
CONFIG_NULL_POINTER_EXCEPTION_DETECTION_DWT enabled since there was no
declaration of z_arm_debug_enable_null_pointer_detection before its use
in arch/arm/core/cortex_m/prep_c.c.

This change creates an arch/arm/include/cortex_m/debug.h header that
contains declarations for the functions in
arch/arm/core/cortex_m/debug.c.

Signed-off-by: Tom Hughes <tomhughes@chromium.org>
2025-08-01 07:47:28 -04:00
WenBin Zhang
b54f4386bd net: shell: Move to a separate Kconfig file
Move it to a separate Kconfig file and move it under the net/lib/shell.
When using menuconfig, it helps to reduce the confusion of network
configuration options.

Signed-off-by: WenBin Zhang <freey7955@gmail.com>
2025-08-01 07:46:11 -04:00
Guennadi Liakhovetski
9ce6d3599c xtensa: export syscall helpers
When building with user space and LLEXT support, syscall helpers need
to be exported.

Signed-off-by: Guennadi Liakhovetski <guennadi.liakhovetski@linux.intel.com>
2025-08-01 07:45:16 -04:00
Jamie McCrae
748b4915ba boards: Remove help text from SoC selection Kconfigs
Help text here adds the symbols to and pollutes the Kconfig search
with options that should not be visible and have no use to anyone

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-08-01 07:44:39 -04:00
Dong Wang
52cc73d9dc dts: intel_ish: Improve and extend ISH dts files
- Add uart1 and uart2 nodes to intel_ish5.dtsi with all required
properties.
- Consistently place properties for all nodes.
- Add #interrupt-cells to the soc node.
- Update intel_ish5_8.dtsi: overrides interrupt and status for
uart1, uart2, and dma0.

These changes add missing peripherals, unify property layout, and
improve clarity for Intel ISH platforms.

Signed-off-by: Dong Wang <dong.d.wang@intel.com>
2025-08-01 07:43:16 -04:00
Seppo Takalo
d0cba34c7f net: lwm2m: Prevent QUEUE_RX_OFF while waiting for CoAP Ack
The LwM2M RD client state machine have no knowledge of ongoing
observations or any other CoAP traffic and might trigger
QUEUE_RX_OFF state while engine is still waiting for Ack.

This can happen if CoAP Ack timeout is longer than
CONFIG_LWM2M_QUEUE_MODE_UPTIME and response is lost or taking
longer than QUEUE_MODE_UPTIME.

When observation is lost, CoAP Ack may be send, but socket is not
listening anymore if its closed or not polled while in RX_OFF and this
stops observation.

Signed-off-by: Seppo Takalo <seppo.takalo@nordicsemi.no>
2025-08-01 07:39:16 -04:00
Kevin Wang
5ac8c48a0a tests: drivers: spi: adp_xc7k_ae350.conf for SPI_LARGE_BUFFER_SIZE
Due to the hardware transmission limitation of SPI in adp_xc7k_ae350
(maximum of 512 bytes per transfer), CONFIG_SPI_LARGE_BUFFER_SIZE is
specified in the board configuration in the spi_loopback test.

Signed-off-by: Kevin Wang <kevinwang821020@google.com>
2025-07-31 17:17:50 -04:00
Kevin Wang
68183ce1d6 drivers: spi: atcspi200: determining if spi is used as a flash controller
XIP may indicate that the program is executed either in local memory
or flash. However, the SPI node is only used as a flash controller
when the program is executed in flash.
Therefore, optimize the related checks to ensure that when XIP is
enabled but the program is executed in local memory, the SPI node
can still be used.

Signed-off-by: Kevin Wang <kevinwang821020@google.com>
2025-07-31 17:17:50 -04:00
Kevin Wang
f817f62021 drivers: spi: atcspi200: Fix the bug for inconsistent TX/RX lengths.
1. Due to the hardware limitations of the ATCSPI200 IP, the transmission
   and reception counts must be consistent. If there is a mismatch in
   length, dummy data needs to be transmitted or received.
   Under this limitation, using the spi_context_xx related APIs to
   determine whether the transmission is complete may cause issues in
   certain situations.
   Therefore, additional variables are set to record the exact number of
   bytes need to be transmitted or received.
2. Also, fix some inaccuracies in configuring DMA transfers.

Signed-off-by: Kevin Wang <kevinwang821020@google.com>
2025-07-31 17:17:50 -04:00
Jordan Yates
1e6af82e80 fuel_gauge: composite: query sources for capacity and soc
Query the configured data sources for capacity and soc information
before falling back to the composite fuel gauge configuration. This
means the battery properties are no longer required.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-07-31 17:16:53 -04:00
Jordan Yates
3ef54ccc5c fuel_gauge: composite: support FUEL_GAUGE_TEMPERATURE
Add support for the `FUEL_GAUGE_TEMPERATURE` property.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-07-31 17:16:53 -04:00
Jordan Yates
da526b51a8 fuel_gauge: composite: choose sensor channel types
Choose whether the data sources should be queried by the generic sensor
channels (`SENSOR_CHAN_VOLTAGE`, etc), or the fuel guage specific
channels (`SENSOR_CHAN_GAUGE_*`).

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-07-31 17:16:53 -04:00
Jordan Yates
7827b7e4ca fuel_gauge: composite: more flexible data sourcing
Instead of explicitly specifying the source for the voltage and current
channels, specify primary and secondary data sources. If the requested
sensor channel does not exist on the primary source, the secondary
source will be tried.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-07-31 17:16:53 -04:00
Jordan Yates
aed7ae5dda fuel_gauge: composite: switch to tick based sampling
To ensure that data is consistent across multiple sequential calls to
`fuel_gauge_get_prop`, sensor_fetch is only called if a certain time
period has passed since the previous sampling. This emulates the
tick-based sampling of most dedicated fuel-gauge devices.

Signed-off-by: Jordan Yates <jordan@embeint.com>

tick
2025-07-31 17:16:53 -04:00
Fan Wang
7ea280466b drivers: sdhc: Add support for Apollo510 SDIO host
This commit added support for Apollo510 SDIO host driver and
ambiq board configuration in fs_sample and disk_performance

Signed-off-by: Fan Wang <fan.wang@ambiq.com>
2025-07-31 17:16:12 -04:00
Xing Chen
366d938071 boards: microchip: sam: add led and button device for sama7g54-ek
Devices has been verified by samples/basic/button

Signed-off-by: Xing Chen <xing.chen@microchip.com>
2025-07-31 17:15:27 -04:00
Xing Chen
c9fa37e592 dts: microchip: sam: add pio device to sama7g5
Add pioa, piob, pioc, piod and pioe devices to sama7g5

Signed-off-by: Xing Chen <xing.chen@microchip.com>
2025-07-31 17:15:27 -04:00
Xing Chen
7eb6e519d7 drivers: gpio: add gpio for sama7g5
Add driver for sama7g5 GPIO controller (PIO4)

Signed-off-by: Xing Chen <xing.chen@microchip.com>
2025-07-31 17:15:27 -04:00
Emil Gydesen
b76f09dc04 Bluetooth: ISO: Fix issue with BIS tx_complete
BIS termination as broadcaster is handled different
than ACL and CIS, and in rare chances the
tx_complete for BIS may not have been completed in
the system workqueue before iso_new was called for the
same bt_conn struct (e.g. via bt_iso_cig_create), which
would perform

k_work_init(&conn->tx_complete_work, tx_complete_work);

but where conn->tx_complete_work still existed in
the system workqueue, which would cause the list
of pending items on the system workqueue to be removed
as the `next` pointer would be NULL.

This also adds an assert in bt_conn_new to prevent this
issue from appearing again.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-07-31 17:14:21 -04:00
Jiafei Pan
5ec14f8719 west.yml: depends on hal_nxp PR
Tmp patch to depend on hal_nxp PR 577

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-07-31 17:13:21 -04:00
Jiafei Pan
e99b480189 modules: hal_nxp: move armv8-a cache driver to mcux-sdk-ng
Moved armv8-a cache driver from mcux-sdk to mcux-sdk-ng.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-07-31 17:13:21 -04:00
Adrian Bieri
c14b7e3e89 drivers: xbarb: include xbarb driver when config is set
CONFIG_MCUX_XBARB includes CONFIG_MCUX_COMPONENT_driver.xbarb now

Signed-off-by: Adrian Bieri <adrian.bieri@loepfe.com>
2025-07-31 17:12:22 -04:00
Vit Stanicek
e679ef486a hal_nxp: Factorise inclusion of fsl_inputmux
Create Kconfig variable NXP_INPUTMUX, which selects the fsl_inputmux
driver. Imply the MCUX component symbol from it. Imply that variable
from the NXP PINT, SmartDMA and LPC DMA drivers and from the mimxrt685s
SoC.

This needed to be done for the mimxrt700_evk/mimxrt798s/hifi4 domain, as
the INPUTMUX peripheral handles IRQ assginments and its driver
(fsl_inputmux) is used directly by the domain's soc.c. Instantiating the
currently dependent drivers (for PINT and SmartDMA) isn's possible nor
reasonable on the said target.

Signed-off-by: Vit Stanicek <vit.stanicek@nxp.com>
2025-07-31 17:11:54 -04:00
Travis Lam
5274d66019 drivers: flash: nordic: nrf_mramc update
Remove cache invalidation after flash write,
cpu should automatically invalidate cache but
for HW erase invalidation needed due to erase
from different bus.

Signed-off-by: Travis Lam <travis.lam@nordicsemi.no>
2025-07-31 17:11:30 -04:00
Jonas Spinner
91ec38d7e0 Bluetooth: Classic: SDP: Replace magic numbers
Replace magic UUID sizes with `sizeof(uint8_t) +
BT_UUID_SIZE_{16,32,128}`.

Signed-off-by: Jonas Spinner <jonas.spinner@burkert.com>
2025-07-31 17:10:57 -04:00
Jonas Spinner
9d7aa28eb4 Bluetooth: Classic: SDP: Adjust doc comment
Align example UUID in doc comment with UUID in example code.

Signed-off-by: Jonas Spinner <jonas.spinner@burkert.com>
2025-07-31 17:10:57 -04:00
Jukka Rissanen
9125f07392 tests: net: dns: Add tests for resolving hostname or localhost
Make sure we are able to resolve the localhost or local hostname.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-07-31 17:10:45 -04:00
Jukka Rissanen
6797fa642d net: sockets: Allow test to override DNS timeout
The minimum 1 sec timeout for getaddrinfo() call is too long
when executing queries from network tests. So allow test to override
the minimum and set it to very low value.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-07-31 17:10:45 -04:00
Jukka Rissanen
80e458ce7b net: dns: Resolve localhost name
Allow user to query localhost name and get a localhost address
127.0.0.1 or ::1 back. This is only enabled if loopback driver
is used as the use case does not make much sense otherwise.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-07-31 17:10:45 -04:00
Jukka Rissanen
cb163d1f28 net: dns: Resolve local hostname
Make sure that if user has enabled hostname support, we are
able to query it and get a local IP address back.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-07-31 17:10:45 -04:00
Jonas Spinner
6fd48df18f rtio: workq: Remove unused Kconfig option
* Remove `RTIO_WORKQ_STACK_SIZE` as it is no longer used.
* Fix description of `RTIO_WORKQ_THREADS_POOL_STACK_SIZE`.

Signed-off-by: Jonas Spinner <jonas.spinner@burkert.com>
2025-07-31 16:51:14 -04:00
Matt Wood
678f1bdba7 fuel_gauge: restructure cmake libraries
Adjusted drivers to include sources into a single library
to allow for the use of zephyr_library_amend when extending
with out of tree drivers in workspace projects inline with other
driver groups structure

Signed-off-by: Matt Wood <matt.wood@corintech.com>
2025-07-31 16:50:59 -04:00
Martin Hoff
48d80ef439 tests: app_dev: ram_context_for_isr: update IRQ configuration
This commit modifies the IRQ number and priority definitions in the
fake_driver.c file to accommodate different platform configurations.
The condition are based on nested_irq test file.

Signed-off-by: Martin Hoff <martin.hoff@silabs.com>
2025-07-31 16:50:11 -04:00
Andrey Dodonov
a4fa5de807 drivers uart_native_posix: mention that pty supports async
With CONFIG_UART_ASYNC_API pty driver for native sim now supports async

Signed-off-by: Andrey Dodonov <Andrey.Dodonov@endress.com>
2025-07-31 16:49:23 -04:00
Karsten Koenig
96d062add8 boards: nordic: nrf54h20dk: Add ETM to JLinkScript
Added support for ETM tracing via TPIU to the JLinkScript.

Signed-off-by: Karsten Koenig <karsten.koenig@nordicsemi.no>
2025-07-31 07:41:53 -04:00
Karsten Koenig
130625e737 soc: nrf54h: Configure CTRLSEL and pin for TRACE
Configure the CTRLSEL value and the clock pin so that the TRACE pins
work when the TDD gets used.

Signed-off-by: Karsten Koenig <karsten.koenig@nordicsemi.no>
2025-07-31 07:41:53 -04:00
Karsten Koenig
7c813bf00f soc: nordic: ironside: Add TDD
Added support for the IronSide TDD service which allows configuring and
powering the trace and debug domain of the nrf54h20.
Also provide option to start the trace and debug domain in the soc start
sequence.

Signed-off-by: Karsten Koenig <karsten.koenig@nordicsemi.no>
2025-07-31 07:41:53 -04:00
Stefan Schmidt
097463285c boards: shields: Add support for the Adafruit Featherwing 128x32 OLED
The Adafruit Featherwing 128x32 OLED board supports a SSD1306 compatible
OLED display with a resolution of 128 x 32 and three user buttons. It has
been tested with the Adafruit Feather nRF52840 and the sample
samples/subsys/display/lvgl.

Signed-off-by: Stefan Schmidt <kontakt@stefanschmidt-embedded.de>
2025-07-31 07:38:39 -04:00
Cla Mattia Galliard
26d98f514f zms: Fix confusing sentence in API-docs
Fix confusing sentence in api docs of function 'zms_get_data_length'. There
is no 'history counter' assosiated with the api of that function.

Signed-off-by: Cla Mattia Galliard <cla-mattia.galliard@zuehlke.com>
2025-07-31 07:36:32 -04:00
Yishai Jaffe
9470cd035d dts: silabs: migrate includes to <zephyr/...>
In order to bring consistency in-tree, migrate all dts code to the new
prefix <zephyr/...>. Refer to #45388 for more details.

Signed-off-by: Yishai Jaffe <yishai1999@gmail.com>
2025-07-31 07:36:08 -04:00
Yishai Jaffe
d6189db11d dts: silabs: make sram definition consistant
Made the definition of sram in the dtsi consistant across the socs.

Signed-off-by: Yishai Jaffe <yishai1999@gmail.com>
2025-07-31 07:36:08 -04:00
Michal Kozikowski
6c72cd3e65 cmake: mcuboot: SHA512/pure image signing
Update signing script to use proper arguments for imgtool when SHA512
or pure signature is needed.

Signed-off-by: Michal Kozikowski <michal.kozikowski@nordicsemi.no>
2025-07-31 07:34:40 -04:00
Karol Lasończyk
8f2d3e7623 soc: nordic: Extend address validation to cover GPREGRET
Extension of the validate_base_addresses.c file to cover GPREGRET
in all Nordic SoCs.

Signed-off-by: Karol Lasończyk <karol.lasonczyk@nordicsemi.no>
2025-07-31 10:53:43 +01:00
Karol Lasończyk
d55ee09e1a dts: nordic: Fix GPREGRET addresses for nRF54LM20A
Fix for wrongly addressed GPREGRET space.

Signed-off-by: Karol Lasończyk <karol.lasonczyk@nordicsemi.no>
2025-07-31 10:53:43 +01:00
WenBin Zhang
d01edb10e1 tracing: Fix k_mem_slab_free tracing systemview
Fix k_mem_slabe_free tracing error.

Signed-off-by: WenBin Zhang <freey7955@gmail.com>
2025-07-31 10:53:30 +01:00
Hui Bai
1198d78898 hostap: Update 11k roaming mechanism
With this changes, device will check if AP support Neighbor Report or
not before trigger roaming. No need to issue 11k command to enable 11k,
if AP supports Neighbor Report, device will trigger 11k roaming with
priority.

Signed-off-by: Hui Bai <hui.bai@nxp.com>
2025-07-31 10:53:19 +01:00
Flavio Ceolin
56e2b01e53 bt: controller: Use proper flexible array
0 length array is a GNU extension. Use proper C99 flexible
array.

Signed-off-by: Flavio Ceolin <flavio@hubblenetwork.com>
2025-07-31 10:52:49 +01:00
Flavio Ceolin
4ae867b12d bt: audio: Use proper flexible array
0 length array is a GNU extension. Use proper C99 flexible
array.

Signed-off-by: Flavio Ceolin <flavio@hubblenetwork.com>
2025-07-31 10:52:49 +01:00
Flavio Ceolin
39cf9bd0c0 net: ip: Use proper flexible array
0 length array is a GNU extension. Use proper C99 flexible
array.

Signed-off-by: Flavio Ceolin <flavio.ceolin@gmail.com>
2025-07-31 10:52:49 +01:00
Flavio Ceolin
1ccf9391bc shell: Use proper flexible array
0 length array is a GNU extension. Use proper C99 flexible
array.

Signed-off-by: Flavio Ceolin <flavio.ceolin@gmail.com>
2025-07-31 10:52:49 +01:00
Flavio Ceolin
eaaa2e197d log: multidomain: Use proper flexible array
0 length array is a GNU extension. Use proper flexible array.

Signed-off-by: Flavio Ceolin <flavio.ceolin@gmail.com>
2025-07-31 10:52:49 +01:00
Flavio Ceolin
805701da49 bt: host: Use proper flexible array
0 length array is a GNU extension. Use proper C99 flexible
array.

Signed-off-by: Flavio Ceolin <flavio.ceolin@gmail.com>
2025-07-31 10:52:49 +01:00
Vit Stanicek
9969ae59d9 samples: rtxxx-amp: Enable mimxrt700_evk/mimxrt798s/hifi4
Add remote target selection. Explicitly enable GPIO support in
amp_blinky. Disable peripherals driven from the hifi4 domain in the
cm33_cpu0 domain to overcome resource conflicts. Select mailboxes for
amp_mbox. Set CONFIG_DMA_TCD_QUEUE_SIZE for amp_audio_output and
amp_audio_loopback. Select i2s devices for amp_audio_loopback.

Signed-off-by: Vit Stanicek <vit.stanicek@nxp.com>
2025-07-31 10:52:33 +01:00
Vit Stanicek
837e745b06 samples: amp_audio_loopback: Change sample rate and initial block count
Decrease the sample frequency to 16 kHz to accomodate memory
constraints. As the SAI driver in RX mode requires more than a certain
amount of blocks to be free, change count of those prefilled.

Signed-off-by: Vit Stanicek <vit.stanicek@nxp.com>
2025-07-31 10:52:33 +01:00
Luis Ubieda
eb09070b8c tests: rtio: Add testcase to demonstrate multishot aborted on errors
By forcing IODEV test to throw errors and verifying no more CQE's are
coming through after the forced error.

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-07-31 10:52:08 +01:00
Luis Ubieda
18b3faa4cd tests: rtio: iodev: fix: Add missing early return when error occurs
It appears this had not been exposed as the testsuite does not
exercise forcing errors for the IODEV. However, in the upcoming
testcase for error-handling of multi-shot items, it will be required.

Placed as standalone patch for the sake of clarity.

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-07-31 10:52:08 +01:00
Luis Ubieda
d3628fc284 rtio: multishot: Stop resubmitting multishot items on error
As an error-handling strategy. The client then can recover from this
depending on the error and the number of occurrences.

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-07-31 10:52:08 +01:00
Luis Ubieda
7b4644cb50 rtio: executor: split handling of one-shot and multi-shot completions
As their handling is not that similar and mixing them both affects
code readability. This patch does not affect functionality and does
not break any testsuite under rtio API.

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-07-31 10:52:08 +01:00
Luis Ubieda
5505182b43 rtio: Assert multishot flag is not combined with txn or chained
There's no use-case covering this case and enforcing it will allow
simplify the logic for processing items with each of these items when
mutually exclusive.

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-07-31 10:52:08 +01:00
Kesavan Yogeswaran
2aba39d870 cmake: Define zephyr_generated_headers as an interface library
Define `zephyr_generated_headers` as an interface library rather than a
custom target. This allows CMake libraries to depend on this target
AND propagate the dependency if needed using target_link_libraries.

Example:

If some user header includes offsets.h, even transitively, then
offsets.h must be generated before any source file that includes that
header is compiled. This can be captured by defining a library `foo` for
the header with a public link dependency on zephyr_generated_headers
using `target_link_libraries(foo zephyr_generated_headers)`. The
ordering dependency on the generated offsets.h header will then
propagate to `foo` and any libraries that link against `foo`, even
transitively. This was not possible before this CL because one cannot
use custom targets as public link dependencies with
target_link_libraries.

Signed-off-by: Kesavan Yogeswaran <hikes@google.com>
2025-07-31 10:51:43 +01:00
Tomasz Chyrowicz
b62965849a boards: Add nRF52840 dongle bare variant
Add a variant for builds that use debugger to flash the dongle,
effectively overwriting the stock nRF5 SDK bootloader.

Signed-off-by: Tomasz Chyrowicz <tomasz.chyrowicz@nordicsemi.no>
2025-07-31 10:51:21 +01:00
Dmitrii Sharshakov
33f08a634d dts: boards: various: remove code-partition for RP2350
Updated linker scripts no longer necessitate that.

Users who employ a bootloader in their design should be able to adjust
partitioning more easily, removing IMAGE_DEF with a Kconfig if needed.

Signed-off-by: Dmitrii Sharshakov <d3dx12.xx@gmail.com>
2025-07-31 10:50:41 +01:00
Dmitrii Sharshakov
cbe6a716d3 soc: rp2350: add IMAGE_DEF using rom_start linker script
Use this approach for a simpler flow and to make relocation of images
into RAM easier.

Also do not force-select CONFIG_XIP (which is a default anyway), since
RP2350 can boot from SRAM.

Signed-off-by: Dmitrii Sharshakov <d3dx12.xx@gmail.com>
2025-07-31 10:50:41 +01:00
Mike J. Chen
2dc6793261 soc: imxrt5xx: add fusion f1 dsp backtrace support
Add needed backtrace helpders routines and enable
backtrace for the Xtensa Fusion F1 DSP in the
IMXRT595S.

Signed-off-by: Mike J. Chen <mjchen@google.com>
2025-07-31 10:49:54 +01:00
Martin Hoff
476e5c5fc6 tests: application_development: add new test for ram-based isr
This commit introduces the new test ram_context_for_isr that shows
how to configure an application (prj.conf, CMakeLists.txt, etc.) in
order to enable full ISR execution with a RAM context.

It resolves the issue of flash latency affecting real-time constraints
during ISR execution.

Signed-off-by: Martin Hoff <martin.hoff@silabs.com>
2025-07-30 17:37:43 -04:00
Martin Hoff
d5f67d04ee arch: split dynamic interrupt symbol
This commit introduces the SRAM_SW_ISR_TABLE option which is selected by
DYNAMIC_INTERRUPT. It allows splitting the DYNAMIC_INTERRUPT option into
two parts:

 - One for the relocation of the ISR vector table in RAM
 - One for the inclusion of functions needed to install ISRs dynamically

The goal is to later only select the relocation of the ISR vector table in
RAM and not all the associated functions from the dynamic interrupt
mechanism.

Signed-off-by: Martin Hoff <martin.hoff@silabs.com>
2025-07-30 17:37:43 -04:00
Chun-Chieh Li
426c3d1935 drivers: misc: ethos_u: support nuvoton numaker m55m1x
This adds frontend of arm ethos-u core driver for nuvoton numaker m55m1x.
Special notes include:
1. Leaving application overriding dcache flush/invalidate weak functions
   for cacheable NPU buffer
2. Configuring macs_per_cc to 256 in arm ethos-u core driver to match
   m55m1x ethos-u RTL config

Signed-off-by: Chun-Chieh Li <ccli8@nuvoton.com>
2025-07-30 17:37:27 -04:00
Chun-Chieh Li
84b305ac03 MAINTAINERS: add hal_ethos_u collaborator
Add Chun-Chieh Li "ccli8" as collaborator for hal_ethos_u driver

Signed-off-by: Chun-Chieh Li <ccli8@nuvoton.com>
2025-07-30 17:37:27 -04:00
Magpie Embedded
dec8a04508 modules: hal: infineon: Add Kconfig option for pullups in Wifi Host Driver
This option allows board configurations to specify how to set the SDIO
pull ups when the SPI bus goes to sleep, using the Infineon WHD.
This is a board specific value.

Signed-off-by: Magpie Embedded <magpieembedded@gmail.com>
2025-07-30 17:36:05 -04:00
Chun-Chieh Li
e9fee35b02 drivers: wifi: esp_at: fix AT+CIPSEND premature timeout
For TCP socket, this fixes AT+CIPSEND command with too short timeout.
ESP modem replies SEND OK/SEND FAIL dependent on network traffic
condition, so this timeout config changes as Kconfig option for being
configurable by user.

Signed-off-by: Chun-Chieh Li <ccli8@nuvoton.com>
2025-07-30 17:35:30 -04:00
Nick Brook
d7fb46ac04 cmake: Merge in DTS_ROOT from sysbuild
Merging in DTS_ROOT from sysbuild allows applications to specify a custom
DTS_ROOT path for the application via sysbuild.

Signed-off-by: Nick Brook <nrbrook@gmail.com>
2025-07-30 17:34:39 -04:00
Mario Paja
b5ab475ac1 samples: i2s: output: add nucleo_u385rg_q
Add nucleo_u385rg_q overlay and SAI conf
in samples/drivers/i2s/output

Signed-off-by: Mario Paja <mariopaja@hotmail.com>
2025-07-30 17:34:19 -04:00
Mario Paja
81eba04491 dts: st: u3: enable sai node for stm32u3xx
Define SAI nodes for STM32U3xx series

Signed-off-by: Mario Paja <mariopaja@hotmail.com>
2025-07-30 17:34:19 -04:00
Andrey Dodonov
286362087d net: http: service: extend HTTP service with config
Update the HTTP service API to allow setting per-service configuration,
currently it is only custom socket creation callback,
but in the future it can be extended with other parameter

Signed-off-by: Andrey Dodonov <Andrey.Dodonov@endress.com>
2025-07-30 17:32:43 -04:00
Tobias Meyer
ceadedf3ae drivers: sensor: tmp11x: add trigger for alert and pm
Allows to configure the alert or therm mode for triggers
based on the low/high temperature treshholds
Also adding simple PM

Signed-off-by: Tobias Meyer <tobiuhg@gmail.com>
2025-07-30 17:32:27 -04:00
Can Wang
afa529e2dc tests: Bluetooth: BR: Disable LOG in smp_general test suite.
Because the WRN logs from LOG module affect the test script
recognizes the string.

Signed-off-by: Can Wang <can.wang@nxp.com>
2025-07-30 17:32:12 -04:00
Raffael Rostagno
f9260ae2e5 drivers: pwm: ledc: esp32: Fix RC_FAST and REF_TICK
Depending on clock config init, some devices might be initialized
with RC_FAST clock enabled but not calibrated. Logic to detect if
clock is calibrated was fixed for this reason. Also, logic to set
RC_FAST and REF_TICK for devices with timer specific clocks (ESP32
and ESP32-S2) was also fixed.

Signed-off-by: Raffael Rostagno <raffael.rostagno@espressif.com>
2025-07-30 17:30:50 -04:00
Tahsin Mutlugun
ea7f01b172 tests: subsys: pm: Use LPTIMER as idle timer for MAX78002EVKIT board
Replace RTC with LPTIMER as the latter has a better time resolution.

Signed-off-by: Tahsin Mutlugun <Tahsin.Mutlugun@analog.com>
2025-07-30 17:25:03 -04:00
Tahsin Mutlugun
41339e2dd4 tests: subsys: pm: Use WUT as idle timer for MAX32655 boards
Use Wake-Up Timer which has a higher resolution than RTC as the sleep
timer for MAX32655 boards.

Signed-off-by: Tahsin Mutlugun <Tahsin.Mutlugun@analog.com>
2025-07-30 17:25:03 -04:00
Tahsin Mutlugun
bc94ca4994 tests: pm: power_mgmt_soc: Enable tests on MAX32657EVKIT boards
Enable SoC power management on MAX32657EVKIT secure and nonsecure
boards.

Signed-off-by: Tahsin Mutlugun <Tahsin.Mutlugun@analog.com>
2025-07-30 17:25:03 -04:00
Tahsin Mutlugun
ad938267db tests: pm: Enabled deferred logging for max32690evkit
Device goes to deep-sleep after tests finish so bytes in UART FIFO are
not transmitted. As a consequence, twister cannot receive project
success string and misinterprets the test result. Enable deferred
logging so that logs are flushed after tests.

Signed-off-by: Tahsin Mutlugun <Tahsin.Mutlugun@analog.com>
2025-07-30 17:25:03 -04:00
Sadik Ozer
fa8de8b743 tests: subsys: pm: Remove unneeded flag
Not needed to disable MAX32_ON_ENTER_CPU_IDLE_HOOK flag anymore
It is not set if CONFIG_PM been defiend

Signed-off-by: Sadik Ozer <sadik.ozer@analog.com>
2025-07-30 17:25:03 -04:00
Tahsin Mutlugun
8c33a9b252 boards: adi: max32657evkit: Change wake-up timer clock sources to INRO
Set wake-up timers' clock source to INRO as EVKIT does not have an XTAL
soldered by default.

Signed-off-by: Tahsin Mutlugun <Tahsin.Mutlugun@analog.com>
2025-07-30 17:25:03 -04:00
Tahsin Mutlugun
2a8997384d dts: arm: adi: max32657: Add Wake-Up Timer instances
Add wut0 and wut1 to max32657_common.dtsi.

Signed-off-by: Tahsin Mutlugun <Tahsin.Mutlugun@analog.com>
2025-07-30 17:25:03 -04:00
Tahsin Mutlugun
3516059509 dts: bindings: timer: max32: Make clock property optional
Some instances of timers such as wakeup timer are not tied to a clock
bus so make this property optional.

Signed-off-by: Tahsin Mutlugun <Tahsin.Mutlugun@analog.com>
2025-07-30 17:25:03 -04:00
Tahsin Mutlugun
6cc8b1645f dts: arm: adi: Update MAX32657 low power states and residencies
Set MAX32657 cpu power states as idle, standby and powerdown. Power down
mode is disabled by default and can only be entered by calling
pm_state_force. Note that residency durations may need to be updated
depending on the resolution of chosen sleep timer.

Signed-off-by: Tahsin Mutlugun <Tahsin.Mutlugun@analog.com>
2025-07-30 17:25:03 -04:00
Sadik Ozer
10b3fe8d1c soc: arm: adi: MAX32657 add HAS_PM flag
Add HAS_PM flag to enable power management for MAX32657

Signed-off-by: Sadik Ozer <sadik.ozer@analog.com>
2025-07-30 17:25:03 -04:00
Sadik Ozer
4efec06a81 dts: arm: adi: Add MAX32657 power management states
Add basic power management states of MAX32657.
After UG/DS has been finalized the values and states
might be need to be updated.

Signed-off-by: Sadik Ozer <sadik.ozer@analog.com>
2025-07-30 17:25:03 -04:00
Sadik Ozer
ddf97dde7b dts: arm: adi: Add MAX32657 low power pins
Add low power pin definitions

Signed-off-by: Sadik Ozer <sadik.ozer@analog.com>
2025-07-30 17:25:03 -04:00
Tahsin Mutlugun
add6eb6726 soc: adi: max32: Use ceiling method to calculate exit latency ticks
The default 'near' mode results in zero exit latency ticks, which
prevents `sys_clock_set_timeout` from being called. This causes
the system to remain stuck in deep sleep modes. Use ceiling method
to obtain a nonzero exit latency tick count.

Signed-off-by: Tahsin Mutlugun <Tahsin.Mutlugun@analog.com>
2025-07-30 17:25:03 -04:00
Alberto Escolar Piedras
f4794f848b doc boards/native: Remove orphan diagram
This diagram was superseded by layering_natsim.svg
When the native_posix related documentation was removed
this diagram stopped being used.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-07-30 17:24:32 -04:00
Piotr Krzyzanowski
1635e06eed tests: drivers: pwm_gpio_loopback: Add more channels
Add more channels testing nrf platforms.

Signed-off-by: Piotr Krzyzanowski <piotr.krzyzanowski@nordicsemi.no>
2025-07-30 17:23:12 -04:00
Piotr Krzyzanowski
bf017aa949 tests: drivers: pwm_gpio_loopback: Test improvement
Improve corss-channel test by setting different
duty cycle on channels. This modification will enable
detection of inter-channel effects like crosstalk.

Signed-off-by: Piotr Krzyzanowski <piotr.krzyzanowski@nordicsemi.no>
2025-07-30 17:23:12 -04:00
Andrzej Głąbek
7b6ba5c071 drivers: mspi_dw: Prevent RX FIFO overflows in Single IO mode
In Single IO mode, where the clock stretching feature is not available,
the RX FIFO could get overflowed if the TX FIFO was filled with more
dummy bytes than the RX FIFO could receive data items at a given moment.
Such problem could be quite easy hit on nRF54H20, for example for longer
RX transfers (like 8 kB) at 8 MHz.
This commit limits accordingly the number of dummy bytes that can be
enqueued in the TX FIFO.

Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
2025-07-30 17:22:29 -04:00
Thomas Stranger
e9e7c26f29 docs: update https links
update a couple of links to use https instead of http

Signed-off-by: Thomas Stranger <thomas.stranger@outlook.com>
2025-07-30 17:22:12 -04:00
Serhiy Katsyuba
7dbde64738 cmake: llext: Fix llext incremental build
Before this commit, building llext packages with a `POST_BUILD` step added
via `add_llext_command()` only worked for from-scratch builds (tested with
Ninja).

When the client CMake script called `add_llext_command()` to add a custom
`POST_BUILD` step, `has_post_build_cmds` was set to 1, and a `true` (do
nothing) command was executed instead of `copy` for the `llext_pkg_input`
target. Consequently, the timestamp of `llext_pkg_input` was not updated.
Before executing `llext_proc_target`, Ninja seems to check the timestamp
of `llext_pkg_input`. When the custom command added by
`add_llext_command()` generated a new `llext_pkg_input`, Ninja was unaware
that `llext_pkg_input` had been updated, and the dependent
`llext_pkg_output` was not executed. Building only worked if
`llext_pkg_input` was missing, i.e., only for from-scratch builds.

The fix replaces dependencies so the command for `llext_pkg_input` is
executed after `llext_proc_target` (after `llext_proc_target` may generate
a new `llext_pkg_input`).

Signed-off-by: Serhiy Katsyuba <serhiy.katsyuba@intel.com>
2025-07-30 17:21:53 -04:00
Jay Vasanth
bb69617abb MAINTAINERS.YML: Add maintainers for hal_microchip
Adding additional mainteners - Scott Worley and Mohamed Azhar
for Microchip Hal repo since mulitple groups in Microchip
are working on this repo

Signed-off-by: Jay Vasanth <jay.vasanth@microchip.com>
2025-07-30 17:21:29 -04:00
Maureen Helm
a4c757adc2 drivers: udc: Fix max32 driver high speed support
High speed support has been broken for the max32 driver since commit
faeabc63c9.

Signed-off-by: Maureen Helm <maureen.helm@analog.com>
2025-07-30 17:21:09 -04:00
Adrian Bieri
5d42408efa cpp: add kconfig option STD_CPP23 for STD_CPP
to be able to choose c++23 dialect
deprecates c++2b, but we should keep the option c++2b for legacy

Signed-off-by: Adrian Bieri <adrian.bieri@loepfe.com>
2025-07-30 07:27:53 -04:00
Pieter De Gendt
57baf7cf72 modules: nrf_wifi: Allow using a regulator for IOVDD
Optionally have a regulator as IOVDD power supply.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-07-30 07:27:43 -04:00
Alberto Escolar Piedras
e7115d04de manifest: Update nRF hw models to latest
Update the HW models module to:
8b6001d6bdd9e2c8bb858fdb26f696f6d5f73db5

Including the following:
8b6001d CLOCK (54): Fix XOTUNE subscription sideeffecting for nrf54L15
9af1ac8 nRF54LM20: Bugfix: Add missing UART configuration
e6af4a7 RADIO: Fix register init for some devices (at least nRF54LM20)
2fe99ab CLOCK (54): Add XO24M/PLL24M/HFCLK24M
ffd578a CLOCK (54): Fixes around XOTUNE

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-07-30 07:27:28 -04:00
Hao Luo
0fac890133 board: ambiq: add config for systick of apollo3 and 4
This commit adds correct configuration for apollo3&4 systick

Signed-off-by: Hao Luo <hluo@ambiq.com>
2025-07-30 07:27:19 -04:00
Swift Tian
814ed6803f tests: fix arm_irq_vector_table fail on Ambiq platforms
Fixed build fail since 4c93fcd35b.
Fixed test run fail on Ambiq platforms.
Added Ambiq section in the test.

Signed-off-by: Swift Tian <swift.tian@ambiq.com>
2025-07-30 07:27:19 -04:00
CHEN Xing
8f5daca5e5 drivers: counter: sam_tc: Big fix for alarm 1
Issue: the alarm 1 do not generate interrupt
There are three compare registers in a SAM TC channel:
RA --> alarm 0
RB --> alarm 1
RC --> top_value
By default the RB/TOIB was configured as an input and no longer
generates interrupt.
Set the direction of TIOB to output for alarm 1 interrupt.

Fixes zephyrproject-rtos/zephyr#85018

Signed-off-by: CHEN Xing <xing.chen@microchip.com>
2025-07-30 06:45:07 -04:00
Fabio Baltieri
2f52a1bcda boards: rts5912_evb: drop few subsystem enable config
Board config are not suppose to enable subsystems beyond the vital ones,
drop ADC and INPUT.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2025-07-30 06:43:12 -04:00
Fabio Baltieri
2155298ad2 boards: rts5912_evb: set shell-uart
Set a zephyr,shell-uart chosen node so this board can be used with the
shell module.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2025-07-30 06:43:12 -04:00
Benjamin Cabé
c39930d358 doc: hardware: porting: remove old hwmv1 section
Drop the section describing hwmv1 board extensions since hwmv1 is no
longer supported.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-07-30 06:36:13 -04:00
Bjarki Arge Andreasen
0d9e69887d doc: build: dts: bindings-syntax: clarify compat matching
Clarify the identification and matching of bindings to devicetree
node compats. The previous definition implicitly hinted at two
bindings with the same compat being allowed, but did not state this
clearly. The updated wording should make it clear exactly how
bindings may be defined, and how they are matched.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-07-30 06:29:43 -04:00
Jamie McCrae
7a76a6238d sysbuild: Default to swap using offset for MCUboot
This swapping method is more efficient than swap using move and
has been available for some time, remove experimental flag and
set it as the default except for stm32 devices which have
partition alignment for swap using move

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-07-30 06:19:53 -04:00
Declan Snyder
b45bc0332d scripts: check_init_priorities: Fix file leak
The elf file needs to be closed after done being used, otherwise sys
module will generate resource leak warnings.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-07-30 06:13:21 -04:00
Declan Snyder
0d6b0cebb1 scripts: gen_offset_header: Fix file leak
The files should be closed after done being used, otherwise python
warnings are generated from the sys module

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-07-30 06:13:21 -04:00
Luca Burelli
83b9577f38 west build: display closest matching board names on error
This commit modifies the 'west build' command to display the closest
matching boards when an invalid board is specified, making it easier
for users to find a typo in the used board name.

The user is also instructed to run 'west boards' if he wants to get
the full list of available boards.

Signed-off-by: Luca Burelli <l.burelli@arduino.cc>
2025-07-30 06:11:09 -04:00
Daniel Kampert
bf3eba1c31 drivers: sensor: APDS9306: Add lux conversion
- Add lux conversion to APDS-9306 driver
- Change settings of gain, resolution and
frequency to index-based settings
- Add Device Tree overlay sample for APDS-9306
- Fix wrong board name in light_polling README
- Add value checks for the attribute set API call
- Remove the reading of the sensor attributes
from the sensor and use buffered values instead
- Rename `frequency` property to `measurement period`

Closes #91104

Signed-off-by: Daniel Kampert <DanielKampert@kampis-elektroecke.de>
2025-07-30 06:10:09 -04:00
Mark Wang
995ae9fde4 tests: bluetooth: add key persistence test cases
add key persistence test cases

Signed-off-by: Mark Wang <yichang.wang@nxp.com>
2025-07-30 06:08:39 -04:00
Sara Touqan
d53f324ca0 tests: sdio: Add write test to SDIO subsystem
This commit expands the SDIO subsystem test
suite by adding support for write test.
Also this commit adds needed conf/overlay
files for arduino portenta h7, nicla vision
and giga r1 for wifi_nm tests

Signed-off-by: Sara Touqan <zephyr@exalt.ps>
2025-07-29 22:56:24 -04:00
Sara Touqan
24caf4337d boards: Enable SDHC SDIO support
This commit enables SDHC support for STM32 on arduino
portenta h7, giga r1 and nicla vision boards.

Signed-off-by: Sara Touqan <zephyr@exalt.ps>
2025-07-29 22:56:24 -04:00
Sara Touqan
e052fd70a0 dts: Add SDHC SDIO configuration for STM32
This commit adds the main DTS configurations required
to enable SDHC support on STM32.

Signed-off-by: Sara Touqan <zephyr@exalt.ps>
2025-07-29 22:56:24 -04:00
Sara Touqan
477d749b39 drivers: sdhc: Support SDHC SDIO driver for STM32
This commit introduces support for the SDHC driver on STM32, enabling
functionality APIs for SDHC host controllers.

Signed-off-by: Sara Touqan <zephyr@exalt.ps>
Signed-off-by: Mohammad Odeh <zephyr@exalt.ps>
2025-07-29 22:56:24 -04:00
Bjarki Arge Andreasen
f27168fe02 doc: releases: 4.3: mention pm_device_driver_deinit()
Mention introduction of pm_device_driver_deinit() in the 4.3 release
notes.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-07-29 22:56:02 -04:00
Bjarki Arge Andreasen
4a827fd632 doc: services: pm: update pm device init/deinit/states
- Specify "Device" Power Management Support in sections covering
  CONFIG_PM_DEVICE=y or n
- Extend the enum pm_device_state docstrings to define and detail
  expectations of devices in each enum pm_device_state state.
- Extend pm device driver code example with more concise comments
  and include pm_device_driver_init, pm_device_driver_deinit, and
  DEVICE_DT_INST_DEINIT_DEFINE() (device deinit feature)
- Describe the device driver PM states used if PM_DEVICE is not
  enabled.
- Note which states a device driver is initialized from and can
  be deinitialized in and why.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-07-29 22:56:02 -04:00
Bjarki Arge Andreasen
f3af362725 tests: pm: device_driver_init: extend to support device_deinit()
Extend test suite to cover pm_device_driver_deinit() resulting
from call to device_deinit().

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-07-29 22:56:02 -04:00
Bjarki Arge Andreasen
cd16d17dca pm: device: introduce pm_device_driver_deinit()
Introduce pm_device_driver_deinit() which is required to fully
support device_deinit(). This function shall be called by drivers
when device_deinit() is called.

If PM_DEVICE is enabled, it will
simply check whether the device is either SUSPENDED or OFF, this
will prevent device_deinit() on a device which is currently in
use, and ensure the device is in the correct state if device_init()
is called later.

If PM_DEVICE is not enabled, it will invoke the SUSPEND action which
mirrors the pm_device_driver_init() behavior. Note that TURN_OFF
action is not called since the device is deinitialized after this
call.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-07-29 22:56:02 -04:00
Bjarki Arge Andreasen
6821b5b319 pm: device: extend pm_device_driver_init() description
Rewrite the docstring for pm_device_driver_init() to align with
documentation, especially covering the case where CONFIG_PM_DEVICE=n

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-07-29 22:56:02 -04:00
Luis Ubieda
e798c8ed7f boards: vmu_rt1170: Add axis alignment to ICM42686
Matches with on-board ICM42688, complying with right-hand rule.

Signed-off-by: Benjamin Perseghetti <bperseghetti@rudislabs.com>
Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-07-29 22:55:26 -04:00
Luis Ubieda
4527cab3c7 boards: vmu_rt1170: fix Axis alignment to comply with right-hand-rule
Missing an inverted sign on Axis Align on X.

Signed-off-by: Benjamin Perseghetti <bperseghetti@rudislabs.com>
Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-07-29 22:55:26 -04:00
Benjamin Cabé
12c4d7661a doc: _scripts: use tuple instead of list for html_redirects
Changed the REDIRECTS variable from a list to a tuple in the
redirects.py scripts since it's an immutable sequence.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-07-29 22:55:04 -04:00
Benjamin Cabé
a74f222b73 doc: _scripts: use tuple instead of list for gen_boards_catalog
Changed a bunch of immutable sequences from being lists to tuples.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-07-29 22:55:04 -04:00
Martin Hoff
9b335c82e2 tests: build_all: eeprom: change config for compatibility
Since the old configuration set a sensor initialization priority to 60,
we faced a conflict between sensor and regulator initialization priorities.
I think the best approach is to always use a lower priority if the
component has dependencies. If this is a specific case, maybe a .conf file
is needed for the board. The new .conf file will then be more generic.

Signed-off-by: Martin Hoff <martin.hoff@silabs.com>
2025-07-29 22:54:31 -04:00
Peter Mitsis
3123839801 tests: Increase sched_userspace timeout
Increase the sched_userspace timeout from the default of 60 seconds
to 300 seconds to account for variations in execution time caused
by host system load.

(Variation observed on the qemu_cortex_a53/qemu_cortex_a53 platform.)

Signed-off-by: Peter Mitsis <peter.mitsis@intel.com>
2025-07-29 22:53:52 -04:00
Nicolas Pitre
e6ff6b0843 arm64: isr_wrapper.S: make GICv2 usable on SMP systems
GICC_IAR (GICv2) includes the source processor for SGIs in bits 12-10.
Mask them away otherwise IPIs sent from any CPU other than CPU0 will be
considered out of bounds.

Signed-off-by: Nicolas Pitre <npitre@baylibre.com>
2025-07-29 22:53:08 -04:00
Afonso Oliveira
b4eb116478 arch: riscv: decouple mtval usefulness for FP traps from QEMU target
Introduce CONFIG_RISCV_NO_MTVAL_ON_FP_TRAP to handle implementations
where the mtval CSR does not provide useful information during
floating-point illegal instruction exceptions.

The RISC-V specification states that mtval is "either set to zero or
written with exception-specific information" on traps. Some
implementations, including QEMU, do not populate mtval with the
faulting instruction value during FP-related illegal instruction
exceptions, making it unusable for FP exception handling.

Previously, this behavior was hardcoded for QEMU targets only, but
other CPU implementations may also lack useful mtval content for FP
traps. Decoupling this from CONFIG_QEMU_TARGET and allows other
platforms to properly declare this limitation.

The new Kconfig option defaults to enabled for QEMU targets to
maintain backward compatibility.

Signed-off-by: Afonso Oliveira <afonsoo@synopsys.com>
2025-07-29 22:52:37 -04:00
Benjamin Cabé
bed4ad299c drivers: haptics: add DRV2605_SEQ_WAIT_MS macro
Add a macro to simplify the creation of wait/delay values for the
waveform sequencer.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-07-29 22:51:46 -04:00
Benjamin Cabé
db3512dc50 include: drivers: haptics: add Doxygen docs for drv2605
Aim for full coverage for the drv2605 device-specific haptics API.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-07-29 22:51:46 -04:00
Luis Ubieda
9791165877 icm45686: fix unhandled shift being zero
Even though it's not listed in the options of
icm45686_get_shift(), for completeness sake,
do not leave an unhandled range.

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-07-29 22:51:08 -04:00
Jordan Yates
def2ec8590 bluetooth: hci: spi: configurable CS delay
Make the common SPI CS delay property configurable from devicetree. This
can be required for using a nRF54L as a Bluetooth controller, since it
has an additional delay after waking up from the CS assertion until it
is ready to accept and transmit data (see OPS t_START_HFINT).

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-07-29 22:50:23 -04:00
Andrzej Głąbek
7efa5c87dd drivers: flash_mspi_nor: Make transfer timeout configurable
Although the value currently hard-coded in the driver (10 ms) is quite
high, it may turn out to be insufficient when there is a need to use
some very low SCK frequency, like 250 kHz.
Make the timeout value configurable per-instance, via devicetree.

Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
2025-07-29 12:14:51 -04:00
Daniel Coffey
68c6b6ca0c drivers: ethernet: ksz8081: support 25MHz RMII
Configure KSZ8081 phy drivers to set strapping mode override
for RMII mode without setting reference clock to 50MHz when
"RMII 25MHz" operation is selected in device tree node.

Signed-off-by: Daniel Coffey <danielcoffey@carallon.com>
2025-07-29 11:25:14 -04:00
Chaitanya Tata
7fe693029f drivers: nrf_wifi: Fix the issue of delayed keepalive
Supplicant sends keepalive on timer expiry but due to driver + nRF70
delays it is delayed to the AP, meanwhile some APs disconnect due to
lack of keepalive.

Set the processing delay to 700ms (based on tests) to fix.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-07-29 11:24:44 -04:00
Chaitanya Tata
d51127ddc3 manifest: hostap: Pull feature to add driver processing delay to capa
Pull the feature to add driver processing delay to the driver
capabilities. Useful to customize for sending keepalive.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-07-29 11:24:44 -04:00
Robert Robinson
8e69b52205 scripts: twister: handlers: Append dev-id for runner nrfutil_next
appends the --dev-id argument when using nrfutil_next runner.

Signed-off-by: Robert Robinson <robert.robinson@nordicsemi.no>
2025-07-29 11:24:21 -04:00
Chaitanya Tata
5ff2028203 modules: nrf_wifi: Fix bustest QSPI crash
Commit 5e25283821a("drivers: wifi: Create dedicated mem pool for Wi-Fi
driver") introduced OSAL dependecy in the Zephyr QSPI driver for HL
read, but in bustest we don't enable nrf_wifi OS module, so, it crashes
here. And we should not be using OSAL APIs in Zephyr code anyway.

And in this case we don't even need to use the heap, so, move the rx
buffer to stack.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-07-29 11:23:51 -04:00
Gaetan Perrot
8434b01bcc drivers: ethernet: add check for null fragment before TX loop
In eth_cyclonev_send(), add a guard to detect if the net_pkt has no data
buffer (i.e., pkt->buffer is NULL) before starting the TX descriptor loop.

This prevents a potential null pointer dereference on frag->data in the
first iteration of the do-while loop.

The previous in-loop check for frag was redundant and misleading: it still
allowed access to frag->data even when frag could be NULL, making the code
both unnecessary and potentially unsafe.

The new check ensures frag is valid before entering the loop, covering the
rare case where net_pkt has no associated buffer.

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2025-07-29 09:31:29 -04:00
Georgij Černyšiov
447e11885e drivers: eth: oa_tc6: fix status check garbage value
If reading the status register fails, the register
`sts` will contain meaningless data.

In such cases, the function should return an error
and not attempt to clear any pending interrupts
with invalid data.

Signed-off-by: Georgij Černyšiov <geo.cgv@gmail.com>
2025-07-29 09:31:18 -04:00
Jakub Michalski
37f9aed22b net: ethernet: e1000: add queue support
Before this commit size of rx and tx queues was set to 1, which is out of
spec. This commit adds queue logic, ability to set their size and exposes
configuration options w.r.t rx queue interrupts

Signed-off-by: Jakub Michalski <jmichalski@antmicro.com>
2025-07-29 09:31:07 -04:00
Tim Lin
3e82d7c736 drivers/espi: ite: Add support for ESPI_PERIPHERAL_HOST_IO_PVT
Add support the host I/O over eSPI peripheral channel for private
channel.
The default port number of ESPI_PERIPHERAL_HOST_IO_PVT_PORT_NUM
for ITE SoC is 0x68.

Signed-off-by: Tim Lin <tim2.lin@ite.corp-partner.google.com>
2025-07-29 09:30:02 -04:00
Bjarki Arge Andreasen
2854115443 soc: nrf54h: remove deprecated gpd (global power domain) driver
Remove the deprecated GPD (Global Power Domain) driver.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-07-29 09:03:37 -04:00
Bjarki Arge Andreasen
2b0d1ae4d0 soc: nordic: nrf54h: transition from gpd to zephyr pinctrl and pds
Transition nrf54h away from the soc specific gpd
(global power domain) driver which mixed power domains, pinctrl
and gpio pin retention into a non scalable solution, forcing soc
specific logic to bleed into nrf drivers.

The new solution uses zephyrs PM_DEVICE based power domains to
properly model the hardware layout of device and pin power domains,
and moves pin retention logic out of drivers into pinctrl and
gpio, which are the components which manage pins (pads).

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-07-29 09:03:37 -04:00
Bjarki Arge Andreasen
3a8651ac82 drivers: power_domain: introduce nrf_gpio_pad_group
Introduce the NRF GPIO Pad Group device driver and binding. The
pad group device represents the GPIO pads (pins), contrary to a
GPIO controller, which is one of the many devices which can be
muxed to pads in the pad group.

The pad group belong to a power domain, which is not neccesarily the
same power domain as devices being muxed to the pads, like GPIO or
UART. If no ACTIVE device is using any of the pads in the pad
group, the pad groups power domain may be SUSPENDED. Before the pad
groups power domain is SUSPENDED, pad config retention must be
enabled to prevent the pads from loosing their state. That's what
this device driver manages. Once retained, the pad configs and
outputs are locked, even when their power domain is SUSPENDED.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-07-29 09:03:37 -04:00
Bjarki Arge Andreasen
0ec81c5fdf drivers: power_domain: introduce nrfs gdpwr
Introduce the NRFS GDPWR (Global Domain Power Request) device
driver and devicetree binding.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-07-29 09:03:37 -04:00
Benjamin Cabé
bb92d71a6b boards: add axp2101-fuel-gauge to all boards with an AXP2101 PMIC
Multi-function PMIC AXP2101 now has a fuel gauge driver. Add the
corresponding node to all boards with such a PMIC (also checked their
datasheets and confirmed these actually have a battery correctly
connected to the PMIC).

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-07-29 08:54:05 -04:00
Benjamin Cabé
55592cfc62 tests: drivers: counter: fix esp32s3 overlays
The use of timer3 seems to be some legacy leftover from when the
overlay was specific to esp32s3_devkitm originally (commit cf3b2643).
Using timer0 instead.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-07-29 08:54:05 -04:00
Tomasz Moń
8d1f7b3bef drivers: udc_dwc2: Fix incomplete iso handling race
Incomplete iso IN/OUT is just informative and its occurrence does not
prevent the endpoint from actually transmitting/receiving data. Such
"late" isochronous transfers, which are perfectly fine according to USB
specification, were observed on Windows host with nRF54H20 running
explicit feedback sample operating at High-Speed.

The incorrect handling manifested itself with "ISO RX buffer too small"
error message. The faulty scenario was:
  * incompISOIN handler does not find any matching endpoint
  * incompISOOUT handler disables endpoint, discards buffer and sets
    rearm flag
  * next DWC2 interrupt handler iteration after reading GINTSTS
  * XferCompl interrupt on iso IN endpoint
  * XferCompl interrupt on iso OUT endpoint
      - transfer was actually happening to the buffer discarded in
	incompISOOUT handler
      - XferCompl handler modified the next buffer
  * GOUTNakEff interrupt, iso OUT endpoint EPDIS bit is set
  * EPDisbld interrupt, rearm flag set
      - the buffer modified by XferCompl is used and fails because it is
	not large enough

Modify the sequence so it accounts for host actions and the above faulty
scenario no longer causes any problems.

Signed-off-by: Tomasz Moń <tomasz.mon@nordicsemi.no>
2025-07-29 08:52:20 -04:00
Tomasz Moń
6eb2fa8edd drivers: udc_dwc2: Rearm isochronous OUT endpoints during incompisoout
Rearm isochronous endpoints when handling incomplete iso out interrupt
to make it possible to rearm the endpoint in time (before SOF),
especially when operating at High-Speed.

Signed-off-by: Tomasz Moń <tomasz.mon@nordicsemi.no>
2025-07-29 08:52:20 -04:00
Chris Friedt
8e1cd47dfc MAINTAINERS: add Seeed Studio platform
Add Seeed Studio as a platform initially unmaintained with rules to match
boards and sheilds.

This should make it easier if someone (ideally from Seeed Studio) would
like to step up to maintain that platform.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-07-29 08:51:41 -04:00
Henrik Brix Andersen
3eedebe031 drivers: console: posix_arch_console: remove build warning
Remove build warning when building the posix_arch_console driver with
CONFIG_PRINTK=n and CONFIG_STDOUT_CONSOLE=n.

Fixes: #93790

Signed-off-by: Henrik Brix Andersen <henrik@brixandersen.dk>
2025-07-29 08:51:32 -04:00
Pieter De Gendt
96eee3bc5e modules: lvgl: Add a name to the work queue thread
Make it easier to debug/diagnose issues by explicitly naming the LVGL
thread.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-07-29 11:27:38 +01:00
Yago Fontoura do Rosario
d3cc63ac71 Bluetooth: PACS: Fix duplicated entries in client list
The client list is filled from the bonding table at registration
but this should only be done once like the callback registration

Signed-off-by: Yago Fontoura do Rosario <yafo@demant.com>
2025-07-29 11:21:58 +01:00
The Nguyen
d9f82069b9 boards: renesas: support pyocd runner for Renesas RA boards
Add pyocd runner support for Renesas RA boards

Signed-off-by: The Nguyen <the.nguyen.yf@renesas.com>
2025-07-29 11:21:48 +01:00
Lyle Zhu
af42036ca6 Bluetooth: Classic: SDP: Improve UUID 128 support
In current implementation, the UUID 128 is not well supported. The
found issue includes,
Issue 1: No clear byte order of the UUID 128 in local SDP record.
Issue 2: No clear byte order of the UUID 128 of the SDP discover
parameter.

For issue 1,
Add the description to note that if the SDP attribute type is
`BT_SDP_UINT128`, `BT_SDP_INT128`, and `BT_SDP_UUID128`, the byte
order should be little-endian.

And swap the 128bit from little-endian to big-endian when responding
the peer SDP discovery request.

For issue 2,
Add the description to note that if the SDP discovery type is
`Service Search` and `Service Search Attribute`, and UUID is UUID 128,
the passed UUID data of the discovery request parameter should be
represented as the little-endian byte-order sequence.

And swap the 128bit from little-endian to big-endian when packing the
SDP discovery packet.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-07-29 11:21:37 +01:00
Neil Chen
a128f55b5d boards: frdm_mcxa156: add temperature sensor support
1. enable temperature sensor support
2. verified samples/sensor/die_temp_polling

Signed-off-by: Neil Chen <cheng.chen_1@nxp.com>
2025-07-29 11:21:29 +01:00
Neil Chen
db1abaaf67 boards: frdm_mcxa153: add temperature sensor support
1. enable temperature sensor support
2. verified samples/sensor/die_temp_polling

Signed-off-by: Neil Chen <cheng.chen_1@nxp.com>
2025-07-29 11:21:29 +01:00
Neil Chen
48bbe114a9 boards: frdm_mcxn236: add temperature sensor support
1. enable temperature sensor support
2. verified samples/sensor/die_temp_polling

Signed-off-by: Neil Chen <cheng.chen_1@nxp.com>
2025-07-29 11:21:29 +01:00
Adrian Warecki
0fe396cb11 ace: mmu: Add shared heap section
Add a new shared_heap section. Update the xtensa_soc_mmu_ranges structure
to include a new memory range for the shared heap.

Signed-off-by: Adrian Warecki <adrian.warecki@intel.com>
2025-07-29 11:21:21 +01:00
Tomasz Moń
223d23a34d usb: device_next: uac2: Double buffering on feedback endpoint
Enable double buffering on isochronous feedback endpoint to avoid
sending ZLP instead of feedback information.

Signed-off-by: Tomasz Moń <tomasz.mon@nordicsemi.no>
2025-07-29 11:20:56 +01:00
Tomasz Moń
f9ac3181ff usb: device_next: uac2: Do not leak buffer on failed enqueue
Release receive buffer on failed endpoint enqueue.

Signed-off-by: Tomasz Moń <tomasz.mon@nordicsemi.no>
2025-07-29 11:20:56 +01:00
Tomasz Moń
2f343bf572 usb: device_next: uac2: Double buffering on data OUT endpoints
Enable double buffering on data OUT endpoints to allow USB stack to
enqueue next transfer as soon as possible. This is especially useful
when operating at High-Speed where there is significantly less time
between subsequent SOF packets.

Signed-off-by: Tomasz Moń <tomasz.mon@nordicsemi.no>
2025-07-29 11:20:56 +01:00
Tomasz Moń
673f32428c usb: device_next: uac2: Remove unnecessary plus signs
Change the macros to have only one plus operator per term. This is
purely stylistic change, no functional changes.

Signed-off-by: Tomasz Moń <tomasz.mon@nordicsemi.no>
2025-07-29 11:20:56 +01:00
Jiafei Pan
6e24007906 board: imx95_evk: m7: refine NETC dts
Removed overlay and enabled these nodes in board dts directly as it is
not be valid unless CONFIG_NETWORKING is enabled.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-07-29 11:20:48 +01:00
Jiafei Pan
8f3ed40672 dts: arm: imx943_m33: update netc device nodes
Update NETC device nodes according to NETC driver update:
1. Added "nxp,imx-netc" compatible for netc driver.
2. Added all memory region in MMIO reg propertiy to let driver to handle
   MMIO mapping for all memory region.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-07-29 11:20:48 +01:00
Jiafei Pan
a1f0f65025 dts: arm: rt118x: update netc device nodes
Update NETC device nodes according to NETC driver update:
1. Added "nxp,imx-netc" compatible.
2. Added all memory region in MMIO reg propertiy to let driver to handle
   MMIO mapping for all memory region.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-07-29 11:20:48 +01:00
Jiafei Pan
4bfe3c1073 dts: arm: imx95_m7: update netc device nodes
Update NETC device nodes according to NETC driver update:
1. Added NETC block control device node to handle block control
   initialization in netc block driver.
2. Added "nxp,imx-netc" compatible for netc driver.
3. Added all memory region in MMIO reg propertiy to let driver to handle
   MMIO mapping for all memory region.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-07-29 11:20:48 +01:00
Jiafei Pan
410e552582 dts: bindling: imx-netc: remove unused reg property
As reg property is not used by the driver and there is no proper address
could be assigned to it, so remove it.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-07-29 11:20:48 +01:00
Jiafei Pan
1c91532155 modules: hal_nxp: disable netc switch on imx95
i.MX 95 has no NETC switch, so disable it on this platform.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-07-29 11:20:48 +01:00
Jiafei Pan
c006dbea8e drivers: ethernet: netc_psi: add MMIPO mapping support
In order to support MMU mapping on Cortex-A core, added MMIO mapping
support in imx_netc_psi driver.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-07-29 11:20:48 +01:00
Jiafei Pan
e98a2c3d70 drivers: mdio: imx_netc: add mmio mapping support
Added MMIO memory mapping for NETC MDIO driver.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-07-29 11:20:48 +01:00
Jiafei Pan
4caf2efec9 drivers: ethernet: imx_netc: add netc block driver
Add NETC block driver, it could do some block memory region MMIO mapping
and also so dome block initialization, moved some netc related
configuration form board_init() to block driver so that it could be reused
between different platforms, although some configuration is different for
different platform, but put all NETC related code in the same driver to
make it easier to be maintained.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-07-29 11:20:48 +01:00
Jiafei Pan
30b6adf42d drivers: ethernet: imx_netc: add GIC MSI support
It could use GIC ITS as MSI controller on Cortex-A Core, so added
GIC ITS MSI support for NETC drivers.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-07-29 11:20:48 +01:00
Yusuke Omae
bd432c2727 net: gptp: add missing stepsRemoved assignment
The stepsRemoved of masterPriorityVector was
left unassigned when the best_port is not itself.

Signed-off-by: Yusuke Omae <s1413091@gmail.com>
2025-07-29 11:20:32 +01:00
Charles Dias
d37ec5136b samples: video: capture: add a stm32h7b3i_dk config
Add a configuration files for the stm32h7b3i_dk board.

Signed-off-by: Charles Dias <charlesdias.cd@outlook.com>
2025-07-29 11:19:33 +01:00
The Nguyen
7720a6a47f boards: renesas: ek_ra2a1: add support for ctsu on Renesas RA
Enable support for CTSU button on ek_ra2a1 board

Signed-off-by: The Nguyen <the.nguyen.yf@renesas.com>
2025-07-29 11:19:20 +01:00
The Nguyen
de1207bac3 dts: arm: renesas: add CTSU device node for Renesas RA
Add device node support for Renesas RA SoCs

Signed-off-by: The Nguyen <the.nguyen.yf@renesas.com>
2025-07-29 11:19:20 +01:00
The Nguyen
c538a18782 bindings: pinctrl: add ctsu psel selection for Renesas RA
Add CTSU pin function selection for Renesas RA devices

Signed-off-by: The Nguyen <the.nguyen.yf@renesas.com>
2025-07-29 11:19:20 +01:00
The Nguyen
9ae5b7efd9 drivers: input: initial support for renesas,ra-ctsu
First commit to add support for Renesas RA Capasitive Sensing Unit

Signed-off-by: The Nguyen <the.nguyen.yf@renesas.com>
2025-07-29 11:19:20 +01:00
The Nguyen
a5176adc41 manifest: update hal_renesas revision to latest
Update rev of hal_renesas to add support for CTSU

Signed-off-by: The Nguyen <the.nguyen.yf@renesas.com>
2025-07-29 11:19:20 +01:00
Jiafei Pan
8bdd114ad1 tests: arm64_gicv3_its: add imx95_evk support
Add imx95_evk support, as hardware limication, it only has 832 LPIs.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-07-29 11:18:50 +01:00
Jiafei Pan
4dcd2ae5a4 boards: imx95_evk: refine GIC and SCMI objects init priority
GIC ITS depends on kernel heap, so move GIC initialize to be behind of
heap which initialization priority is CONFIG_KERNEL_INIT_PRIORITY_OBJECTS
(it is 30 by default).

MU mailbox and SCMI objects depend on GIC, so set their init priority
to be same with GIC, the initialization sequence decided by the dts
dependency although they use the same init priority.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-07-29 11:18:50 +01:00
Jiafei Pan
2d62d3f605 soc: imx95: a55: enable GIC redistribute and its noncoherent
GIC redistribute and ITS on i.MX 95 is DMA noncoherent, so enable
CONFIG_GIC_V3_RDIST_DMA_NONCOHERENT and CONFIG_GIC_V3_GIC_DMA_NONCOHERENT.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-07-29 11:18:50 +01:00
Jiafei Pan
353a96b623 soc: imx95: a55: include LPI in irq number
In case of ITS is enabled, need to include LPI in the total number
of irq.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-07-29 11:18:50 +01:00
Jiafei Pan
602c6292c3 dts: arm64: imx95_a55: add gic v3 its dts node
Added dts node for GIC v3 ITS.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-07-29 11:18:50 +01:00
Jiafei Pan
3290777d40 boards: imx95_evk: a55: enlarge memory size
Enlarge the memory size to 10M bytes as it is not enough if run some
networking application.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-07-29 11:18:50 +01:00
Jiafei Pan
b210fa0237 drivers: intc_gicv3_its: fix sleep issue in pre-kernel
GIC v3 ITS is initialized in pre-kernel stage in which sleep function
can't work yet, so use busy delay in pre-kernel stage and use sleep
delay in post-kernel stage.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-07-29 11:18:50 +01:00
Jiafei Pan
970e0181f1 drivers: intc_gicv3_its: fix incorrect RDbase when PE number is used
For RDbase used by its command, When GITS_TYPER.PTA = 1, physicall address
is used, the RDbase field consist of bits[51:16] of the address, so need
to left shift the address by 16 bits. But when GITS_TYPER.PTA = 0, PE
number is used, no need to shit anymore.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-07-29 11:18:50 +01:00
Jiafei Pan
9bb6a82a86 drivers: gicv3_its: enable dma noncoherent support
Add DMA noncoherent support on GICv3 ITS driver.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-07-29 11:18:50 +01:00
Jiafei Pan
83c88cee19 drivers: intc_gicv3: enable dma-noncoherent support
GIC redistributor on Some platform are connected to a non-coherent
downstream interconnect, it need to use Non-cahable and Non-shareable
access atttributes to access external memory. And also flush the
data cache after CPU update related memory.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-07-29 11:18:50 +01:00
Robert Lubos
279de669b5 net: lwm2m: Stop the LwM2M engine in case of fatal network error
In case of fatal network error (i.e. when the LwM2M client runs out of
retries), call lwm2m_engine_stop() to cleanup any allocated resources
for the client. The engine is dead at that point anyway so the
application needs to recover.

If this isn't done, it is theoretically possible to restart the LwM2M
client (with lwm2m_rd_client_start() which does not report an error in
such case), which in turn could lead to resource leaks (like for
example the observer list is reinitialized) if the application
didn't call lwm2m_rd_client_stop() first. Calling lwm2m_engine_stop()
ensures that all resources are freed even if the application doesn't
call stop before restarting.

Stopping the engine is also needed when the network error occurs when
de-registering - in such case the engine goes straight into the IDLE
state, where it's possible to restart the client and thus reinitialize
the observer lists.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-07-29 11:18:36 +01:00
Dmitrii Sharshakov
5c1d4db845 drivers: udc_rpi_pico: move control endpoint enable/disable
Move control endpoint enable/disable calls to udc_enable()/udc_disable().
It does not change much during USB device support initialization, but
it seems to resolve an issue when starting from RAM, though the real
cause is unknown.

Signed-off-by: Dmitrii Sharshakov <d3dx12.xx@gmail.com>
2025-07-29 11:18:28 +01:00
James Roy
2ebf82ca5f subsystem: usb: device_next: Fix unchecked return value in usbd_cdc_ecm
Fix unchecked return value scanned by Coverity.

Signed-off-by: James Roy <rruuaanng@outlook.com>
2025-07-29 11:18:20 +01:00
Tahsin Mutlugun
00e217da7d boards: adi: max32657evkit: Add adxl367 accelerometer
Add support for ADXL367 accelerometer connected to I3C bus.

Signed-off-by: Tahsin Mutlugun <Tahsin.Mutlugun@analog.com>
2025-07-28 21:06:00 -04:00
Tahsin Mutlugun
6320e504dd boards: adi: max32657evkit: Enable I3C peripheral
Add I3C node to MAX32657EVKIT board devicetree and add I3C to the list
of supported drivers.

Signed-off-by: Tahsin Mutlugun <Tahsin.Mutlugun@analog.com>
2025-07-28 21:06:00 -04:00
Tahsin Mutlugun
3885278b96 drivers: i3c: shell: Add shell support to MAX32 I3C
Enables shell support for MAX32 I3C driver.

Signed-off-by: Tahsin Mutlugun <Tahsin.Mutlugun@analog.com>
2025-07-28 21:06:00 -04:00
Tahsin Mutlugun
ac1152b0b6 dts: arm: adi: max32657: Add I3C instance
Add I3C instance to max32657.dtsi.

Signed-off-by: Tahsin Mutlugun <Tahsin.Mutlugun@analog.com>
2025-07-28 21:06:00 -04:00
Tahsin Mutlugun
d1d983dfdb drivers: i3c: Introduce MAX32 I3C driver
Add I3C driver for ADI MAX32 microcontrollers.

Signed-off-by: Tahsin Mutlugun <Tahsin.Mutlugun@analog.com>
2025-07-28 21:06:00 -04:00
Daniel Leung
4b15936329 tests: kernel/smp_boot_delay: workaround occassionally failures
test_smp_boot_delay sometimes fails due to thread started by IPI
not having started or not finished running:

* Using CPU mask to explicitly state which CPU to start the thread
  seems to fix the issue where the thread is not started quickly
  enough.
* When the host  system is under heavy load (e.g. twister-ing),
  emulators may not get enough CPU time to run the newly created
  thread. So extend the IPI delay a bit more to allow for this.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-07-28 21:03:43 -04:00
Phi Bang Nguyen
1edc97cd04 doc: migration guide: display: Mention rgb565/bgr565 fix
Mention that the RGB565 and BGR565 interchange issue has been fixed
in the display sample.

Signed-off-by: Phi Bang Nguyen <phibang.nguyen@nxp.com>
2025-07-28 16:45:33 -04:00
Phi Bang Nguyen
9e7596dce8 boards: shields: rk0xxx: Set default format to RGB565
The default supported format in these LCD is RGB565, not BGR565. It is
set to BGR565 because a wrong assumption about "byte swap" in Zephyr.

Signed-off-by: Phi Bang Nguyen <phibang.nguyen@nxp.com>
2025-07-28 16:45:33 -04:00
Phi Bang Nguyen
d69bea3c5e drivers: display: dcnano_elcdif: Fix RGB565/BGR565 format mismatch
Format is incorrectly forced from RGB565 to BGR565. Fix it.

Signed-off-by: Phi Bang Nguyen <phibang.nguyen@nxp.com>
2025-07-28 16:45:33 -04:00
Phi Bang Nguyen
d9513095d9 drivers: display: elcdif: Fix RGB565/BGR565 format mismatch
Format is incorrectly forced from RGB565 to BGR565. Fix it.

Signed-off-by: Phi Bang Nguyen <phibang.nguyen@nxp.com>
2025-07-28 16:45:33 -04:00
Phi Bang Nguyen
d0f7604b1a samples: drivers: display: Fix RGB565/BGR565 interchange issue
The RGB565 and BGR565 formats are interchanged in the sample. This leads
to wrong assumptions about "byte swap" in Zephyr and make display
drivers, shields and video sample follow it for a long time. Fix it.

Signed-off-by: Phi Bang Nguyen <phibang.nguyen@nxp.com>
2025-07-28 16:45:33 -04:00
Phi Bang Nguyen
2fdc051269 samples: drivers: video: Fix RGB565/BGR565 in display format
Formats should be coherently set between camera and display. Forcing
RGB565 to BGR565 will break some platforms.

Signed-off-by: Phi Bang Nguyen <phibang.nguyen@nxp.com>
2025-07-28 16:45:33 -04:00
Emil Gydesen
220571efcb Bluetooth: CCP: Check conn type before access by index
Ensure that the connection type of the provided bt_conn is
an LE connection.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-07-28 16:45:17 -04:00
Emil Gydesen
0347d92072 Bluetooth: BAP: SD: Add missing error checks for mutex locks
Add missing error checks for mutex locks after the mutexes
were changed to not use K_FOREVER which should not be done in
the BT RX thread.

A larger overhaul of how mutexes are using within the scan delegator
should be considered, as there are a lot of locks and unlocks when
handling the callbacks.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-07-28 16:44:58 -04:00
Jordan Yates
bd774ff98b tests: disk: disk_access: test STM32L4 DMA
Ensure that the shared DMA variant of the STM SDMMC driver is compiled
in CI.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-07-28 16:44:33 -04:00
Jordan Yates
3698507585 disk: sdmmc: support L4 series with shared DMA channel
Update the driver to support DMA operations on L4 series devices, with
a shared DMA channel. Split channels do not work on these chips, since
there is no dedicated TX and RX channels on the DMA, so configuring two
channels with SDMMC as the peripheral results in a non-functional
configuration.

Fixes #91216.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-07-28 16:44:33 -04:00
Armando Visconti
792b7e3570 rtio: add helper function rtio_read_transaction()
Add a helper function that constructs a rtio SQE chain with the purpose
to perform a bus read operation on a list of registers.

Usage:

  struct rtio_regs regs;
  struct rtio_reg_list regs_list[] = {{regs_addr1, mem_addr_1, mem_len_1},
                                      {regs_addr2, mem_addr_2, mem_len_2},
                                      ...
                                     };
  regs.rtio_regs_list = regs_list;
  regs.rtio_regs_num = ARRAY_SIZE(regs_list);

  rtio_read_regs_async(rtio,
                       iodev,
                       RTIO_BUS_SPI,
                       &regs,
                       sqe,
                       dev,
                       op_cb);

Signed-off-by: Armando Visconti <armando.visconti@st.com>
2025-07-28 16:44:17 -04:00
Van Petrosyan
37d8ec295b drivers: led: Added PCA9533 to build_all overlay
PCA9533 is added to the overlay so the new driver
is compiled by the automated “build all LED drivers” test

Signed-off-by: Van Petrosyan <van.petrosyan@sensirion.com>
2025-07-28 16:43:48 -04:00
Van Petrosyan
7c845f14d4 drivers: led: Implemented PCA9533 driver with PM support
• Supports led_on/off, led_set_brightness (0–100 %, 152 Hz default),
  and led_blink (7 ms – 1.685 s) with automatic sharing of the two
  on-chip PWM engines; returns –EBUSY when a third distinct pair is
  requested.

• Includes basic runtime-PM boilerplate to honour power-domain control;
  the device itself has no dedicated low-power states.

Signed-off-by: Van Petrosyan <van.petrosyan@sensirion.com>
2025-07-28 16:43:48 -04:00
Van Petrosyan
aaada72b00 drivers: led: Added dt-binding for pca9533 led dimmer
Added DT binding for the PCA9533 LED Dimmer

Signed-off-by: Van Petrosyan <van.petrosyan@sensirion.com>
2025-07-28 16:43:48 -04:00
Cheng Chang
afcce53220 bluetooth: host: a2dp:error_code should be detailed in set_config_rsp
Error codes fall into two main categories:
case 1: NOT_SUPPORT_XXX. This means that the configuration of the
parameter is not supported locally.
case 2: INVALID_XXX. This means that the parameter is not configured or
duplicated in the set_config_req command.

Currently the protocol only supports SBC, so it is only checked for SBC
parameters.

Signed-off-by: Cheng Chang <cheng.chang@nxp.com>
2025-07-28 16:43:29 -04:00
Holt Sun
4618e86edd drivers: irtc: Updated rtc driver to support NXP RT700 device.
1. Update nxp irtc driver to fix issue in init and alarm function.
2. Update RTC device tree binding to support "share-counter".
3. Update RT700 dtsi to support rtc0 for cpu0 and rtc1 for cpu1.
4. Update readme.
5. Update unit test project conf for RT700.

Signed-off-by: Holt Sun <holt.sun@nxp.com>
2025-07-28 16:42:30 -04:00
Declan Snyder
fe8da67342 tests: spi_loopback: Specify expected CS on helper func
The helper function should have the flexibility to have different
expected CS counts. Namely, the test cases where the transfer is
essentially empty should not need to assert CS and many platforms are
failing on CS testing currently due to expecting CS assert and deassert
despite it being a 0 clock/bit transfer being specified.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-07-28 16:42:08 -04:00
Declan Snyder
285245c69a tests: spi_loopback: Use atmoic_t instead of sem for CS
Use an atomic_t instead of semaphore for counting the CS, semaphore is
too heavy and wrong choice for this variable.

Also, print what the actual value gotten was in case of error.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-07-28 16:42:08 -04:00
Vinit Mehta
1d44972a26 samples: bluetooth: pbp_public_broadcast: Fix PACS register issue
- Add sink PACS register for PBP public broadcast sink example to make
  it work with PBP broadcast source

Signed-off-by: Vinit Mehta <vinit.mehta@nxp.com>
2025-07-28 16:41:51 -04:00
Georgij Černyšiov
e0899d347e drivers: mipi_dbi: stm32: fmc: add bank address property
The driver gets FMC bank address using
`FMC_BANK1_<parent_register_value>` define.

This approach has some flaws:
- The parent (bank) register's value might not correspond
  sequentially to the expected bank number.
  For example: `STM32_FMC_NOSRAM_BANK3` maps to `FMC_BANK1_4`,
  instead of `FMC_BANK1_3`.
- Some families don't even define the necessary `FMC_BANK1_x` macros.

To address this, the commit adds an optional `bank-address` property,
providing a direct way to define the FMC bank address for the driver.

Signed-off-by: Georgij Černyšiov <geo.cgv@gmail.com>
2025-07-28 16:41:30 -04:00
Yishai Jaffe
7f3a728aaa soc: silabs: s2: make order in soc Kconfig's
Made some order in the Kconfig's for silabs series 2 socs.
Made a distinction between silabs "generic family" (e.g. xg21) and silabs
"device family" (e.g. efr32mg21).

Signed-off-by: Yishai Jaffe <yishai1999@gmail.com>
2025-07-28 16:40:58 -04:00
Cheng Chang
f4153476cd bluetooth: host: a2dp: Fix null ops before calling configured callback
If stream->ops is NULL and not checked, it works fail.

Signed-off-by: Cheng Chang <cheng.chang@nxp.com>
2025-07-28 16:40:39 -04:00
Vit Stanicek
8f37d3bf52 samples: rtxxx-amp: Remove POST_BUILD
Remove POST_BUILD directives from remote-dsp-imgs.cmake.

They raised warnings on CMake 3.31.6.

Signed-off-by: Vit Stanicek <vit.stanicek@nxp.com>
2025-07-28 16:40:02 -04:00
Fabio Baltieri
7ddefbf369 tests: arm: sw_vector_table: fix build on many non systick platforms
In 4c93fcd35b, the default use case has been changed to support setting
a custom handler, but it's written in a way to only support MCUX and
SYSTICK based platforms. For any other platform the build break because
of undefined TIMER_IRQ_HANDLER and TIMER_IRQ_NUM.

Fix the conditional so that the custom timer line is only entered if a
custom handler is defined. The test would probably stil not run on those
platforms until a custom case is defined pointing at the custom timer
interrput handler, but at least it won't break CI.

Also drop a closing endif comment as that clearly became misleading.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2025-07-28 16:39:44 -04:00
Luis Ubieda
49a1b2417e icm4268x: Fix typos on has_trigger API
Missed during icm42688 to icm4268x refactoring as it was mispelled
in the first-place.

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-07-28 16:38:52 -04:00
Luis Ubieda
4e1add203f icm4268x: fix typo on ODR attribute for 16k
Otherwise this setting will be ineligible through run-time
attribute configuration.

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-07-28 16:38:52 -04:00
Cla Mattia Galliard
a1f66f05d2 drivers: mdio: shell: Fix argument count
Need to have correct argument count to avoid crash.

Signed-off-by: Cla Mattia Galliard <cla-mattia.galliard@zuehlke.com>
2025-07-28 08:57:14 -04:00
Luis Ubieda
b9099918fa paa3905: Send led-control disabled sequence
Otherwise, a previous firmware build could have run into the chip and
keep led control enabled in spite of disabling it through
dts-property.

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-07-28 08:55:56 -04:00
Gomaa Mohammed Eldebaby
01b14df31e samples: bluetooth: typo in project name
Corrected a typo in the project name within the Bluetooth
samples directory. The incorrect name was causing confusion
in documentation and build processes. This change updates
the relevant file(s) to use the correct project name, ensuring
consistency across the Zephyr repository.

Signed-off-by: Gomaa Mohammed Eldebaby <gomaaeldebaby2211@gmail.com>
2025-07-28 08:55:42 -04:00
Pavlo Hamov
684ff2b3c8 drivers: display: stm32_ltdc: mask irq if necessary
LTDC interrupt routine is used to reload frame buffer pointer
once full frame is finished flushing. As long as there is no
need to change buffer - there is no need to disturb CPU.
Thus: Enable LTDC interrupt only when new buffer is pending

Signed-off-by: Pavlo Hamov <pasha.gamov@gmail.com>
2025-07-28 08:55:06 -04:00
Daniel Schultz
fecfe5e2d7 boards: ti: am64/am24x: Update AM64x Nodes in MAIN
Update all nodes located in the MAIN domain and add the
main_ prefix. This is required because the am64x_main.dtsi
now has this prefix.

Signed-off-by: Daniel Schultz <d.schultz@phytec.de>
2025-07-28 08:53:55 -04:00
Daniel Schultz
cd96f37f82 dts: arm: ti: Move am64x_{main,mcu} to dts/vendor/ti
This files can be used by the 32-bit as well as 64-bit ARM
architectures. Move them into the dts/vendor/ti directory to
make the ISA independant.

All nodes located in the AM64x MAIN domain should have the main_
prefix. This makes it more clear where those pins are actually
located in the chip.

Signed-off-by: Daniel Schultz <d.schultz@phytec.de>
2025-07-28 08:53:55 -04:00
Jukka Rissanen
ec4d6786fd tests: net: ipv6: Test packet queing when sending NS
Add tests to make sure that if neighbor cache does not contain
info for neighbor link layer address, we can queue packets
and re-send them when the neighbor cache contains the data.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-07-28 08:53:19 -04:00
Jukka Rissanen
31329e6acb net: ipv6: Allow NS timeout to be configured
Allow user to configure how long to wait for neighbor
advertisement.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-07-28 08:53:19 -04:00
Jukka Rissanen
255253b108 net: ipv6: Add packet queueing while waiting NA
If we do not know the neighbor link address, we need to send
neighbor solicitation message to net. While waiting neighbor
advertisement, there might be other packets that we want to
send to that neighbor. Queue those packets so that all of them
can be sent when NA message is received.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-07-28 08:53:19 -04:00
Jukka Rissanen
9b763ac506 tests: net: ipv6: Make ICMP handler struct static
Make sure that we will never access ICMP handler struct
that is allocated from stack.
Without this change, there was mysterious crashes if using
native_sim board where the handler function was pointing to
stack data which contained garbage when the test was run.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-07-28 08:53:19 -04:00
Cheng Kai
cf61573ce9 Bluetooth: L2CAP: add br l2cap unregister interface
It needs to do l2cap unregister operation from app

Signed-off-by: Cheng Kai <chengkai@xiaomi.com>
2025-07-28 08:52:01 -04:00
Sean Madigan
3adae8bd9a bluetooth: host: Add support for extended feature set feature
This commit adds support for the extended feature set
feature. This includes:
- hci boilerplate
- kconfigs, including one for a max local feature page
- reading remote features is done by a command and callback
- this is not linked into the auto feature request on
connection as this procedure can take quite a few connection
events, and we do not want to delay the user
- added the commands to the bt shell

Signed-off-by: Sean Madigan <sean.madigan@nordicsemi.no>
2025-07-28 08:48:30 -04:00
Sean Madigan
cddea431eb bluetooth: host: hci_core: allow both orders of version and feature events
Previously, the version complete event had to come after
the remote feature complete event for the notify_remote_info
function to be called.

This becomes less practical when adding the read all remote
features complete event, as this can take some time. Meaning
the order of events is not predictable.

Signed-off-by: Sean Madigan <sean.madigan@nordicsemi.no>
2025-07-28 08:48:30 -04:00
Sergei Ovchinnikov
f0f2b941f0 boards: shields: add npm1304_ek shield
Add an nPM1304 EK shield, update samples/shields/npm1300_ek to support
both shields, improve the sample description.

Signed-off-by: Sergei Ovchinnikov <sergei.ovchinnikov@nordicsemi.no>
2025-07-28 08:47:49 -04:00
Bjarki Arge Andreasen
93117d98ad dts: nordic: nrf54h20: add missing ranges to reserved-memory
Add missing ranges to nrf54h20.dtsi reserved-memory. No translation
is required so ranges is set to <empty>.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-07-28 08:47:28 -04:00
Bjarki Arge Andreasen
ffe1f407d9 dts: nordic: nrf54h20: add missing ranges to global_peripherals
Add missing ranges to global_peripherals to explicitly translate
child addresses of global_peripherals in ram (0x2f000000).

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-07-28 08:47:28 -04:00
Gang Li
e67e5c916e modules: hostap: add support for OKC settings
- Added support for OKC settings

Signed-off-by: Gang Li <gang.li_1@nxp.com>
2025-07-28 08:46:37 -04:00
Gang Li
84d4592373 net: l2: wifi: add wifi config command
- Added "wifi config" command.
- Add OKC parameter to "wifi config" command.
  Set okc to 1 to enable opportunistic key caching.

Signed-off-by: Gang Li <gang.li_1@nxp.com>
2025-07-28 08:46:37 -04:00
Vinayak Kariappa Chettimada
5b1c209498 Bluetooth: Controller: Add missing atomic_get call
Add missing atomic_get call to access atomic value.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2025-07-28 08:45:59 -04:00
Vinayak Kariappa Chettimada
0a2934d1d2 Bluetooth: Controller: Fix assertion in ull_conn on HCI Reset
Fix assertion in ull_conn under race between connection
termination and processing of HCI Reset command.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2025-07-28 08:45:47 -04:00
Vinayak Kariappa Chettimada
e1541cc712 Bluetooth: Controller: Fix ULL Tx Ack index corruption under race
Fix ULL Tx Ack FIFO's first index being advanced beyond a
recorded ack_last value in a node_rx when under race.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2025-07-28 08:45:33 -04:00
Maochen Wang
eeabf28d02 drivers: wifi: nxp: IW610 aligns with RW612's config
Keep IW610 kconfig same as RW612, as it has similar Wi-Fi FW.
Remove NXP_WIFI_CAU_TEMPERATURE as it's not used.
NXP_WIFI_MEM_ACCESS, NXP_WIFI_REG_ACCESS and NXP_WIFI_OWE should not be
enabled by default.

Signed-off-by: Maochen Wang <maochen.wang@nxp.com>
2025-07-28 08:45:21 -04:00
Kavita Sharma
006302dc99 drivers: wifi: nxp: add calibration config for IW61x
Added the below config to overide default calibration data and
select 2Ant Isolation.
NXP_OVERRIDE_CALIBRATION_DATA
WLAN_CALDATA_2ANT_HI_ISO
WLAN_CALDATA_2ANT_LO_ISO

Signed-off-by: Kavita Sharma <kavita.sharma_1@nxp.com>
2025-07-28 08:45:21 -04:00
Arthur Gay
321ccb8889 led_strip: ws2812_spi: place buffer in __nocache for DMA
When using DMA for SPI communication, the WS2812 SPI buffer should be
placed in the __nocache section to ensure it resides in uncached memory,
which is typically required for DMA operations.

Signed-off-by: Arthur Gay <arthur.gay@marshmallow.kids>
2025-07-28 08:45:04 -04:00
Robert Lubos
dcbd1ed5fc tests: net: socket: tcp: Add test for keepalive connection upkeep
Add test verifying that if keep-alive messages are exchanged, the
connection remains alive.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-07-28 08:44:41 -04:00
Robert Lubos
d93c5d6072 net: tcp: Fix handling of keep-alive probes
Keep-alive probes have seq number set to SND.NXT - 1 and may or may not
contain an octet of data. The latter case was not handled properly
therefore add a special case when validating seq number to response to
keep-alive probes.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-07-28 08:44:41 -04:00
Mohamed Moawad
e717d20b0b tests: lib: uuid: add heap arena for MINIMAL_LIBC compatibility
The UUID library utilities require dynamic memory allocation for certain
operations, but MINIMAL_LIBC provides no malloc heap by default. This
causes test failures when UUID functions attempt to allocate memory.

Add CONFIG_COMMON_LIBC_MALLOC_ARENA_SIZE=256 to provide a minimal heap
arena sufficient for UUID operations which typically
require small heap allocations.

Signed-off-by: Mohamed Moawad <moawad@synopsys.com>
2025-07-28 08:40:20 -04:00
Fengming Ye
6e079f3ed6 net: wifi: fix 11k cannot be set before connection
Support the case that 11k parameter can be set before wifi connection.
This field should not be cleared by connection.
Neighbor report will be cleared before start_roaming.
So wifi_connect don't need to clear 11k params.

Signed-off-by: Fengming Ye <frank.ye@nxp.com>
2025-07-28 08:39:39 -04:00
Fengming Ye
a14c78a0da modules: hostap: fix wifi roaming aborted in few cases
Add guard of supplicant state condition.
Not send neighbor request in auth procedures.
Add process for null pointer params.

Signed-off-by: Fengming Ye <frank.ye@nxp.com>
2025-07-28 08:39:39 -04:00
Bartosz Miller
b78be6baba tests: drivers: flash: Add MSPI flash test in single I/O mode
Test external MSPI flash in single I/O mode

Signed-off-by: Bartosz Miller <bartosz.miller@nordicsemi.no>
2025-07-28 08:38:58 -04:00
Peter van der Perk
0f6e5e3f26 drivers: ethernet: eth_nxp_enet_qos: init phy callback in iface init
Initially phy_link_callback_set got called before iface init got set.
Moving to iface_init, fixes an issue that mac would set interface to up
even though it was down because startup phy down callback didn't got
through.

Signed-off-by: Peter van der Perk <peter.vanderperk@nxp.com>
2025-07-28 08:38:47 -04:00
Erwan Gouriou
66e7d2c348 board: stm32n6570_dk: Document dedicated ISP module availability
Document the availability of the ISP module which was made public
recently.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2025-07-28 08:38:01 -04:00
Vytautas Virvičius
4bd85fe6c4 samples: net: zperf: add cellular modem support
This commit adds a cellular modem overlay to the zperf sample, enabling
the use of zperf with a cellular modem.

Signed-off-by: Vytautas Virvičius <vytautas@virvicius.dev>
2025-07-28 08:36:57 -04:00
Marcin Szymczyk
3775b6a751 MAINTAINERS: update hal_nordic maintainers and contributors
Add missing maintainers and contributirs to `hal_nordic` area.

Signed-off-by: Marcin Szymczyk <marcin.szymczyk@nordicsemi.no>
2025-07-28 08:35:57 -04:00
Alberto Escolar Piedras
6d8ad26868 soc/Kconfig: Move SOC_COMPATIBLE_NRF* options to soc/nordic/Kconfig
Since the change to HWmv2 we do not need to have this options in the
top level anymore. Let's move them into the top level Nordic SOC
Kconfig file.
(Note they moving into into each individual soc Kconfig would
add a dependency on SOC_FAMILY_NORDIC_NRF which is not set for
bsim targets)

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-07-28 08:35:13 -04:00
Alberto Escolar Piedras
13c8a51227 soc/nordic/nrf53/Kconfig.soc: Fix typo
Just a copy paste typo

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-07-28 08:35:13 -04:00
Alberto Escolar Piedras
43a9724e3c modules: hal_nordic: Remove redundant compile definition lines
These CONFIG_SOC_NRF5* are set when the corresponding
CONFIG_SOC_COMPATIBLE_NRF* option is set. There is no need to have both
conditions.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-07-28 08:35:13 -04:00
Alberto Escolar Piedras
d9b130823a soc: nordic: nrf54l: Set SOC_COMPATIBLE for 54L15 CPUFLPR target
So we can use just SOC_COMPATIBLE_NRF54L15 in place of
SOC_NRF54L15

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-07-28 08:35:13 -04:00
Chaitanya Tata
40b7b87ad7 drivers: nrf_wifi: Fix defaults to avoid false recovery
In case of a busy environment and if STA is far, then we see many
retries for the frames that cause the RPU to be awake though host has
de-asserted wakeup_now signal, this leads to WDT interrupt and host
thinks that it has given sleep opportunity to RPU and initiates a
recovery.

To handle this, increase the sleep opportunity window to 5s to cover all
the retries, this solves the false recovery problem. While at it, also
increase the range, no reason to limit to lower window. And update the
help text with the warning about power consumption.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-07-28 08:34:49 -04:00
Pieter De Gendt
cb4ad44f94 doc: releases: release-notes-4.3: Add chipsemi,chsc5x driver
Add an entry for the new CHSC5X touch controller driver.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-07-28 08:34:35 -04:00
Matthias Alleman
b90e3a2d8b tests: drivers: build_all: add chsc5x build test
Add test for chsc5x input driver.

Signed-off-by: Matthias Alleman <matthias.alleman@basalte.be>
2025-07-28 08:34:35 -04:00
Matthias Alleman
947189f70a drivers: input: add chsc5x driver
Add support for the chsc5x touch controller.

Signed-off-by: Matthias Alleman <matthias.alleman@basalte.be>
2025-07-28 08:34:35 -04:00
Michał Bainczyk
ba3662ac5d samples: boards: nrf: clock_control: Add memory-regions prop to uart sample
Add missing "memory-regions" property which is required for UART
on NRF54H20 to clock_control sample overlay file.

Signed-off-by: Michał Bainczyk <michal.bainczyk@nordicsemi.no>
2025-07-28 04:27:25 -04:00
Michał Bainczyk
2e06c4ed20 drivers: nrf: add build asserts for memory-regions property
Add build asserts for "memory-regions" property in nrf drivers which is
required on targets with DMM for saadc, pdm, pwm, twim, twim_rtio, twis,
tdm, uarte, spim and spis. On targets where the property is not required
the assertion macro expands to nothing.

Signed-off-by: Michał Bainczyk <michal.bainczyk@nordicsemi.no>
2025-07-28 04:27:25 -04:00
Chris Friedt
ccf7f72e6c drivers: hwinfo: split kconfig into separate files
Split Kconfig into separate files sorted by name.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-07-28 04:23:21 -04:00
Fabio Baltieri
d710ba4d04 test: check_init_priorities: add a test for initlevels
Add a test for check_init_priorities --initlevels in addition to the
normal error output, this validates that the function names are printed
correctly.

The current case covers sys_init, device with no init functions and
device with init function so it should be all cases.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2025-07-28 04:22:43 -04:00
Fabio Baltieri
b1fccaad6e scripts: check_init_priorities: fix device function name display
Device init pointers have been moved off struct init_entry and into
struct device in 766bfe7b2e, but check_init_priorities.py have not been
modified to check the new pointer so it's been showing NULL for all
devices since.

Fix it by searching down the right pointer for device init entries.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2025-07-28 04:22:43 -04:00
Hanan Arshad
6e3a1fda49 manifest: hal_rpi_pico: Pull partial flash write changes from hal_rpi_pico
This commit links the hal_rpi_pico PR required for the flash driver.
west.yml is updated

Signed-off-by: Hanan Arshad <hananarshad619@gmail.com>
2025-07-27 20:11:20 -04:00
Hanan Arshad
428eced7d0 drivers: flash: flash_rpi_pico: fix indentation and remove unused variables
Cleaned up the flash_rpi_pico driver to improve code readability and
compliance with Zephyr coding standards. Fixed inconsistent indentation
across the file and removed variables that were declared but not used.

A few improvements are credited to Manu3l0us.

Signed-off-by: Hanan Arshad <hananarshad619@gmail.com>
2025-07-27 20:11:20 -04:00
Hanan Arshad
5d36e85b99 drivers: flash: rpi_pico: add support for rp2350 flash controller
The Raspberry Pi Pico 2 uses a QMI flash controller, which differs from the
SSI controller used in the original Pico. Zephyr already has support for
the SSI controller, but lacked support for QMI.

This change adds the QMI flash controller implementation in the
flash_rpi_pico.c driver file. Additionally, the RP2350 SoC devicetree file
(rp2350.dtsi) has been updated to enable and describe the flash controller
for Pico 2.

Signed-off-by: Hanan Arshad <hananarshad619@gmail.com>
2025-07-27 20:11:20 -04:00
Victor Brzeski
c0e1268d9f usb: device_next: hid: Fix endpoint address getters
This commit resolves a bug where the USB Endpoint
provided by the HID driver was incorrect when in
High Speed mode.

Signed-off-by: Victor Brzeski <vbrzeski@gmail.com>
2025-07-27 17:57:05 -04:00
Nicola Vetrini
0de4f8de4a sca: eclair: Make ECLAIR project root configurable.
The project root was set unconditionally as the variable ZEPHYR_BASE,
but users developing a Zephyr application may wish to override the project
root used by ECLAIR as the base directory of their projects, so that
all paths processed by the tool are relative to that directory.

- A new cmake variable ECLAIR_PROJECT_ROOT is introduced;
- additional messages to output this information before the build starts.

Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com>
2025-07-27 17:03:02 -04:00
Yuval Peress
ed8f537d89 adc: Fix C++ initialization for channel cfg
When compiling with -Werror=missing-field-initializers and the
differential is disabled, we get a compilation error for the ADC
drivers. We should still initialize the value to false.

Signed-off-by: Yuval Peress <yuval.peress@gmail.com>
2025-07-27 05:00:01 -04:00
Mahesh Mahadevan
85e1353624 samples: led_pwm: Lower the blinking delay for RT1180 EVK
The blinking period provided by default was too large
for this platform.

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2025-07-25 23:37:00 +02:00
Mahesh Mahadevan
11cb93dadf boards: mimxrt1180_evk: Use both LEDs on the board
When the gpio-leds and pwm-leds nodes are enabled,
the pin gets reconfigured to the driver that is
initialized later as both nodes were using the same
LED.
Use the Red LED that was unused for gpio-leds node.

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2025-07-25 23:37:00 +02:00
Mahesh Mahadevan
2bce5c1fc8 boards: mimxrt1180_evk: Add support for the Red LED
Add support for the Red LED that is on the board.

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2025-07-25 23:37:00 +02:00
Luis Ubieda
1725408b59 bmp581: code-style improvements
Remove extra-parentheses when operator precedence is implicit.
Eliminate implicit integer to boolean conversions.

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-07-25 23:33:47 +02:00
Luis Ubieda
e7395a90f6 bmp581: stream: Add FIFO Watermark support
Configurable through dts property: fifo-watermark.

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-07-25 23:33:47 +02:00
Luis Ubieda
7e3d5679d9 bmp581: Add LOG_ERR if initialization fails
Usually, drivers failing to initialize throw a message in the log,
signaling the cause of failure. Add it to this driver so the user
isn't confused by no message yet the device being marked as disabled.

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-07-25 23:33:47 +02:00
Luis Ubieda
d2c4d0c34e bmp581: fix: Add parenthesis to macro arguments
Otherwise it leads to potential incorrect expansions.

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-07-25 23:33:47 +02:00
Tim Pambor
dff24c8c00 twister: Fix race condition in try_making_symlink
Replaces the check-then-create pattern for symlinks with
opportunistic creation. Instead of checking for existence
before creating the symlink, the code now attempts to
create it directly and gracefully handles the case
where it already exists.

Signed-off-by: Tim Pambor <tim.pambor@codewrights.de>
2025-07-25 23:30:31 +02:00
Tahsin Mutlugun
4c1c954347 samples: sensor: pressure_polling: Add delay between sensor readings
Introduce a 1000 ms delay between consecutive sensor readings to prevent
logging overflow and reduce console clutter.

Signed-off-by: Tahsin Mutlugun <Tahsin.Mutlugun@analog.com>
2025-07-25 23:30:20 +02:00
Tahsin Mutlugun
75d383548d samples: sensor: pressure_polling: Log altitude only if supported
Most pressure sensors provide temperature and pressure data, but only a
few support altitude readings. This change adds a check to ensure
altitude is logged only when the sensor supports it.

Signed-off-by: Tahsin Mutlugun <Tahsin.Mutlugun@analog.com>
2025-07-25 23:30:20 +02:00
Scott Worley
c084c0e776 tests: arch: arm: arm_irq_vector_table: Microchip MEC build fix
Running twister with plaform Microchip mec_assy6941/<variant_name>
builds the arm_irq_vector_table test. Microchip mec_assy6941 boards
all use a 32-bit 32 KHz timer for the kernel. The test build fails
due to any board using a custom kernel timer driver requires the
test to include a chip specific interrupt table. We don't want to
exclude the test. The MEC chips include Cortex-M4 SysTick. We added
board overlays to the test turning off the 32KHz timer and enabling
ARM SysTick. The test now builds.

Signed-off-by: Scott Worley <scott.worley@microchip.com>
2025-07-25 23:29:54 +02:00
Raffael Rostagno
166bf18d30 drivers: counter: esp32: Fix alarm stops working
Fix condition in which alarm stops working after a certain amount
of time. Hardware timer is 54-bit, yet it is treated as 32-bit by
the counter driver. To allow alarm event by hardware comparators,
counter high word must be loaded into the register along with
the lower word managed by the driver.

Signed-off-by: Raffael Rostagno <raffael.rostagno@espressif.com>
2025-07-25 23:29:40 +02:00
Benjamin Cabé
08e328724c include: drivers: misc: ft8xx: add doxygen to ft8xx_touch_transform
Add missing documentation for ft8xx_touch_transform fields.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-07-25 23:29:31 +02:00
Iuliana Prodan
e8e0f4dc9d MAINTAINERS: add arnopo as Open AMP collaborator
Add arnopo (Arnaud Pouliquen) as Open AMP collaborator.

Signed-off-by: Iuliana Prodan <iuliana.prodan@nxp.com>
2025-07-25 23:29:23 +02:00
Anas Nashif
d54d69b59b tracing: introduce ram tracing snippet
This allows tracing any application and stores the data in RAM. Using
gdb, the ram_tracing variable contents can then be saved and viewed
using babeltrace.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-07-25 23:29:14 +02:00
Anas Nashif
a096b34835 tracing: ctf: trace k_sleep()
Trace sleep events in CTF:

[19:00:00.181375400] (+0.000044700) k_sleep_enter: ...
..
[19:00:00.290203800] (+0.000031500) k_sleep_exit: ...

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-07-25 23:29:14 +02:00
sudarsan N
7312715975 drivers: sensor: fcx_mldx5: Fix potential buffer overflow in UART frame
Fix Coverity issue CID 363738 (CWE-120): A potential buffer overflow could
occur in fcx_mldx5_uart_send() due to unchecked memcpy() when copying
command data into a fixed-size frame buffer.

This patch ensures that the length of the data being copied validated
against the remaining buffer size to prevent overruns. Also replaces a
redundant strlen() call with the precomputed cmd_data_len.

Fixes: #92634

Signed-off-by: sudarsan N <sudarsansamy2002@gmail.com>
2025-07-25 23:29:04 +02:00
Luis Ubieda
a022394515 doc: migration guide 4.3: Add entry to continue using icm42688
Users now requiring to define both dt compatibles: both icm4268x and
icm42688 to work.

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-07-25 23:28:47 +02:00
Luis Ubieda
768099e27c tests: sensor: Add icm42686 node to test
For build-time validation.

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-07-25 23:28:47 +02:00
Luis Ubieda
2d589fda85 boards: vmu_rt1170: Update dts to reflect the second IMU being ICM42686
Additionally, remove overlay from sensor-shell sample, which is
redundant.

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-07-25 23:28:47 +02:00
Luis Ubieda
216fc8f5de sensor: icm4268x: Add support for ICM42686 variant
Now this driver supports both ICM42688 and ICM42686.
Tested with read-decode as well as streaming mode.

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-07-25 23:28:47 +02:00
Luis Ubieda
8b30d11785 sensor: icm4568x: Address existing code issues by static analysis
Addressing low-hanging fruits.

Put in a separate commit in order to make it easier to keep track of
changes.

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-07-25 23:28:47 +02:00
Luis Ubieda
8db851ff57 general: icm4268x: Refactor ICM42688 driver to ICM4268X
As a first step to enable the similar variants (e.g: ICM42686),
refactor common functionality into icm4268x files. As a result,
applications using the icm42688 will need to have both compatible
properties: "invensense,icm42688" and "invensense,icm4268x" defined.
In-tree boards have been modified to comply with this pattern.

This patch does not contain functional changes. The driver should
work the same as before.

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-07-25 23:28:47 +02:00
Fabio Baltieri
5c7c3980eb tests: drivers: spi: drop non existing board
nrf54l20pdk has been dropped in 878ddbe2f6.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2025-07-25 18:19:37 +02:00
Pieter De Gendt
65e21f066f modules: lvgl: Optional BGR888 to RGB888
Some display controllers allow to work with BGR888 directly, a significant
reduction in CPU load is gained this way.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-07-25 17:04:07 +01:00
Mathieu Choplain
aab3586da9 boards: st: nucleo_wb09ke: use STM32_CLOCK
This board was introduced concurrently with the STM32_CLOCK macro, so the
board's DTS uses the old method instead of the macro to specify clocks.

Update the DTS to use the STM32_CLOCK macro as other places do now.

Signed-off-by: Mathieu Choplain <mathieu.choplain@st.com>
2025-07-25 17:03:56 +01:00
Mathieu Choplain
93fada96c6 boards: st: nucleo_wb05kz: use STM32_CLOCK
This board was introduced concurrently with the STM32_CLOCK macro, so the
board's DTS uses the old method instead of the macro to specify clocks.

Update the DTS to use the STM32_CLOCK macro as other places do now.

Signed-off-by: Mathieu Choplain <mathieu.choplain@st.com>
2025-07-25 17:03:56 +01:00
Mathieu Choplain
381d820f68 arm: irq: fail build if IRQ_CONNECT is used with ZLI
Commit 3b8e1fa8df updated the documentation
to mention explicitly that ZLI must be registered using IRQ_DIRECT_CONNECT.

Update the ARM IRQ macros such that attempts to register a ZLI using
IRQ_CONNECT becomes a build failure instead of silently succeeding.

Signed-off-by: Mathieu Choplain <mathieu.choplain@st.com>
2025-07-25 17:03:46 +01:00
Chaitanya Tata
7fbb0fda6c manifest: hostap: Pull support to dump keys
Helps in debugging crypto issues.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-07-25 17:03:38 +01:00
Chaitanya Tata
0bc9c16947 modules: hostap: Add Kconfig option for debug key material
Add CONFIG_WIFI_NM_WPA_SUPPLICANT_DEBUG_SHOW_KEYS option to control
whether key material (passwords, encryption keys, etc.) is included
in debug output. This is equivalent to the -K command line flag in
wpa_supplicant.

The option:
- Defaults to disabled (n) for security reasons
- Includes clear warning about security risks
- Should only be enabled during development/debugging
- Provides compile-time control over key material logging

This allows developers to enable key material debugging when needed
while maintaining security by default.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-07-25 17:03:38 +01:00
Chaitanya Tata
4ef042a614 manifest: nrf_wifi: Pull fix for raw TX
Pull fix for double pulling of raw TX header, fixes warnings seen during
tests.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-07-25 17:03:38 +01:00
Ajay Parida
3e9b7cbeb4 drivers: wifi: Pass the connection type
Firmware needs to know the connection type to be established.
use the wpa_proto field to derive the connection type.

Signed-off-by: Ajay Parida <ajay.parida@nordicsemi.no>
2025-07-25 17:03:38 +01:00
Ajay Parida
c70b3504bb net: l2: wifi: Configure BSS max idle period
Support to configure BSS max idle period at runtime.

Signed-off-by: Ajay Parida <ajay.parida@nordicsemi.no>
2025-07-25 17:03:38 +01:00
Triveni Danda
3f037430b6 net: l2: wifi: Refactor certificates processing code into common file
Refactor certificate processing code to eliminate duplication and
enable reuse across modules that require enterprise support.

Signed-off-by: Triveni Danda <triveni.danda@nordicsemi.no>
2025-07-25 17:03:38 +01:00
Ravi Dondaputi
cfc3cd7ba0 modules: hostap: Define dedicated heap for supplicant
Create dedicated heap for supplicant operations and define
the heap size.

Signed-off-by: Ravi Dondaputi <ravi.dondaputi@nordicsemi.no>
2025-07-25 17:03:38 +01:00
Kapil Bhatt
fbd34dac0f wifi: Fix fractional part of Tx rate by converting to float
The Tx rate was previously stored as an integer, which caused loss of
precision for rates like 8.6 Mbps or 34.4 Mbps due to integer division.
The change will update data type to float.

Signed-off-by: Kapil Bhatt <kapil.bhatt@nordicsemi.no>
2025-07-25 17:03:38 +01:00
Michal Piekos
db0e8a6ff3 boards: weact: add weact stm32u585ci core board
Low cost STM32U585CI development board in blackpill package.

Signed-off-by: Michal Piekos <michal.piekos@wp.pl>
2025-07-25 17:03:22 +01:00
Michał Stasiak
dd8a8697e2 drivers: spi: nrfx_spi(m/s): enable cross domain pins for nRF54L15
SPI(M/S)20 and SPIM(M/S)21 instances enable usage of pins on different
port, but require request for constant latency mode. Added
handling of such scenario in the driver. Added testcase
to cover it.

Signed-off-by: Michał Stasiak <michal.stasiak@nordicsemi.no>
2025-07-25 17:03:11 +01:00
Michał Stasiak
e8dd83b43d drivers: serial: nrfx_uarte: enable cross domain pins for nRF54L15
UARTE20 and UARTE21 instances enable usage of pins on different
port, but require request for constant latency mode. Added
handling of such scenario in the driver. Added testcase
to cover it.

Signed-off-by: Michał Stasiak <michal.stasiak@nordicsemi.no>
2025-07-25 17:03:11 +01:00
Jeremy Bettis
aab1dc6858 shell: Restore uninit_cb that was lost in #93154
The sh->ctx->uninit_cb needs to be set before posting the
SHELL_SIGNAL_KILL to the event, like the k_poll based code did prior to

Signed-off-by: Jeremy Bettis <jbettis@google.com>
2025-07-25 17:02:31 +01:00
Thomas Stranger
c14a756cc0 dts: arm: st: c0: stm32c091 set exti lines to 32
The line does not have usb, and therefore no exti
line at 36.

Signed-off-by: Thomas Stranger <thomas.stranger@outlook.com>
2025-07-25 16:56:21 +01:00
Nikodem Kastelik
20efb9edbb tests: nrf: comp: fix VDD reference dependency
Some SoCs might not have any VDD reference available.
Use internal 1.2V reference derived from VDD in this case.

Signed-off-by: Nikodem Kastelik <nikodem.kastelik@nordicsemi.no>
2025-07-25 08:20:09 -04:00
Nikodem Kastelik
04f7fc5095 drivers: adc: nrfx_saadc: remove VDD and DVDD inputs for nRF54LV10A
MDK 8.72.1 does not specify VDD and DVDD internal analog inputs
for this SoC.

Signed-off-by: Nikodem Kastelik <nikodem.kastelik@nordicsemi.no>
2025-07-25 08:20:09 -04:00
Nikodem Kastelik
2a615c496c manifest: update hal_nordic revision to integrate nrfx 3.13.0
New nrfx release contains MDK 8.72.1
and various fixes for nRF devices.

Signed-off-by: Nikodem Kastelik <nikodem.kastelik@nordicsemi.no>
2025-07-25 08:20:09 -04:00
Alexander Kozhinov
42babf7aa9 doc: releases: release-notes-4.3.rst
add release note for STM32 EXTI driver

Signed-off-by: Alexander Kozhinov <ak.alexander.kozhinov@gmail.com>
2025-07-25 08:18:48 -04:00
Alexander Kozhinov
b6b7b6759d include: zephyr: dt-bindings: clock: stm32mp13_clock
add APB3_S bus

Signed-off-by: Alexander Kozhinov <ak.alexander.kozhinov@gmail.com>
2025-07-25 08:18:48 -04:00
Alexander Kozhinov
a13a857ddd include: zephyr: dt-bindings: clock: stm32wl_clock
add APB0 bus

Signed-off-by: Alexander Kozhinov <ak.alexander.kozhinov@gmail.com>
2025-07-25 08:18:48 -04:00
Alexander Kozhinov
f336cd4f65 dts: arm: st: update exti
update exti num-lines to depict total number of lines
add clocks entry to exti nodes of certain series

Signed-off-by: Alexander Kozhinov <ak.alexander.kozhinov@gmail.com>
2025-07-25 08:18:48 -04:00
Alexander Kozhinov
2d4a1196a2 tests: drivers: interrupt_controller: add new test for STM32 EXTI
add exti driver tests for stm32 platform

Signed-off-by: Alexander Kozhinov <ak.alexander.kozhinov@gmail.com>
2025-07-25 08:18:48 -04:00
Alexander Kozhinov
6303018b1c tests: drivers: gpio_basic_api: add more boards
add nucleo_h745zi_q_stm32h745xx_m7 overlay
add stm32mp257f_ev1_stm32mp257fxx_m33 overlay

Signed-off-by: Alexander Kozhinov <ak.alexander.kozhinov@gmail.com>
2025-07-25 08:18:48 -04:00
Alexander Kozhinov
10dd8fe11d tests: drivers: rtc_api: add overlay for Nucleo-H745ZI-Q
add nucleo_h745zi_q_stm32h745xx_m7 overlay and config
add nucleo_h745zi_q_stm32h745xx_m4 overlay and config

Signed-off-by: Alexander Kozhinov <ak.alexander.kozhinov@gmail.com>
2025-07-25 08:18:48 -04:00
Alexander Kozhinov
e01357461d drivers: rtc: rtc_ll_stm32: update to new EXTI API
integrate EXTI driver

Co-authored-by: Mathieu CHOPLAIN <mathieu.choplain@st.com>
Signed-off-by: Alexander Kozhinov <ak.alexander.kozhinov@gmail.com>
2025-07-25 08:18:48 -04:00
Alexander Kozhinov
de22c560a3 drivers: interrupt_controller: intc_gpio_stm32: update to new EXTI binding
integrate intc_exti_stm32 to intc_gpio_stm32

Co-authored-by: Mathieu CHOPLAIN <mathieu.choplain@st.com>
Signed-off-by: Alexander Kozhinov <ak.alexander.kozhinov@gmail.com>
2025-07-25 08:18:48 -04:00
Alexander Kozhinov
5eb84df502 dts: bindings: interrupt_controller: introduce num-gpio-lines
add num-gpio-lines with default value of 16 to
st,stm32-exti.yaml

Co-authored-by: Mathieu CHOPLAIN <mathieu.choplain@st.com>
Signed-off-by: Alexander Kozhinov <ak.alexander.kozhinov@gmail.com>
2025-07-25 08:18:48 -04:00
Alexander Kozhinov
36ef80033c drivers: interrupt_controller: introduce STM32 EXTI driver
add peripheral lines support
add EXTI interface

Co-authored-by: Mathieu CHOPLAIN <mathieu.choplain@st.com>
Signed-off-by: Alexander Kozhinov <ak.alexander.kozhinov@gmail.com>
2025-07-25 08:18:48 -04:00
Alexander Kozhinov
5e727d7e83 drivers: interrupt_controller: exti_stm32: rename to intc_gpio
rename intc_exti_stm32.c to intc_gpio_stm32.c
rename EXTI_STM32 to GPIO_INTC_STM32 in Kconfig.stm32
update CMakeLists.txt

Signed-off-by: Alexander Kozhinov <ak.alexander.kozhinov@gmail.com>
2025-07-25 08:18:48 -04:00
Aziz Sellami
0351ff7e42 boards: nxp: imx95_evk_15x15: add i.MX 95 15x15 LPDDR4x EVK variant
Add initial support for i.MX 95 15x15 LPDDR4x EVK board. This board
uses the i.MX 95 15x15 SoC that shares many similarities to the
already supported i.MX 95 19x19 SoC used for the i.MX 95 19x19
LPDDR5 EVK.

This enables Zephyr to boot and run on the i.MX 95 15x15 EVK and
provides a foundation for further peripheral enablement and
application development.

Signed-off-by: Aziz Sellami <aziz.sellami@nxp.com>
2025-07-25 08:18:19 -04:00
Aziz Sellami
956baf9835 dts: nxp: imx95-ca55: add dts for SoC 15x15 variant
As i.MX 95 19x19 and i.MX 95 15x15 have different pinmux definitions,
keep common part in nxp_mimx95_a55.dtsi, and define separate dts file
for each variants. These include the common part and their respective
pinmux definitions.

Signed-off-by: Aziz Sellami <aziz.sellami@nxp.com>
2025-07-25 08:18:19 -04:00
Ioannis Karachalios
1278fd0c0f drivers: gpio: smartbond: Fix PDC GPIO port selection
The GPIO block instance is based on the instance number during the
device driver initialization. This is not correct as instance numbers
in now way reflect any numbering scheme. Therefore, a DTS property
is introduced so that the block instance numbering is indicated
explicitly.

Signed-off-by: Ioannis Karachalios <ioannis.karachalios.px@renesas.com>
2025-07-25 08:17:51 -04:00
Aleksandr Khromykh
34c3ccf1b4 tests: bluetooth: mesh: extend provisioning test with gotten stuck key
Commit extends existing persistent provisioning bsim mesh test that
checks that mesh removes gotten stuck persisted key if key is reused.
Correct key is imported normally after that.

Signed-off-by: Aleksandr Khromykh <aleksandr.khromykh@nordicsemi.no>
2025-07-25 08:17:24 -04:00
Aleksandr Khromykh
c02ec1f645 bluetooth: mesh: remove persisted psa key if mesh does not own it
Commit adds destruction of the persisted in PSA ITS key if
mesh does not own it (zero bit in the bitmap of persisted keys).

This is not standard mesh behavior, but might happen
if something happens between removing key data in mesh and
in the crypto library (for example power off in bettwen).

Previously, mesh wasn't able to import key with gotten stuck
key id. The current fix reproduces more robust behavior.

Signed-off-by: Aleksandr Khromykh <aleksandr.khromykh@nordicsemi.no>
2025-07-25 08:17:24 -04:00
Alexander Paschoaletto
8c03410af0 tracing: msgq: adding dedicated tracing for k_msgq_put_front
This commit adds the tracing macros and functions related
specifically to the k_msgq_put_front API.

Signed-off-by: Alexander Paschoaletto <axelpinheiro@gmail.com>
2025-07-25 08:16:58 -04:00
Alexander Paschoaletto
34efba28b1 sample: msgq: adding a sample code for message queue base usage
this commit adds a sample code to illustrate the base usage
of message queues. a producer and a consumer thread work
together, exchanging messages in a FIFO (for normal payloads)
and LIFO (for higher priority payloads) schemes.

Signed-off-by: Alexander Paschoaletto <axelpinheiro@gmail.com>
2025-07-25 08:16:58 -04:00
Alexander Paschoaletto
16986849d5 kernel: msgq: adding support to k_msgq_put_front
This commit introduces the k_msgq_put_front API for sending
messages to a queue in a LIFO scheme.

Signed-off-by: Alexander Paschoaletto <axelpinheiro@gmail.com>
2025-07-25 08:16:58 -04:00
Thomas Stranger
5673189e7b samples: boards: st: power_mgmt: wkup_pins: add nucleo_c092rc
Add an overlay to the st specific power_mgmt wkup_pins sample
for the nucleo_c092rc board.
The user_button on pc13 is used as the wakeup-src.

Signed-off-by: Thomas Stranger <thomas.stranger@outlook.com>
2025-07-25 08:14:53 -04:00
Thomas Stranger
8c77e53d87 tests: drivers: counter: counter_basic_api: add nucleo_c092rc overlay
Add a overlay to the counter_basic_api test to enable the counter node
of TIM2, TIM3, and TIM14 to TIM17.

Signed-off-by: Thomas Stranger <thomas.stranger@outlook.com>
2025-07-25 08:14:53 -04:00
Thomas Stranger
ca77f31da0 tests: drivers: uart: uart_async_api: add nucleo_c092rc overlay
Add a overlay for the nucleo_c092 testing usart4 and dma
channels 6 and 7. These are all not available in smaller STM32C0 SoCs.

Signed-off-by: Thomas Stranger <thomas.stranger@outlook.com>
2025-07-25 08:14:53 -04:00
Thomas Stranger
0b5eaf8ed2 tests: drivers: adc: adc_api: add overlay for nucleo_c092rc
Add an overlay to use adc1 channel 0 (on PA0) for testing.

Signed-off-by: Thomas Stranger <thomas.stranger@outlook.com>
2025-07-25 08:14:53 -04:00
Thomas Stranger
161fbd10a1 boards: st: add nucleo_c092rc
Adds definitions for the nucleo_c092rc supporting
the STM32C092RC entry-level MCU with CAN-FD support.

The series does not have a pll, so with the given 48MHz
CAN core clock frequency the internal timing calculation
can't find parameters for 5MHz data bitrate,
and for 8MHz they have an error of 84/1000.

Signed-off-by: Thomas Stranger <thomas.stranger@outlook.com>
2025-07-25 08:14:53 -04:00
Thomas Stranger
17ade56ed9 dts: arm: st: stm32c0: add counter nodes to all timers
Add the counter nodes (compat st,stm32-counter)
to all timers of the STM32C0 series.

Signed-off-by: Thomas Stranger <thomas.stranger@outlook.com>
2025-07-25 08:14:53 -04:00
Thomas Stranger
3e5bb62bbb dts: arm: st: stm32c0: add stm32c09x support
Add dts support for the STM32C091 and STM32C092 SoCs,
that are part of the STM32C0 series.

Signed-off-by: Thomas Stranger <thomas.stranger@outlook.com>
2025-07-25 08:14:53 -04:00
Thomas Stranger
0a27353945 dt-bindings: clock: stm32c0: add can-fd domain clock helper
On STM32C092 variants CAN-FD is supported, and the clock
source can be chosen in the CCIPR1 register.
This commit adds the helper to prepare that choice for the register.

Signed-off-by: Thomas Stranger <thomas.stranger@outlook.com>
2025-07-25 08:14:53 -04:00
Thomas Stranger
33f534e82e soc: st: stm32: add stm32c09x support
Adds SoC support for the STM32C091, and the STM32C092 SoCs
which are part of the STM32C0 series.

Signed-off-by: Thomas Stranger <thomas.stranger@outlook.com>
2025-07-25 08:14:53 -04:00
Omkar Kulkarni
602fd0d889 Bluetooth: Mesh: Blob Server considers friendship
Fix Max Chunk reporting during Block_Information_Get:
If friendship is established, then max possible chunk size for transfer
is reported according to friend's queue size.

ChunkSize = (FndQ sz * Bytes per seg (12)) - Opcode(1) - Chunk_Num (2)-
            8 byte MIC (max)
	  = (FndQ sz * 12) - 11

This allows all segments of Chunk_Transfer messages to fit in a friend
queue. If this is not done, friend queue keeps overflowing
systematically causing unstable PULL_MODE transfers.

Fix Chunk requests:
Adapt number of requested chunks according to current friend queue size.
If friend queue is too small, at least 1 chunk is requested.

Signed-off-by: Omkar Kulkarni <omkar.kulkarni@nordicsemi.no>
2025-07-25 08:14:26 -04:00
Jamie McCrae
6751c85c63 scripts: ci: check_compliance: Add check for zephyr module file
Adds a check which fails CI if a zephyr module file is added to the
zephyr repository itself

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-07-25 08:13:56 -04:00
Bastien Beauchamp
46ad33a13d dts: arm: silabs: fix interrupt level for acmp0 on xg21
Fix interrupt level for acmp0 in the dts for xg21 device.
Only radio interrupts are critical and should have priority 0.

Signed-off-by: Bastien Beauchamp <bastien.beauchamp@silabs.com>
2025-07-25 08:12:16 -04:00
Bastien Beauchamp
1ec2bd3d22 dts: arm: silabs: instantiate acmp1 nodes for xg2x parts
Add the missing node for acmp1 in the dts for xg21, xg23 and xg23 devices.

Signed-off-by: Bastien Beauchamp <bastien.beauchamp@silabs.com>
2025-07-25 08:12:16 -04:00
Emilio Benavente
cd33821a1a tests: drivers: watchdog: Excluding frdm_mcxw71 from basic api
The wdt_basic_api test uses retained memory. Currently,
uses sram0 for the ram space. This mostly does not retain
memory. Since the test variables are unable to retain
their value this platform test fails and should be excluded
for now.

Signed-off-by: Emilio Benavente <emilio.benavente@nxp.com>
2025-07-25 08:11:47 -04:00
Alden Haase
c7b17e7cac sensor: icm45686: Fix icm45686-xxx example node
The icm45686-xxx example nodes have incorrect node labels.
The current node labels are for the icm42688.

Signed-off-by: Alden Haase <aldenhaase@gmail.com>
2025-07-25 08:11:28 -04:00
Jérôme Pouiller
6d95573df8 boards: silabs: siwx91x: Expose real layout of the flash
The Network Coprocessor on SiWx91x owns a large part of the flash. Zephyr
is not expected to access to theses areas.

However, it is still technically possible to access these. In addition, we
prefer the DTS contains a comprehensive and transparent description of the
hardware. So update the DTS with the real partitioning of the SoC.

Reference documentation is available here[1].

[1]: https://www.silabs.com/documents/public/application-notes/
     an1416-siwx917-soc-memory-map.pdf

Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
2025-07-25 08:11:11 -04:00
Tom Burdick
be4c3804de rtio: Fix syscall verify misra-c:2004 12.4 issue
MISRA-C says the right hand of a logical and should not contain side
effect operations. Instead nest the branches to get the same logic
without the MISRA-C rule breakage.

Signed-off-by: Tom Burdick <thomas.burdick@intel.com>
2025-07-25 08:09:41 -04:00
Daniel Leung
95c3b8e085 tests: kernel/smp: more timeout
The concurrency and switching tests take quite some time to
finish (relatively speaking). When running in emulator and
under a heavily loaded system (e.g. twister-ing), it may
time out as the emulator is not getting much CPU time. So
make the base timeout longer, which can then be further
adjusted by the board timeout multiplier.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-07-25 08:08:09 -04:00
David Leach
b90cb5b773 maintainer: hal_nxp: align names to new management process
Align maintainers/collaborators to support new module management
process.

Signed-off-by: David Leach <david.leach@nxp.com>
2025-07-25 08:07:48 -04:00
Declan Snyder
fb0ca1653f samples: net: sockets: http_server: Dont block system workq
Since the netstats handler calls on functions which reach deep into the
networking stack, there is a lot of points actually at which it can be
blocked, even forever. So having this handler on the system workqueue is
not a good idea and can even cause a deadlock in some cases if it's
blocked waiting on a synchronization primitive that would be given by a
work item scheduled later in the queue. Therefore, make a workqueue
specifically for this http server socket instead of using the system
one.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-07-25 08:07:14 -04:00
Luis Ubieda
1187e172b2 rtio: fix CQE semaphore by not giving it no CQE item was created
Otherwise, calls to rtio_cqe_consume_block will bypass the semaphore
and held back in a Z_SPIN_DELAY(1) indefinitely.

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-07-25 08:06:08 -04:00
Benjamin Cabé
b49e385889 include: drivers: lora: add missing doxygen comments
Add doxygen documentation where missing in lora.h

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-07-25 08:05:55 -04:00
Hui Bai
6f1e2166d6 hostap: Ignore duplicate 11v and legacy roaming requests
Ignore duplicate 11v and legacy roaming requests if roaming is in
progress. This fix can avoid multiple auth or reassociate, which are
triggered by duplicate roaming requests.

Signed-off-by: Hui Bai <hui.bai@nxp.com>
2025-07-25 08:05:41 -04:00
Benjamin Cabé
a9ddbf7be8 boards: seeed: xiao_nrf54l15: fix openocd runner
Zephyr's openOCD works just fine. Also make sure to actually enable
openocd runner in the board.cmake file.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-07-25 08:04:26 -04:00
Matt Rodgers
c4225fc1a2 maintainers: add matt-rodgers as collaborator to http area
Change of github account name: mrodgers-witekio -> matt-rodgers

Signed-off-by: Matt Rodgers <mattrodgers31@gmail.com>
2025-07-25 07:51:17 -04:00
Chaitanya Tata
be51ddcf08 nrf_wifi: Fix the DTS compat for nRF71
Use specific chipset for compat instead of a generic Series.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-07-25 07:50:09 -04:00
Tang Ruiqian
dad9703315 boards: seeed: xiao_nrf54l15: fixed gpio naming errors
Fixed gpio naming errors and add the name pdm20.

Signed-off-by: Tang Ruiqian <ruiqian.tang@seeed.cc>
2025-07-25 07:49:35 -04:00
Andreas Schmidt
528ab9d9c2 dts: arm: st: u5: fix wkup-pin@8 referencing non-existent port gpiof
With commit d280d89 the gpiof port got moved from file stm32u5.dtsi to
file stm32u5_extra.dtsi. stm32u5_extra.dtsi is not included for
STM32U535/545. In same file stm32u5.dtsi still node wkup-pin@8 references
non-existent port gpiof.

Fixes #93445

Signed-off-by: Andreas Schmidt <andreas.schmidt@dormakaba.com>
2025-07-25 07:46:57 -04:00
Anas Nashif
e5988398e3 doc: coding guidelines: add reference to MSC01-C for rule 15.7
Add a reference to CERT MSC01-C.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-07-25 07:46:23 -04:00
Vytautas Virvičius
358e796374 drivers: serial: native_tty: change init priority
Change init priority from '55' to 'CONFIG_SERIAL_INIT_PRIORITY' to align
with how other serial devices are initialized.

Signed-off-by: Vytautas Virvičius <vytautas@virvicius.dev>
2025-07-25 07:45:19 -04:00
Mathieu Choplain
cba9dceff4 Revert "arch: arm: cortex_m: Add API for scb save and restore"
This reverts commit a90a47b1c9.

This commit was written with CMSIS 5 in mind, where some Cortex-M cores
have "SHP" in the SCB_Type, and some have "SHPR". This is not correct as
Zephyr is *supposed* to be using CMSIS 6 for Cortex-M... but CI actually
picks up CMSIS 5 instead (it includes both with CMSIS 5 taking priority).

The end result is that Zephyr's CI builds this happily but it causes build
failures on downstream users (e.g., example-application).

Revert the commit now, as it is not used yet by anyone. The revised version
using only "SHPR" shall be reintroduced once the CI issue has been fixed.

Signed-off-by: Mathieu Choplain <mathieu.choplain@st.com>
2025-07-25 11:20:12 +01:00
Travis Lam
6413185619 drivers: flash: nordic: fix nrf-mramc indentation
Fix soc_mramc_nrf_mram space indentation

Signed-off-by: Travis Lam <travis.lam@nordicsemi.no>
2025-07-24 17:02:20 +01:00
Martin Stumpf
860f9c8ef5 spi_nxp_lpspi: Fix underflow in lpspi sck calculation
If `desired_delay_ns` is `0`, it is much saner to set the delay to `0x00`
than to underflow and set it to `0xff`, which is the current behavior.

Signed-off-by: Martin Stumpf <finomnis@gmail.com>
2025-07-24 17:02:10 +01:00
Lorenz Clijnen
be38568577 net: openthread: Fix build with CONFIG_OPENTHREAD_INTERFACE_EARLY_UP
When building with CONFIG_OPENTHREAD_INTERFACE_EARLY_UP enabled,
`is_up` is undefined (since 596844a).

Signed-off-by: Lorenz Clijnen <github@lorc.be>
Signed-off-by: Lorenz Clijnen <l.clijnen@edna.eu>
2025-07-24 17:01:59 +01:00
Dominik Ermel
02db89e052 doc: Remove chapter on backporting MCUmgr fixes to 2.7
2.7 is EOL; the page is pointless.

Signed-off-by: Dominik Ermel <dominik.ermel@nordicsemi.no>
2025-07-24 17:01:51 +01:00
Tomasz Moń
943fc6fd88 samples: usb: uac2: implicit: Stop processing micophone data
Stop processing microphone data on error or when streaming ends. This
avoids I2S read timeouts due to audio data not being available while
streaming.

Signed-off-by: Tomasz Moń <tomasz.mon@nordicsemi.no>
2025-07-24 17:01:38 +01:00
Robert Lubos
1e77663c87 net: lwm2m: Optimize value attributes verification
As lwm2m_notify_observer_path() now reads attributes for the updated
resource, value_conditions_satisfied() does not need to read the
attributes again, it can just reuse the already available data.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-07-24 17:01:07 +01:00
Robert Lubos
b633f3a9de net: lwm2m: Verify pmin for updated resource on notify check
When updating a resource, the LwM2M library verified pmin attribute on
all resources/objects in the observer path list and chose the smallest
value. While this make sense for determining the lower-boundary for the
next notification time, it could lead to unnecessary notifications being
generated too early if the updated resource had a higher pmin value
configured on it.

Therefore, when checking notification criteria for an updated resource,
check the pmin value for that resource path and if set and higher than
the lowest pmin value evaluated for the observer list, use it instead.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-07-24 17:01:07 +01:00
Arkadiusz Cholewinski
d021851182 CI: Coverage: Fix: Get component name from testsuite name.
Get component name from testsuite name instead of
testcase identifier.

Signed-off-by: Arkadiusz Cholewinski <arkadiuszx.cholewinski@intel.com>
2025-07-24 17:00:48 +01:00
Sebastian Głąb
5cc26013d7 modules: hal_nordic: nrfx: Remove workaround for TAMPC setup
Skip of TAMPC setup is no longer needed on nRF54L* boards.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
2025-07-24 17:00:33 +01:00
Sebastian Głąb
878ddbe2f6 boards: nordic: nrf54l20pdk: Remove obsolete board
Board nrf54l20pdk was renamed to nrf54lm20dk.
Remove obsolete board definition.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
2025-07-24 17:00:33 +01:00
Chaitanya Tata
90717047e0 drivers: nrf_wifi: Fix deadlock in display scan and recovery
When running Zperf traffic + scan in the background eventual we hit a
deadlock:

 * sysworkq: recovery->stop_zep->vif_lock->hal_disable->wait lock_rx
 * nrf70_bh_wq: event_tasklet->lock_rx->disp_scan_done->
             disp_scan_res_get_zep-> waiting on vif_lock

The traffic triggers recovery (another bug) and conflicts with display
scan.

Fix by moving scan results processing to system workqueue instead of
doing it in the FMAC event callback context, this is how supplicant scan
also works.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-07-24 17:00:17 +01:00
Bjarki Arge Andreasen
825dea6832 shell: exchange k_mutex for k_sem
The mutex is being used as a simple binary semaphore. It is not
recursed so we don't need to track thread ownership nor lock count.

Exchange the mutex for a binary semaphore to save resources and
speed up shell.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-07-24 17:00:07 +01:00
Michele Sardo
a90a47b1c9 arch: arm: cortex_m: Add API for scb save and restore
Add two API to save SCB context and restore it, typically
used in suspend to RAM use case.

The scb_context_t and the backup/restore functions are designed to only
handle SCB registers that are:
- Mutable: Their values can be changed by software.
- Configurable: They control system behavior or features.
- Stateful: Their values represent a specific configuration that an
            application might want to preserve and restore.

Register excluded from backup/restore are:
1.	CPUID (CPUID Base Register)
	Motivation for Exclusion: This is a read-only identification register.
2.	ICSR (Interrupt Control and State Register)
	Motivation for Exclusion (from restoration): While its current value
	can be read, directly restoring a saved	ICSR value is highly
	dangerous and generally unsafe in an RTOS context.
	Contains Read-Only Status Bits: A significant portion of ICSR
	consists of read-only bits (VECTACTIVE, VECTPENDING, ISRPREEMPT,
	TSRUNPEND). These bits reflect the current state of the exception
	system (e.g., which exception is active, which are pending) and are
	managed dynamically by the CPU and the RTOS.
	Forcing a previous state onto these bits would corrupt the live
	system's interrupt handling.
	Contains Write-Only Set/Clear Bits: Some bits are write-only to set
	or clear a pending interrupt (PENDSVSET, PENDSVCLR, SYSTICKSET,
	SYSTICKCLR). If these bits were set in the saved context, restoring
	them might immediately trigger an interrupt or change its pending state
	unexpectedly, outside the RTOS's control.
	RTOS Management: In Zephyr (and other RTOSes), the kernel tightly
	manages the interrupt and exception state.
	Direct manipulation of ICSR's volatile bits could conflict with the
	RTOS's internal state machine, leading to crashes or unpredictable
	behavior.
3.	CFSR (Configurable Fault Status Register)
	Motivation for Exclusion: This is a read-only status register that
	reports the current state of Memory Management, Bus Fault, and Usage
	Faults. It's used by fault handlers to determine the cause of a fault.
4.	HFSR (HardFault Status Register)
	Motivation for Exclusion: Similar to CFSR, this is a read-only status
	register that reports the current state	of HardFaults. It's for
	reporting, not for configuration or restoration.
5.	DFSR (Debug Fault Status Register)
	Motivation for Exclusion: This is a read-only status register that
	reports debug-related faults. It's primarily used by debuggers and
	is not part of the application's runtime context to be saved/restored.
6.	MMFAR (MemManage Fault Address Register)
	Motivation for Exclusion: This is a read-only register that stores the
	address that caused a Memory Management	fault. It's a diagnostic
	register, not a configurable parameter.
7.	BFAR (BusFault Address Register)
	Motivation for Exclusion: Similar to MMFAR, this is a read-only
	register that stores the address that caused a BusFault. It's a
	diagnostic register.
8.	AFSR (Auxiliary Fault Status Register)
	Motivation for Exclusion: This register is implementation-defined and
	read-only.

Signed-off-by: Michele Sardo <msmttchr@gmail.com>
2025-07-24 16:59:59 +01:00
Raffael Rostagno
7c30d7a9b9 tests: drivers: spi_loopback: Update DTS settings for DMA
Update DTS settings to add DMA configuration to devices which
support GDMA peripheral, in order to perform operations via DMA
driver instead of HAL functions.

Signed-off-by: Raffael Rostagno <raffael.rostagno@espressif.com>
2025-07-24 16:58:48 +01:00
Raffael Rostagno
83f0e228bb dts: spi: esp32: Remove unused property
Remove unused DMA clock property from device tree. Clock will
be managed by DMA driver for devices with GDMA peripheral.

Signed-off-by: Raffael Rostagno <raffael.rostagno@espressif.com>
2025-07-24 16:58:48 +01:00
Raffael Rostagno
1d84c8ba8e drivers: spi: esp32: DMA operations via GDMA driver
Perform DMA operations using GDMA driver instead of relying on
HAL functions. Prevents eventual conflicts between SPI and GDMA
drivers when other peripherals also use DMA.

Signed-off-by: Raffael Rostagno <raffael.rostagno@espressif.com>
2025-07-24 16:58:48 +01:00
Josuah Demangeon
366c64eca0 usb: uvc: respect setup->wLength in responses
Due to the alignment and granularity requirements of memory allocation,
setup->wLength is shorter than the allocated buffer size.
This lead to responses larger than what the host requested, which it
rejected. Fix it by using the minimum between the allocated size, the
struct size, and the wLength requested.

Signed-off-by: Josuah Demangeon <me@josuah.net>
2025-07-24 16:58:20 +01:00
Josuah Demangeon
ed9327dec2 usb: uvc: allow the host to use short probe/commit messages
Some OSes like MacOS use shorter UVC 1.1 probe/commit messages even when
UVC 1.5 is supported, without bUsage, bBitDepthLuma, bmSettings,
bMaxNumberOfRefFramesPlus1, bmRateControlModes bmLayoutPerStream.
Accept messages of arbitrary size to safely be processed, ignoring all
missing fields, improving standard compliance.

Signed-off-by: Josuah Demangeon <me@josuah.net>
2025-07-24 16:58:20 +01:00
Robert Lubos
7b73998e96 tests: net: lwm2m: content_plain_text: Check for overflows
Add checks for int64_t overflows when parsing.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-07-24 16:58:05 +01:00
Robert Lubos
e172f72e89 tests: net: lwm2m: content_json: Check for overflows
Add checks for int64_t overflows when parsing.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-07-24 16:58:05 +01:00
Robert Lubos
d7e2c1b819 tests: net: lwm2m: client: Fix stack memory corruptions
LwM2M client context was defined on stack in the test function, however
it could still be in use when the test ended, as the actual LwM2M
teardown took place in a common "after" test function. In result, the
Lwm2M context content could be corrupted.

Additionally, increase the system work queue stack size, as the stack
overflowed.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-07-24 16:58:05 +01:00
Robert Lubos
6bfeb4fe45 net: lwm2m: senml_cbor: Verify data len before calling memcpy
Check if there actually is data to copy before calling memcpy() to
prevent potentially calling memcpy() with NULL value pointer.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-07-24 16:58:05 +01:00
Robert Lubos
779d8521a8 net: lwm2m: oma_tlv: Fix UBSAN warnings about signed integers
* Simplify the logic of the get_number() function to address the corner
  cases reported by UBSAN regarding byte-swapping signed integer values.

  The existing logic was actually only valid for little-endian systems,
  as it expected that the bytes written from the packet buffer will be
  stored at the beginning of the int64_t memory, plus the actual
  byte-swapping with signed integer casts inside was hard to follow.
  Switch to a plain uint8_t buffer for integer readout, and use
  dedicated system function to convert the big-endian data in the buffer
  into unsigned integer in the system endianness, followed by the final
  cast to a signed value.

* Add explicit cast to uint32_t in put_objlnk() to prevent warning about
  not-fitting integer after byte shift, and update the result type to
  uint32_t as well.

* Switch to buffer with sys_put_be16/32/64 when writing integers due to
  similar warnings about byte-swapping signed values.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-07-24 16:58:05 +01:00
Robert Lubos
a09fae571e net: lwm2m: plain_text: Check for int64_t overflow when parsing integer
Verify if the integer value being parsed does not overflow int64_t type
and report an error in such cases.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-07-24 16:58:05 +01:00
Robert Lubos
d9395d8502 net: lwm2m: json: Check for int64_t overflow when parsing integer
Verify if the integer value being parsed does not overflow int64_t type
and report an error in such cases.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-07-24 16:58:05 +01:00
Robert Lubos
c1aa7f57c2 net: lwm2m: registry: Validate value pointer before use
Check if value pointer is not NULL before passing it to memcmp() inside
lwm2m_engine_set(). As the function actually expects that the value
pointer can be NULL in case resource value is cleared (there is a test
case for such behavior), validate that len value is actually 0 if NULL
value is provided, to avoid unexpected behavior in other parts of the
function.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-07-24 16:58:05 +01:00
Håkon Amundsen
7697eff4fb soc: nrf54h: don't boot radio core if VTOR is not programmed
Booting the radio core when it is not programmed will typically
cause a reset loop. This can happen when programming multiple
images to a device, and the app core image is programmed before
the radio core.

With this change we avoid the reset loop in that case.

Signed-off-by: Håkon Amundsen <haakon.amundsen@nordicsemi.no>
2025-07-24 16:57:45 +01:00
Jonathan Nilsen
78a61579d8 west: runners: nrf: don't recover twice on nrf54h
Update the recover mechanism for nrf54h to only call recover
once. Using nrfutil device recover with both --core Network and
--core Application is redundant with IronSide SE as both of these
map to the same operation which does a full erase of the device MRAM.

Additionally, recovering twice in a row specifically in a nrfutil
batch file (which is used by this runner implementation) triggers some
odd behavior with the current latest version of
nrfutil device + IronSide SE, which can cause the device to enter a
reset loop and appear unresponsive and preventing 'west flash --recover'
from working properly.

Signed-off-by: Jonathan Nilsen <jonathan.nilsen@nordicsemi.no>
2025-07-24 16:57:45 +01:00
Jonathan Nilsen
eb7239c6a8 west: runners: nrf: Program UICR/PERIPHCONF artifacts if present
Program the new UICR and PERIPHCONF artifacts if they are generated.
These are required for the application to operate properly if they
are in use.

Signed-off-by: Jonathan Nilsen <jonathan.nilsen@nordicsemi.no>
2025-07-24 16:57:45 +01:00
Jonathan Nilsen
56b6e57521 soc: nordic: add IronSide SE compatible UICR support
Add support for generating UICR and associated artifacts in a
format compatible with IronSide SE, to be used for Nordic SoCs
in the Haltium family.

The main feature added with this is the ability to configure certain
global domain peripherals that are managed by the secure domain
through setting UICR.PERIPHCONF. This register points at a blob of
(register address, register value) pairs which are loaded
into the peripherals by IronSide SE ahead of the application boot.

The added helper macros in uicr.h can be used to add register
configurations to the PERIPHCONF. Entries added through these macros
are then extracted by a script, post-processed and placed in a blob
located at specific part of MRAM.

A default PERIPHCONF configuration has been added for the nrf54h20
soc to support the standard BLE use case (matching the configuration
in the soc devicetree).

Signed-off-by: Jonathan Nilsen <jonathan.nilsen@nordicsemi.no>
2025-07-24 16:57:45 +01:00
Jonathan Nilsen
b43ae17fdd dts: nordic: update UICR definition on nrf54h20
With IronSide SE there is only one defined UICR which is at
the location of the APPLICATION UICR. Update the devicetree
definition accordingly, and use the "nordic,nrf-uicr" compatible
on the node since the domain distinction added by the v2 compatible
is no longer relevant.

Signed-off-by: Jonathan Nilsen <jonathan.nilsen@nordicsemi.no>
2025-07-24 16:57:45 +01:00
Jonathan Nilsen
38e60025b0 boards: nordic: nrf54h20dk: refactor RAM memory map
Refactor the default RAM memory map on nrf54h20dk:

Removes use of "nordic,owned-memory" which is no longer needed on
nrf54h20. Reserved memory nodes that were under "nordic,owned-memory"
have been moved directly under reserved-memory.

The memory shared between cpuapp-cpusec and cpurad-cpusec in RAM0x
is no longer used with IronSide, since IPC buffers toward the secure
domain are at new fixed locations. The cpuapp_data region
has been expanded to fill the available space in RAM0x when removing
these shared memory regions.

Signed-off-by: Jonathan Nilsen <jonathan.nilsen@nordicsemi.no>
2025-07-24 16:57:45 +01:00
Jonathan Nilsen
7324eea7c9 boards: nordic: update nrf54h20dk memory map
Update memory map to be compatible with latest IronSide.

180kB MRAM is reserved.

Co-authored-by: Håkon Amundsen <haakon.amundsen@nordicsemi.no>
Signed-off-by: Håkon Amundsen <haakon.amundsen@nordicsemi.no>
Signed-off-by: Jonathan Nilsen <jonathan.nilsen@nordicsemi.no>
2025-07-24 16:57:45 +01:00
Grzegorz Swiderski
835649acdc modules: hal_nordic: Remove nrf-regtool support for nRF54H
nrf-regtool will not be used as part of IronSide SE compatible builds.
It will remain in use for the nRF92 series, until that too undergoes a
switch from SDFW to IronSide SE.

Signed-off-by: Grzegorz Swiderski <grzegorz.swiderski@nordicsemi.no>
2025-07-24 16:57:45 +01:00
Grzegorz Swiderski
b7b8b27338 boards: nrf54h20dk: Limit app core FLASH_LOAD_SIZE
CONFIG_USE_DT_CODE_PARTITION had to be disabled to add MCUboot support.
As a result, CONFIG_FLASH_LOAD_SIZE was left at zero, which means that
the linker would claim all available MRAM for the app core.

For now, we can't allow that, because the default nRF54H20 DK memory map
divides MRAM between multiple cores in order to support various samples.

Signed-off-by: Grzegorz Swiderski <grzegorz.swiderski@nordicsemi.no>
2025-07-24 16:57:45 +01:00
Grzegorz Swiderski
b4c18e8999 boards: nrf54h20dk: Merge iron variants into the base variants
This replaces the legacy SDFW compatible board configuration with the
IronSide SE compatible one, thus removing support for running samples
and tests on nRF54H20 devices with the old firmware.

All applications are expected to work on `nrf54h20dk/nrf54h20/cpuapp`
out of the box. For other board targets, all applications are expected
to boot, but may require additional peripheral configuration in UICR.
Build system support for the new UICR format is to be added separately.

Co-authored-by: Jonathan Nilsen <jonathan.nilsen@nordicsemi.no>
Signed-off-by: Jonathan Nilsen <jonathan.nilsen@nordicsemi.no>
Signed-off-by: Grzegorz Swiderski <grzegorz.swiderski@nordicsemi.no>
2025-07-24 16:57:45 +01:00
Grzegorz Swiderski
559ace1cdf tests: boards: nrf: nrfs: Build main image for app core only
Update this multi-core test to always run the `main` and `remote` images
on cpuapp and cpurad respectively.

This is to prepare the test for running with IronSide SE, in which case
keeping cpurad as the main board target wouldn't make as much sense,
because cpurad would have to be started by cpuapp.

Signed-off-by: Grzegorz Swiderski <grzegorz.swiderski@nordicsemi.no>
2025-07-24 16:57:45 +01:00
Jonathan Nilsen
d6673e1acd samples: drivers: mbox: switch nrf54h20 cpuapp and cpurad remotes
Switch which board is the remote in the test case for
mbox communication between nrf54h20dk/nrf54h20/cpuapp and
nrf54h20dk/nrf54h20/cpurad, making cpurad the remote instead.
This is done to prepare the sample for executing with IronSide SE,
where using cpurad as the main board doesn't make as much sense,
since cpuapp has to start cpurad.

Signed-off-by: Jonathan Nilsen <jonathan.nilsen@nordicsemi.no>
2025-07-24 16:57:45 +01:00
Fin Maaß
edaafb5dd1 drivers: ethernet: phy: microchip_vsc8541: use default speeds
use default speeds dt prop

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-07-24 16:57:04 +01:00
Fin Maaß
365297fabb drivers: ethernet: phy: dp83867: use default speeds
use default speeds from dt to configure phy on init.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-07-24 16:57:04 +01:00
Fin Maaß
46599fe34e drivers: ethernet: phy: dp83825: use default speeds
use default speeds from dt to configure phy on init.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-07-24 16:57:04 +01:00
Fin Maaß
156d0479cf drivers: ethernet: phy: rtl8211f: use default speeds
use default speeds from dt to configure phy on init.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-07-24 16:57:04 +01:00
Fin Maaß
db6b1782c2 drivers: ethernet: phy: ar8031: use default speeds
use default speeds from dt to configure phy on init.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-07-24 16:57:04 +01:00
Fin Maaß
d8711bba5a drivers: ethernet: phy: ksz8081: use default speeds
use default speeds from dt to configure phy on init.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-07-24 16:57:04 +01:00
Fin Maaß
e0587ada7f drivers: ethernet: phy: put shared macro in shared header
put the macro to get the default speeds into a
shared header for the phys.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-07-24 16:57:04 +01:00
Fin Maaß
c069fb0961 drivers: ethernet: remove phy_configure_link() usage
remove the use of phy_configure_link() in the ethernet drivers.
The user can now select the default speeds via DT prop, doing
another phy_configure_link() in the eth driver would overwrite
that.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-07-24 16:57:04 +01:00
Fin Maaß
139bf24353 drivers: ethernet: phy: dts: split ethernet-phy.yaml
split ethernet-phy.yaml, so that parts, that are used
by other phys are separated.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-07-24 16:57:04 +01:00
Fin Maaß
f473806777 drivers: ethernet: phy: ar8031: remove fixed link mode
fixed link mode is a mode where we don't comunicate with the phy,
therefore we don't need it in other phys as the generic phy_mii one.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-07-24 16:57:04 +01:00
Fin Maaß
038583104c dts: bindings: ethernet: move adi,adin*11*.yaml
move adi,adin1110.yaml adi,adin2111.yaml
from the phy subdir back into the ethernet dir.
They are ethernet controller bindings, not phy bindings.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-07-24 16:57:04 +01:00
Zhaoxiang Jin
dfd2240bd4 samples: sensor/mcux_acmp: Support ACMP case on mimxrt700_evk
1. Supported ACMP case on mimxrt700_evk
2. Fixed the issue of using the same address for
different trigger sources. This bug would cause the
examples to run in a way that did not match the theory.
3. Removed some redundant descriptions in the README.rst.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-07-24 16:56:55 +01:00
Zhaoxiang Jin
4ebbdd5151 boards: nxp: Support acmp on mimxrt700_evk
1. Enable ACMP clock
2. Config ACMP pin

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-07-24 16:56:55 +01:00
Zhaoxiang Jin
f6c65a0248 dts: arm: nxp: Support ACMP on nxp_rt7xx
Supported ACMP on nxp_rt7xx cm33_cpu0 and cm33_cpu1

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-07-24 16:56:55 +01:00
Zhaoxiang Jin
1564438d17 drivers: acmp: Updated driver to be compatible with nxp_rt7xx
1. Fixed the bug that DAC value was set incorrectly.
2. The MIMXRT700 does not have windowed mode and
'enableSample' controls, code added for compatibility
on this platform.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-07-24 16:56:55 +01:00
Cristian Bulacu
f020633603 net: l2: openthread: Initial Border Router support.
Added initial border router code sample.

Signed-off-by: Cristian Bulacu <cristian.bulacu@nxp.com>
2025-07-24 16:56:42 +01:00
Cristian Bulacu
bf8e66f8d3 modules: openthread: Add initial border router support.
Adding minimal implementation to support Border Router POC.

Signed-off-by: Cristian Bulacu <cristian.bulacu@nxp.com>
2025-07-24 16:56:42 +01:00
Cristian Bulacu
b0bcb68171 net: ip: Kconfig: Re-enable routing support between interfaces support
As packets need to be forwarded between Wi-Fi/Eth interface and
OpenThread interface, routing support has to be re-enabled and
configurable through prj.conf file.

Signed-off-by: Cristian Bulacu <cristian.bulacu@nxp.com>
2025-07-24 16:56:42 +01:00
Cristian Bulacu
d2ecb8e829 samples: net: openthread: border_router: Add OTBR sample application.
Enabled Wi-Fi shell alongside OpenThread application and added specific
configuration for Border Router enablement.

Signed-off-by: Cristian Bulacu <cristian.bulacu@nxp.com>
2025-07-24 16:56:42 +01:00
Jordan Yates
2a88cb50f5 spi: stm32: initialise according to zephyr,pm-device-runtime-auto
Don't automatically enable device runtime PM on the SPI port just
because `PM_DEVICE_RUNTIME` is enabled. Require the user to explicitly
call `pm_device_runtime_enable` on the port, or add
`zephyr,pm-device-runtime-auto` to the devicetree node.

Through the usage of `pm_device_driver_init`, the default clock control
and pinctrl handling can all be contained in `spi_stm32_pm_action`.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-07-24 06:14:20 -04:00
Jordan Yates
d8f87a6d09 spi: stm32: move PM handler above init
Move the PM handler above the `init` function so that the later can
refer to the former.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-07-24 06:14:20 -04:00
Pieter De Gendt
b1f398d176 scripts: ci: check_compliance: KeepSorted allow combining strip and re
No reason we couldn't strip a line we want to match to a regex.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-07-24 06:08:10 -04:00
cyliang tw
42640b19d5 MAINTAINERS: add 2 maintainers for hal_nuvoton
Add cyliangtw and ccli8 into maintainer list of hal_nuvoton

Signed-off-by: cyliang tw <cyliang@nuvoton.com>
2025-07-24 06:06:07 -04:00
Sebastian Głąb
b3949e3526 tests: drivers: adc: Fix License in board overlay
Board overlay was moved from downstream to upstream.
By mistake, License was left unchanged.

Change License type to match with the upstream.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
2025-07-24 06:04:46 -04:00
Sebastian Głąb
35a170fb90 samples: drivers: adc: Fix License in board overlays
Board overlays were moved from downstream to upstream.
By mistake, License was left unchanged.

Change License type to match with the upstream.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
2025-07-24 06:04:46 -04:00
Chaitanya Tata
ef8bbab600 ci: Add missing nrf_wifi directory
This directory is part of the nRF Wi-Fi driver and should trigger tests.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-07-24 06:04:00 -04:00
Chaitanya Tata
1fe2369f64 modules: nrf_wifi: Fix build error
The revert for some reason didn't do a full revert, fix the lock
variable.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-07-24 06:04:00 -04:00
Marek Matej
9d0942beb5 boards: espressif: Update boards documentation
Added a new 'Board variants' section to the board documentation
to describe supported flash and PSRAM configurations for Espressif
boards using snippet-based build-time selection.

Signed-off-by: Marek Matej <marek.matej@espressif.com>
2025-07-24 02:51:33 -04:00
Marek Matej
43c8dec12a snippets: add Espressif related snippets
Introduces the flash and PSRAM variants suitable for every ESP32 related
board.

Signed-off-by: Marek Matej <marek.matej@espressif.com>
2025-07-24 02:51:33 -04:00
Andrej Butok
2fef93ea27 samples: littlefs: add lpcxpresso55s and frdm_mcx configuration
Adds lpcxpresso55s and frdm_mcx configuration for the LittleFS sample.

Signed-off-by: Andrej Butok <andrey.butok@nxp.com>
2025-07-24 02:48:54 -04:00
Anas Nashif
1c17d3ee46 doc: release note: remove tinycrypt
Document removal of tinycrypt in release note.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-07-24 02:48:32 -04:00
Anas Nashif
fec22fd85b crypto: remove deprecated tinycrypt
Remove tinycrypt, it was deprecated in 4.0.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-07-24 02:48:32 -04:00
Joakim Andersson
0fde156b9c fs: shell: Fix FS shell using fixed storage_partition name instead of DT
Fix FS shell using fixed 'storage_partition' nodelabel instead of
accessing the DT defined partition from the zephyr,fstab,littlefs
node partition property.

Signed-off-by: Joakim Andersson <joerchan@gmail.com>
2025-07-24 02:48:22 -04:00
Vytautas Virvičius
e1eaa0e39e drivers: serial: native_tty: config_get support
This commit adds config_get support for native_tty. This is helpful as
some driver code (e.g. u_blox m8) will error out if they can't read the
current configuration.

Signed-off-by: Vytautas Virvičius <vytautas@virvicius.dev>
2025-07-24 02:47:59 -04:00
Anisetti Avinash Krishna
4675f17fa2 samples: drivers: uart: async_api: Added support for BTL-s
Added support for async api application on BTL-s platform.
Resolves #93408

Signed-off-by: Anisetti Avinash Krishna <anisetti.avinash.krishna@intel.com>
2025-07-24 02:47:43 -04:00
Tim Pambor
b929b6e7b1 boards: renesas: ek_ra2l1: Add support for probe-rs
Allow flashing the r7fa2l1ab chip found on the ek_ra2l1 board
using the probe-rs runner.

Signed-off-by: Tim Pambor <tim.pambor@codewrights.de>
2025-07-24 02:47:32 -04:00
Mathieu Choplain
708ce0336b kernel: spinlock: update k_spin_lock() documentation wrt context switch
Threads must not attempt to context switch if they are holding a spinlock.

Add this information to the documentation for k_spin_lock().

Signed-off-by: Mathieu Choplain <mathieu.choplain@st.com>
2025-07-24 02:47:21 -04:00
Mathieu Choplain
af689aa7b8 kernel: irq: update irq_lock() documentation regarding context switches
Upon context switch, the virtual "interrupt lock" acquired by irq_lock()
must not be "held". However, the current documentation for irq_lock() says
that it is perfectly valid to hold it (!), and that a suspended thread will
hold the "interrupt lock" upon being scheduled again (!!).

Update the documentation to remove the outdated section and indicate that
context switching while holding the interrupt lock is not allowed.

Signed-off-by: Mathieu Choplain <mathieu.choplain@st.com>
2025-07-24 02:47:21 -04:00
Mathieu Choplain
5183fc5693 kernel: assert no spinlock is held on swap when !USE_SWITCH
The do_swap() routine used when CONFIG_USE_SWITCH=y asserts that caller
thread does not hold any spinlock when CONFIG_SPIN_VALIDATE is enabled.
However, there is no similar check in place when CONFIG_USE_SWITCH=n.

Copy this assertion in the USE_SWITCH=n implementation of z_swap_irqlock().

Signed-off-by: Mathieu Choplain <mathieu.choplain@st.com>
2025-07-24 02:47:21 -04:00
Peter van der Perk
9c9dc0dfb4 drivers: mdio_nxp_enet_qos: Add Clause 45 support.
Adds handler for C45 read/write phy transactions.

Signed-off-by: Peter van der Perk <peter.vanderperk@nxp.com>
2025-07-24 02:46:32 -04:00
Chaitanya Tata
fcffe8f3f8 manifest: nrf_wifi: Pull fix for processing patch feature flags
Pull fix to fail if no compatible feature is found.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-07-24 02:46:15 -04:00
Sean Kyer
f1ad9519b9 doc: release: Add TF-M ITS settings backend to 4.3 release notes
Add TF-M ITS settings backend and enabling Kconfig to 4.3
release notes.

Signed-off-by: Sean Kyer <Sean.Kyer@analog.com>
2025-07-24 02:45:48 -04:00
Chaitanya Tata
9693852d9a Revert "modules: nrf_wifi: Use spinlocks"
This reverts commit 3e9dffbe25.
Though this works fine, when CONFIG_ASSERT=y the spinlock validation
fails as the underlying code though uses OSAL spinlock APIs is not ready

* sleeping with spinlock held
* multiple threads taking the same spinlock (might work on UP, but not
  on SMP on the same CPU)

Revert this for now, till the underyling is robust.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-07-24 02:45:32 -04:00
Van Petrosyan
692a9ae372 modem: pipelink: silence warning in modem_pipelink_is_connected
Initialize local variable `connected` to false to suppress the GCC warning.

Signed-off-by: Van Petrosyan <van.petrosyan@sensirion.com>
2025-07-24 02:45:22 -04:00
Chaitanya Tata
86690f29ab boards: nordic: nrf7002dk: Fix the newline between the groups
Add a newline between child nodes.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-07-24 02:45:11 -04:00
Chaitanya Tata
613ec82b19 boards: nordic: nrf7002dk: Fix DTS warning
the nRF connect device tree extension shows below warning:
'Property not mentioned in "nordic,nrf-pinctrl:child"'.

Fix this by applying the property to both groups separately.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-07-24 02:45:11 -04:00
Maureen Helm
7b579764f1 boards: shields: adi: Fix broken images in catalog card view
Image files for ADI shield boards were introduced in commit
25c7fa4e63, but they weren't referenced
anywhere in the documentation source and thus were deadstripped from the
build, resulting in broken image references in the board catalog card
view.

Signed-off-by: Maureen Helm <maureen.helm@analog.com>
2025-07-24 02:44:56 -04:00
Sebastian Głąb
8e881b046e tests: drivers: clock_control: nrf_lf_clock_start: Run on nrf54lm20dk
Fix mistake where one of test configurations
was skipped on nrf54lm20dk board.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
2025-07-24 02:44:23 -04:00
Luis Ubieda
0aa15f97b1 doc: coding guidelines: Correct Typo on MISRA Rule 21.13
EO for EOF.

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-07-24 02:43:43 -04:00
Pieter De Gendt
4867d45647 doc: release: 4.2: Fix entry in new APIs
Add a missing newline to fix the formatting of the LoRaWAN entry.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-07-23 10:15:44 -07:00
Peter van der Perk
3510fda674 boards: nxp: vmu_rt1170: Fix TJA1103 phy config
Also increase regulator init priority so that ethernet vdd is
turned before PHY initialization

Signed-off-by: Peter van der Perk <peter.vanderperk@nxp.com>
2025-07-23 17:31:55 +01:00
Peter van der Perk
7fbf146af2 drivers: eth: phy: tja1103: Remove ISR thread and add auto mode.
Re-use the workqueue instead of having dedicated thread for handling
interrupts. This reduces memory usage and complexity.

Furthermore adds an auto mode for 100BASE-T1 negotiation.

Signed-off-by: Peter van der Perk <peter.vanderperk@nxp.com>
2025-07-23 17:31:55 +01:00
Bjarki Arge Andreasen
638bf6b03d modem: cmux: Decouple modem cmux and cellular driver
The modem modules cmux module is currently directly coupled to the
presence of specific modems, rather than being selected by drivers
for whatever hardware wants to request the default MTU of 127 bytes.

This commit the makes the device drivers (for now, modem_cellular)
select the symbol, thus decoupling the modem modules from the
presence of any specific device.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-07-23 17:31:22 +01:00
Arnaud Pouliquen
75a2e5625c boards: add HSE and HSI support for STM32MP257F boards.
Add declaration of the HSE and HSI frequency that will be used to compute
the SystemCoreClock.

Signed-off-by: Arnaud Pouliquen <arnaud.pouliquen@foss.st.com>
2025-07-23 17:31:08 +01:00
Arnaud Pouliquen
3ffd7419a0 dts: arm: st: stm32mp2_m33.dtsi: add HSE and HSI fixed clock
Add declarations for High-Speed External (HSE) and High-Speed Internal
(HSI) clocks.
These clocks, based on oscillators, can be used to generate the system
clocks.

Signed-off-by: Arnaud Pouliquen <arnaud.pouliquen@foss.st.com>
2025-07-23 17:31:08 +01:00
Arnaud Pouliquen
819990bd29 soc: stm32mp2x: m33: Add soc_early_init_hook to set system clock property
Add soc_early_init_hook() function to update the SystemCoreClock variable,
which represents the reference clock.

Signed-off-by: Arnaud Pouliquen <arnaud.pouliquen@foss.st.com>
2025-07-23 17:31:08 +01:00
Tahsin Mutlugun
94a962e87e drivers: flash: max32: Wrap flash read to utilize ECC workaround
Use wrapper function for read operations to allow using the new HAL
function that handles ECC checks and erased page detection.

Signed-off-by: Tahsin Mutlugun <Tahsin.Mutlugun@analog.com>
2025-07-23 17:30:44 +01:00
Tahsin Mutlugun
c86c1efbc0 manifest: Update hal_adi to get ECC-backed read function
Update hal_adi to include the new flash read function that checks for
false-positive ECC failures and applies a workaround if needed.

Signed-off-by: Tahsin Mutlugun <Tahsin.Mutlugun@analog.com>
2025-07-23 17:30:44 +01:00
Furkan Akkiz
0d1088875c drivers: flash: Add wrap version of flash write function
To fix MAX32690 flash problems, I created a wrap version of
MXC_FLC_Write(...) function which disables ICC before calling write
function and enables ICC after this function.

Signed-off-by: Furkan Akkiz <hasanfurkan.akkiz@analog.com>
2025-07-23 17:30:44 +01:00
Tahsin Mutlugun
41f2be9e5f drivers: flash: max32: Disable interrupts before accessing flash
Disable interrupts during flash operations to prevent unintended jumps.

Interrupts are now disabled before read, erase, and write operations to
avoid accidental jumps to other flash sections while working on a
specific section.

Signed-off-by: Tahsin Mutlugun <Tahsin.Mutlugun@analog.com>
2025-07-23 17:30:44 +01:00
Tahsin Mutlugun
1876f60f9f soc: adi: max32: Move .flashprog into RAMFUNC section
Move functions in .flashprog section into RAMFUNC so that they can be
executed from SRAM.

Signed-off-by: Tahsin Mutlugun <Tahsin.Mutlugun@analog.com>
2025-07-23 17:30:44 +01:00
Tahsin Mutlugun
101e1ee3c1 soc: adi: max32: Use fixed MPU regions
Default MPU configuration marks whole flash area as cacheable. When
reading from an erased section of flash, cache controller may fill cache
lines with ECC corrected data. To prevent this, disable caching on
storage section so that ECC workaround can be applied during reads and
correct data is returned.

Signed-off-by: Tahsin Mutlugun <Tahsin.Mutlugun@analog.com>
2025-07-23 17:30:44 +01:00
Ravi Dondaputi
20b93d79bb net: wifi_mgmt: Enhance documentation
Provide details for the fields defined in wifi_connect_req_params
structure.

Signed-off-by: Ravi Dondaputi <ravi.dondaputi@nordicsemi.no>
2025-07-23 17:30:23 +01:00
Kapil Bhatt
d6c2ebd5f9 hostap: Add CONFIG_HS20 Kconfig for Hotspot 2.0
The Kconfig CONFIG_HS20 was undefined in zephyr hostap.
Need to add config for Hotspot 2.0 feature.

Signed-off-by: Kapil Bhatt <kapil.bhatt@nordicsemi.no>
2025-07-23 17:29:49 +01:00
Tahsin Mutlugun
53f30bd928 boards: adi: Enable RTC for MAX32657EVKIT nonsecure board
Add RTC to MAX32657EVKIT nonsecure configuration.

Signed-off-by: Tahsin Mutlugun <Tahsin.Mutlugun@analog.com>
2025-07-23 17:29:34 +01:00
Mert Vatansever
1c8568e40f boards: adi: Enable RTC for MAX32657EVKit
This commit enables RTC for MAX32657EVKit.

Signed-off-by: Mert Vatansever <mert.vatansever@analog.com>
2025-07-23 17:29:34 +01:00
Sadik Ozer
6819377014 dts: arm: adi: Add RTC device node
Add MAX32657 RTC device node

Signed-off-by: Sadik Ozer <sadik.ozer@analog.com>
2025-07-23 17:29:34 +01:00
Tahsin Mutlugun
cb0f951f3d drivers: counter: max32_rtc: Add clock source selection support
Add clock source selection support by applying changes introduced in
41a0ba7.

Signed-off-by: Tahsin Mutlugun <Tahsin.Mutlugun@analog.com>
2025-07-23 17:29:34 +01:00
Mert Vatansever
25ebec2b63 dts: bindings: rtc: Add clock source to rtc for MAX32xxx
This commit adds clock source to rtc properties for MAX32xxx.

Signed-off-by: Mert Vatansever <mert.vatansever@analog.com>
2025-07-23 17:29:34 +01:00
Tim Lin
2d18c7ec81 drivers/i2c: it51xxx: Avoid entering power policy during PIO transfers
Avoid entering low-power state during I2C host transfers in PIO mode.
Entering a low-power state during an active PIO transfer may prevent
the peripheral from generating the clock signal correctly,
resulting in transmission errors.

Signed-off-by: Tim Lin <tim2.lin@ite.corp-partner.google.com>
2025-07-23 17:29:18 +01:00
Tim Lin
f0af5be2b4 drivers/i2c: it8xxx2: Avoid entering power policy during PIO transfers
Avoid entering low-power state during I2C host transfers in PIO mode.
Entering a low-power state during an active PIO transfer may prevent
the peripheral from generating the clock signal correctly,
resulting in transmission errors.

Signed-off-by: Tim Lin <tim2.lin@ite.corp-partner.google.com>
2025-07-23 17:29:18 +01:00
Tim Lin
7cf9a58b7b drivers/i2c: it81xx2: Avoid entering power policy during PIO transfers
Avoid entering low-power state during I2C host transfers in PIO mode.
Entering a low-power state during an active PIO transfer may prevent
the peripheral from generating the clock signal correctly,
resulting in transmission errors.

Signed-off-by: Tim Lin <tim2.lin@ite.corp-partner.google.com>
2025-07-23 17:29:18 +01:00
Jamie McCrae
744a5635f9 scripts: ci: check_compliance: Add support for module Kconfigs
Adds support for checking module samples and tests for additional
Kconfigs, as well as logging Kconfigs, so that this check can be
reused more easily with out of tree manifest repos

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-07-23 17:29:07 +01:00
Tim Pambor
c7e97bb5f8 runners: probe-rs: Support debug and debugserver
Add support for west debug and west debugserver to
the probe-rs runner.

Signed-off-by: Tim Pambor <tim.pambor@codewrights.de>
2025-07-23 17:28:52 +01:00
Ben Lauret
1fbfb1bd9a doc: Added instruction for blob fetching
Added in the documentation for the DA1469x based kit to fetch the
binary blobs.

Signed-off-by: Ben Lauret <ben.lauret.wm@renesas.com>
2025-07-23 17:28:28 +01:00
Tomáš Juřena
e219417677 boards: st: nucleo_c071rb: enables HSIUSB48 clock for USB
Enables the HSIUSB48 clock (node clk_hsi48 in the SoC DTSI)
on the nucleo_c071rb platform.

Signed-off-by: Tomáš Juřena <jurenatomas@gmail.com>
2025-07-23 17:27:24 +01:00
Tomáš Juřena
0f760ed64c drivers: clock: stm32c0: Add an option to enable CRS for HSI48
Allows enabling the Clock Recovery System (CRS) for HSI48 to achieve
the expected accuracy for USB transfers. Uses USB SOF packet by default.

Signed-off-by: Tomáš Juřena <jurenatomas@gmail.com>
2025-07-23 17:27:24 +01:00
Tomáš Juřena
a7a9570a95 dts: arm: st: c0: Add clk-hsi48 for stm32c071 SOC
Allow to use internal HSI to clock the USB bus if HSE is not available.

Signed-off-by: Tomáš Juřena <jurenatomas@gmail.com>
2025-07-23 17:27:24 +01:00
Tomáš Juřena
4abf3d584d include: zephyr: dt-bindings: clock: Add HSI48 support STM32C071
STM32C071 have USB peripheral which can be clocked from HSI (HSIUSB48).

Signed-off-by: Tomáš Juřena <jurenatomas@gmail.com>
2025-07-23 17:27:24 +01:00
Jakub Michalski
8a7b4721a1 docs: virtio: add section about available drivers and samples
This commit adds sections to the virtio docs with the currently
supported transfer methods, drivers and samples

Signed-off-by: Jakub Michalski <jmichalski@antmicro.com>
2025-07-23 12:20:22 -04:00
Jakub Michalski
c9c9f133da fs: virtiofs: add virtiofs sample
This commit adds virtiofs sample that presents use of this filesystem

Signed-off-by: Jakub Michalski <jmichalski@antmicro.com>
Signed-off-by: Filip Kokosinski <fkokosinski@antmicro.com>
2025-07-23 12:20:22 -04:00
Jakub Michalski
77834f2069 fs: implement zephyr fs api for virtiofs
This commit implements zephyr filesystem operations for virtiofs

Signed-off-by: Jakub Michalski <jmichalski@antmicro.com>
Signed-off-by: Filip Kokosinski <fkokosinski@antmicro.com>
2025-07-23 12:20:22 -04:00
Jakub Michalski
02b18136e2 fs: add virtiofs operations
This commit adds virtiofs functions implementing fuse operations required
to enable zephyr filesystem support

Signed-off-by: Jakub Michalski <jmichalski@antmicro.com>
2025-07-23 12:20:22 -04:00
Jakub Michalski
b28483a3fe fs: add fuse primitives
This commit adds fuse structures, requests and functions to fill them

Signed-off-by: Jakub Michalski <jmichalski@antmicro.com>
2025-07-23 12:20:22 -04:00
Tom Burdick
7e9d994aa3 samples: rtio: Simple producer consumer sample
A simple sample showing how an interrupt (or thread) could produce data
a thread (potentially a user mode thread) could then consume.

Some great suggestions added thanks to Luis Ubieda
<luisf@croxel.com> to show multishot in use which avoids extra
syscalls in the tight processing loop of the consumer.

Signed-off-by: Tom Burdick <thomas.burdick@intel.com>
2025-07-23 17:19:04 +01:00
Matthias Hauser
9158d909ff maintainers.yml: add section for Wurth Elektronik sensor drivers and boards
maintainers.yml: add section for Wurth Elektronik sensor drivers and boards

Signed-off-by: Matthias Hauser <Matthias.Hauser@we-online.de>
2025-07-23 17:18:32 +01:00
Anas Nashif
23243e9d04 boards: intel_adsp: overhaul board.cmake
Remove duplication and simplify

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-07-23 17:17:44 +01:00
Vijayakannan Ayyathurai
04336baf90 samples: net: zperf: Enable i226 config with Intel Alderlake
The Zperf sample application was chosen to demonstrate basic network
functionality and high-performance use cases. This application serves
as a reference for users who wish to enable other network sample
applications.

In addition to the essential configurations for the Intel i226 Ethernet
controller, stack-specific configurations were added to ensure stability
under heavy network loads. These configurations include adjustments to
buffer sizes, interrupt handling, and DMA descriptor management.

Signed-off-by: Vijayakannan Ayyathurai <vijayakannan.ayyathurai@intel.com>
2025-07-23 17:17:24 +01:00
Vijayakannan Ayyathurai
0b91c7f23e dts: x86: Add i226 device-tree config for Intel Alderlake
Foxville LM (0x125B) i226 variant and Intel Alder Lake platform was
used for developing and stabilizing the i226 Ethernet device driver.
However, users can reuse the provided device tree models as a reference
when enabling the support for other i226 variants and platforms.

This device-tree model include essential configurations for the i226
Ethernet controller, such as PCIe settings, interrupt mappings, Phy
MDIO, and DMA descriptor configurations.

Signed-off-by: Vijayakannan Ayyathurai <vijayakannan.ayyathurai@intel.com>
2025-07-23 17:17:24 +01:00
Vijayakannan Ayyathurai
8a32bd7cd0 drivers: ethernet: intel: Add i226 Ethernet MAC device driver
The Intel i226 Ethernet Controller is a PCIe Gen 2 one-lane modular
endpoint device that integrates a GbE Media Access Control (MAC) and
Physical Layer (PHY) port. This driver provides support for MAC and
DMA-specific initialization and runtime TX/RX operations.

Key features:
- MSI-X interrupts for TX/RX DMA channels.
- Multiple TX/RX DMA channel support with exclusive bottom-half.
- Implements a circular descriptor ring architechture with
  producer-consumer semantics for high performance pkt processing.
- Full duplex support for 10/100/1000 Mbps.
- Half duplex support for 10/100 Mbps.
- Auto-negotiation for 10/100/1000 Mbps.
- MTU customization for flexible packet sizes.
- MAC address filtering based on:
  - Random MAC generation.
  - Local-mac-address mentioned in device tree.
  - EEPROM pre-programmed mac address.
  - Setting mac address via net shell.
- Support for multiple Ethernet interface instances.

Signed-off-by: Vijayakannan Ayyathurai <vijayakannan.ayyathurai@intel.com>
Signed-off-by: Ling Pei Lee <pei.lee.ling@intel.com>
2025-07-23 17:17:24 +01:00
Vijayakannan Ayyathurai
c62b3d9637 drivers: mdio: Add Intel i226 MDIO driver support
Intel i226 MAC supports MDIO C22 and MDIO C45. Standard PHY registers
are accessible through MDIO C22, whereas PMAPMD and PCS are accssible
through MDIO C45.

Signed-off-by: Vijayakannan Ayyathurai <vijayakannan.ayyathurai@intel.com>
2025-07-23 17:17:24 +01:00
Vijayakannan Ayyathurai
affecd1839 drivers: ethernet: Add platform driver for MMIO mapping reuse
The Ethernet device model consists of multiple subsystem components, such
as MDIO, PHY, MAC and PTP_CLOCK. These components are mapped into a single
PCIe BAR location with same base address.

This platform driver retrieves the MMIO mapping details and provides a
framework to share it with all the child subsystem components. This
approach avoid the duplicate remapping, ensures efficient re-use of
MMIO mappings across related devices.

Example device tree structure for first ethernet instance:

parent0: parent0 {
        compatible = "intel,eth-plat";
        interrupt-parent = <&intc>;
        vendor-id  = <0x8086>;
        device-id  = <0xXXXX>;

        igc0: igc0 {
                compatible = "intel,igc-mac";

                /*
                 * MAC specific properties.
                 */

                status = "okay";
        };

        mdio0: mdio0 {
                compatible = "intel,igc-mdio";
                #address-cells = <1>;
                #size-cells = <0>;

                ethphy0: ethernet-phy@0 {
                        compatible = "ethernet-phy";
                        /*
                         * PHY specific properties.
                         */
                        reg = <0x0>;
                };
        };
};

This framework is modular and re-usable for other PCIe based Ethernet
devices. It can also be extended to support additional platform specific
information shared across child nodes.

Signed-off-by: Vijayakannan Ayyathurai <vijayakannan.ayyathurai@intel.com>
2025-07-23 17:17:24 +01:00
Fabio Baltieri
ad998d6f36 Revert "driver: serial: uart_ns16550: Add pm support for uart_ns16550 driver"
This reverts commit fd88386a9f, it breaks
uart support on ITE platforms when PM is enabled but PM_RUNTIME is not,
possibly others as well.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2025-07-23 17:16:40 +01:00
Biwen Li
47b07e5a09 tests: drivers: pwm: add overlay file for imx943_evk m33
Add overlay file for imx943_evk m33 to use flexio as pwm

Signed-off-by: Biwen Li <biwen.li@nxp.com>
2025-07-23 09:40:15 +02:00
Carles Cufi
d2bf480d53 boards: nordic: nrf54lm20dk: Conditionally enable hw stack protection
This is a follow-up of commit 9a9ae6ffdb,
specifically for the nRF54LM20 DK, which was not included in the
previous commit.

Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
2025-07-23 09:36:50 +02:00
Tim Lin
648919f6df drivers/i2c: it51xxx: Refactor ISR to reduce clock stretch in PIO mode
Move handling of write-to-clear status and stop detect to the
beginning of the ISR for PIO mode to reduce unnecessary clock
stretching and improve responsiveness during transfers.

This patch also separates status clearing for shared FIFO mode,
ensuring it is done at the appropriate point after data handling
completes, maintaining correct transfer behavior.

Signed-off-by: Tim Lin <tim2.lin@ite.corp-partner.google.com>
2025-07-23 09:36:37 +02:00
Thomas Stranger
b8bfa36250 dts: arm: st: stm32h5: fix flash erase timing
According to the datasheet the flash erase timing is
typically 2ms, and max 10ms.

H503: DS14053 Rev 4: section 5.3.10, table 45, t_erase_max=10ms
H562/H563: DS14258 Rev 6: section 5.3.11, table 51, t_erase_max=10ms

Signed-off-by: Thomas Stranger <thomas.stranger@outlook.com>
2025-07-23 09:34:46 +02:00
Chris Friedt
05305e2647 lib: libc: common: time: do not set errno in time()
The ISO C function time() is not specified to set the global
errno variable, so remove that in case there are side-effects.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-07-23 09:34:36 +02:00
Georgij Černyšiov
54e16c4ad2 drivers: mipi_dbi: stm32: get fmc frequency correctly
Use clock api to get correct FMC clock frequency.

Signed-off-by: Georgij Černyšiov <geo.cgv@gmail.com>
2025-07-23 09:34:08 +02:00
Nick Ward
38c3225af6 drivers: sensor: bmi323: use sensor_value_from_micro()
Use sensor_value_from_micro() helper.

Signed-off-by: Nick Ward <nix.ward@gmail.com>
2025-07-23 09:33:59 +02:00
Jilay Pandya
1c48baf74e doc: migration_guide: 4.3 add entry for renaming zephyr,gpio-stepper
- migration guide entry for renaming zephyr,gpio-stepper to
zephyr,h-bridge-stepper
- rename zephyr,gpio-stepper to zephyr,h-bridge-stepper in stepper.rst

Signed-off-by: Jilay Pandya <jilay.pandya@outlook.com>
2025-07-23 09:33:15 +02:00
Bas van Loon
d56f5f7b0e soc: mimxrt11xx: Allow to override SYS PLL2/3 output divider(s).
To reduce the SEMC clock to a usable speed we had to divide down
the output clock of System PLL2 PFD1. To do this I had to override
the hardcoded defaults. This commit adds the flexibility to
override them in your board files.

Signed-off-by: Bas van Loon <bas@arch-embedded.com>
2025-07-23 09:32:53 +02:00
Bas van Loon
70b96f43fb soc: mimxrt11xx: Work around USDHC errata.
Errata ERR050396 causes data corruption if writes happen to TCM memory
so work around it by not marking AXI transaction cacheable. Workaround
taken from NXP SDK example.

Signed-off-by: Bas van Loon <bas@arch-embedded.com>
2025-07-23 09:32:43 +02:00
Guennadi Liakhovetski
c99605126c llext: only invalidate instruction cache where needed
When preparing LLEXT ELF sections only invalidate instruction cache
of executable sections. Also skip the step on platforms, managing
cache at the application level.

Signed-off-by: Guennadi Liakhovetski <guennadi.liakhovetski@linux.intel.com>
2025-07-23 09:32:34 +02:00
Thomas Altenbach
b7967f7ef4 samples: drivers: spi_flash: Use valid addresses/sizes for dual-flash
When a board contains two identical flash memories configured in
parallel dual-flash mode, the actual sector size is twice the sector
size of a single flash memory. So, assuming 4-KiB sectors for each flash
memory, any erase operation must be 8-KiB aligned.

This commit updates the start offset and sector size in the spi_flash
sample to be properly aligned when a dual-flash configuration is used.

At the moment, this is only supported for STM32-based boards and QSPI
flash memories.

Signed-off-by: Thomas Altenbach <altenbach.thomas@gmail.com>
2025-07-23 09:32:22 +02:00
Thomas Altenbach
513073b598 drivers: flash: stm32_qspi: Fix erase size for dual-flash
When dual-flash mode is enabled, any erase operation is executed on both
flash memories in parallel. This means from the flash driver's point of
view, the size of a given sector/block is twice the size of a
sector/block on a single flash memory.

For example, assuming 4-KiB sectors for each flash memory, if the flash
driver is asked to erase at address 0x0000, the erase size must be a
multiple of 8 KiB since each sector erase operation will cause a 4-KiB
sector to erased in each flash memory.

Before this commit, the doubled erase size was only considered in
'setup_pages_layout'. Now, the actual sizes of the erase operations are
properly set in the flash driver's data and are used everywhere in the
driver.

Signed-off-by: Thomas Altenbach <altenbach.thomas@gmail.com>
2025-07-23 09:32:22 +02:00
Thomas Altenbach
8c638f29fd drivers: flash: stm32_qspi: Fix page size for dual-flash
When dual-flash mode is enabled, even bytes are written to the first
flash memory and odd bytes to the second flash memory. This means, from
the flash driver's point of view, the size of a flash page is twice the
size of a single flash memory's page.

So if each flash memory has 256-byte pages, 512 bytes should be used as
page size by the flash driver. Using 256 bytes was working fine but is
suboptimal.

Signed-off-by: Thomas Altenbach <altenbach.thomas@gmail.com>
2025-07-23 09:32:22 +02:00
Thomas Altenbach
c4afaaacf6 drivers: flash: stm32_qspi: Fix status register access for dual-flash
When dual-flash mode is enabled, two identical flash memories are
connected to the QUADSPI peripheral, each having its own set of
registers. This means that when reading or writing a flash register,
this has to be made for both flash memories.

For example, when reading a status register (1 byte), the QUADSPI
peripheral must be configured to read two bytes of data, which
correspond respectively to the value of the register in the first and
second flash memory. Same thing when writing.

Before this commit, when dual-flash mode was enabled, only the register
of the first flash memory was considered, which means the second flash
memory could be incorrectly configured and that any write/erase
operation could be considered as completed too early, if the operation
takes more time to complete for the second flash memory.

Signed-off-by: Thomas Altenbach <altenbach.thomas@gmail.com>
2025-07-23 09:32:22 +02:00
Thomas Altenbach
f9f6b24166 drivers: flash: stm32_qspi: Factorize all status register reads
The 'qspi_read_status_register' routine implements the reading of a
flash memory's status register. This routine is used anytime reading a
status register is needed, except in 'qspi_wait_until_ready'. This
commit moves the read routine to be able to use it in
'qspi_wait_until_ready'. The 'qspi_write_status_register' is also moved
to keep it close to the read routine.

Signed-off-by: Thomas Altenbach <altenbach.thomas@gmail.com>
2025-07-23 09:32:22 +02:00
Thomas Altenbach
20beb3eb74 drivers: flash: stm32_qspi: Simplify #ifdef for dual-flash
In multiple places, "#if DT_PROP(DT_NODELABEL(quadspi), dual_flash) &&
defined(QUADSPI_CR_DFM)" was used to guard sections specific to
the dual-flash feature. This is quite long and "#ifdef
STM32_QSPI_DOUBLE_FLASH" is now used instead.

Note the presence of QUADSPI_CR_DFM is no more checked. This is not
considered as an issue since when QUADSPI_CR_DFM is not available, the
QSPI hardware doesn't support dual-flash mode so this mode must not be
enabled in the devicetree. With that change, enabling dual-flash mode
when not available causes a compile-time error.

Signed-off-by: Thomas Altenbach <altenbach.thomas@gmail.com>
2025-07-23 09:32:22 +02:00
Mike Szczys
5f1e9a3523 drivers: uart_mcumgr: log warning when smp drops data
Add warning logs when data is dropped on the serial transport by the smp
system due to buffer overrun.

Signed-off-by: Mike Szczys <mike@golioth.io>
2025-07-23 09:32:06 +02:00
Robert Lubos
520ce6a522 manifest: Pull net-tools HTTP server scripts fixes
Pull latest fixes for HTTP(s) server scripts.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-07-23 09:31:49 +02:00
Robert Lubos
eacd745627 samples: net: http_client: Avoid parallel IPv4/IPv6 sessions
Apparently the simple python HTTPS server the sample is interfacing,
cannot handle parallel TLS sessions (just one at a time), hence
establishing both IPv4/6 connections before sending request doesn't work
well, half of the requests are dropped. Therefore, modify the sample a
little to run only one TLS (or TCP if no TLS is used) connection at a
time.

Additionally, add a log in case HTTP client request fails, as it could
easily be overlooked if something went wrong.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-07-23 09:31:49 +02:00
Robert Lubos
82be9354ee samples: net: http_client: Update TLS configuration
Python HTTPS server counterpart for the sample now seems to enforce
ECDHE key exchange, so enable it in the sample.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-07-23 09:31:49 +02:00
Benjamin Cabé
99138170b3 scripts: requirements: remove lxml dependency
No more users of lxml in the tree so drop the 3rd party dependency (it
might still be pulled in by other projects, ex. gcovr).

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-07-23 09:31:28 +02:00
Benjamin Cabé
65f2833638 scripts: tests: twister_blackbox: drop lxml dependency
No need to rely on lxml for such a simple XML parsing task.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-07-23 09:31:28 +02:00
Benjamin Cabé
db47c899e3 scripts: ci: check_compliance: no need for lxml anymore
Remove an old workaround requiring lxml to be present as junitparser was
not working with xml.etree.ElementTree until version 3.0.0.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-07-23 09:31:28 +02:00
Benjamin Cabé
82c955ab7c scripts: net: Remove dependency to lxml in enumerate_http_status.py
Using the third party lxml library for the very simple parsing task this
script performs in unnecessary, so switch to Python's built-in
HTMLParser.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-07-23 09:31:28 +02:00
Robert Hancock
45eedaa614 drivers: ethernet: phy: vsc8541: allow disabling autonegotiation
Add support for disabling autonegotiation to the cfg_link callback, as
with the phy_mii driver.

Signed-off-by: Robert Hancock <robert.hancock@calian.com>
2025-07-23 09:31:17 +02:00
Robert Hancock
aab1f68d08 drivers: ethernet: phy: vsc8541: Add timeout on SW reset
The driver previously could enter an infinite loop if the PHY software
reset failed to complete, which could happen due to hardware reset
issues or MDIO bus problems. Add a timeout of 1000 iterations so we
report an error in this scenario rather than causing a lockup.

Signed-off-by: Robert Hancock <robert.hancock@calian.com>
2025-07-23 09:31:17 +02:00
Robert Hancock
aa85d76777 doc: migration guide: ethernet: Mention vsc8541 reset changes
Mention a change to the reset-gpios handling in the vsc8541 PHY driver.

Signed-off-by: Robert Hancock <robert.hancock@calian.com>
2025-07-23 09:31:17 +02:00
Robert Hancock
211e9ea6bd drivers: ethernet: vsc8541: Fixed inverted reset GPIO
For GPIOs driving active-low signals, such as the VSC8541's reset pin,
they are supposed to be declared as active low in the device tree, and
set to 1 to assert and 0 to clear. Change the driver as such so that it
does not leave the PHY stuck in reset when so configured.

Also changed all in-tree board DTS files for this PHY to properly
declare the reset GPIO as active low.

Signed-off-by: Robert Hancock <robert.hancock@calian.com>
2025-07-23 09:31:17 +02:00
Robert Hancock
07f45204cb drivers: ethernet: phy: vsc8541: Use 16-bit values for MDIO access
The internal register read/write functions used uint32_t for the values
even though the registers are only 16 bits wide, resulting in a bunch of
casting. Change the internal functions to use uint16_t and wrap them for
the external read/write API which uses uint32_t.

Signed-off-by: Robert Hancock <robert.hancock@calian.com>
2025-07-23 09:31:17 +02:00
Robert Hancock
ee5a71911a drivers: ethernet: phy: vsc8541: add MDIO enable/disable
The driver was not enabling the MDIO bus before trying to access
registers. Added enabling and disabling the bus around PHY register
accesses.

Signed-off-by: Robert Hancock <robert.hancock@calian.com>
2025-07-23 09:31:17 +02:00
Robert Hancock
c20d197c97 drivers: ethernet: phy: vsc8541: fixed build warnings
Fixed some build warnings in the driver from previous changes by
removing an unused variable and hooking up the cfg_link function. Also
removes some implicit boolean conversions.

Signed-off-by: Robert Hancock <robert.hancock@calian.com>
2025-07-23 09:31:17 +02:00
Fin Maaß
62745596b4 drivers: ethernet: phy: microchip_vsc8541: use mutex
use mutex to protect page register

phy_mc_vsc8541_get_link got removed from
phy_mc_vsc8541_link_cb_set so, that
phy_mc_vsc8541_link_monitor (own thread)
is the only one to change data->state

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-07-23 09:31:17 +02:00
Fin Maaß
74d62a0903 drivers: ethernet: phy: microchip_vsc8541: improve driver
- implement configure link
- support half duplex
- use defines from mii.h
- fix check ret vals

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-07-23 09:31:17 +02:00
Ayush Singh
fcc8f8c01b dts: arm: ti: Add MAIN domain UARTS
M4F can use uarts from main domain of AM62. However, interrupts are not
supported.

The common main peripheral dts is kept in dts/venodor/ti to allow
sharing between arm targets (m4, r5) and arm64 targets (a53).

Signed-off-by: Ayush Singh <ayush@beagleboard.org>
2025-07-23 09:30:44 +02:00
Dawid Niedzwiecki
6d5cdbb13e drivers: flash: add andes qspi xip flash driver
Add a flash driver that is used to perform flash operations on a flash
chip that is connected to an Andes QSPI controller and is used for XIP
mode.

The driver is as small as possible, because necessary code has to be
placed in RAM. It is not possible to fetch code from flash while
performing erase/write operations.

Signed-off-by: Dawid Niedzwiecki <dawidn@google.com>
2025-07-23 09:30:33 +02:00
Lucien Zhao
ddc43f0d35 tests: fat_fs_api: fix stack overflow issue
Increase ZTEST_STACK_SIZE to 2048

Signed-off-by: Lucien Zhao <lucien.zhao@nxp.com>
2025-07-22 19:38:29 -04:00
Lucien Zhao
a1f49a0fe8 boards: nxp: mimxrt700: enable usdhc0 instance
enable usdhc0 clock
config usdhc0 pin
enable mmc-disk:SD2

Signed-off-by: Lucien Zhao <lucien.zhao@nxp.com>
2025-07-22 19:38:29 -04:00
Lucien Zhao
bc627062a4 dts: arm: nxp: add usdhc instances for rt700 cm33_cpu0
add usdhc instances for rt700 cm33_cpu0

Signed-off-by: Lucien Zhao <lucien.zhao@nxp.com>
2025-07-22 19:38:29 -04:00
Oleh Kravchenko
585cda1360 soc: stm32l1x: Add support for sleep/stop/standby modes
Add stm32l1_disco and nucleo_l152re overlays for testing
sleep/stop/standby modes:
- samples/boards/st/power_mgmt/blinky;
- samples/boards/st/power_mgmt/wkup_pins;

I've measured consumption for each low-power mode:
- low-power sleep ~1.72mA;
- stop mode ~324uA;
- standby mode ~2.2 uA;

It's possible to use RTC as idle timer to exit from stop mode.

Signed-off-by: Oleh Kravchenko <oleg@kaa.org.ua>
2025-07-22 19:38:19 -04:00
The Nguyen
9a9f060430 samples: display: update rtk7eka6m3b00001bu shield related samples
The rtk7eka6m3b00001bu need addtional ek_ra8d1_rtk7eka6m3b00001bu shield
to build with ek_ra8d1/r7fa8d1bhecbd platform. This commit to update
extra args to select it when build with twister

Signed-off-by: The Nguyen <the.nguyen.yf@renesas.com>
2025-07-22 19:38:02 -04:00
The Nguyen
1eb0fb20f3 boards: renesas: update ek_ra8d1 boards doc
Update usage guide when using the parallel graphics expandsion

Signed-off-by: The Nguyen <the.nguyen.yf@renesas.com>
2025-07-22 19:38:02 -04:00
The Nguyen
b0a8f19060 shields: Add EK-RA8D1 to RTK7EKA6M3B00001BU Display Adapter
Add EK-RA8D1 to RTK7EKA6M3B00001BU Display Adapter.
This is a converter from EK-RA8D1 J57 port to RTK7EKA6M3B00001BU
Display CN1 pin signal.

Signed-off-by: The Nguyen <the.nguyen.yf@renesas.com>
2025-07-22 19:38:02 -04:00
The Nguyen
f191de3906 boards: renesas: ek_ra8d1: Add Parallel Graphics Expansion Connector
Add Parallel Graphics Connector node to EK-RA8D1 dts

Signed-off-by: The Nguyen <the.nguyen.yf@renesas.com>
2025-07-22 19:38:02 -04:00
Hake Huang
f5c2ef8836 tests wdt: add WDT_OPT_PAUSE_IN_SLEEP test
add WDT_OPT_PAUSE_IN_SLEEP testing for long period
this need enable PM

Signed-off-by: Hake Huang <hake.huang@oss.nxp.com>
2025-07-22 19:37:31 -04:00
Sabrina Simkhovich
b591d141a2 drivers: sensor: mb7040: add support for MB7040 ultrasonic sensor
This commit adds a new driver for the MaxBotix MB7040 ultrasonic
rangefinder. The driver uses I2C communication to read range data
from the sensor and exposes it via the Zephyr sensor API.

Tested on an esp32-s3 board using I2C bus. Verified readings at multiple
distances to confirm accuracy.

Signed-off-by: Sabrina Simkhovich <sabrinasimkhovich@gmail.com>
2025-07-22 19:37:18 -04:00
Ayush Singh
9ea9c43c26 boards: beagle: pocketbeagle_2: Add main_uart0 pinmux
- Add pinmux for main_uart0 (P1.30 and P1.32).
- This is the UART in techlab cape and is great for m4 development.

Signed-off-by: Ayush Singh <ayush@beagleboard.org>
2025-07-22 19:36:57 -04:00
Kapil Bhatt
0d4472ae44 drivers: nrf_wifi: Remove station mode from monitor mode
Monitor mode doesn't require station mode. Disabling station mode
require necessary changes to work monitor mode.

Signed-off-by: Kapil Bhatt <kapil.bhatt@nordicsemi.no>
2025-07-22 19:36:37 -04:00
John Batch
99860e7339 soc: infineon: cyw20829: Adding MPU memory permission to userspace app
Adds additional MPU memory permissions to userspace applications by
default.  This change addresses an MPU fault encountered when running
tests/kernel/common and tests/drivers/adc/adc_api.

This approach opens additional memory locations up to user space access.
This assumes that end users of applications will tune the MPU regions for
the needs of that application.

Signed-off-by: John Batch <john.batch@infineon.com>
2025-07-22 19:35:52 -04:00
Bjarki Arge Andreasen
a39285b720 shell: exchange k_poll for k_event
The shell subsystem currently uses k_poll for signalling. However,
k_poll is only used for simple event signals, results are not used.

Replacing the k_poll with k_event greatly simplifies the code, and
saves 4 struct k_poll_signal and 4 struct k_poll_event (one of which
was entirely unused) while costing a single struct k_event, for
every shell instance. It also allows us to not select POLL,
as we are using the simpler EVENTS instead.

A quick test build of the shell test suite on an nrf54l15 produces
the following build info:

using EVENTS:

           FLASH:       71592 B      1428 KB      4.90%
             RAM:        9872 B       188 KB      5.13%
        IDT_LIST:          0 GB        32 KB      0.00%

using POLL

           FLASH:       75524 B      1428 KB      5.16%
             RAM:       11224 B       188 KB      5.83%
        IDT_LIST:          0 GB        32 KB      0.00%

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-07-22 19:34:02 -04:00
Eric Mechin
62c8e85611 Devicetree bindings: st,stm32wb-ble-rf.yaml: fix BD Address error
HCI RESET done in common_init() function in
the zephyr\subsys\bluetooth\host\hci_core.c file erase settings done
before in the zephyr\drivers\bluetooth\hci\ipm_stm32wb.c
in the bt_ipm_setup() function.
HCI RESET can be avoided by set a default "no-reset"
in the zephyr\dts\bindings\bluetooth\st,stm32wb-ble-rf.yaml

Signed-off-by: Eric Mechin <eric.mechin@st.com>
2025-07-22 19:33:26 -04:00
Xiaolu Sun
b623663ffc drivers: i2c_sedi: Apply DTS clock_frequency to I2C during initialization
Previously, the clock_frequency property defined in the Device Tree was
not applied to the I2C controller, causing the controller to ignore the
specified bitrate configuration if no other config for speed. When using
default hardware settings, the lack of an explicit timing or frequency
config may result in the controller ignoring bitrate settings. This change
ensures that the clock_frequency value from DTS is now correctly mapped
and set during controller initialization, allowing the bitrate to take
effect as intended. This improves hardware configurability and ensures
the I2C bus operates at the desired speed specified in the Device Tree.

Signed-off-by: Xiaolu Sun <xiaolu.sun@intel.com>
2025-07-22 19:32:08 -04:00
Krzysztof Chruściński
26fe43dd36 tests: kernel: timer: timer_behavior: Fix max_stddev calculation
max_stddev calculation was previously patched to be more at least
1 system clock cycle to cover for platforms that use higher frequency
system clock (32kHz). On that platform (nRF52) system clock frequency
was the same as tick frequency but on nRF54x that is no longer true.
Initially, the intention was to use 1 system tick and not cycle.
Fixing it now.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2025-07-22 19:31:31 -04:00
Anas Nashif
d0dfbce650 gitlint: adapt configuration to deal with migration warnings
Get rid of this warning:

WARNING: I4 - ignore-by-author-name: gitlint will be switching from
using Python regex 'match' (match beginning) to 'search' (match
anywhere) semantics.  Please review your ignore-by-author-name.regex
option accordingly. To remove this warning, set
general.regex-style-search=True. More details:
https://jorisroovers.github.io/gitlint/configuration/#regex-style-search

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-07-22 19:31:06 -04:00
Robert Lubos
d3ba674a51 net: lwm2m: Handle RESET replies for separate response
Separate CON responses do no have a reply callback registered (as no
response is expected), however are still registered for retransmission
on the pending list. Therefore, we not only need to check for empty
ACKs for such case but for RESET packets as well. However, this cannot
be done before "reply" processing, as some of the reply handlers
(notifications namely) check for RESET replies.

Therefore, add a final check for the RESET response after the existing
"reply" logic. In such case, just remove the pending response packet
from the retransmission queue, and release resources.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-07-22 19:30:40 -04:00
Robert Lubos
cf28b5aa65 net: lwm2m: Clear acknowledged flag before sending separate response
When using a separate response mechanism in LwM2M client, the
acknowledged flag is used to notify the engine that the request has been
acknowledged already with an empty ack and a separate CON response
should be sent. The same flag however is used by the retransmission
mechanism, to check if the CON request sent by the client has been
acknowledged by the peer.

As separate responses use the flag both ways, it has to be cleared
before sending the separate CON reply. Otherwise, the retransmission
logic assumes the reply has already been acknowledged and skips the
retransmission.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-07-22 19:30:40 -04:00
Georgij Černyšiov
9e29c7e868 boards: adi: use NOR/PSRAM bank defines
Use existing NORSRAM defines for bank reg.

Signed-off-by: Georgij Černyšiov <geo.cgv@gmail.com>
2025-07-22 19:30:31 -04:00
Georgij Černyšiov
7f4d41acbd boards: st: use NOR/PSRAM bank defines
Use existing NORSRAM defines for bank reg.

Signed-off-by: Georgij Černyšiov <geo.cgv@gmail.com>
2025-07-22 19:30:31 -04:00
Georgij Černyšiov
fd6337a55b boards: st: fix NOR/PSRAM bank 'st,control' indentation
Correct 'st,control' values indentation.

Signed-off-by: Georgij Černyšiov <geo.cgv@gmail.com>
2025-07-22 19:30:31 -04:00
Hake Huang
8add9219a7 drivers: timer : cortex_m_systick MAX_TICKS protection
when CONFIG_SYS_CLOCK_HW_CYCLES_PER_SEC set to 960M
and CONFIG_SYS_CLOCK_TICKS_PER_SEC set to 100
the MAX_TICKS will be zero or even negative value, which is not
expected.
so need add a protection here downgrading the accuracy to
its as high as possible

also add build message to show that tickless has no effect

fixes: #36766

there used to be a workaround, not a fix,
either change the CONFIG_SYS_CLOCK_TICKS_PER_SEC=200
or
CONFIG_PM to set the CONFIG_SYS_CLOCK_HW_CYCLES_PER_SEC
to 32678

Signed-off-by: Hake Huang <hake.huang@oss.nxp.com>
2025-07-22 08:19:55 -04:00
Ruiqian Tang
53374c6257 boards: seeed: support XIAO nRF54L15
This is a new board of the XIAO series based on nRF54L15.

Signed-off-by: Ruiqian Tang <ruiqian.tang@seeed.cc>
2025-07-22 14:18:43 +02:00
The Nguyen
bdcd70b51f boards: renesas: add support for rssk_ra2l1 boards
First commit to initial support for RSSK-RA2L1

Signed-off-by: The Nguyen <the.nguyen.yf@renesas.com>
2025-07-22 08:17:44 -04:00
Axel Utech
4664f600d6 dts: arm: st: u0: fix lpuart1/2 interrupts
Interrupt vectors for lpuart1 and lpuart2 are swapped according to the
reference manual RM0503 table 54.
Fixes the usage of the interrupt-driven uart API.

Signed-off-by: Axel Utech <utech@sofiha.de>
2025-07-22 08:16:56 -04:00
Benjamin Cabé
9dabb21ced samples: sensor: paj7620: refactor handling of trigger mode
The current sample was always trying to enable trigger mode in the
driver no matter what, causing issues for instances where the sensor
simply has no interrupt pin configured in Devicetree.

Cleaned things up so that enabling trigger mode is done via the
driver's Kconfig option, and cleaned up the Twister testcases
accordingly (plus, made sure they are actually built by setting
min_ram to a value compatibel with the nucleo_f334r8).

README has also been updated to clearly document how to enable
either mode.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-07-22 08:16:06 -04:00
Benjamin Cabé
5c95ff509f drivers: sensor: paj7620: use LOG_MODULE_DECLARE across driver files
paj7620 log module was being registered twice ; use LOG_MODULE_DECLARE
instead in paj7620_trigger.c

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-07-22 08:16:06 -04:00
Biwen Li
60defb4087 soc: imx: imx943: enable cache management for Cortex-M33 Core1 in NETCMIX
Enable cache management for Cortex-M33 Core1 of SoC i.MX943.

Signed-off-by: Biwen Li <biwen.li@nxp.com>
2025-07-22 08:14:15 -04:00
Parthiban Veerasooran
61095cd78e drivers: ethernet: phy: microchip_t1s: always reschedule phy_monitor_work
Previously, phy_monitor_work_handler() would return early without
rescheduling the delayed work if the callback (cb) was not set,
causing the periodic monitoring to stop. This change ensures that
k_work_reschedule() is always called, even when cb is NULL, so
monitoring of the PHY state continues.

This prevents the monitor from being inadvertently stopped and
ensures consistent behavior regardless of callback registration.

This issue was observed during testing with the evb-lan8670-rmii
(an external LAN8670 PHY) connected to the SAME54 Curiosity Ultra
platform.

Signed-off-by: Parthiban Veerasooran <parthiban.veerasooran@microchip.com>
2025-07-22 08:13:01 -04:00
Parthiban Veerasooran
893eea6cda drivers: ethernet: phy: microchip_t1s: fix missing MDIO bus enable/disable
Call mdio_bus_enable() and mdio_bus_disable() during clause 22 register
read/write operations. Previously, these APIs were not invoked, which
could lead to improper MDIO bus handling.

This issue was observed during testing with the evb-lan8670-rmii
(an external LAN8670 PHY) connected to the SAME54 Curiosity Ultra
platform.

Signed-off-by: Parthiban Veerasooran <parthiban.veerasooran@microchip.com>
2025-07-22 08:13:01 -04:00
Parthiban Veerasooran
c41cde799d drivers: ethernet: phy: microchip_t1s: fix C45 registers direct access
C45 direct registers access is only supported by the LAN865x internal PHY,
not by the LAN867x external PHY, even though the MAC supports it. Restrict
C45 direct register access to the LAN865x internal PHY. The LAN867x
external PHY supports C45 registers only via indirect access through C22
registers.

Signed-off-by: Parthiban Veerasooran <parthiban.veerasooran@microchip.com>
2025-07-22 08:13:01 -04:00
Parthiban Veerasooran
5e6e8da495 drivers: ethernet: lan865x: fix module init priority
Align the LAN865x driver module initialization priority with the default
priorities of MDIO and PHY drivers. The microchip_t1s PHY driver supports
both LAN865x internal PHY and LAN867x external PHY. It was observed that
the microchip_t1s driver initialization priority did not match the
priority sequence used by the GMAC driver when the evb-lan8670-rmii (an
external LAN8670 PHY) was connected to the SAME54 Curiosity Ultra
platform, leading to potential initialization order issues. This change
ensures the correct initialization sequence for reliable operation.

The initialization priorities of the microchip_t1s and mdio_lan865x
drivers are now set to the default values used in Zephyr. The LAN865x
driver init priority is updated to the most appropriate value so that the
microchip_t1s init priority aligns with all MAC drivers, maintaining the
correct initialization sequence.

Since the microchip_t1s driver can be used by many MAC drivers, keeping
the default priority provided by Zephyr is a good approach. Instead,
setting a specific priority for the eth_lan865x driver is more appropriate
to ensure proper initialization order.

Signed-off-by: Parthiban Veerasooran <parthiban.veerasooran@microchip.com>
2025-07-22 08:13:01 -04:00
IBEN EL HADJ MESSAOUD Marwa
8b355e9306 drivers: usb: udc: prevent USB clock disable in sleep mode
Prevent disabling OTG HS and USBPHY clocks
during sleep on STM32U5 series

Disabling these clocks during sleep mode
was causing USB device initialization issues

Signed-off-by: IBEN EL HADJ MESSAOUD Marwa <marwa.ibenelhadjmessaoud-ext@st.com>
2025-07-22 08:11:49 -04:00
IBEN EL HADJ MESSAOUD Marwa
d4b2808b68 drivers: usb: device: prevent USB clock disable in sleep mode
Prevent disabling OTG HS and USBPHY clocks
during sleep on STM32U5 series

Disabling these clocks during sleep mode
was causing USB device initialization issues

Signed-off-by: IBEN EL HADJ MESSAOUD Marwa <marwa.ibenelhadjmessaoud-ext@st.com>
2025-07-22 08:11:49 -04:00
Ben Lauret
6b331ced5b dts: Added BT hci and enabled it by default
Enabled the BT HCI by default

Signed-off-by: Ben Lauret <ben.lauret.wm@renesas.com>
2025-07-22 08:11:24 -04:00
Chris Friedt
1dfe979b85 MAINTAINERS: add cfriedt and jhedberg as release notes maintainers
Add cfriedt and jhedberg as release notes maintainers for v4.3.

Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
2025-07-22 08:11:01 -04:00
Benjamin Cabé
8f4a52b25a doc: releases: expose draft 4.3 release notes + migration guide in toc
Update toctrees to show 4.3 documents in the release page
Also move migration guide to 3.6 and 4.0 to the attic, a.k.a EOL
releases page.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-07-22 08:10:51 -04:00
Tomasz Chyrowicz
9dd514cade soc: Boot matching radio slot
If the application uses slot 1 (i.e. in Direct XIP mode),
boot radio slot 1 instead of slot 0.

Signed-off-by: Tomasz Chyrowicz <tomasz.chyrowicz@nordicsemi.no>
2025-07-22 08:10:22 -04:00
Mike J. Chen
1f69b91e90 drivers: audio: dmic_mcux: remove arbitrary mapping of pdm to dmic channel
The dmic_mcux driver required a mapping of paired dmics to
specify the same pdm number, and would arbitrarily assign the left
channel of the pair to even dmic channel number and the right
to an odd dmic channel number.

Change this so that the pdm number in the mapping is
used as the dmic channel number, and paired dmics are checked to
specify consecutive pdm numbers (instead of the
same pdm number).

This allows users to control explicitly which dmic
channel to use and whether that dmic channel is left or right,
without this arbitrary indirect mapping. This is important
in case they want a dmic that is wired to be right channel
to be assigned to dmic channel 0, which is the only channel
that supports hwvad.

Signed-off-by: Mike J. Chen <mjchen@google.com>
2025-07-21 21:36:44 -04:00
Sanjay Vallimanalan
07efbe6d97 tests: lib: json: add test for mixed array types
Add tests for encoding, parsing and calculating length mixed array
types.

Signed-off-by: Sanjay Vallimanalan <sanjay@linumiz.com>
2025-07-21 21:31:21 -04:00
Sanjay Vallimanalan
ce4eba52d5 lib: utils: json: add support for mixed array types
Added support for mixed array types in JSON by introducing a new type -
json_mixed_arr_descr. Added APIs for mixed array type parsing and
encoding.

Signed-off-by: Sanjay Vallimanalan <sanjay@linumiz.com>
2025-07-21 21:31:21 -04:00
Sanjay Vallimanalan
6c37aa9eac include: zephyr: data: add mixed array type support for json
Introduced a mixed array type for JSON using the struct
json_mixed_arr_descr. Added helper macros to define elements of the
descriptor array.

Signed-off-by: Sanjay Vallimanalan <sanjay@linumiz.com>
2025-07-21 21:31:21 -04:00
Pan Gao
ff9e29b3dd boards: shields: nxp: add IW610 config
IW610 config add dhcpv4 server address max count,
dhcpv4 server icmp probe timeout and
Wi-Fi AP max STA count macro to
support max 8 STAs connect to UAP.

Signed-off-by: Pan Gao <pan.gao@nxp.com>
2025-07-21 21:29:42 -04:00
Declan Snyder
6f4e70c1e4 boards: nxp: Add arduino r3 node definitions
Add the arduino r3 header definitions for the boards that I have
schematics of.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-07-21 21:28:18 -04:00
Declan Snyder
82669ec4f6 boards: frdm_mcxn947: Move camera connector node
No idea why this was not put with the other node definitions next to the
other connector node. There is actually a style guideline for DTS files
and pretty sure this was breaking multiple of the rules.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-07-21 21:28:18 -04:00
Jamie McCrae
8640355d87 west.yml: MCUboot synchronization from upstream
Update Zephyr fork of MCUboot to revision:
  461e060e8687c9a75074effcc61d7f68c5112cfd

Brings following Zephyr relevant fixes:

  - 461e060e zephyr: Improve SHA support selectors
  - b9ba2573 boot: zephyr: kconfig: Default to swap using offset
  - cc8f6aff boot: zephyr: Set prefer swap using move for aligned
    boards
  - 37bc4aa4 zephyr: boards: nrf54h20dk: disable power domains
  - 5a728be9 boot: zephyr: Add support for Cortex-R cleanup before
    final jump
  - 83e2f934 boot: zephyr: Add Cortex-R support
  - c136f4a8 boot: zephyr: Remove references to tinycrypt
  - 3bf79cbc boot: zephyr: Remove support for deprecated LED dts
  - 3e02536f boot: bootutil: declare fih_panic_loop() as noreturn
  - 5eaf190a boot: zephyr: RAM cleanup debug loop
  - ecf01da3 zephyr: Add zephyr samples folder to list of samples
  - 724a7514 boot: zephyr: boards: Reformat DTS files
  - f9db0194 bootutil: Unify app_max_size() implementations
  - 6ea7add6 zephyr: Remove legacy flash_area_get_sectors
  - 7271062e boot: zephyr: boards: Remove outdated nrf54l15pdk
    board config
  - 5ce11a3b zephyr: boards: nrf - remove redundant multithreading
    configuration
  - fa4ca87a mbedtls: Move local mbedtls to v3.6.0
  - a736efa7 boot: zephyr: add support for revert mode with ramload
  - 61c5547b boot: zephyr: add ram_load overlays for nrf52840dk and
    mimxrt1050_evk boards

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-07-21 21:27:13 -04:00
Felipe Neves
a93e6c23ff samples: modules: lvgl: demos: added new test cases
that uses the LVGL internal workqueue option to
drive the LVGL core automatically

Signed-off-by: Felipe Neves <ryukokki.felipe@gmail.com>
2025-07-21 21:26:27 -04:00
Felipe Neves
744ee2082e modules: lvgl: expose the lvgl workqueue to the user application
allowing user to submit their own work intems to it.

Signed-off-by: Felipe Neves <ryukokki.felipe@gmail.com>
2025-07-21 21:26:27 -04:00
Felipe Neves
e82b8d277b modules: lvgl: add automatic lv_timer_handler call
inside of its own thread when user enable it on
the LVGL Zephyr options menu, using this option makes
the calling of the lv_timer_handler driven by an internal
timer and thread. Options like priority and stack size
for this thread are exposed making it configurable by the
application.

Signed-off-by: Felipe Neves <ryukokki.felipe@gmail.com>

modules: lvgl: put LVGL core into a dedicated workqueue

Replacing the initial approach based on timers and semaphore

Signed-off-by: Felipe Neves <ryukokki.felipe@gmail.com>
2025-07-21 21:26:27 -04:00
Anas Nashif
3776a35e84 Revert "boards: silabs: siwx91x: Expose real layout of the flash"
This reverts commit 53375e95ba.

Some boards are failing with:

OverflowError: can't convert negative int to unsigned

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-07-22 09:34:12 +09:00
Yishai Jaffe
ee7834997b drivers: led: shell: add blink cmd
Add blink command to led shell module

Signed-off-by: Yishai Jaffe <yishai1999@gmail.com>
2025-07-21 13:07:07 -04:00
Vinayak Kariappa Chettimada
ede31d39f0 Bluetooth: Controller: Fix assertion using BT_CTLR_LOW_LAT_ULL_DONE
BT_CTLR_LOW_LAT_ULL_DONE is used to reduce CPU usage in LLL
context by delegating the done event dequeue to ULL_HIGH
context.

Building a HCI Controller with BT_CTLR_LOW_LAT_ULL_DONE had
assertion when used with BlueZ stack.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2025-07-21 13:04:44 -04:00
Vinayak Kariappa Chettimada
cebaad33b1 Bluetooth: Controller: Fix missing ticker force reset on being lazy
Fix missing ticker force reset when the ticker expiry was
skipped or rescheduled.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2025-07-21 13:04:36 -04:00
Vinayak Kariappa Chettimada
0ad4d86354 Bluetooth: Controller: Fix flash sync start from starving connection
Fix flash sync start from repeatedly forcing connection
event be skipped. Space new flash operation to be placed
in the past so that it does not force itself on to an
overlapping connection event.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2025-07-21 13:04:36 -04:00
Sebastian Głąb
c537fa765e tests: subsys: fs: fcb: Cleanup after nRF54LM20 rename
Remove duplicated test configuration after
nrf54l20pdk/nrf54l20/cpuxxx was renamed to
nrf54lm20dk/nrf54lm20a/cpuxxx.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
2025-07-21 13:04:27 -04:00
Sebastian Głąb
1cf511edd9 tests: kernel: timer: timer_behavior: Cleanup after nRF54LM20 rename
Remove duplicated test configuration after
nrf54l20pdk/nrf54l20/cpuxxx was renamed to
nrf54lm20dk/nrf54lm20a/cpuxxx.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
2025-07-21 13:04:27 -04:00
Sebastian Głąb
a918256659 tests: drivers: watchodg: Cleanup after nRF54LM20 rename
Remove duplicated test configuration after
nrf54l20pdk/nrf54l20/cpuxxx was renamed to
nrf54lm20dk/nrf54lm20a/cpuxxx.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
2025-07-21 13:04:27 -04:00
Sebastian Głąb
f0c143eace tests: drivers: uart: uart_pm: Cleanup after nRF54LM20 rename
Remove duplicated test configuration after
nrf54l20pdk/nrf54l20/cpuxxx was renamed to
nrf54lm20dk/nrf54lm20a/cpuxxx.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
2025-07-21 13:04:27 -04:00
Sebastian Głąb
8791fcf34d tests: drivers: uart: uart_mix_fifo_poll: Cleanup after nRF54LM20 rename
Remove duplicated test configuration after
nrf54l20pdk/nrf54l20/cpuxxx was renamed to
nrf54lm20dk/nrf54lm20a/cpuxxx.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
2025-07-21 13:04:27 -04:00
Sebastian Głąb
d05c971350 tests: drivers: uart: uart_errors: Cleanup after nRF54LM20 rename
Remove duplicated test configuration after
nrf54l20pdk/nrf54l20/cpuxxx was renamed to
nrf54lm20dk/nrf54lm20a/cpuxxx.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
2025-07-21 13:04:27 -04:00
Sebastian Głąb
207c662e11 tests: drivers: uart: uart_elementary: Cleanup after nRF54LM20 rename
Remove duplicated test configuration after
nrf54l20pdk/nrf54l20/cpuxxx was renamed to
nrf54lm20dk/nrf54lm20a/cpuxxx.

Reorganize testcase.yaml to make it easier to maintain.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
2025-07-21 13:04:27 -04:00
Sebastian Głąb
e5a9c35a99 tests: drivers: uart: uart_async_api: Cleanup after nRF54LM20 rename
Remove duplicated test configuration after
nrf54l20pdk/nrf54l20/cpuxxx was renamed to
nrf54lm20dk/nrf54lm20a/cpuxxx.

Add test on fast instance uart00 on nrf54lm20dk.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
2025-07-21 13:04:27 -04:00
Sebastian Głąb
afd90f42a2 tests: drivers: timer: nrf_grtc_timer: Cleanup after nRF54LM20 rename
Remove duplicated test configuration after
nrf54l20pdk/nrf54l20/cpuxxx was renamed to
nrf54lm20dk/nrf54lm20a/cpuxxx.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
2025-07-21 13:04:27 -04:00
Sebastian Głąb
31e8326e61 tests: drivers: spi: spi_loopback: Cleanup after nRF54LM20 rename
Remove duplicated test configuration after
nrf54l20pdk/nrf54l20/cpuxxx was renamed to
nrf54lm20dk/nrf54lm20a/cpuxxx.

Run test with 16MHz/32MHz bitrate using spi00 instance
(spi2x instances support up to 16MHz/2).

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
2025-07-21 13:04:27 -04:00
Sebastian Głąb
467fac1574 tests: drivers: spi: spi_error_cases: Cleanup after nRF54LM20 rename
Remove duplicated test configuration after
nrf54l20pdk/nrf54l20/cpuxxx was renamed to
nrf54lm20dk/nrf54lm20a/cpuxxx.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
2025-07-21 13:04:27 -04:00
Sebastian Głąb
49734bfd03 tests: drivers: spi: spi_controller_peripheral: Disable on nRF54L20pdk
Remove duplicated test configuration after
nrf54l20pdk/nrf54l20/cpuxxx was renamed to
nrf54lm20dk/nrf54lm20a/cpuxxx.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
2025-07-21 13:04:27 -04:00
Sebastian Głąb
a32ca2b360 tests: drivers: sensor: temp_sensor: Cleanup after nRF54LM20 rename
Remove duplicated test configuration after
nrf54l20pdk/nrf54l20/cpuxxx was renamed to
nrf54lm20dk/nrf54lm20a/cpuxxx.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
2025-07-21 13:04:27 -04:00
Sebastian Głąb
cb3a94acc1 tests: drivers: retianed_mem: api: Cleanup after nRF54LM20 rename
Remove duplicated test configuration after
nrf54l20pdk/nrf54l20/cpuxxx was renamed to
nrf54lm20dk/nrf54lm20a/cpuxxx.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
2025-07-21 13:04:27 -04:00
Sebastian Głąb
25b90acc70 tests: drivers: pwm: pwm_gpio_loopback: Enable test on nrf54lm20dk
Add overlay required to run the test on
nrf54lm20dk/nrf54lm20a/cpuapp.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
2025-07-21 13:04:27 -04:00
Sebastian Głąb
796adb60ca tests: drivers: i2s: i2s_speed: Cleanup after nRF54LM20 rename
Remove duplicated test configuration after
nrf54l20pdk/nrf54l20/cpuxxx was renamed to
nrf54lm20dk/nrf54lm20a/cpuxxx.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
2025-07-21 13:04:27 -04:00
Sebastian Głąb
98443a87f9 tests: drivers: i2s: i2s_api: Cleanup after nRF54LM20 rename
Remove duplicated test configuration after
nrf54l20pdk/nrf54l20/cpuxxx was renamed to
nrf54lm20dk/nrf54lm20a/cpuxxx.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
2025-07-21 13:04:27 -04:00
Sebastian Głąb
a850089d6b tests: drivers: i2s: i2s_additional: Enable test on nrf54lm20dk
Add overlay required to run the test on
nrf54lm20dk/nrf54lm20a/cpuapp.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
2025-07-21 13:04:27 -04:00
Sebastian Głąb
9a8988d292 tests: drivers: i2c: i2c_target_api: Cleanup after nRF54LM20 rename
Remove duplicated test configuration after
nrf54l20pdk/nrf54l20/cpuxxx was renamed to
nrf54lm20dk/nrf54lm20a/cpuxxx.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
2025-07-21 13:04:27 -04:00
Sebastian Głąb
942e2a8195 tests: drivers: gpio: gpio_basic_api: Cleanup after nRF54LM20 rename
Remove duplicated test configuration after
nrf54l20pdk/nrf54l20/cpuxxx was renamed to
nrf54lm20dk/nrf54lm20a/cpuxxx.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
2025-07-21 13:04:27 -04:00
Sebastian Głąb
dd932f2256 tests: drivers: flash: negative_tests: Cleanup after nRF54LM20 rename
Remove duplicated test configuration after
nrf54l20pdk/nrf54l20/cpuxxx was renamed to
nrf54lm20dk/nrf54lm20a/cpuxxx.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
2025-07-21 13:04:27 -04:00
Sebastian Głąb
6d03831708 tests: drivers: flash: common: Cleanup after nRF54LM20 rename
Remove duplicated test configuration after
nrf54l20pdk/nrf54l20/cpuxxx was renamed to
nrf54lm20dk/nrf54lm20a/cpuxxx.

Enable external memory node.

Use separate test configuration as external memory works
only on nRF54LM20 DKs with `external_flash` fixture.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
2025-07-21 13:04:27 -04:00
Sebastian Głąb
e275eeaefb tests: drivers: counter: counter_basic_api: Cleanup after nRF54LM20 rename
Remove duplicated test configuration after
nrf54l20pdk/nrf54l20/cpuxxx was renamed to
nrf54lm20dk/nrf54lm20a/cpuxxx.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
2025-07-21 13:04:27 -04:00
Sebastian Głąb
e8a5802c90 tests: drivers: comparator: gpio_loopback: Enable test on nrf54lm20dk
Add overlay required to run the test on
nrf54lm20dk/nrf54lm20a/cpuapp.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
2025-07-21 13:04:27 -04:00
Sebastian Głąb
ebdbc243d4 tests: drivers: clock_control: Cleanup after nRF54LM20 rename
Remove duplicated test configuration after
nrf54l20pdk/nrf54l20/cpuxxx was renamed to
nrf54lm20dk/nrf54lm20a/cpuxxx.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
2025-07-21 13:04:27 -04:00
Sebastian Głąb
6b70d35dbc tests: drivers: audio: dmic_api: Cleanup after nRF54LM20 rename
Remove duplicated test configuration after
nrf54l20pdk/nrf54l20/cpuxxx was renamed to
nrf54lm20dk/nrf54lm20a/cpuxxx.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
2025-07-21 13:04:27 -04:00
Sebastian Głąb
85f4925d28 tests: drivers: adc: adc_error_cases: Cleanup after nRF54LM20 rename
Remove duplicated test configuration after
nrf54l20pdk/nrf54l20/cpuxxx was renamed to
nrf54lm20dk/nrf54lm20a/cpuxxx.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
2025-07-21 13:04:27 -04:00
Sebastian Głąb
d096e83ce1 tests: drivers: adc: adc_api: Cleanup after nRF54LM20 rename
Remove duplicated test configuration after
nrf54l20pdk/nrf54l20/cpuxxx was renamed to
nrf54lm20dk/nrf54lm20a/cpuxxx.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
2025-07-21 13:04:27 -04:00
Sebastian Głąb
cc3b92e1b6 tests: drivers: adc: adc_accuracy_test: Enable test on nrf54lm20dk
Add overlay required to run the test on
nrf54lm20dk/nrf54lm20a/cpuapp.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
2025-07-21 13:04:27 -04:00
Sebastian Głąb
dcd1a144ed tests: boards: nrf: qdec: Cleanup after nRF54LM20 rename
Remove duplicated test configuration after
nrf54l20pdk/nrf54l20/cpuxxx was renamed to
nrf54lm20dk/nrf54lm20a/cpuxxx.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
2025-07-21 13:04:27 -04:00
Sebastian Głąb
0272230542 tests: boards: nrf: i2c: i2c_slave: Cleanup after nRF54LM20 rename
Remove duplicated test configuration after
nrf54l20pdk/nrf54l20/cpuxxx was renamed to
nrf54lm20dk/nrf54lm20a/cpuxxx.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
2025-07-21 13:04:27 -04:00
Sebastian Głąb
591ff8155c tests: boards: nrf: hwinfo: Cleanup after nRF54LM20 rename
Remove duplicated test configuration after
nrf54l20pdk/nrf54l20/cpuxxx was renamed to
nrf54lm20dk/nrf54lm20a/cpuxxx.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
2025-07-21 13:04:27 -04:00
Sebastian Głąb
cd26bd78c5 tests: boards: nrf: comp: Enable test on nrf54lm20dk
Add overlay required to run the test on
nrf54lm20dk/nrf54lm20a/cpuapp.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
2025-07-21 13:04:27 -04:00
Guennadi Liakhovetski
cfd6a0673c SoC: Intel: ACE: remove unused litelals parts in interrupt vectors
Currently the linker script for ACE defines memory regions for
literals in interrupt vector memory. This wastes memory and leads to
link failures when CONFIG_USERSPACE is enabled. Remove those regions
to reclaim 8 bytes per vector and fix linking. Also remove duplicated
level 4 interrupt vector sections and replace spaces with TABS.

Signed-off-by: Guennadi Liakhovetski <guennadi.liakhovetski@linux.intel.com>
2025-07-21 13:04:06 -04:00
Guennadi Liakhovetski
1dbca21fa2 gdb: xtensa: fix sparse warnings
Fix a sparse memory attribute mismatch.

Signed-off-by: Guennadi Liakhovetski <guennadi.liakhovetski@linux.intel.com>
2025-07-21 13:03:30 -04:00
Guennadi Liakhovetski
226747a1c8 gdb: fix compilation failures
Compilation fails with an "index outside of array bounds" error:

In function 'find_memory_region',
    inlined from 'gdb_mem_can_read' at \
zephyr/subsys/debug/gdbstub/gdbstub.c:93:7:
zephyr/subsys/debug/gdbstub/gdbstub.c:65:21: warning: array subscript \
idx is outside array bounds of 'const struct gdb_mem_region[0]' \
[-Warray-bounds]
   65 |                 r = &gdb_mem_region_array[idx];
      |                     ^~~~~~~~~~~~~~~~~~~~~~~~~~
zephyr/subsys/debug/gdbstub/gdbstub.c: In function 'gdb_mem_can_read':
zephyr/subsys/debug/gdbstub/gdbstub.c:42:36: note: while referencing \
'gdb_mem_region_array'
   42 | __weak const struct gdb_mem_region gdb_mem_region_array[0];
      |

Use a single element array to fix the problem.

Signed-off-by: Guennadi Liakhovetski <guennadi.liakhovetski@linux.intel.com>
2025-07-21 13:03:30 -04:00
Jérôme Pouiller
53375e95ba boards: silabs: siwx91x: Expose real layout of the flash
The Network Coprocessor on SiWx91x owns a large part of the flash. Zephyr
is not expected to access to theses areas.

However, it is still technically possible to access these. In addition, we
prefer the DTS contains a comprehensive and transparent description of the
hardware. So update the DTS with the real partitioning of the SoC.

Reference documentation is available here[1].

[1]: https://www.silabs.com/documents/public/application-notes/
     an1416-siwx917-soc-memory-map.pdf

Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
2025-07-21 13:02:58 -04:00
Jérôme Pouiller
1ee39b9823 soc: silabs: siwx91x: Fix coding style
There is no reason to place sli_siwx917_soc.h under #ifdef. Then, we can
get rid of the #if in the body of soc_early_init_hook().

Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
2025-07-21 09:20:23 -04:00
Jérôme Pouiller
c24936fc40 soc: silabs: Drop useless SOC_PART_NUMBER
Variable CONFIG_SOC_PART_NUMBER is only used in CMakeLists.txt of
hal_silabs. In fact, this variable can be easily calculated from CONFIG_SOC
by changing lower case in upper case.

So, let's drop this useless variable.

Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
2025-07-21 09:20:23 -04:00
Jérôme Pouiller
215d53ff9d soc: silabs: Drop useless SOC_GECKO_SDID
SOC_GECKO_SDID is no more referenced since commit 955aca6c0 ("soc: silabs:
Initialize clock manager HAL from DT"). We can safety drop it.

Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
2025-07-21 09:20:23 -04:00
Ian Morris
911371ff2b boards: renesas: ek_ra8m1: added mikrobus spi node label
Added mikrobus_spi node label to EK-RA8M1 device tree board definition,
allowing compatible shield boards to be used.

Signed-off-by: Ian Morris <ian.morris.vf@renesas.com>
2025-07-21 09:20:06 -04:00
Travis Lam
f94a45c276 drivers: flash: nordic: Introduce nrf_mramc driver
Add SHIM layer for nrfx_mramc driver for zephyr

Signed-off-by: Travis Lam <travis.lam@nordicsemi.no>
2025-07-21 09:19:45 -04:00
Luis Ubieda
9339f315b0 samples: gnss: Add ability to enable RTK
Expand this sample to also work with GNSS_RTK through a serial client.

Make this compatible to work with VMU_RT1170 which requires using the
F9P, instead of the M8 UBX module.

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-07-21 09:19:14 -04:00
Luis Ubieda
25b4e868a9 gnss: u-blox f9p: Add RTK integration to driver
Enable driver to consume RTK data-correction messages published
in order to enhance GNSS Navigation results.

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-07-21 09:19:14 -04:00
Luis Ubieda
2418612421 modem: ubx: Change request buffer to be void
So this API can be used to send frames with a different encoding than
UBX. This enables UBX drivers to send RTCM3 correction frames using UBX
API, without having to switch over modem pipes.

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-07-21 09:19:14 -04:00
Luis Ubieda
a82f6c0b06 tests: gnss: rtk: Add testsuite to validate RTCM3 protocol
To capture framing capabilities (only API so far).

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-07-21 09:19:14 -04:00
Luis Ubieda
a6c898eee4 maintainers: Add GNSS Subsystem entries
To be covered by existing Drivers: GNSS, as per requested during the
review process. Added myself as a collaborator to follow-up with
RTK-related changes.

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-07-21 09:19:14 -04:00
Luis Ubieda
a000acf85b gnss: rtk: Add basic integration
Incorporate the basic RTK API as well as a basic client integration
(serial) as a way to receive and publish the RTK data.

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-07-21 09:19:14 -04:00
Luis Ubieda
a5d2bdc6ed tests: crc: Add test-case to validate CRC24Q RTCM3
Validating both a frame without CRC (should return calculated CRC), and
with CRC (should return 0 as a match).

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-07-21 09:19:14 -04:00
Luis Ubieda
7a90d9d34d crc: Add CRC24Q for RTCM3 checksum calculations
Used in GNSS RTK correction frames.

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-07-21 09:19:14 -04:00
Jamie McCrae
e81a08d6dd boards: nordic: nrf52840dongle: Replace SYS_INIT with board hooks
Updates to use board hooks since SYS_INIT should not be used
in boards

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-07-21 09:19:03 -04:00
Jamie McCrae
c85ff90951 boards: nordic: nrf5340_audio_dk: Replace SYS_INIT with board hooks
Updates to use board hooks since SYS_INIT should not be used
in boards

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-07-21 09:19:03 -04:00
Jamie McCrae
8a25474f4f boards: nordic: nrf9160dk: Replace SYS_INIT with board hooks
Updates to use board hooks since SYS_INIT should not be used
in boards

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-07-21 09:19:03 -04:00
Sebastian Głąb
9f0dc127c0 samples: sensor: qdec: Enable sample on nrf54lm20dk
Add overlay required to run the sample on
nrf54lm20dk/nrf54lm20a/cpuapp.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
2025-07-21 07:51:19 -04:00
Sebastian Głąb
3cf784c557 samples: drivers: watchdog: Cleanup after nRF54LM20 rename
Remove duplicated test configuration after
nrf54l20pdk/nrf54l20/cpuxxx was renamed to
nrf54lm20dk/nrf54lm20a/cpuxxx.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
2025-07-21 07:51:19 -04:00
Sebastian Głąb
231b663495 samples: drivers: spi_flash: Enable sample on nrf54lm20dk
Add overlay required to run the sample on
nrf54lm20dk/nrf54lm20a/cpuapp.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
2025-07-21 07:51:19 -04:00
Sebastian Głąb
e314eb649a samples: drivers: spi_bitbang: Enable sample on nrf54* targets
Add overlays required to run the sample on
- nrf54h20dk/nrf54h20/cpuapp,
- nrf54l15dk/nrf54l15/cpuapp,
- nrf54lm20dk/nrf54lm20a/cpuapp.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
2025-07-21 07:51:19 -04:00
Sebastian Głąb
537b1ef4e7 samples: drivers: mbox: Cleanup after nRF54LM20 rename
Remove duplicated test configuration after
nrf54l20pdk/nrf54l20/cpuxxx was renamed to
nrf54lm20dk/nrf54lm20a/cpuxxx.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
2025-07-21 07:51:19 -04:00
Sebastian Głąb
c25e0302ee samples: drivers: jesd216: Enable sample on nrf54lm20dk
Add overlay required to run the sample on
nrf54lm20dk/nrf54lm20a/cpuapp.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
2025-07-21 07:51:19 -04:00
Sebastian Głąb
fc164f43a0 samples: drivers: i2c: rtio_loopback: Enable sample on nrf54lm20dk
Add overlay required to run the sample on
nrf54lm20dk/nrf54lm20a/cpuapp.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
2025-07-21 07:51:19 -04:00
Sebastian Głąb
589c85dc97 samples: drivers: counter: alarm: Cleanup platform_allow for nrf54*
Remove duplicated test configuration after
nrf54l20pdk/nrf54l20/cpuxxx was renamed to
nrf54lm20dk/nrf54lm20a/cpuxxx.

Extend platform_allow with other nrf54* targets (overlays for these
targets already exist in the boards directory).

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
2025-07-21 07:51:19 -04:00
Sebastian Głąb
94d35ec0ce samples: drivers: audio: dmic: Cleanup after nRF54LM20 rename
Remove duplicated test configuration after
nrf54l20pdk/nrf54l20/cpuxxx was renamed to
nrf54lm20dk/nrf54lm20a/cpuxxx.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
2025-07-21 07:51:19 -04:00
Sebastian Głąb
3c9368bc50 samples: drivers: adc: adc_sequence: Enable sample on nrf54lm20dk
Add overlay required to run the sample on
nrf54lm20dk/nrf54lm20a/cpuapp.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
2025-07-21 07:51:19 -04:00
Sebastian Głąb
8892550b21 samples: drivers: adc: adc_dt: Enable sample on nrf54lm20dk
Add overlay required to run the sample on
nrf54lm20dk/nrf54lm20a/cpuapp.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
2025-07-21 07:51:19 -04:00
Sebastian Głąb
1c221bc732 samples: boards: nordic: system_off: Cleanup after nRF54LM20 rename
Remove duplicated test configuration after
nrf54l20pdk/nrf54l20/cpuxxx was renamed to
nrf54lm20dk/nrf54lm20a/cpuxxx.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
2025-07-21 07:51:19 -04:00
Anas Nashif
e6cfbda666 latmon: guard kconfigs to avoid leaks
Guard all kconfig options to avoid kconfig leakage when latmon is not
enabled.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-07-21 07:51:07 -04:00
Stoyan Bogdanov
6559af8ef4 boards: ti: lp_em_2340r5: Add PWM led support
Add default pwm leds:
 - pwm_led0 - red led on the board
 - pwm_led1 - green led on the board

Signed-off-by: Stoyan Bogdanov <sbogdanov@baylibre.com>
2025-07-21 07:26:18 -04:00
Stoyan Bogdanov
285453a77f boards: ti: lp_em_cc2340r5: Add pinctrl support for PWM
For each available LGPT PWM channel is selected one PWM
capable pin.

Signed-off-by: Stoyan Bogdanov <sbogdanov@baylibre.com>
2025-07-21 07:26:18 -04:00
Stoyan Bogdanov
9dad848fe0 dts: arm: ti: cc23x0: Add LGPT PWM support
Add all available PWM channels as subnodes to respected LGPT.

Signed-off-by: Stoyan Bogdanov <sbogdanov@baylibre.com>
2025-07-21 07:26:18 -04:00
Stoyan Bogdanov
ff2328522a drivers: pwm: Add support for cc23x0 LGPT PWM
Add PWM support for LGPT0, LGPT1, LGPT2 and LGPT3 for cc23x0 SoC.

Signed-off-by: Stoyan Bogdanov <sbogdanov@baylibre.com>
2025-07-21 07:26:18 -04:00
Parthiban Nallathambi
bc078433e7 boards: ti/mspm0: add support for L2228 launchpad
MSPM0L2228 launchpad provides evaluation and development
platform with 32KB SRAM and 256KB Flash. This board also
comes with 32Mhz external high frequency crystal and 32.768Khz
low frequency crystal.

Also LCD (only with L2228 SoC's) is included with many multi-function
PIO's exposed. Add support with basic UART and LED functions.

Signed-off-by: Parthiban Nallathambi <parthiban@linumiz.com>
2025-07-21 07:25:50 -04:00
Parthiban Nallathambi
de61a9e37f dts: arm: ti/mspm0: add support for L series
mspm0lx series comes with various SoC's which varies in RAM,
Flash size and also with peripherals. Add support for all
the currently available SoC's with basic template.

Signed-off-by: Parthiban Nallathambi <parthiban@linumiz.com>
2025-07-21 07:25:50 -04:00
Parthiban Nallathambi
455e76f68f drivers: gpio: fix pincm lut size
LUT sizes directly reflects the global data when enabled in dts
(even if no or few pins are really consumed). Also the PINCM
numbering across the series (g, l and c) is within 255, so fix
to use uint8_t to save the global space.

Signed-off-by: Parthiban Nallathambi <parthiban@linumiz.com>
2025-07-21 07:25:50 -04:00
Parthiban Nallathambi
7a70fab29b drivers: gpio: add support for mspm0L series banks
All the HAL API/wrapper depends on PINCM indexing, which cannot
be derived from neither pin number nor the address offset.

With current approach, update the LUT table of possible PINCM's
for L series with GPIO A, B and C banks.

Signed-off-by: Parthiban Nallathambi <parthiban@linumiz.com>
2025-07-21 07:25:50 -04:00
Parthiban Nallathambi
4e78996e16 soc: ti: mspm0: add support for L series
mspm0 family of SoC series is split into three category,

mspm0g - high performance
mspm0l - low power
mspm0c - entry level

With G already part added, add support for L series of SoC's.

Signed-off-by: Parthiban Nallathambi <parthiban@linumiz.com>
2025-07-21 07:25:50 -04:00
Parthiban Nallathambi
6bef297052 drivers: clock: conditional compile ulpclk udiv divider
although udiv is represented in clock tree of L series, this is
not really present or controllable from SYSCTL registers. Enable
udiv only if present in dts.

Signed-off-by: Parthiban Nallathambi <parthiban@linumiz.com>
2025-07-21 07:25:50 -04:00
Parthiban Nallathambi
2dc6307628 soc: ti: mspm0: restructure common files
mspm0 series (currently g, l and c) shares the common SoC
level init functions and pin control/muxing configurations.

To avoid duplication for each series, create a common path
and move the SoC and pin control definitions.

Other common functionalities like Power Management, Power off
handling will be added in future, which will be common across
series.

Signed-off-by: Parthiban Nallathambi <parthiban@linumiz.com>
2025-07-21 07:25:50 -04:00
Parthiban Nallathambi
abe9c49aad drivers: pinctrl: add pin function for 11/0xB
MSPM0Lx series supports pin function upto 11 i.e 0xb, extend
the pin control function number to 11.

Signed-off-by: Parthiban Nallathambi <parthiban@linumiz.com>
2025-07-21 07:25:50 -04:00
Parthiban Nallathambi
ae596652b1 soc: ti/mspm0: move flash config to common defconfig
Flash size and address is extracted from dts, which will be common
for all the upcoming series of SoC's like MSPM0L, MSPM0C. Move the
flash address and size to soc level defconfig.

Signed-off-by: Parthiban Nallathambi <parthiban@linumiz.com>
2025-07-21 07:25:50 -04:00
Parthiban Nallathambi
b4d0082450 manifest: ti: add support for MSPM0L series
Update manifest to point MSPM0L series support.
Currently it only supports L2228's devicetree pin functions.

Signed-off-by: Parthiban Nallathambi <parthiban@linumiz.com>
2025-07-21 07:25:50 -04:00
Matt Rodgers
873fae67f8 samples: adc: add board overlays for STM32 differential mode
Add overlays used for testing differential mode support in STM32 ADC
driver:
- Nucleo F303K8
- Nucleo H753ZI

Signed-off-by: Matt Rodgers <mrodgers@witekio.com>
2025-07-21 07:25:30 -04:00
Matt Rodgers
56621fa1de drivers: adc: stm32: add support for differential mode
Differential mode support consists of:
- If differential mode is supported by the underlying hardware AND at
  least one differential channel is enabled in the devicetree for this
  ADC instance, then perform a differential mode calibration in addition
  to the usual single ended calibration during initialisation.
- Set channels to the appropriate differential or single ended mode
  during channel setup.

Currently the N6 series is not supported even though the underlying
hardware supports differential mode, due to complications in the
calibration procedure.

Signed-off-by: Matt Rodgers <mrodgers@witekio.com>
Co-authored-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2025-07-21 07:25:30 -04:00
Saravanan Sekar
7ed3c4fc46 samples: drivers: pwm: Add a sample to test pwm capture
Add a sample to test pwm capture function.

Signed-off-by: Saravanan Sekar <saravanan@linumiz.com>
2025-07-21 07:25:10 -04:00
Saravanan Sekar
7cd96d693e dts: arm: ti: mspm0: Add timer TIMA1 node for pwm capture
Add a support for timer TIMA1 node for pwm capture.

Signed-off-by: Saravanan Sekar <saravanan@linumiz.com>
2025-07-21 07:25:10 -04:00
Saravanan Sekar
e051ec23ca drivers: pwm: Add a support for TI MSPM0 PWM capture
TI MSPM0 timer module has capture block used to capture timings of input
signal. Add a support for TI MSPM0 PWM capture.

Signed-off-by: Saravanan Sekar <saravanan@linumiz.com>
2025-07-21 07:25:10 -04:00
Ioannis Damigos
9709452cb6 tests: arm_sw_vector_relay: Add test case for RAM vector table relocation
Add test case to cover RAM vector table relocation when
CONFIG_SRAM_VECTOR_TABLE is selected

Signed-off-by: Ioannis Damigos <ioannis.damigos.uj@renesas.com>
2025-07-21 07:24:09 -04:00
Ioannis Damigos
c1bced810d tests: arm_sw_vector_relay: Take into account CONFIG_SRAM_VECTOR_TABLE
Take into account vector table RAM relocation.

Signed-off-by: Ioannis Damigos <ioannis.damigos.uj@renesas.com>
2025-07-21 07:24:09 -04:00
Anas Nashif
ac4aabc10d twister: support filtering tests using regex
Use --test-pattern to filter scenarios using regular expressions, for
example:

./scripts/twister --test-pattern '^kernel.semaphore.*' -v

will run all those test using this identifier pattern, and nothing else.
Multiple patterns are possible.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-07-21 07:23:58 -04:00
Tomi Fontanilles
5e4688fc15 secure_storage: increase stack sizes of tests
Certain implementations require more stack to operate.
Increase the stack size to avoid overflows.

Signed-off-by: Tomi Fontanilles <tomi.fontanilles@nordicsemi.no>
2025-07-21 07:23:49 -04:00
Jamie McCrae
5b21c2dde3 tests: settings: Add retention test
A clone of the zms test, using the retention backend, with support
for nrf52840dk and qemu_cortex_m3

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-07-21 07:23:29 -04:00
Jamie McCrae
7627367024 settings: Add retention backend
Adds a retention backend for settings

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-07-21 07:23:29 -04:00
Cheng Chang
c9651c6710 Bluetooth: host: a2dp: Fix stream recv callback not be checked
Now when role is sink and source sends data, stream recv callback is
not registered, apps works fail. so stream recv callback should be
checked.

Signed-off-by: Cheng Chang <cheng.chang@nxp.com>
2025-07-21 07:23:15 -04:00
Jordan Yates
365774246a spi: nrfx_spim: initial pin state to SLEEP, not DEFAULT
Configure the initial pin state of the SPIM peripheral to SLEEP, not
DEFAULT. This fixes the pins being configured in DEFAULT until the first
time the interface is used if `zephyr,pm-device-runtime-auto` is
enabled.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-07-21 07:23:06 -04:00
Jun Lin
f1f7ca459b drivers: input: npcx: init semaphore before interrupt enable
A kernel panic was observed on a platform when k_sem_give() was called
in npcx_kbd_ksi_isr(). From the panic information, it appears that
the semaphore was used before it was initialized. This commit prevents
the potential issue by enabling the interrupt only after
the input_kbd_matrix_common_init() function is called
(where the semaphore is initialized).

Signed-off-by: Jun Lin <CHLin56@nuvoton.com>
2025-07-21 07:22:53 -04:00
Jordan Yates
69acc016eb serial: nrfx_uarte: initial pin state to SLEEP
Configure the initial pin state of the UARTE peripheral to SLEEP, not
left uninitialised. This fixes the pin configuration not being set until
the interface is used if `zephyr,pm-device-runtime-auto` is enabled.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-07-21 07:22:38 -04:00
Pieter De Gendt
373c0724c9 scripts: ci: check_compliance: Capture failing tests
If a compliance test itself throws an exception, the entire script is
aborted.
Update this by capturing the exception and failing only the test itself.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-07-21 07:22:26 -04:00
Georgij Černyšiov
e71f79d644 scripts: west: runners: stm32cubeprogrammer: fix E0606 related to dl_file
Initialize 'dl_file' to 'None' before the logic that determines
which binary file to load.

Resolves the E0606 Pylint warning.

Signed-off-by: Georgij Černyšiov <geo.cgv@gmail.com>
2025-07-21 07:22:09 -04:00
Anas Nashif
9c480a3e80 stm32l562e_dk: map arduino_i2c to i2c1
Mapping for i2c was missing, added that and mapped it to i2c1.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-07-21 07:21:55 -04:00
Tomislav Milkovic
5410f74664 doc: connectivity: networking: api: tftp: Fix Kconfig option
Instead of CONFIG_MQTT_SN_LIB, correct Kconfig option to
enable TFTP client library is CONFIG_TFTP_LIB

Signed-off-by: Tomislav Milkovic <tomislav.milkovic95@gmail.com>
2025-07-21 07:21:20 -04:00
Tim Pambor
3d077c68ca scripts: requirements: Remove mock
Remove mock from requirements-actions.in as it is not needed anymore.

Signed-off-by: Tim Pambor <tim.pambor@codewrights.de>
2025-07-21 06:57:41 -04:00
Tim Pambor
12ba98b2dd scripts: requirements: Add back tomli
Add back tomli to the requirements-actions.txt as it is still used by
some dependencies.

Signed-off-by: Tim Pambor <tim.pambor@codewrights.de>
2025-07-21 06:57:41 -04:00
Robert Lubos
388a283d88 net: tcp: Fix declaration after label warning with clang
clang reports a warning about a label followed by a variable
declaration:

  label followed by a declaration is a C23 extension

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-07-21 06:57:14 -04:00
Robert Lubos
90bba475f5 net: tcp: Fix unaligned access warning with clang
Fix one leftover unaligned access warning generated by clang:

  warning: taking address of packed member 'th_seq' of class or
  structure 'tcphdr' may result in an unaligned pointer value

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-07-21 06:57:14 -04:00
Anas Nashif
87917a1087 tests: bt: host: mock k_heap_aligned_alloc
unit tests needs mocking for k_heap_aligned_alloc.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-07-20 23:25:14 -04:00
Luis Ubieda
ef41627f81 i3c: stm32: Prevent mutex deadlock on DAA failure
Make sure this function always unlocks bus_mutex.

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-07-20 23:24:58 -04:00
Dmitrii Sharshakov
4044e0e75c drivers: hwinfo: rpi_pico: use bootrom method on RP2350
RP2350 provides a function to get OTP-backed chip ID. Prefer using this
on supported platforms for these reasons:
- a secure internal identifier, same as read by picotool
- works on flashless boards
- does not conflict with code running in XIP mode (e.g. when the other
 core tries to access device ID)
- when used with USB HWID serial number will match one BootROM has

Signed-off-by: Dmitrii Sharshakov <d3dx12.xx@gmail.com>
Co-authored-by: Alexander Wachter <alexander@wachter.cloud>
2025-07-20 18:49:09 -04:00
Jorge Ramirez-Ortiz
f9eeefa6e0 samples: net: latmon: latency monitor tool
Supports the EVL/Xenomai4 benchmarking tool as described in the
documentation. The benchmarking tool is accessed via the latmon service.

This code uses the J2 socket on FRDMk64-F:
             PIN_20: tx pulse to SUT
             PIN_18: rx ack from SUT

The client code running on the SUT shall monitor the falling edge of
PIN_20.

Example usage from the latmus client running Xenomai4:
 $ latmus -I gpiochip2,23,falling-edge  \
          -O gpiochip2,21 -g"histogram" \
          -z broadcast

Signed-off-by: Jorge Ramirez-Ortiz <jorge.ramirez@oss.qualcomm.com>
2025-07-20 12:27:30 -04:00
Jorge Ramirez-Ortiz
8c0c4bdace net: latmon: Add latency monitor service
Latmon service to interface with Xenomai's Latmus.

Link: https://evlproject.org/core/benchmarks/#latmus-gpio-response-time

Signed-off-by: Jorge Ramirez-Ortiz <jorge.ramirez@oss.qualcomm.com>
2025-07-20 12:27:30 -04:00
Peter Mitsis
0fef4cae82 doc: Add notes on lazy HiFi sharing
Updates the Xtensa hardware documentation to provide details about
the new lazy HiFi sharing model.

Signed-off-by: Peter Mitsis <peter.mitsis@intel.com>
2025-07-20 12:25:17 -04:00
Peter Mitsis
24d67b8ab6 tests: Update HiFi ctx switching
Adds test case for lazy HiFi context switching.

Signed-off-by: Peter Mitsis <peter.mitsis@intel.com>
2025-07-20 12:25:17 -04:00
Peter Mitsis
e50851d476 arch: xtensa: Add support for lazy HiFi ctx switching
When lazy HiFi context switching is enabled, the system starts with
the HiFi coprocessor disabled. Should the thread use that coprocessor,
it will generate an exception which in turn will enable the coprocessor
and save/restore the HiFi registers as appropriate. When switching
to a new thread, the HiFi coprocessor is again disabled.

For simplicity, there are no restrictions as to which thread is allowed
to use the coprocessor.

Signed-off-by: Peter Mitsis <peter.mitsis@intel.com>
2025-07-20 12:25:17 -04:00
Peter Mitsis
d397a91c62 kernel: Add arch_coprocessors_disable()
The intent of arch_coprocessors_disable() is to replace
arch_float_disable() in halt_thread() for the FPU will not
always be the only coprocessor that will need to be disabled.

Signed-off-by: Peter Mitsis <peter.mitsis@intel.com>
2025-07-20 12:25:17 -04:00
Peter Mitsis
decedcabf6 arch: xtensa: Add hifi_owner for lazy switching
Adds a customized _cpu_arch structure for Xtensa so that it contains
a pointer to the thread that 'owns' the hifi register set for use
with lazy save/restore.

Signed-off-by: Peter Mitsis <peter.mitsis@intel.com>
2025-07-20 12:25:17 -04:00
Peter Mitsis
6505cf2e54 arch: xtensa: Carve space for saved HiFi regs
As the BSA can not be used when lazy HiFi context switching is
used, a more permanent and predictable location in which to store
the registers is required. To this end ...
  1. reserve some space in the arch-specific portion of the k_thread
     structure for those registers.
  2. clear that region when the thread is created.

Signed-off-by: Peter Mitsis <peter.mitsis@intel.com>
2025-07-20 12:25:17 -04:00
Peter Mitsis
cd351208d5 arch: xtensa: Refine HiFi sharing Kconfigs
Splits HiFi sharing into two different models.
 1. XTENSA_EAGER_HIFI_SHARING - unconditional save/restore
    of the HiFi registers when context switching
 2. XTENSA_LAZY_HIFI_SHARING - on demand save/restore of
    of the HiFi registers. If a thread does not use the
    HiFi registers, they are neither saved nor restored.

To maintain backwards compatibility, the eager model is the
default model when XTENSA_HIFI_SHARING is enabled.

Signed-off-by: Peter Mitsis <peter.mitsis@intel.com>
2025-07-20 12:25:17 -04:00
Nirav Agrawal
b59d8d56bf bluetooth: bap_unicast_client: fix PTS BAP/UCL/SCC/BV-103-C failure
- In bap_unicast_client, it was assumed that ASE is binded with CIS
 handler during sending "received_stop_ready" to unicast_server.
- In case where unicast_client has not started the stream with
 "receiver_start_ready" att command to server, but wants to disable
 ASE which was Enabled previously (but not stream!) causes failure
 since there is no cis_create has happened and linked to ASE.
- In BAP_TS, "BAP/UCL/SCC/BV-103-C" has a same test conditions where
 client first enables the ASE, disable the ASE, and expecting
 "receiver_stop_ready" att command from client to server followed by
 server notification to enter its ASE in QoS_configured state.
- Removed this condition checks to send expected att command to
 server from Enabling ASE state to Disable ASE.

Signed-off-by: Nirav Agrawal <nirav.agrawal@nxp.com>
2025-07-20 12:24:43 -04:00
Peter van der Perk
2784cac77c soc: nxp: imx95: Fix systick flooding by enabling cache earlier
Systick is already enabled before late hook got called. In certain
circumstances systick could flooding the core and thus only handling
systicks. Enabling cache earlier using soc_early_init_hook ensures
that systick get handled quicker.

Signed-off-by: Peter van der Perk <peter.vanderperk@nxp.com>
2025-07-20 12:24:20 -04:00
Anas Nashif
f66460bed6 Revert "zephyr: Add zephyr module file"
This reverts commit 77229cb123.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-07-19 20:58:31 -04:00
Anas Nashif
2f35e68dd8 Revert "scripts: ci: check_compliance: Add support for module Kconfigs"
This reverts commit 6013fc7201.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-07-19 20:58:31 -04:00
Anas Nashif
9219c81b66 twister: make no-detailed-test-id default
Make this option default and reduce amount of details displayed by
twister.
This options has been enabled in CI for a while now with the intention
of making it default.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-07-19 15:50:47 -04:00
Lidor T
b68058787e counter: cmsdk_apb_dualtimer: Use clock freq from DT clocks
Previously, the CMSDK APB dual timer driver hardcoded the counter
clock frequency to 24 MHz, which limits reuse across SoCs and
boards with different timer clock sources.

This patch replaces the hardcoded frequency with a value derived
from the device tree's `clocks` phandle, using the
`clock-frequency` property of the referenced clock controller node.

If the property is missing, it falls back to a default 24 MHz.

Signed-off-by: Lidor T <lidor@exibit-iot.com>
2025-07-19 15:50:31 -04:00
Jamie McCrae
5ef8a576bf settings: Only use mutexes when multithreading is enabled
Allows usage of settings when multithreading is disabled

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-07-19 15:50:23 -04:00
Hake Huang
4c93fcd35b tests: arm: sw_vector_table: enhance test configs for frdm_mcxa166
irq 0 in frdm_mcxa166/276 are reserved can not used for testing.
add a config to shift test irq, also add support for rt700
also fix irq1 issue on mimxrt1180 as it is a debug trace interrupt

fixes: #92877, #92521

Signed-off-by: Hake Huang <hake.huang@nxp.com>
2025-07-19 15:49:58 -04:00
Tomáš Juřena
7f7690aa83 include: zephyr: dt-bindings: Fix MCOx_yyy masks
Macros MCO1_SEL, MCO1_PRE, MCO2_SEL, MCO2_PRE uses 4 bits wide masks as
defined in the RM0490 Rev 5 section 6.4.3, page 136

Signed-off-by: Tomáš Juřena <jurenatomas@gmail.com>
2025-07-19 15:49:39 -04:00
Tomáš Juřena
b7f906aaf3 include: zephyr: dt-bindings: Fix USB_SEL mask
Selecting the clock source for USB is only a bit value in the CCIPR2
register.
See RM0490 Rev 5 chapter 6.4.21 page 159.

Signed-off-by: Tomáš Juřena <jurenatomas@gmail.com>
2025-07-19 15:49:39 -04:00
Anas Nashif
0a4e27c45f xtensa: use EXCEPTION_DUMP macro for fatal messages
instead of depending on logging for exceptions and fatal messages, use
macro and dump exceptions if printk is enable with no logging.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-07-19 15:49:28 -04:00
Anas Nashif
2b93450b59 sparc: use EXCEPTION_DUMP macro for fatal messages
instead of depending on logging for exceptions and fatal messages, use
macro and dump exceptions if printk is enable with no logging.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-07-19 15:49:28 -04:00
Anas Nashif
9a7b28bc23 rx: use EXCEPTION_DUMP macro for fatal messages
instead of depending on logging for exceptions and fatal messages, use
macro and dump exceptions if printk is enable with no logging.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-07-19 15:49:28 -04:00
Anas Nashif
effa4bb217 riscv: use EXCEPTION_DUMP macro for fatal messages
instead of depending on logging for exceptions and fatal messages, use
macro and dump exceptions if printk is enable with no logging.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-07-19 15:49:28 -04:00
Anas Nashif
450f0bba7a mips: use EXCEPTION_DUMP macro for fatal messages
instead of depending on logging for exceptions and fatal messages, use
macro and dump exceptions if printk is enable with no logging.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-07-19 15:49:28 -04:00
Anas Nashif
fbb701371d x86: use EXCEPTION_DUMP macro for fatal messages
instead of depending on logging for exceptions and fatal messages, use
macro and dump exceptions if printk is enable with no logging.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-07-19 15:49:28 -04:00
Anas Nashif
2463996105 arm64: use EXCEPTION_DUMP macro for fatal messages
instead of depending on logging for exceptions and fatal messages, use
macro and dump exceptions if printk is enable with no logging.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-07-19 15:49:28 -04:00
Anas Nashif
9867c0979c arm: use EXCEPTION_DUMP macro for fatal messages
instead of depending on logging for exceptions and fatal messages, use
macro and dump exceptions if printk is enable with no logging.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-07-19 15:49:28 -04:00
Anas Nashif
89261db819 arch: arc: use common exception printing macros
ARC was using this method already in a custom way and was different from
all other architectures, lets make this generic.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-07-19 15:49:28 -04:00
Anas Nashif
58a3e7bded arch: add macros for dumping exceptions
Add macros for dumping exceptions depending on availablity of logging or
printk.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-07-19 15:49:28 -04:00
Anas Nashif
81fe171ce7 arch: unify how we include exception.h
Just include <zephyr/arch/exception.h> in architecture code. The file
redirects to the correct implementation.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-07-19 15:49:28 -04:00
Hou Zhiqiang
892520a16f boards: nxp: imx93_evk: add SMP variant support
On i.MX93, there are 2 Cortex-A55 cores, this patch is to
support SMP Zephyr running on all the 2 A55 cores.

Signed-off-by: Hou Zhiqiang <Zhiqiang.Hou@nxp.com>
2025-07-19 15:49:16 -04:00
Tomasz Chyrowicz
d3fa359cb6 soc: Enable radio core if BT is selected
Automatically enable booting radio core if BT HCI interface is enabled.

Signed-off-by: Tomasz Chyrowicz <tomasz.chyrowicz@nordicsemi.no>
2025-07-19 15:49:02 -04:00
Nirav Agrawal
70fbf4e0b7 drivers: bluetooth: hci: enable LC3 codec for BLE Audio Samples
- enable/configure LC3 codec as default setting for BLE Audio based
 samples to work on iMXRT based platform which supports FPU.

Signed-off-by: Nirav Agrawal <nirav.agrawal@nxp.com>
2025-07-19 15:48:42 -04:00
Jamie McCrae
6013fc7201 scripts: ci: check_compliance: Add support for module Kconfigs
Adds support for checking module samples and tests for additional
Kconfigs, as well as logging Kconfigs, so that this check can be
reused more easily with out of tree manifest repos

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-07-19 15:48:24 -04:00
Jamie McCrae
77229cb123 zephyr: Add zephyr module file
Adds a module file which specifies the path to samples and tests
inside of zephyr

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-07-19 15:48:24 -04:00
Shrek Wang
c68359ff32 net: tcp: Add support for partially valid data recv
Based on TCP Spec., if the incoming packet seqnum is old but with
new data (seqnum + len > conn->ack), that part of valid data should
be accepted. Now Zephyr doesn't support it.
This patch will add support to such scenario.

Signed-off-by: Shrek Wang <inet_eman@outlook.com>
2025-07-19 15:47:57 -04:00
Vinayak Kariappa Chettimada
e3e410aeed Bluetooth: Controller: Fix LLCP event_counter value used during prepare
Fix LLCP to use event_counter value used during prepare to
compare instant to be the value as when in prepare and not
incorrectly use a stale value (when two radio events
overlap).

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2025-07-19 15:47:45 -04:00
Mirai SHINJO
e6ea5644b3 kernel: mmu: fix memory leak in virt_region_alloc()
The error path for an invalid destination address in virt_region_alloc()
frees the allocation using the originally requested 'size' instead of
the 'num_bits' that were actually allocated from the bitmap.
This leaks the virtual address space.

Pass 'num_bits' instead of 'size' to sys_bitarray_free() to ensure the
allocated region is correctly freed.

Signed-off-by: Mirai SHINJO <oss@mshinjo.com>
2025-07-19 15:47:35 -04:00
Martin Hoff
e2aa3cea77 tests: Add overlay for siwx917_dk2605 board
This commit adds test overlays for the siwx917_dk2605a board.
It also adds an overlay for the i2s sample.

Signed-off-by: Martin Hoff <martin.hoff@silabs.com>
2025-07-19 15:47:23 -04:00
Martin Hoff
824e11e345 boards: silabs: introduction of siwx917_dk2605a board
This commit introduce siwx917_dk2605 development kit board

Signed-off-by: Martin Hoff <martin.hoff@silabs.com>
2025-07-19 15:47:23 -04:00
Pieter De Gendt
c5a2542ad9 drivers: wifi: esp_hosted: select NANOPB_ENABLE_MALLOC
Use Kconfig symbol instead of the manual definition.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-07-19 15:46:08 -04:00
Jamie McCrae
93bc583b70 tests: dfu: img_util: Update for new placement and new test
Updates to use slot1 as the default upload location, also adds a
new sub-test which checks uploading goes to slot0 when running
from slot1

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-07-19 15:45:53 -04:00
Jamie McCrae
87b1bb8916 dfu: img_util: Upload to slot0 if not running from slot0
Fixes an issue for MCUboot DFU whereby images would always be
uploaded to slot1 instead of slot0 meaning that updates would
never take effect, but retains uploading to slot1 if the
application is running from slot0

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-07-19 15:45:53 -04:00
Mark Geiger
edbce504b0 sensor: nrf-qdec: Allow sampleper register configurable through dts
Allow for users to define the sampling period via the sampleper
register on a per instance basis through device-tree properties.
The previous value was hard coded. The same value is now the default
value.

Signed-off-by: Mark Geiger <MarkGeiger@posteo.de>
2025-07-19 15:45:27 -04:00
Anas Nashif
bc13b2e5bb doc: nanopb: remove language about being optional
Remove section about nanopb being option module.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-07-19 15:45:06 -04:00
Anas Nashif
7855fb0c33 manifest: nanopb: move nanopb to main manifest
nanopb is used in tree now, so it should be part of the main manifest.

see drivers/wifi/esp_hosted/

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-07-19 15:45:06 -04:00
Armando Visconti
0d38a88666 drivers/sensor/: lis2dux12: fix ODR setting
In lis2dux12_freq_to_odr_val, the loop through the array of possible ODR
frequencies can break sooner than expected if power-mode is
set to High Performance mode and the requested ODR is less than or
equal to 25Hz.

Moreover, move the "odr |= 0x10" statement used for HP mode in the
chip_api set_odr_raw() API, so that we enter the HP mode even when the
ODR is set from DT only.

Signed-off-by: Armando Visconti <armando.visconti@st.com>
2025-07-19 15:44:26 -04:00
Ren Chen
0b9095e9a2 drivers: spi: it51xxx: fifo mode support
This commit adds shared/group fifo mode support.

Tested with: samples/drivers/spi_flash

Signed-off-by: Ren Chen <Ren.Chen@ite.com.tw>
2025-07-19 15:43:28 -04:00
Stephanos Ioannidis
51d41bcb6a boards: beaglev_fire: Force 'medany' code model
The 'beaglev_fire' board has its SRAM located at 0x1000000000, and this
causes Zephyr to default to the `large` code model.

This commit forces the board to use `medany` code model because the `large`
code model is not supported by GCC 12.2 included in the current Zephyr SDK
0.17.2.

Revert this when Zephyr SDK 0.18.0 with GCC 14.3 is mainlined.

Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
2025-07-19 15:43:09 -04:00
Stephanos Ioannidis
dc3c9f3560 arch: riscv: Introduce code model options
This commit introduces a new Kconfig choice for configuring the code model
used for compilation.

All three code models specified by the RISC-V ELF psABI specification are
supported: medlow, medany and large.

For RV32, the `medlow` code model is always selected.
For RV64, the `large` code model is selected if the SRAM or kernel VM base
address is greater than or equal to 4 GiB; otherwise, the `medany` code
model is selected.

Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
2025-07-19 15:43:09 -04:00
Stephanos Ioannidis
f5000936a8 arch: riscv: Add Zicntr extension support
This commit introduces the support for the standard Zicntr extension, which
provides hardware counters.

Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
2025-07-19 15:42:57 -04:00
Benjamin Cabé
53ea49539a scripts: requirements: drop tomli dependency
This dependency is not used anywhere so drop it.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-07-19 15:42:43 -04:00
Gaetan Perrot
76260d0eb8 tests: bluetooth: audio: vocs: fix null dereference
Avoid possible null pointer dereference by moving 'vocs->conn = conn'
after null check on 'vocs' in bt_vocs_discover().

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2025-07-19 15:42:32 -04:00
Gaetan Perrot
771d3f0dc2 tests: bluetooth: audio: aics: fix null dereference
Move assignment 'aics->conn = conn' after null check on 'aics' to avoid
undefined behavior.

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2025-07-19 15:42:32 -04:00
Gaetan Perrot
2e6ac4d8a7 tests: bluetooth: audio: bap_unicast_client: fix null dereference
Move 'printk' call after null checks on 'stream' and 'stream->ep' to avoid
potential null pointer dereference.

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2025-07-19 15:42:32 -04:00
Benjamin Cabé
edead766dc scripts: requirements: remove dependency to mock package
mock has been available in Python standard lib since Python 3.3, remove
the unnecessary dependency to `mock` pip package.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-07-19 15:42:19 -04:00
Benjamin Cabé
f39ec79806 scripts: tests: apply ruff linting to test_domains.py
Somehow this file had no exclude rules in .ruff-excludes.toml. Make it
compliant going forward.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-07-19 15:42:19 -04:00
Benjamin Cabé
0ed775bfc9 scripts: west_commands: canopen: replace progress by tqdm
progress has been unmaintained for years and tqdm is a more
modern and faster alternative, which is already used by other commands.
Replace progress by tqdm in the canopen_program.py script.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-07-19 15:41:32 -04:00
Yongxu Wang
2be211e6af soc: imx93 m33: add tcm init
m33 must ensure the TCM is ECC clean by initializing all dtcm memories
Otherwise, it can only run it by loading m33 under uboot.
Based on this fixed, we can run M33 by mkimage into flash.bin.

Signed-off-by: Yongxu Wang <yongxu.wang@nxp.com>
2025-07-19 15:41:20 -04:00
Yongxu Wang
0d175f3af5 dts: update imx93 m33 tcm address
imx93 m33 System TCM from 0x2001f000 into 0x20020000
will be used in rom, reserved

Signed-off-by: Yongxu Wang <yongxu.wang@nxp.com>
2025-07-19 15:41:20 -04:00
S Mohamed Fiaz
fd88386a9f driver: serial: uart_ns16550: Add pm support for uart_ns16550 driver
This commit enables the pm device runtime driver support
for the uart_ns16550 driver.

Signed-off-by: S Mohamed Fiaz <fiaz.mohamed@silabs.com>
2025-07-19 15:40:59 -04:00
Phi Tran
529a11057e drivers: gpio: renesas_rx: Refactor macros for conditional generation
This change introduces GPIO_RX_PORT_IRQ_DECL() and GPIO_RX_PORT_IRQ_ELEM()
macros to conditionally generate GPIO port IRQ declarations and elements
only when the 'port_irq_names' property exists in the device tree node.
This improves code clarity and avoids generating unused code for ports
that do not have IRQ support for Renesas RX

Signed-off-by: Phi Tran <phi.tran.jg@bp.renesas.com>
2025-07-19 15:40:18 -04:00
Scott Worley
ef4ec43e63 drivers: timer: microchip: xec: Microchip MEC one kernel timer driver
We want to simplify the maintenance burden and confusion of having
more than one driver for the same kernel timer peripheral used on
all Microchip MEC parts. The XEC version of the driver was converted
register definitions in the driver. Register access is performed using
Zephyr sys_read/write architecture specific inline routines. Driver DT
YAML was updated to use phandle for the 32-bit basic timer used for
ARCH_HAS_CUSTOM_BUSY_WAIT support, basic timer max value property,
and GIRQ interrtup aggregator hardware information.
SoC part Kconfigs, chip level/board level DTSI updated to use the
unified driver.

Signed-off-by: Scott Worley <scott.worley@microchip.com>
2025-07-19 15:39:40 -04:00
Simon Guinot
acd2595154 tests: drivers: build_all: led: add leds-group-multicolor
Add test for leds-group-multicolor driver.

Signed-off-by: Simon Guinot <simon.guinot@seagate.com>
2025-07-19 15:39:29 -04:00
Simon Guinot
ec0fb2c92c drivers: led: add leds-group-multicolor driver
This driver supports multi-color LEDs built with several monochromatic
LEDs. ->set_color is the only LED driver API method implemented.

Instead of calling led_set_brightness() for each monochromatic LED,
led_set_color() can be called on the leds-group-multicolor device to
set all colors at once.

See the leds-group-multicolor DT binding for details.

Signed-off-by: Simon Guinot <simon.guinot@seagate.com>
2025-07-19 15:39:29 -04:00
Simon Guinot
b97dcef8ce dts: bindings: led: introduce leds-group-multicolor binding
The leds-group-multicolor binding allows to combines several
monochromatic LEDs into one multi-color LED.

Signed-off-by: Simon Guinot <simon.guinot@seagate.com>
2025-07-19 15:39:29 -04:00
Simon Guinot
dab7699fe0 dts: bindings: led: introduce led-node.yaml
This patch moves the label and color-mapping LED property definitions
from led-controller.yaml into led-node.yaml.

This allows to use these properties from a LED node which is not a
child node of a LED controller. This is preparatory work for adding
the leds-group-multicolor binding.

In addition this patch also removes the redundant "label" property
definitions in gpio-leds.yaml and pwm-leds.yaml. It is now included
from led-node.yaml.

Signed-off-by: Simon Guinot <simon.guinot@seagate.com>
2025-07-19 15:39:29 -04:00
Simon Guinot
e1aaf8761e drivers: led: pwm: automatically select PWM
For all LED drivers, the underlying subsystem is automatically selected
in Kconfig if their compatible node is found in DT.

The only exception is the PWM LED driver which depends on PWM instead
of selecting it. The PWM Kconfig option must be explicitely selected in
order to have LED_PWM enabled.

This patch updates the Kconfig of the PWM LED driver to have the same
behavior as other LED drivers: PWM is now automatically selected if a
"pwm-leds" compatible node is found in DT.

Signed-off-by: Simon Guinot <simon.guinot@seagate.com>
2025-07-19 15:39:29 -04:00
Appana Durga Kedareswara rao
d21eb2261b boards: amd: Use PDI path from runner arguments instead of environment
Modified the XSDB configuration to take the PDI path directly from the
runner script's arguments rather than relying on an environment variable.
This change improves usability and makes the runner more self-contained.

Signed-off-by: Appana Durga Kedareswara rao <appana.durga.kedareswara.rao@amd.com>
2025-07-19 15:38:57 -04:00
Appana Durga Kedareswara rao
3304910e0d versal2_rpu: Update configuration to align with latest target definitions
In 2025.1 xsdb release for Versal Gen 2 platform target definitions got
changed, Updated config file to align with latest target definitions.

Signed-off-by: Appana Durga Kedareswara rao <appana.durga.kedareswara.rao@amd.com>
2025-07-19 15:38:57 -04:00
Appana Durga Kedareswara rao
5e0d266381 runners: xsdb: Add support for optional bl31, pdi, system.dtb arguments
This update enhances the runner script to optionally accept bl31, pdi,
and system.dtb as arguments. These inputs are not mandatory and will
only be used if explicitly provided. This allows for more flexible boot
configurations, especially useful when testing different firmware and
system setups without modifying the script.

Signed-off-by: Appana Durga Kedareswara rao <appana.durga.kedareswara.rao@amd.com>
2025-07-19 15:38:57 -04:00
Michal Frankiewicz
d2393de9d9 tests: drivers: spi: Add test cases for non standard frequencies.
Added test cases for nrf chips for non standard frequencies.

Signed-off-by: Michal Frankiewicz <michal.frankiewicz@nordicsemi.no>
2025-07-19 15:38:04 -04:00
Michal Frankiewicz
1b014bab64 drivers: spi: nrfx_spim: Add support for non standard frequencies
Disabled frequency set approximation algorithm for spim's with prescaler.

Signed-off-by: Michal Frankiewicz <michal.frankiewicz@nordicsemi.no>
2025-07-19 15:38:04 -04:00
Dmitrii Sharshakov
d6420d2653 dts: arm: rpi_pico: add interrupts for PIO
PIO interrupts are useful for some of the virtual
peripherals, so describe them in the DT.

This has no direct implications to existing drivers.

Signed-off-by: Dmitrii Sharshakov <d3dx12.xx@gmail.com>
2025-07-19 15:37:47 -04:00
Luis Ubieda
d35d199253 sensor: adxl345: Add ability to use Streaming and Trigger with INT1
Prioritized over INT2 if both are defined.

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-07-19 15:37:24 -04:00
Venkatesh Odela
873b05f39c drivers: ethernet: eth_xilinx_axienet : Add runtime MAC address generation
Add support to generate the random MAC if 'zephyr,random-mac-address'
is set,uses 'local-mac-address' from DT if available, or falls back
to a default Xilinx OUI-based MAC with zeroed bytes

Signed-off-by: Venkatesh Odela <venkatesh.odela@amd.com>
2025-07-19 15:37:14 -04:00
Jukka Rissanen
e4a1905245 net: Add alignment support for net_buf data length alloc
The alignment value tells the amount of alignment of buffer length
when allocating net_buf data for sending. By default there is no
special alignment. This is needed for example with Nordic Wi-Fi
chip that uses SPI driver that expects 4 byte alignment for the
length of the data that is being sent.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-07-19 15:37:01 -04:00
Jukka Rissanen
fd0b14861d tests: net_buf: Add alignment tests
Make sure that net_buf pools created by NET_BUF_POOL_VAR_ALIGN_DEFINE
are aligned according to user needs.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-07-19 15:37:01 -04:00
Jukka Rissanen
45a0a4949d lib: net_buf: Add a way to create pool with aligned data
Add a new macro NET_BUF_POOL_VAR_ALIGN_DEFINE() which can be
used to create a pool with aligned data where both the start
of the data and the length of the data is aligned.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-07-19 15:37:01 -04:00
Alvis Sun
5b1d16dd6f drivers: wdt: npcx: add wdt driver support for npck3
Enables the extended Watchdog Timer driver for npck3.

Signed-off-by: Alvis Sun <yfsun@nuvoton.com>
Signed-off-by: Mulin Chao <mlchao@nuvoton.com>
2025-07-19 15:36:47 -04:00
Ishraq Ibne Ashraf
7b49381227 boards: nxp: frdm_k32l2b3: Add initial support
Adding initial support for NXP FRDM K32L2B3 board.

Signed-off-by: Ishraq Ibne Ashraf <ishraq.i.ashraf@gmail.com>

dts: arm: nxp: Fix SRAM node name

Fix address part of the SRAM node name.
Change the SRAM start address definition to lower
case hexadecimal to be consistent.

Signed-off-by: Ishraq Ibne Ashraf <ishraq.i.ashraf@gmail.com>
2025-07-19 15:36:11 -04:00
Jordan Yates
79edfc0128 wifi: nrf_wifi: ignore interface if TX disabled
Automatically hide the nRF7x interface from the connection manager if
the TX path is disabled (scan only mode). This prevents function calls
like `conn_mgr_all_if_up(true)` from bringing up the interface which
can never result in a connection.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-07-19 15:35:31 -04:00
Jordan Yates
5c0521c585 conn_mgr: make internal state static
Make the interface interface state array static, ensuring that the array
is zeroed at boot. This enables interfaces which initialise earlier than
the CONN_MGR module to set flags in their init functions.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-07-19 15:35:31 -04:00
Chaitanya Tata
ab9c53138d modified: nrf_wifi: Refactor heap calls
Instead if littering ifdef's across the code, use a single API and
initialize different pools only once.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-07-19 15:35:07 -04:00
Chaitanya Tata
3e9dffbe25 modules: nrf_wifi: Use spinlocks
Zephyr provides spinlock APIs which can be locked even during the
interrupt context.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-07-19 15:35:07 -04:00
Declan Snyder
1f1a2e25b2 scripts: check_compliance: Fix traceback in junitparser
junitparser had a bug causing a traceback when running the checkpatch
check compliance module, fix is in 4.0.1 of junitparser from this PR:
https://github.com/weiwei/junitparser/pull/168

Update requirements to make sure we get this version.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-07-19 15:34:47 -04:00
Declan Snyder
3b5bfd9f4a scripts: check_compliance: Fix resource leak
The git diff subprocess was leaking, ie.,
it was still running with it's file streams open,
and python was printing warnings about this. Fix by calling
communicate() on the object which will do the cleanup.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-07-19 15:34:47 -04:00
Luc BEAUFILS
402adc4a37 boards: st: add support for stm32mp257f_dk board
Introduce initial board support for the STM32MP257F-DK Discovery Kit.
This includes:
- Board metadata (board.yml, stm32mp257f_dk.yaml)
- Base software configuration (Kconfig.stm32mp257f_dk)
- CMake build integration (board.cmake)
- Default configuration (stm32mp257f_dk_stm32mp257fxx_m33_defconfig)
- Minimal device tree (stm32mp257f_dk_stm32mp257fxx_m33.dts)
- Initial documentation and image for the stm32mp257f_dk board.
- OpenOCD configuration files for debugging support.

Signed-off-by: Luc BEAUFILS <luc.beaufils@savoirfairelinux.com>
2025-07-19 15:34:25 -04:00
Luca Burelli
49bf6aad88 dtlib: (cosmetic) use filename and line number on all messages
Take advantage of the new 'filename' and 'lineno' attributes of Node and
Property objects to provide more informative error and status messages
by printing the actual source file reference of the corresponding
object, always using the unquoted file:line format in error messages.

No functional change is introduced by this commit.

Signed-off-by: Luca Burelli <l.burelli@arduino.cc>
2025-07-19 15:34:13 -04:00
Stephanos Ioannidis
58a6a696a0 arch: riscv: Add Zc* compressed instruction extension support
This commit adds the support for the following new Zc* series compressed
instruction extensions:

  Zca  - Subset of the C extension without FP loads and stores
  Zcb  - "Simple" instructions
  Zcd  - Double-precision floating-point instructions
  Zcf  - Single-precision floating-point instructions
  Zcmp - "Complex" instructions for embedded CPUs
  Zcmt - Table jump instructions for embedded CPUs

With the introduction of the Zc* extensions, the C extension now implies
the following Zc* extensions:

  * Zca, always
  * Zcf if F is specified (RV32 only)
  * Zcd if D is specified

The Zc* extensions that are implied by the C extension are not specified in
the GCC `-march` flag because they are redundant and can interfere with the
resolution of the correct multi-lib for the selected architecture unless
the the alternate mappings for the redundant forms are manually specified.

All the implementation details in this commit are based on the Zc* v1.0.0
specification, which is the ratified version.

Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
2025-07-19 15:32:35 -04:00
Yishai Jaffe
ff82bb8547 boards: silabs: xg23_rb4210a: add pwm leds
Add definition for 2 PWM LEDs to the silabs xg23_rb4210a board.

Signed-off-by: Yishai Jaffe <yishai1999@gmail.com>
2025-07-19 15:32:20 -04:00
Daniel DeGrasse
7b4d2759bf arch: arc: support CONFIG_ROM_START_OFFSET
Add support for CONFIG_ROM_START_OFFSET on ARC processors. Note that the
arc ISA requires vector table offset to be at a 1024 KiB boundary, so
the default ROM_START_OFFSET when using MCUBoot must be increased.

Signed-off-by: Daniel DeGrasse <ddegrasse@tenstorrent.com>
2025-07-19 15:32:03 -04:00
Daniel DeGrasse
e22166f50b arch: common: add CONFIG_ARCH_SUPPORTS_ROM_OFFSET
Add CONFIG_ARCH_SUPPORTS_ROM_OFFSET, a convenience Kconfig to indicate
that CONFIG_ROM_START_OFFSET is supported on this architecture

Signed-off-by: Daniel DeGrasse <ddegrasse@tenstorrent.com>
2025-07-19 15:32:03 -04:00
Julien Panis
afc5b6cb0d drivers: adc: cc23x0: Add power management
Add PM support to cc23x0 ADC module.

Signed-off-by: Julien Panis <jpanis@baylibre.com>
2025-07-19 15:31:37 -04:00
Hao Luo
4b3565d958 drivers: pwm: Add support for Apollo510 pwm
This commit adds support for Apollo510 pwm driver

Signed-off-by: Hao Luo <hluo@ambiq.com>
2025-07-19 15:31:08 -04:00
Hao Luo
eea4aa9f52 drivers: pwm: changed ambiq ctimer variable names
changed variable names from timer to ctimer

Signed-off-by: Hao Luo <hluo@ambiq.com>
2025-07-19 15:31:08 -04:00
Richard Wheatley
902005e0ef drivers: add assert to check for max children in timer
check for max number of children in timer.

Signed-off-by: Richard Wheatley <richard.wheatley@ambiq.com>
2025-07-19 15:31:08 -04:00
Richard Wheatley
7cd378d9c9 dts: bindings: move clk-source to parent
Move clk-source from pwm to timer
change associated files to match

Signed-off-by: Richard Wheatley <richard.wheatley@ambiq.com>
2025-07-19 15:31:08 -04:00
Richard Wheatley
e81a241678 driver: pwm: create ambiq pwm driver
Restructured counter and timer.
CTimer/Timer is now parent to pwm and counter.
Created PWM driver and tied to pwm and pwm-led

Signed-off-by: Richard Wheatley <richard.wheatley@ambiq.com>
2025-07-19 15:31:08 -04:00
Camille BAUD
dbd85ae677 drivers: Add header file with common functions for BFLB
This moves the couple functions that are and will be all over
the various clock operations for all platforms.

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-07-19 15:30:45 -04:00
Fin Maaß
d7846b3a3c samples: shell: remove CONFIG_POSIX_TIMERS dep
remove CONFIG_POSIX_TIMERS dependency as
date_service shell no longer needs that.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-07-19 15:30:29 -04:00
Fin Maaß
7e05345562 shell: move date_service to sys_clock api
move date_service from posix api
to sys_clock api.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-07-19 15:30:29 -04:00
Scott Worley
5e6f28d09d soc: microchip: mec: Add Kconfig for Segger RTT debug support
All parts in the Microchip MEC family support ARM JTAG/SWD/SWO.
We add Kconfig logic to allow building projects with Segger's
RTT debug for Cortex-M.

Signed-off-by: Scott Worley <scott.worley@microchip.com>
2025-07-19 15:30:18 -04:00
Neil Chen
7dcb3b8aeb boards: nxp: frdm_mcxn947: Add video support in frdm_mcxn947 board yaml
Add video support in frdm_mcxn947 board yaml

Signed-off-by: Neil Chen <cheng.chen_1@nxp.com>
2025-07-19 15:29:25 -04:00
Neil Chen
084baf00ad samples: video: Add support for smartdma video on FRDM_MCXN236
Add support for using the SMARTDMA engine on the FRDM-MCXN236 board with
the video capture sample.
Replace console pins, because default console pins(P1_8, P1_9) are
duplicated with camera header pins.

Signed-off-by: Neil Chen <cheng.chen_1@nxp.com>
2025-07-19 15:29:25 -04:00
Neil Chen
85d94bd79d boards: nxp: frdm_mcxn236: Support i3c for NXP frdm_mcxn236 board
Support smartdma and flexcomm0 for NXP frdm_mcxn236 board.
The default console pins are duplicated with camera header pins, so
add flexcomm0_lpuart0 for smartdma_camera serial output.

Signed-off-by: Neil Chen <cheng.chen_1@nxp.com>
2025-07-19 15:29:25 -04:00
Neil Chen
c640b5e937 dts: arm/nxp: Add smartdma nodes to NXP MCXN23x dtsi file
Add smartdma nodes to NXP MCXN23x dtsi file

Signed-off-by: Neil Chen <cheng.chen_1@nxp.com>
2025-07-19 15:29:25 -04:00
Jimmy Zheng
2292673faa boards: andestech: clean up default Kconfig for adp_xc7k/ae350
Remove redundant or commented-out Kconfig, and only enable the baseline
features compatible with most AE350 platforms.
Platform-specific extensions and features should be enabled by menuconfig.

Signed-off-by: Jimmy Zheng <jimmyzhe@andestech.com>
2025-07-19 15:28:58 -04:00
Jimmy Zheng
7725284f5f samples: drivers: watchdog: add overlay file for adp_xc7k/ae350/clic
adp_xc7k/ae350/clic uses a different interrupt controller than
adp_xc7k/ae350, add overlay files as in adp_xc7k/ae350.

Signed-off-by: Jimmy Zheng <jimmyzhe@andestech.com>
2025-07-19 15:28:58 -04:00
Jimmy Zheng
20f48b947c tests: drivers: add overlay files for adp_xc7k/ae350/clic
adp_xc7k/ae350/clic uses a different interrupt controller than
adp_xc7k/ae350, add overlay files as in adp_xc7k/ae350.

Signed-off-by: Jimmy Zheng <jimmyzhe@andestech.com>
2025-07-19 15:28:58 -04:00
Jimmy Zheng
74ded5884f tests: kernel: gen_isr_table: add available IRQ number for AE350 CLIC
RISC-V CLIC can trigger edge-triggered interrupts by software, but the
available IRQ sources depend on the hardware implementation.
Clarifies the IRQ source for GD32VF103 and adds support for AE350 CLIC.

Signed-off-by: Jimmy Zheng <jimmyzhe@andestech.com>
2025-07-19 15:28:58 -04:00
Jimmy Zheng
24a1baeda3 tests: kernel: interrupt: adjust test for clic
For RISC-V CLIC, only edge-triggered interrupts can be triggered by
software. Add IRQ flag to set the trigger type for RISC-V CLIC.

Signed-off-by: Jimmy Zheng <jimmyzhe@andestech.com>
2025-07-19 15:28:58 -04:00
Jimmy Zheng
8d34df930b boards: andestech: add adp_xc7k/ae350/clic target
Add adp_xc7k/ae350/clic target and saperate the ae350 common DTS into
adp_xc7k_ae350_common.dtsi.

Signed-off-by: Jimmy Zheng <jimmyzhe@andestech.com>
2025-07-19 15:28:58 -04:00
Jimmy Zheng
a36f767519 soc: andestech: ae350: add ae350/clic configuration
Add ae350/clic soc, which shares the same peripherials as AE350 PLIC
platform but uses CLIC instead of PLIC, with different IRQ number.

Signed-off-by: Jimmy Zheng <jimmyzhe@andestech.com>
2025-07-19 15:28:58 -04:00
Jimmy Zheng
13e2125402 dts: riscv: andes: add andes_v5_ae350_clic.dtsi
Add andes_v5_ae350_clic for the AE350 FPGA platform with CLIC support.

Signed-off-by: Jimmy Zheng <jimmyzhe@andestech.com>
2025-07-19 15:28:58 -04:00
Afonso Oliveira
467d2e8297 scripts: twister: clarify output directory renaming message
Change "Renaming output directory to" message to "Renaming previous
output directory to" to make it clearer that twister is renaming the
existing directory, not the current output directory.

This helps avoid confusion for new twister users who might think the
current output is going to the renamed directory.

Signed-off-by: Afonso Oliveira <afonsoo@synopsys.com>
2025-07-19 13:51:57 -04:00
Fabian Blatz
47c4e3d813 modules: lvgl: Use Zephyr builtins instead of LVGL stdlib/string impls
Previously LVGL added its own version of several stdlib functions. Replace
them with the Zephyr provided functions instead.

Signed-off-by: Fabian Blatz <fabianblatz@gmail.com>
2025-07-19 13:51:44 -04:00
Ruben Völl
9007a4fd8e sensor: lis2dw12: handle SENSOR_CHAN_ALL in sample_fetch callback
Handle `SENSOR_CHAN_ALL` case of the sample_fetch callback of the
lis2dw12 driver. Without this, `sensor_sample_fetch()` does not work
correctly for this device, e.g. rendering the rtio and the sensor shell
unusable.

Signed-off-by: Ruben Völl <ruben.voell@sevenlab.de>
2025-07-19 13:51:20 -04:00
Loic Domaigne
f314560b4a Bluetooth: Controller: Fix a potential NULL pointer dereference
Fix a potential NULL pointer dereference for skip_fields in the function
ull_adv_sync_copy_pdu_header. This issue been reported by Coverity.

Coverity CID: 392529

Signed-off-by: Loic Domaigne <tech@domaigne.com>
2025-07-19 13:50:57 -04:00
Andreas Karner
f12ed28078 boards: st: nucleo_u575zi_q: add flash partition
Add flash partition description in nucleo_u575zi_q board DTS
file to ease integration of MCUBoot as bootloader stage.

Signed-off-by: Andreas Karner <andreas.karner@sloc.one>
2025-07-19 13:50:16 -04:00
Manojkumar Konisetty
26fd4458de samples: bluetooth: mtu_update: peripheral: Restart Advertisement
Add a workqueue to handle readvertisement after
disconnection from central. This avoids performing
advertising operations directly from the disconnected callback,
ensuring better thread safety.

Signed-off-by: Manojkumar Konisetty <manoj@aerlync.com>
2025-07-19 13:49:46 -04:00
Manojkumar Konisetty
caf2caea94 samples: bluetooth: mtu_update: peripheral: Avoid busy-looping
Avoid busy-looping before BLE connection and introduce
a semaphore. Check for NULL conn before retaking
semaphore after disconnection.

Signed-off-by: Manojkumar Konisetty <manoj@aerlync.com>
2025-07-19 13:49:46 -04:00
Hao Luo
e6f986f907 drivers: watchdog: bugfix for ambiq wdt clk select
This commit fixed the watchdog clock select error in
ambiq driver.

Signed-off-by: Hao Luo <hluo@ambiq.com>
2025-07-19 13:49:29 -04:00
Hao Luo
0407185d43 drivers: adc: ambiq: fixed the error that caused adc_api test to fail
This commit fixed the failure of test_adc_asynchronous_call

Signed-off-by: Hao Luo <hluo@ambiq.com>
2025-07-19 13:49:14 -04:00
Fin Maaß
97fffc3298 dts: riscv: litex: update dts
Update dts, so keep up to date
with https://github.com/litex-hub/zephyr-on-litex-vexriscv

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-07-19 13:48:54 -04:00
Fin Maaß
d3ca2f07a9 drivers: spi: litex: remove core_ prefix
remove `core_` prefix from code and
register names, got dropped in litex in
https://github.com/enjoy-digital/litex/pull/2253

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-07-19 13:48:54 -04:00
Fabrice DJIATSA
ac733b1ae9 boards: st: nucleo_u385rg_q: update clock domain source for rng
Several tests failed due to a low clock frequency for
the RNG peripheral.
Increase the RNG clock frequency by providing MSIK with
96 MHz as the domain source.

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2025-07-19 13:48:29 -04:00
Andrey Dodonov
8e70b5ad48 net: lib: http: allow configuring response chunk size
Introduce Kconfig HTTP_SERVER_STATIC_FS_RESPONSE_SIZE,
size of individual chunks when serving files.

Signed-off-by: Andrey Dodonov <Andrey.Dodonov@endress.com>
2025-07-19 13:48:00 -04:00
Robert Lubos
8db9041826 tests: net: mqtt_sn_client: Remove debug options
There's no need for debug options to be enabled by default in tests, it
just bloats the image.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-07-19 13:47:45 -04:00
Yishai Jaffe
6cfe907477 boards: silabs: move pinctrl.dtsi files to board dirs
Moved pinctrl dtsi files for slwrb4250b and slwrb4255a from the soc
directory to the board directory as is done in other boards.

Signed-off-by: Yishai Jaffe <yishai1999@gmail.com>
2025-07-19 13:47:36 -04:00
Yishai Jaffe
d3a646cd07 dts: silabs: align formatting for RAM and flash
Align the format in which the RAM and flash are set in the soc.

Signed-off-by: Yishai Jaffe <yishai1999@gmail.com>
2025-07-19 13:47:36 -04:00
Yishai Jaffe
27c365dc05 dts: arm: silabs: Move efm32gg12 to gg12 directory
Introduce subdirectory for gg12 socs.

Signed-off-by: Yishai Jaffe <yishai1999@gmail.com>
2025-07-19 13:47:36 -04:00
Yishai Jaffe
aa461500f0 dts: arm: silabs: Move efm32gg11 to gg11 directory
Introduce subdirectory for gg11 socs.

Signed-off-by: Yishai Jaffe <yishai1999@gmail.com>
2025-07-19 13:47:36 -04:00
Yishai Jaffe
540966d41e dts: arm: silabs: Move efr32bg13 to xg13 directory
Introduce subdirectory for xg13 socs.

Signed-off-by: Yishai Jaffe <yishai1999@gmail.com>
2025-07-19 13:47:36 -04:00
Yishai Jaffe
d9a7574948 dts: arm: silabs: Move xg12 socs to xg12 directory
Introduce subdirectory for xg12 socs.

Signed-off-by: Yishai Jaffe <yishai1999@gmail.com>
2025-07-19 13:47:36 -04:00
Yishai Jaffe
40c9203f97 dts: arm: silabs: Move xg1 socs to xg1 directory
Introduce subdirectory for xg1 socs.
As a porduct of this - `efm32_pg_1b.dtsi` and `efr32fg1p.dtsi` were
merged into `xg1.dtsi`.

Signed-off-by: Yishai Jaffe <yishai1999@gmail.com>
2025-07-19 13:47:36 -04:00
Yishai Jaffe
ed94a3b2cc dts: silabs: move gpio_gecko.h defines to dt-bindings
Removed gpio_gecko.h and merged its content with gecko-pinctrl-s1.h
since that's its main usage.

Signed-off-by: Yishai Jaffe <yishai1999@gmail.com>
2025-07-19 13:47:36 -04:00
Kapil Bhatt
dd7413d269 drivers: nrf_wifi: Fix rpu recovery debug info
Rpu recovey debug stats are stored in hal_dev_ctx which is not
persistent in case of interface is brought down/up. Need to add
in nrf_wifi_ctx_zep and update before interface goes down.

Signed-off-by: Kapil Bhatt <kapil.bhatt@nordicsemi.no>
2025-07-19 13:47:04 -04:00
Gang Li
c8fa5e5899 modules: hostap: set the cipher suites for WPA2 & WPA3 SAE mode
When the external AP is in WPA3 SAE mode, the group cipher uses
TKIP and the pairwise cipher uses TKIP and CCMP. Should not
connect to the AP.
For WPA2 & WPA3 SAE & WPA2/WPA3 mixed mode, set group cipher to
CCMP, pairwise cipher to CCMP.

Signed-off-by: Gang Li <gang.li_1@nxp.com>
2025-07-19 13:46:51 -04:00
Samuel Tardieu
226011b8e1 Drivers: max17055: retrieve the current value
The MAX17055 peripheral allows measuring the current
value (which corresponds to the instantaneous value). Respond to
the `SENSOR_CHAN_CURRENT` command, and retrieve the data
from the `0x0a` device register.

Signed-off-by: Samuel Tardieu <sam@rfc1149.net>
2025-07-19 13:46:19 -04:00
Nicolas Pitre
8140680e6b k_heap_aligned_alloc: validate the alignment argument
There is a special internal understanding between `z_alloc_helper()`
and `sys_heap_aligned_alloc()` for the meaning of non-power-of-two
alignment values. There was a time when `z_alloc_helper()` was expressed
in terms of `k_heap_aligned_alloc()` so the later had to accept special
alignment values from the former. This is no longer the case and
`k_heap_aligned_alloc()` should enforce proper alignment values now.

Signed-off-by: Nicolas Pitre <npitre@baylibre.com>
2025-07-19 13:45:56 -04:00
Luis Ubieda
4eaaf3c0ea bmm350: Add streaming mode
Supported for DRDY interrupts.

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-07-19 13:45:38 -04:00
Luis Ubieda
0e9a018a3e bmm350: Add read-decode support
One-shot reads are now supported through the v2 model API.

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-07-19 13:45:38 -04:00
Luis Ubieda
e92552275a bmm350: isolate data fetching from conversion
In order to allow decoupling these two operations.
No functional changes, sensor returns same readings through shell.

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-07-19 13:45:38 -04:00
Luis Ubieda
6c13181efc bmm350: Refactor bus transfers to use RTIO
To easily further extend it to other transports and be able to
implement streaming mode.

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-07-19 13:45:38 -04:00
Luis Ubieda
98ab8f0873 bmm350: scrub axis_en functionality
As this isn't effectively providing any value to the driver, instead
wastes cycles on every sample-fetch. Scrubbing this simplifies the
code.

Also, remove fix_sign() and replace it for the in-tree helper
sign_extend().

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-07-19 13:45:38 -04:00
Anas Nashif
63dd2db594 twister: match platform regex pattern
Use --platform-pattern <regex> to match platforms, something like

twister -T samples/hello_world/ --platform-pattern ".*/stm32f4.*"

will build/run all those platform targets with stm32f4 in them.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-07-19 13:45:30 -04:00
Van Petrosyan
8eb2a9c507 drivers: modem_cellular: added APP RDY signal handling
Some modems (e.g. Quectel BG95/EG25-G, several SIMCom parts) print
“APP RDY” when the application core is ready.  Parse this line and
proceed from AWAIT_POWER_ON immediately, while keeping the existing
startup timeout as a fall-back.

* add MODEM_CELLULAR_EVENT_MODEM_READY + chat match
* open UART and attach chat in AWAIT_POWER_ON
* jump to SET_BAUDRATE / RUN_INIT_SCRIPT on event

Signed-off-by: Van Petrosyan <van.petrosyan@sensirion.com>
2025-07-19 13:45:15 -04:00
Michele Sardo
7bc1756396 modules: trusted-firmware-m: Update in interface implementation
Following changes to arch/arm/core/cortex_m/fpu.c,
the dependency on CONFIG_FPU_SHARING is moved into this file.

Signed-off-by: Michele Sardo <michele.sardo@st.com>
2025-07-19 13:45:07 -04:00
Michele Sardo
5981dc8ee1 arch: arm: cortex_m: Modifed FPU save and restore helpers
z_arm_save_fp_context and z_arm_restore_fp_context
save and restore fpu context regardless of the
CONFIG_FPU_SHARING setting.

This modification is required to support suspend to ram use cases
where save and restore of FPU state is needed to ensure proper bahaviour
after wakeup.

Signed-off-by: Michele Sardo <michele.sardo@st.com>
2025-07-19 13:45:07 -04:00
Michele Sardo
6cc046061e arch: arm: coterx_m: Added some #include in fpu.h
Added missing #include for used types uint32_t and bool
in file fpu.h

Signed-off-by: Michele Sardo <msmttchr@gmail.com>
2025-07-19 13:45:07 -04:00
Chaitanya Tata
53ffd35525 net: Fix the return code for success
None of the drivers seem to return the number of bytes, they all return
0 for success, so, fix the docs.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-07-19 13:44:58 -04:00
Chaitanya Tata
001f34d84c drivers: nrf_wifi: Fix return codes for xmit
Return proper error codes for xmit instead of generic -1.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-07-19 13:44:58 -04:00
Van Petrosyan
3225b517d4 drivers: modem_cellular: Add autostarts support for BG95
Add optional autostarts boolean to the quectel,bg95 binding and make
MODEM_CELLULAR_DEFINE_INSTANCE() use it through DT_PROP_OR().
Boards that carry a BG95-M3 Mini-PCIe card—or any other variant that
boots at VCC can now declare the property and skip the PWRKEY pulse,
while existing designs continue to behave unchanged.

Signed-off-by: Van Petrosyan <van.petrosyan@sensirion.com>
2025-07-19 13:44:37 -04:00
Van Petrosyan
25cd0d6341 drivers: modem_cellular: use AT+QGMR to fetch FW version on BG95
Quectel BG9x returns only the base model string to AT+CGMR, while
AT+QGMR provides the true firmware build ID, e.g.

  AT+CGMR  → BG95M3LAR02A03
  AT+QGMR  → BG95M3LAR02A03_01.204.01.204

Replace CGMR with QGMR in the BG95 init script so that
cellular_get_modem_info(... FW_VERSION ...) reports the complete
version string.

Signed-off-by: Van Petrosyan <van.petrosyan@sensirion.com>
2025-07-19 13:44:20 -04:00
Van Petrosyan
06b4adda81 drivers: modem_cellular: Add shutdown script for BG95
Add quectel_bg95_shutdown_chat_script that issues AT+QPOWD=1 and
link it to MODEM_CELLULAR_DEVICE_QUECTEL_BG95 to enable a clean
software-initiated power-off path

Signed-off-by: Van Petrosyan <van.petrosyan@sensirion.com>
2025-07-19 13:44:09 -04:00
Mohamed Moawad
4b90816982 posix: Map CLOCK_REALTIME and CLOCK_MONOTONIC to Zephyr clock IDs
Some toolchains may define CLOCK_REALTIME and
CLOCK_MONOTONIC in their libc headers
with values that differ from Zephyr's internal
SYS_CLOCK_REALTIME and SYS_CLOCK_MONOTONIC.

To ensure consistent behavior across all boards and
toolchains, Introduce a helper function to map
CLOCK_REALTIME and CLOCK_MONOTONIC to Zephyr's internal
clock IDs (SYS_CLOCK_REALTIME and SYS_CLOCK_MONOTONIC).

This prevents mismatched clock IDs being passed to
the kernel, avoiding invalid clockid errors when using
functions like clock_gettime().

Signed-off-by: Mohamed Moawad <moawad@synopsys.com>
2025-07-19 13:43:21 -04:00
Tim Lin
daaacd2998 drivers/i2c: it51xxx: Add support two target addresses for each target
This commit adds support for configuring two user-defined target
addresses in the I2C target driver.

Signed-off-by: Tim Lin <tim2.lin@ite.corp-partner.google.com>
2025-07-19 13:42:42 -04:00
Guennadi Liakhovetski
b6786a2f75 drivers: dai: dmic: fix 2 compiler warnings
Fix two compiler "unused function" warnings.

Signed-off-by: Guennadi Liakhovetski <guennadi.liakhovetski@linux.intel.com>
2025-07-19 13:42:30 -04:00
David Christian Katheder
ae9e29a0e2 boards: nxp: Add support for sdif on LPC55S28 and LPCXpresso55S28 board
- Add sdif node to nxp_lpc55s2x_common.dtsi
- Add sdif pinmux configuration to LPCXpresso55S28 board
- Enable sdif and sdmmc disk on LPCXpresso55S28 board, providing SD card
  storage capabilities.

Signed-off-by: David Christian Katheder <david.katheder@rohde-schwarz.com>
2025-07-19 13:41:20 -04:00
Jamie McCrae
9621bd658c boards: nordic: nrf54l15dk: Add button/LED aliases
Adds aliases so that these devices can use MCUboot serial recovery

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-07-19 13:41:08 -04:00
Tom Burdick
7bc4d14cfc llext: Drop unused memory domain member
Not sure why this vestigal struct member was here at this point (18
months ago...) but its unused and was causing problems for certain
parts.

Signed-off-by: Tom Burdick <thomas.burdick@intel.com>
2025-07-19 13:40:42 -04:00
Jakub Zymelka
35044b64e4 drivers: adc: nrfx_saadc: Fix SAADC shim for nRF54LV10A
GAIN field is not present on LV10A, so instead we need to
check the input value to the function.

Signed-off-by: Jakub Zymelka <jakub.zymelka@nordicsemi.no>
2025-07-19 13:40:29 -04:00
Rafał Kuźnia
3cccfa5f64 drivers: ieee802154: nrf5: prevent negative timestamps
The nrf-802154 driver may be unable to acquire a valid timestamp under
rare conditions. In such case, the nrf_802154_received_timestamp_raw
reports time=NRF_802154_NO_TIMESTAMP.
The shim implementation must not calculate the PHR timestamp when
receiving this value, because doing so results in an assert in
ptp_packet.h due to a negative time value.
When the driver is unable to capture the timestamp, the packet is
assigned zero as its timestamp.

Signed-off-by: Rafał Kuźnia <rafal.kuznia@nordicsemi.no>
2025-07-19 13:39:58 -04:00
Tomasz Moń
97e363f868 drivers: udc_dwc2: Arm control out endpoint in DMA mode
It was observed that device ceases to work in Buffer DMA mode after GET
DEVICE QUALIFIER request is STALLed (when USB stack is limited to
Full-Speed only operation). The issue is due to missing dout feed.

Clear pending dout feed flag after bus reset (enumeration done) and
after stalled control read transfer to allow dout to be feed when
necessary.

Signed-off-by: Tomasz Moń <tomasz.mon@nordicsemi.no>
2025-07-19 13:39:47 -04:00
Bjarki Arge Andreasen
f5ee52ecf3 drivers: can: nrf: fix invalid pointer leading to undef behavior
The can_nrf device driver incorrectly passes its own device
driver pointer to a call to clock_control_get_rate() to get the
rate of the auxpll. The actual device driver which should be passed
to clock_control_get_rate() is the auxpll.

Without this fix, the call jumps to the can_nrf_api and returns
garbage (unfortunately it does not hardfault, which is why this
issue has not been discovered yet).

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-07-19 13:28:38 -04:00
Jamie McCrae
5d390b4817 boards: Remove bootloader-led0 alias
This alias has been removed from MCUboot, remove references to it

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2025-07-19 13:27:35 -04:00
Triveni Danda
0dcb5a4923 modules: hostap: Set default stack size for softAP mode
This change is needed to handle to stack overflow issues
when using SPIM.

Signed-off-by: Triveni Danda <triveni.danda@nordicsemi.no>
2025-07-19 13:27:20 -04:00
Serhiy Katsyuba
98dfa0aa0b pm: Fix to prevent incorrect forever timeout
K_TICKS_FOREVER is defined as -1. Guard logic has been added for the case
when `ticks - exit_latency_ticks == -1` to prevent sys_clock_set_timeout()
from incorrectly setting a forever timeout.

Signed-off-by: Serhiy Katsyuba <serhiy.katsyuba@intel.com>
2025-07-19 13:27:08 -04:00
Keith Short
b634ede4d3 doc: contribute: Add multiline property style guide
Add guidelines for how to split long property values across multiple
lines. This documents the style that is enforced by the devicetree
linter.

Link: https://github.com/zephyrproject-rtos/zephyr/pull/92334

Signed-off-by: Keith Short <keithshort@google.com>
2025-07-19 13:26:57 -04:00
Luis Ubieda
cf4a16e09c bmp581: Add Streaming support
Working only with DRDY Interrupts. FIFO watermark not added yet.

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-07-19 13:26:42 -04:00
Luis Ubieda
5671129f1a bmp581: Add One-shot Read-Decode support
Decoding one-shot reads through submit API.

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-07-19 13:26:42 -04:00
Luis Ubieda
a32d5c15fe bmp581: Move bus transfers to work over RTIO
In order to abstract details of the transport itself, improving
portability.

No functional changes at this point. Driver works the same as far
as my local testing goes.

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-07-19 13:26:42 -04:00
Luis Ubieda
c62e4b5a88 bmp581: Add dts-properties to set default configuration
The existing driver requires setting multiple attributes in order to
work basic fetch/get reads. Simplify this by allowing the user to set
dts node properties based on the use-case.

As a result, basic settings results in the driver being up and running
from the start, one can just get sensor readings out of the box.

These still can be overriden at run-time if need be.

Signed-off-by: Luis Ubieda <luisf@croxel.com>
2025-07-19 13:26:42 -04:00
Håvard Reierstad
d989188f29 Bluetooth: Host: l2cap: Fix MPS/MTU confusion
The implementation used BT_L2CAP_ECRED_MIN_MTU to check the lower limits
of both MTU and MPS, instead of BT_L2CAP_ECRED_MIN_MPS for MPS. While
these are the same here, confusion may arise. This commit fixes the
confusion.

Signed-off-by: Håvard Reierstad <haavard.reierstad@nordicsemi.no>
2025-07-19 13:26:29 -04:00
Piotr Krzyzanowski
bad1109075 tests: drivers: nrf_clock_control: Test extended API
Add the resolve and get_startup_time call

Signed-off-by: Piotr Krzyzanowski <piotr.krzyzanowski@nordicsemi.no>
2025-07-19 13:26:08 -04:00
Declan Snyder
72f451ee9b scripts: kconfiglib: Fix file leaks
Fixing a couple cases of a programming error where a file is not closed
in case of an exception, which was causing resource leak warnings in
some cases when encountering a kconfig error.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-07-19 13:25:56 -04:00
Declan Snyder
efdd8580ca soc: nxp: Flatten MCX SOCs
Turn MCX series into families.

Reasoning:
 1. The MCX SOCs are quite different from each other and having them all
    under one family in the HWMv2 hierarchy is fruitless because there
    are so many differences that it is confusing to try to introduce
    family-level code and configs since they would each only apply to a
    subset of the series. There is almost nothing that can be shared
    between all of them. Which is why there are comments in the MCX
    family files saying not to put anything in them. This is a technical
    waste.
 2. Therefore, turning all of them into families is almost 0 effort and
    makes sense. It will allow these different types of MCX to be
    further subdivided into series in the future as the MCX portfolio
    expands and such division will be necessary as new SOCs within each
    letter family are released.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-07-19 13:25:29 -04:00
Chaitanya Tata
1495e2e34c dts: bindings: Add missing nRF Wi-Fi interface
Add missing binding to fix the device tree warning.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2025-07-19 13:24:56 -04:00
Seppo Takalo
d5f4ca3b64 net: ppp: Allow peer-options to be rejected
There are cases, for example when peer is requesting two DNS
addresses, but we can only give one, we should reject the secondary
DNS request first, before sending NAK to acceptable options.

Option parser can reject a parameter by returning -ENOTSUP and when
it wants to NAK the parameter, it returns -EINVAL.

On RFC 1661:
Configure-Reject
  If some Configuration Options received in a Configure-Request are
  not recognizable or are not acceptable for negotiation (as
  configured by a network administrator), then the implementation
  MUST transmit a Configure-Reject.

Configure-Nak
  If every instance of the received Configuration Options is
  recognizable, but some values are not acceptable, then the
  implementation MUST transmit a Configure-Nak.

So as stated by RFC, we should start the negotiation by rejecting all
parameters that we cannot configure. I added an example of rejecting
DNS requests, if we don't have those.

Signed-off-by: Seppo Takalo <seppo.takalo@nordicsemi.no>
2025-07-19 13:24:41 -04:00
Seppo Takalo
5a31f3d108 net: ppp: ipcp: Don't request DNS if not needed
When Kconfig option CONFIG_NET_L2_PPP_OPTION_DNS_USE is enabled,
Zephyr should request two DNS addresses in IPCP negotiation by sending
IPCP ConfReq for DNS otions using 0.0.0.0 as an address.

Remote peer may offer DNS by sending IPCP ConfNak with proper address.
This is explained in RFC 1332 and RFC 1877 (DNS extension).

When no DNS is required, we should only send IPCP ConfReq for IP
address, without having DNS fields in the same request.

However, when PPP is configured to serve a DNS using Kconfig option
CONFIG_NET_L2_PPP_OPTION_SERVE_DNS it should serve the DNS address in the
IPCP ConfNak message and from the ipcp.peer_options structure, not from
the ipcp.my_options.

This might break backward compatibility outside this repository
as DNS addresses used to be served from ipcp.my_options.

Signed-off-by: Seppo Takalo <seppo.takalo@nordicsemi.no>
2025-07-19 13:24:41 -04:00
Vinayak Kariappa Chettimada
43e8753f86 board: nrf: Fix nRF54LM20DK upstream Bluetooth Controller supported
Fix nRF54LM20DK upstream Bluetooth Controller supported.

Relates to commit 3d1fa8b333 ("board: nrf: Add nRF54LM20DK
board").

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2025-07-19 13:24:24 -04:00
Robert Lubos
3d93657ca9 net: if: Add const qualifier to addr pointer where applicable
Some APIs taken in_addr/in6_addr pointer w/o const qualifier, while they
do not actually intend to modify the provided address. This commit
adds the missing const qualifier where applicable.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-07-19 13:24:08 -04:00
Pieter De Gendt
cb018eae17 MAINTAINERS: Sort areas
Sort the areas listed in the maintainers file and add the
zephyr-keep-sorted block.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-07-19 13:23:41 -04:00
Pieter De Gendt
15fbf214b5 scripts: ci: check_compliance: Keepsorted optional folding
Introduce a marker for zephyr-keep-sorted to not fold continued indented
lines.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-07-19 13:23:41 -04:00
Pieter De Gendt
27e36c31b4 scripts: ci: check_compliance: Keepsorted optional stripped characters
Allow passing characters to strip for zephyr-keep-sorted. This can be
useful for optional double quotes in yaml maps.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-07-19 13:23:41 -04:00
Sylvio Alves
05316bd0ed drivers: uart: esp32: avoid pin re-configuration on uart_configure()
Ensure uart_configure() only updates UART parameters without
reassigning pin configuration. Pin assignment via pinctrl is now
restricted to the initialization procedure, guaranteeing pins are
set only when properly configured.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2025-07-19 13:23:29 -04:00
Rafał Kuźnia
5925d718ef drivers: ieee802154: nrf5: drop packets that are too long
There was an observed situation where the assert checking frame length
is below 128 bytes was hit. While the nrf-802154 checks that the frame
does not exceed that size, there might exists code paths that allow such
packets to pass through.

The change removes the assert and drops the packet instead.
An error is also printed to allow for further debugging.

Signed-off-by: Rafał Kuźnia <rafal.kuznia@nordicsemi.no>
2025-07-19 13:23:06 -04:00
Erwan Gouriou
10a69bf90b samples: st: power_mgmt blinky: Minor rework and comments fixes
Remove mentions of st_counter_value which has been renamed to st_timeout.

Rework slightly the sample behavior to better demonstrate the interest
of st,timeout which allows to define an timeout matching exactly the
application needs.

Reword the various comments to make it hopefully clearer to the reader.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2025-07-19 13:22:44 -04:00
Erwan Gouriou
a884e3b537 drivers: timer: stm32 lptim: Fix the st,timeout runtime check
Existing check failed on correct settings.
Add an assert to fasten the debug.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2025-07-19 13:22:44 -04:00
Erwan Gouriou
e99db0ddd2 drivers: timer: stm32_lptim: Fix behavior of st,timeout
To be consistent with the definition of label stm32_lp_tick_source,
be sure "st,timeout" is taken from the LPTIM defined as lp_tick_source.

Then, fix the computation of lptim_time_base.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2025-07-19 13:22:44 -04:00
Sylvio Alves
e794a86a94 drivers: intc: esp32: fix non-IRAM mask usage in interrupt disable
Fix the non-IRAM interrupt disable routine to use non_iram_int_mask[cpu]
directly instead of its bitwise inverse. The previous implementation used
the wrong mask and could affect unrelated interrupts. This change ensures
that only intended non-IRAM interrupts are disabled and restored.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2025-07-19 13:20:38 -04:00
Sylvio Alves
d55c550579 drivers: intc: esp32: fix and reset flags when freeing interrupt
Fix bitwise operation when freeing an interrupt to correctly clear the
VECDESC_FL_NONSHARED, VECDESC_FL_RESERVED, and VECDESC_FL_SHARED flags.
Also reset the interrupt source to ETS_INTERNAL_UNUSED_INTR_SOURCE to
ensure proper cleanup and prevent issues with future allocations.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2025-07-19 13:20:38 -04:00
Sylvio Alves
5e6d118389 drivers: intc: esp32: fix race in critical section locking
Replace global lock variable with function-local storage for irq_lock()
state. This fixes a race condition when multiple access enter or exit
the critical section at the same time. Now each lock/unlock pair uses
its own key, making interrupt safe.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2025-07-19 13:20:38 -04:00
Anas Nashif
94e0e5ae85 tests: llext: disable debug logging
disable debug in general as it is too verbose and hides test output.
However, this now fixes an issue in the test itself after 4.2 release.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-07-19 13:19:13 -04:00
Anas Nashif
a2e3d19b8e VERSION: bump to 4.2.99
Set PATCHLEVEL to 99 to indicate that this is now a development branch.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-07-19 13:18:57 -04:00
Marc Herbert
6692544098 MAINTAINERS: add marc-hb as West collaborator
Some evidence if needed:
- #92181
- https://github.com/zephyrproject-rtos/west/graphs/contributors

Signed-off-by: Marc Herbert <marc.herbert@intel.com>
2025-07-19 10:25:29 +02:00
Fin Maaß
d4a2a2e581 drivers: ethernet: adin2111: make register access independent
don't use global buffers for reg_read and reg_write,
so we only need to rely on the spi drivers lock and
don't have to use our lock.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-07-19 10:24:05 +02:00
Tahsin Mutlugun
3de5883fc1 tests: drivers: spi: spi_loopback: Update slow rates for MAX32 boards
The requested SPI clock rate and the actual rate that is set can be
different depending on the peripheral clock and divisors available to
the SPI peripheral. For some MAX32 SoCs, actual rate ended up being
higher than the devicetree setting. This would then cause latency tests
to fail as transfers finish earlier than minimum expected duration.

Update the test frequency values in several MAX32 board overlays to pass
latency tests.

Signed-off-by: Tahsin Mutlugun <Tahsin.Mutlugun@analog.com>
2025-07-19 10:21:58 +02:00
Tahsin Mutlugun
edc9ff951d drivers: spi: spi_max32: Return proper error codes in spi_configure
spi_configure was returning HAL error codes that are incompatible with
Zephyr error definitions straight back to the caller. Replace these with
error codes that Zephyr can correctly interpret.

Signed-off-by: Tahsin Mutlugun <Tahsin.Mutlugun@analog.com>
2025-07-19 10:21:58 +02:00
Tahsin Mutlugun
f47449e7e9 drivers: spi: spi_max32: Fix word size support
Driver was not handling SPI word sizes other than 8 bits. Apply DFS
shift wherever necessary to support non 8-bit transfers.

DMA mode cannot support word sizes that are less than 8 bits so return
-ENOTSUP if word size less than 8-bits is required.

Signed-off-by: Tahsin Mutlugun <Tahsin.Mutlugun@analog.com>
2025-07-19 10:21:58 +02:00
Emil Gydesen
d0958995a3 tests: Bluetooth: Tester: Handle BIGInfo after sync request
In the BAP Broadcast Sink implementation the sync request,
the BIGInfo and the broadcast code can come in any other.
Currently the btp_bap_broadcast_sink_bis_sync would reject
the request if it came before the BIGInfo, but will now
instead store the request and then apply it once the BIGInfo
has been received, as there is not BIGInfo BTP event that the
caller can use.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-07-19 10:17:11 +02:00
Mario Paja
442465f81c drivers: i2s: add sai support for stm32h5xx
Define SAI nodes for STM32H5 series and enable samples/drivers/i2s/output
for nucleo_h563zi board.

Signed-off-by: Mario Paja <mariopaja@hotmail.com>
2025-07-19 10:16:03 +02:00
Benjamin Cabé
a663b2b374 boards: arduino: nicla_vision: fix VL53L1X I2C address
Nicla Vision datasheet is referring to the 8-bit wire address (0x52) for
the VL53L1X sensor, so that's likely what ended up being used in the
board's devicetree. However, it's the 7-bit I2C address that should be
used so fix that by changing the I2C address to 0x29. Successfully
tested on actual hardware.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-07-19 10:14:32 +02:00
Gaetan Perrot
2d9d14e55e samples: bluetooth: cap_initiator: Fix shadowed variable
Avoid redeclaring 'err' inside a nested block, which shadowed the outer
definition.

This cleanup prevents confusion and potential logical bugs.

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2025-07-19 10:14:13 +02:00
Gaetan Perrot
5cff080775 samples: bluetooth: cap_acceptor: Fix shadowed variable
Avoid redeclaring 'err' inside a nested block, which shadowed the outer
definition.

This cleanup prevents confusion and potential logical bugs.

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2025-07-19 10:14:13 +02:00
Gaetan Perrot
95d6058cb4 tests: bsim: bluetooth: audio: Remove shadowed variable
Avoids shadowing the outer 'err' variable by reusing it instead of
redeclaring a new one inside conditional blocks.

This improves clarity and prevents confusion during debugging.

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2025-07-19 10:12:22 +02:00
Vit Stanicek
2d388ba6ee samples: rtxxx-amp: Add service_area section
Add the service_area section to the list of sections for which objcopy
is executed. As this section was missing from the resulting data image,
it prevents targets (right now, the mimxrt685s/hifi4) from booting.

Signed-off-by: Vit Stanicek <vit.stanicek@nxp.com>
2025-07-19 10:12:10 +02:00
Tahsin Mutlugun
f9d35e2e8b drivers: sensor: adxl367: Fix log module declaration
Resolve a compilation issue caused by incorrect logging state
declaration for ADXL367.

Signed-off-by: Tahsin Mutlugun <Tahsin.Mutlugun@analog.com>
2025-07-19 10:11:43 +02:00
Anas Nashif
a04a04f200 shields: nucleo_iks01a1: add accel0 alias
Add alias for accel0 to make it work with various samples we have that
rely on the alias.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-07-19 10:11:15 +02:00
Florian La Roche
d933e0301e net: sockets: add missing break
Add a missing break to socket handling.

Signed-off-by: Florian La Roche <Florian.LaRoche@gmail.com>
2025-07-19 10:10:58 +02:00
Peter Wang
28d9a458dc boards: frdm_mcxa166, frdm_mcxa276: add lpcmp support
1. enable sensor/nxp,lpcmp support
2. verified samples/sensor/mcux_lpcmp
3. update the mcux_lpcmp to support different port

Signed-off-by: Peter Wang <chaoyi.wang@nxp.com>
2025-07-19 10:10:07 +02:00
Alvin Šipraga
cc08d96d79 drivers: gpio: mspm0: allow configuration of open-drain outputs
Check the GPIO_OPEN_DRAIN flag and set the corresponding HIZ1 bit in the
PINCM register.

Signed-off-by: Alvin Šipraga <alsi@bang-olufsen.dk>
2025-07-19 10:09:13 +02:00
Emil Dahl Juhl
5ede804e2d drivers: gpio: mspm0: Mask interrupts correctly
Reading back the raw interrupt status from the gpio controller, provides
the interrupt mask _without_ the controller's masking registers applied.
This means that e.g. a rising edge would trigger an interrupt even on
pins that are configured for falling edge only.

Fix this by reading the "enabled" interrupt status instead of the raw
one.

Signed-off-by: Emil Dahl Juhl <emdj@bang-olufsen.dk>
2025-07-19 10:09:13 +02:00
Emil Dahl Juhl
3e5b9728e9 drivers: gpio: mspm0: Fix interrupt polarity
The polarity mapping was swapped such that GPIO_INT_TRIG_LOW would
translate to high, and vice versa, on the chip configuration.

Swap the polarity to fix this.

Signed-off-by: Emil Dahl Juhl <emdj@bang-olufsen.dk>
2025-07-19 10:09:13 +02:00
Hans Binderup
e88a14751a drivers: gpio: mspm0: Add support for GPIO_GET_DIRECTION
This commit implements the gpio_get_direction handle for the gpio_mspm0
driver.

Signed-off-by: Hans Binderup <habi@bang-olufsen.dk>
2025-07-19 10:09:13 +02:00
Hans Binderup
8bc98ead34 drivers: gpio: mspm0: Add support for GPIO_GET_CONFIG
This commit implements the gpio_get_config handle for the gpio_mspm0
driver.
NOTE: Currently only handles input/output state and not configured flags

Signed-off-by: Hans Binderup <habi@bang-olufsen.dk>
2025-07-19 10:09:13 +02:00
Hans Binderup
9edd7b0661 drivers: gpio: mspm0: fix disabled state handling
Prior to this commit, writing a gpio port would completely clear
the state of given port. This commit ensures that state is kept
when writing, reading and configuring gpio ports.

Signed-off-by: Hans Binderup <habi@bang-olufsen.dk>
2025-07-19 10:09:13 +02:00
Pete Johanson
02fa84565a drivers: flash: Enable static/runtime SFDP data for SPIXF driver
Add a new flash for toggling runtime SFDP data fetching, and use static
devicetree properties by default. Clean up various minor items from review.

Signed-off-by: Pete Johanson <pete.johanson@analog.com>
2025-07-19 10:08:46 +02:00
Pete Johanson
3821e5db62 drivers: flash: Support XIP for MAX32 SPIXF flash
Properly configure the MAX32 SPIXF peripheral to use the SPIXF controller
for transparent memory mapped reads, and enable the SPIXF main controller
and use it for writes.

Add support for testing XIP support to the nocopy sample, which requires
flashing with OpenOCD with MAX32690 QSPI flash support.

Signed-off-by: Pete Johanson <pete.johanson@analog.com>
2025-07-19 10:08:46 +02:00
Pete Johanson
16610c8a8a drivers: flash: Add MAX32 SPIXF NOR test/samples
Update common flash test and jesd216 samples to work on the
APARD32690-SL board which has MX25U6432FM2I02 on-board.

Signed-off-by: Pete Johanson <pete.johanson@analog.com>
2025-07-19 10:08:46 +02:00
Pete Johanson
ecf7f846ae drivers: flash: Add MAX32 SPIXF NOR flash driver
Implement support for NOR flash on the SPIXF peripheral found
on MAX32 devices.

Signed-off-by: Pete Johanson <pete.johanson@analog.com>
2025-07-19 10:08:46 +02:00
Harini T
e343379510 drivers: watchdog: Add Xilinx Window Watchdog driver support
Xilinx Window Watchdog driver uses window watchdog mode. Window watchdog
timer(WWDT) contains closed(first) and open(second) window with 32bit
width each. Write to the watchdog timer within predefined window periods
of time. This means a period that is not too soon and a period that is
not too late. The WWDT has to be restarted within the open window time.
If the software tries to restart WWDT outside of open window time
period, it generates a SoC reset.

Signed-off-by: Harini T <harini.t@amd.com>
2025-07-19 10:00:33 +02:00
Harini T
35a3ddaa09 dts: bindings: watchdog: Add Xilinx Window Watchdog Timer
Xilinx Window Watchdog Timer IP uses window mode.
Window watchdog timer(WWDT) contains closed(first) and open(second)
window with 32 bit width each. Write to the watchdog timer within
predefined window periods of time. This means a period that is not too
soon and a period that is not too late.

The WWDT error interrupts (IRQs) occur when the watchdog timer is not
serviced within the predefined window periods. These IRQs are routed to
the Processing System Manager (PSM) error accumulator module. The PSM is
responsible for managing power and system-level errors, generating a
System on Chip (SoC) reset when a WWDT error occurs. The system reset
event is signaled as a system error for the PSM firmware to handle and a
reset output signal to the MIO/EMIO.

Signed-off-by: Harini T <harini.t@amd.com>
2025-07-19 10:00:33 +02:00
Mark Wang
e71b5122f7 bluetooth: classic: add role switch API
add bt_conn_br_switch_role and bt_conn_br_set_role_switchable to control
the role switch, add DEFAULT_ROLE_SWITCHABLE Kconfig to control the default
role switch state.

Signed-off-by: Mark Wang <yichang.wang@nxp.com>
2025-07-19 09:59:16 +02:00
Mark Wang
31fba83fb3 bluetooth: classic: add role changed callback
add `role_changed` to `struct bt_conn_cb` to notify the HCI_Role_Change
event to application.

Signed-off-by: Mark Wang <yichang.wang@nxp.com>
2025-07-19 09:59:16 +02:00
Jilay Pandya
897590fddd boards: shields: add mikroe h bridge 4 click
add mikroe h bridge 4 click board to shields

Signed-off-by: Jilay Pandya <jilay.pandya@outlook.com>
2025-07-19 09:57:40 +02:00
Jilay Pandya
3ce26616c9 drivers: stepper: rename gpio_steppper_controller to h_bridge_stepper
rename gpio stepper to h bridge stepper
minor correction in stepper_stop, stepper_stop shall cancel all active
movements and should not be concerned about keeping the coils energized
or not, since that is a concern of a motion controller and not a stepper
driver.

Signed-off-by: Jilay Pandya <jilay.pandya@outlook.com>
2025-07-19 09:57:40 +02:00
Matthias Plöger
b42013ada8 doc: update heap references according to auto heap calculation
Add and exchange global heap configuration CONFIG_HEAP_MEM_POOL_SIZE
against configuration used for auto heap calculation
CONFIG_HEAP_MEM_POOL_ADD_SIZE_ZBUS.
Add CONFIG_HEAP_MEM_POOL_ADD_SIZE_ZBUS as related configuration

Clarify that HEAP is used for zbus in a whole

Consistent naming 'Zbus'/'zbus' to 'ZBus'

Signed-off-by: Matthias Plöger <matthias.ploeger@phoenixcontact.com>
2025-07-19 09:56:21 +02:00
Matthias Plöger
239d53c5fc zbus: add user-configurable HEAP_MEM_POOL_ADD_SIZE_ZBUS
Zbus currently does only support default heap sizes.
The configuration option allows to decrease rom-footprint for embedded
applications. Adding the option to ZBus improves its flexibility and
while not increasing its complexity.

Add default of 0 value to compensate for previous cases where
HEAP_MEM_POOL_ADD_SIZE_ZBUS was defined as "".

Consistent naming 'Zbus'/'zbus' to 'ZBus'

Signed-off-by: Matthias Plöger <matthias.ploeger@phoenixcontact.com>
2025-07-19 09:56:21 +02:00
Dino Li
4c3bfc821b espi/it8xxx2: waiting till completion of VW send to host
On it8xxx2, there are VW transmitted registers indicating that VW signal
has been transmitted to host. This patch checks the register to ensure
successful transmission of VW state change.

fixes: #89298

Signed-off-by: Dino Li <Dino.Li@ite.com.tw>
2025-07-19 09:55:46 +02:00
Rafael Aldo Hernández Luna
2e30bbca00 drivers: dac: Added dac driver for samd5x
Added driver and binding file for samd5x dac peripheral, the already
implemented dac_sam0.c lacks the configuration registers for this
microcontroller family and is fixed to only have one dac channel output,
also, the code gets too bulky when adding the samd5x dac configuration
using preprocessor directives that’s why I moved the implementation to its
own file.

Added dac to the supported list of same54_xpro.yaml, fixed Kconfig.samd5x
help spacing, added board defines to test_dac.c and test it out with
twister script on board.

Signed-off-by: Rafael Aldo Hernández Luna <aldo.hernandez@daikincomfort.com>
2025-07-19 09:54:41 +02:00
Tom Burdick
7d9fffaeb9 samples: pmci: mctp: Add i2c+gpio endpoint sample
Adds sample showing i2c+gpio endpoint bindings in use.

Provides an overlay for the frdm-mcxn947 development board using JP8
pins for i2c and gpio connectivity.

The sample periodically sends a "ping" message to the bus controller and
prints out any messages it receives itself.

Signed-off-by: Tom Burdick <thomas.burdick@intel.com>
2025-07-19 09:53:21 +02:00
Tom Burdick
84583ee6c6 samples: pmci: mctp: Add I2C+GPIO bus owner sample
Adds a sample application that can act as the bus owner using
i2c+gpio mctp binding.

Provides an overlay for the frdm-mcxn947 using JP8 pins for i2c and
gpio.

It attempts to send a "ping" message to all endpoints while accepting
string messages from endpoints to print out.

Signed-off-by: Tom Burdick <thomas.burdick@intel.com>
2025-07-19 09:53:21 +02:00
Tom Burdick
cbfe7813c7 pmci: mctp: I2C+GPIO Target binding
Adds a I2C+GPIO Target device binding for MCTP communication over I2C.

The binding requires an i2c bus and gpio pin, along with a specified I2C
and endpoint address pair. These are then used to create an MCTP binding
which can be used to communicate in a peer to peer manner among other
MCTP endpoints.

Each message transmit signals to the bus controller using a GPIO logical
high and is unset on transmission completion. Pending transmitters are
queued using a semaphore avoiding memcpy being needed to asynchronously
transmit mctp pktbufs.

Signed-off-by: Tom Burdick <thomas.burdick@intel.com>
2025-07-19 09:53:21 +02:00
Tom Burdick
6464329346 pmci: mctp: I2C+GPIO controller bindings
Adds a custom MCTP binding for an I2C bus controller using GPIO signaling
for write requests rather than mode switching.

This binding operates a lot like the I3C binding specification DMTF has
for MCTP. The controller expects to receive interrupts (from GPIO pins)
and upon getting an interrupt read a message from the I2C target device.

The macro does a lot of the heavy lifting to setup all the state needed
for capturing GPIOs, being able to do asynchronous reads/writes, and
such. The entire controller works using state machines driven by
interrupts leading to low latency and clear ram costs.

Signed-off-by: Tom Burdick <thomas.burdick@intel.com>
2025-07-19 09:53:21 +02:00
Tom Burdick
e3cc7a8c63 pmci: mctp: Supply dedicated mctp heap
Unfortunately libc malloc/free are wrapped with a sys_mutex which is
troublesome for mctp as we likely want to allocate from interrupts in many
cases.

Supply mctp with a dedicated heap initialized and assigned at boot
saving applications a step. The default size is quite small and works
well so long as messages are small.

Signed-off-by: Tom Burdick <thomas.burdick@intel.com>
2025-07-19 09:53:21 +02:00
Tom Burdick
508676ca11 i2c: Use I2C log level for lpi2c rtio
Driver simply registered itself without setting the level based on the
I2C Kconfig which wasn't quite right, need the log level set based on
the Kconfig for I2C.

Signed-off-by: Tom Burdick <thomas.burdick@intel.com>
2025-07-19 09:53:21 +02:00
Tom Burdick
9e12c111bb i2c: Use a I2C_CONCAT rather than ## in names
Fixes an issue where the name is not a token itself but perhaps an
unrealized macro.

Signed-off-by: Tom Burdick <thomas.burdick@intel.com>
2025-07-19 09:53:21 +02:00
Cheng Chang
419cb3da69 tests: bluetooth: classic: Add test suite l2cap.
IUT works as a l2cap server with basic mode. The peer device,
l2cap client with basic mode, is a PC with running `bumble` on it.
This test only performs the function of L2CAP basic mode.
Support multiple l2cap enerties in new shell l2cap_br,
which may support more test function.

In the test suite , there are two groups in test cases.
Group 1 Including case1-case8 focuses on connection and
disconnection around l2cap. The impact of active and passive
acl connectivity, disconnectivity and authentication as well as
disconnection from ACL without l2cap disconnect is tested.

Group2 Including case9-case14 revolves around the basic
 parameters of L2CAPserver configuration, data transfer.
Case 9:   Test l2cap connection with max MTU(0xffff).But the max mtu
which the stack supports is (CONFIG_BT_BUF_ACL_RX_SIZE - 4U = 196).
Case 10: Test l2cap connection with min MTU(0x30),set server mtu = 48,
client mtu = 0xffff, l2cap connect successfully,
client mtu = 0xffff, server mtu = 48.
Case 11: Test l2cap connection with min MTU(0x30),set server mtu < 48,
client mtu = 0xffff, l2cap connect fail.
Case 12: Test l2cap connection with min MTU(0x30),set server mtu = 48,
client mtu<48,l2cap connect successfully,
client mtu=48,server mtu=48.
Case 13: Test l2cap connection with invaild PSM.
Case 14: Test l2cap multi_channel connection and data tranfer.
Case 15: Stress Test. Repeat l2cap connect, disconnect operation.
Case 16: Stress Test. Repeat data transfer in a single connection.
In Case 15 and 16, if enlarging STRESS_TEST_MAX_COUNT and test fail,
you can enlarge timeout in  testcase.yml.

test_l2cap_server.py is a file containing real test cases.
test_l2cap_common.py is a common file. It encapsulates some
test function functions that are commonly used for test cases.

Signed-off-by: Cheng Chang <cheng.chang@nxp.com>
2025-07-19 09:51:31 +02:00
Cheng Chang
5b204de53a Bluetooth: host: L2CAP: Fix configuration parameters not be checked
Now in other mode rather than basic mode, configuration parameters
include MTU, Flush Time and QoS have been checked.
But in basic mode, they also need to be checked, so the code about this
should not be controlled by macro CONFIG_BT_L2CAP_RET_FC.

Signed-off-by: Cheng Chang <cheng.chang@nxp.com>
2025-07-19 09:51:02 +02:00
Francois Ramu
735e5cb6c4 samples: mgmt: hawkbit: no BOOT_MAX_IMG_SECTORS for stm32h573i_dk
Reverts commit 5700ffe9ad.
Not required anymore as the CONFIG_BOOT_MAX_IMG_SECTORS
is fixed by the mcuboot at 4096.
Add the corresponding overlay file.

Signed-off-by: Francois Ramu <francois.ramu@st.com>
2025-07-19 09:49:44 +02:00
Francois Ramu
bf9af02b81 samples: sysbuild: with mcu_boot on the stm32h573i_dk
Run the sample to execute in place on the external flash of the
stm32h573 disco kit.
with_boot is build and linked for the external flash.
Download the mcuboot zephyr.bin in internal memory.
Download the with_mcuboot zephyr.signed.bin in external memory.

Signed-off-by: Francois Ramu <francois.ramu@st.com>
2025-07-19 09:49:44 +02:00
Francois Ramu
5d0306c797 boards: arm: stm32h573 disco kit move partition to ext flash
Add the XSPI 2 which is an octoSPI connection to a octo NOR flash
mx25lm51245 on the stm32h573i_dk disco kit.
Define the partition on the 64MBytes space of the external flash.
Use the STM32Cube programmer to flash with the corresponding
external loader for XiP mode.
Removing usb_device will avoid test feature for that board.

Signed-off-by: Francois Ramu <francois.ramu@st.com>
2025-07-19 09:49:44 +02:00
Francois Ramu
2345bc996a drivers: flash: stm32 xspi flash driver skip init when executing in place
The flash_stm32_xspi driver should not initialize the xspi,
if this one is being use to execute in Place : the init is skipped.
This mode is identified with the CONFIG_STM32_APP_IN_EXT_FLASH.
Checking the memory mapped mode bit is possible when the xspi
peripheral clock is not off (stm32h5 has no clock_control_get_status API)

Signed-off-by: Francois Ramu <francois.ramu@st.com>
2025-07-19 09:49:44 +02:00
Francois Ramu
c33d93d478 drivers: clock control for stm32h5 driver implements control_get_status
Add the control_get_status API function
to the stm32h5 clock_control driver

Signed-off-by: Francois Ramu <francois.ramu@st.com>
2025-07-19 09:49:44 +02:00
Francois Ramu
a63683aa95 drivers: clock: stm32H5 clock control of the PLL in MemoryMapped mode
Do not disable the PLL clock if it sources the XSPI and if the external
flash is executing in Place. After mcuboot reset, the code is executed
on the external flash, through the xspi.
The CONFIG_STM32_APP_IN_EXT_FLASH is set and will avoid re-config
of the PLL which is sourcing the XSPI peripheral. When eXecuting in Place
on this external NOR, it must not disable its own clock source (PLL).

Signed-off-by: Francois Ramu <francois.ramu@st.com>
2025-07-19 09:49:44 +02:00
Francois Ramu
a2ff38725b soc: stm32: symbol for application XiP from xspi external memory
Add a STM32_APP_IN_EXT_FLASH to determine that an application
is eXecuting in Place on an external xspi flash.
That will control the clock init of this external xspi controller.

Signed-off-by: Francois Ramu <francois.ramu@st.com>
2025-07-19 09:49:44 +02:00
Amneesh Singh
c49ec80948 am243x_evm/am2434/r5f0_0: add SPI support
Add OMAP multi-channel SPI node to the device tree and add overlay for the
SPI loopback test.

Signed-off-by: Amneesh Singh <a-singh7@ti.com>
2025-07-19 09:47:37 +02:00
Amneesh Singh
b6d261b989 drivers: spi: introduce TI omap_mcspi
This patch adds the initial support for the OMAP Multi-Channel SPI. Some
things should be noted however:

- DMA xfers are not supported yet. Only PIO is supported as of now.
- Multi-Channel controller is not supported yet. Only single-channel
  controller mode is supported, this means that the controller can xfer
  messages with one slave at a time.

Signed-off-by: Amneesh Singh <a-singh7@ti.com>
2025-07-19 09:47:37 +02:00
Ravinder Singh
394c97a819 Bluetooth: LE: CONN: Added bt_conn_le_set_default_phy function.
Added bt_le_set_default_phy in hci. This handles
the HCI_LE_Set_Default_PHY HCI command.
Added call to bt_conn_le_set_default_phy in central_gatt_write and
peripheral_gatt_write samples.

Signed-off-by: Ravinder Singh <ravinder.singh2@infineon.com>
2025-07-19 09:46:34 +02:00
Sean Kyer
b597efc863 tests: settings: Add TF-M ITS backend tests
Add ITS tests for ITS settings backend. Part of enabling
settings subsystem for non-secure builds.

Signed-off-by: Sean Kyer <Sean.Kyer@analog.com>
2025-07-19 09:45:56 +02:00
Sean Kyer
cba074230d settings: Add TF-M ITS backend
Add settings_its backend in order for a non-secure
Bluetooth application to be able to save Bluetooth
settings to persistent storage.

Signed-off-by: Sean Kyer <Sean.Kyer@analog.com>
2025-07-19 09:45:56 +02:00
Sean Kyer
4484354dcc secure_storage: Add global registry for PSA ITS UIDs
Allows for subsystems to reserve UID ranges when using
PSA ITS.

Signed-off-by: Sean Kyer <Sean.Kyer@analog.com>
2025-07-19 09:45:56 +02:00
Martin Hoff
4d4e6701b8 script: west_commands: silabs: add device type for hostname dev
This commit adds automatic type detection for the dev-id argument and
introduces a device-type option to explicitly tell Silabs Commander how
to handle the dev-id argument. It enables hostname usage for flashing
devices.

Signed-off-by: Martin Hoff <martin.hoff@silabs.com>
2025-07-19 09:43:43 +02:00
Martin Hoff
3e7b80da3d script: west_commands: jlink: add device type for hostname dev
This commit adds automatic type detection for the dev-id argument and
introduces a device-type option to explicitly tell JLink how to handle
the dev-id argument. It enables hostname usage for flashing and
debugging.

Signed-off-by: Martin Hoff <martin.hoff@silabs.com>
2025-07-19 09:43:43 +02:00
Yanir Levin
6df14b432e arc: cache: Support region operations, SLC, and entire cache operations
Added configurable support for L1 cache region operations,
which offers improved performance over line operations.
Added configurable support for SLC (system level cache).
Added support for entire cache operations: flush_all,
invd_all, flush_and_invd_all.

Reviewed-by: Aaron Komisar <aaron.komisar@tandemg.com>
Signed-off-by: Yanir Levin <ylevin@gsitechnology.com>
2025-07-19 09:42:20 +02:00
Make Shi
dcd9adec29 Bluetooth: AVRCP: Adjust positions of internal static functions
- Move the static function locations to beginning of the file to the
  file to avoid function declarations.

Signed-off-by: Make Shi <make.shi@nxp.com>
2025-07-19 09:40:19 +02:00
Make Shi
ba05d5c2b2 Bluetooth: Shell: AVRCP: support unit info request and response
Add avrcp_unit_info_req callback function in shell and a command to set
the unit info response.

Signed-off-by: Make Shi <make.shi@nxp.com>
2025-07-19 09:40:19 +02:00
Make Shi
c95d3167e2 Bluetooth: AVRCP: Implement unit message reception on the AVRCP target
- Add a new callback to support the situation when a unit info command is
  received, and add an API to respond to the unit info command.

Signed-off-by: Make Shi <make.shi@nxp.com>
2025-07-19 09:40:19 +02:00
Make Shi
a559fee00b Bluetooth: AVRCP: Refactored AVRCP API for CT/TG separation
- Only AVRCP connect and disconnect api for AVRCP common functions.
- Added _ct prefixes to all CT callback functions and feature APIs.
- Updated shell demo code for AVRCP API changes.

Signed-off-by: Make Shi <make.shi@nxp.com>
2025-07-19 09:40:19 +02:00
Alberto Escolar Piedras
ebd69cac45 tests/drivers/uart/: Add overlays for the nrf54lm20bsim
This target can also run this tests, we just overlays including
the ones for the real boards.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-07-19 09:38:37 +02:00
Alberto Escolar Piedras
6017c6866b soc/nordic/nrf54l: Set SOC_COMPATIBLE for 54L CPUAPP targets
So we can enable features for both the real and simulated
targets based on these same options.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-07-19 09:38:37 +02:00
Alberto Escolar Piedras
6a659371a5 tests drivers counter: Enable for nrf54lm20bsim_nrf54lm20_cpuapp
These tests run fine in this board, let's provide an
overlay and enable them.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-07-19 09:38:37 +02:00
Alberto Escolar Piedras
542874333c boards nrf_bsim: Add a new nrf54lm20bsim target
Add a new simulated nrf54lm20 cpuapp target

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-07-19 09:38:37 +02:00
Alberto Escolar Piedras
65fb246df1 soc: Add SOC_COMPATIBLE_NRF54LM20* options
In preparation for simulated nRF54LM20 targets, let's add kconfig
options aking to the ones we have for the nRF54L15 devices.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-07-19 09:38:37 +02:00
Alberto Escolar Piedras
a0f2ec8352 boards/native: Remove NATIVE_SIM_NATIVE_POSIX_COMPAT kconfig option
This option was introduced together with native_sim in 3.5 to ease
the transition from native_posix, and was deprecated in 4.1.

Let's remove it now.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-07-19 09:38:23 +02:00
Alberto Escolar Piedras
b0dd9cbdc5 drivers/usb_native_posix: Remove BOARD_NATIVE_POSIX dependency
native_posix was removed. Let's remove this dependency.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-07-19 09:38:23 +02:00
Alberto Escolar Piedras
68391f2ecf cmake: Remove NATIVE_APPLICATION support
This mode of building has been removed, so we do not need to support it
in the top level cmake file either.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-07-19 09:38:15 +02:00
Alberto Escolar Piedras
471706ec9a lib/libc/Kconfig: Simply C library choice dependencies
After removing NATIVE_APPLICATION, only NATIVE_LIBRARY is
possible with NATIVE_BUILD.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-07-19 09:38:15 +02:00
Alberto Escolar Piedras
cab1f00c12 soc/native/inf_clock/Kconfig: Simply dependencies
After removing NATIVE_APPLICATION, only NATIVE_LIBRARY is
possible with SOC_POSIX.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-07-19 09:38:15 +02:00
Alberto Escolar Piedras
cf9634cbd0 drivers/net offloaded_sockets: Remove redundant kconfig dependency
After removing NATIVE_APPLICATION, only NATIVE_LIBRARY is
possible with ARCH_POSIX.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-07-19 09:38:15 +02:00
Alberto Escolar Piedras
0acebf7135 drivers/bluetooth/userchan: Remove NATIVE_APPLICATION support
It is not possible to build anymore in that mode, so we do not
need to support it in this driver cmake files.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-07-19 09:38:15 +02:00
Alberto Escolar Piedras
2c4288ecec drivers/eeprom/eeprom_simulator: Remove NATIVE_APPLICATION support
It is not possible to build anymore in that mode, so we do not
need to support it in this driver cmake files.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-07-19 09:38:15 +02:00
Alberto Escolar Piedras
2b18fc8348 native_sim_reboot: Remove NATIVE_APPLICATION support
It is not possible to build anymore in that mode, so we do not
need to support it in this component.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-07-19 09:38:15 +02:00
Alberto Escolar Piedras
e6dbe45304 drivers fake_entropy_native_sim: Remove NATIVE_APPLICATION support
It is not possible to build anymore in that mode, so we do not
need to support it in this driver cmake files.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-07-19 09:38:15 +02:00
Alberto Escolar Piedras
e7d228a2b1 drivers/flash: Remove NATIVE_APPLICATION support
It is not possible to build anymore in that mode, so we do not
need to support it in this driver cmake files.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-07-19 09:38:15 +02:00
Alberto Escolar Piedras
8270444a4d subsys/fs/fuse_fs_access: Remove NATIVE_APPLICATION support
It is not possible to build anymore in that mode, so we do not
need to support it in this driver cmake files.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-07-19 09:38:15 +02:00
Alberto Escolar Piedras
7e1f2ffe00 boards/native docs: Remove note on NATIVE_APPLICATION
As we do not include any support in tree for this mode, we do not need
to warn in the documentation that it does not apply to it.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-07-19 09:38:15 +02:00
Alberto Escolar Piedras
f5bc01beae include/zephyr/linker/common-rom: Remove NATIVE_APPLICATION support
It is not possible to build anymore in that mode, so we do not
need to support building the constructors and initialization arrarys
in a way that support it.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-07-19 09:38:15 +02:00
Alberto Escolar Piedras
af750b2b41 subsys/tracing/backend_posix: Remove NATIVE_APPLICATION support
It is not possible to build anymore in that mode, so we do not
need to support it in this driver cmake files.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-07-19 09:38:15 +02:00
Alberto Escolar Piedras
13f1e92037 drivers/serial/TTY & PTTY: Remove NATIVE_APPLICATION support
It is not possible to build anymore in that mode, so we do not
need to support it in this driver cmake files.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-07-19 09:38:15 +02:00
Alberto Escolar Piedras
6e923834e6 drivers/input sdl & evdev: Remove NATIVE_APPLICATION support
It is not possible to build anymore in that mode, so we do not
need to support it in this driver cmake files.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-07-19 09:38:15 +02:00
Alberto Escolar Piedras
0ec02c1873 drivers/gpio/sdl: Remove NATIVE_APPLICATION support
It is not possible to build anymore in that mode, so we do not
need to support it in this driver cmake files.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-07-19 09:38:15 +02:00
Alberto Escolar Piedras
0d87d5f5b4 drivers/ethernet/native_tap: Remove NATIVE_APPLICATION support
It is not possible to build anymore in that mode, so we do not
need to support it in this driver cmake files.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-07-19 09:38:15 +02:00
Alberto Escolar Piedras
848e5c53b9 drivers/display sdl: Remove NATIVE_APPLICATION support
It is not possible to build anymore in that mode, so we do not
need to support it in this driver cmake files.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-07-19 09:38:15 +02:00
Alberto Escolar Piedras
e7e8216661 drivers/can/can_native_linux: Remove NATIVE_APPLICATION support
It is not possible to build anymore in that mode, so we do not
need to support it in this driver cmake files.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-07-19 09:38:15 +02:00
Alberto Escolar Piedras
86d8853fd5 boards native SDL integration: Remove NATIVE_APPLICATION support
It is not possible to build anymore in that mode, so we do not
need to support it in this driver cmake files.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-07-19 09:38:15 +02:00
Alberto Escolar Piedras
e150ffb92c arch/posix: Remove support for CONFIG_NATIVE_APPLICATION
CONFIG_NATIVE_APPLICATION, which represents the way in which
native_posix and its kin were built, was deprecated in 4.1 after the
introduction of native_sim and CONFIG_NATIVE_LIBRARY.

We remove support for it now for 4.3.

Let's remove the architecture layer adaptation code and cmake support.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-07-19 09:38:15 +02:00
Alberto Escolar Piedras
35ba7dbdf7 tests/lib/c_lib/thrd: Remove filter on NATIVE_APPLICATION
It is not possible to build anymore in that mode, so this filter
is not needed.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-07-19 09:38:15 +02:00
Alberto Escolar Piedras
d4c52b2ac4 samples/posix/philosophers: Remove filter on NATIVE_APPLICATION
It is not possible to build anymore in that mode, so this filter
is not needed.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-07-19 09:38:15 +02:00
Alberto Escolar Piedras
0cb474a338 include toolchain mwdt.h: Fix old comment
This ifdef was changed to use another kconfig option, but
the comment in the endif was forgotten, let's fix it.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-07-19 09:38:15 +02:00
Alberto Escolar Piedras
e5db1f7f4a Kconfig: Remove NATIVE_APPLICATION option
CONFIG_NATIVE_APPLICATION, which represents the way in which
native_posix and its kin were built, was deprecated in 4.1 after the
introduction of native_sim and CONFIG_NATIVE_LIBRARY.

We remove support for it now for 4.3.

Let's remove the kconfig option and all dependencies in the kconfig
tree.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-07-19 09:38:15 +02:00
16647 changed files with 634512 additions and 180220 deletions

View File

@@ -29,3 +29,4 @@
--ignore ENOSYS
--ignore IS_ENABLED_CONFIG
--ignore EXPORT_SYMBOL
--ignore COMPARISON_TO_NULL

View File

@@ -86,6 +86,10 @@ indent_size = 8
[COMMIT_EDITMSG]
max_line_length = 75
# Patches
[{*.patch,*.diff}]
trim_trailing_whitespace = false
# Kconfig
[Kconfig*]
indent_style = tab

View File

@@ -1,4 +1,4 @@
name: Pull Request Assigner
name: Pull Request/Issue Assigner
on:
pull_request_target:
@@ -20,27 +20,38 @@ permissions:
jobs:
assignment:
name: Pull Request Assignment
name: Pull Request/Issue Assignment
if: github.event.pull_request.draft == false
runs-on: ubuntu-24.04
permissions:
pull-requests: write # to add assignees to pull requests
issues: write # to add assignees to issues
steps:
- name: Check out source code
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with:
fetch-depth: 0
persist-credentials: false
- name: Set up Python
uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5.6.0
uses: zephyrproject-rtos/action-python-env@ace91a63fd503cd618ff1eb83fbcf302dabd7d44 # main
with:
python-version: 3.12
cache: pip
cache-dependency-path: scripts/requirements-actions.txt
- name: Install Python packages
- name: Fetch west.yml from pull request
if: >
github.event_name == 'pull_request_target'
run: |
pip install -r scripts/requirements-actions.txt --require-hashes
git fetch origin pull/${{ github.event.pull_request.number }}/merge
git show FETCH_HEAD:west.yml > pr_west.yml
- name: west setup
if: >
github.event_name == 'pull_request_target'
run: |
git config --global user.email "you@example.com"
git config --global user.name "Your Name"
west init -l . || true
- name: Run assignment script
env:
@@ -51,14 +62,13 @@ jobs:
FLAGS+=" -r ${{ github.event.repository.name }}"
FLAGS+=" -M MAINTAINERS.yml"
if [ "${{ github.event_name }}" = "pull_request_target" ]; then
FLAGS+=" -P ${{ github.event.pull_request.number }}"
FLAGS+=" -P ${{ github.event.pull_request.number }} --updated-manifest pr_west.yml"
elif [ "${{ github.event_name }}" = "issues" ]; then
FLAGS+=" -I ${{ github.event.issue.number }}"
FLAGS+=" -I ${{ github.event.issue.number }}"
elif [ "${{ github.event_name }}" = "schedule" ]; then
FLAGS+=" --modules"
FLAGS+=" --modules"
else
echo "Unknown event: ${{ github.event_name }}"
exit 1
fi
python3 scripts/set_assignees.py $FLAGS

View File

@@ -26,10 +26,10 @@ jobs:
steps:
- name: Check out source code
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
- name: Set up Python
uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5.6.0
uses: actions/setup-python@e797f83bcb11b83ae66e0230d6156d7c80228e7c # v6.0.0
with:
python-version: 3.12
cache: pip

View File

@@ -42,7 +42,7 @@ jobs:
runs-on:
group: zephyr-runner-v2-linux-x64-4xlarge
container:
image: ghcr.io/zephyrproject-rtos/ci-repo-cache:v0.28.4.20250818
image: ghcr.io/zephyrproject-rtos/ci-repo-cache:v0.28.6.20251003
options: '--entrypoint /bin/bash'
env:
ZEPHYR_TOOLCHAIN_VARIANT: zephyr
@@ -74,7 +74,7 @@ jobs:
git remote set-url origin ${GITHUB_SERVER_URL}/${GITHUB_REPOSITORY}
- name: Checkout
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with:
fetch-depth: 0
@@ -97,8 +97,12 @@ jobs:
echo "ZEPHYR_SDK_INSTALL_DIR=/opt/toolchains/zephyr-sdk-$( cat SDK_VERSION )" >> $GITHUB_ENV
- name: Install Python packages
run: |
pip install -r scripts/requirements-actions.txt --require-hashes
- name: Check common triggering files
uses: tj-actions/changed-files@ed68ef82c095e0d48ec87eccea555d944a631a4c # v46.0.5
uses: tj-actions/changed-files@24d32ffd492484c1d75e0c0b894501ddb9d30d62 # v47.0.0
id: check-common-files
with:
files: |
@@ -117,7 +121,7 @@ jobs:
modules/hal_nordic/**
- name: Check if Bluethooth files changed
uses: tj-actions/changed-files@ed68ef82c095e0d48ec87eccea555d944a631a4c # v46.0.5
uses: tj-actions/changed-files@24d32ffd492484c1d75e0c0b894501ddb9d30d62 # v47.0.0
id: check-bluetooth-files
with:
files: |
@@ -127,7 +131,7 @@ jobs:
tests/bsim/bluetooth/
- name: Check if Networking files changed
uses: tj-actions/changed-files@ed68ef82c095e0d48ec87eccea555d944a631a4c # v46.0.5
uses: tj-actions/changed-files@24d32ffd492484c1d75e0c0b894501ddb9d30d62 # v47.0.0
id: check-networking-files
with:
files: |
@@ -140,7 +144,7 @@ jobs:
include/zephyr/net/ieee802154*
- name: Check if UART files changed
uses: tj-actions/changed-files@ed68ef82c095e0d48ec87eccea555d944a631a4c # v46.0.5
uses: tj-actions/changed-files@24d32ffd492484c1d75e0c0b894501ddb9d30d62 # v47.0.0
id: check-uart-files
with:
files: |

View File

@@ -8,7 +8,6 @@ name: Bug Snapshot
on:
workflow_dispatch:
branches: [main]
schedule:
# Run daily at 00:05
- cron: '5 00 * * *'
@@ -20,14 +19,14 @@ jobs:
make_bugs_pickle:
name: Make bugs pickle
runs-on: ubuntu-24.04
if: github.repository_owner == 'zephyrproject-rtos'
if: github.repository_owner == 'zephyrproject-rtos' && github.ref == 'refs/heads/main'
steps:
- name: Checkout
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
- name: Set up Python
uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5.6.0
uses: actions/setup-python@e797f83bcb11b83ae66e0230d6156d7c80228e7c # v6.0.0
with:
python-version: 3.12
cache: pip
@@ -52,7 +51,7 @@ jobs:
echo "BUGS_PICKLE_PATH=${BUGS_PICKLE_PATH}" >> ${GITHUB_ENV}
- name: Configure AWS Credentials
uses: aws-actions/configure-aws-credentials@b47578312673ae6fa5b5096b330d9fbac3d116df # v4.2.1
uses: aws-actions/configure-aws-credentials@a03048d87541d1d9fcf2ecf528a4a65ba9bd7838 # v5.0.0
with:
aws-access-key-id: ${{ vars.AWS_BUILDS_ZEPHYR_BUG_SNAPSHOT_ACCESS_KEY_ID }}
aws-secret-access-key: ${{ secrets.AWS_BUILDS_ZEPHYR_BUG_SNAPSHOT_SECRET_ACCESS_KEY }}

View File

@@ -18,7 +18,7 @@ jobs:
runs-on:
group: zephyr-runner-v2-linux-x64-4xlarge
container:
image: ghcr.io/zephyrproject-rtos/ci-repo-cache:v0.28.4.20250818
image: ghcr.io/zephyrproject-rtos/ci-repo-cache:v0.28.6.20251003
options: '--entrypoint /bin/bash'
strategy:
fail-fast: false
@@ -53,7 +53,7 @@ jobs:
git remote set-url origin ${GITHUB_SERVER_URL}/${GITHUB_REPOSITORY}
- name: Checkout
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with:
fetch-depth: 0
persist-credentials: false
@@ -86,6 +86,10 @@ jobs:
gcc --version
ls -la
- name: Install Python packages
run: |
pip install -r scripts/requirements-actions.txt --require-hashes
- name: Set up ccache
run: |
mkdir -p ${CCACHE_DIR}
@@ -109,7 +113,7 @@ jobs:
export ZEPHYR_BASE=${PWD}
export ZEPHYR_TOOLCHAIN_VARIANT=llvm
./scripts/twister -p native_sim --no-detailed-test-id --force-color --inline-logs -M -N -v --retry-failed 2 \
./scripts/twister -p native_sim --force-color --inline-logs -M -N -v --retry-failed 2 \
-T tests --subset ${{matrix.subset}}/2 -j 16
- name: Print ccache stats
@@ -136,18 +140,18 @@ jobs:
if: (success() || failure())
steps:
- name: Checkout
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with:
fetch-depth: 0
persist-credentials: false
- name: Download Artifacts
uses: actions/download-artifact@d3f86a106a0bac45b974a628896c90dbdf5c8093 # v4.3.0
uses: actions/download-artifact@634f93cb2916e3fdff6788551b99b062d0335ce0 # v5.0.0
with:
path: artifacts
- name: Set up Python
uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5.6.0
uses: actions/setup-python@e797f83bcb11b83ae66e0230d6156d7c80228e7c # v6.0.0
with:
python-version: 3.12
cache: pip
@@ -159,7 +163,7 @@ jobs:
- name: Merge Test Results
run: |
junitparser merge artifacts/*/twister.xml junit.xml
junitparser merge --glob 'artifacts/*/twister.xml' 'artifacts/*/*/twister.xml' junit.xml
junit2html junit.xml junit-clang.html
- name: Upload Unit Test Results in HTML

View File

@@ -1,8 +1,11 @@
name: Code Coverage with codecov
on:
schedule:
- cron: '25 06,18 * * *'
push:
branches:
- main
- v*-branch
- collab-*
permissions:
contents: read
@@ -17,7 +20,7 @@ jobs:
runs-on:
group: zephyr-runner-v2-linux-x64-4xlarge
container:
image: ghcr.io/zephyrproject-rtos/ci-repo-cache:v0.28.4.20250818
image: ghcr.io/zephyrproject-rtos/ci-repo-cache:v0.28.6.20251003
options: '--entrypoint /bin/bash'
strategy:
fail-fast: false
@@ -64,12 +67,12 @@ jobs:
git remote set-url origin ${GITHUB_SERVER_URL}/${GITHUB_REPOSITORY}
- name: checkout
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with:
fetch-depth: 0
- name: Set up Python
uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5.6.0
uses: actions/setup-python@e797f83bcb11b83ae66e0230d6156d7c80228e7c # v6.0.0
with:
python-version: 3.12
cache: pip
@@ -112,6 +115,24 @@ jobs:
-T tests --coverage-tool gcovr -xCONFIG_TEST_EXTRA_STACK_SIZE=4096 -e nano \
--timeout-multiplier 2
- name: Build Doxygen Coverage
if: matrix.platform == 'unit_testing'
run: |
pip install -r doc/requirements.txt --require-hashes
sudo apt-get update
sudo apt-get install -y graphviz # dot is needed but currently missing from the Docker image
cmake -B doc/_build -S doc
cmake --build doc/_build --target doxygen-coverage
- name: Upload Doxygen Coverage Results
if: matrix.platform == 'unit_testing'
uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4.6.2
with:
name: doxygen-coverage-results
path: |
doc/_build/new.info
doc/_build/coverage-report
- name: Print ccache stats
if: always()
run: |
@@ -140,12 +161,12 @@ jobs:
steps:
- name: checkout
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with:
fetch-depth: 0
- name: Set up Python
uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5.6.0
uses: actions/setup-python@e797f83bcb11b83ae66e0230d6156d7c80228e7c # v6.0.0
with:
python-version: 3.12
cache: pip
@@ -156,7 +177,7 @@ jobs:
pip install -r scripts/requirements-actions.txt --require-hashes
- name: Download Artifacts
uses: actions/download-artifact@d3f86a106a0bac45b974a628896c90dbdf5c8093 # v4.3.0
uses: actions/download-artifact@634f93cb2916e3fdff6788551b99b062d0335ce0 # v5.0.0
with:
path: coverage/reports
@@ -230,12 +251,25 @@ jobs:
coverage/reports/coverage-report-${{ steps.run_date.outputs.run_date_short }}.json
coverage/reports/coverage-report-${{ steps.run_date.outputs.run_date_short }}.xlsx
- name: Upload coverage to Codecov
- name: Upload test coverage to Codecov
if: always()
uses: codecov/codecov-action@18283e04ce6e62d37312384ff67231eb8fd56d24 # v5.4.3
uses: codecov/codecov-action@5a1091511ad55cbe89839c7260b706298ca349f7 # v5.5.1
with:
env_vars: OS,PYTHON
fail_ci_if_error: false
verbose: true
token: ${{ secrets.CODECOV_TOKEN }}
files: coverage/reports/merged.xml
flags: unittests-coverage
- name: Upload Doxygen coverage to Codecov
if: always()
uses: codecov/codecov-action@5a1091511ad55cbe89839c7260b706298ca349f7 # v5.5.1
with:
env_vars: OS,PYTHON
fail_ci_if_error: false
verbose: true
token: ${{ secrets.CODECOV_TOKEN }}
files: coverage/reports/doxygen-coverage-results/new.info
disable_search: true
flags: doxygen-coverage

View File

@@ -36,10 +36,10 @@ jobs:
config: ./.github/codeql/codeql-js-config.yml
steps:
- name: Checkout
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
- name: Initialize CodeQL
uses: github/codeql-action/init@181d5eefc20863364f96762470ba6f862bdef56b # v3.29.2
uses: github/codeql-action/init@64d10c13136e1c5bce3e5fbde8d4906eeaafc885 # v3.30.6
with:
languages: ${{ matrix.language }}
build-mode: ${{ matrix.build-mode }}
@@ -53,6 +53,6 @@ jobs:
exit 0
- name: Perform CodeQL Analysis
uses: github/codeql-action/analyze@181d5eefc20863364f96762470ba6f862bdef56b # v3.29.2
uses: github/codeql-action/analyze@64d10c13136e1c5bce3e5fbde8d4906eeaafc885 # v3.30.6
with:
category: "/language:${{matrix.language}}"

View File

@@ -11,13 +11,13 @@ jobs:
name: Run coding guidelines checks on patch series (PR)
steps:
- name: Checkout the code
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with:
ref: ${{ github.event.pull_request.head.sha }}
fetch-depth: 0
- name: Set up Python
uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5.6.0
uses: actions/setup-python@e797f83bcb11b83ae66e0230d6156d7c80228e7c # v6.0.0
with:
python-version: 3.12
cache: pip

View File

@@ -21,7 +21,7 @@ jobs:
echo "$HOME/.local/bin" >> $GITHUB_PATH
- name: Checkout the code
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with:
ref: ${{ github.event.pull_request.head.sha }}
fetch-depth: 0
@@ -44,7 +44,7 @@ jobs:
git log --pretty=oneline | head -n 10
- name: Set up Python
uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5.6.0
uses: actions/setup-python@e797f83bcb11b83ae66e0230d6156d7c80228e7c # v6.0.0
with:
python-version: 3.12
cache: pip
@@ -60,6 +60,17 @@ jobs:
west config manifest.group-filter -- +ci,-optional
west update -o=--depth=1 -n 2>&1 1> west.update.log || west update -o=--depth=1 -n 2>&1 1> west.update2.log
- name: Setup Node.js
uses: actions/setup-node@2028fbc5c25fe9cf00d9f06a71cc4710d4507903 # v6.0.0
with:
node-version: "lts/*"
cache: npm
check-latest: true
cache-dependency-path: ./scripts/ci/package-lock.json
- name: Install Node dependencies
run: npm --prefix ./scripts/ci ci
- name: Run Compliance Tests
continue-on-error: true
id: compliance
@@ -86,13 +97,21 @@ jobs:
name: compliance.xml
path: compliance.xml
- name: Upload dts linter patch
uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4.6.2
continue-on-error: true
if: hashFiles('dts_linter.patch') != ''
with:
name: dts_linter.patch
path: dts_linter.patch
- name: check-warns
run: |
if [[ ! -s "compliance.xml" ]]; then
exit 1;
fi
warns=("ClangFormat")
warns=("ClangFormat" "LicenseAndCopyrightCheck")
files=($(./scripts/ci/check_compliance.py -l))
for file in "${files[@]}"; do
@@ -117,8 +136,3 @@ jobs:
echo "You can run this step locally with the ./scripts/ci/check_compliance.py script."
exit 1;
fi
if [ "${{ steps.pr_description.outcome }}" == "failure" ]; then
echo "PR description cannot be empty"
exit 1;
fi

View File

@@ -20,19 +20,19 @@ jobs:
steps:
- name: Configure AWS Credentials
uses: aws-actions/configure-aws-credentials@b47578312673ae6fa5b5096b330d9fbac3d116df # v4.2.1
uses: aws-actions/configure-aws-credentials@a03048d87541d1d9fcf2ecf528a4a65ba9bd7838 # v5.0.0
with:
aws-access-key-id: ${{ vars.AWS_TESTING_ACCESS_KEY_ID }}
aws-secret-access-key: ${{ secrets.AWS_TESTING_SECRET_ACCESS_KEY }}
aws-region: us-east-1
- name: checkout
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with:
fetch-depth: 0
- name: Set up Python
uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5.6.0
uses: actions/setup-python@e797f83bcb11b83ae66e0230d6156d7c80228e7c # v6.0.0
with:
python-version: 3.12
cache: pip

View File

@@ -33,10 +33,10 @@ jobs:
os: [ubuntu-22.04, macos-14, windows-2022]
steps:
- name: checkout
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5.6.0
uses: actions/setup-python@e797f83bcb11b83ae66e0230d6156d7c80228e7c # v6.0.0
with:
python-version: ${{ matrix.python-version }}
cache: pip

View File

@@ -4,9 +4,9 @@
name: Documentation Build
on:
schedule:
- cron: '0 */3 * * *'
push:
branches:
- main
tags:
- v*
pull_request:
@@ -17,7 +17,7 @@ permissions:
env:
DOXYGEN_VERSION: 1.14.0
DOXYGEN_MD5SUM: e761a5097ae20ecccfd02041925f102a
JOB_COUNT: 4
JOB_COUNT: 8
jobs:
doc-file-check:
@@ -27,12 +27,12 @@ jobs:
file_check: ${{ steps.check-doc-files.outputs.any_modified }}
steps:
- name: checkout
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with:
ref: ${{ github.event.pull_request.head.sha }}
fetch-depth: 0
- name: Check if Documentation related files changed
uses: tj-actions/changed-files@ed68ef82c095e0d48ec87eccea555d944a631a4c # v46.0.5
uses: tj-actions/changed-files@24d32ffd492484c1d75e0c0b894501ddb9d30d62 # v47.0.0
id: check-doc-files
with:
files: |
@@ -56,71 +56,75 @@ jobs:
needs: [doc-file-check]
if: >
needs.doc-file-check.outputs.file_check == 'true' || github.event_name != 'pull_request'
runs-on: ubuntu-24.04
timeout-minutes: 90
runs-on:
group: zephyr-runner-v2-linux-x64-4xlarge
container:
image: ghcr.io/zephyrproject-rtos/ci-repo-cache:v0.28.6.20251003
options: '--entrypoint /bin/bash'
timeout-minutes: 60
concurrency:
group: doc-build-html-${{ github.ref }}
cancel-in-progress: true
env:
BASE_REF: ${{ github.base_ref }}
steps:
- name: install-pkgs
run: |
sudo apt-get update
sudo apt-get install -y wget python3-pip git ninja-build graphviz lcov
wget --no-verbose "https://github.com/doxygen/doxygen/releases/download/Release_${DOXYGEN_VERSION//./_}/doxygen-${DOXYGEN_VERSION}.linux.bin.tar.gz"
echo "${DOXYGEN_MD5SUM} doxygen-${DOXYGEN_VERSION}.linux.bin.tar.gz" | md5sum -c
if [ $? -ne 0 ]; then
echo "Failed to verify doxygen tarball"
exit 1
fi
sudo tar xf doxygen-${DOXYGEN_VERSION}.linux.bin.tar.gz -C /opt
echo "/opt/doxygen-${DOXYGEN_VERSION}/bin" >> $GITHUB_PATH
echo "${HOME}/.local/bin" >> $GITHUB_PATH
- name: checkout
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
- name: Print cloud service information
run: |
echo "ZEPHYR_RUNNER_CLOUD_PROVIDER = ${ZEPHYR_RUNNER_CLOUD_PROVIDER}"
echo "ZEPHYR_RUNNER_CLOUD_NODE = ${ZEPHYR_RUNNER_CLOUD_NODE}"
echo "ZEPHYR_RUNNER_CLOUD_POD = ${ZEPHYR_RUNNER_CLOUD_POD}"
- name: Apply container owner mismatch workaround
run: |
# FIXME: The owner UID of the GITHUB_WORKSPACE directory may not
# match the container user UID because of the way GitHub
# Actions runner is implemented. Remove this workaround when
# GitHub comes up with a fundamental fix for this problem.
git config --global --add safe.directory ${GITHUB_WORKSPACE}
- name: Clone cached Zephyr repository
continue-on-error: true
run: |
git clone --shared /repo-cache/zephyrproject/zephyr .
git remote set-url origin ${GITHUB_SERVER_URL}/${GITHUB_REPOSITORY}
- name: Checkout
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with:
ref: ${{ github.event.pull_request.head.sha }}
fetch-depth: 0
path: zephyr
- name: Rebase
if: github.event_name == 'pull_request'
continue-on-error: true
env:
BASE_REF: ${{ github.base_ref }}
PR_HEAD: ${{ github.event.pull_request.head.sha }}
working-directory: zephyr
- name: Environment Setup
run: |
git config --global user.email "actions@zephyrproject.org"
git config --global user.name "Github Actions"
rm -fr ".git/rebase-apply"
rm -fr ".git/rebase-merge"
git rebase origin/${BASE_REF}
git clean -f -d
git log --graph --oneline HEAD...${PR_HEAD}
if [ "${{github.event_name}}" = "pull_request" ]; then
git config --global user.email "bot@zephyrproject.org"
git config --global user.name "Zephyr Builder"
rm -fr ".git/rebase-apply"
rm -fr ".git/rebase-merge"
git rebase origin/${BASE_REF}
git clean -f -d
git log --pretty=oneline | head -n 10
fi
echo "$HOME/.local/bin" >> $GITHUB_PATH
echo "$HOME/.cargo/bin" >> $GITHUB_PATH
- name: Set up Python
uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5.6.0
with:
python-version: 3.12
cache: pip
cache-dependency-path: doc/requirements.txt
west init -l . || true
west config --global update.narrow true
west update --path-cache /repo-cache/zephyrproject 2>&1 1> west.update.log || west update --path-cache /repo-cache/zephyrproject 2>&1 1> west.update.log || ( rm -rf ../modules ../bootloader ../tools && west update --path-cache /repo-cache/zephyrproject)
west forall -c 'git reset --hard HEAD'
- name: Setup Zephyr project
uses: zephyrproject-rtos/action-zephyr-setup@b2453c72966ee67b1433be22b250348d48283286 # v1.0.7
with:
app-path: zephyr
toolchains: 'all'
echo "ZEPHYR_SDK_INSTALL_DIR=/opt/toolchains/zephyr-sdk-$( cat SDK_VERSION )" >> $GITHUB_ENV
- name: install-pip
working-directory: zephyr
- name: Install Python packages required for documentation build
run: |
pip install -r scripts/requirements-actions.txt --require-hashes
pip install -r doc/requirements.txt --require-hashes
- name: build-docs
- name: Build HTML documentation
shell: bash
working-directory: zephyr
run: |
if [[ "$GITHUB_REF" =~ "refs/tags/v" ]]; then
DOC_TAG="release"
@@ -145,26 +149,26 @@ jobs:
lcov --remove doc-coverage.info \*/deprecated > new.info
genhtml --no-function-coverage --no-branch-coverage new.info -o coverage-report
- name: compress-docs
working-directory: zephyr
- name: Compress documentation build artifacts
run: |
tar --use-compress-program="xz -T0" -cf html-output.tar.xz --exclude html/_sources --exclude html/doxygen/xml --directory=doc/_build html
tar --use-compress-program="xz -T0" -cf api-output.tar.xz --directory=doc/_build html/doxygen/html
tar --use-compress-program="xz -T0" -cf api-coverage.tar.xz coverage-report
- name: upload-build
- name: Upload HTML output
uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4.6.2
with:
name: html-output
path: zephyr/html-output.tar.xz
path: html-output.tar.xz
- name: upload-api-coverage
- name: Upload Doxygen coverage artifacts
uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4.6.2
with:
name: api-coverage
path: zephyr/api-coverage.tar.xz
path: api-coverage.tar.xz
- name: process-pr
- name: Summarize PR documentation URLs
if: github.event_name == 'pull_request'
run: |
REPO_NAME="${{ github.event.repository.name }}"
@@ -178,7 +182,7 @@ jobs:
echo "API Documentation will be available shortly at: ${API_DOC_URL}" >> $GITHUB_STEP_SUMMARY
echo "API Coverage Report will be available shortly at: ${API_COVERAGE_URL}" >> $GITHUB_STEP_SUMMARY
- name: upload-pr-number
- name: Upload PR number
uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4.6.2
if: github.event_name == 'pull_request'
with:
@@ -198,12 +202,12 @@ jobs:
steps:
- name: checkout
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with:
path: zephyr
- name: Set up Python
uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5.6.0
uses: actions/setup-python@e797f83bcb11b83ae66e0230d6156d7c80228e7c # v6.0.0
with:
python-version: 3.12
cache: pip
@@ -226,10 +230,11 @@ jobs:
echo "/opt/doxygen-${DOXYGEN_VERSION}/bin" >> $GITHUB_PATH
- name: Setup Zephyr project
uses: zephyrproject-rtos/action-zephyr-setup@b2453c72966ee67b1433be22b250348d48283286 # v1.0.7
uses: zephyrproject-rtos/action-zephyr-setup@c125c5ebeeadbd727fa740b407f862734af1e52a # v1.0.9
with:
app-path: zephyr
toolchains: 'arm-zephyr-eabi'
enable-ccache: false
- name: install-pip-pkgs
working-directory: zephyr

View File

@@ -33,7 +33,7 @@ jobs:
- name: Load PR number
if: steps.download-artifacts.outputs.found_artifact == 'true'
uses: actions/github-script@60a0d83039c74a4aee543508d2ffcb1c3799cdea # v7.0.1
uses: actions/github-script@ed597411d8f924073f98dfc5c65a23a2325f34cd # v8.0.0
with:
script: |
let fs = require("fs");
@@ -66,7 +66,7 @@ jobs:
- name: Configure AWS Credentials
if: steps.download-artifacts.outputs.found_artifact == 'true'
uses: aws-actions/configure-aws-credentials@b47578312673ae6fa5b5096b330d9fbac3d116df # v4.2.1
uses: aws-actions/configure-aws-credentials@a03048d87541d1d9fcf2ecf528a4a65ba9bd7838 # v5.0.0
with:
aws-access-key-id: ${{ vars.AWS_BUILDS_ZEPHYR_PR_ACCESS_KEY_ID }}
aws-secret-access-key: ${{ secrets.AWS_BUILDS_ZEPHYR_PR_SECRET_ACCESS_KEY }}

View File

@@ -40,7 +40,7 @@ jobs:
fi
- name: Configure AWS Credentials
uses: aws-actions/configure-aws-credentials@b47578312673ae6fa5b5096b330d9fbac3d116df # v4.2.1
uses: aws-actions/configure-aws-credentials@a03048d87541d1d9fcf2ecf528a4a65ba9bd7838 # v5.0.0
with:
aws-access-key-id: ${{ vars.AWS_DOCS_ACCESS_KEY_ID }}
aws-secret-access-key: ${{ secrets.AWS_DOCS_SECRET_ACCESS_KEY }}

View File

@@ -5,6 +5,7 @@ on:
- '.github/workflows/errno.yml'
- 'lib/libc/minimal/include/errno.h'
- 'scripts/ci/errno.py'
- 'SDK_VERSION'
permissions:
contents: read
@@ -12,26 +13,24 @@ permissions:
jobs:
check-errno:
runs-on: ubuntu-24.04
container:
image: ghcr.io/zephyrproject-rtos/ci:v0.28.4
steps:
- name: Apply container owner mismatch workaround
run: |
# FIXME: The owner UID of the GITHUB_WORKSPACE directory may not
# match the container user UID because of the way GitHub
# Actions runner is implemented. Remove this workaround when
# GitHub comes up with a fundamental fix for this problem.
git config --global --add safe.directory ${GITHUB_WORKSPACE}
- name: checkout
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with:
path: zephyr
- name: Environment Setup
run: |
echo "ZEPHYR_SDK_INSTALL_DIR=/opt/toolchains/zephyr-sdk-$( cat SDK_VERSION )" >> $GITHUB_ENV
- name: Setup Zephyr project
uses: zephyrproject-rtos/action-zephyr-setup@c125c5ebeeadbd727fa740b407f862734af1e52a # v1.0.9
with:
app-path: zephyr
toolchains: 'arm-zephyr-eabi'
west-group-filter: -hal,-tools,-bootloader,-babblesim
west-project-filter: -nrf_hw_models
enable-ccache: false
- name: Run errno.py
working-directory: zephyr
run: |
export ZEPHYR_SDK_INSTALL_DIR=${{ github.workspace }}/zephyr-sdk
export ZEPHYR_BASE=${PWD}
./scripts/ci/errno.py

View File

@@ -28,7 +28,7 @@ jobs:
group: zephyr-runner-v2-linux-x64-4xlarge
if: github.repository_owner == 'zephyrproject-rtos'
container:
image: ghcr.io/zephyrproject-rtos/ci-repo-cache:v0.28.4.20250818
image: ghcr.io/zephyrproject-rtos/ci-repo-cache:v0.28.6.20251003
options: '--entrypoint /bin/bash'
defaults:
run:
@@ -62,13 +62,13 @@ jobs:
sudo apt-get install -y python3-venv
- name: checkout
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with:
ref: ${{ github.event.pull_request.head.sha }}
fetch-depth: 0
- name: Set up Python
uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5.6.0
uses: actions/setup-python@e797f83bcb11b83ae66e0230d6156d7c80228e7c # v6.0.0
with:
python-version: 3.12
cache: pip
@@ -89,7 +89,7 @@ jobs:
west update 2>&1 1> west.update.log || west update 2>&1 1> west.update2.log
- name: Configure AWS Credentials
uses: aws-actions/configure-aws-credentials@b47578312673ae6fa5b5096b330d9fbac3d116df # v4.2.1
uses: aws-actions/configure-aws-credentials@a03048d87541d1d9fcf2ecf528a4a65ba9bd7838 # v5.0.0
with:
aws-access-key-id: ${{ vars.AWS_TESTING_ACCESS_KEY_ID }}
aws-secret-access-key: ${{ secrets.AWS_TESTING_SECRET_ACCESS_KEY }}

View File

@@ -18,7 +18,7 @@ jobs:
issues: write # to comment on issues
steps:
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
- uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
- uses: zephyrproject-rtos/action-first-interaction@58853996b1ac504b8e0f6964301f369d2bb22e5c # v1.1.1+zephyr.6
with:
repo-token: ${{ secrets.GITHUB_TOKEN }}
@@ -45,7 +45,7 @@ jobs:
and update (by amending and force-pushing the commits) your pull request if necessary.
If you are stuck or need help please join us on [Discord](https://chat.zephyrproject.org/)
and ask your question there. Additionally, you can [escalate the review](https://docs.zephyrproject.org/latest/contribute/contributor_expectations.html#pr-review-escalation)
and ask your question there. Additionally, you can [escalate the review](https://docs.zephyrproject.org/latest/contribute/contributor_expectations.html#pr-technical-escalation)
when applicable. 😊
pr-merged-message: >

View File

@@ -28,11 +28,11 @@ jobs:
strategy:
fail-fast: false
matrix:
os: [ubuntu-22.04, ubuntu-24.04, macos-13, macos-14, windows-2022]
os: [ubuntu-22.04, ubuntu-24.04, ubuntu-24.04-arm, macos-14, windows-2022]
runs-on: ${{ matrix.os }}
steps:
- name: Checkout
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with:
path: zephyr
fetch-depth: 0
@@ -54,15 +54,16 @@ jobs:
git log --graph --oneline HEAD...${PR_HEAD}
- name: Set up Python
uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5.6.0
uses: actions/setup-python@e797f83bcb11b83ae66e0230d6156d7c80228e7c # v6.0.0
with:
python-version: 3.12
- name: Setup Zephyr project
uses: zephyrproject-rtos/action-zephyr-setup@b2453c72966ee67b1433be22b250348d48283286 # v1.0.7
uses: zephyrproject-rtos/action-zephyr-setup@c125c5ebeeadbd727fa740b407f862734af1e52a # v1.0.9
with:
app-path: zephyr
toolchains: aarch64-zephyr-elf:arc-zephyr-elf:arc64-zephyr-elf:arm-zephyr-eabi:mips-zephyr-elf:riscv64-zephyr-elf:sparc-zephyr-elf:x86_64-zephyr-elf:xtensa-dc233c_zephyr-elf:xtensa-sample_controller32_zephyr-elf:rx-zephyr-elf
ccache-cache-key: hw-${{ matrix.os }}
- name: Build firmware
working-directory: zephyr
@@ -72,8 +73,10 @@ jobs:
EXTRA_TWISTER_FLAGS="-P native_sim --build-only"
elif [ "${{ runner.os }}" = "Windows" ]; then
EXTRA_TWISTER_FLAGS="-P native_sim --short-build-path -O/tmp/twister-out"
elif [ "${{ runner.os }}-${{ runner.arch }}" == "Linux-ARM64" ]; then
EXTRA_TWISTER_FLAGS="--exclude-platform native_sim/native"
fi
./scripts/twister --runtime-artifact-cleanup --force-color --inline-logs -T samples/hello_world -T samples/cpp/hello_world -v $EXTRA_TWISTER_FLAGS
west twister --runtime-artifact-cleanup --force-color --inline-logs -T samples/hello_world -T samples/cpp/hello_world -v $EXTRA_TWISTER_FLAGS
- name: Upload artifacts
if: failure()

View File

@@ -45,7 +45,7 @@ jobs:
path: ${{ env.OUTPUT_FILE_NAME }}
- name: Configure AWS Credentials
uses: aws-actions/configure-aws-credentials@b47578312673ae6fa5b5096b330d9fbac3d116df # v4.2.1
uses: aws-actions/configure-aws-credentials@a03048d87541d1d9fcf2ecf528a4a65ba9bd7838 # v5.0.0
with:
aws-access-key-id: ${{ vars.AWS_TESTING_ACCESS_KEY_ID }}
aws-secret-access-key: ${{ secrets.AWS_TESTING_SECRET_ACCESS_KEY }}

View File

@@ -11,7 +11,7 @@ jobs:
name: Scan code for licenses
steps:
- name: Checkout the code
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with:
fetch-depth: 0
- name: Scan the code

View File

@@ -17,10 +17,10 @@ jobs:
steps:
- name: Check out source code
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
- name: Set up Python
uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5.6.0
uses: actions/setup-python@e797f83bcb11b83ae66e0230d6156d7c80228e7c # v6.0.0
with:
python-version: 3.12
cache: pip
@@ -30,14 +30,14 @@ jobs:
run: |
pip install -r scripts/requirements-actions.txt --require-hashes
- name: Fetch MAINTAINERS.yml from mainline
- name: Fetch MAINTAINERS.yml from pull request
run: |
git fetch origin main
git show origin/main:MAINTAINERS.yml > mainline_MAINTAINERS.yml
git fetch origin pull/${{ github.event.pull_request.number }}/merge
git show FETCH_HEAD:MAINTAINERS.yml > pr_MAINTAINERS.yml
- name: Check maintainer file changes
env:
GITHUB_TOKEN: ${{ secrets.ZB_PR_ASSIGNER_GITHUB_TOKEN }}
run: |
python ./scripts/ci/check_maintainer_changes.py \
--repo zephyrproject-rtos/zephyr mainline_MAINTAINERS.yml MAINTAINERS.yml
--repo zephyrproject-rtos/zephyr MAINTAINERS.yml pr_MAINTAINERS.yml

View File

@@ -13,36 +13,24 @@ jobs:
name: Manifest
steps:
- name: Checkout the code
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with:
path: zephyrproject/zephyr
ref: ${{ github.event.pull_request.head.sha }}
fetch-depth: 0
persist-credentials: false
- name: Set up Python
uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5.6.0
with:
python-version: 3.12
cache: pip
cache-dependency-path: scripts/requirements-actions.txt
- name: Install Python packages
run: |
cd zephyrproject/zephyr
pip install -r scripts/requirements-actions.txt --require-hashes
- name: west setup
env:
BASE_REF: ${{ github.base_ref }}
working-directory: zephyrproject/zephyr
run: |
pip install -r scripts/requirements-west.txt --require-hashes
git config --global user.email "you@example.com"
git config --global user.name "Your Name"
west init -l . || true
- name: Manifest
uses: zephyrproject-rtos/action-manifest@1729cded3fc798cf0de4a789c596dcb9c40eb14c # v1.9.1
uses: zephyrproject-rtos/action-manifest@09983f53d3d878791aa37a7755ae44d695f4c1e5 # v2.0.0
with:
github-token: ${{ secrets.GITHUB_TOKEN }}
manifest-path: 'west.yml'

View File

@@ -14,6 +14,6 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
- name: Ensure SHA pinned actions
uses: zgosalvez/github-actions-ensure-sha-pinned-actions@fc87bb5b5a97953d987372e74478de634726b3e5 # v3.0.25
uses: zgosalvez/github-actions-ensure-sha-pinned-actions@9e9574ef04ea69da568d6249bd69539ccc704e74 # v4.0.0

View File

@@ -19,10 +19,10 @@ jobs:
runs-on: ubuntu-24.04
steps:
- name: Checkout
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
- name: Set up Python
uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5.6.0
uses: actions/setup-python@e797f83bcb11b83ae66e0230d6156d7c80228e7c # v6.0.0
with:
python-version: 3.12
cache: pip
@@ -36,4 +36,7 @@ jobs:
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: |
python -u scripts/ci/do_not_merge.py -p "${{ github.event.pull_request.number }}"
python -u scripts/ci/do_not_merge.py \
-p "${{ github.event.pull_request.number }}" \
-o "${{ github.event.repository.owner.login }}" \
-r "${{ github.event.repository.name }}"

View File

@@ -32,10 +32,10 @@ jobs:
os: [ubuntu-24.04]
steps:
- name: checkout
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5.6.0
uses: actions/setup-python@e797f83bcb11b83ae66e0230d6156d7c80228e7c # v6.0.0
with:
python-version: ${{ matrix.python-version }}
cache: pip

View File

@@ -15,7 +15,7 @@ jobs:
permissions:
contents: write # to create GitHub release entry
steps:
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
- uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with:
fetch-depth: 0
@@ -26,7 +26,7 @@ jobs:
echo "TRIMMED_VERSION=${GITHUB_REF#refs/tags/v}" >> $GITHUB_OUTPUT
- name: REUSE Compliance Check
uses: fsfe/reuse-action@bb774aa972c2a89ff34781233d275075cbddf542 # v5.0.0
uses: fsfe/reuse-action@676e2d560c9a403aa252096d99fcab3e1132b0f5 # v6.0.0
with:
args: spdx -o zephyr-${{ steps.get_version.outputs.VERSION }}.spdx

View File

@@ -29,12 +29,12 @@ jobs:
steps:
- name: "Checkout code"
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with:
persist-credentials: false
- name: "Run analysis"
uses: ossf/scorecard-action@05b42c624433fc40578a4040d5cf5e36ddca8cde # v2.4.2
uses: ossf/scorecard-action@4eaacf0543bb3f2c246792bd56e8cdeffafb205a # v2.4.3
with:
results_file: results.sarif
results_format: sarif
@@ -56,6 +56,6 @@ jobs:
# Upload the results to GitHub's code scanning dashboard (optional).
# Commenting out will disable upload of results to your repo's Code Scanning dashboard
- name: "Upload to code-scanning"
uses: github/codeql-action/upload-sarif@181d5eefc20863364f96762470ba6f862bdef56b # v3.29.2
uses: github/codeql-action/upload-sarif@64d10c13136e1c5bce3e5fbde8d4906eeaafc885 # v3.30.6
with:
sarif_file: results.sarif

View File

@@ -32,7 +32,7 @@ jobs:
os: [ubuntu-24.04]
steps:
- name: checkout
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with:
ref: ${{ github.event.pull_request.head.sha }}
fetch-depth: 0
@@ -52,7 +52,7 @@ jobs:
git log --graph --oneline HEAD...${PR_HEAD}
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5.6.0
uses: actions/setup-python@e797f83bcb11b83ae66e0230d6156d7c80228e7c # v6.0.0
with:
python-version: ${{ matrix.python-version }}
cache: pip

View File

@@ -2,7 +2,6 @@ name: Stale Workflow Queue Cleanup
on:
workflow_dispatch:
branches: [main]
schedule:
# everyday at 15:00
- cron: '0 15 * * *'
@@ -18,6 +17,7 @@ jobs:
cleanup:
name: Cleanup
runs-on: ubuntu-24.04
if: github.ref == 'refs/heads/main'
permissions:
actions: write # to delete stale workflow runs

View File

@@ -16,7 +16,7 @@ jobs:
issues: write # to comment on stale issues
steps:
- uses: actions/stale@5bef64f19d7facfb25b37b414482c7164d639639 # v9.1.0
- uses: actions/stale@5f858e3efba33a5ca4407a664cc011ad407f2008 # v10.1.0
with:
stale-pr-message: 'This pull request has been marked as stale because it has been open (more
than) 60 days with no activity. Remove the stale label or add a comment saying that you

View File

@@ -16,10 +16,10 @@ jobs:
runs-on: ubuntu-24.04
steps:
- name: checkout
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
- name: Set up Python
uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5.6.0
uses: actions/setup-python@e797f83bcb11b83ae66e0230d6156d7c80228e7c # v6.0.0
with:
python-version: 3.12
cache: pip

View File

@@ -23,12 +23,12 @@ jobs:
steps:
# Needed for elasticearch and upload script
- name: Checkout
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with:
fetch-depth: 0
persist-credentials: false
- name: Set up Python
uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5.6.0
uses: actions/setup-python@e797f83bcb11b83ae66e0230d6156d7c80228e7c # v6.0.0
with:
python-version: 3.12
cache: pip

View File

@@ -42,7 +42,7 @@ jobs:
steps:
- name: Checkout
if: github.event_name == 'pull_request'
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with:
ref: ${{ github.event.pull_request.head.sha }}
fetch-depth: 0
@@ -51,7 +51,7 @@ jobs:
- name: Set up Python
if: github.event_name == 'pull_request'
uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5.6.0
uses: actions/setup-python@e797f83bcb11b83ae66e0230d6156d7c80228e7c # v6.0.0
with:
python-version: 3.12
cache: pip
@@ -65,10 +65,10 @@ jobs:
- name: Setup Zephyr project
if: github.event_name == 'pull_request'
uses: zephyrproject-rtos/action-zephyr-setup@b2453c72966ee67b1433be22b250348d48283286 # v1.0.7
uses: zephyrproject-rtos/action-zephyr-setup@c125c5ebeeadbd727fa740b407f862734af1e52a # v1.0.9
with:
app-path: zephyr
toolchains: all
enable-ccache: false
- name: Environment Setup
working-directory: zephyr
@@ -89,7 +89,7 @@ jobs:
run: |
export ZEPHYR_BASE=${PWD}
export ZEPHYR_TOOLCHAIN_VARIANT=zephyr
python3 ./scripts/ci/test_plan.py -c origin/${BASE_REF}.. --no-detailed-test-id --pull-request -t $TESTS_PER_BUILDER
python3 ./scripts/ci/test_plan.py -c origin/${BASE_REF}.. --pull-request -t $TESTS_PER_BUILDER
if [ -s .testplan ]; then
cat .testplan >> $GITHUB_ENV
else
@@ -127,7 +127,7 @@ jobs:
needs: twister-build-prep
if: needs.twister-build-prep.outputs.size != 0
container:
image: ghcr.io/zephyrproject-rtos/ci-repo-cache:v0.28.4.20250818
image: ghcr.io/zephyrproject-rtos/ci-repo-cache:v0.28.6.20251003
options: '--entrypoint /bin/bash'
strategy:
fail-fast: false
@@ -142,7 +142,7 @@ jobs:
CCACHE_IGNOREOPTIONS: '-specs=* --specs=*'
BSIM_OUT_PATH: /opt/bsim/
BSIM_COMPONENTS_PATH: /opt/bsim/components
TWISTER_COMMON: ' --test-config tests/test_config_ci.yaml --no-detailed-test-id --force-color --inline-logs -v -N -M --retry-failed 3 --timeout-multiplier 2 '
TWISTER_COMMON: ' --test-config tests/test_config_ci.yaml --force-color --inline-logs -v -N -M --retry-failed 3 --timeout-multiplier 2 '
WEEKLY_OPTIONS: ' -M --build-only --all --show-footprint --report-filtered -j 32'
PR_OPTIONS: ' --clobber-output --integration -j 16'
PUSH_OPTIONS: ' --clobber-output -M --show-footprint --report-filtered -j 16'
@@ -171,7 +171,7 @@ jobs:
git remote set-url origin ${GITHUB_SERVER_URL}/${GITHUB_REPOSITORY}
- name: Checkout
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with:
ref: ${{ github.event.pull_request.head.sha }}
fetch-depth: 0
@@ -213,6 +213,7 @@ jobs:
- name: Install Python packages
run: |
pip install -r scripts/requirements-actions.txt --require-hashes
west packages pip --install
- name: Set up ccache
run: |
@@ -252,7 +253,7 @@ jobs:
rm -f testplan.json
export ZEPHYR_BASE=${PWD}
export ZEPHYR_TOOLCHAIN_VARIANT=zephyr
python3 ./scripts/ci/test_plan.py -c origin/${BASE_REF}.. --pull-request --no-detailed-test-id
python3 ./scripts/ci/test_plan.py -c origin/${BASE_REF}.. --pull-request
./scripts/twister --subset ${{matrix.subset}}/${{ strategy.job-total }} --load-tests testplan.json ${TWISTER_COMMON} ${PR_OPTIONS}
if [ "${{matrix.subset}}" = "1" -a ${{needs.twister-build-prep.outputs.fullrun}} = 'True' ]; then
./scripts/zephyr_module.py --twister-out module_tests.args
@@ -322,14 +323,14 @@ jobs:
steps:
- name: Check out source code
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with:
ref: ${{ github.event.pull_request.head.sha }}
fetch-depth: 0
persist-credentials: false
- name: Set up Python
uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5.6.0
uses: actions/setup-python@e797f83bcb11b83ae66e0230d6156d7c80228e7c # v6.0.0
with:
python-version: 3.12
cache: pip
@@ -340,13 +341,13 @@ jobs:
pip install -r scripts/requirements-actions.txt --require-hashes
- name: Download Artifacts
uses: actions/download-artifact@d3f86a106a0bac45b974a628896c90dbdf5c8093 # v4.3.0
uses: actions/download-artifact@634f93cb2916e3fdff6788551b99b062d0335ce0 # v5.0.0
with:
path: artifacts
- name: Merge Test Results
run: |
junitparser merge artifacts/*/*/twister.xml junit.xml
junitparser merge --glob 'artifacts/*/twister.xml' 'artifacts/*/*/twister.xml' junit.xml
junit2html junit.xml junit.html
- name: Upload Unit Test Results
@@ -359,6 +360,12 @@ jobs:
junit.html
junit.xml
- name: Upload test results to Codecov
if: ${{ !cancelled() && (github.event_name == 'push') }}
uses: codecov/test-results-action@47f89e9acb64b76debcd5ea40642d25a4adced9f # v1.1.1
with:
token: ${{ secrets.CODECOV_TOKEN }}
- name: Publish Unit Test Results
uses: EnricoMi/publish-unit-test-result-action@3a74b2957438d0b6e2e61d67b05318aa25c9e6c6 # v2.20.0
with:

View File

@@ -39,10 +39,10 @@ jobs:
os: [ubuntu-24.04]
steps:
- name: checkout
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5.6.0
uses: actions/setup-python@e797f83bcb11b83ae66e0230d6156d7c80228e7c # v6.0.0
with:
python-version: ${{ matrix.python-version }}
cache: pip

View File

@@ -32,26 +32,27 @@ jobs:
runs-on: ${{ matrix.os }}
steps:
- name: Checkout
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with:
path: zephyr
fetch-depth: 0
- name: Set Up Python ${{ matrix.python-version }}
uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5.6.0
uses: actions/setup-python@e797f83bcb11b83ae66e0230d6156d7c80228e7c # v6.0.0
with:
python-version: ${{ matrix.python-version }}
cache: pip
cache-dependency-path: scripts/requirements-actions.txt
- name: Setup Zephyr project
uses: zephyrproject-rtos/action-zephyr-setup@b2453c72966ee67b1433be22b250348d48283286 # v1.0.7
uses: zephyrproject-rtos/action-zephyr-setup@c125c5ebeeadbd727fa740b407f862734af1e52a # v1.0.9
with:
app-path: zephyr
toolchains: all
enable-ccache: false
- name: Run Pytest For Twister Black Box Tests
if: ${{ startsWith(runner.os, 'ubuntu') }}
if: ${{ runner.os == 'Linux' }}
working-directory: zephyr
shell: bash
env:
@@ -59,6 +60,7 @@ jobs:
ZEPHYR_TOOLCHAIN_VARIANT: zephyr
run: |
export ZEPHYR_SDK_INSTALL_DIR=${{ github.workspace }}/zephyr-sdk
sudo apt-get install -y lcov
echo "Run twister tests"
source zephyr-env.sh
PYTHONPATH="./scripts/tests" pytest ./scripts/tests/twister_blackbox/
@@ -134,7 +136,7 @@ jobs:
EXTRA_TWISTER_FLAGS="-P native_sim --short-build-path -O /tmp/twister-out"
fi
BASIC_FLAGS="--runtime-artifact-cleanup --force-color --inline-logs -v $EXTRA_TWISTER_FLAGS"
./scripts/twister --sub-test kernel.multiprocessing.spinlock.minimallibc.spinlock.spinlock_basic --platform qemu_x86 --create-rom-ram-report --footprint-report ROM --enable-size-report --footprint-from-buildlog $BASIC_FLAGS
./scripts/twister --sub-test kernel.multiprocessing.spinlock.minimallibc.spinlock.spinlock_basic --platform qemu_x86 --create-rom-ram-report --footprint-report ROM --enable-size-report --footprint-from-buildlog $BASIC_FLAGS --detailed-test-id
- name: Build firmware No. 7 - list tags
working-directory: zephyr
@@ -146,7 +148,7 @@ jobs:
EXTRA_TWISTER_FLAGS="-P native_sim --short-build-path -O /tmp/twister-out"
fi
BASIC_FLAGS="--runtime-artifact-cleanup --force-color --inline-logs -v $EXTRA_TWISTER_FLAGS"
./scripts/twister --sub-test kernel.multiprocessing.spinlock.minimallibc.spinlock.spinlock_basic --list-tags $BASIC_FLAGS
./scripts/twister --sub-test kernel.multiprocessing.spinlock.minimallibc.spinlock.spinlock_basic --list-tags $BASIC_FLAGS --detailed-test-id
- name: Build firmware No. 8 - list tests
working-directory: zephyr
@@ -170,7 +172,7 @@ jobs:
EXTRA_TWISTER_FLAGS="-P native_sim --short-build-path -O /tmp/twister-out"
fi
BASIC_FLAGS="--runtime-artifact-cleanup --force-color --inline-logs -v $EXTRA_TWISTER_FLAGS"
./scripts/twister --sub-test kernel.multiprocessing.spinlock.minimallibc.spinlock.spinlock_basic --platform qemu_x86 --report-dir . --report-name test_name --report-suffix suffix --report-summary 0 --report-all-options --report-filtered $BASIC_FLAGS
./scripts/twister --sub-test kernel.multiprocessing.spinlock.minimallibc.spinlock.spinlock_basic --platform qemu_x86 --report-dir . --report-name test_name --report-suffix suffix --report-summary 0 --report-all-options --report-filtered $BASIC_FLAGS --detailed-test-id
- name: Build firmware No. 10 - force platform and toolchain, log level, timestamps, logfile
working-directory: zephyr
@@ -182,5 +184,5 @@ jobs:
EXTRA_TWISTER_FLAGS="-P native_sim --short-build-path -O /tmp/twister-out"
fi
BASIC_FLAGS="--runtime-artifact-cleanup --force-color --inline-logs -v $EXTRA_TWISTER_FLAGS"
./scripts/twister --sub-test kernel.multiprocessing.spinlock.minimallibc.spinlock.spinlock_basic --force-platform --platform qemu_x86 --force-toolchain --log-level WARNING --log-file log.file $BASIC_FLAGS
./scripts/twister --sub-test kernel.multiprocessing.spinlock.minimallibc.spinlock.spinlock_basic --force-platform --platform qemu_x86 --force-toolchain --log-level WARNING --log-file log.file $BASIC_FLAGS --detailed-test-id
rm log.file

View File

@@ -36,10 +36,10 @@ jobs:
os: [ubuntu-22.04, macos-14, windows-2022]
steps:
- name: checkout
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5.6.0
uses: actions/setup-python@e797f83bcb11b83ae66e0230d6156d7c80228e7c # v6.0.0
with:
python-version: ${{ matrix.python-version }}
cache: pip

13
.gitignore vendored
View File

@@ -1,3 +1,6 @@
# SPDX-License-Identifier: Apache-2.0
# SPDX-FileCopyrightText: Copyright The Zephyr Project Contributors
*.o
*.a
*.d
@@ -55,6 +58,7 @@ doc/doc.warnings
hide-defaults-note
venv
.venv
.envrc
.DS_Store
.clangd
new.info
@@ -72,6 +76,7 @@ target/
# CI output
compliance.xml
dts_linter.patch
_error.types
# Tag files
@@ -84,11 +89,13 @@ tags
.idea
# from check_compliance.py
# zephyr-keep-sorted-start
BinaryFiles.txt
BoardYml.txt
Checkpatch.txt
ClangFormat.txt
DevicetreeBindings.txt
DevicetreeLinting.txt
GitDiffCheck.txt
Gitlint.txt
Identity.txt
@@ -98,6 +105,7 @@ KconfigBasic.txt
KconfigBasicNoModules.txt
KconfigHWMv2.txt
KeepSorted.txt
LicenseAndCopyrightCheck.txt
MaintainersFormat.txt
ModulesMaintainers.txt
Nits.txt
@@ -110,3 +118,8 @@ SysbuildKconfigBasic.txt
SysbuildKconfigBasicNoModules.txt
TextEncoding.txt
YAMLLint.txt
ZephyrModuleFile.txt
# zephyr-keep-sorted-stop
# Node dependecies
node_modules

View File

@@ -1,6 +1,7 @@
# All these sections are optional, edit this file as you like.
# Zephyr-specific defaults are located in scripts/gitlint/zephyr_commit_rules.py
[general]
regex-style-search=true
ignore=title-trailing-punctuation, T3, title-max-length, T1, body-hard-tab, B3, B1
# verbosity should be a value between 1 and 3, the commandline -v flags take precedence over this
verbosity = 3

View File

@@ -1,4 +1,5 @@
# SPDX-License-Identifier: Apache-2.0
# SPDX-FileCopyrightText: Copyright The Zephyr Project Contributors
# This list is generated, it contains all python scripts that existed before ruff was introduced,
# remove entries for files that pass CI compliance testing.
@@ -25,27 +26,9 @@
"SIM115", # https://docs.astral.sh/ruff/rules/open-file-with-context-handler
"UP031", # https://docs.astral.sh/ruff/rules/printf-string-formatting
]
"./arch/xtensa/core/gen_vectors.py" = [
"F541", # https://docs.astral.sh/ruff/rules/f-string-missing-placeholders
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
"UP031", # https://docs.astral.sh/ruff/rules/printf-string-formatting
]
"./arch/xtensa/core/gen_zsr.py" = [
"SIM401", # https://docs.astral.sh/ruff/rules/if-else-block-instead-of-dict-get
]
"./arch/xtensa/core/xtensa_intgen.py" = [
"E713", # https://docs.astral.sh/ruff/rules/not-in-test
"E741", # https://docs.astral.sh/ruff/rules/ambiguous-variable-name
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
"SIM115", # https://docs.astral.sh/ruff/rules/open-file-with-context-handler
"UP031", # https://docs.astral.sh/ruff/rules/printf-string-formatting
]
"./boards/microchip/mec172xevb_assy6906/support/mec172x_remote_flasher.py" = [
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
]
"./doc/_scripts/gen_devicetree_rest.py" = [
"SIM905", # https://docs.astral.sh/ruff/rules/split-static-string
]
"./doc/_scripts/redirects.py" = [
"E501", # https://docs.astral.sh/ruff/rules/line-too-long
]
@@ -155,13 +138,11 @@
"E501", # https://docs.astral.sh/ruff/rules/line-too-long
"F401", # https://docs.astral.sh/ruff/rules/unused-import
"F541", # https://docs.astral.sh/ruff/rules/f-string-missing-placeholders
"SIM115", # https://docs.astral.sh/ruff/rules/open-file-with-context-handler
"UP031", # https://docs.astral.sh/ruff/rules/printf-string-formatting
"UP039", # https://docs.astral.sh/ruff/rules/unnecessary-class-parentheses
]
"./scripts/build/check_init_priorities_test.py" = [
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
"UP026", # https://docs.astral.sh/ruff/rules/deprecated-mock-import
]
"./scripts/build/elf_parser.py" = [
"E501", # https://docs.astral.sh/ruff/rules/line-too-long
@@ -232,7 +213,6 @@
]
"./scripts/build/gen_offset_header.py" = [
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
"SIM115", # https://docs.astral.sh/ruff/rules/open-file-with-context-handler
"UP031", # https://docs.astral.sh/ruff/rules/printf-string-formatting
]
"./scripts/build/gen_relocate_app.py" = [
@@ -313,7 +293,6 @@
"E501", # https://docs.astral.sh/ruff/rules/line-too-long
"E741", # https://docs.astral.sh/ruff/rules/ambiguous-variable-name
"F401", # https://docs.astral.sh/ruff/rules/unused-import
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
"SIM112", # https://docs.astral.sh/ruff/rules/uncapitalized-environment-variables
"UP015", # https://docs.astral.sh/ruff/rules/redundant-open-modes
]
@@ -416,8 +395,8 @@
"F541", # https://docs.astral.sh/ruff/rules/f-string-missing-placeholders
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
"SIM102", # https://docs.astral.sh/ruff/rules/collapsible-if
"UP007", # https://docs.astral.sh/ruff/rules/non-pep604-annotation-union
"UP035", # https://docs.astral.sh/ruff/rules/deprecated-import
"UP045", # https://docs.astral.sh/ruff/rules/non-pep604-annotation-optional
]
"./scripts/dts/gen_driver_kconfig_dts.py" = [
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
@@ -431,10 +410,12 @@
]
"./scripts/dts/python-devicetree/src/devicetree/dtlib.py" = [
"UP007", # https://docs.astral.sh/ruff/rules/non-pep604-annotation-union
"UP045", # https://docs.astral.sh/ruff/rules/non-pep604-annotation-optional
]
"./scripts/dts/python-devicetree/src/devicetree/edtlib.py" = [
"SIM905", # https://docs.astral.sh/ruff/rules/split-static-string
"UP007", # https://docs.astral.sh/ruff/rules/non-pep604-annotation-union
"UP045", # https://docs.astral.sh/ruff/rules/non-pep604-annotation-optional
]
"./scripts/dts/python-devicetree/src/devicetree/grutils.py" = [
"E501", # https://docs.astral.sh/ruff/rules/line-too-long
@@ -448,7 +429,7 @@
"E501", # https://docs.astral.sh/ruff/rules/line-too-long
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
"SIM115", # https://docs.astral.sh/ruff/rules/open-file-with-context-handler
"UP007", # https://docs.astral.sh/ruff/rules/non-pep604-annotation-union
"UP045", # https://docs.astral.sh/ruff/rules/non-pep604-annotation-optional
]
"./scripts/dts/python-devicetree/tests/test_edtlib.py" = [
"B905", # https://docs.astral.sh/ruff/rules/zip-without-explicit-strict
@@ -498,7 +479,6 @@
"E501", # https://docs.astral.sh/ruff/rules/line-too-long
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
"SIM103", # https://docs.astral.sh/ruff/rules/needless-bool
"UP038", # https://docs.astral.sh/ruff/rules/non-pep604-isinstance
]
"./scripts/get_maintainer.py" = [
"B904", # https://docs.astral.sh/ruff/rules/raise-without-from-inside-except
@@ -527,11 +507,6 @@
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
"UP024", # https://docs.astral.sh/ruff/rules/os-error-alias
"UP032", # https://docs.astral.sh/ruff/rules/f-string
"UP038", # https://docs.astral.sh/ruff/rules/non-pep604-isinstance
]
"./scripts/kconfig/hardenconfig.py" = [
"E501", # https://docs.astral.sh/ruff/rules/line-too-long
"UP032", # https://docs.astral.sh/ruff/rules/f-string
]
"./scripts/kconfig/kconfigfunctions.py" = [
"B011", # https://docs.astral.sh/ruff/rules/assert-false
@@ -566,7 +541,6 @@
"UP024", # https://docs.astral.sh/ruff/rules/os-error-alias
"UP032", # https://docs.astral.sh/ruff/rules/f-string
"UP036", # https://docs.astral.sh/ruff/rules/outdated-version-block
"UP038", # https://docs.astral.sh/ruff/rules/non-pep604-isinstance
]
"./scripts/make_bugs_pickle.py" = [
"UP006", # https://docs.astral.sh/ruff/rules/non-pep585-annotation
@@ -718,14 +692,7 @@
"UP006", # https://docs.astral.sh/ruff/rules/non-pep585-annotation
"UP007", # https://docs.astral.sh/ruff/rules/non-pep604-annotation-union
"UP035", # https://docs.astral.sh/ruff/rules/deprecated-import
]
"./scripts/set_assignees.py" = [
"E402", # https://docs.astral.sh/ruff/rules/module-import-not-at-top-of-file
"E501", # https://docs.astral.sh/ruff/rules/line-too-long
"E741", # https://docs.astral.sh/ruff/rules/ambiguous-variable-name
"F541", # https://docs.astral.sh/ruff/rules/f-string-missing-placeholders
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
"SIM113", # https://docs.astral.sh/ruff/rules/enumerate-for-loop
"UP045", # https://docs.astral.sh/ruff/rules/non-pep604-annotation-optional
]
"./scripts/snippets.py" = [
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
@@ -733,141 +700,83 @@
"UP015", # https://docs.astral.sh/ruff/rules/redundant-open-modes
"UP035", # https://docs.astral.sh/ruff/rules/deprecated-import
]
"./scripts/tests/twister/conftest.py" = [
"E402", # https://docs.astral.sh/ruff/rules/module-import-not-at-top-of-file
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
]
"./scripts/tests/twister/pytest_integration/test_harness_pytest.py" = [
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
]
"./scripts/tests/twister/test_cmakecache.py" = [
"F541", # https://docs.astral.sh/ruff/rules/f-string-missing-placeholders
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
"UP026", # https://docs.astral.sh/ruff/rules/deprecated-mock-import
]
"./scripts/tests/twister/test_config_parser.py" = [
"B017", # https://docs.astral.sh/ruff/rules/assert-raises-exception
"B033", # https://docs.astral.sh/ruff/rules/duplicate-value
"E501", # https://docs.astral.sh/ruff/rules/line-too-long
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
"SIM117", # https://docs.astral.sh/ruff/rules/multiple-with-statements
"UP026", # https://docs.astral.sh/ruff/rules/deprecated-mock-import
]
"./scripts/tests/twister/test_data/mixins/test_to_ignore.py" = [
"B011", # https://docs.astral.sh/ruff/rules/assert-false
]
"./scripts/tests/twister/test_environment.py" = [
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
"SIM117", # https://docs.astral.sh/ruff/rules/multiple-with-statements
"UP026", # https://docs.astral.sh/ruff/rules/deprecated-mock-import
]
"./scripts/tests/twister/test_errors.py" = [
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
]
"./scripts/tests/twister/test_handlers.py" = [
"B011", # https://docs.astral.sh/ruff/rules/assert-false
"E402", # https://docs.astral.sh/ruff/rules/module-import-not-at-top-of-file
"F541", # https://docs.astral.sh/ruff/rules/f-string-missing-placeholders
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
"UP012", # https://docs.astral.sh/ruff/rules/unnecessary-encode-utf8
"UP026", # https://docs.astral.sh/ruff/rules/deprecated-mock-import
]
"./scripts/tests/twister/test_hardwaremap.py" = [
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
"UP026", # https://docs.astral.sh/ruff/rules/deprecated-mock-import
"UP031", # https://docs.astral.sh/ruff/rules/printf-string-formatting
]
"./scripts/tests/twister/test_harness.py" = [
"B017", # https://docs.astral.sh/ruff/rules/assert-raises-exception
"E501", # https://docs.astral.sh/ruff/rules/line-too-long
"E713", # https://docs.astral.sh/ruff/rules/not-in-test
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
"UP015", # https://docs.astral.sh/ruff/rules/redundant-open-modes
"UP026", # https://docs.astral.sh/ruff/rules/deprecated-mock-import
]
"./scripts/tests/twister/test_jobserver.py" = [
"F541", # https://docs.astral.sh/ruff/rules/f-string-missing-placeholders
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
"UP026", # https://docs.astral.sh/ruff/rules/deprecated-mock-import
]
"./scripts/tests/twister/test_log_helper.py" = [
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
"UP026", # https://docs.astral.sh/ruff/rules/deprecated-mock-import
]
"./scripts/tests/twister/test_platform.py" = [
"B011", # https://docs.astral.sh/ruff/rules/assert-false
"E402", # https://docs.astral.sh/ruff/rules/module-import-not-at-top-of-file
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
"UP026", # https://docs.astral.sh/ruff/rules/deprecated-mock-import
]
"./scripts/tests/twister/test_quarantine.py" = [
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
"UP026", # https://docs.astral.sh/ruff/rules/deprecated-mock-import
]
"./scripts/tests/twister/test_runner.py" = [
"E402", # https://docs.astral.sh/ruff/rules/module-import-not-at-top-of-file
"E501", # https://docs.astral.sh/ruff/rules/line-too-long
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
"UP006", # https://docs.astral.sh/ruff/rules/non-pep585-annotation
"UP015", # https://docs.astral.sh/ruff/rules/redundant-open-modes
"UP026", # https://docs.astral.sh/ruff/rules/deprecated-mock-import
"UP035", # https://docs.astral.sh/ruff/rules/deprecated-import
]
"./scripts/tests/twister/test_scl.py" = [
"E402", # https://docs.astral.sh/ruff/rules/module-import-not-at-top-of-file
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
"SIM117", # https://docs.astral.sh/ruff/rules/multiple-with-statements
"UP025", # https://docs.astral.sh/ruff/rules/unicode-kind-prefix
"UP026", # https://docs.astral.sh/ruff/rules/deprecated-mock-import
]
"./scripts/tests/twister/test_testinstance.py" = [
"E402", # https://docs.astral.sh/ruff/rules/module-import-not-at-top-of-file
"E501", # https://docs.astral.sh/ruff/rules/line-too-long
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
"UP026", # https://docs.astral.sh/ruff/rules/deprecated-mock-import
]
"./scripts/tests/twister/test_testplan.py" = [
"B905", # https://docs.astral.sh/ruff/rules/zip-without-explicit-strict
"E101", # https://docs.astral.sh/ruff/rules/mixed-spaces-and-tabs
"E402", # https://docs.astral.sh/ruff/rules/module-import-not-at-top-of-file
"E501", # https://docs.astral.sh/ruff/rules/line-too-long
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
"SIM118", # https://docs.astral.sh/ruff/rules/in-dict-keys
"UP026", # https://docs.astral.sh/ruff/rules/deprecated-mock-import
"W191", # https://docs.astral.sh/ruff/rules/tab-indentation
]
"./scripts/tests/twister/test_testsuite.py" = [
"B011", # https://docs.astral.sh/ruff/rules/assert-false
"E402", # https://docs.astral.sh/ruff/rules/module-import-not-at-top-of-file
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
"UP026", # https://docs.astral.sh/ruff/rules/deprecated-mock-import
]
"./scripts/tests/twister/test_twister.py" = [
"E402", # https://docs.astral.sh/ruff/rules/module-import-not-at-top-of-file
"E501", # https://docs.astral.sh/ruff/rules/line-too-long
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
"UP026", # https://docs.astral.sh/ruff/rules/deprecated-mock-import
]
"./scripts/tests/twister_blackbox/conftest.py" = [
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
"UP026", # https://docs.astral.sh/ruff/rules/deprecated-mock-import
]
"./scripts/tests/twister_blackbox/test_addon.py" = [
"B905", # https://docs.astral.sh/ruff/rules/zip-without-explicit-strict
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
"UP026", # https://docs.astral.sh/ruff/rules/deprecated-mock-import
]
"./scripts/tests/twister_blackbox/test_config.py" = [
"B905", # https://docs.astral.sh/ruff/rules/zip-without-explicit-strict
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
"UP026", # https://docs.astral.sh/ruff/rules/deprecated-mock-import
]
"./scripts/tests/twister_blackbox/test_coverage.py" = [
"B905", # https://docs.astral.sh/ruff/rules/zip-without-explicit-strict
"E501", # https://docs.astral.sh/ruff/rules/line-too-long
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
"UP015", # https://docs.astral.sh/ruff/rules/redundant-open-modes
"UP026", # https://docs.astral.sh/ruff/rules/deprecated-mock-import
]
"./scripts/tests/twister_blackbox/test_data/tests/pytest/pytest/test_sample.py" = [
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
@@ -877,67 +786,56 @@
"B905", # https://docs.astral.sh/ruff/rules/zip-without-explicit-strict
"E501", # https://docs.astral.sh/ruff/rules/line-too-long
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
"UP026", # https://docs.astral.sh/ruff/rules/deprecated-mock-import
"UP032", # https://docs.astral.sh/ruff/rules/f-string
]
"./scripts/tests/twister_blackbox/test_disable.py" = [
"B905", # https://docs.astral.sh/ruff/rules/zip-without-explicit-strict
"E501", # https://docs.astral.sh/ruff/rules/line-too-long
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
"UP026", # https://docs.astral.sh/ruff/rules/deprecated-mock-import
]
"./scripts/tests/twister_blackbox/test_error.py" = [
"B905", # https://docs.astral.sh/ruff/rules/zip-without-explicit-strict
"E721", # https://docs.astral.sh/ruff/rules/type-comparison
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
"UP026", # https://docs.astral.sh/ruff/rules/deprecated-mock-import
]
"./scripts/tests/twister_blackbox/test_filter.py" = [
"B905", # https://docs.astral.sh/ruff/rules/zip-without-explicit-strict
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
"UP026", # https://docs.astral.sh/ruff/rules/deprecated-mock-import
]
"./scripts/tests/twister_blackbox/test_footprint.py" = [
"B905", # https://docs.astral.sh/ruff/rules/zip-without-explicit-strict
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
"UP026", # https://docs.astral.sh/ruff/rules/deprecated-mock-import
]
"./scripts/tests/twister_blackbox/test_hardwaremap.py" = [
"B007", # https://docs.astral.sh/ruff/rules/unused-loop-control-variable
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
"SIM115", # https://docs.astral.sh/ruff/rules/open-file-with-context-handler
"UP026", # https://docs.astral.sh/ruff/rules/deprecated-mock-import
]
"./scripts/tests/twister_blackbox/test_outfile.py" = [
"B011", # https://docs.astral.sh/ruff/rules/assert-false
"B905", # https://docs.astral.sh/ruff/rules/zip-without-explicit-strict
"E501", # https://docs.astral.sh/ruff/rules/line-too-long
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
"UP026", # https://docs.astral.sh/ruff/rules/deprecated-mock-import
]
"./scripts/tests/twister_blackbox/test_output.py" = [
"B905", # https://docs.astral.sh/ruff/rules/zip-without-explicit-strict
"E501", # https://docs.astral.sh/ruff/rules/line-too-long
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
"UP026", # https://docs.astral.sh/ruff/rules/deprecated-mock-import
]
"./scripts/tests/twister_blackbox/test_platform.py" = [
"B905", # https://docs.astral.sh/ruff/rules/zip-without-explicit-strict
"E501", # https://docs.astral.sh/ruff/rules/line-too-long
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
"UP026", # https://docs.astral.sh/ruff/rules/deprecated-mock-import
]
"./scripts/tests/twister_blackbox/test_printouts.py" = [
"B011", # https://docs.astral.sh/ruff/rules/assert-false
"B905", # https://docs.astral.sh/ruff/rules/zip-without-explicit-strict
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
"UP026", # https://docs.astral.sh/ruff/rules/deprecated-mock-import
]
"./scripts/tests/twister_blackbox/test_quarantine.py" = [
"B905", # https://docs.astral.sh/ruff/rules/zip-without-explicit-strict
"E501", # https://docs.astral.sh/ruff/rules/line-too-long
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
"UP026", # https://docs.astral.sh/ruff/rules/deprecated-mock-import
]
"./scripts/tests/twister_blackbox/test_report.py" = [
"B905", # https://docs.astral.sh/ruff/rules/zip-without-explicit-strict
@@ -947,35 +845,28 @@
"F541", # https://docs.astral.sh/ruff/rules/f-string-missing-placeholders
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
"UP015", # https://docs.astral.sh/ruff/rules/redundant-open-modes
"UP026", # https://docs.astral.sh/ruff/rules/deprecated-mock-import
]
"./scripts/tests/twister_blackbox/test_runner.py" = [
"B905", # https://docs.astral.sh/ruff/rules/zip-without-explicit-strict
"E501", # https://docs.astral.sh/ruff/rules/line-too-long
"F541", # https://docs.astral.sh/ruff/rules/f-string-missing-placeholders
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
"UP026", # https://docs.astral.sh/ruff/rules/deprecated-mock-import
]
"./scripts/tests/twister_blackbox/test_shuffle.py" = [
"B905", # https://docs.astral.sh/ruff/rules/zip-without-explicit-strict
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
"UP026", # https://docs.astral.sh/ruff/rules/deprecated-mock-import
]
"./scripts/tests/twister_blackbox/test_testlist.py" = [
"B905", # https://docs.astral.sh/ruff/rules/zip-without-explicit-strict
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
"UP026", # https://docs.astral.sh/ruff/rules/deprecated-mock-import
]
"./scripts/tests/twister_blackbox/test_testplan.py" = [
"B905", # https://docs.astral.sh/ruff/rules/zip-without-explicit-strict
"E721", # https://docs.astral.sh/ruff/rules/type-comparison
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
"UP026", # https://docs.astral.sh/ruff/rules/deprecated-mock-import
]
"./scripts/tests/twister_blackbox/test_tooling.py" = [
"B905", # https://docs.astral.sh/ruff/rules/zip-without-explicit-strict
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
"UP026", # https://docs.astral.sh/ruff/rules/deprecated-mock-import
]
"./scripts/tracing/parse_ctf.py" = [
"E501", # https://docs.astral.sh/ruff/rules/line-too-long
@@ -1005,7 +896,6 @@
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
]
"./scripts/utils/migrate_mcumgr_kconfigs.py" = [
"E501", # https://docs.astral.sh/ruff/rules/line-too-long
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
]
"./scripts/utils/ntc_thermistor_table.py" = [
@@ -1017,8 +907,8 @@
"SIM115", # https://docs.astral.sh/ruff/rules/open-file-with-context-handler
"UP004", # https://docs.astral.sh/ruff/rules/useless-object-inheritance
"UP006", # https://docs.astral.sh/ruff/rules/non-pep585-annotation
"UP007", # https://docs.astral.sh/ruff/rules/non-pep604-annotation-union
"UP035", # https://docs.astral.sh/ruff/rules/deprecated-import
"UP045", # https://docs.astral.sh/ruff/rules/non-pep604-annotation-optional
]
"./scripts/west_commands/fetchers/__init__.py" = [
"UP032", # https://docs.astral.sh/ruff/rules/f-string
@@ -1030,7 +920,6 @@
]
"./scripts/west_commands/fetchers/http.py" = [
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
"SIM115", # https://docs.astral.sh/ruff/rules/open-file-with-context-handler
]
"./scripts/west_commands/run_common.py" = [
"B904", # https://docs.astral.sh/ruff/rules/raise-without-from-inside-except
@@ -1052,6 +941,7 @@
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
"SIM115", # https://docs.astral.sh/ruff/rules/open-file-with-context-handler
"SIM300", # https://docs.astral.sh/ruff/rules/yoda-conditions
"UP008", # https://docs.astral.sh/ruff/rules/super-call-with-parameters
]
"./scripts/west_commands/sign.py" = [
"E501", # https://docs.astral.sh/ruff/rules/line-too-long
@@ -1095,7 +985,7 @@
]
"./scripts/west_commands/tests/test_nrf.py" = [
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
"UP007", # https://docs.astral.sh/ruff/rules/non-pep604-annotation-union
"UP045", # https://docs.astral.sh/ruff/rules/non-pep604-annotation-optional
]
"./scripts/west_commands/tests/test_nxp_s32dbg.py" = [
"E501", # https://docs.astral.sh/ruff/rules/line-too-long
@@ -1190,17 +1080,6 @@
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
"UP031", # https://docs.astral.sh/ruff/rules/printf-string-formatting
]
"./tests/drivers/can/host/pytest/can_shell.py" = [
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
"SIM401", # https://docs.astral.sh/ruff/rules/if-else-block-instead-of-dict-get
"UP006", # https://docs.astral.sh/ruff/rules/non-pep585-annotation
"UP007", # https://docs.astral.sh/ruff/rules/non-pep604-annotation-union
"UP035", # https://docs.astral.sh/ruff/rules/deprecated-import
]
"./tests/drivers/can/host/pytest/test_can.py" = [
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
"UP039", # https://docs.astral.sh/ruff/rules/unnecessary-class-parentheses
]
"./tests/kernel/timer/timer_behavior/pytest/saleae_logic2.py" = [
"B905", # https://docs.astral.sh/ruff/rules/zip-without-explicit-strict
"I001", # https://docs.astral.sh/ruff/rules/unsorted-imports
@@ -1267,23 +1146,7 @@ exclude = [
"./arch/x86/gen_idt.py",
"./arch/x86/gen_mmu.py",
"./arch/x86/zefi/zefi.py",
"./arch/xtensa/core/gen_vectors.py",
"./arch/xtensa/core/gen_zsr.py",
"./arch/xtensa/core/xtensa_intgen.py",
"./boards/microchip/mec172xevb_assy6906/support/mec172x_remote_flasher.py",
"./doc/_extensions/zephyr/api_overview.py",
"./doc/_extensions/zephyr/application.py",
"./doc/_extensions/zephyr/domain/__init__.py",
"./doc/_extensions/zephyr/doxybridge.py",
"./doc/_extensions/zephyr/doxyrunner.py",
"./doc/_extensions/zephyr/doxytooltip/__init__.py",
"./doc/_extensions/zephyr/dtcompatible-role.py",
"./doc/_extensions/zephyr/external_content.py",
"./doc/_extensions/zephyr/gh_utils.py",
"./doc/_extensions/zephyr/html_redirects.py",
"./doc/_extensions/zephyr/kconfig/__init__.py",
"./doc/_extensions/zephyr/link-roles.py",
"./doc/_scripts/gen_boards_catalog.py",
"./doc/_scripts/gen_devicetree_rest.py",
"./doc/_scripts/redirects.py",
"./doc/conf.py",
@@ -1379,7 +1242,6 @@ exclude = [
"./scripts/github_helpers.py",
"./scripts/gitlint/zephyr_commit_rules.py",
"./scripts/kconfig/guiconfig.py",
"./scripts/kconfig/hardenconfig.py",
"./scripts/kconfig/kconfig.py",
"./scripts/kconfig/kconfigfunctions.py",
"./scripts/kconfig/kconfiglib.py",
@@ -1443,7 +1305,6 @@ exclude = [
"./scripts/release/bug_bash.py",
"./scripts/release/list_backports.py",
"./scripts/release/list_devicetree_bindings_changes.py",
"./scripts/set_assignees.py",
"./scripts/snippets.py",
"./scripts/tests/twister/conftest.py",
"./scripts/tests/twister/pytest_integration/test_harness_pytest.py",
@@ -1594,13 +1455,11 @@ exclude = [
"./soc/nuvoton/npcx/common/ecst/ecst.py",
"./soc/nuvoton/npcx/common/ecst/ecst_args.py",
"./soc/silabs/silabs_sim3/sim3u/gen_crossbar_config.py",
"./tests/bluetooth/classic/gap_s/pytest/test_gap_s.py",
"./tests/bluetooth/classic/sdp_s/pytest/test_sdp.py",
"./tests/boot/with_mcumgr/pytest/test_downgrade_prevention.py",
"./tests/boot/with_mcumgr/pytest/test_upgrade.py",
"./tests/boot/with_mcumgr/pytest/west_sign_wrapper.py",
"./tests/drivers/can/host/pytest/can_shell.py",
"./tests/drivers/can/host/pytest/conftest.py",
"./tests/drivers/can/host/pytest/test_can.py",
"./tests/kernel/timer/timer_behavior/pytest/saleae_logic2.py",
"./tests/kernel/timer/timer_behavior/pytest/test_timer.py",
"./tests/lib/devicetree/memory_region_flags/pytest/test_memory_region_flags.py",

View File

@@ -226,6 +226,12 @@ get_property(ASM_OPTIMIZE_FOR_SPEED_FLAG TARGET asm PROPERTY optimization_speed)
get_property(ASM_OPTIMIZE_FOR_SIZE_FLAG TARGET asm PROPERTY optimization_size)
get_property(ASM_OPTIMIZE_FOR_SIZE_AGGRESSIVE_FLAG TARGET asm PROPERTY optimization_size_aggressive)
get_property(LINKER_OPTIMIZE_FOR_NO_OPTIMIZATIONS_FLAG TARGET linker PROPERTY no_optimization)
get_property(LINKER_OPTIMIZE_FOR_DEBUG_FLAG TARGET linker PROPERTY optimization_debug)
get_property(LINKER_OPTIMIZE_FOR_SPEED_FLAG TARGET linker PROPERTY optimization_speed)
get_property(LINKER_OPTIMIZE_FOR_SIZE_FLAG TARGET linker PROPERTY optimization_size)
get_property(LINKER_OPTIMIZE_FOR_SIZE_AGGRESSIVE_FLAG TARGET linker PROPERTY optimization_size_aggressive)
# Let the assembler inherit the optimization flags of the compiler if it is
# not set explicitly.
if(NOT ASM_OPTIMIZE_FOR_NO_OPTIMIZATIONS_FLAG)
@@ -244,23 +250,46 @@ if(NOT ASM_OPTIMIZE_FOR_SIZE_AGGRESSIVE_FLAG)
set(ASM_OPTIMIZE_FOR_SIZE_AGGRESSIVE_FLAG ${COMPILER_OPTIMIZE_FOR_SIZE_AGGRESSIVE_FLAG})
endif()
# Let the linker inherit the optimization flags of the compiler if it is
# not set explicitly.
if(NOT LINKER_OPTIMIZE_FOR_NO_OPTIMIZATIONS_FLAG)
set(LINKER_OPTIMIZE_FOR_NO_OPTIMIZATIONS_FLAG ${COMPILER_OPTIMIZE_FOR_NO_OPTIMIZATIONS_FLAG})
endif()
if(NOT LINKER_OPTIMIZE_FOR_DEBUG_FLAG)
set(LINKER_OPTIMIZE_FOR_DEBUG_FLAG ${COMPILER_OPTIMIZE_FOR_DEBUG_FLAG})
endif()
if(NOT LINKER_OPTIMIZE_FOR_SPEED_FLAG)
set(LINKER_OPTIMIZE_FOR_SPEED_FLAG ${COMPILER_OPTIMIZE_FOR_SPEED_FLAG})
endif()
if(NOT LINKER_OPTIMIZE_FOR_SIZE_FLAG)
set(LINKER_OPTIMIZE_FOR_SIZE_FLAG ${COMPILER_OPTIMIZE_FOR_SIZE_FLAG})
endif()
if(NOT LINKER_OPTIMIZE_FOR_SIZE_AGGRESSIVE_FLAG)
set(LINKER_OPTIMIZE_FOR_SIZE_AGGRESSIVE_FLAG ${COMPILER_OPTIMIZE_FOR_SIZE_AGGRESSIVE_FLAG})
endif()
# From kconfig choice, pick the actual OPTIMIZATION_FLAG to use.
# Kconfig choice ensures only one of these CONFIG_*_OPTIMIZATIONS is set.
if(CONFIG_NO_OPTIMIZATIONS)
set(COMPILER_OPTIMIZATION_FLAG ${COMPILER_OPTIMIZE_FOR_NO_OPTIMIZATIONS_FLAG})
set(ASM_OPTIMIZATION_FLAG ${ASM_OPTIMIZE_FOR_NO_OPTIMIZATIONS_FLAG})
set(LINKER_OPTIMIZATION_FLAG ${LINKER_OPTIMIZE_FOR_NO_OPTIMIZATIONS_FLAG})
elseif(CONFIG_DEBUG_OPTIMIZATIONS)
set(COMPILER_OPTIMIZATION_FLAG ${COMPILER_OPTIMIZE_FOR_DEBUG_FLAG})
set(ASM_OPTIMIZATION_FLAG ${ASM_OPTIMIZE_FOR_DEBUG_FLAG})
set(LINKER_OPTIMIZATION_FLAG ${LINKER_OPTIMIZE_FOR_DEBUG_FLAG})
elseif(CONFIG_SPEED_OPTIMIZATIONS)
set(COMPILER_OPTIMIZATION_FLAG ${COMPILER_OPTIMIZE_FOR_SPEED_FLAG})
set(ASM_OPTIMIZATION_FLAG ${ASM_OPTIMIZE_FOR_SPEED_FLAG})
set(LINKER_OPTIMIZATION_FLAG ${LINKER_OPTIMIZE_FOR_SPEED_FLAG})
elseif(CONFIG_SIZE_OPTIMIZATIONS)
set(COMPILER_OPTIMIZATION_FLAG ${COMPILER_OPTIMIZE_FOR_SIZE_FLAG}) # Default in kconfig
set(ASM_OPTIMIZATION_FLAG ${ASM_OPTIMIZE_FOR_SIZE_FLAG})
set(LINKER_OPTIMIZATION_FLAG ${LINKER_OPTIMIZE_FOR_SIZE_FLAG})
elseif(CONFIG_SIZE_OPTIMIZATIONS_AGGRESSIVE)
set(COMPILER_OPTIMIZATION_FLAG ${COMPILER_OPTIMIZE_FOR_SIZE_AGGRESSIVE_FLAG})
set(ASM_OPTIMIZATION_FLAG ${ASM_OPTIMIZE_FOR_SIZE_AGGRESSIVE_FLAG})
set(LINKER_OPTIMIZATION_FLAG ${LINKER_OPTIMIZE_FOR_SIZE_AGGRESSIVE_FLAG})
else()
message(FATAL_ERROR
"Unreachable code. Expected optimization level to have been chosen. See Kconfig.zephyr")
@@ -277,6 +306,9 @@ endif()
zephyr_compile_options($<$<COMPILE_LANGUAGE:ASM>:${ASM_OPTIMIZATION_FLAG}>)
zephyr_compile_options($<$<COMPILE_LANGUAGE:C>:${COMPILER_OPTIMIZATION_FLAG}>)
zephyr_compile_options($<$<COMPILE_LANGUAGE:CXX>:${COMPILER_OPTIMIZATION_FLAG}>)
add_link_options(${LINKER_OPTIMIZATION_FLAG})
compiler_simple_options(simple_options)
toolchain_linker_add_compiler_options(${simple_options})
if(CONFIG_LTO)
zephyr_compile_options($<TARGET_PROPERTY:compiler,optimization_lto>)
@@ -331,6 +363,9 @@ if(CONFIG_CPP)
elseif(CONFIG_STD_CPP2B)
set(STD_CPP_DIALECT_FLAGS $<TARGET_PROPERTY:compiler-cpp,dialect_cpp2b>)
list(APPEND CMAKE_CXX_COMPILE_FEATURES ${compile_features_cpp20})
elseif(CONFIG_STD_CPP23)
set(STD_CPP_DIALECT_FLAGS $<TARGET_PROPERTY:compiler-cpp,dialect_cpp23>)
list(APPEND CMAKE_CXX_COMPILE_FEATURES ${compile_features_cpp23})
else()
message(FATAL_ERROR
"Unreachable code. Expected C++ standard to have been chosen. See Kconfig.zephyr.")
@@ -374,7 +409,7 @@ if(CONFIG_COMPILER_FREESTANDING)
zephyr_compile_options($<$<COMPILE_LANGUAGE:ASM>:$<TARGET_PROPERTY:compiler,freestanding>>)
endif()
if (CONFIG_PICOLIBC AND NOT CONFIG_PICOLIBC_IO_FLOAT)
if(CONFIG_PICOLIBC AND NOT CONFIG_PICOLIBC_IO_FLOAT)
# @Intent: Set compiler specific flag to disable printf-related optimizations
zephyr_compile_options($<$<COMPILE_LANGUAGE:C>:$<TARGET_PROPERTY:compiler,no_printf_return_value>>)
endif()
@@ -439,6 +474,16 @@ if(DEFINED TOOLCHAIN_LD_FLAGS)
zephyr_ld_options(${TOOLCHAIN_LD_FLAGS})
endif()
foreach(GROUPED_FLAGS IN LISTS TOOLCHAIN_GROUPED_LD_FLAGS)
if(DEFINED ${GROUPED_FLAGS})
zephyr_ld_options(NO_SPLIT ${${GROUPED_FLAGS}})
else()
message(FATAL_ERROR "Variable '${GROUPED_FLAGS}' is not defined, "
"please ensure the variable is defined and points to valid linker flags. "
"If '${GROUPED_FLAGS}' is a linker flags itself, then it must be placed in a list")
endif()
endforeach()
zephyr_link_libraries(PROPERTY base)
zephyr_link_libraries_ifndef(CONFIG_LINKER_USE_RELAX PROPERTY no_relax)
@@ -533,6 +578,24 @@ zephyr_compile_options($<$<COMPILE_LANGUAGE:CXX>:$<TARGET_PROPERTY:compiler,no_p
zephyr_link_libraries_ifndef(CONFIG_NATIVE_LIBRARY
$<TARGET_PROPERTY:linker,no_position_independent>)
if(CONFIG_INSTRUMENTATION)
# @Intent: Enable function instrumentation injection at compile time
zephyr_compile_options($<$<COMPILE_LANGUAGE:C>:$<TARGET_PROPERTY:compiler,func_instrumentation>>)
zephyr_compile_options($<$<COMPILE_LANGUAGE:CXX>:$<TARGET_PROPERTY:compiler,func_instrumentation>>)
# @Intent: Enable function blocklist for the instrumentation subsystem
if(CONFIG_INSTRUMENTATION_EXCLUDE_FUNCTION_LIST)
zephyr_compile_options($<$<COMPILE_LANGUAGE:C>:$<TARGET_PROPERTY:compiler,func_instrumentation_exclude_function_list>>)
zephyr_compile_options($<$<COMPILE_LANGUAGE:CXX>:$<TARGET_PROPERTY:compiler,func_instrumentation_exclude_function_list>>)
endif()
# @Intent: Enable file blocklist for the instrumentation subsystem
if(CONFIG_INSTRUMENTATION_EXCLUDE_FILE_LIST)
zephyr_compile_options($<$<COMPILE_LANGUAGE:C>:$<TARGET_PROPERTY:compiler,func_instrumentation_exclude_file_list>>)
zephyr_compile_options($<$<COMPILE_LANGUAGE:CXX>:$<TARGET_PROPERTY:compiler,func_instrumentation_exclude_file_list>>)
endif()
endif()
# Allow the user to inject options when calling cmake, e.g.
# 'cmake -DEXTRA_CFLAGS="-Werror -Wno-deprecated-declarations" ..'
include(cmake/extra_flags.cmake)
@@ -674,6 +737,10 @@ zephyr_get(KERNEL_VERSION_CUSTOMIZATION SYSBUILD LOCAL)
set_property(TARGET version_h PROPERTY KERNEL_VERSION_CUSTOMIZATION ${KERNEL_VERSION_CUSTOMIZATION})
if(EXISTS ${APPLICATION_SOURCE_DIR}/VERSION)
# A generator expression is used to allow applications to add their own dependencies for the
# file version, this might typically be the git index file if the application is in a git
# repository. To add a dependency to the application version file, this can be used:
# set_property(TARGET app_version_h PROPERTY APP_VERSION_DEPENDS <FILE>)
add_custom_command(
OUTPUT ${PROJECT_BINARY_DIR}/include/generated/zephyr/app_version.h
COMMAND ${CMAKE_COMMAND} -DZEPHYR_BASE=${ZEPHYR_BASE}
@@ -684,6 +751,7 @@ if(EXISTS ${APPLICATION_SOURCE_DIR}/VERSION)
${build_version_argument}
-P ${ZEPHYR_BASE}/cmake/gen_version_h.cmake
DEPENDS ${APPLICATION_SOURCE_DIR}/VERSION ${git_dependency}
$<TARGET_PROPERTY:app_version_h,APP_VERSION_DEPENDS>
COMMAND_EXPAND_LISTS
)
add_custom_target(
@@ -981,10 +1049,14 @@ add_custom_target(${DEVICE_API_LD_TARGET}
zephyr_linker_include_generated(CMAKE ${DEVICE_API_LINKER_SECTIONS_CMAKE})
# Add a pseudo-target that is up-to-date when all generated headers
# are up-to-date.
# Create an interface library which collects the dependencies to Zephyr
# generated headers. Libraries containing files that include these headers can
# use add_dependencies or target_link_libraries against this target to ensure
# that generated headers are up-to-date before the libraries are built. This
# ordering dependency can be propagated to these libraries' dependenents via
# the PUBLIC or INTERFACE option of target_link_libraries.
add_custom_target(zephyr_generated_headers)
add_library(zephyr_generated_headers INTERFACE)
add_dependencies(zephyr_generated_headers
offsets_h version_h
)
@@ -1081,14 +1153,16 @@ if(CONFIG_LLEXT)
# Weak definitions for these must be added at the end of the link order
# to avoid shadowing actual implementations.
add_library(syscall_weakdefs syscall_weakdefs_llext.c)
add_dependencies(syscall_weakdefs zephyr_generated_headers)
target_link_libraries(syscall_weakdefs zephyr_interface)
target_link_libraries(syscall_weakdefs
zephyr_generated_headers
zephyr_interface
)
list(APPEND NO_WHOLE_ARCHIVE_LIBS syscall_weakdefs)
endif()
get_property(OUTPUT_FORMAT GLOBAL PROPERTY PROPERTY_OUTPUT_FORMAT)
if (CONFIG_CODE_DATA_RELOCATION)
if(CONFIG_CODE_DATA_RELOCATION)
set(CODE_RELOCATION_DEP code_relocation_source_lib)
endif() # CONFIG_CODE_DATA_RELOCATION
@@ -1831,26 +1905,39 @@ endif()
if(CONFIG_BUILD_OUTPUT_BIN AND CONFIG_BUILD_OUTPUT_UF2)
if(CONFIG_BUILD_OUTPUT_UF2_USE_FLASH_BASE)
set(flash_addr "${CONFIG_FLASH_BASE_ADDRESS}")
set(code_address "${CONFIG_FLASH_BASE_ADDRESS}")
else()
set(flash_addr "${CONFIG_FLASH_LOAD_OFFSET}")
set(code_address "${CONFIG_FLASH_LOAD_OFFSET}")
endif()
if(CONFIG_BUILD_OUTPUT_UF2_USE_FLASH_OFFSET)
# Note, the `+ 0` in formula below avoids errors in cases where a Kconfig
# variable is undefined and thus expands to nothing.
math(EXPR flash_addr
"${flash_addr} + ${CONFIG_FLASH_LOAD_OFFSET} + 0"
math(EXPR code_address
"${code_address} + ${CONFIG_FLASH_LOAD_OFFSET} + 0"
OUTPUT_FORMAT HEXADECIMAL
)
endif()
# No-XIP images (such as ones for RP2350 with CONFIG_XIP=n)
# are typically loaded to RAM
if(NOT CONFIG_XIP)
if(CONFIG_BUILD_OUTPUT_ADJUST_LMA)
math(EXPR code_address
"${CONFIG_SRAM_BASE_ADDRESS} + ${CONFIG_BUILD_OUTPUT_ADJUST_LMA} + 0"
OUTPUT_FORMAT HEXADECIMAL
)
else()
set(code_address "${CONFIG_SRAM_BASE_ADDRESS}")
endif()
endif()
list(APPEND
post_build_commands
COMMAND ${PYTHON_EXECUTABLE} ${ZEPHYR_BASE}/scripts/build/uf2conv.py
-c
-f ${CONFIG_BUILD_OUTPUT_UF2_FAMILY_ID}
-b ${flash_addr}
-b ${code_address}
-o ${KERNEL_UF2_NAME}
${KERNEL_BIN_NAME}
)
@@ -2021,32 +2108,20 @@ if(CONFIG_BUILD_OUTPUT_COMPRESS_DEBUG_SECTIONS)
endif()
if(CONFIG_BUILD_OUTPUT_EXE)
if (NOT CONFIG_NATIVE_LIBRARY)
list(APPEND
post_build_commands
COMMAND
${CMAKE_COMMAND} -E copy ${KERNEL_ELF_NAME} ${KERNEL_EXE_NAME}
)
list(APPEND
post_build_byproducts
${KERNEL_EXE_NAME}
)
else()
if(CMAKE_GENERATOR STREQUAL "Unix Makefiles")
set(MAKE "${CMAKE_MAKE_PROGRAM}" CACHE FILEPATH "cmake defined make")
endif()
find_program(MAKE make REQUIRED)
add_custom_target(native_runner_executable
ALL
COMMENT "Building native simulator runner, and linking final executable"
COMMAND
${MAKE} -f ${ZEPHYR_BASE}/scripts/native_simulator/Makefile all --warn-undefined-variables
-r NSI_CONFIG_FILE=${APPLICATION_BINARY_DIR}/zephyr/NSI/nsi_config
# nsi_config is created by the board cmake file
DEPENDS ${logical_target_for_zephyr_elf}
BYPRODUCTS ${KERNEL_EXE_NAME}
)
if(CMAKE_GENERATOR STREQUAL "Unix Makefiles")
set(MAKE "${CMAKE_MAKE_PROGRAM}" CACHE FILEPATH "cmake defined make")
endif()
find_program(MAKE make REQUIRED)
add_custom_target(native_runner_executable
ALL
COMMENT "Building native simulator runner, and linking final executable"
COMMAND
${MAKE} -f ${ZEPHYR_BASE}/scripts/native_simulator/Makefile all --warn-undefined-variables
-r NSI_CONFIG_FILE=${APPLICATION_BINARY_DIR}/zephyr/NSI/nsi_config
# nsi_config is created by the board cmake file
DEPENDS ${logical_target_for_zephyr_elf}
BYPRODUCTS ${KERNEL_EXE_NAME}
)
set(BYPRODUCT_KERNEL_EXE_NAME "${PROJECT_BINARY_DIR}/${KERNEL_EXE_NAME}" CACHE FILEPATH "Kernel exe file" FORCE)
endif()
@@ -2064,7 +2139,7 @@ if(CONFIG_BUILD_OUTPUT_INFO_HEADER)
)
endif()
if (CONFIG_LLEXT AND CONFIG_LLEXT_EXPORT_BUILTINS_BY_SLID)
if(CONFIG_LLEXT AND CONFIG_LLEXT_EXPORT_BUILTINS_BY_SLID)
#slidgen must be the first post-build command to be executed
#on the Zephyr ELF to ensure that all other commands, such as
#binary file generation, are operating on a preparated ELF.
@@ -2130,10 +2205,20 @@ if(signing_script)
endif()
# Generate USB-C VIF policies in XML format
if (CONFIG_BUILD_OUTPUT_VIF)
if(CONFIG_BUILD_OUTPUT_VIF)
include(${CMAKE_CURRENT_LIST_DIR}/cmake/vif.cmake)
endif()
get_property(post_build_patch_elf_commands
GLOBAL PROPERTY
post_build_patch_elf_commands
)
list(PREPEND
post_build_commands
${post_build_patch_elf_commands}
)
get_property(extra_post_build_commands
GLOBAL PROPERTY
extra_post_build_commands
@@ -2171,7 +2256,7 @@ if(LOG_DICT_DB_NAME_ARG)
--build-header ${PROJECT_BINARY_DIR}/include/generated/zephyr/version.h
)
if (NOT CONFIG_LOG_DICTIONARY_DB_TARGET)
if(NOT CONFIG_LOG_DICTIONARY_DB_TARGET)
# If not using a separate target for generating logging dictionary
# database, add the generation to post build command to make sure
# the database is actually being generated.
@@ -2374,6 +2459,9 @@ add_subdirectory_ifdef(
cmake/makefile_exports
)
# Ask the compiler to set the lib_include_dir and rt_library properties
compiler_set_linker_properties()
toolchain_linker_finalize()
# export build information

View File

@@ -7,7 +7,7 @@
source "Kconfig.constants"
osource "${APPLICATION_SOURCE_DIR}/VERSION"
osource "$(APPLICATION_SOURCE_DIR)/VERSION"
# Include Kconfig.defconfig files first so that they can override defaults and
# other symbol/choice properties by adding extra symbol/choice definitions.
@@ -460,17 +460,6 @@ config NATIVE_BUILD
Zephyr will be built targeting the host system for debug and
development purposes.
config NATIVE_APPLICATION
bool
default y if ARCH_POSIX
depends on !NATIVE_LIBRARY
select NATIVE_BUILD
select DEPRECATED
help
Build as a native application that can run on the host and using
resources and libraries provided by the host. This option is deprecated
and will be removed in Zephyr v4.3
config NATIVE_LIBRARY
bool
select NATIVE_BUILD
@@ -974,7 +963,7 @@ config BUILD_OUTPUT_STRIP_PATHS
bool "Strip absolute paths from binaries"
default y
help
If the compiler supports it, strip the ${ZEPHYR_BASE} prefix from the
If the compiler supports it, strip the $(ZEPHYR_BASE) prefix from the
__FILE__ macro used in __ASSERT*, in the
.noinit."/home/joe/zephyr/fu/bar.c" section names and in any
application code.
@@ -1040,7 +1029,7 @@ config WARN_EXPERIMENTAL
config NOT_SECURE
bool
help
Symbol to be selected by a feature to inidicate that feature is
Symbol to be selected by a feature to indicate that feature is
not secure.
config TAINT

202
LICENSES/Apache-2.0.txt Normal file
View File

@@ -0,0 +1,202 @@
Apache License
Version 2.0, January 2004
http://www.apache.org/licenses/
TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
1. Definitions.
"License" shall mean the terms and conditions for use, reproduction,
and distribution as defined by Sections 1 through 9 of this document.
"Licensor" shall mean the copyright owner or entity authorized by
the copyright owner that is granting the License.
"Legal Entity" shall mean the union of the acting entity and all
other entities that control, are controlled by, or are under common
control with that entity. For the purposes of this definition,
"control" means (i) the power, direct or indirect, to cause the
direction or management of such entity, whether by contract or
otherwise, or (ii) ownership of fifty percent (50%) or more of the
outstanding shares, or (iii) beneficial ownership of such entity.
"You" (or "Your") shall mean an individual or Legal Entity
exercising permissions granted by this License.
"Source" form shall mean the preferred form for making modifications,
including but not limited to software source code, documentation
source, and configuration files.
"Object" form shall mean any form resulting from mechanical
transformation or translation of a Source form, including but
not limited to compiled object code, generated documentation,
and conversions to other media types.
"Work" shall mean the work of authorship, whether in Source or
Object form, made available under the License, as indicated by a
copyright notice that is included in or attached to the work
(an example is provided in the Appendix below).
"Derivative Works" shall mean any work, whether in Source or Object
form, that is based on (or derived from) the Work and for which the
editorial revisions, annotations, elaborations, or other modifications
represent, as a whole, an original work of authorship. For the purposes
of this License, Derivative Works shall not include works that remain
separable from, or merely link (or bind by name) to the interfaces of,
the Work and Derivative Works thereof.
"Contribution" shall mean any work of authorship, including
the original version of the Work and any modifications or additions
to that Work or Derivative Works thereof, that is intentionally
submitted to Licensor for inclusion in the Work by the copyright owner
or by an individual or Legal Entity authorized to submit on behalf of
the copyright owner. For the purposes of this definition, "submitted"
means any form of electronic, verbal, or written communication sent
to the Licensor or its representatives, including but not limited to
communication on electronic mailing lists, source code control systems,
and issue tracking systems that are managed by, or on behalf of, the
Licensor for the purpose of discussing and improving the Work, but
excluding communication that is conspicuously marked or otherwise
designated in writing by the copyright owner as "Not a Contribution."
"Contributor" shall mean Licensor and any individual or Legal Entity
on behalf of whom a Contribution has been received by Licensor and
subsequently incorporated within the Work.
2. Grant of Copyright License. Subject to the terms and conditions of
this License, each Contributor hereby grants to You a perpetual,
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
copyright license to reproduce, prepare Derivative Works of,
publicly display, publicly perform, sublicense, and distribute the
Work and such Derivative Works in Source or Object form.
3. Grant of Patent License. Subject to the terms and conditions of
this License, each Contributor hereby grants to You a perpetual,
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
(except as stated in this section) patent license to make, have made,
use, offer to sell, sell, import, and otherwise transfer the Work,
where such license applies only to those patent claims licensable
by such Contributor that are necessarily infringed by their
Contribution(s) alone or by combination of their Contribution(s)
with the Work to which such Contribution(s) was submitted. If You
institute patent litigation against any entity (including a
cross-claim or counterclaim in a lawsuit) alleging that the Work
or a Contribution incorporated within the Work constitutes direct
or contributory patent infringement, then any patent licenses
granted to You under this License for that Work shall terminate
as of the date such litigation is filed.
4. Redistribution. You may reproduce and distribute copies of the
Work or Derivative Works thereof in any medium, with or without
modifications, and in Source or Object form, provided that You
meet the following conditions:
(a) You must give any other recipients of the Work or
Derivative Works a copy of this License; and
(b) You must cause any modified files to carry prominent notices
stating that You changed the files; and
(c) You must retain, in the Source form of any Derivative Works
that You distribute, all copyright, patent, trademark, and
attribution notices from the Source form of the Work,
excluding those notices that do not pertain to any part of
the Derivative Works; and
(d) If the Work includes a "NOTICE" text file as part of its
distribution, then any Derivative Works that You distribute must
include a readable copy of the attribution notices contained
within such NOTICE file, excluding those notices that do not
pertain to any part of the Derivative Works, in at least one
of the following places: within a NOTICE text file distributed
as part of the Derivative Works; within the Source form or
documentation, if provided along with the Derivative Works; or,
within a display generated by the Derivative Works, if and
wherever such third-party notices normally appear. The contents
of the NOTICE file are for informational purposes only and
do not modify the License. You may add Your own attribution
notices within Derivative Works that You distribute, alongside
or as an addendum to the NOTICE text from the Work, provided
that such additional attribution notices cannot be construed
as modifying the License.
You may add Your own copyright statement to Your modifications and
may provide additional or different license terms and conditions
for use, reproduction, or distribution of Your modifications, or
for any such Derivative Works as a whole, provided Your use,
reproduction, and distribution of the Work otherwise complies with
the conditions stated in this License.
5. Submission of Contributions. Unless You explicitly state otherwise,
any Contribution intentionally submitted for inclusion in the Work
by You to the Licensor shall be under the terms and conditions of
this License, without any additional terms or conditions.
Notwithstanding the above, nothing herein shall supersede or modify
the terms of any separate license agreement you may have executed
with Licensor regarding such Contributions.
6. Trademarks. This License does not grant permission to use the trade
names, trademarks, service marks, or product names of the Licensor,
except as required for reasonable and customary use in describing the
origin of the Work and reproducing the content of the NOTICE file.
7. Disclaimer of Warranty. Unless required by applicable law or
agreed to in writing, Licensor provides the Work (and each
Contributor provides its Contributions) on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
implied, including, without limitation, any warranties or conditions
of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
PARTICULAR PURPOSE. You are solely responsible for determining the
appropriateness of using or redistributing the Work and assume any
risks associated with Your exercise of permissions under this License.
8. Limitation of Liability. In no event and under no legal theory,
whether in tort (including negligence), contract, or otherwise,
unless required by applicable law (such as deliberate and grossly
negligent acts) or agreed to in writing, shall any Contributor be
liable to You for damages, including any direct, indirect, special,
incidental, or consequential damages of any character arising as a
result of this License or out of the use or inability to use the
Work (including but not limited to damages for loss of goodwill,
work stoppage, computer failure or malfunction, or any and all
other commercial damages or losses), even if such Contributor
has been advised of the possibility of such damages.
9. Accepting Warranty or Additional Liability. While redistributing
the Work or Derivative Works thereof, You may choose to offer,
and charge a fee for, acceptance of support, warranty, indemnity,
or other liability obligations and/or rights consistent with this
License. However, in accepting such obligations, You may act only
on Your own behalf and on Your sole responsibility, not on behalf
of any other Contributor, and only if You agree to indemnify,
defend, and hold each Contributor harmless for any liability
incurred by, or claims asserted against, such Contributor by reason
of your accepting any such warranty or additional liability.
END OF TERMS AND CONDITIONS
APPENDIX: How to apply the Apache License to your work.
To apply the Apache License to your work, attach the following
boilerplate notice, with the fields enclosed by brackets "[]"
replaced with your own identifying information. (Don't include
the brackets!) The text should be enclosed in the appropriate
comment syntax for the file format. We also recommend that a
file or class name and description of purpose be included on the
same "printed page" as the copyright notice for easier
identification within third-party archives.
Copyright [yyyy] [name of copyright owner]
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.

10
LICENSES/README.md Normal file
View File

@@ -0,0 +1,10 @@
> [!IMPORTANT]
> The license files in this directory are maintained as per the recommendation
> of the REUSE specification (https://reuse.software/spec-3.3).
> These are licenses that may apply to some components hosted in the source tree
> but that do not end up in built binaries
> (see https://docs.zephyrproject.org/latest/LICENSING.html#zephyr-licensing).
>
> These files do _not_ define the license of the Zephyr project itself.
> Zephyr is licensed under the Apache 2.0 license, as specified in
> the [LICENSE](/LICENSE) file at the root of the repository.

File diff suppressed because it is too large Load Diff

25
REUSE.toml Normal file
View File

@@ -0,0 +1,25 @@
version = 1
# Declare default license and copyright text for files that typically do not include them.
[[annotations]]
path = [
# zephyr-keep-sorted-start
"**/*.cfg",
"**/*.cmake",
"**/*.conf",
"**/*.ecl",
"**/*.html",
"**/*.rst",
"**/*.yaml",
"**/*.yml",
"**/*_defconfig",
"**/CMakeLists.txt",
"**/Kconfig*",
"doc/requirements.in",
"doc/requirements.txt",
"scripts/requirements-*.in",
"scripts/requirements-*.txt",
# zephyr-keep-sorted-stop
]
SPDX-License-Identifier = "Apache-2.0"
SPDX-FileCopyrightText = "Copyright The Zephyr Project Contributors"

View File

@@ -1,5 +1,5 @@
VERSION_MAJOR = 4
VERSION_MINOR = 2
PATCHLEVEL = 1
VERSION_MINOR = 3
PATCHLEVEL = 0
VERSION_TWEAK = 0
EXTRAVERSION =

View File

@@ -57,6 +57,7 @@ config ARM64
select ARCH_HAS_DEMAND_MAPPING
select ARCH_SUPPORTS_EVICTION_TRACKING
select EVICTION_TRACKING if DEMAND_PAGING
select MEM_DOMAIN_HAS_THREAD_LIST if ARM_MPU
help
ARM64 (AArch64) architecture
@@ -135,6 +136,7 @@ config XTENSA
select ARCH_HAS_DIRECTED_IPIS
select THREAD_STACK_INFO
select ARCH_HAS_THREAD_PRIV_STACK_SPACE_GET if USERSPACE
select ARCH_SUPPORTS_COREDUMP_STACK_PTR if !SMP
help
Xtensa architecture
@@ -230,7 +232,17 @@ config SRAM_BASE_ADDRESS
/chosen/zephyr,sram in devicetree. The user should generally avoid
changing it via menuconfig or in configuration files.
if ARC || ARM || ARM64 || X86 || RISCV || RX
config XIP
bool "Execute in place"
help
This option allows zephyr to operate with its text and read-only
sections residing in ROM (or similar read-only memory). Not all boards
support this option so it must be used with care; you must also
supply a linker command file when building your image. Enabling this
option increases both the code and data footprint of the image.
if ARC || ARM || ARM64 || X86 || RISCV || RX || ARCH_POSIX
# Workaround for not being able to have commas in macro arguments
DT_CHOSEN_Z_FLASH := zephyr,flash
@@ -253,7 +265,7 @@ config FLASH_BASE_ADDRESS
normally set by the board's defconfig file and the user should generally
avoid modifying it via the menu configuration.
endif # ARM || ARM64 || ARC || X86 || RISCV || RX
endif # ARM || ARM64 || ARC || X86 || RISCV || RX || ARCH_POSIX
if ARCH_HAS_TRUSTED_EXECUTION
@@ -316,6 +328,16 @@ config USERSPACE
privileged mode or handling a system call; to ensure these are always
caught, enable CONFIG_HW_STACK_PROTECTION.
config NOINIT_SNIPPET_FIRST
bool "Place the no-init linker script snippet first"
help
By default the include/zephyr/linker/common-noinit.ld file inserts the
snippets-noinit.ld file at the end of the section. There are times when
the directives in the snippets-noinit.ld file apply to the other directives
in this file. And in that case the include statement for the snippets-noinit.ld
file needs to come at the start of the section. This configuration option
allows that to happen.
config PRIVILEGED_STACK_SIZE
int "Size of privileged stack"
default 2048 if EMUL
@@ -472,6 +494,7 @@ config ISR_TABLES_LOCAL_DECLARATION
config DYNAMIC_INTERRUPTS
bool "Installation of IRQs at runtime"
select SRAM_SW_ISR_TABLE
help
Enable installation of interrupts at runtime, which will move some
interrupt-related data structures to RAM instead of ROM, and
@@ -598,6 +621,12 @@ config SRAM_VECTOR_TABLE
When XiP is enabled, this option will result in the vector table being
relocated from Flash to SRAM.
config SRAM_SW_ISR_TABLE
bool "Place the software ISR table in SRAM instead of flash"
help
The option specifies that the software interrupts vector table will be
placed inside SRAM instead of the flash.
config IRQ_OFFLOAD_NESTED
bool "irq_offload() supports nested IRQs"
depends on IRQ_OFFLOAD
@@ -763,6 +792,9 @@ config ARCH_HAS_THREAD_PRIV_STACK_SPACE_GET
help
Select when the architecture implements arch_thread_priv_stack_space_get().
config ARCH_HAS_HW_SHADOW_STACK
bool
#
# Other architecture related options
#
@@ -1075,9 +1107,12 @@ config CACHE_MANAGEMENT
This option enables the cache management functions backed by arch or
driver code.
if CACHE_MANAGEMENT
if DCACHE
config DCACHE_LINE_SIZE_DETECT
bool "Detect d-cache line size at runtime"
depends on CACHE_MANAGEMENT && DCACHE
help
This option enables querying some architecture-specific hardware for
finding the d-cache line size at the expense of taking more memory and
@@ -1089,18 +1124,21 @@ config DCACHE_LINE_SIZE_DETECT
config DCACHE_LINE_SIZE
int "d-cache line size"
depends on CACHE_MANAGEMENT && DCACHE && !DCACHE_LINE_SIZE_DETECT
depends on !DCACHE_LINE_SIZE_DETECT
default $(dt_node_int_prop_int,/cpus/cpu@0,d-cache-line-size) \
if $(dt_node_has_prop,/cpus/cpu@0,d-cache-line-size)
default 0
help
Size in bytes of a CPU d-cache line. If this is set to 0 the value is
obtained from the 'd-cache-line-size' DT property instead if present.
Size in bytes of a CPU d-cache line.
Detect automatically at runtime by selecting DCACHE_LINE_SIZE_DETECT.
endif # DCACHE
if ICACHE
config ICACHE_LINE_SIZE_DETECT
bool "Detect i-cache line size at runtime"
depends on CACHE_MANAGEMENT && ICACHE
help
This option enables querying some architecture-specific hardware for
finding the i-cache line size at the expense of taking more memory and
@@ -1112,17 +1150,19 @@ config ICACHE_LINE_SIZE_DETECT
config ICACHE_LINE_SIZE
int "i-cache line size"
depends on CACHE_MANAGEMENT && ICACHE && !ICACHE_LINE_SIZE_DETECT
depends on !ICACHE_LINE_SIZE_DETECT
default $(dt_node_int_prop_int,/cpus/cpu@0,i-cache-line-size) \
if $(dt_node_has_prop,/cpus/cpu@0,i-cache-line-size)
default 0
help
Size in bytes of a CPU i-cache line. If this is set to 0 the value is
obtained from the 'i-cache-line-size' DT property instead if present.
Size in bytes of a CPU i-cache line.
Detect automatically at runtime by selecting ICACHE_LINE_SIZE_DETECT.
endif # ICACHE
choice CACHE_TYPE
prompt "Cache type"
depends on CACHE_MANAGEMENT
default ARCH_CACHE
config ARCH_CACHE
@@ -1137,6 +1177,8 @@ config EXTERNAL_CACHE
endchoice
endif # CACHE_MANAGEMENT
endmenu
config ARCH
@@ -1181,3 +1223,9 @@ config ARCH_HAS_CUSTOM_CURRENT_IMPL
help
Select when architecture implements arch_current_thread() &
arch_current_thread_set().
config ARCH_IPI_LAZY_COPROCESSORS_SAVE
bool
help
Select when the architecture has multi-CPU lazy context switching
of coprocessor registers.

View File

@@ -370,6 +370,28 @@ endmenu
config DCACHE_LINE_SIZE
default 32
config ARC_DCACHE_REGION_OPERATIONS
bool "DCACHE region operations"
depends on CACHE_MANAGEMENT && DCACHE
default n
help
Perform L1 data cache management operations by regions rather than line by line in a loop,
improves performance of cache management operations.
config ARC_SLC
bool "System level cache"
depends on CACHE_MANAGEMENT && DCACHE && (CPU_HS4X || CPU_HS3X)
default n
help
This option enables System Level Cache, and adds SLC support to the data cache management operations.
config ARC_SLC_LINE_SIZE
int "SLC line size"
depends on ARC_SLC
default 128
help
Size in bytes of a CPU system level cache line.
config ARC_EXCEPTION_STACK_SIZE
int "ARC exception handling stack size"
default 768 if !64BIT
@@ -389,6 +411,11 @@ config ARC_EARLY_SOC_INIT
(before C runtime initialization). Setup code is called in form of
soc_early_asm_init_percpu assembler macro.
# ARC vector table must be aligned to 1KiB boundary, and will be at the
# start of the ROM region.
config ROM_START_OFFSET
default 0x400 if BOOTLOADER_MCUBOOT
config MAIN_STACK_SIZE
default 4096 if 64BIT

View File

@@ -2,6 +2,7 @@
/*
* Copyright (c) 2016 Synopsys, Inc. All rights reserved.
* Copyright (c) 2025 GSI Technology, All rights reserved.
*
* SPDX-License-Identifier: Apache-2.0
*/
@@ -29,16 +30,34 @@
size_t sys_cache_line_size;
#endif
#define DC_CTRL_DC_ENABLE 0x0 /* enable d-cache */
#define DC_CTRL_DC_DISABLE 0x1 /* disable d-cache */
#define DC_CTRL_INVALID_ONLY 0x0 /* invalid d-cache only */
#define DC_CTRL_INVALID_FLUSH 0x40 /* invalid and flush d-cache */
#define DC_CTRL_ENABLE_FLUSH_LOCKED 0x80 /* locked d-cache can be flushed */
#define DC_CTRL_DISABLE_FLUSH_LOCKED 0x0 /* locked d-cache cannot be flushed */
#define DC_CTRL_FLUSH_STATUS 0x100/* flush status */
#define DC_CTRL_DIRECT_ACCESS 0x0 /* direct access mode */
#define DC_CTRL_INDIRECT_ACCESS 0x20 /* indirect access mode */
#define DC_CTRL_OP_SUCCEEDED 0x4 /* d-cache operation succeeded */
#define DC_CTRL_DC_ENABLE 0x0 /* enable d-cache */
#define DC_CTRL_DC_DISABLE 0x1 /* disable d-cache */
#define DC_CTRL_INVALID_ONLY 0x0 /* invalid d-cache only */
#define DC_CTRL_INVALID_FLUSH 0x40 /* invalid and flush d-cache */
#define DC_CTRL_ENABLE_FLUSH_LOCKED 0x80 /* locked d-cache can be flushed */
#define DC_CTRL_DISABLE_FLUSH_LOCKED 0x0 /* locked d-cache cannot be flushed */
#define DC_CTRL_FLUSH_STATUS 0x100 /* flush status */
#define DC_CTRL_DIRECT_ACCESS 0x0 /* direct access mode */
#define DC_CTRL_INDIRECT_ACCESS 0x20 /* indirect access mode */
#define DC_CTRL_OP_SUCCEEDED 0x4 /* d-cache operation succeeded */
#define DC_CTRL_INVALIDATE_MODE 0x40 /* d-cache invalidate mode bit */
#define DC_CTRL_REGION_OP 0xe00 /* d-cache region operation */
#define MMU_BUILD_PHYSICAL_ADDR_EXTENSION 0x1000 /* physical address extension enable mask */
#define SLC_CTRL_DISABLE 0x1 /* SLC disable */
#define SLC_CTRL_INVALIDATE_MODE 0x40 /* SLC invalidate mode */
#define SLC_CTRL_BUSY_STATUS 0x100 /* SLC busy status */
#define SLC_CTRL_REGION_OP 0xe00 /* SLC region operation */
#if defined(CONFIG_ARC_SLC)
/*
* spinlock is used for SLC access because depending on HW configuration, the SLC might be shared
* between the cores, and in this case, only one core is allowed to access the SLC register
* interface at a time.
*/
static struct k_spinlock slc_lock;
#endif
static bool dcache_available(void)
{
@@ -55,9 +74,189 @@ static void dcache_dc_ctrl(uint32_t dcache_en_mask)
}
}
static bool pae_exists(void)
{
uint32_t bcr = z_arc_v2_aux_reg_read(_ARC_V2_MMU_BUILD);
return 1 == FIELD_GET(MMU_BUILD_PHYSICAL_ADDR_EXTENSION, bcr);
}
#if defined(CONFIG_ARC_SLC)
static void slc_enable(void)
{
uint32_t val = z_arc_v2_aux_reg_read(_ARC_V2_SLC_CTRL);
val &= ~SLC_CTRL_DISABLE;
z_arc_v2_aux_reg_write(_ARC_V2_SLC_CTRL, val);
}
static void slc_high_addr_init(void)
{
z_arc_v2_aux_reg_write(_ARC_V2_SLC_RGN_END1, 0);
z_arc_v2_aux_reg_write(_ARC_V2_SLC_RGN_START1, 0);
}
static void slc_flush_region(void *start_addr_ptr, size_t size)
{
uintptr_t start_addr = (uintptr_t)start_addr_ptr;
uintptr_t end_addr;
uint32_t ctrl;
K_SPINLOCK(&slc_lock) {
ctrl = z_arc_v2_aux_reg_read(_ARC_V2_SLC_CTRL);
ctrl &= ~SLC_CTRL_REGION_OP;
z_arc_v2_aux_reg_write(_ARC_V2_SLC_CTRL, ctrl);
/*
* END needs to be setup before START (latter triggers the operation)
* END can't be same as START, so add (l2_line_sz - 1) to sz
*/
end_addr = start_addr + size + CONFIG_ARC_SLC_LINE_SIZE - 1;
z_arc_v2_aux_reg_write(_ARC_V2_SLC_RGN_END, end_addr);
/* Align start address to cache line size, see STAR 5103816 */
z_arc_v2_aux_reg_write(_ARC_V2_SLC_RGN_START,
start_addr & ~(CONFIG_ARC_SLC_LINE_SIZE - 1));
/* Make sure "busy" bit reports correct status, see STAR 9001165532 */
z_arc_v2_aux_reg_read(_ARC_V2_SLC_CTRL);
while (z_arc_v2_aux_reg_read(_ARC_V2_SLC_CTRL) & SLC_CTRL_BUSY_STATUS) {
/* Do Nothing */
}
}
}
static void slc_invalidate_region(void *start_addr_ptr, size_t size)
{
uintptr_t start_addr = (uintptr_t)start_addr_ptr;
uintptr_t end_addr;
uint32_t ctrl;
K_SPINLOCK(&slc_lock) {
ctrl = z_arc_v2_aux_reg_read(_ARC_V2_SLC_CTRL);
ctrl &= ~SLC_CTRL_INVALIDATE_MODE;
ctrl &= ~SLC_CTRL_REGION_OP;
ctrl |= FIELD_PREP(SLC_CTRL_REGION_OP, 0x1);
z_arc_v2_aux_reg_write(_ARC_V2_SLC_CTRL, ctrl);
/*
* END needs to be setup before START (latter triggers the operation)
* END can't be same as START, so add (l2_line_sz - 1) to sz
*/
end_addr = start_addr + size + CONFIG_ARC_SLC_LINE_SIZE - 1;
z_arc_v2_aux_reg_write(_ARC_V2_SLC_RGN_END, end_addr);
/* Align start address to cache line size, see STAR 5103816 */
z_arc_v2_aux_reg_write(_ARC_V2_SLC_RGN_START,
start_addr & ~(CONFIG_ARC_SLC_LINE_SIZE - 1));
/* Make sure "busy" bit reports correct status, see STAR 9001165532 */
z_arc_v2_aux_reg_read(_ARC_V2_SLC_CTRL);
while (z_arc_v2_aux_reg_read(_ARC_V2_SLC_CTRL) & SLC_CTRL_BUSY_STATUS) {
/* Do Nothing */
}
}
}
static void slc_flush_and_invalidate_region(void *start_addr_ptr, size_t size)
{
uintptr_t start_addr = (uintptr_t)start_addr_ptr;
uintptr_t end_addr;
uint32_t ctrl;
K_SPINLOCK(&slc_lock) {
ctrl = z_arc_v2_aux_reg_read(_ARC_V2_SLC_CTRL);
ctrl |= SLC_CTRL_INVALIDATE_MODE;
ctrl &= ~SLC_CTRL_REGION_OP;
ctrl |= FIELD_PREP(SLC_CTRL_REGION_OP, 0x1);
z_arc_v2_aux_reg_write(_ARC_V2_SLC_CTRL, ctrl);
/*
* END needs to be setup before START (latter triggers the operation)
* END can't be same as START, so add (l2_line_sz - 1) to sz
*/
end_addr = start_addr + size + CONFIG_ARC_SLC_LINE_SIZE - 1;
z_arc_v2_aux_reg_write(_ARC_V2_SLC_RGN_END, end_addr);
/* Align start address to cache line size, see STAR 5103816 */
z_arc_v2_aux_reg_write(_ARC_V2_SLC_RGN_START,
start_addr & ~(CONFIG_ARC_SLC_LINE_SIZE - 1));
/* Make sure "busy" bit reports correct status, see STAR 9001165532 */
z_arc_v2_aux_reg_read(_ARC_V2_SLC_CTRL);
while (z_arc_v2_aux_reg_read(_ARC_V2_SLC_CTRL) & SLC_CTRL_BUSY_STATUS) {
/* Do Nothing */
}
}
}
static void slc_flush_all(void)
{
K_SPINLOCK(&slc_lock) {
z_arc_v2_aux_reg_write(_ARC_V2_SLC_FLUSH, 0x1);
/* Make sure "busy" bit reports correct status, see STAR 9001165532 */
z_arc_v2_aux_reg_read(_ARC_V2_SLC_CTRL);
while (z_arc_v2_aux_reg_read(_ARC_V2_SLC_CTRL) & SLC_CTRL_BUSY_STATUS) {
/* Do Nothing */
}
}
}
static void slc_invalidate_all(void)
{
uint32_t ctrl;
K_SPINLOCK(&slc_lock) {
ctrl = z_arc_v2_aux_reg_read(_ARC_V2_SLC_CTRL);
ctrl &= ~SLC_CTRL_INVALIDATE_MODE;
z_arc_v2_aux_reg_write(_ARC_V2_SLC_CTRL, ctrl);
z_arc_v2_aux_reg_write(_ARC_V2_SLC_INVALIDATE, 0x1);
/* Make sure "busy" bit reports correct status, see STAR 9001165532 */
z_arc_v2_aux_reg_read(_ARC_V2_SLC_CTRL);
while (z_arc_v2_aux_reg_read(_ARC_V2_SLC_CTRL) & SLC_CTRL_BUSY_STATUS) {
/* Do Nothing */
}
}
}
static void slc_flush_and_invalidate_all(void)
{
uint32_t ctrl;
K_SPINLOCK(&slc_lock) {
ctrl = z_arc_v2_aux_reg_read(_ARC_V2_SLC_CTRL);
ctrl |= SLC_CTRL_INVALIDATE_MODE;
z_arc_v2_aux_reg_write(_ARC_V2_SLC_CTRL, ctrl);
z_arc_v2_aux_reg_write(_ARC_V2_SLC_INVALIDATE, 0x1);
/* Make sure "busy" bit reports correct status, see STAR 9001165532 */
z_arc_v2_aux_reg_read(_ARC_V2_SLC_CTRL);
while (z_arc_v2_aux_reg_read(_ARC_V2_SLC_CTRL) & SLC_CTRL_BUSY_STATUS) {
/* Do Nothing */
}
}
}
#endif /* CONFIG_ARC_SLC */
void arch_dcache_enable(void)
{
dcache_dc_ctrl(DC_CTRL_DC_ENABLE);
#if defined(CONFIG_ARC_SLC)
slc_enable();
#endif
}
void arch_dcache_disable(void)
@@ -65,17 +264,107 @@ void arch_dcache_disable(void)
/* nothing */
}
int arch_dcache_flush_range(void *start_addr_ptr, size_t size)
#if defined(CONFIG_ARC_DCACHE_REGION_OPERATIONS)
static void dcache_high_addr_init(void)
{
z_arc_v2_aux_reg_write(_ARC_V2_DC_PTAG_HI, 0);
}
static void dcache_flush_region(void *start_addr_ptr, size_t size)
{
size_t line_size = sys_cache_data_line_size_get();
uintptr_t start_addr = (uintptr_t)start_addr_ptr;
uintptr_t end_addr;
uint32_t ctrl;
unsigned int key;
key = arch_irq_lock(); /* --enter critical section-- */
ctrl = z_arc_v2_aux_reg_read(_ARC_V2_DC_CTRL);
ctrl &= ~DC_CTRL_REGION_OP;
z_arc_v2_aux_reg_write(_ARC_V2_DC_CTRL, ctrl);
end_addr = start_addr + size + line_size - 1;
z_arc_v2_aux_reg_write(_ARC_V2_DC_ENDR, end_addr);
z_arc_v2_aux_reg_write(_ARC_V2_DC_STARTR, start_addr);
while (z_arc_v2_aux_reg_read(_ARC_V2_DC_CTRL) & DC_CTRL_FLUSH_STATUS) {
/* Do nothing */
}
arch_irq_unlock(key); /* --exit critical section-- */
}
static void dcache_invalidate_region(void *start_addr_ptr, size_t size)
{
size_t line_size = sys_cache_data_line_size_get();
uintptr_t start_addr = (uintptr_t)start_addr_ptr;
uintptr_t end_addr;
uint32_t ctrl;
unsigned int key;
key = arch_irq_lock(); /* --enter critical section-- */
ctrl = z_arc_v2_aux_reg_read(_ARC_V2_DC_CTRL);
ctrl &= ~DC_CTRL_INVALIDATE_MODE;
ctrl &= ~DC_CTRL_REGION_OP;
ctrl |= FIELD_PREP(DC_CTRL_REGION_OP, 0x1);
z_arc_v2_aux_reg_write(_ARC_V2_DC_CTRL, ctrl);
end_addr = start_addr + size + line_size - 1;
z_arc_v2_aux_reg_write(_ARC_V2_DC_ENDR, end_addr);
z_arc_v2_aux_reg_write(_ARC_V2_DC_STARTR, start_addr);
arch_irq_unlock(key); /* --exit critical section-- */
}
static void dcache_flush_and_invalidate_region(void *start_addr_ptr, size_t size)
{
size_t line_size = sys_cache_data_line_size_get();
uintptr_t start_addr = (uintptr_t)start_addr_ptr;
uintptr_t end_addr;
uint32_t ctrl;
unsigned int key;
key = arch_irq_lock(); /* --enter critical section-- */
ctrl = z_arc_v2_aux_reg_read(_ARC_V2_DC_CTRL);
ctrl |= DC_CTRL_INVALIDATE_MODE;
ctrl &= ~DC_CTRL_REGION_OP;
ctrl |= FIELD_PREP(DC_CTRL_REGION_OP, 0x1);
z_arc_v2_aux_reg_write(_ARC_V2_DC_CTRL, ctrl);
end_addr = start_addr + size + line_size - 1;
z_arc_v2_aux_reg_write(_ARC_V2_DC_ENDR, end_addr);
z_arc_v2_aux_reg_write(_ARC_V2_DC_STARTR, start_addr);
while (z_arc_v2_aux_reg_read(_ARC_V2_DC_CTRL) & DC_CTRL_FLUSH_STATUS) {
/* Do nothing */
}
arch_irq_unlock(key); /* --exit critical section-- */
}
#else /* CONFIG_ARC_DCACHE_REGION_OPERATIONS */
static void dcache_flush_lines(void *start_addr_ptr, size_t size)
{
size_t line_size = sys_cache_data_line_size_get();
uintptr_t start_addr = (uintptr_t)start_addr_ptr;
uintptr_t end_addr;
unsigned int key;
if (!dcache_available() || (size == 0U) || line_size == 0U) {
return -ENOTSUP;
}
end_addr = start_addr + size;
start_addr = ROUND_DOWN(start_addr, line_size);
@@ -98,25 +387,25 @@ int arch_dcache_flush_range(void *start_addr_ptr, size_t size)
} while (start_addr < end_addr);
arch_irq_unlock(key); /* --exit critical section-- */
return 0;
}
int arch_dcache_invd_range(void *start_addr_ptr, size_t size)
static void dcache_invalidate_lines(void *start_addr_ptr, size_t size)
{
size_t line_size = sys_cache_data_line_size_get();
uintptr_t start_addr = (uintptr_t)start_addr_ptr;
uintptr_t end_addr;
unsigned int key;
uint32_t ctrl;
if (!dcache_available() || (size == 0U) || line_size == 0U) {
return -ENOTSUP;
}
end_addr = start_addr + size;
start_addr = ROUND_DOWN(start_addr, line_size);
key = arch_irq_lock(); /* -enter critical section- */
ctrl = z_arc_v2_aux_reg_read(_ARC_V2_DC_CTRL);
ctrl &= ~DC_CTRL_INVALIDATE_MODE;
z_arc_v2_aux_reg_write(_ARC_V2_DC_CTRL, ctrl);
do {
z_arc_v2_aux_reg_write(_ARC_V2_DC_IVDL, start_addr);
__builtin_arc_nop();
@@ -125,28 +414,182 @@ int arch_dcache_invd_range(void *start_addr_ptr, size_t size)
start_addr += line_size;
} while (start_addr < end_addr);
irq_unlock(key); /* -exit critical section- */
}
static void dcache_flush_and_invalidate_lines(void *start_addr_ptr, size_t size)
{
size_t line_size = sys_cache_data_line_size_get();
uintptr_t start_addr = (uintptr_t)start_addr_ptr;
uintptr_t end_addr;
unsigned int key;
uint32_t ctrl;
end_addr = start_addr + size;
start_addr = ROUND_DOWN(start_addr, line_size);
key = arch_irq_lock(); /* -enter critical section- */
ctrl = z_arc_v2_aux_reg_read(_ARC_V2_DC_CTRL);
ctrl |= DC_CTRL_INVALIDATE_MODE;
z_arc_v2_aux_reg_write(_ARC_V2_DC_CTRL, ctrl);
do {
z_arc_v2_aux_reg_write(_ARC_V2_DC_IVDL, start_addr);
__builtin_arc_nop();
__builtin_arc_nop();
__builtin_arc_nop();
start_addr += line_size;
} while (start_addr < end_addr);
irq_unlock(key); /* -exit critical section- */
}
#endif /* CONFIG_ARC_DCACHE_REGION_OPERATIONS */
int arch_dcache_flush_range(void *start_addr_ptr, size_t size)
{
size_t line_size = sys_cache_data_line_size_get();
if (!dcache_available() || (size == 0U) || line_size == 0U) {
return -ENOTSUP;
}
#if defined(CONFIG_ARC_DCACHE_REGION_OPERATIONS)
dcache_flush_region(start_addr_ptr, size);
#else
dcache_flush_lines(start_addr_ptr, size);
#endif
#if defined(CONFIG_ARC_SLC)
slc_flush_region(start_addr_ptr, size);
#endif
return 0;
}
int arch_dcache_invd_range(void *start_addr_ptr, size_t size)
{
size_t line_size = sys_cache_data_line_size_get();
if (!dcache_available() || (size == 0U) || line_size == 0U) {
return -ENOTSUP;
}
#if defined(CONFIG_ARC_DCACHE_REGION_OPERATIONS)
dcache_invalidate_region(start_addr_ptr, size);
#else
dcache_invalidate_lines(start_addr_ptr, size);
#endif
#if defined(CONFIG_ARC_SLC)
slc_invalidate_region(start_addr_ptr, size);
#endif
return 0;
}
int arch_dcache_flush_and_invd_range(void *start_addr_ptr, size_t size)
{
return -ENOTSUP;
size_t line_size = sys_cache_data_line_size_get();
if (!dcache_available() || (size == 0U) || line_size == 0U) {
return -ENOTSUP;
}
#if defined(CONFIG_ARC_DCACHE_REGION_OPERATIONS)
dcache_flush_and_invalidate_region(start_addr_ptr, size);
#else
dcache_flush_and_invalidate_lines(start_addr_ptr, size);
#endif
#if defined(CONFIG_ARC_SLC)
slc_flush_and_invalidate_region(start_addr_ptr, size);
#endif
return 0;
}
int arch_dcache_flush_all(void)
{
return -ENOTSUP;
size_t line_size = sys_cache_data_line_size_get();
unsigned int key;
if (!dcache_available() || line_size == 0U) {
return -ENOTSUP;
}
key = irq_lock();
z_arc_v2_aux_reg_write(_ARC_V2_DC_FLSH, 0x1);
while (z_arc_v2_aux_reg_read(_ARC_V2_DC_CTRL) & DC_CTRL_FLUSH_STATUS) {
/* Do nothing */
}
irq_unlock(key);
#if defined(CONFIG_ARC_SLC)
slc_flush_all();
#endif
return 0;
}
int arch_dcache_invd_all(void)
{
return -ENOTSUP;
size_t line_size = sys_cache_data_line_size_get();
unsigned int key;
uint32_t ctrl;
if (!dcache_available() || line_size == 0U) {
return -ENOTSUP;
}
key = irq_lock();
ctrl = z_arc_v2_aux_reg_read(_ARC_V2_DC_CTRL);
ctrl &= ~DC_CTRL_INVALIDATE_MODE;
z_arc_v2_aux_reg_write(_ARC_V2_DC_CTRL, ctrl);
z_arc_v2_aux_reg_write(_ARC_V2_DC_IVDC, 0x1);
irq_unlock(key);
#if defined(CONFIG_ARC_SLC)
slc_invalidate_all();
#endif
return 0;
}
int arch_dcache_flush_and_invd_all(void)
{
return -ENOTSUP;
size_t line_size = sys_cache_data_line_size_get();
unsigned int key;
uint32_t ctrl;
if (!dcache_available() || line_size == 0U) {
return -ENOTSUP;
}
key = irq_lock();
ctrl = z_arc_v2_aux_reg_read(_ARC_V2_DC_CTRL);
ctrl |= DC_CTRL_INVALIDATE_MODE;
z_arc_v2_aux_reg_write(_ARC_V2_DC_CTRL, ctrl);
z_arc_v2_aux_reg_write(_ARC_V2_DC_IVDC, 0x1);
while (z_arc_v2_aux_reg_read(_ARC_V2_DC_CTRL) & DC_CTRL_FLUSH_STATUS) {
/* Do nothing */
}
irq_unlock(key);
#if defined(CONFIG_ARC_SLC)
slc_flush_and_invalidate_all();
#endif
return 0;
}
#if defined(CONFIG_DCACHE_LINE_SIZE_DETECT)
@@ -224,6 +667,19 @@ static int init_dcache(void)
init_dcache_line_size();
#endif
/*
* Init high address registers to 0 if PAE exists, cache operations for 40 bit addresses not
* implemented
*/
if (pae_exists()) {
#if defined(CONFIG_ARC_DCACHE_REGION_OPERATIONS)
dcache_high_addr_init();
#endif
#if defined(CONFIG_ARC_SLC)
slc_high_addr_init();
#endif
}
return 0;
}

View File

@@ -15,6 +15,7 @@ LOG_MODULE_REGISTER(elf, CONFIG_LLEXT_LOG_LEVEL);
#define R_ARC_32 4
#define R_ARC_B26 5 /* AKA R_ARC_64 */
#define R_ARC_S25H_PCREL 16
#define R_ARC_S25W_PCREL 17
#define R_ARC_32_ME 27
@@ -68,12 +69,28 @@ int arch_elf_relocate(struct llext_loader *ldr, struct llext *ext, elf_rela_t *r
case R_ARC_B26:
UNALIGNED_PUT(sym_base_addr, (uint32_t *)loc);
break;
case R_ARC_S25W_PCREL:
/* ((S + A) - P) >> 2
case R_ARC_S25H_PCREL:
/* ((S + A) - P) >> 1
* S = symbol address
* A = addend
* P = relative offset to PCL
*/
value = (sym_base_addr + rel->r_addend - (loc & ~0x3)) >> 1;
insn = ME(insn);
/* disp25h */
insn = insn & ~0x7feffcf;
insn |= ((value >> 0) & 0x03ff) << 17;
insn |= ((value >> 10) & 0x03ff) << 6;
insn |= ((value >> 20) & 0x000f) << 0;
insn = ME(insn);
UNALIGNED_PUT(insn, (uint32_t *)loc);
break;
case R_ARC_S25W_PCREL:
/* ((S + A) - P) >> 2 */
value = (sym_base_addr + rel->r_addend - (loc & ~0x3)) >> 2;
insn = ME(insn);

View File

@@ -17,26 +17,25 @@
#include <zephyr/arch/cpu.h>
#include <zephyr/logging/log.h>
#include <kernel_arch_data.h>
#include <zephyr/arch/arc/v2/exception.h>
#include <err_dump_handling.h>
#include <zephyr/arch/exception.h>
LOG_MODULE_DECLARE(os, CONFIG_KERNEL_LOG_LEVEL);
#ifdef CONFIG_EXCEPTION_DEBUG
static void dump_arc_esf(const struct arch_esf *esf)
{
ARC_EXCEPTION_DUMP(" r0: 0x%" PRIxPTR " r1: 0x%" PRIxPTR " r2: 0x%" PRIxPTR
EXCEPTION_DUMP(" r0: 0x%" PRIxPTR " r1: 0x%" PRIxPTR " r2: 0x%" PRIxPTR
" r3: 0x%" PRIxPTR "", esf->r0, esf->r1, esf->r2, esf->r3);
ARC_EXCEPTION_DUMP(" r4: 0x%" PRIxPTR " r5: 0x%" PRIxPTR " r6: 0x%" PRIxPTR
EXCEPTION_DUMP(" r4: 0x%" PRIxPTR " r5: 0x%" PRIxPTR " r6: 0x%" PRIxPTR
" r7: 0x%" PRIxPTR "", esf->r4, esf->r5, esf->r6, esf->r7);
ARC_EXCEPTION_DUMP(" r8: 0x%" PRIxPTR " r9: 0x%" PRIxPTR " r10: 0x%" PRIxPTR
EXCEPTION_DUMP(" r8: 0x%" PRIxPTR " r9: 0x%" PRIxPTR " r10: 0x%" PRIxPTR
" r11: 0x%" PRIxPTR "", esf->r8, esf->r9, esf->r10, esf->r11);
ARC_EXCEPTION_DUMP("r12: 0x%" PRIxPTR " r13: 0x%" PRIxPTR " pc: 0x%" PRIxPTR "",
EXCEPTION_DUMP("r12: 0x%" PRIxPTR " r13: 0x%" PRIxPTR " pc: 0x%" PRIxPTR "",
esf->r12, esf->r13, esf->pc);
ARC_EXCEPTION_DUMP(" blink: 0x%" PRIxPTR " status32: 0x%" PRIxPTR "",
EXCEPTION_DUMP(" blink: 0x%" PRIxPTR " status32: 0x%" PRIxPTR "",
esf->blink, esf->status32);
#ifdef CONFIG_ARC_HAS_ZOL
ARC_EXCEPTION_DUMP("lp_end: 0x%" PRIxPTR " lp_start: 0x%" PRIxPTR
EXCEPTION_DUMP("lp_end: 0x%" PRIxPTR " lp_start: 0x%" PRIxPTR
" lp_count: 0x%" PRIxPTR "", esf->lp_end, esf->lp_start, esf->lp_count);
#endif /* CONFIG_ARC_HAS_ZOL */
}

View File

@@ -20,7 +20,6 @@
#include <zephyr/kernel_structs.h>
#include <zephyr/arch/common/exc_handle.h>
#include <zephyr/logging/log.h>
#include <err_dump_handling.h>
LOG_MODULE_DECLARE(os, CONFIG_KERNEL_LOG_LEVEL);
@@ -138,32 +137,32 @@ static void dump_protv_exception(uint32_t cause, uint32_t parameter)
{
switch (cause) {
case 0x0:
ARC_EXCEPTION_DUMP("Instruction fetch violation (%s)",
EXCEPTION_DUMP("Instruction fetch violation (%s)",
get_protv_access_err(parameter));
break;
case 0x1:
ARC_EXCEPTION_DUMP("Memory read protection violation (%s)",
EXCEPTION_DUMP("Memory read protection violation (%s)",
get_protv_access_err(parameter));
break;
case 0x2:
ARC_EXCEPTION_DUMP("Memory write protection violation (%s)",
EXCEPTION_DUMP("Memory write protection violation (%s)",
get_protv_access_err(parameter));
break;
case 0x3:
ARC_EXCEPTION_DUMP("Memory read-modify-write violation (%s)",
EXCEPTION_DUMP("Memory read-modify-write violation (%s)",
get_protv_access_err(parameter));
break;
case 0x10:
ARC_EXCEPTION_DUMP("Normal vector table in secure memory");
EXCEPTION_DUMP("Normal vector table in secure memory");
break;
case 0x11:
ARC_EXCEPTION_DUMP("NS handler code located in S memory");
EXCEPTION_DUMP("NS handler code located in S memory");
break;
case 0x12:
ARC_EXCEPTION_DUMP("NSC Table Range Violation");
EXCEPTION_DUMP("NSC Table Range Violation");
break;
default:
ARC_EXCEPTION_DUMP("unknown");
EXCEPTION_DUMP("unknown");
break;
}
}
@@ -172,46 +171,46 @@ static void dump_machine_check_exception(uint32_t cause, uint32_t parameter)
{
switch (cause) {
case 0x0:
ARC_EXCEPTION_DUMP("double fault");
EXCEPTION_DUMP("double fault");
break;
case 0x1:
ARC_EXCEPTION_DUMP("overlapping TLB entries");
EXCEPTION_DUMP("overlapping TLB entries");
break;
case 0x2:
ARC_EXCEPTION_DUMP("fatal TLB error");
EXCEPTION_DUMP("fatal TLB error");
break;
case 0x3:
ARC_EXCEPTION_DUMP("fatal cache error");
EXCEPTION_DUMP("fatal cache error");
break;
case 0x4:
ARC_EXCEPTION_DUMP("internal memory error on instruction fetch");
EXCEPTION_DUMP("internal memory error on instruction fetch");
break;
case 0x5:
ARC_EXCEPTION_DUMP("internal memory error on data fetch");
EXCEPTION_DUMP("internal memory error on data fetch");
break;
case 0x6:
ARC_EXCEPTION_DUMP("illegal overlapping MPU entries");
EXCEPTION_DUMP("illegal overlapping MPU entries");
if (parameter == 0x1) {
ARC_EXCEPTION_DUMP(" - jump and branch target");
EXCEPTION_DUMP(" - jump and branch target");
}
break;
case 0x10:
ARC_EXCEPTION_DUMP("secure vector table not located in secure memory");
EXCEPTION_DUMP("secure vector table not located in secure memory");
break;
case 0x11:
ARC_EXCEPTION_DUMP("NSC jump table not located in secure memory");
EXCEPTION_DUMP("NSC jump table not located in secure memory");
break;
case 0x12:
ARC_EXCEPTION_DUMP("secure handler code not located in secure memory");
EXCEPTION_DUMP("secure handler code not located in secure memory");
break;
case 0x13:
ARC_EXCEPTION_DUMP("NSC target address not located in secure memory");
EXCEPTION_DUMP("NSC target address not located in secure memory");
break;
case 0x80:
ARC_EXCEPTION_DUMP("uncorrectable ECC or parity error in vector memory");
EXCEPTION_DUMP("uncorrectable ECC or parity error in vector memory");
break;
default:
ARC_EXCEPTION_DUMP("unknown");
EXCEPTION_DUMP("unknown");
break;
}
}
@@ -220,54 +219,54 @@ static void dump_privilege_exception(uint32_t cause, uint32_t parameter)
{
switch (cause) {
case 0x0:
ARC_EXCEPTION_DUMP("Privilege violation");
EXCEPTION_DUMP("Privilege violation");
break;
case 0x1:
ARC_EXCEPTION_DUMP("disabled extension");
EXCEPTION_DUMP("disabled extension");
break;
case 0x2:
ARC_EXCEPTION_DUMP("action point hit");
EXCEPTION_DUMP("action point hit");
break;
case 0x10:
switch (parameter) {
case 0x1:
ARC_EXCEPTION_DUMP("N to S return using incorrect return mechanism");
EXCEPTION_DUMP("N to S return using incorrect return mechanism");
break;
case 0x2:
ARC_EXCEPTION_DUMP("N to S return with incorrect operating mode");
EXCEPTION_DUMP("N to S return with incorrect operating mode");
break;
case 0x3:
ARC_EXCEPTION_DUMP("IRQ/exception return fetch from wrong mode");
EXCEPTION_DUMP("IRQ/exception return fetch from wrong mode");
break;
case 0x4:
ARC_EXCEPTION_DUMP("attempt to halt secure processor in NS mode");
EXCEPTION_DUMP("attempt to halt secure processor in NS mode");
break;
case 0x20:
ARC_EXCEPTION_DUMP("attempt to access secure resource from normal mode");
EXCEPTION_DUMP("attempt to access secure resource from normal mode");
break;
case 0x40:
ARC_EXCEPTION_DUMP("SID violation on resource access (APEX/UAUX/key NVM)");
EXCEPTION_DUMP("SID violation on resource access (APEX/UAUX/key NVM)");
break;
default:
ARC_EXCEPTION_DUMP("unknown");
EXCEPTION_DUMP("unknown");
break;
}
break;
case 0x13:
switch (parameter) {
case 0x20:
ARC_EXCEPTION_DUMP("attempt to access secure APEX feature from NS mode");
EXCEPTION_DUMP("attempt to access secure APEX feature from NS mode");
break;
case 0x40:
ARC_EXCEPTION_DUMP("SID violation on access to APEX feature");
EXCEPTION_DUMP("SID violation on access to APEX feature");
break;
default:
ARC_EXCEPTION_DUMP("unknown");
EXCEPTION_DUMP("unknown");
break;
}
break;
default:
ARC_EXCEPTION_DUMP("unknown");
EXCEPTION_DUMP("unknown");
break;
}
}
@@ -275,7 +274,7 @@ static void dump_privilege_exception(uint32_t cause, uint32_t parameter)
static void dump_exception_info(uint32_t vector, uint32_t cause, uint32_t parameter)
{
if (vector >= 0x10 && vector <= 0xFF) {
ARC_EXCEPTION_DUMP("interrupt %u", vector);
EXCEPTION_DUMP("interrupt %u", vector);
return;
}
@@ -284,55 +283,55 @@ static void dump_exception_info(uint32_t vector, uint32_t cause, uint32_t parame
*/
switch (vector) {
case ARC_EV_RESET:
ARC_EXCEPTION_DUMP("Reset");
EXCEPTION_DUMP("Reset");
break;
case ARC_EV_MEM_ERROR:
ARC_EXCEPTION_DUMP("Memory Error");
EXCEPTION_DUMP("Memory Error");
break;
case ARC_EV_INS_ERROR:
ARC_EXCEPTION_DUMP("Instruction Error");
EXCEPTION_DUMP("Instruction Error");
break;
case ARC_EV_MACHINE_CHECK:
ARC_EXCEPTION_DUMP("EV_MachineCheck");
EXCEPTION_DUMP("EV_MachineCheck");
dump_machine_check_exception(cause, parameter);
break;
case ARC_EV_TLB_MISS_I:
ARC_EXCEPTION_DUMP("EV_TLBMissI");
EXCEPTION_DUMP("EV_TLBMissI");
break;
case ARC_EV_TLB_MISS_D:
ARC_EXCEPTION_DUMP("EV_TLBMissD");
EXCEPTION_DUMP("EV_TLBMissD");
break;
case ARC_EV_PROT_V:
ARC_EXCEPTION_DUMP("EV_ProtV");
EXCEPTION_DUMP("EV_ProtV");
dump_protv_exception(cause, parameter);
break;
case ARC_EV_PRIVILEGE_V:
ARC_EXCEPTION_DUMP("EV_PrivilegeV");
EXCEPTION_DUMP("EV_PrivilegeV");
dump_privilege_exception(cause, parameter);
break;
case ARC_EV_SWI:
ARC_EXCEPTION_DUMP("EV_SWI");
EXCEPTION_DUMP("EV_SWI");
break;
case ARC_EV_TRAP:
ARC_EXCEPTION_DUMP("EV_Trap");
EXCEPTION_DUMP("EV_Trap");
break;
case ARC_EV_EXTENSION:
ARC_EXCEPTION_DUMP("EV_Extension");
EXCEPTION_DUMP("EV_Extension");
break;
case ARC_EV_DIV_ZERO:
ARC_EXCEPTION_DUMP("EV_DivZero");
EXCEPTION_DUMP("EV_DivZero");
break;
case ARC_EV_DC_ERROR:
ARC_EXCEPTION_DUMP("EV_DCError");
EXCEPTION_DUMP("EV_DCError");
break;
case ARC_EV_MISALIGNED:
ARC_EXCEPTION_DUMP("EV_Misaligned");
EXCEPTION_DUMP("EV_Misaligned");
break;
case ARC_EV_VEC_UNIT:
ARC_EXCEPTION_DUMP("EV_VecUnit");
EXCEPTION_DUMP("EV_VecUnit");
break;
default:
ARC_EXCEPTION_DUMP("unknown");
EXCEPTION_DUMP("unknown");
break;
}
}
@@ -386,9 +385,9 @@ void z_arc_fault(struct arch_esf *esf, uint32_t old_sp)
}
#ifdef CONFIG_EXCEPTION_DEBUG
ARC_EXCEPTION_DUMP("***** Exception vector: 0x%x, cause code: 0x%x, parameter 0x%x",
EXCEPTION_DUMP("***** Exception vector: 0x%x, cause code: 0x%x, parameter 0x%x",
vector, cause, parameter);
ARC_EXCEPTION_DUMP("Address 0x%x", exc_addr);
EXCEPTION_DUMP("Address 0x%x", exc_addr);
dump_exception_info(vector, cause, parameter);
#endif

View File

@@ -22,7 +22,8 @@
#include <zephyr/arch/arc/v2/aux_regs.h>
#include <zephyr/arch/arc/cluster.h>
#include <zephyr/kernel_structs.h>
#include <kernel_internal.h>
#include <zephyr/arch/common/xip.h>
#include <zephyr/arch/common/init.h>
#include <zephyr/platform/hooks.h>
#include <zephyr/arch/cache.h>
@@ -67,7 +68,7 @@ extern char __device_states_end[];
*/
static void dev_state_zero(void)
{
z_early_memset(__device_states_start, 0, __device_states_end - __device_states_start);
arch_early_memset(__device_states_start, 0, __device_states_end - __device_states_start);
}
#endif
@@ -81,21 +82,19 @@ extern void arc_secureshield_init(void);
* This routine prepares for the execution of and runs C code.
*/
void z_prep_c(void)
FUNC_NORETURN void z_prep_c(void)
{
#if defined(CONFIG_SOC_PREP_HOOK)
soc_prep_hook();
#endif
#ifdef CONFIG_ISA_ARCV3
arc_cluster_scm_enable();
#endif
z_bss_zero();
arch_bss_zero();
#ifdef __CCAC__
dev_state_zero();
#endif
z_data_copy();
arch_data_copy();
#if CONFIG_ARCH_CACHE
arch_cache_init();
#endif

View File

@@ -11,13 +11,13 @@
*/
#include <zephyr/device.h>
#include <zephyr/kernel.h>
#include <zephyr/irq.h>
#include <zephyr/kernel_structs.h>
#include <ksched.h>
#include <ipi.h>
#include <zephyr/init.h>
#include <zephyr/irq.h>
#include <zephyr/platform/hooks.h>
#include <arc_irq_offload.h>
#include <kernel_arch_func.h>
volatile struct {
arch_cpustart_t fn;

View File

@@ -276,6 +276,15 @@ int arch_float_enable(struct k_thread *thread, unsigned int options)
}
#endif /* CONFIG_FPU && CONFIG_FPU_SHARING */
int arch_coprocessors_disable(struct k_thread *thread)
{
#if defined(CONFIG_FPU) && defined(CONFIG_FPU_SHARING)
return arch_float_disable(thread);
#else
return -ENOTSUP;
#endif
}
#if !defined(CONFIG_MULTITHREADING)
K_KERNEL_STACK_ARRAY_DECLARE(z_interrupt_stacks, CONFIG_MP_MAX_NUM_CPUS, CONFIG_ISR_STACK_SIZE);

View File

@@ -1,16 +0,0 @@
/*
* Copyright (c) 2023 Synopsys.
*
* SPDX-License-Identifier: Apache-2.0
*/
#ifndef ZEPHYR_ARCH_ARC_INCLUDE_ERR_DUMP_HANDLING_H_
#define ZEPHYR_ARCH_ARC_INCLUDE_ERR_DUMP_HANDLING_H_
#if defined CONFIG_LOG
#define ARC_EXCEPTION_DUMP(...) LOG_ERR(__VA_ARGS__)
#else
#define ARC_EXCEPTION_DUMP(format, ...) printk(format "\n", ##__VA_ARGS__)
#endif
#endif /* ZEPHYR_ARCH_ARC_INCLUDE_ERR_DUMP_HANDLING_H_ */

View File

@@ -27,7 +27,7 @@ add_subdirectory_ifdef(CONFIG_ARM_AARCH32_MMU mmu)
add_subdirectory_ifdef(CONFIG_CPU_AARCH32_CORTEX_R cortex_a_r)
add_subdirectory_ifdef(CONFIG_CPU_AARCH32_CORTEX_A cortex_a_r)
if (CONFIG_ARM_ZIMAGE_HEADER)
if(CONFIG_ARM_ZIMAGE_HEADER)
zephyr_linker_sources(ROM_START SORT_KEY 0x0vectors zimage_header.ld)
zephyr_linker_sources(ROM_START SORT_KEY 0x1vectors vector_table.ld)
zephyr_linker_sources(ROM_START SORT_KEY 0x2vectors cortex_m/vector_table_pad.ld)

View File

@@ -26,6 +26,8 @@ config CPU_CORTEX_A9
bool
select CPU_AARCH32_CORTEX_A
select ARMV7_A
select CPU_HAS_ICACHE
select CPU_HAS_DCACHE
help
This option signifies the use of a Cortex-A9 CPU.

View File

@@ -7,6 +7,7 @@
*/
#include <zephyr/kernel.h>
#include <zephyr/arch/exception.h>
#include <kernel_internal.h>
#include <zephyr/arch/common/exc_handle.h>
#include <zephyr/logging/log.h>
@@ -51,7 +52,7 @@ static void dump_debug_event(void)
uint32_t moe = (dbgdscr & DBGDSCR_MOE_Msk) >> DBGDSCR_MOE_Pos;
/* Print debug event information */
LOG_ERR("Debug Event (%s)", get_dbgdscr_moe_string(moe));
EXCEPTION_DUMP("Debug Event (%s)", get_dbgdscr_moe_string(moe));
}
static uint32_t dump_fault(uint32_t status, uint32_t addr)
@@ -65,27 +66,27 @@ static uint32_t dump_fault(uint32_t status, uint32_t addr)
switch (status) {
case FSR_FS_ALIGNMENT_FAULT:
reason = K_ERR_ARM_ALIGNMENT_FAULT;
LOG_ERR("Alignment Fault @ 0x%08x", addr);
EXCEPTION_DUMP("Alignment Fault @ 0x%08x", addr);
break;
case FSR_FS_PERMISSION_FAULT:
reason = K_ERR_ARM_PERMISSION_FAULT;
LOG_ERR("Permission Fault @ 0x%08x", addr);
EXCEPTION_DUMP("Permission Fault @ 0x%08x", addr);
break;
case FSR_FS_SYNC_EXTERNAL_ABORT:
reason = K_ERR_ARM_SYNC_EXTERNAL_ABORT;
LOG_ERR("Synchronous External Abort @ 0x%08x", addr);
EXCEPTION_DUMP("Synchronous External Abort @ 0x%08x", addr);
break;
case FSR_FS_ASYNC_EXTERNAL_ABORT:
reason = K_ERR_ARM_ASYNC_EXTERNAL_ABORT;
LOG_ERR("Asynchronous External Abort");
EXCEPTION_DUMP("Asynchronous External Abort");
break;
case FSR_FS_SYNC_PARITY_ERROR:
reason = K_ERR_ARM_SYNC_PARITY_ERROR;
LOG_ERR("Synchronous Parity/ECC Error @ 0x%08x", addr);
EXCEPTION_DUMP("Synchronous Parity/ECC Error @ 0x%08x", addr);
break;
case FSR_FS_ASYNC_PARITY_ERROR:
reason = K_ERR_ARM_ASYNC_PARITY_ERROR;
LOG_ERR("Asynchronous Parity/ECC Error");
EXCEPTION_DUMP("Asynchronous Parity/ECC Error");
break;
case FSR_FS_DEBUG_EVENT:
reason = K_ERR_ARM_DEBUG_EVENT;
@@ -94,73 +95,77 @@ static uint32_t dump_fault(uint32_t status, uint32_t addr)
#if defined(CONFIG_AARCH32_ARMV8_R)
case FSR_FS_TRANSLATION_FAULT:
reason = K_ERR_ARM_TRANSLATION_FAULT;
LOG_ERR("Translation Fault @ 0x%08x", addr);
EXCEPTION_DUMP("Translation Fault @ 0x%08x", addr);
break;
case FSR_FS_UNSUPPORTED_EXCLUSIVE_ACCESS_FAULT:
reason = K_ERR_ARM_UNSUPPORTED_EXCLUSIVE_ACCESS_FAULT;
LOG_ERR("Unsupported Exclusive Access Fault @ 0x%08x", addr);
EXCEPTION_DUMP("Unsupported Exclusive Access Fault @ 0x%08x", addr);
break;
#elif defined(CONFIG_ARMV7_A)
case FSR_FS_PERMISSION_FAULT_2ND_LEVEL:
reason = K_ERR_ARM_PERMISSION_FAULT_2ND_LEVEL;
LOG_ERR("2nd Level Permission Fault @ 0x%08x", addr);
EXCEPTION_DUMP("2nd Level Permission Fault @ 0x%08x", addr);
break;
case FSR_FS_ACCESS_FLAG_FAULT_1ST_LEVEL:
reason = K_ERR_ARM_ACCESS_FLAG_FAULT_1ST_LEVEL;
LOG_ERR("1st Level Access Flag Fault @ 0x%08x", addr);
EXCEPTION_DUMP("1st Level Access Flag Fault @ 0x%08x", addr);
break;
case FSR_FS_ACCESS_FLAG_FAULT_2ND_LEVEL:
reason = K_ERR_ARM_ACCESS_FLAG_FAULT_2ND_LEVEL;
LOG_ERR("2nd Level Access Flag Fault @ 0x%08x", addr);
EXCEPTION_DUMP("2nd Level Access Flag Fault @ 0x%08x", addr);
break;
case FSR_FS_CACHE_MAINTENANCE_INSTRUCTION_FAULT:
reason = K_ERR_ARM_CACHE_MAINTENANCE_INSTRUCTION_FAULT;
LOG_ERR("Cache Maintenance Instruction Fault @ 0x%08x", addr);
EXCEPTION_DUMP("Cache Maintenance Instruction Fault @ 0x%08x", addr);
break;
case FSR_FS_TRANSLATION_FAULT:
reason = K_ERR_ARM_TRANSLATION_FAULT;
LOG_ERR("1st Level Translation Fault @ 0x%08x", addr);
EXCEPTION_DUMP("1st Level Translation Fault @ 0x%08x", addr);
break;
case FSR_FS_TRANSLATION_FAULT_2ND_LEVEL:
reason = K_ERR_ARM_TRANSLATION_FAULT_2ND_LEVEL;
LOG_ERR("2nd Level Translation Fault @ 0x%08x", addr);
EXCEPTION_DUMP("2nd Level Translation Fault @ 0x%08x", addr);
break;
case FSR_FS_DOMAIN_FAULT_1ST_LEVEL:
reason = K_ERR_ARM_DOMAIN_FAULT_1ST_LEVEL;
LOG_ERR("1st Level Domain Fault @ 0x%08x", addr);
EXCEPTION_DUMP("1st Level Domain Fault @ 0x%08x", addr);
break;
case FSR_FS_DOMAIN_FAULT_2ND_LEVEL:
reason = K_ERR_ARM_DOMAIN_FAULT_2ND_LEVEL;
LOG_ERR("2nd Level Domain Fault @ 0x%08x", addr);
EXCEPTION_DUMP("2nd Level Domain Fault @ 0x%08x", addr);
break;
case FSR_FS_SYNC_EXTERNAL_ABORT_TRANSLATION_TABLE_1ST_LEVEL:
reason = K_ERR_ARM_SYNC_EXTERNAL_ABORT_TRANSLATION_TABLE_1ST_LEVEL;
LOG_ERR("1st Level Synchronous External Abort Translation Table @ 0x%08x", addr);
EXCEPTION_DUMP("1st Level Synchronous External Abort Translation Table @ 0x%08x",
addr);
break;
case FSR_FS_SYNC_EXTERNAL_ABORT_TRANSLATION_TABLE_2ND_LEVEL:
reason = K_ERR_ARM_SYNC_EXTERNAL_ABORT_TRANSLATION_TABLE_2ND_LEVEL;
LOG_ERR("2nd Level Synchronous External Abort Translation Table @ 0x%08x", addr);
EXCEPTION_DUMP("2nd Level Synchronous External Abort Translation Table @ 0x%08x",
addr);
break;
case FSR_FS_TLB_CONFLICT_ABORT:
reason = K_ERR_ARM_TLB_CONFLICT_ABORT;
LOG_ERR("TLB Conflict Abort @ 0x%08x", addr);
EXCEPTION_DUMP("TLB Conflict Abort @ 0x%08x", addr);
break;
case FSR_FS_SYNC_PARITY_ERROR_TRANSLATION_TABLE_1ST_LEVEL:
reason = K_ERR_ARM_SYNC_PARITY_ERROR_TRANSLATION_TABLE_1ST_LEVEL;
LOG_ERR("1st Level Synchronous Parity Error Translation Table @ 0x%08x", addr);
EXCEPTION_DUMP("1st Level Synchronous Parity Error Translation Table @ 0x%08x",
addr);
break;
case FSR_FS_SYNC_PARITY_ERROR_TRANSLATION_TABLE_2ND_LEVEL:
reason = K_ERR_ARM_SYNC_PARITY_ERROR_TRANSLATION_TABLE_2ND_LEVEL;
LOG_ERR("2nd Level Synchronous Parity Error Translation Table @ 0x%08x", addr);
EXCEPTION_DUMP("2nd Level Synchronous Parity Error Translation Table @ 0x%08x",
addr);
break;
#else
case FSR_FS_BACKGROUND_FAULT:
reason = K_ERR_ARM_BACKGROUND_FAULT;
LOG_ERR("Background Fault @ 0x%08x", addr);
EXCEPTION_DUMP("Background Fault @ 0x%08x", addr);
break;
#endif
default:
LOG_ERR("Unknown (%u)", status);
EXCEPTION_DUMP("Unknown (%u)", status);
}
return reason;
}
@@ -280,7 +285,7 @@ bool z_arm_fault_undef_instruction(struct arch_esf *esf)
#endif
/* Print fault information */
LOG_ERR("***** UNDEFINED INSTRUCTION ABORT *****");
EXCEPTION_DUMP("***** UNDEFINED INSTRUCTION ABORT *****");
uint32_t reason = IS_ENABLED(CONFIG_SIMPLIFIED_EXCEPTION_CODES) ?
K_ERR_CPU_EXCEPTION :
@@ -325,7 +330,7 @@ bool z_arm_fault_prefetch(struct arch_esf *esf)
return false;
#endif
/* Print fault information*/
LOG_ERR("***** PREFETCH ABORT *****");
EXCEPTION_DUMP("***** PREFETCH ABORT *****");
if (FAULT_DUMP_VERBOSE) {
reason = dump_fault(fs, ifar);
}
@@ -409,7 +414,7 @@ bool z_arm_fault_data(struct arch_esf *esf)
#endif
/* Print fault information*/
LOG_ERR("***** DATA ABORT *****");
EXCEPTION_DUMP("***** DATA ABORT *****");
if (FAULT_DUMP_VERBOSE) {
reason = dump_fault(fs, dfar);
}

View File

@@ -24,6 +24,8 @@
#include <zephyr/arch/arm/cortex_a_r/lib_helpers.h>
#include <zephyr/platform/hooks.h>
#include <zephyr/arch/cache.h>
#include <zephyr/arch/common/xip.h>
#include <zephyr/arch/common/init.h>
#if defined(CONFIG_ARMV7_R) || defined(CONFIG_ARMV7_A)
#include <cortex_a_r/stack.h>
@@ -96,19 +98,18 @@ extern FUNC_NORETURN void z_cstart(void);
* This routine prepares for the execution of and runs C code.
*
*/
void z_prep_c(void)
FUNC_NORETURN void z_prep_c(void)
{
#if defined(CONFIG_SOC_PREP_HOOK)
soc_prep_hook();
#endif
/* Initialize tpidruro with our struct _cpu instance address */
write_tpidruro((uintptr_t)&_kernel.cpus[0]);
#if defined(CONFIG_CPU_HAS_FPU)
z_arm_floating_point_init();
#endif
z_bss_zero();
z_data_copy();
arch_bss_zero();
arch_data_copy();
#if ((defined(CONFIG_ARMV7_R) || defined(CONFIG_ARMV7_A)) && defined(CONFIG_INIT_STACKS))
z_arm_init_stacks();
#endif

View File

@@ -5,7 +5,6 @@
#include <zephyr/kernel/thread_stack.h>
#include <zephyr/kernel.h>
#include <ksched.h>
#include <zephyr/arch/arm/cortex_a_r/lib_helpers.h>
#include <zephyr/drivers/interrupt_controller/gic.h>
#include <ipi.h>

View File

@@ -1,6 +1,7 @@
/*
* Copyright (c) 2013-2014 Wind River Systems, Inc.
* Copyright (c) 2021 Lexmark International, Inc.
* Copyright 2025 Arm Limited and/or its affiliates <open-source-office@arm.com>
*
* SPDX-License-Identifier: Apache-2.0
*/
@@ -14,8 +15,8 @@
*/
#include <zephyr/kernel.h>
#include <kernel_internal.h>
#include <zephyr/llext/symbol.h>
#include <ksched.h>
#include <zephyr/sys/barrier.h>
#include <stdbool.h>
#include <cmsis_core.h>
@@ -37,6 +38,34 @@
*/
#define DEFAULT_EXC_RETURN 0xFD;
#ifdef CONFIG_USERSPACE
static void setup_priv_stack(struct k_thread *thread)
{
/* Set up privileged stack before entering user mode */
thread->arch.priv_stack_start = (uint32_t)z_priv_stack_find(thread->stack_obj);
/* CONFIG_PRIVILEGED_STACK_SIZE does not account for MPU_GUARD_ALIGN_AND_SIZE or
* MPU_GUARD_ALIGN_AND_SIZE_FLOAT. Therefore, we must compute priv_stack_end here before
* adjusting priv_stack_start for the mpu guard alignment
*/
thread->arch.priv_stack_end = thread->arch.priv_stack_start + CONFIG_PRIVILEGED_STACK_SIZE;
#if defined(CONFIG_MPU_STACK_GUARD)
/* Stack guard area reserved at the bottom of the thread's
* privileged stack. Adjust the available (writable) stack
* buffer area accordingly.
*/
#if defined(CONFIG_FPU) && defined(CONFIG_FPU_SHARING)
thread->arch.priv_stack_start +=
((thread->arch.mode & Z_ARM_MODE_MPU_GUARD_FLOAT_Msk) != 0) ?
MPU_GUARD_ALIGN_AND_SIZE_FLOAT : MPU_GUARD_ALIGN_AND_SIZE;
#else
thread->arch.priv_stack_start += MPU_GUARD_ALIGN_AND_SIZE;
#endif /* CONFIG_FPU && CONFIG_FPU_SHARING */
#endif /* CONFIG_MPU_STACK_GUARD */
}
#endif
/* An initial context, to be "restored" by z_arm_pendsv(), is put at the other
* end of the stack, and thus reusable by the stack when not needed anymore.
*
@@ -80,7 +109,10 @@ void arch_new_thread(struct k_thread *thread, k_thread_stack_t *stack,
iframe = Z_STACK_PTR_TO_FRAME(struct __basic_sf, stack_ptr);
#if defined(CONFIG_USERSPACE)
thread->arch.priv_stack_start = 0;
if ((thread->base.user_options & K_USER) != 0) {
setup_priv_stack(thread);
iframe = Z_STACK_PTR_TO_FRAME(struct __basic_sf, thread->arch.priv_stack_end);
iframe->pc = (uint32_t)arch_user_mode_enter;
} else {
iframe->pc = (uint32_t)z_thread_entry;
@@ -122,9 +154,6 @@ void arch_new_thread(struct k_thread *thread, k_thread_stack_t *stack,
thread->arch.mode |= Z_ARM_MODE_MPU_GUARD_FLOAT_Msk;
}
#endif
#if defined(CONFIG_USERSPACE)
thread->arch.priv_stack_start = 0;
#endif
#endif
/*
* initial values in all other registers/thread entries are
@@ -196,10 +225,8 @@ static inline void z_arm_thread_stack_info_adjust(struct k_thread *thread,
FUNC_NORETURN void arch_user_mode_enter(k_thread_entry_t user_entry,
void *p1, void *p2, void *p3)
{
uint32_t sp_is_priv = 1;
/* Set up privileged stack before entering user mode */
_current->arch.priv_stack_start =
(uint32_t)z_priv_stack_find(_current->stack_obj);
#if defined(CONFIG_MPU_STACK_GUARD)
#if defined(CONFIG_THREAD_STACK_INFO)
/* We're dropping to user mode which means the guard area is no
@@ -216,29 +243,29 @@ FUNC_NORETURN void arch_user_mode_enter(k_thread_entry_t user_entry,
_current->stack_info.start -= MPU_GUARD_ALIGN_AND_SIZE;
_current->stack_info.size += MPU_GUARD_ALIGN_AND_SIZE;
#endif /* CONFIG_THREAD_STACK_INFO */
/* Stack guard area reserved at the bottom of the thread's
* privileged stack. Adjust the available (writable) stack
* buffer area accordingly.
*/
#if defined(CONFIG_FPU) && defined(CONFIG_FPU_SHARING)
_current->arch.priv_stack_start +=
((_current->arch.mode & Z_ARM_MODE_MPU_GUARD_FLOAT_Msk) != 0) ?
MPU_GUARD_ALIGN_AND_SIZE_FLOAT : MPU_GUARD_ALIGN_AND_SIZE;
#else
_current->arch.priv_stack_start += MPU_GUARD_ALIGN_AND_SIZE;
#endif /* CONFIG_FPU && CONFIG_FPU_SHARING */
#endif /* CONFIG_MPU_STACK_GUARD */
#if defined(CONFIG_CPU_AARCH32_CORTEX_R)
_current->arch.priv_stack_end =
_current->arch.priv_stack_start + CONFIG_PRIVILEGED_STACK_SIZE;
#endif
/* 2 ways how arch_user_mode_enter is called:
* - called as part of context switch from z_arm_pendsv, in this case privileged stack is
* already setup and stack pointer points to privileged stack.
* - called directly from k_thread_user_mode_enter, in this case privileged stack is not
* setup and stack pointer points to user stack.
*
* When called from k_thread_user_mode_enter, we need to check and setup the privileged
* stack and then instruct z_arm_userspace_enter to change the PSP to the privileged stack.
* Note that we do not change the PSP in this function to avoid any conflict with compiler's
* sequence which has already pushed stuff on the user stack.
*/
if (0 == _current->arch.priv_stack_start) {
setup_priv_stack(_current);
sp_is_priv = 0;
}
z_arm_userspace_enter(user_entry, p1, p2, p3,
(uint32_t)_current->stack_info.start,
_current->stack_info.size -
_current->stack_info.delta);
_current->stack_info.delta,
sp_is_priv);
CODE_UNREACHABLE;
}
@@ -415,3 +442,12 @@ int arch_float_enable(struct k_thread *thread, unsigned int options)
return -ENOTSUP;
}
#endif /* CONFIG_FPU && CONFIG_FPU_SHARING */
int arch_coprocessors_disable(struct k_thread *thread)
{
#if defined(CONFIG_FPU) && defined(CONFIG_FPU_SHARING)
return arch_float_disable(thread);
#else
return -ENOTSUP;
#endif
}

View File

@@ -2,20 +2,20 @@
zephyr_library()
if(CONFIG_ARMV8_1_M_PACBTI_STANDARD)
if(CONFIG_ARM_PACBTI_STANDARD)
zephyr_compile_options(-mbranch-protection=standard)
elseif(CONFIG_ARMV8_1_M_PACBTI_PACRET)
elseif(CONFIG_ARM_PACBTI_PACRET)
zephyr_compile_options(-mbranch-protection=pac-ret)
elseif(CONFIG_ARMV8_1_M_PACBTI_PACRET_LEAF)
elseif(CONFIG_ARM_PACBTI_PACRET_LEAF)
zephyr_compile_options(-mbranch-protection=pac-ret+leaf)
elseif(CONFIG_ARMV8_1_M_PACBTI_BTI)
elseif(CONFIG_ARM_PACBTI_BTI)
zephyr_compile_options(-mbranch-protection=bti)
elseif(CONFIG_ARMV8_1_M_PACBTI_PACRET_BTI)
elseif(CONFIG_ARM_PACBTI_PACRET_BTI)
zephyr_compile_options(-mbranch-protection=pac-ret+bti)
elseif(CONFIG_ARMV8_1_M_PACBTI_PACRET_LEAF_BTI)
elseif(CONFIG_ARM_PACBTI_PACRET_LEAF_BTI)
zephyr_compile_options(-mbranch-protection=pac-ret+leaf+bti)
elseif(CONFIG_ARMV8_1_M_PACBTI_NONE)
#TODO: Enable this after Zephyr SDK updates to GCC version >=14.2
elseif(CONFIG_ARM_PACBTI_NONE)
#TODO: Enable this after Zephyr SDK updates to the latest GCC version
# zephyr_compile_options(-mbranch-protection=none)
endif()
@@ -49,13 +49,13 @@ if(CONFIG_NULL_POINTER_EXCEPTION_DETECTION_DWT)
endif()
if(CONFIG_CORTEX_M_DWT)
if (CONFIG_TIMING_FUNCTIONS)
if(CONFIG_TIMING_FUNCTIONS)
zephyr_library_sources(timing.c)
endif()
endif()
if (CONFIG_SW_VECTOR_RELAY)
if (CONFIG_CPU_CORTEX_M_HAS_VTOR)
if(CONFIG_SW_VECTOR_RELAY)
if(CONFIG_CPU_CORTEX_M_HAS_VTOR)
set(relay_vector_table_sort_key relay_vectors)
else()
# Using 0x0 prefix will result in placing the relay vector table section
@@ -72,14 +72,14 @@ zephyr_linker_sources(
)
endif()
if (CONFIG_SW_VECTOR_RELAY OR CONFIG_SW_VECTOR_RELAY_CLIENT)
if(CONFIG_SW_VECTOR_RELAY OR CONFIG_SW_VECTOR_RELAY_CLIENT)
zephyr_linker_sources(
RAM_SECTIONS
vt_pointer_section.ld
)
endif()
if (CONFIG_CPU_CORTEX_M_HAS_VTOR)
if(CONFIG_CPU_CORTEX_M_HAS_VTOR)
zephyr_linker_sources_ifdef(CONFIG_SRAM_VECTOR_TABLE
RAM_SECTIONS
# Maybe need to be changed in order to be placed at the beginning of RAM

View File

@@ -63,6 +63,17 @@ config CPU_CORTEX_M33
help
This option signifies the use of a Cortex-M33 CPU
config CPU_CORTEX_M52
bool
select CPU_CORTEX_M
select ARMV8_1_M_MAINLINE
select ARMV8_M_SE if CPU_HAS_TEE
select ARMV7_M_ARMV8_M_FP if CPU_HAS_FPU
select CPU_HAS_DCACHE
select CPU_HAS_ICACHE
help
This option signifies the use of a Cortex-M52 CPU
config CPU_CORTEX_M55
bool
select CPU_CORTEX_M
@@ -299,60 +310,6 @@ config ARMV8_1_M_PMU
This option is enabled when the CPU implements ARMv8-M Performance
Monitoring Unit (PMU).
choice ARMV8_1_M_PACBTI
prompt "Pointer Authentication and Branch Target Identification"
default ARMV8_1_M_PACBTI_NONE
depends on ARMV8_1_M_MAINLINE
config ARMV8_1_M_PACBTI_STANDARD
bool "Standard (PACRET + LEAF + BTI)"
help
This option instructs the compiler to generate code with all branch protection features
enabled at their standard level.
config ARMV8_1_M_PACBTI_PACRET
bool "PACRET only"
help
This option instructs the compiler to generate code with return address signing for
all functions that save the return address to memory.
config ARMV8_1_M_PACBTI_PACRET_LEAF
bool "PACRET + Leaf"
help
This option instructs the compiler to generate code with return address signing for
all functions that save the return address to memory and,
also sign leaf functions even if they do not write the return address to memory.
config ARMV8_1_M_PACBTI_BTI
bool "BTI only"
help
This option enables Branch Target Identification (BTI), which inserts special landing
pad instructions at valid indirect branch targets. This option does not enable Pointer
Authentication (PAC).
config ARMV8_1_M_PACBTI_PACRET_BTI
bool "PACRET + BTI"
help
This option instructs the compiler to generate code with return address signing for
all functions that save the return address to memory and,
add landing-pad instructions at the permitted targets of indirect branch instructions
config ARMV8_1_M_PACBTI_PACRET_LEAF_BTI
bool "PACRET + Leaf + BTI"
help
This option instructs the compiler to generate code with return address signing for
all functions that save the return address to memory and,
also sign leaf functions even if they do not write the return address to memory and,
add landing-pad instructions at the permitted targets of indirect branch instructions
config ARMV8_1_M_PACBTI_NONE
bool "None"
help
This option instructs the compiler to generate code without branch protection or return
address signing
endchoice
config ARMV8_M_PMU_EVENTCNT
int "Number of event counters in the Performance Monitoring Unit"
depends on ARMV8_1_M_PMU
@@ -422,7 +379,7 @@ config SW_VECTOR_RELAY_CLIENT
initialization.
config CORTEX_M_DWT
bool "Data Watchpoint and Trace (DWT)"
bool "Data Watchpoint and Trace (DWT)" if !TIMING_FUNCTIONS
depends on CPU_CORTEX_M_HAS_DWT
default y if TIMING_FUNCTIONS
help

View File

@@ -13,6 +13,7 @@
#include <zephyr/kernel.h>
#include <zephyr/device.h>
#include <cortex_m/dwt.h>
#include <cortex_m/debug.h>
/**
* @brief Assess whether a debug monitor event should be treated as an error

View File

@@ -15,14 +15,17 @@
#include <zephyr/kernel.h>
#include <kernel_internal.h>
#include <inttypes.h>
#include <zephyr/arch/exception.h>
#include <zephyr/arch/common/exc_handle.h>
#include <zephyr/linker/linker-defs.h>
#include <zephyr/logging/log.h>
#include <zephyr/sys/barrier.h>
#include <cortex_m/debug.h>
LOG_MODULE_DECLARE(os, CONFIG_KERNEL_LOG_LEVEL);
#if defined(CONFIG_PRINTK) || defined(CONFIG_LOG)
#define PR_EXC(...) LOG_ERR(__VA_ARGS__)
#define PR_EXC(...) EXCEPTION_DUMP(__VA_ARGS__)
#define STORE_xFAR(reg_var, reg) uint32_t reg_var = (uint32_t)reg
#else
#define PR_EXC(...)

View File

@@ -16,7 +16,7 @@
void z_arm_save_fp_context(struct fpu_ctx_full *buffer)
{
#if defined(CONFIG_FPU_SHARING)
#if defined(CONFIG_FPU)
__ASSERT_NO_MSG(buffer != NULL);
uint32_t CONTROL = __get_CONTROL();
@@ -44,7 +44,7 @@ void z_arm_save_fp_context(struct fpu_ctx_full *buffer)
void z_arm_restore_fp_context(const struct fpu_ctx_full *buffer)
{
#if defined(CONFIG_FPU_SHARING)
#if defined(CONFIG_FPU)
if (buffer->ctx_saved) {
/* Set FPCA first so it is set even if an interrupt happens
* during restoration.

View File

@@ -1,5 +1,6 @@
/*
* Copyright (c) 2022, Carlo Caione <ccaione@baylibre.com>
* Copyright (c) 2025 Nordic Semiconductor ASA
*
* SPDX-License-Identifier: Apache-2.0
*/
@@ -14,9 +15,20 @@
/**
* CPU context for S2RAM
*/
__noinit _cpu_context_t _cpu_context;
#ifndef CONFIG_PM_S2RAM_CUSTOM_MARKING
#if DT_NODE_EXISTS(DT_NODELABEL(pm_s2ram)) &&\
DT_NODE_HAS_COMPAT(DT_NODELABEL(pm_s2ram), zephyr_memory_region)
/* Linker section name is given by `zephyr,memory-region` property of
* `zephyr,memory-region` compatible DT node with nodelabel `pm_s2ram`.
*/
__attribute__((section(DT_PROP(DT_NODELABEL(pm_s2ram), zephyr_memory_region))))
#else
__noinit
#endif
_cpu_context_t _cpu_context;
#ifndef CONFIG_HAS_PM_S2RAM_CUSTOM_MARKING
/**
* S2RAM Marker
*/
@@ -38,4 +50,4 @@ bool pm_s2ram_mark_check_and_clear(void)
return false;
}
#endif /* CONFIG_PM_S2RAM_CUSTOM_MARKING */
#endif /* CONFIG_HAS_PM_S2RAM_CUSTOM_MARKING */

View File

@@ -22,6 +22,9 @@
#include <zephyr/sys/barrier.h>
#include <zephyr/platform/hooks.h>
#include <zephyr/arch/cache.h>
#include <cortex_m/debug.h>
#include <zephyr/arch/common/xip.h>
#include <zephyr/arch/common/init.h>
/*
* GCC can detect if memcpy is passed a NULL argument, however one of
@@ -58,7 +61,7 @@ void __weak relocate_vector_table(void)
/* Copy vector table to its location in SRAM */
size_t vector_size = (size_t)_vector_end - (size_t)_vector_start;
z_early_memcpy(_sram_vector_start, _vector_start, vector_size);
arch_early_memcpy(_sram_vector_start, _vector_start, vector_size);
#endif
SCB->VTOR = VECTOR_ADDRESS & VTOR_MASK;
barrier_dsync_fence_full();
@@ -192,18 +195,16 @@ extern FUNC_NORETURN void z_cstart(void);
* This routine prepares for the execution of and runs C code.
*
*/
void z_prep_c(void)
FUNC_NORETURN void z_prep_c(void)
{
#if defined(CONFIG_SOC_PREP_HOOK)
soc_prep_hook();
#endif
relocate_vector_table();
#if defined(CONFIG_CPU_HAS_FPU)
z_arm_floating_point_init();
#endif
z_bss_zero();
z_data_copy();
arch_bss_zero();
arch_data_copy();
#if defined(CONFIG_ARM_CUSTOM_INTERRUPT_CONTROLLER)
/* Invoke SoC-specific interrupt controller initialization */
z_soc_irq_init();

View File

@@ -1,5 +1,6 @@
/*
* Copyright (c) 2013-2014 Wind River Systems, Inc.
* Copyright 2025 Arm Limited and/or its affiliates <open-source-office@arm.com>
*
* SPDX-License-Identifier: Apache-2.0
*/
@@ -19,7 +20,7 @@
_ASM_FILE_PROLOGUE
GTEXT(z_arm_reset)
GTEXT(z_early_memset)
GTEXT(arch_early_memset)
GDATA(z_interrupt_stacks)
GDATA(z_main_stack)
#if defined(CONFIG_DEBUG_THREAD_INFO)
@@ -34,6 +35,27 @@ GTEXT(z_arm_init_arch_hw_at_boot)
#if defined(CONFIG_PM_S2RAM)
GTEXT(arch_pm_s2ram_resume)
#endif
#if defined(CONFIG_SOC_EARLY_RESET_HOOK)
GTEXT(soc_early_reset_hook)
#endif
/*
* PACBTI Mask for CONTROL register:
* bit 4 - BTI_EN, bit 5 - UBTI_EN,
* bit 6 - PAC_EN, bit 7 - UPAC_EN
*/
#ifdef CONFIG_ARM_PAC
#define CONTROL_ARM_PAC_MASK (1<<6)|(1<<7)
#else
#define CONTROL_ARM_PAC_MASK 0
#endif
#ifdef CONFIG_ARM_BTI
#define CONTROL_ARM_BTI_MASK (1<<4)|(1<<5)
#else
#define CONTROL_ARM_BTI_MASK 0
#endif
/**
*
@@ -82,6 +104,10 @@ SECTION_SUBSEC_FUNC(TEXT,_reset_section,__start)
#endif /* CONFIG_INIT_ARCH_HW_AT_BOOT */
#if defined(CONFIG_SOC_EARLY_RESET_HOOK)
/* Call custom code that executes before any stack is set up or RAM memory is accessed */
bl soc_early_reset_hook
#endif
#if defined(CONFIG_PM_S2RAM)
/*
* Temporarily set MSP to interrupt stack so that arch_pm_s2ram_resume can
@@ -177,7 +203,7 @@ SECTION_SUBSEC_FUNC(TEXT,_reset_section,__start)
ldr r0, =z_interrupt_stacks
ldr r1, =0xaa
ldr r2, =CONFIG_ISR_STACK_SIZE + MPU_GUARD_ALIGN_AND_SIZE
bl z_early_memset
bl arch_early_memset
#endif
/*
@@ -189,7 +215,7 @@ SECTION_SUBSEC_FUNC(TEXT,_reset_section,__start)
adds r0, r0, r1
msr PSP, r0
mrs r0, CONTROL
movs r1, #2
movs r1, #(2 | CONTROL_ARM_PAC_MASK | CONTROL_ARM_BTI_MASK)
orrs r0, r1 /* CONTROL_SPSEL_Msk */
msr CONTROL, r0
/*

View File

@@ -1,5 +1,6 @@
/*
* Copyright (c) 2013-2014 Wind River Systems, Inc.
* Copyright (c) 2025 STMicroelectronics
*
* SPDX-License-Identifier: Apache-2.0
*/
@@ -22,6 +23,8 @@
#include <zephyr/linker/linker-defs.h>
#include <zephyr/cache.h>
#include <zephyr/arch/cache.h>
#include <zephyr/arch/arm/cortex_m/scb.h>
#include <cortex_m/exception.h>
#if defined(CONFIG_CPU_HAS_NXP_SYSMPU)
#include <fsl_sysmpu.h>
@@ -151,3 +154,99 @@ void z_arm_init_arch_hw_at_boot(void)
barrier_isync_fence_full();
}
#endif /* CONFIG_INIT_ARCH_HW_AT_BOOT */
/**
* @brief Save essential SCB registers into a provided context structure.
*
* This function reads the current values of critical System Control Block (SCB)
* registers that are safe to backup, and stores them into the `context` structure.
* Access to SCB registers requires atomicity and consistency, so calling code
* should guarantee that interrupts are disabled.
*
* @param context Pointer to an `scb_context` structure where the register
* values will be stored. Must not be NULL.
*/
void z_arm_save_scb_context(struct scb_context *context)
{
__ASSERT_NO_MSG(context != NULL);
#if defined(CONFIG_CPU_CORTEX_M_HAS_VTOR)
context->vtor = SCB->VTOR;
#endif
context->aircr = SCB->AIRCR;
context->scr = SCB->SCR;
context->ccr = SCB->CCR;
/*
* Backup the System Handler Priority Registers.
* SCB->SHPR is defined as u8[] or u32[] depending
* on the target Cortex-M core, but it can always
* be accessed using word-sized reads and writes.
* Make u32 pointer using explicit cast to allow
* access on all cores without compiler warnings.
*/
volatile uint32_t *shpr = (volatile uint32_t *)SCB->SHPR;
for (int i = 0; i < SHPR_SIZE_W; i++) {
context->shpr[i] = shpr[i];
}
context->shcsr = SCB->SHCSR;
#if defined(CPACR_PRESENT)
context->cpacr = SCB->CPACR;
#endif /* CPACR_PRESENT */
}
/**
* @brief Restores essential SCB registers from a provided context structure.
*
* This function writes the values from the `context` structure back to the
* respective System Control Block (SCB) registers. Access to SCB registers
* requires atomicity and consistency, so calling code should guarantee that
* interrupts are disabled.
*
* @param context Pointer to a `scb_context` structure containing the
* register values to be restored. Must not be NULL.
*/
void z_arm_restore_scb_context(const struct scb_context *context)
{
__ASSERT_NO_MSG(context != NULL);
#if defined(CONFIG_CPU_CORTEX_M_HAS_VTOR)
/* Restore VTOR if present on this CPU */
SCB->VTOR = context->vtor;
#endif
/* Restoring AIRCR requires writing VECTKEY along with desired bits.
* Mask backed up data to ensure only modifiable bits are restored.
*/
SCB->AIRCR = (context->aircr & ~SCB_AIRCR_VECTKEY_Msk) |
(AIRCR_VECT_KEY_PERMIT_WRITE << SCB_AIRCR_VECTKEY_Pos);
SCB->SCR = context->scr;
SCB->CCR = context->ccr;
/* Restore System Handler Priority Registers */
volatile uint32_t *shpr = (volatile uint32_t *)SCB->SHPR;
for (int i = 0; i < SHPR_SIZE_W; i++) {
shpr[i] = context->shpr[i];
}
/* Restore SHCSR */
SCB->SHCSR = context->shcsr;
#if defined(CPACR_PRESENT)
/* Restore CPACR */
SCB->CPACR = context->cpacr;
#endif /* CPACR_PRESENT */
/**
* Ensure that updates to the SCB are visible by executing a DSB followed by ISB.
* This sequence is recommended in the M-profile Architecture Reference Manuals:
* - ARMv6: DDI0419 Issue E - §B2.5 "Barrier support for system correctness"
* - ARMv7: DDI0403 Issue E.e - §A3.7.3 "Memory barriers" (at end of section)
* - ARMv8: DDI0553 Version B.Y - §B7.2.16 "Synchronization requirements [...]"
*/
__DSB();
__ISB();
}

View File

@@ -2,6 +2,7 @@
* Copyright (c) 2013-2014 Wind River Systems, Inc.
* Copyright (c) 2017-2019 Nordic Semiconductor ASA.
* Copyright (c) 2020 Stephanos Ioannidis <root@stephanos.io>
* Copyright 2025 Arm Limited and/or its affiliates <open-source-office@arm.com>
*
* SPDX-License-Identifier: Apache-2.0
*/
@@ -313,6 +314,24 @@ SECTION_FUNC(TEXT, z_arm_pendsv)
#endif
#ifdef CONFIG_ARM_PAC_PER_THREAD
/* Read thread's dedicated PAC key and write them in the privileged PAC key registers.
* Note: There is no way to know the _current thread mode after the thread creation since
* `_current->arch.mode` for the userspace thread is set in z_arm_userspace_enter() which
* runs after z_arm_pendsv is done. So for now, while switching to an unprivileged thread
* the same PAC keys are set in both privileged and unprivileged PAC key registers.
* TODO: find a way to not set privileged PAC keys if the thread being switched into is an
* unprivileged thread.
*/
add r0, r2, #_thread_offset_to_pac_keys
ldmia r0!, {r3-r6}
msr PAC_KEY_P_0, r3
msr PAC_KEY_P_1, r4
msr PAC_KEY_P_2, r5
msr PAC_KEY_P_3, r6
clrm {r3-r6}
#endif /* CONFIG_ARM_PAC_PER_THREAD */
/* load callee-saved + psp from thread */
add r0, r2, #_thread_offset_to_callee_saved
ldmia r0, {r4-r11, ip}

View File

@@ -1,7 +1,7 @@
/*
* Copyright (c) 2013-2014 Wind River Systems, Inc.
* Copyright (c) 2021 Lexmark International, Inc.
* Copyright (c) 2023 Arm Limited
* Copyright (c) 2023, 2025 Arm Limited and/or its affiliates <open-source-office@arm.com>
*
* SPDX-License-Identifier: Apache-2.0
*/
@@ -15,11 +15,12 @@
*/
#include <zephyr/kernel.h>
#include <kernel_internal.h>
#include <zephyr/llext/symbol.h>
#include <ksched.h>
#include <zephyr/sys/barrier.h>
#include <stdbool.h>
#include <cmsis_core.h>
#include <zephyr/random/random.h>
#if (MPU_GUARD_ALIGN_AND_SIZE_FLOAT > MPU_GUARD_ALIGN_AND_SIZE)
#define FP_GUARD_EXTRA_SIZE (MPU_GUARD_ALIGN_AND_SIZE_FLOAT - MPU_GUARD_ALIGN_AND_SIZE)
@@ -45,6 +46,35 @@
K_THREAD_STACK_DECLARE(z_main_stack, CONFIG_MAIN_STACK_SIZE);
#endif
#ifdef CONFIG_USERSPACE
static void setup_priv_stack(struct k_thread *thread)
{
/* Set up privileged stack before entering user mode */
thread->arch.priv_stack_start = (uint32_t)z_priv_stack_find(thread->stack_obj);
/* CONFIG_PRIVILEGED_STACK_SIZE does not account for MPU_GUARD_ALIGN_AND_SIZE or
* MPU_GUARD_ALIGN_AND_SIZE_FLOAT. Therefore, we must compute priv_stack_end here before
* adjusting priv_stack_start for the mpu guard alignment
*/
thread->arch.priv_stack_end = thread->arch.priv_stack_start + CONFIG_PRIVILEGED_STACK_SIZE;
#if defined(CONFIG_MPU_STACK_GUARD)
/* Stack guard area reserved at the bottom of the thread's
* privileged stack. Adjust the available (writable) stack
* buffer area accordingly.
*/
#if defined(CONFIG_FPU) && defined(CONFIG_FPU_SHARING)
thread->arch.priv_stack_start +=
((thread->arch.mode & Z_ARM_MODE_MPU_GUARD_FLOAT_Msk) != 0)
? MPU_GUARD_ALIGN_AND_SIZE_FLOAT
: MPU_GUARD_ALIGN_AND_SIZE;
#else
thread->arch.priv_stack_start += MPU_GUARD_ALIGN_AND_SIZE;
#endif /* CONFIG_FPU && CONFIG_FPU_SHARING */
#endif /* CONFIG_MPU_STACK_GUARD */
}
#endif
/* An initial context, to be "restored" by z_arm_pendsv(), is put at the other
* end of the stack, and thus reusable by the stack when not needed anymore.
*
@@ -87,7 +117,10 @@ void arch_new_thread(struct k_thread *thread, k_thread_stack_t *stack, char *sta
iframe = Z_STACK_PTR_TO_FRAME(struct __basic_sf, stack_ptr);
#if defined(CONFIG_USERSPACE)
thread->arch.priv_stack_start = 0;
if ((thread->base.user_options & K_USER) != 0) {
setup_priv_stack(thread);
iframe = Z_STACK_PTR_TO_FRAME(struct __basic_sf, thread->arch.priv_stack_end);
iframe->pc = (uint32_t)arch_user_mode_enter;
} else {
iframe->pc = (uint32_t)z_thread_entry;
@@ -118,9 +151,12 @@ void arch_new_thread(struct k_thread *thread, k_thread_stack_t *stack, char *sta
thread->arch.mode |= Z_ARM_MODE_MPU_GUARD_FLOAT_Msk;
}
#endif
#if defined(CONFIG_USERSPACE)
thread->arch.priv_stack_start = 0;
#endif
#ifdef CONFIG_ARM_PAC_PER_THREAD
/* Generate PAC key and save it in thread context to be set later
* when the thread is actually switched in
*/
sys_csrand_get(&thread->arch.pac_keys, sizeof(struct pac_keys));
#endif
/*
* initial values in all other registers/thread entries are
@@ -215,9 +251,8 @@ uint32_t z_arm_mpu_stack_guard_and_fpu_adjust(struct k_thread *thread)
#ifdef CONFIG_USERSPACE
FUNC_NORETURN void arch_user_mode_enter(k_thread_entry_t user_entry, void *p1, void *p2, void *p3)
{
uint32_t sp_is_priv = 1;
/* Set up privileged stack before entering user mode */
_current->arch.priv_stack_start = (uint32_t)z_priv_stack_find(_current->stack_obj);
#if defined(CONFIG_MPU_STACK_GUARD)
#if defined(CONFIG_THREAD_STACK_INFO)
/* We're dropping to user mode which means the guard area is no
@@ -234,23 +269,26 @@ FUNC_NORETURN void arch_user_mode_enter(k_thread_entry_t user_entry, void *p1, v
_current->stack_info.start -= MPU_GUARD_ALIGN_AND_SIZE;
_current->stack_info.size += MPU_GUARD_ALIGN_AND_SIZE;
#endif /* CONFIG_THREAD_STACK_INFO */
/* Stack guard area reserved at the bottom of the thread's
* privileged stack. Adjust the available (writable) stack
* buffer area accordingly.
*/
#if defined(CONFIG_FPU) && defined(CONFIG_FPU_SHARING)
_current->arch.priv_stack_start +=
((_current->arch.mode & Z_ARM_MODE_MPU_GUARD_FLOAT_Msk) != 0)
? MPU_GUARD_ALIGN_AND_SIZE_FLOAT
: MPU_GUARD_ALIGN_AND_SIZE;
#else
_current->arch.priv_stack_start += MPU_GUARD_ALIGN_AND_SIZE;
#endif /* CONFIG_FPU && CONFIG_FPU_SHARING */
#endif /* CONFIG_MPU_STACK_GUARD */
/* 2 ways how arch_user_mode_enter is called:
* - called as part of context switch from z_arm_pendsv, in this case privileged stack is
* already setup and stack pointer points to privileged stack.
* - called directly from k_thread_user_mode_enter, in this case privileged stack is not
* setup and stack pointer points to user stack.
*
* When called from k_thread_user_mode_enter, we need to check and setup the privileged
* stack and then instruct z_arm_userspace_enter to change the PSP to the privileged stack.
* Note that we do not change the PSP in this function to avoid any conflict with compiler's
* sequence which has already pushed stuff on the user stack.
*/
if (0 == _current->arch.priv_stack_start) {
setup_priv_stack(_current);
sp_is_priv = 0;
}
z_arm_userspace_enter(user_entry, p1, p2, p3, (uint32_t)_current->stack_info.start,
_current->stack_info.size - _current->stack_info.delta);
_current->stack_info.size - _current->stack_info.delta, sp_is_priv);
CODE_UNREACHABLE;
}
@@ -462,6 +500,15 @@ int arch_float_enable(struct k_thread *thread, unsigned int options)
}
#endif /* CONFIG_FPU && CONFIG_FPU_SHARING */
int arch_coprocessors_disable(struct k_thread *thread)
{
#if defined(CONFIG_FPU) && defined(CONFIG_FPU_SHARING)
return arch_float_disable(thread);
#else
return -ENOTSUP;
#endif
}
/* Internal function for Cortex-M initialization,
* applicable to either case of running Zephyr
* with or without multi-threading support.
@@ -532,6 +579,9 @@ void arch_switch_to_main_thread(struct k_thread *main_thread, char *stack_ptr,
#endif
#endif /* CONFIG_BUILTIN_STACK_GUARD */
#ifdef CONFIG_ARM_PAC_PER_THREAD
__set_PAC_KEY_P((uint32_t *)&main_thread->arch.pac_keys);
#endif
/*
* Set PSP to the highest address of the main stack
* before enabling interrupts and jumping to main.
@@ -640,7 +690,7 @@ FUNC_NORETURN void z_arm_switch_to_main_no_multithreading(k_thread_entry_t main_
,
[_psplim] "r"(psplim)
#endif
: "r0", "r1", "r2", "ip", "lr");
: "r0", "r1", "r2", "ip", "lr", "memory");
CODE_UNREACHABLE; /* LCOV_EXCL_LINE */
}

View File

@@ -19,7 +19,6 @@
#include <zephyr/kernel.h>
#include <zephyr/toolchain.h>
#include <zephyr/linker/sections.h>
#include <ksched.h>
#include <kswap.h>
#include <zephyr/sys/__assert.h>

View File

@@ -13,6 +13,7 @@
*/
#include <zephyr/kernel.h>
#include <zephyr/arch/exception.h>
#include <kernel_arch_data.h>
#include <zephyr/logging/log.h>
LOG_MODULE_DECLARE(os, CONFIG_KERNEL_LOG_LEVEL);
@@ -20,14 +21,14 @@ LOG_MODULE_DECLARE(os, CONFIG_KERNEL_LOG_LEVEL);
#ifdef CONFIG_EXCEPTION_DEBUG
static void esf_dump(const struct arch_esf *esf)
{
LOG_ERR("r0/a1: 0x%08x r1/a2: 0x%08x r2/a3: 0x%08x",
EXCEPTION_DUMP("r0/a1: 0x%08x r1/a2: 0x%08x r2/a3: 0x%08x",
esf->basic.a1, esf->basic.a2, esf->basic.a3);
LOG_ERR("r3/a4: 0x%08x r12/ip: 0x%08x r14/lr: 0x%08x",
EXCEPTION_DUMP("r3/a4: 0x%08x r12/ip: 0x%08x r14/lr: 0x%08x",
esf->basic.a4, esf->basic.ip, esf->basic.lr);
LOG_ERR(" xpsr: 0x%08x", esf->basic.xpsr);
EXCEPTION_DUMP(" xpsr: 0x%08x", esf->basic.xpsr);
#if defined(CONFIG_FPU) && defined(CONFIG_FPU_SHARING)
for (int i = 0; i < ARRAY_SIZE(esf->fpu.s); i += 4) {
LOG_ERR("s[%2d]: 0x%08x s[%2d]: 0x%08x"
EXCEPTION_DUMP("s[%2d]: 0x%08x s[%2d]: 0x%08x"
" s[%2d]: 0x%08x s[%2d]: 0x%08x",
i, (uint32_t)esf->fpu.s[i],
i + 1, (uint32_t)esf->fpu.s[i + 1],
@@ -36,7 +37,7 @@ static void esf_dump(const struct arch_esf *esf)
}
#ifdef CONFIG_VFP_FEATURE_REGS_S64_D32
for (int i = 0; i < ARRAY_SIZE(esf->fpu.d); i += 4) {
LOG_ERR("d[%2d]: 0x%16llx d[%2d]: 0x%16llx"
EXCEPTION_DUMP("d[%2d]: 0x%16llx d[%2d]: 0x%16llx"
" d[%2d]: 0x%16llx d[%2d]: 0x%16llx",
i, (uint64_t)esf->fpu.d[i],
i + 1, (uint64_t)esf->fpu.d[i + 1],
@@ -44,24 +45,24 @@ static void esf_dump(const struct arch_esf *esf)
i + 3, (uint64_t)esf->fpu.d[i + 3]);
}
#endif
LOG_ERR("fpscr: 0x%08x", esf->fpu.fpscr);
EXCEPTION_DUMP("fpscr: 0x%08x", esf->fpu.fpscr);
#endif
#if defined(CONFIG_EXTRA_EXCEPTION_INFO)
const struct _callee_saved *callee = esf->extra_info.callee;
if (callee != NULL) {
LOG_ERR("r4/v1: 0x%08x r5/v2: 0x%08x r6/v3: 0x%08x",
EXCEPTION_DUMP("r4/v1: 0x%08x r5/v2: 0x%08x r6/v3: 0x%08x",
callee->v1, callee->v2, callee->v3);
LOG_ERR("r7/v4: 0x%08x r8/v5: 0x%08x r9/v6: 0x%08x",
EXCEPTION_DUMP("r7/v4: 0x%08x r8/v5: 0x%08x r9/v6: 0x%08x",
callee->v4, callee->v5, callee->v6);
LOG_ERR("r10/v7: 0x%08x r11/v8: 0x%08x psp: 0x%08x",
EXCEPTION_DUMP("r10/v7: 0x%08x r11/v8: 0x%08x psp: 0x%08x",
callee->v7, callee->v8, callee->psp);
}
LOG_ERR("EXC_RETURN: 0x%0x", esf->extra_info.exc_return);
EXCEPTION_DUMP("EXC_RETURN: 0x%0x", esf->extra_info.exc_return);
#endif /* CONFIG_EXTRA_EXCEPTION_INFO */
LOG_ERR("Faulting instruction address (r15/pc): 0x%08x",
EXCEPTION_DUMP("Faulting instruction address (r15/pc): 0x%08x",
esf->basic.pc);
}
#endif /* CONFIG_EXCEPTION_DEBUG */
@@ -79,7 +80,7 @@ void z_arm_fatal_error(unsigned int reason, const struct arch_esf *esf)
if (reason == K_ERR_SPURIOUS_IRQ) {
uint32_t irqn = __get_IPSR() - 16;
LOG_ERR("Unhandled IRQn: %d", irqn);
EXCEPTION_DUMP("Unhandled IRQn: %d", irqn);
}
#endif

View File

@@ -1,5 +1,6 @@
/*
* Copyright (c) 2015 Intel corporation
* Copyright 2025 Arm Limited and/or its affiliates <open-source-office@arm.com>
*
* SPDX-License-Identifier: Apache-2.0
*/
@@ -34,7 +35,8 @@ void arch_irq_offload(irq_offload_routine_t routine, const void *parameter)
offload_routine = routine;
offload_param = parameter;
__asm__ volatile ("svc %[id]"
__asm__ volatile ("svc %[id]\n"
IF_ENABLED(CONFIG_ARM_BTI, ("bti"))
:
: [id] "i" (_SVC_CALL_IRQ_OFFLOAD)
: "memory");

View File

@@ -890,6 +890,9 @@ static int __arch_mem_map(void *virt, uintptr_t phys, size_t size, uint32_t flag
switch (flags & K_MEM_CACHE_MASK) {
case K_MEM_ARM_NORMAL_NC:
conv_flags |= MT_NORMAL;
break;
case K_MEM_CACHE_NONE:
default:
conv_flags |= MT_DEVICE;

View File

@@ -11,10 +11,10 @@ if(CONFIG_CPU_CORTEX_M AND NOT CONFIG_CPU_HAS_CUSTOM_FIXED_SOC_MPU_REGIONS)
zephyr_library_sources_ifdef(CONFIG_CPU_HAS_NXP_SYSMPU nxp_mpu_regions.c)
endif()
if (CONFIG_CPU_AARCH32_CORTEX_R)
if(CONFIG_CPU_AARCH32_CORTEX_R)
zephyr_library_include_directories(cortex_a_r)
elseif (CONFIG_CPU_CORTEX_M)
elseif(CONFIG_CPU_CORTEX_M)
zephyr_library_include_directories(cortex_m)
else ()
else()
message(FATAL_ERROR "CPU is not Cortex-A/R/M")
endif ()
endif()

View File

@@ -14,11 +14,18 @@
#include <kernel_arch_data.h>
#include <zephyr/mem_mgmt/mem_attr.h>
#include <zephyr/dt-bindings/memory-attr/memory-attr-arm.h>
#include <zephyr/arch/arm/mpu/arm_mpu.h>
#define LOG_LEVEL CONFIG_MPU_LOG_LEVEL
#include <zephyr/logging/log.h>
LOG_MODULE_DECLARE(mpu);
#if Z_ARM_CPU_HAS_PMSAV8_MPU
#define ATTRIBUTE_AND_SIZE_REG_NAME RLAR
#else
#define ATTRIBUTE_AND_SIZE_REG_NAME RASR
#endif
#if defined(CONFIG_ARMV8_M_BASELINE) || defined(CONFIG_ARMV8_M_MAINLINE)
/* The order here is on purpose since ARMv8-M SoCs may define
* CONFIG_ARMV6_M_ARMV8_M_BASELINE or CONFIG_ARMV7_M_ARMV8_M_MAINLINE
@@ -62,6 +69,7 @@ static uint8_t static_regions_num;
#include "arm_mpu_v7_internal.h"
#elif defined(CONFIG_CPU_CORTEX_M23) || \
defined(CONFIG_CPU_CORTEX_M33) || \
defined(CONFIG_CPU_CORTEX_M52) || \
defined(CONFIG_CPU_CORTEX_M55) || \
defined(CONFIG_CPU_CORTEX_M85) || \
defined(CONFIG_AARCH32_ARMV8_R)
@@ -139,6 +147,11 @@ static int mpu_configure_regions_from_dt(uint8_t *reg_index)
region_conf = _BUILD_REGION_CONF(region[idx], REGION_IO_ATTR);
break;
#endif
#ifdef REGION_DEVICE_ATTR
case DT_MEM_ARM_MPU_DEVICE:
region_conf = _BUILD_REGION_CONF(region[idx], REGION_DEVICE_ATTR);
break;
#endif
#ifdef REGION_EXTMEM_ATTR
case DT_MEM_ARM_MPU_EXTMEM:
region_conf = _BUILD_REGION_CONF(region[idx], REGION_EXTMEM_ATTR);
@@ -407,6 +420,72 @@ void arm_core_mpu_configure_dynamic_mpu_regions(const struct z_arm_mpu_partition
}
}
#if defined(CONFIG_CPU_CORTEX_M)
/**
* @brief Save the current MPU configuration into the provided context struct.
*/
void z_arm_save_mpu_context(struct z_mpu_context_retained *ctx)
{
uint32_t regions = get_num_regions();
__ASSERT_NO_MSG(ctx != NULL);
if (regions == 0 || regions > Z_ARM_MPU_MAX_REGIONS) {
LOG_DBG("Invalid MPU region count: %u", regions);
ctx->num_valid_regions = 0;
return;
}
ctx->num_valid_regions = regions;
for (uint32_t i = 0; i < regions; i++) {
MPU->RNR = i;
__DSB(); /* Ensure MPU->RNR write completes before reading registers */
__ISB();
ctx->rbar[i] = MPU->RBAR;
ctx->rasr_rlar[i] = MPU->ATTRIBUTE_AND_SIZE_REG_NAME;
}
#if Z_ARM_CPU_HAS_PMSAV8_MPU
ctx->mair[0] = MPU->MAIR0;
ctx->mair[1] = MPU->MAIR1;
#endif
ctx->ctrl = MPU->CTRL;
}
/**
* @brief Restore the MPU configuration from the provided context struct.
*/
void z_arm_restore_mpu_context(const struct z_mpu_context_retained *ctx)
{
__ASSERT_NO_MSG(ctx != NULL);
if (ctx->num_valid_regions == 0 || ctx->num_valid_regions > Z_ARM_MPU_MAX_REGIONS) {
LOG_DBG("Invalid MPU context num_valid_regions: %u", ctx->num_valid_regions);
return;
}
/* Disable MPU before reprogramming */
arm_core_mpu_disable();
for (uint32_t i = 0; i < ctx->num_valid_regions; i++) {
MPU->RNR = i;
MPU->RBAR = ctx->rbar[i];
MPU->ATTRIBUTE_AND_SIZE_REG_NAME = ctx->rasr_rlar[i];
}
#if Z_ARM_CPU_HAS_PMSAV8_MPU
MPU->MAIR0 = ctx->mair[0];
MPU->MAIR1 = ctx->mair[1];
#endif
/* Restore MPU control register (including enable bit if set) */
MPU->CTRL = ctx->ctrl;
/* Ensure MPU settings take effect before continuing */
__DSB();
__ISB();
}
#endif /* CONFIG_CPU_CORTEX_M */
/* ARM MPU Driver Initial Setup */
/*

View File

@@ -7,7 +7,7 @@
#include <zephyr/sys/slist.h>
#include <zephyr/arch/arm/mpu/arm_mpu.h>
#include <zephyr/arch/arm/cortex_m/arm_mpu_mem_cfg.h>
#include <zephyr/arch/arm/mpu/arm_mpu_mem_cfg.h>
static const struct arm_mpu_region mpu_regions[] = {
#ifdef CONFIG_XIP

View File

@@ -32,7 +32,8 @@ struct dynamic_region_info {
*/
static struct dynamic_region_info dyn_reg_info[MPU_DYNAMIC_REGION_AREAS_NUM];
#if defined(CONFIG_CPU_CORTEX_M23) || defined(CONFIG_CPU_CORTEX_M33) || \
defined(CONFIG_CPU_CORTEX_M55) || defined(CONFIG_CPU_CORTEX_M85)
defined(CONFIG_CPU_CORTEX_M52) || defined(CONFIG_CPU_CORTEX_M55) || \
defined(CONFIG_CPU_CORTEX_M85)
static inline void mpu_set_mair0(uint32_t mair0)
{
MPU->MAIR0 = mair0;

View File

@@ -1,5 +1,6 @@
/*
* Copyright (c) 2013-2014 Wind River Systems, Inc.
* Copyright 2025 Arm Limited and/or its affiliates <open-source-office@arm.com>
*
* SPDX-License-Identifier: Apache-2.0
*/
@@ -32,6 +33,10 @@
GEN_OFFSET_SYM(_thread_arch_t, basepri);
GEN_OFFSET_SYM(_thread_arch_t, swap_return_value);
#if defined(CONFIG_ARM_PAC_PER_THREAD)
GEN_OFFSET_SYM(_thread_arch_t, pac_keys);
#endif
#if defined(CONFIG_CPU_AARCH32_CORTEX_A) || defined(CONFIG_CPU_AARCH32_CORTEX_R)
GEN_OFFSET_SYM(_thread_arch_t, exception_depth);
GEN_OFFSET_SYM(_cpu_arch_t, exc_depth);
@@ -45,8 +50,9 @@ GEN_OFFSET_SYM(_thread_arch_t, mode_exc_return);
#endif
#if defined(CONFIG_USERSPACE)
GEN_OFFSET_SYM(_thread_arch_t, priv_stack_start);
#if defined(CONFIG_CPU_AARCH32_CORTEX_R)
GEN_OFFSET_SYM(_thread_arch_t, priv_stack_end);
#if defined(CONFIG_CPU_AARCH32_CORTEX_R)
GEN_OFFSET_SYM(_thread_arch_t, sp_usr);
#endif
#endif

View File

@@ -42,45 +42,41 @@ GDATA(_k_syscall_table)
*
* The function is invoked as:
* z_arm_userspace_enter(user_entry, p1, p2, p3,
* stack_info.start, stack_info.size);
* stack_info.start, stack_info.size,
* sp_is_priv);
*/
SECTION_FUNC(TEXT,z_arm_userspace_enter)
/* move user_entry to lr */
mov lr, r0
/* prepare to set stack to privileged stack */
/* load arguments from stack:
* r4 = user stack start
* r5 = user stack size
* r6 = sp_is_priv (1 if already on privileged stack)
*/
pop {r4, r5, r6}
/* get current thread pointer */
ldr r0, =_kernel
ldr r0, [r0, #_kernel_offset_to_current]
#if defined(CONFIG_ARMV6_M_ARMV8_M_BASELINE)
/* move p1 to ip */
mov ip, r1
ldr r1, =_thread_offset_to_priv_stack_start
ldr r0, [r0, r1] /* priv stack ptr */
ldr r1, =CONFIG_PRIVILEGED_STACK_SIZE
add r0, r0, r1
ldr r1, =_thread_offset_to_priv_stack_end
ldr r0, [r0, r1]
/* Restore p1 from ip */
mov r1, ip
#elif defined(CONFIG_ARMV7_M_ARMV8_M_MAINLINE)
ldr r0, [r0, #_thread_offset_to_priv_stack_start] /* priv stack ptr */
ldr ip, =CONFIG_PRIVILEGED_STACK_SIZE
add r0, r0, ip
#elif defined(CONFIG_CPU_AARCH32_CORTEX_R)
ldr r0, [r0, #_thread_offset_to_priv_stack_start] /* priv stack ptr */
ldr ip, =CONFIG_PRIVILEGED_STACK_SIZE
add r0, r0, ip
ldr ip, =_kernel
ldr ip, [ip, #_kernel_offset_to_current]
str r0, [ip, #_thread_offset_to_priv_stack_end] /* priv stack end */
#elif defined(CONFIG_ARMV7_M_ARMV8_M_MAINLINE) \
|| defined(CONFIG_CPU_AARCH32_CORTEX_R)
ldr r0, [r0, #_thread_offset_to_priv_stack_end] /* privileged stack ptr */
#endif
/* store current stack pointer to ip
* the current stack pointer is needed to retrieve
* stack_info.start and stack_info.size
*/
mov ip, sp
/* check if current stack is privileged and switch to it if not */
cmp r6, #1
beq 1f
#if defined(CONFIG_CPU_AARCH32_CORTEX_R)
#if defined(CONFIG_CPU_AARCH32_CORTEX_R) || defined(CONFIG_CPU_AARCH32_CORTEX_A)
mov sp, r0
#else
/* set stack to privileged stack
@@ -94,35 +90,28 @@ SECTION_FUNC(TEXT,z_arm_userspace_enter)
msr PSP, r0
#endif
1:
/* push thread args and entrypoint to stack */
push {r1,r2,r3,lr}
#if defined(CONFIG_BUILTIN_STACK_GUARD)
/* At this point the privileged stack is not yet protected by PSPLIM.
* Since we have just switched to the top of the privileged stack, we
* Since we have switched to the top of the privileged stack, we
* are safe, as long as the stack can accommodate the maximum exception
* stack frame.
*/
/* set stack pointer limit to the start of the priv stack */
ldr r0, =_kernel
ldr r0, [r0, #_kernel_offset_to_current]
ldr r0, [r0, #_thread_offset_to_priv_stack_start] /* priv stack ptr */
ldr r1, =CONFIG_PRIVILEGED_STACK_SIZE
sub r0, r0, r1 /* Calculate start of privileged stack */
/* set stack pointer limit to the start of the privileged stack */
msr PSPLIM, r0
#endif
/* push args to stack */
push {r1,r2,r3,lr}
#if defined(CONFIG_ARMV6_M_ARMV8_M_BASELINE)
mov r1, ip
push {r0,r1}
#elif defined(CONFIG_ARMV7_M_ARMV8_M_MAINLINE) \
|| defined(CONFIG_CPU_AARCH32_CORTEX_R)
push {r0,ip}
#endif
/* Re-program dynamic memory map.
*
* Important note:
* z_arm_configure_dynamic_mpu_regions() may re-program the MPU Stack Guard
* to guard the privilege stack for overflows (if building with option
* to guard the privileged stack for overflows (if building with option
* CONFIG_MPU_STACK_GUARD). There is a risk of actually overflowing the
* stack while doing the re-programming. We minimize the risk by placing
* this function immediately after we have switched to the privileged stack
@@ -136,29 +125,10 @@ SECTION_FUNC(TEXT,z_arm_userspace_enter)
ldr r0, [r0, #_kernel_offset_to_current]
bl z_arm_configure_dynamic_mpu_regions
#if defined(CONFIG_ARMV6_M_ARMV8_M_BASELINE)
pop {r0,r3}
/* load up stack info from user stack */
ldr r0, [r3]
ldr r3, [r3, #4]
mov ip, r3
push {r0,r3}
#elif defined(CONFIG_ARMV7_M_ARMV8_M_MAINLINE) \
|| defined(CONFIG_CPU_AARCH32_CORTEX_R)
pop {r0,ip}
/* load up stack info from user stack */
ldr r0, [ip]
ldr ip, [ip, #4]
push {r0,ip}
#endif
/* clear the user stack area to clean out privileged data */
/* from right past the guard right up to the end */
mov r2, ip
mov r0, r4
mov r2, r5
#ifdef CONFIG_INIT_STACKS
ldr r1,=0xaaaaaaaa
#else
@@ -166,17 +136,18 @@ SECTION_FUNC(TEXT,z_arm_userspace_enter)
#endif
bl memset
/* At this point:
* r4 contains user stack start
* r5 contains user stack size
* calculate top of user stack in r0 (start+size)
*/
#if defined(CONFIG_ARMV6_M_ARMV8_M_BASELINE)
pop {r0, r1}
mov ip, r1
adds r0, r4, r5
#elif defined(CONFIG_ARMV7_M_ARMV8_M_MAINLINE) \
|| defined(CONFIG_CPU_AARCH32_CORTEX_R)
pop {r0,ip}
add r0, r4, r5
#endif
/* r0 contains user stack start, ip contains user stack size */
add r0, r0, ip /* calculate top of stack */
/* pop remaining arguments from stack before switching stacks */
#if defined(CONFIG_ARMV6_M_ARMV8_M_BASELINE)
/* Use r4 to pop lr, then restore r4 */
@@ -189,7 +160,7 @@ SECTION_FUNC(TEXT,z_arm_userspace_enter)
pop {r1,r2,r3,lr}
#endif
#if defined(CONFIG_CPU_AARCH32_CORTEX_R)
#if defined(CONFIG_CPU_AARCH32_CORTEX_R) || defined(CONFIG_CPU_AARCH32_CORTEX_A)
/*
* set stack to user stack. We are in SYSTEM state, so r13 and r14 are
* shared with USER state
@@ -224,10 +195,7 @@ SECTION_FUNC(TEXT,z_arm_userspace_enter)
isb
/* Set PSPLIM to guard the thread's user stack. */
ldr r0, =_kernel
ldr r0, [r0, #_kernel_offset_to_current]
ldr r0, [r0, #_thread_offset_to_stack_info_start]
msr PSPLIM, r0
msr PSPLIM, r4
pop {r0, ip}
#endif
@@ -274,10 +242,24 @@ SECTION_FUNC(TEXT,z_arm_userspace_enter)
orrs ip, ip, #1
/* Store (unprivileged) mode in thread's mode state variable */
str r1, [r0, #_thread_offset_to_mode]
#ifdef CONFIG_ARM_PAC_PER_THREAD
/* Read thread's dedicated PAC key and since we are in unprivileged mode write them in the
* unprivileged PAC key registers.
* This needs to be done before we switch to unprivileged mode.
*/
add r1, r0, #_thread_offset_to_pac_keys
ldmia r1!, {r3-r6}
msr PAC_KEY_U_0, r3
msr PAC_KEY_U_1, r4
msr PAC_KEY_U_2, r5
msr PAC_KEY_U_3, r6
clrm {r3-r6}
#endif
#endif
dsb
msr CONTROL, ip
#endif
#endif /* CONFIG_CPU_AARCH32_CORTEX_R */
/* ISB is not strictly necessary here (stack pointer is not being
* touched), but it's recommended to avoid executing pre-fetched

View File

@@ -32,15 +32,24 @@ extern "C" {
extern volatile irq_offload_routine_t offload_routine;
#endif
/* Check the CPSR mode bits to see if we are in IRQ or FIQ mode */
static ALWAYS_INLINE bool arch_is_in_isr(void)
{
return (arch_curr_cpu()->nested != 0U);
uint32_t nested;
#ifdef CONFIG_SMP
unsigned int key;
key = arch_irq_lock();
#endif
nested = arch_curr_cpu()->nested;
#ifdef CONFIG_SMP
arch_irq_unlock(key);
#endif
return nested != 0U;
}
static ALWAYS_INLINE bool arch_is_in_nested_exception(const struct arch_esf *esf)
{
return (arch_curr_cpu()->arch.exc_depth > 1U) ? (true) : (false);
return (_current_cpu->arch.exc_depth > 1U) ? (true) : (false);
}
/**

View File

@@ -1,5 +1,6 @@
/*
* Copyright (c) 2019 Carlo Caione <ccaione@baylibre.com>
* Copyright 2025 Arm Limited and/or its affiliates <open-source-office@arm.com>
*
* SPDX-License-Identifier: Apache-2.0
*/
@@ -77,7 +78,8 @@ static ALWAYS_INLINE void arch_switch(void *switch_to, void **switched_from)
extern FUNC_NORETURN void z_arm_userspace_enter(k_thread_entry_t user_entry,
void *p1, void *p2, void *p3,
uint32_t stack_end,
uint32_t stack_start);
uint32_t stack_start,
uint32_t sp_is_priv);
extern void z_arm_fatal_error(unsigned int reason, const struct arch_esf *esf);

View File

@@ -0,0 +1,36 @@
/*
* Copyright (c) 2025 Google LLC
*
* SPDX-License-Identifier: Apache-2.0
*/
/**
* @file
* @brief ARM Cortex-M debug monitor functions interface based on DWT
*
*/
#ifndef ZEPHYR_ARCH_ARM_INCLUDE_CORTEX_M_DEBUG_H_
#define ZEPHYR_ARCH_ARM_INCLUDE_CORTEX_M_DEBUG_H_
#ifdef __cplusplus
extern "C" {
#endif
/**
* @brief Assess whether a debug monitor event should be treated as an error
*
* This routine checks the status of a debug_monitor() exception, and
* evaluates whether this needs to be considered as a processor error.
*
* @return true if the DM exception is a processor error, otherwise false
*/
bool z_arm_debug_monitor_event_error_check(void);
int z_arm_debug_enable_null_pointer_detection(void);
#ifdef __cplusplus
}
#endif
#endif /* ZEPHYR_ARCH_ARM_INCLUDE_CORTEX_M_DEBUG_H_ */

View File

@@ -36,14 +36,11 @@ extern "C" {
* update to CMSIS_6.
*/
#if !defined DWT_LSR_Present_Msk
#define DWT_LSR_Present_Msk \
IF_ENABLED(CONFIG_ZEPHYR_CMSIS_MODULE, (ITM_LSR_Present_Msk)) \
IF_DISABLED(CONFIG_ZEPHYR_CMSIS_MODULE, (ITM_LSR_PRESENT_Msk))
#define DWT_LSR_Present_Msk ITM_LSR_PRESENT_Msk
#endif
#if !defined DWT_LSR_Access_Msk
#define DWT_LSR_Access_Msk \
IF_ENABLED(CONFIG_ZEPHYR_CMSIS_MODULE, (ITM_LSR_Access_Msk)) \
IF_DISABLED(CONFIG_ZEPHYR_CMSIS_MODULE, (ITM_LSR_ACCESS_Msk))
#define DWT_LSR_Access_Msk ITM_LSR_ACCESS_Msk
#endif
static inline void dwt_access(bool ena)

View File

@@ -261,16 +261,6 @@ static ALWAYS_INLINE void z_arm_set_fault_sp(const struct arch_esf *esf, uint32_
#endif /* CONFIG_DEBUG_COREDUMP */
}
/**
* @brief Assess whether a debug monitor event should be treated as an error
*
* This routine checks the status of a debug_monitor() exception, and
* evaluates whether this needs to be considered as a processor error.
*
* @return true if the DM exception is a processor error, otherwise false
*/
bool z_arm_debug_monitor_event_error_check(void);
#ifdef __cplusplus
}
#endif

View File

@@ -1,5 +1,6 @@
/*
* Copyright (c) 2019 Carlo Caione <ccaione@baylibre.com>
* Copyright 2025 Arm Limited and/or its affiliates <open-source-office@arm.com>
*
* SPDX-License-Identifier: Apache-2.0
*/
@@ -75,7 +76,8 @@ extern FUNC_NORETURN void z_arm_switch_to_main_no_multithreading(k_thread_entry_
#endif /* !CONFIG_MULTITHREADING */
extern FUNC_NORETURN void z_arm_userspace_enter(k_thread_entry_t user_entry, void *p1, void *p2,
void *p3, uint32_t stack_end, uint32_t stack_start);
void *p3, uint32_t stack_end, uint32_t stack_start,
uint32_t sp_is_priv);
extern void z_arm_fatal_error(unsigned int reason, const struct arch_esf *esf);

View File

@@ -1,5 +1,6 @@
/*
* Copyright (c) 2019 Carlo Caione <ccaione@baylibre.com>
* Copyright 2025 Arm Limited and/or its affiliates <open-source-office@arm.com>
*
* SPDX-License-Identifier: Apache-2.0
*/
@@ -45,10 +46,10 @@
#define _thread_offset_to_priv_stack_start \
(___thread_t_arch_OFFSET + ___thread_arch_t_priv_stack_start_OFFSET)
#if defined(CONFIG_CPU_AARCH32_CORTEX_R)
#define _thread_offset_to_priv_stack_end \
(___thread_t_arch_OFFSET + ___thread_arch_t_priv_stack_end_OFFSET)
#if defined(CONFIG_CPU_AARCH32_CORTEX_R)
#define _thread_offset_to_sp_usr \
(___thread_t_arch_OFFSET + ___thread_arch_t_sp_usr_OFFSET)
#endif
@@ -59,6 +60,10 @@
(___thread_stack_info_t_start_OFFSET + ___thread_t_stack_info_OFFSET)
#endif
#if defined(CONFIG_ARM_PAC_PER_THREAD)
#define _thread_offset_to_pac_keys \
(___thread_t_arch_OFFSET + ___thread_arch_t_pac_keys_OFFSET)
#endif
/* end - threads */

View File

@@ -41,9 +41,9 @@ zephyr_library_sources_ifdef(CONFIG_HAS_ARM_SMCCC smccc-call.S)
zephyr_library_sources_ifdef(CONFIG_AARCH64_IMAGE_HEADER header.S)
zephyr_library_sources_ifdef(CONFIG_SEMIHOST semihost.c)
zephyr_library_sources_ifdef(CONFIG_DEBUG_COREDUMP coredump.c)
if ((CONFIG_MP_MAX_NUM_CPUS GREATER 1) OR (CONFIG_SMP))
if((CONFIG_MP_MAX_NUM_CPUS GREATER 1) OR (CONFIG_SMP))
zephyr_library_sources(smp.c)
endif ()
endif()
zephyr_cc_option_ifdef(CONFIG_USERSPACE -mno-outline-atomics)
zephyr_cc_option_ifdef(CONFIG_FRAME_POINTER -mno-omit-leaf-frame-pointer)

View File

@@ -9,7 +9,7 @@ config CPU_CORTEX_A
select HAS_FLASH_LOAD_OFFSET
select SCHED_IPI_SUPPORTED if SMP
select CPU_HAS_FPU
select ARCH_HAS_SINGLE_THREAD_SUPPORT
select ARCH_HAS_SINGLE_THREAD_SUPPORT if !SMP
select CPU_HAS_DCACHE
select CPU_HAS_ICACHE
imply FPU
@@ -72,6 +72,13 @@ config CPU_CORTEX_A76_A55
help
This option signifies the use of a Cortex-A76 and A55 big little CPU cluster
config CPU_CORTEX_A78
bool
select CPU_CORTEX_A
select ARMV8_A
help
This option signifies the use of a Cortex-A78 CPU
config CPU_CORTEX_R82
bool
select CPU_AARCH64_CORTEX_R

View File

@@ -760,8 +760,8 @@ static int configure_domain_partitions(struct k_mem_domain *domain)
struct k_thread *thread;
int ret;
SYS_DLIST_FOR_EACH_CONTAINER(&domain->mem_domain_q, thread,
mem_domain_info.mem_domain_q_node) {
SYS_DLIST_FOR_EACH_CONTAINER(&domain->thread_mem_domain_list, thread,
mem_domain_info.thread_mem_domain_node) {
ret = configure_dynamic_mpu_regions(thread);
if (ret != 0) {
return ret;

View File

@@ -23,6 +23,11 @@ SECTION_FUNC(TEXT, arch_cpu_idle)
#endif
dsb sy
wfi
#ifdef CONFIG_TRACING
str lr, [sp, #-16]!
bl sys_trace_idle_exit
ldr lr, [sp], #16
#endif
msr daifclr, #(DAIFCLR_IRQ_BIT)
ret
#endif
@@ -38,6 +43,11 @@ SECTION_FUNC(TEXT, arch_cpu_atomic_idle)
msr daifset, #(DAIFSET_IRQ_BIT)
isb
wfe
#ifdef CONFIG_TRACING
str lr, [sp, #-16]!
bl sys_trace_idle_exit
ldr lr, [sp], #16
#endif
tst x0, #(DAIF_IRQ_BIT)
beq _irq_disabled
msr daifclr, #(DAIFCLR_IRQ_BIT)

View File

@@ -18,9 +18,9 @@ _ASM_FILE_PROLOGUE
* to memset or memcpy on its own.
*/
/* void z_early_memset(void *dst, int c, size_t n) */
GTEXT(z_early_memset)
SECTION_FUNC(TEXT, z_early_memset)
/* void arch_early_memset(void *dst, int c, size_t n) */
GTEXT(arch_early_memset)
SECTION_FUNC(TEXT, arch_early_memset)
/* is dst pointer 8-bytes aligned? */
tst x0, #0x7
@@ -51,9 +51,9 @@ SECTION_FUNC(TEXT, z_early_memset)
4: ret
/* void z_early_memcpy(void *dst, const void *src, size_t n) */
GTEXT(z_early_memcpy)
SECTION_FUNC(TEXT, z_early_memcpy)
/* void arch_early_memcpy(void *dst, const void *src, size_t n) */
GTEXT(arch_early_memcpy)
SECTION_FUNC(TEXT, arch_early_memcpy)
/* are dst and src pointers 8-bytes aligned? */
orr x8, x1, x0

View File

@@ -22,6 +22,7 @@
#include <zephyr/sys/poweroff.h>
#include <kernel_arch_func.h>
#include <kernel_arch_interface.h>
#include <zephyr/arch/exception.h>
#include "paging.h"
@@ -179,24 +180,24 @@ static void dump_esr(uint64_t esr, bool *dump_far)
err = "Unknown";
}
LOG_ERR("ESR_ELn: 0x%016llx", esr);
LOG_ERR(" EC: 0x%llx (%s)", GET_ESR_EC(esr), err);
LOG_ERR(" IL: 0x%llx", GET_ESR_IL(esr));
LOG_ERR(" ISS: 0x%llx", GET_ESR_ISS(esr));
EXCEPTION_DUMP("ESR_ELn: 0x%016llx", esr);
EXCEPTION_DUMP(" EC: 0x%llx (%s)", GET_ESR_EC(esr), err);
EXCEPTION_DUMP(" IL: 0x%llx", GET_ESR_IL(esr));
EXCEPTION_DUMP(" ISS: 0x%llx", GET_ESR_ISS(esr));
}
static void esf_dump(const struct arch_esf *esf)
{
LOG_ERR("x0: 0x%016llx x1: 0x%016llx", esf->x0, esf->x1);
LOG_ERR("x2: 0x%016llx x3: 0x%016llx", esf->x2, esf->x3);
LOG_ERR("x4: 0x%016llx x5: 0x%016llx", esf->x4, esf->x5);
LOG_ERR("x6: 0x%016llx x7: 0x%016llx", esf->x6, esf->x7);
LOG_ERR("x8: 0x%016llx x9: 0x%016llx", esf->x8, esf->x9);
LOG_ERR("x10: 0x%016llx x11: 0x%016llx", esf->x10, esf->x11);
LOG_ERR("x12: 0x%016llx x13: 0x%016llx", esf->x12, esf->x13);
LOG_ERR("x14: 0x%016llx x15: 0x%016llx", esf->x14, esf->x15);
LOG_ERR("x16: 0x%016llx x17: 0x%016llx", esf->x16, esf->x17);
LOG_ERR("x18: 0x%016llx lr: 0x%016llx", esf->x18, esf->lr);
EXCEPTION_DUMP("x0: 0x%016llx x1: 0x%016llx", esf->x0, esf->x1);
EXCEPTION_DUMP("x2: 0x%016llx x3: 0x%016llx", esf->x2, esf->x3);
EXCEPTION_DUMP("x4: 0x%016llx x5: 0x%016llx", esf->x4, esf->x5);
EXCEPTION_DUMP("x6: 0x%016llx x7: 0x%016llx", esf->x6, esf->x7);
EXCEPTION_DUMP("x8: 0x%016llx x9: 0x%016llx", esf->x8, esf->x9);
EXCEPTION_DUMP("x10: 0x%016llx x11: 0x%016llx", esf->x10, esf->x11);
EXCEPTION_DUMP("x12: 0x%016llx x13: 0x%016llx", esf->x12, esf->x13);
EXCEPTION_DUMP("x14: 0x%016llx x15: 0x%016llx", esf->x14, esf->x15);
EXCEPTION_DUMP("x16: 0x%016llx x17: 0x%016llx", esf->x16, esf->x17);
EXCEPTION_DUMP("x18: 0x%016llx lr: 0x%016llx", esf->x18, esf->lr);
}
#endif /* CONFIG_EXCEPTION_DEBUG */
@@ -298,10 +299,11 @@ static bool print_trace_address(void *arg, unsigned long lr, void *fp)
uint32_t offset = 0;
const char *name = symtab_find_symbol_name(lr, &offset);
LOG_ERR(" %d: fp: 0x%016llx lr: 0x%016lx [%s+0x%x]", (*i)++, (uint64_t)fp, lr, name,
offset);
EXCEPTION_DUMP(" %d: fp: 0x%016llx lr: 0x%016lx [%s+0x%x]",
(*i)++, (uint64_t)fp, lr, name, offset);
#else
LOG_ERR(" %d: fp: 0x%016llx lr: 0x%016lx", (*i)++, (uint64_t)fp, lr);
EXCEPTION_DUMP(" %d: fp: 0x%016llx lr: 0x%016lx",
(*i)++, (uint64_t)fp, lr);
#endif /* CONFIG_SYMTAB */
return true;
@@ -311,10 +313,10 @@ static void esf_unwind(const struct arch_esf *esf)
{
int i = 0;
LOG_ERR("");
LOG_ERR("call trace:");
EXCEPTION_DUMP("");
EXCEPTION_DUMP("call trace:");
walk_stackframe(print_trace_address, &i, esf, CONFIG_ARCH_STACKWALK_MAX_FRAMES);
LOG_ERR("");
EXCEPTION_DUMP("");
}
#endif /* CONFIG_EXCEPTION_STACK_TRACE */
@@ -338,7 +340,8 @@ static bool z_arm64_stack_corruption_check(struct arch_esf *esf, uint64_t esr, u
write_cpacr_el1(read_cpacr_el1() | CPACR_EL1_FPEN_NOTRAP);
#endif
arch_curr_cpu()->arch.corrupted_sp = 0UL;
LOG_ERR("STACK OVERFLOW FROM KERNEL, SP: 0x%llx OR FAR: 0x%llx INVALID,"
EXCEPTION_DUMP("STACK OVERFLOW FROM KERNEL,"
" SP: 0x%llx OR FAR: 0x%llx INVALID,"
" SP LIMIT: 0x%llx", sp, far, sp_limit);
return true;
}
@@ -349,8 +352,9 @@ static bool z_arm64_stack_corruption_check(struct arch_esf *esf, uint64_t esr, u
guard_start = sp_limit - Z_ARM64_STACK_GUARD_SIZE;
sp = esf->sp;
if (sp <= sp_limit || (guard_start <= far && far <= sp_limit)) {
LOG_ERR("STACK OVERFLOW FROM USERSPACE, SP: 0x%llx OR FAR: 0x%llx INVALID,"
" SP LIMIT: 0x%llx", sp, far, sp_limit);
EXCEPTION_DUMP("STACK OVERFLOW FROM USERSPACE,"
"SP: 0x%llx OR FAR: 0x%llx INVALID,"
" SP LIMIT: 0x%llx", sp, far, sp_limit);
return true;
}
}
@@ -427,15 +431,15 @@ void z_arm64_fatal_error(unsigned int reason, struct arch_esf *esf)
#ifdef CONFIG_EXCEPTION_DEBUG
bool dump_far = false;
LOG_ERR("ELR_ELn: 0x%016llx", elr);
EXCEPTION_DUMP("ELR_ELn: 0x%016llx", elr);
dump_esr(esr, &dump_far);
if (dump_far) {
LOG_ERR("FAR_ELn: 0x%016llx", far);
EXCEPTION_DUMP("FAR_ELn: 0x%016llx", far);
}
LOG_ERR("TPIDRRO: 0x%016llx", read_tpidrro_el0());
EXCEPTION_DUMP("TPIDRRO: 0x%016llx", read_tpidrro_el0());
#endif /* CONFIG_EXCEPTION_DEBUG */
if (is_recoverable(esf, esr, far, elr) &&

View File

@@ -28,23 +28,32 @@ extern void z_arm64_fpu_restore(struct z_arm64_fp_context *saved_fp_context);
#include <string.h>
static void DBG(char *msg, struct k_thread *th)
static char *dbg_prefix(char *buf, char *msg, struct k_thread *th)
{
char buf[80], *p;
unsigned int v;
strcpy(buf, "CPU# exc# ");
buf[3] = '0' + _current_cpu->id;
buf[8] = '0' + arch_exception_depth();
strcat(buf, _current->name);
strcat(buf, ": ");
strcat(buf, msg);
strcat(buf, " ");
strcat(buf, th->name);
if (th != NULL) {
strcat(buf, " ");
strcat(buf, th->name);
}
return buf + strlen(buf);
}
static void DBG(char *msg, struct k_thread *th)
{
char buf[80], *p;
unsigned int v;
p = dbg_prefix(buf, msg, th);
if (th == NULL) {
th = _current;
}
v = *(unsigned char *)&th->arch.saved_fp_context;
p = buf + strlen(buf);
*p++ = ' ';
*p++ = ((v >> 4) < 10) ? ((v >> 4) + '0') : ((v >> 4) - 10 + 'a');
*p++ = ((v & 15) < 10) ? ((v & 15) + '0') : ((v & 15) - 10 + 'a');
@@ -54,9 +63,31 @@ static void DBG(char *msg, struct k_thread *th)
k_str_out(buf, p - buf);
}
static void DBG_PC(char *msg, uintptr_t pc)
{
char buf[80], *p;
uintptr_t addr = pc;
int i;
p = dbg_prefix(buf, msg, NULL);
strcpy(p, " PC=0x");
p += 6;
/* Format PC address as hex */
for (i = (sizeof(uintptr_t) * 2) - 1; i >= 0; i--) {
unsigned int nibble = (addr >> (i * 4)) & 0xf;
*p++ = (nibble < 10) ? (nibble + '0') : (nibble - 10 + 'a');
}
*p++ = '\n';
*p = 0;
k_str_out(buf, p - buf);
}
#else
static inline void DBG(char *msg, struct k_thread *t) { }
static inline void DBG_PC(char *msg, uintptr_t pc) { }
#endif /* FPU_DEBUG */
@@ -199,6 +230,7 @@ static bool simulate_str_q_insn(struct arch_esf *esf)
/* did we do something? */
if (pc != (uint32_t *)esf->elr) {
DBG_PC("simulated", esf->elr);
/* resume execution past the simulated instructions */
esf->elr = (uintptr_t)pc;
return true;
@@ -230,6 +262,8 @@ void z_arm64_fpu_trap(struct arch_esf *esf)
return;
}
DBG_PC("trap entry", esf->elr);
/* turn on FPU access */
write_cpacr_el1(read_cpacr_el1() | CPACR_EL1_FPEN_NOTRAP);
barrier_isync_fence_full();
@@ -268,7 +302,7 @@ void z_arm64_fpu_trap(struct arch_esf *esf)
/* restore our content */
z_arm64_fpu_restore(&_current->arch.saved_fp_context);
DBG("restore", _current);
DBG("restore", NULL);
}
/*

View File

@@ -64,6 +64,14 @@ SECTION_FUNC(TEXT, _isr_wrapper)
bl z_soc_irq_get_active
#endif /* !CONFIG_ARM_CUSTOM_INTERRUPT_CONTROLLER */
/* Preserve original IAR value */
str x0, [sp, #-16]!
#if CONFIG_GIC_VER == 2 && defined(CONFIG_SMP)
/* Mask out GICC_IAR.CPUID [12:10] */
bic x0, x0, #0x1c00
#endif
#if CONFIG_GIC_VER >= 3
/*
* Ignore Special INTIDs 1020..1023 see 2.2.1 of Arm Generic Interrupt Controller
@@ -82,8 +90,6 @@ oob:
cmp x0, x1
b.hi spurious_continue
stp x0, xzr, [sp, #-16]!
/* Retrieve the interrupt service routine */
ldr x1, =_sw_isr_table
add x1, x1, x0, lsl #4 /* table is 16-byte wide */
@@ -97,10 +103,12 @@ oob:
blr x3
msr daifset, #(DAIFSET_IRQ_BIT)
/* Signal end-of-interrupt */
ldp x0, xzr, [sp], #16
spurious_continue:
/* Retrieve original IAR value */
ldr x0, [sp], #16
/* Signal end-of-interrupt */
#if !defined(CONFIG_ARM_CUSTOM_INTERRUPT_CONTROLLER)
bl arm_gic_eoi
#else

Some files were not shown because too many files have changed in this diff Show More