Commit graph

136,983 commits

Author SHA1 Message Date
Nicolas Pitre
595ecd16f4 tests: arch: arm64: Add PACBTI test suite
Add test suite for ARM64 PACBTI functionality covering:

PAC (Pointer Authentication) Tests:
- Hardware PAC support detection and SCTLR_EL1 enablement verification
- PAC key management (generate, save, restore operations)
- Per-thread PAC key isolation and context switching validation
- ROP attack demonstration and detection (kernel and user mode)

BTI (Branch Target Identification) Tests:
- Hardware BTI support detection
- BTI violation detection (kernel and user mode)

Signed-off-by: Nicolas Pitre <npitre@baylibre.com>
2026-02-03 09:36:09 +01:00
Nicolas Pitre
a72194c2a0 arm*: BTI requires C library built with branch protection
BTI requires that the C library be compiled with -mbranch-protection to
include BTI landing pads. Newlib from toolchains lacks this support, so
only minimal libc or picolibc built from source (PICOLIBC_USE_MODULE) can
be used with BTI.

Without this, the basic hello_world/ sample fails to execute.

Signed-off-by: Nicolas Pitre <npitre@baylibre.com>
2026-02-03 09:36:09 +01:00
Nicolas Pitre
991990946d arm*: Improve ARM_PAC_PER_THREAD RNG dependency handling
Change the random number generator requirement for per-thread PAC keys
from a hard dependency to a more flexible approach:

- Use 'select CSPRNG_NEEDED' to automatically request cryptographic
  RNG support rather than requiring specific RNG options to be
  pre-enabled
- Use 'imply TEST_RANDOM_GENERATOR' as a fallback when no real CSPRNG
  is available, enabling testing without hardware entropy

Signed-off-by: Nicolas Pitre <npitre@baylibre.com>
2026-02-03 09:36:09 +01:00
Nicolas Pitre
a02a3f14f3 arm64: Make PACBTI Kconfig available and add compiler flag support
Enable the ARM_PACBTI Kconfig choice for ARM64 architectures (ARMV8_A
and ARMV9_A) in addition to the existing ARM32 ARMV8_1_M_MAINLINE
support. Add the corresponding -mbranch-protection compiler flags to
both GCC and Clang target files for ARM64.

Signed-off-by: Nicolas Pitre <npitre@baylibre.com>
2026-02-03 09:36:09 +01:00
Nicolas Pitre
13fe03a3b5 arm64: Add Branch Target Identification (BTI) support
Add support for ARMv8.5+ Branch Target Identification to protect against
Jump-Oriented Programming (JOP) attacks. This complements PAC to offer
complete protection against both ROP and JOP attacks, ensuring
comprehensive control flow integrity.

Signed-off-by: Nicolas Pitre <npitre@baylibre.com>
2026-02-03 09:36:09 +01:00
Nicolas Pitre
d1d439ca09 arm64: Add Pointer Authentication (PAC) support
Add support for ARMv8.3+ Pointer Authentication to protect against
Return-Oriented Programming (ROP) attacks. This implementation provides
PAC functionality with per-thread key isolation, secure key management,
and integration with Zephyr's thread model.

Signed-off-by: Nicolas Pitre <npitre@baylibre.com>
2026-02-03 09:36:09 +01:00
Lay Desai
dc15cc165c drivers: clock_control: mspm0: Conditionally set clk0 as MCLK source
The MSPM0 clock control code sets clk0 as the MCLK source without
checking if clk0 is enabled. This seems to cause the CPU to not run.

The changes in this commit will set clk0 as the MCLK source only if the
clk0 is enabled. The clk0 is considered enabled if a user defines the
the clk0-div property for the syspll node in the devicetree.

The mspm0g.dtsi defines the clk2x-div property for the syspll node in
the devicetree. The clock control code as is only allows either the
clk2x-div or the clk0-div property to be set but not both. This
essentially means the syspllclk2x was enabled, but clk0 was set as the
MCLK source.

The fix would also allow users to continue using the syspll node as it
is defined in the mspm0g.dtsi without having to override the node for each
board.

Signed-off-by: Lay Desai <lay.desai@he360.com>
2026-02-03 09:33:48 +01:00
Hoang Nguyen
90df4c8118 drivers: timer: renesas: Initialize p_reg in extended configuration
Initialize p_reg with the register base address from devicetree.

Signed-off-by: Hoang Nguyen <hoang.nguyen.jx@bp.renesas.com>
Signed-off-by: Nhut Nguyen <nhut.nguyen.kc@renesas.com>
2026-02-03 09:29:36 +01:00
Hoang Nguyen
52859845c8 drivers: spi: renesas: Initialize p_reg in extended configuration
Initialize p_reg with the register base address from devicetree.

Signed-off-by: Hoang Nguyen <hoang.nguyen.jx@bp.renesas.com>
Signed-off-by: Nhut Nguyen <nhut.nguyen.kc@renesas.com>
2026-02-03 09:29:36 +01:00
Hoang Nguyen
5a9d20b4ed drivers: serial: renesas: Initialize p_reg in extended configuration
Initialize p_reg with the register base address from devicetree.

Signed-off-by: Hoang Nguyen <hoang.nguyen.jx@bp.renesas.com>
Signed-off-by: Nhut Nguyen <nhut.nguyen.kc@renesas.com>
2026-02-03 09:29:36 +01:00
Hoang Nguyen
eaf655126a drivers: pwm: renesas: Initialize p_reg in extended configuration
Initialize p_reg with the register base address from devicetree.

Signed-off-by: Hoang Nguyen <hoang.nguyen.jx@bp.renesas.com>
Signed-off-by: Nhut Nguyen <nhut.nguyen.kc@renesas.com>
2026-02-03 09:29:36 +01:00
Hoang Nguyen
6c918d05dc drivers: mbox: renesas: Initialize p_reg in extended configuration
Initialize the extended configuration and set p_reg using the devicetree
register base address.

Signed-off-by: Hoang Nguyen <hoang.nguyen.jx@bp.renesas.com>
Signed-off-by: Nhut Nguyen <nhut.nguyen.kc@renesas.com>
2026-02-03 09:29:36 +01:00
Hoang Nguyen
6dc7e0429c drivers: i2c: renesas: Initialize p_reg in extended configuration
Initialize p_reg with the register base address from devicetree.

Signed-off-by: Hoang Nguyen <hoang.nguyen.jx@bp.renesas.com>
Signed-off-by: Nhut Nguyen <nhut.nguyen.kc@renesas.com>
2026-02-03 09:29:36 +01:00
Hoang Nguyen
29ddedd57d drivers: dma: renesas: Initialize p_reg in extended configuration
Initialize p_reg with the register base address from devicetree.

Signed-off-by: Hoang Nguyen <hoang.nguyen.jx@bp.renesas.com>
Signed-off-by: Nhut Nguyen <nhut.nguyen.kc@renesas.com>
2026-02-03 09:29:36 +01:00
Hoang Nguyen
4fbfd12946 drivers: counter: renesas: Initialize p_reg in extended configuration
Initialize p_reg with the register base address from devicetree.

Signed-off-by: Hoang Nguyen <hoang.nguyen.jx@bp.renesas.com>
Signed-off-by: Nhut Nguyen <nhut.nguyen.kc@renesas.com>
2026-02-03 09:29:36 +01:00
Hoang Nguyen
6f76f58407 drivers: can: renesas: Initialize p_reg in extended configuration
Initialize p_reg with the register base address from devicetree.

Signed-off-by: Hoang Nguyen <hoang.nguyen.jx@bp.renesas.com>
Signed-off-by: Nhut Nguyen <nhut.nguyen.kc@renesas.com>
2026-02-03 09:29:36 +01:00
Hoang Nguyen
89ad77fc52 drivers: adc: renesas: Initialize p_reg in extended configuration
Initialize p_reg with the register base address from devicetree.

Signed-off-by: Hoang Nguyen <hoang.nguyen.jx@bp.renesas.com>
Signed-off-by: Nhut Nguyen <nhut.nguyen.kc@renesas.com>
2026-02-03 09:29:36 +01:00
Nhut Nguyen
a38e61fd69 manifest: Update commit id for hal_renesas
Update commit id for hal_renesas

Signed-off-by: Nhut Nguyen <nhut.nguyen.kc@renesas.com>
2026-02-03 09:29:36 +01:00
Jiafei Pan
0020d6978d dts: arm64: imx943_evk: add gpt4 device node
Added GPT4 device node with disabled default status, need to add
A55 access permission in system manager firmware when enable it.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2026-02-03 09:27:40 +01:00
Paul Wedeck
ee80a68d29 logging: backend: Fix invalid return value in log_backend_net.c
log_backend_net supports both tcp and udp. If no tcp support is
compiled in, line_out will return an invalid number of consumed
bytes (-EINVAL). This patch removes the is_tcp flag if tcp support
is not compiled in and moves the error check into init_net.

Signed-off-by: Paul Wedeck <paulwedeck@gmail.com>
2026-02-03 09:26:20 +01:00
Camille BAUD
075863baea tests: drivers: build_all: flash: add s3axx04 test
Adds the test for s3axx04

Signed-off-by: Camille BAUD <mail@massdriver.space>
2026-02-03 09:24:36 +01:00
Camille BAUD
1df42a1ba2 drivers: flash: Add Netsol S3Axx04 MRAM
Adds a driver for S3Axx04 MRAM on SSPI bus

Signed-off-by: Camille BAUD <mail@massdriver.space>
2026-02-03 09:24:36 +01:00
Camille BAUD
d9c97de0ab dts: bindings: vendor-prefixes: Add netsol prefix
Adds the prefix for korean company netsol

Signed-off-by: Camille BAUD <mail@massdriver.space>
2026-02-03 09:24:36 +01:00
Thomas Stranger
54be47ef83 doc: security: reporting add and prefer github advisory
Mention the option to report vulnerabilities by opening
a draft security advisory on Github.

The Security Vulnerability Reporting page in the docs
only mentioned the email of the Vulnerability mailing list.

Signed-off-by: Thomas Stranger <thomas.stranger@outlook.com>
2026-02-03 09:23:28 +01:00
Axel Le Bourhis
96b0b9079e soc: nxp: mcxw7xx: refactor shared memory layout
- Define the entire SMU2 as a single memory region so it represents only
one entry in the MPU.
- Clean up linker.ld and sections.ld to remove obsolete/unused symbols
- Declare the "shmem_fwk" section in SMU2 used by connectivity framework
- Rearrange the rpmsg shared memory relatively to the entire SMU2 range
- Provide necessary symbols for the connectivity framework to locate its
  shared memory section within SMU2

This is preparatory work for upcoming connectivity framework
integration and mcxw70 ble enablement.

Signed-off-by: Axel Le Bourhis <axel.lebourhis@nxp.com>
2026-02-02 11:40:41 -06:00
Fin Maaß
f471eb25d0 fs: littlefs: filter automount durring build
filter automount durring build.

Also add the automaticly enabled Kconfig option
CONFIG_FS_LITTLEFS_FSTAB_AUTOMOUNT, similar
to the fat fs and ext2 fs.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2026-02-02 11:40:12 -06:00
Fin Maaß
3dca26f5a1 fs: ext2: filter automount durring build
filter automount durring build.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2026-02-02 11:40:12 -06:00
Fin Maaß
57dec808bf docs: migration-guide: mention fatfs automount change
Mention changed default of CONFIG_FS_FATFS_FSTAB_AUTOMOUNT.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2026-02-02 11:40:12 -06:00
Fin Maaß
82a77b1f3f fs: fatfs: filter automount durring build
filter automount durring build.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2026-02-02 11:40:12 -06:00
Fin Maaß
9fec4af772 fs: fatfs: enable automount by default if activated in dt
If automount is enabled in the devicetree for
a fatfs, then enable the Kconfig option by default.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2026-02-02 11:40:12 -06:00
Pieter De Gendt
13f55f0ad7 doc: releases: 4.4: Add nxp,ocotp OTP entry
Add a new driver entry for the OTP from NXP, OCOTP.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2026-02-02 11:39:49 -06:00
Benjamin Cabé
44d1f53569 tests: gnss: rtk: add tests for skipped frames
Add coverage for payload_len == 0 and incomplete frame size checks.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2026-02-02 11:39:33 -06:00
Appana Durga Kedareswara rao
1864da8109 boards: amd: versal2_rpu: add TCM memory node
Add Tightly Coupled Memory (TCM) device tree node:
- Base address: 0x0
- Size: 64KB (0x10000)
- Compatible: mmio-sram

TCM provides low-latency memory access for R52 cores
and is essential for real-time applications.

Signed-off-by: Appana Durga Kedareswara rao <appana.durga.kedareswara.rao@amd.com>
2026-02-02 11:39:13 -06:00
Appana Durga Kedareswara rao
39fdb32183 soc: xlnx: versal2: fix NUM_IRQS to cover all hardware interrupts
The previous NUM_IRQS value of 256 was incorrect for the Versal2
RPU platform. Increase to 288 to ensure all hardware interrupt
lines are properly supported by the GIC driver.

Signed-off-by: Appana Durga Kedareswara rao <appana.durga.kedareswara.rao@amd.com>
2026-02-02 11:39:13 -06:00
Pete Johanson
53d78468c8 drivers: watchdog: Add MAX42500 driver
Add MAX42500 watchdog driver, including ability to configure voltage
monitors that can also generate reset conditions.

Signed-off-by: Pete Johanson <pete.johanson@analog.com>
2026-02-02 11:38:49 -06:00
Aleksandr Khromykh
95502e1778 doc: bluetooth: mesh: add cdb documentation
Commit adds cdb usage guide.

Signed-off-by: Aleksandr Khromykh <aleksandr.khromykh@nordicsemi.no>
2026-02-02 11:38:35 -06:00
Pieter De Gendt
f728794ac0 scripts: dts: gen_dts_cmake.py: Fix keys in dict linter issue
Simplify loop as reported by ruff.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2026-02-02 11:37:53 -06:00
Pieter De Gendt
85a6e11bdb scripts: dts: gen_dts_cmake.py: Prevent trailing semicolon for lists
The generated lists have a trailing semicolon, which for CMake would
indicate a trailing empty item.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2026-02-02 11:37:53 -06:00
Pieter De Gendt
4159632248 scripts: dts: gen_dts_cmake.py: Format file
Format the gen_dts_cmake_py file using ruff.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2026-02-02 11:37:53 -06:00
Guðni Már Gilbert
b4108b53f6 scripts: tests: speed up test_output_levels
Assign a platform to the test so Twister doesn't
pick up multiple platforms.

This reduces the test time by ~2 minutes.

Before: 9 passed in 265.88s (0:04:25)
After: 9 passed in 140.24s (0:02:20)

Signed-off-by: Guðni Már Gilbert <gudni.m.g@gmail.com>
2026-02-02 14:46:53 +01:00
Guðni Már Gilbert
fc8e096ee1 scripts: twister: minor speedup in apply_filters
Move a check to run earlier in a for-loop to minimize doing unnecessary
work like creating TestInstance class instances.

This is a very minor optimization when the number of testsuites are low.
But starts to count when there are a lot of testsuites.

Signed-off-by: Guðni Már Gilbert <gudni.m.g@gmail.com>
2026-02-02 14:46:34 +01:00
Andrew Featherstone
a1123c4160 MAINTAINERS: Remove yonsch as collaborator for RPi Pico
yonsch is no longer active in maintaining the Raspberry Pi Pico
board support either in terms of contributing code or reviewing PRs.

Signed-off-by: Andrew Featherstone <andrew.featherstone@gmail.com>
2026-02-02 14:46:21 +01:00
Seppo Takalo
fe67777319 drivers: modem: Improve re-dialing when using nRF91 Serial Modem
The nRF91 Serial Modem application restarts the PPP automatically,
which breaks our re-dialing attempts if network already recovered.

Instead, request to CFUN=4 and PPP to stop, so that rest of dial
script can assume correct ordering of events.

The sequence of
AT#XPPP=1
AT+CFUN=1
AT#XCMUX=2
is very timing sensitive, as the last command switches CMUX channels,
but cannot anymore do it if PPP already started on DLC channel 2.
This is a bad design of AT#XPPP command which we workaround.

Signed-off-by: Seppo Takalo <seppo.takalo@nordicsemi.no>
2026-02-02 14:45:51 +01:00
Seppo Takalo
43d36c41c6 drivers: modem: Re-open idling CMUX in DORMANT state as well
If we stay in DORMANT state long enough, the CMUX channel might enter
power saving mode which will then block URC messages unless we deal
with RING event.

Also, change RING log level to DBG. It is too verbose otherwise.

Signed-off-by: Seppo Takalo <seppo.takalo@nordicsemi.no>
2026-02-02 14:45:32 +01:00
Seppo Takalo
59374170b3 drivers: modem: Handle PPP disconnect event while connected
If we receive PPP_DEAD event before receiving the DEREGISTERED, we
could directly try to recover connection without waiting in the
dormant state.

If we would stay in the DORMANT state, the PPP_DEAD event is not
going to happen againt, and it would deadblock.

Depends on the modem, which is received first.
There is no guarantee of ordering.

Signed-off-by: Seppo Takalo <seppo.takalo@nordicsemi.no>
2026-02-02 14:45:32 +01:00
Seppo Takalo
11407fe908 drivers: modem: Add parser for +CGEV events
When packet domain events are requested with AT+CGEREP=1 we receive
these +CGEV events that indicate the state of data connection.
This might not always be the same as being "registered".

The information could also be used if we want to use the default CID
in the future.

Signed-off-by: Seppo Takalo <seppo.takalo@nordicsemi.no>
2026-02-02 14:45:15 +01:00
Cristian Bulacu
08a5b84b58 openthread: Kconfig: Remove experimental tag for Zephyr Border Router
Remove experimental symbol for Zephyr Border Router application.

Zephyr OpenThread Border Router sample contains all the mandatory features
required by such an application.
Starting with Zephyr 4.3 release, this sample has been tested in a
Thread Harness setup; the features implemented at that time have been
validated, issues have been identified and fixed.

Signed-off-by: Cristian Bulacu <cristian.bulacu@nxp.com>
2026-02-02 14:44:49 +01:00
Chaitanya Tata
7c1cd4c569 drivers: wifi: nrf_wifi: configure GPIO pins early during driver init
Configure all nRF70 GPIO pins (BUCKEN, VDDIO_CTRL, SR RF switch) to
OUTPUT_INACTIVE state during driver initialization to prevent floating
pins from accidentally powering the module or affecting RF switch
before the interface is brought up.

This addresses an issue where GPIO configuration was delayed until
the interface was brought up for the first time, leaving voltage control
pins floating which could result in unintended power supply.

Fixes #100993.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2026-02-02 14:44:30 +01:00
Jon Ringle
c6c014929e scripts: footprint: size_report: Fix TLS symbol attribution
TLS sections (e.g. .tdata/.tbss) use addresses as TLS offsets and can
overlap normal VMA ranges. Avoid using TLS section address ranges for RAM
bucketing and classify TLS symbols using section flags instead.

Signed-off-by: Jon Ringle <jringle@gridpoint.com>
2026-02-02 14:44:13 +01:00
Appana Durga Kedareswara rao
7fe2180744 boards: amd: versalnet_rpu: fix timer init sequence in xsdb.cfg
Configure the timestamp generator frequency before enabling
the timer to ensure proper initialization order.

Signed-off-by: Appana Durga Kedareswara rao <appana.durga.kedareswara.rao@amd.com>
2026-02-02 14:43:54 +01:00