Commit graph

118,807 commits

Author SHA1 Message Date
Imran Sajjad
63ebb75083 soc: imxrt: mimxrt1011 i2s clock fix
Fix for compiling i2s drivers on the NXP mimxrt1010_evk board.
For mimxrt1011, the defines kCLOCK_Sai2... are not defined as the sai2
peripheral does not exist. Trying to compile gives error. Fixed by adding
check for device tree node around code that uses the defines. Also added
same for sai1 and sai3. Thanks @lucien-nxp, @ZhaoxiangJin from NXP.

Signed-off-by: Imran Sajjad <imran.sajjad@iconfitness.com>
2025-06-30 15:19:24 -05:00
Matthew Wood
f70adf744d board: ubx_evk_iris_w1: update flash size
Correct flash memory size and storage partition size in
`ubx_evk_iris_w1_common.dtsi`.

Signed-off-by: Matthew Wood <matt.wood@corintech.com>
2025-06-30 15:19:14 -05:00
Robin Kastberg
1601a7d696 iar: linker_script: zero-init BSS
CONFIG_IAR_DATA_INIT did inadvertently not initialize BSS.

Signed-off-by: Robin Kastberg <robin.kastberg@iar.com>
2025-06-30 15:18:30 -05:00
Robert Lubos
ae7d7a800e net: events: Add missing net_mgmt.h include
net_event.h header makes use of macros defined in net_mgmt.h, therefore
it should include that header.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2025-06-30 15:18:01 -05:00
Fin Maaß
514258aa23 riscv: select ATOMIC_OPERATIONS based on RISCV_ISA_EXT_A
use RISCV_ISA_EXT_A to select ATOMIC_OPERATIONS_BUILTIN or
ATOMIC_OPERATIONS_C.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-06-30 15:17:47 -05:00
Juha Ylinen
ed79675199 net: http_client: Fix handling of POLLHUP
POLLHUP event may be returned even if there is still data to read
and POLLIN is set. To ensure all data is consumed, check for
POLLHUP after handling POLLIN.

https://man7.org/linux/man-pages/man2/poll.2.html

Signed-off-by: Juha Ylinen <juha.ylinen@nordicsemi.no>
2025-06-30 15:17:11 -05:00
Shan Pen
bd2f4ef946 drivers: modem_cellular: fix eg25g dial cmd response
eg25g modem should respond "CONNECT <text> " when run dial cmd "ATD"

Signed-off-by: Shan Pen <bricle031@gmail.com>
2025-06-30 15:16:48 -05:00
Yishai Jaffe
3b45feeb8b samples: fade_led: add direction per LED
Fixed a bug where that was caused because the different LEDs use the
same 'dir' variable and that caused them to eventually lose
synchronization.

Signed-off-by: Yishai Jaffe <yishai1999@gmail.com>
2025-06-30 15:16:37 -05:00
Ta Minh Nhat
8d88d02a43 dts: arm: renesas: correct i3c device node address
Fix Devicetree build warning due to mismatched address values
of I3C device node

Signed-off-by: Ta Minh Nhat <nhat-minh.ta.yn@bp.renesas.com>
2025-06-30 15:16:17 -05:00
Shrek Wang
6527a1b23c net: tcp: Set the right th_win value in tester_prepare_tcp_pkt
The 16bit th_win in the TCP header was not set via htons(). It
will bring issues of wrong th_win value in the peer end. For
example, the 1280 (0x0500) TCP window size would be taken as
5 (0x0005) by the peer end.

Signed-off-by: Shrek Wang <inet_eman@outlook.com>
2025-06-30 15:16:02 -05:00
Daniel DeGrasse
ad4c3e3e9a release: Zephyr 4.2.0-rc1 v4.2.0-rc1
Set version to v4.2.0-rc1.

Signed-off-by: Dan Kalowsky <dkalowsky@amperecomputing.com>
Signed-off-by: Daniel DeGrasse <ddegrasse@tenstorrent.com>
2025-06-27 20:28:18 -05:00
Flavio Ceolin
8caef68264 samples: tfm_psa_test: Set TFM_PROFILE
TEST_PSA_API requires TFM_PROFILE to be set to "profile_large".

Signed-off-by: Flavio Ceolin <flavio@hubblenetwork.com>
2025-06-27 18:52:39 -05:00
Flavio Ceolin
1ff7d1c638 tfm-tests: Bump tests to tfm-2.2.0
Update tests to use tfm-2.2.0.

Signed-off-by: Flavio Ceolin <flavio@hubblenetwork.com>
2025-06-27 18:52:39 -05:00
Flavio Ceolin
f67be667c1 tfm: Bump tfm to 2.2.0
Bump TF-M to 2.2.0 (latest release at the moment)

Signed-off-by: Flavio Ceolin <flavio.ceolin@gmail.com>
2025-06-27 18:52:39 -05:00
Daniel DeGrasse
0b0af06da5 scripts: pylib: fix twister report handling for junitparser >= 4.0.2
With junitparser 4.0.2, the JunitXml.fromfile() now returns a JUnitXml
instance. In order to access the junit.TestSuite instance, we must use
TestSuite.fromelem() to convert it back.

Signed-off-by: Daniel DeGrasse <ddegrasse@tenstorrent.com>
2025-06-27 18:28:50 -05:00
Daniel DeGrasse
c8c1bf4131 drivers: modem: modem_cellular: fix variable declaration for clang
Fix variable declaration so that this driver will compile with clang,
which does not support variable declarations within switch statements

Signed-off-by: Daniel DeGrasse <ddegrasse@tenstorrent.com>
2025-06-27 18:28:22 -05:00
Carles Cufi
4ea89d0ada cmake: clang: Enable -Waddress-of-packed-member
Several years ago we started enabling the -Waddress-of-packed-member
warning in commit cf111962e0 for GCC.

Do the same for Clang, since there is no reason not to and the warning
is very useful, especially in protocol stacks.

Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
2025-06-27 18:28:09 -05:00
Hui Bai
12babf9e39 net: l2: wifi: Fix roaming fail issue
The NET_EVENT_WIFI_SIGNAL_CHANGE was not added to net mgmt event queue
so that no scan was triggered, which caused roaming fail. The event
NET_EVENT_WIFI_SIGNAL_CHANGE was dropped because it was not enabled in
WIFI_SHELL_MGMT_EVENTS. After adding NET_EVENT_WIFI_SIGNAL_CHANGE, the
roaming works as expected.
Same issue found on event NET_EVENT_WIFI_NEIGHBOR_REP_COMP for 11k
roaming. Add this event to WIFI_SHELL_MGMT_EVENTS, too.

Signed-off-by: Hui Bai <hui.bai@nxp.com>
2025-06-27 18:27:45 -05:00
Declan Snyder
dba69f3f14 dts: nxp: Fix RT11xx DT files hierarchy
The DT hierachy of the RT11xx series was somewhat incoherent. The boards
targets were directly including the series level DTSI with no SOC dtsi
in between, and there existed an SOC DTSI that had to be separately
included by a different board file, which didn't include the series DTSI
itself. It seems that this was only working if you included the files
exactly in the correct order in specific board files. Also, as a result
of this change, need to (correctly) define the cpu core only in the DTSI
for that core, instead of in the series generic dtsi, because that DTSI
was actually written with incorrect syntax due to duplicated node labels
on nodes right next to each other in the same file, and was relying on
other DTSI files to delete the duplicate nodes in order for it to build.
So overall this was a mess, needed cleanup.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-06-27 18:27:26 -05:00
Declan Snyder
1f315f1759 soc: nxp: imxrt: Clean up INIT_SYS_PLL
Don't force select INIT_SYS_PLL at SOC level. Instead use default y so
that board can unset it. Keep previous case where we would default y
which was only on RT1040. Also, this config is not used in RT1170 soc,
so move it to RT10xx series kconfig instead of family level. And it
appears to be on all the RT10xx, so ifdef is not needed.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-06-27 18:27:26 -05:00
Declan Snyder
ef2271ecab soc: imxrt: Clean up INIT_VIDEO_PLL config
Don't force select the INIT_VIDEO_PLL config so that board level can
unset it. Also clean up the code a bit in soc.c files.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-06-27 18:27:26 -05:00
Declan Snyder
79713a539f soc: imxrt11xx: Clean up LDO configs
The LDO config should not be forcefully selected at SOC level. Instead,
use soft default y so that board definition can unset it if desired.

Also, in the soc.c, the LDO code should be on both the rt1160 and
rt1170, so the definitions should exist, and ifdef is not needed. So can
switch to IS_ENABLED to decrease configuration complexity of the source
code.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-06-27 18:27:26 -05:00
Declan Snyder
305a7e6c8d soc: nxp: imxrt: Remove ifdef around DCDC
The DCDC should be on all the platforms and the functions and structs
should therefore be defined on all the platforms. So the ifdef is not
needed, we can remove it to increase code compilation coverage unity
across configurations slightly. Compiler should optimize out the block
when IS_ENABLED is false statically.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-06-27 18:27:26 -05:00
Declan Snyder
16e74b9249 soc: imxrt: Clean up INIT_ARM_PLL config
Don't forcefully select this config in SOC level. Make it softer default
y so board can unselect it.

The config should not be possible if there is no arm pll, namely on
RT101x and RT102x. So add dependency clause about this.

And of course, code for this was a mess, clean up a bit.

Also remove the ifdeffry for selecting a default value for the two SOCs,
because they already put the same default value in the SOC Devicetree
DTSI, so that code had no purpose as long as a board didn't completely
redefine the SOC DT.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-06-27 18:27:26 -05:00
Declan Snyder
d33f7feb64 soc: imxrt: Clean up INIT_ENET_PLL config
Initial motivation for this commit was to not force select
the INIT_ENET_PLL config from SOC level to allow for board level
configuration which might want it to be off.

While doing that, I discovered that RT11xx actually does not have
anything called by "ENET PLL" in the reference manual. So I have
removed the config for RT11xx. The default clock source for this soc.c
code for RT11xx is PLL1 DIV2, which I changed to just be configured if
ethernet is enabled, which was the reason to configure this pll as it
stands now, even though it is not specific to ethernet (although the
DIV2 output is mostly for ethernet). Another config is therefore not
needed.

For RT10xx, the situation is a lot more complicated. There is a lot of
discrepancy again between what is considered the "ENET PLL" both
conceptually and literally between the RM, SDK, and Zephyr config. And
also the code to define the config struct was a complete mess. So I have
simplified the code and changed it so that the config is only a soft
default to y instead of selected forcefully. Also, for the case of the
RT1010 and RT1020 series, the SDK is appearing to configure PLL6 (again
there is no clear ENET PLL meaning on these platforms) 500M output
through this "enet pll" configuration function. So similarly instead of
always enabling this output for those platforms, I added a new config
which can be set or unset by board level.

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2025-06-27 18:27:26 -05:00
Sylvio Alves
f775f9a96e samples: bluetooth: add esp32c6 testcase
Allows CI to build and test bluetooth driver of ESP32-C6 SoC.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2025-06-27 18:27:15 -05:00
Sylvio Alves
1df3403393 soc: esp32c6: add BLE support
Add BLE support to ESP32-C6 series.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2025-06-27 18:27:15 -05:00
Sylvio Alves
60cd83e6f2 clock: esp32c6: enable and calibrate digital regulators
Enable the RTC-domain and main digital regulators early in clock init,
then load and program the factory/runtime calibrated bias values for
high-power and low-power regulators into the PMU. This ensures the
correct voltage/current settings for stable, low-noise clock operation
in active, modem and sleep modes.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2025-06-27 18:27:15 -05:00
Karol Lasończyk
061036f9e3 tests: samples: Extend support for nRF54LM20A
Extends support and adds new overlays.

Signed-off-by: Karol Lasończyk <karol.lasonczyk@nordicsemi.no>
Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2025-06-27 18:26:57 -05:00
Karol Lasończyk
3d1fa8b333 board: nrf: Add nRF54LM20DK board
Adding board for nRF54LM20A device.

Signed-off-by: Karol Lasończyk <karol.lasonczyk@nordicsemi.no>
2025-06-27 18:26:57 -05:00
Karol Lasończyk
387520c867 soc: nrf: Add nRF54LM20A device
Adding nRF54LM20A device.

Signed-off-by: Karol Lasończyk <karol.lasonczyk@nordicsemi.no>
2025-06-27 18:26:57 -05:00
Yuval Peress
d8d6637a1f i2c_shell: Only include target commands if I2C_TARGET
The extra shell commands are useless unless you also enable
I2C_TARGET. Conditionally include them based on the I2C_TARGET
kconfig.

Signed-off-by: Yuval Peress <peress@google.com>
2025-06-27 18:26:33 -05:00
Fabio Baltieri
52063988b1 doc: releases: mention the i2c connector label unification
Add a mention to the i2c label rename for i2c modules.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2025-06-27 18:25:28 -05:00
David Schneider
f3f851306d boards: waveshare: rp2040_plus: Initial support
Add support for Waveshare RP2040 Plus board a Raspberry Pi Pico like
board including a battery charger.

Signed-off-by: David Schneider <schneidav81@gmail.com>
2025-06-27 18:24:55 -05:00
Stanley Huang
05300939c9 boards: raytac: Add support for raytac_an7002q_db
Add support for Raytac's new AN7002Q-DB.

Signed-off-by: Stanley Huang <stanley@raytac.com>
2025-06-27 18:24:23 -05:00
Andrew Perepech
56f52122fa boards: mediatek: mt8195: Fixed intc1 controller addrersses
Fixed incorrect addresses for intc1 reg and status-reg.

Signed-off-by: Andrew Perepech <andrew.perepech@mediatek.com>
2025-06-27 18:22:19 -05:00
Mahesh Mahadevan
7f269bfe9b dts: rw: No need to specify the exit latency
All this can be rolled into the single latency number.
Exit latency also triggers an additional timeout which
is not required for this SoC.

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2025-06-27 18:21:25 -05:00
Mahesh Mahadevan
14b1ba15ac drivers: timer: Fix the logic to compensate the clock when turned off
The original logic relied on the tick passed in. This method
is inaccurate as the tick value passed in was the exit latency.
Update the code to calculate the remaining time left and set
a counter using this value.

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2025-06-27 18:21:25 -05:00
Luis Casas
d0f9ccc010 NXP drivers: spi_mcux_flexcomm: Adds PM low-power recovery support
Enables Sleep mode (PM3) in RW61x for SPI.

Signed-off-by: Luis Casas <luis.casas@nxp.com>
2025-06-27 18:20:52 -05:00
Doug Young
39cb574438 Bluetooth: host: adv: update log levels in bt_le_adv_resume()
Changed logs in adv.c that would result in advertising from resuming
to err logs to aid in debugging.

Signed-off-by: Doug Young <dougyoung@meta.com>
2025-06-27 18:19:54 -05:00
Benjamin Cabé
222a601b21 net: lib: ptp: fix memory slab alignment issues
Commit 3c47f91be4 introduced alignment
validation in K_MEM_SLAB_DEFINE macros.
A couple PTP message slabs wer using alignment 8, while the size of
the elements wasn't a multiple of 8, causing a static assertion
failure.

Fix by changing the alignment from 8 to 4 bytes.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-27 17:00:37 -05:00
Benjamin Cabé
f1f9cf5c55 doc: contribute: fix spelling of advisable in guidelines rst
fix minor typo

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
Co-authored-by: Serge Croisé <SergeCroise@users.noreply.github.com>
2025-06-27 21:19:40 +02:00
Matthias Plöger
4a0539af36 libc: minimal: Add "prohibit_lto" flag to avoid problems with LTO
The compiler requires that much of the C library be built without using LTO
so that various symbols are available for use by generated code, including
things like memset and memcpy.

Add the "prohibit_lto" CMake target compiler property to avoid LTO when
activated.

Signed-off-by: Matthias Plöger <matthias.ploeger@phoenixcontact.com>
2025-06-27 21:17:43 +02:00
Tu Nguyen Van
c68d0b9630 doc: correct python minimum required
Fixes #92059

Update getting started guide, migration-guide and
python.cmake to use Python 3.12.1 as minimum supported
version

Signed-off-by: Tu Nguyen Van <tu.nguyenvan@nxp.com>
2025-06-27 09:15:42 -10:00
Alberto Escolar Piedras
e1c37f6292 manifest: Update nRF hw models to latest
Update the HW models module to:
6e5961223f81aa2707c555db138819a5c1b7942c

Including the following:
6e59612 CLOCK (52,53): Fix test interface with multiple instances
ecf2292 54 CRACEN: Improve model
1277b16 irq controller: Remove out of date comment

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-06-27 09:09:20 -10:00
Eason Huang
f1b59c2cd2 drivers: i2c_dw: fix request_bytes overflow when receiving > 256 bytes
The original definition of request_bytes as uint8_t caused incorrect
behavior when attempting to receive more than 256 bytes, as the variable
would overflow. This patch changes its type to uint32_t to allow
correct tracking of large I2C transfers.

Signed-off-by: Eason Huang <eason.huang@tronfuture.com>
2025-06-27 09:08:18 -10:00
Raymond Lei
dd90248a3a test: spi_loopback: nxp: Add Flexio spi test support
Add overlay file for RT1170 EVK and simply existing flexio spi overlay
file for RT1060 EVKC and RT1064 EVK. One flexio-spi interface for both slow
and fast tests. Fast baud rate set to 16Mbps now.

Signed-off-by: Raymond Lei <raymond.lei@nxp.com>
2025-06-27 09:05:47 -10:00
Raymond Lei
581e7ff2aa drivers: spi: nxp: flexiospi spi_loopback test failed on flexio spi
Several reason cause loopback test failed:
a) FlexIO input frequency is not correct, on RT11xx, input freq is 24M,
while max baud rate can reach 1/4 of input freq, so it can only support
6Mbps.
b) Flexio shift register depend on correct timer output to triggger TX
and RX, if timer comparison value is not accurate, RX error happens on
high baud rate. This is the reason why test fails on RT1060.

also fix a error on FlexIO clock ID calculation.

Signed-off-by: Raymond Lei <raymond.lei@nxp.com>
2025-06-27 09:05:47 -10:00
Jukka Rissanen
24843ae223 tests: net: ppp: Compile test with PPP statistics
Make sure the compilation is ok if PPP statistics is enabled.

This is related to commit 3e704256e3
("net: ppp: stats: Fix net_mgmt request handler format") which
was needed because earlier commit 5a9a39caf3
("net: mgmt: Convert the mgmt API to use 64-bit masks")
missed an compile problem because there was no compile test that
enabled CONFIG_NET_STATISTICS_PPP option.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-06-27 09:05:22 -10:00
Gaetan Perrot
6d0f1aaef8 drivers: sensors: apds9253: remove unnecessary check
gain is an unsigned int so it can't be negative.

Fixes CID 516230

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2025-06-27 09:04:58 -10:00