Commit graph

136,983 commits

Author SHA1 Message Date
Albort Xue
8dd7b20f84 drivers: flash: spi_nor: Add octal page program command definitions
- 1-1-8 and 1-8-8 page program commands for 3-byte addressing
- 1-1-8 and 1-8-8 page program commands for 4-byte addressing

Signed-off-by: Albort Xue <yao.xue@nxp.com>
2026-02-03 14:27:07 -06:00
Benjamin Cabé
18e5a700a0 doc: treewide: drop reST substitutions for non-ASCII characters
Copyright sign, trademark sign, registered trademark sign, ... and other
non-ASCII characters are OK to use in the documentation source files.
Replace them with the corresponding Unicode characters.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2026-02-03 14:26:41 -06:00
Benjamin Cabé
5539d08b4b doc: contribute: guidelines: Make non-ASCII characters OK to use in docs
Our doc guidelines still recommend using substitutions for non-ASCII
characters but there is no strong reason to keep doing so in 2026.
Substitutions oftem times actually make the documentation sources harder
to read (e.g. `|plusminus| 2 |deg| C`), they can cause typographical
errors if folks don't use them properly, etc.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2026-02-03 14:26:41 -06:00
Benjamin Cabé
02a77ecf7a doc: boards: stm32wb5mmg: fix sphinxlint error
Fix "found an unbalanced inline literal markup" error on this page.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2026-02-03 14:26:41 -06:00
Sylvio Alves
738c5b713d runners: auto-select build artifact when --file-type is specified
when --file-type is provided without --file, automatically select
the corresponding build artifact (zephyr.hex, zephyr.bin, or
zephyr.elf) instead of requiring the user to specify both flags.

the validation that --file-type requires --file is preserved in
core.py, but run_common.py now auto-populates --file before the
validation runs.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2026-02-03 14:25:14 -06:00
Martin Stumpf
83d47c472a docs: mcumgr: Add mcumgr-toolkit to tools table
Disclaimer: I'm the author and maintainer of this tool.

Signed-off-by: Martin Stumpf <finomnis@gmail.com>
2026-02-03 14:24:33 -06:00
Martin Stumpf
4cad994b9d docs: mcumgr: Add LoRaWAN transport in tools table
There's now the KConfig option `CONFIG_MCUMGR_TRANSPORT_LORAWAN`,
but no corresponding entry in the tools table exists yet.

Signed-off-by: Martin Stumpf <finomnis@gmail.com>
2026-02-03 14:24:33 -06:00
Juliusz Sosinowicz
005598c100 drivers: timer: hpet: add checks to not crash at init
Zephyr was crashing in hpet when the base address
wasn't set yet when using MMU and when
`cyc_per_tick` was not defined yet.

Signed-off-by: Juliusz Sosinowicz <juliusz@wolfssl.com>
2026-02-03 14:23:01 -06:00
Zacck Osiemo
1fc31137dd tests: gpio: Add overlay for sc18is606 gpio
Apply device tree overlay for SC18IS606 mfd tests
in build_all

Signed-off-by: Zacck Osiemo <coderv63@gmail.com>
2026-02-03 14:22:34 -06:00
Zacck Osiemo
690660f8f6 drivers: gpio: Introduce SC18IS606 GPIO Controller
Added a driver implementation for the GPIO Controller
on the sc18is606

Signed-off-by: Zacck Osiemo <coderv63@gmail.com>
2026-02-03 14:22:34 -06:00
Zacck Osiemo
41a6f3ebce drivers: mfd: Add base support for NXP SC18IS606
Add support for base sc18is606  device and move dependencies to
mfd header rather than the SPI device.

Signed-off-by: Zacck Osiemo <coderv63@gmail.com>
2026-02-03 14:22:34 -06:00
Alexander Kozhinov
bdfe49df80 boards: st: nucleo_g474re: add opamp tag
add opamp tu supported tags in nucleo_g474re.yaml

Signed-off-by: Alexander Kozhinov <ak.alexander.kozhinov@gmail.com>
2026-02-03 14:21:28 -06:00
Alexander Kozhinov
e00615bab2 tests: drivers: opamp: add comprehensive nucleo_g474re test suite
add extensive test suite for nucleo_g474re OPAMP driver covering most
features and configurations.

Signed-off-by: Alexander Kozhinov <ak.alexander.kozhinov@gmail.com>
2026-02-03 14:21:28 -06:00
Alexander Kozhinov
455808412a tests: drivers: opamp: add nucleo_g474re opamp_api test support
add nucleo_g474re OPAMP support to the generic opamp_api test

Signed-off-by: Alexander Kozhinov <ak.alexander.kozhinov@gmail.com>
2026-02-03 14:21:28 -06:00
Alexander Kozhinov
ca03a56367 tests: drivers: build_all: add nucleo_g474re support
add nucleo_g474re OPAMP to build_all driver test suite.

Signed-off-by: Alexander Kozhinov <ak.alexander.kozhinov@gmail.com>
2026-02-03 14:21:28 -06:00
Alexander Kozhinov
44f734d8b6 samples: drivers: opamp: add nucleo_g474re support
add NUCLEO-G474RE board overlay for OPAMP output_measure sample

Signed-off-by: Alexander Kozhinov <ak.alexander.kozhinov@gmail.com>
2026-02-03 14:21:28 -06:00
Alexander Kozhinov
14991c1e3a drivers: opamp: implement stm32 opamp driver
implement operational amplifier driver for stm32
add KConfig options for stm32 opamp driver
add conditional source target to cmake file

Signed-off-by: Alexander Kozhinov <ak.alexander.kozhinov@gmail.com>
2026-02-03 14:21:28 -06:00
Alexander Kozhinov
cc494c365f dts: arm: st: g4: add opamp device tree nodes
add OPAMP1-6 peripheral nodes to STM32G4 device tree

Signed-off-by: Alexander Kozhinov <ak.alexander.kozhinov@gmail.com>
2026-02-03 14:21:28 -06:00
Alexander Kozhinov
72f1c75fb5 dts: bindings: opamp: add stm32 opamp bindings
common STM32 OPAMP properties (st,stm32-opamp.yaml)
stm32g4-specific OPAMP configuration (st,stm32g4-opamp.yaml)

Signed-off-by: Alexander Kozhinov <ak.alexander.kozhinov@gmail.com>
2026-02-03 14:21:28 -06:00
Dhruva Gole
b811ae127c doc: develop: manifests: external: add arduino core
Add documentation for the Arduino Core API for zephyr which sits
as an external module as of today.

Signed-off-by: Dhruva Gole <d-gole@ti.com>
2026-02-03 14:18:17 -06:00
Tim Pambor
998484cb47 boards: st: stm32h573i_dk: Fix RNG configuration for TF-M builds
Only enable STM32 RNG peripheral when building for non-TF-M targets and
disable it for TF-M builds to avoid conflicts with the secure side.

For TF-M builds, enable the PSA Crypto RNG driver instead.

Signed-off-by: Tim Pambor <tim.pambor@codewrights.de>
2026-02-03 08:24:14 -06:00
Jakub Topic
7a86136610 Revert "drivers: rtc: check PORF flag before clearing alarm flags at init"
This reverts commit e55a505989.

Signed-off-by: Jakub Topic <jakub.topic@anitra.cz>
2026-02-03 08:23:48 -06:00
Aksel Skauge Mellbye
8b09d8d967 soc: silabs: silabs_s2: Initialize sleeptimer early
Sleeptimer must be initialized before sl_power_manager since
SiSDK 2025.12, as it's no longer done internally in the power
manager.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2026-02-03 08:23:21 -06:00
Aksel Skauge Mellbye
69ce836b30 modules: hal_silabs: Update bluetooth config
Update bluetooth config to match changed options in the HAL.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2026-02-03 08:23:21 -06:00
Aksel Skauge Mellbye
cedaa6927c manifest: Update hal_silabs to SiSDK 2025.12.0
Update SiSDK to 2025.12.0.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2026-02-03 08:23:21 -06:00
Chris Friedt
2e19b49944 tests: posix: xsi_single_process: use aep base instead of posix api
`CONFIG_POSIX_API` should have been deprecated prior to v4.3.0 but the
deprecation was not accepted in PR #97855.

One of the reasons that it should be deprecated, is that it became a
dumping grounds of extra kconfig options, since it was not fixed in scope.

Enable only the minimum required for this test by substituting

```
CONFIG_POSIX_AEP_CHOICE_BASE=y
CONFIG_XSI_SINGLE_PROCESS=y
```
for
```
CONFIG_POSIX_API=y
CONFIG_XSI_SINGLE_PROCESS=y
```

This allows small platforms with < 16 kiB of ram to run the test, and
indeed, less than 256 bytes of heap space is required for the test, so
remove the unnecessary `min_ram` directive in `testcase.yaml` accordingly.

Signed-off-by: Chris Friedt <chris@fr4.co>
2026-02-03 08:22:49 -06:00
Chris Friedt
d0671041c7 posix: posix_signal.h: move stack_t definition above ucontext_t
The `ucontext_t` structure includes a `stack_t` structure, so move the
definition of the `stack_t` structure ahead of `ucontext_t` to avoid
the error below.

```
In file included from lib/libc/minimal/include/signal.h:41,
                 from lib/posix/options/aio.c:8:
../zephyr/posix/posix_signal.h:204:9: error: unknown type name 'stack_t'
  204 |         stack_t uc_stack;
      |         ^~~~~~~

```

This would have also been fixed by #97855 but that PR still has not been
merged in spite of having had sufficient approvals.

Signed-off-by: Chris Friedt <chris@fr4.co>
2026-02-03 08:22:49 -06:00
Chris Friedt
8acf3c742a tests: posix: xsi_single_process: declare putenv()
Some C libraries do not declare `putenv()` in `stdlib.h`. This would have
been remedied had #97855 been merged. However, it was blocked from being
merged prior to v4.3.0.

Declare `putenv()` locally in the test until #97855 makes it into `main`.

Signed-off-by: Chris Friedt <chris@fr4.co>
2026-02-03 08:22:49 -06:00
Chris Friedt
5d6636951f posix: posix_types.h: declare pthread_attr_t consistently
There are slightly different definitions of pthread_attr_t in-tree.

This would have also been fixed by #97855 but that PR still has not been
merged in spite of having had sufficient approvals.

For now, fix it in a separate PR to avoid the error below.

```
include/zephyr/posix/posix_types.h:98:29: error: conflicting types for \
  'pthread_attr_t'; have 'struct pthread_attr'
   98 | typedef struct pthread_attr pthread_attr_t;
      |                             ^~~~~~~~~~~~~~
In file included from lib/libc/minimal/include/signal.h:41,
                 from lib/posix/options/posix_internal.h:12:
include/zephyr/posix/posix_signal.h:92:3: note: previous declaration of \
  'pthread_attr_t' with type 'pthread_attr_t'
   92 | } pthread_attr_t;
      |   ^~~~~~~~~~~~~~
```

Signed-off-by: Chris Friedt <chris@fr4.co>
2026-02-03 08:22:49 -06:00
Chris Friedt
c78a0e2550 scripts: ci: guideline_check: ignore tests/posix/ in coccinelle
Exclulde `tests/posix/` when running coccinelle checks for reserved names
since POSIX implements much of the reserved names.

This avoids the following failure in CI

```shell
Error: tests/posix/xsi_single_process/src/putenv.c:12: WARNING: \
  Violation to rule 21.2 (Should not used a reserved identifier) - putenv
```

Signed-off-by: Chris Friedt <chris@fr4.co>
2026-02-03 08:22:49 -06:00
Chris Friedt
8acd19784d scripts: ci: doxygen_coverage_diff: warn-only for POSIX API
POSIX API documentation should be warning-only for now, since there will
still be many changes and ideally we would like to minimize
documentation churn, leveraging the spec as much as possible.

Signed-off-by: Chris Friedt <chris@fr4.co>
2026-02-03 08:22:49 -06:00
Lauren Murphy
085889e620 llext: sys_mem_blocks as alternate heap implementation
Adds sys_mem_blocks as an alternative implementation
for the heap. Users have reported that k_heap allocating
additional bytes for bookkeeping data when allocating e.g.
a LLEXT_PAGE for an extension region causes them to skip
an entire page for the next allocation. This also causes
problems RE: MPU slot usage. sys_mem_blocks stores bookkeeping
data outside of the memory it allocates from and does not
have this issue.

Note that sys_mem_blocks is only used to allocate extension
regions. Metadata is still stored in a k_heap.

Note also that tracking data for sys_mem_blocks must be stored
per extension, as unlike k_heap it can't deallocate with just
a pointer to the memory.

Further limitations:
* sys_mem_blocks is statically allocated, so this option
  cannot be used with CONFIG_LLEXT_HEAP_DYNAMIC
* A minimum of 1 block must be allocated per region
  regardless of size.
  * If using the MPU / MMU where small allocations are
    rounded up to LLEXT_PAGE regardless, this penalty
    is not quite as noticeable.
* sys_mem_blocks does not support aligned allocations. However,
  by selecting a sufficiently large power of 2 for the
  block size and aligning the backing buffer to the block size,
  any allocation will be automatically aligned for the block size
  and smaller powers of 2. For LLEXT, this means users must select
  a block size equal to or a multiple of the largest
  requested region alignment of regions going on the heap
* If your MPU selects CONFIG_MPU_REQUIRES_POWER_OF_TWO_ALIGNMENT,
  large regions may cause unreasonably large maximum requested
  region alignments
* Block size must also be equal to or a multiple of
  LLEXT_PAGE_SIZE so each allocation is LLEXT page aligned

Signed-off-by: Lauren Murphy <lauren.murphy@intel.com>
2026-02-03 08:22:11 -06:00
Lauren Murphy
3172281e70 llext: add heap implementation kconfig option
Adds a Kconfig option to select LLEXT heap implementation.
Another choice, sys_mem_blocks, will be introduced in the
following commit.

Signed-off-by: Lauren Murphy <lauren.murphy@intel.com>
2026-02-03 08:22:11 -06:00
Alain Volmat
0b4cf34390 boards: st: keep frame-buffer memory cached
Now that the LTDC driver is taking care of flushing the cache
on display_write call, there is no need to have the framebuffer
memory cache disabled.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2026-02-03 08:21:00 -06:00
Alain Volmat
7561fb46bf drivers: display: ltdc: ensure to flush buffer into memory
When dealing with full frame write, ensure that the buffer content
is well flushed into memory so that the LTDC is able to access to the
correct data.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2026-02-03 08:21:00 -06:00
Alain Volmat
c5a8e70342 drivers: display: ltdc: rework write function for ease of readability
Rework the way stm32_ltdc_write function is written, splitting
into several functions in order to gain in readibility.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2026-02-03 08:21:00 -06:00
Ha Duong Quang
eca09a7799 tests: enable flash tests for s32k566 board
Enable flash tests for s32k566 board

Signed-off-by: Ha Duong Quang <ha.duongquang@nxp.com>
2026-02-03 08:20:27 -06:00
Ha Duong Quang
dcf45e7be2 samples: enable flash samples for s32k566 board
Enable flash samples for s32k566 board

Signed-off-by: Ha Duong Quang <ha.duongquang@nxp.com>
2026-02-03 08:20:27 -06:00
Ha Duong Quang
b939948c2a boards: s32k5xxcvb: enable flash controller for XSPI
This board has a IS66WVH8M8DALL memory connected to
the only XSPI port available in S32K566.

Signed-off-by: Ha Duong Quang <ha.duongquang@nxp.com>
2026-02-03 08:20:27 -06:00
Ha Duong Quang
12ae881233 drivers: flash: add NXP S32 XSPI flash hyperRAM driver for K5
add NXP S32 XSPI flash hyperRAM driver for K5

Signed-off-by: Ha Duong Quang <ha.duongquang@nxp.com>
2026-02-03 08:20:27 -06:00
Ha Duong Quang
6313d3d6f7 drivers: memc: add NXP S32 XSPI controller for K5
add NXP S32 XSPI controller for K5

Signed-off-by: Ha Duong Quang <ha.duongquang@nxp.com>
2026-02-03 08:20:27 -06:00
Hoang Nguyen
ab8a599145 tests: drivers: i2c: Add support for RZ/A2M-EVK
Add test support for I2C driver of RZ/A2M-EVK

Signed-off-by: Hoang Nguyen <hoang.nguyen.jx@bp.renesas.com>
Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
2026-02-03 08:19:39 -06:00
Hoang Nguyen
5197f3e73c boards: renesas: rza2m_evk: Add I2C support
Add I2C support for board RZ/A2M-EVK

Signed-off-by: Hoang Nguyen <hoang.nguyen.jx@bp.renesas.com>
Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
2026-02-03 08:19:39 -06:00
Hoang Nguyen
f627ed3162 dts: renesas: Add I2C support for RZ/A2M
Add I2C nodes to Renesas RZ/A2M devicetree

Signed-off-by: Hoang Nguyen <hoang.nguyen.jx@bp.renesas.com>
Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
2026-02-03 08:19:39 -06:00
Hoang Nguyen
3bd8612490 drivers: i2c: Initial support for RZ/A2M
Add I2C driver support for Renesas RZ/A2M

Signed-off-by: Hoang Nguyen <hoang.nguyen.jx@bp.renesas.com>
Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
2026-02-03 08:19:39 -06:00
Travis Lam
4a2f56bb8e soc: nordic: nrf7120 fix missing tfm support
Add NRF_TRUSTZONE_X_REGION_SIZE for mpc region size alignment.
fix missing include of soc header file.

Signed-off-by: Travis Lam <travis.lam@nordicsemi.no>
2026-02-03 12:13:27 +00:00
Peter Wang
bb8ef5dd75 boards: frdm_mcxa577: add watchdog support
1. enable watchdog support
2. verified tests/drivers/watchdog/wdt_basic_api

Signed-off-by: Peter Wang <chaoyi.wang@nxp.com>
Signed-off-by: Neil Chen <cheng.chen_1@nxp.com>
2026-02-03 12:13:16 +00:00
Neil Chen
fcd01d8f65 boards: frdm_mcxa577: add dma support
1. enable dma support
2. verified tests/drivers/dma/loop_transfer/

Signed-off-by: Peter Wang <chaoyi.wang@nxp.com>
Signed-off-by: Neil Chen <cheng.chen_1@nxp.com>
2026-02-03 12:13:16 +00:00
Peter Wang
76c1b69cc3 dts: arm/nxp: Update mcxa577 dma version
edma have different versions. mcxa577 edma belong to v3,
so need update mcxa577 dma version to 3 in dtsi file.

Signed-off-by: Peter Wang <chaoyi.wang@nxp.com>
Signed-off-by: Neil Chen <cheng.chen_1@nxp.com>
2026-02-03 12:13:16 +00:00
Peter Wang
703203e3de boards: frdm_mcxa577: add counter driver with lptmr,ctimer
1. enable lptmr and ctimer support
2. verified tests/drivers/count/counter_basic_api

Signed-off-by: Peter Wang <chaoyi.wang@nxp.com>
2026-02-03 12:13:16 +00:00