Commit graph

126,787 commits

Author SHA1 Message Date
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
Gaetan Perrot
e13f64ac47 drivers: sensor: bmm350: fix redundant return logic in init_chip
Add an explicit log message if setting suspend mode fails during error
handling in bmm350_init_chip(), to improve debuggability.

This addresses Coverity issue CID 520279 (Incorrect expression - CWE-398),
which flagged a conditional block where both branches effectively led to
the same outcome (return -EIO), making it appear redundant.

By adding a log before returning, we clarify the purpose of the condition
and avoid the issue of "identical code for different branches", while
keeping the functional behavior unchanged.

Coverity-CID: 520279

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2025-06-27 09:04:32 -10:00
Guennadi Liakhovetski
935da29ab8 soc: intel_adsp: (cosmetic) make a function static
z_intel_adsp_ipc_isr() doesn't need to be global, make it static.

Signed-off-by: Guennadi Liakhovetski <guennadi.liakhovetski@linux.intel.com>
2025-06-27 09:04:12 -10:00
Vinayak Kariappa Chettimada
6e8f081385 Bluetooth: Controller: Fix peripheral assert under single timer use
Fix peripheral EVENT_OVERHEAD_START_US assertion due to
missing packet timer timestamp accumulation under single
timer use in nRF54Lx SoCs.

Relates to commit 373dc0db71 ("Bluetooth: Controller:
Single timer use Extended Advertising nRF54L support").

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2025-06-27 09:03:05 -10:00
Victor Brzeski
e8638befaf usb: device_next: uac2: support higher bInterval values
This commit adds a device-tree prop for the audio streaming
terminals to specify the bInterval values for the Isochronous
endpoints.

Signed-off-by: Victor Brzeski <vbrzeski@gmail.com>
2025-06-27 09:02:29 -10:00
Victor Brzeski
d9c7b19ae0 include: usb_ch9: fix USB_FS_ISO_EP_INTERVAL calculation
Per section 5.6.4 of the USB 2.0 standard, Isochronous Endpoints
are derived by the (2^(bInterval-1) * F) formula. The current
implementation uses the formula intended for Interrupt Endpoints.

Signed-off-by: Victor Brzeski <vbrzeski@gmail.com>
2025-06-27 09:02:29 -10:00
Erwan Gouriou
48dc588636 clock_controller: stm32n6: Remove AXISRAM3/4/5/6 clocks handling
Now that they are handled through their dedicated driver, remove
clock activation for AXISRAM3/4/5/6 (which was useless anyway as
RAMCFG part was missing).

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2025-06-27 09:01:52 -10:00
Erwan Gouriou
b73cf0a181 dts: stm32n6: Add axisram3/4/5/6 nodes
AXISRAM3/4/5/6 nodes are added as children of their respective controller.
They're declared as "zephyr,memory-region" and disabled by default.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2025-06-27 09:01:52 -10:00
Erwan Gouriou
a5fad911bd include: dt-bindings: stm32n6_clock: Add MEM bus
Add MEM bus clock which is used to enable AXISRAM3/4/5/6 clocks.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2025-06-27 09:01:52 -10:00
Erwan Gouriou
84619fe8f7 drivers: misc: stm32n6: ramcfg driver
Add a driver to handle AXISRAM3/4/5/6 configurations.
Provide the required changes to add RAM sections into the build system.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2025-06-27 09:01:52 -10:00
sudarsan N
c9be1972b2 gpio: pca_series: fix shift overflow and use 3ULL instead of 0b11
Replaces binary literal with 3ULL to avoid shift overflow and align
with Zephyr coding style.

Fixes: #81963
Fixes: CID 434591

Signed-off-by: sudarsan N <sudarsansamy2002@gmail.com>
2025-06-27 09:00:35 -10:00
William Tambe
abeccfec28 xtensa: support for more than 32 interrupts
This change add support for using more than 32 interrupts.

Signed-off-by: William Tambe <williamt@cadence.com>
2025-06-27 08:59:56 -10:00
Krzysztof Sychla
dcdc7d315e tracing: Allow disabling idle traces
This change allows for enabling/disabling the idle traces by setting the
CONFIG_TRACING_IDLE config.

Signed-off-by: Krzysztof Sychla <ksychla@antmicro.com>
2025-06-27 08:59:32 -10:00
jens rudberg
f503313fdf drivers: mcxc osc: use oscillator internal capacitance value from DT
Use default value 0 if board DT doesn't define it.e
It's totally fine if the board device tree doen't define
load_capacitance_picofarads for the crystal oscillator. In that case,
just fallback to 0.

Signed-off-by: jens rudberg <jens@teenage.engineering>
2025-06-27 08:55:33 -10:00
Miguel Gazquez
e42cfcf032 drivers: sensor: lsm9ds1: propagate errors in sample_fetch
`lsm9ds1_sample_fetch` did not propagate error codes.
Propagate them.

Signed-off-by: Miguel Gazquez <miguel.gazquez@bootlin.com>
2025-06-27 08:54:42 -10:00
Peter Wang
f8b14155f0 boards: frdm_mcxa166, frdm_mcxa276: add ostimer support
1. add the ostimer
2. by default, the systick is used.
3. The ostimer could be tested with below configure in xxx.overlay:
&systick {
    status = "disabled";
};

&ostimer0 {
    status = "okay";
};
And below configure in xxx.conf:
CONFIG_SYS_CLOCK_HW_CYCLES_PER_SEC=1000000

Signed-off-by: Peter Wang <chaoyi.wang@nxp.com>
2025-06-27 08:54:06 -10:00
Johann Fischer
a1681112bd tests: usb: device_next: rework test configuration
Do not use qemu_cortex_m3 for the "build all" case, as it overflows and
provides no benefit over native_sim. Add native_sim/native/64 platform
to the tests.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-06-27 08:52:22 -10:00
Johann Fischer
cc92d1c119 tests: usb: device_next: add test for string descriptors
Add test for the string descriptors.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-06-27 08:52:22 -10:00
Johann Fischer
0598392a7d tests: usb: device_next: add test for incomplete control transfers
Add a test for incomplete control transfers with missing data and status
stages.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-06-27 08:52:22 -10:00
Johann Fischer
ebdbfa9541 usb: host: Ignore asserts in control request handling when testing
Ignore assers in the control request handling when Kconfig option ZTEST
is enabled.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-06-27 08:52:22 -10:00
Johann Fischer
5ba44ffd3e usb: host: allow status stage to be omitted
For testing purposes, allow the status stage to be omitted.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-06-27 08:52:22 -10:00