Commit graph

136,983 commits

Author SHA1 Message Date
Gaetan Perrot
537b8a635b boards: arduino: fix intereface typo in openocd cfg file
Fix a spelling mistake in the board openocd cfg file for arduino
boards.

No functional change.

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2026-01-20 13:15:48 +00:00
Joel Guittet
00dfe39149 dts: fix nxp mcxn94x opamp1 reg value
It seems there is currently no impact except a warning displayed when
building: "unit address and first address in 'reg' (0x40113000) don't
match for /soc/peripheral@50000000/opamp@113000"

Signed-off-by: Joel Guittet <joelguittet@gmail.com>
2026-01-19 18:49:17 -06:00
Benjamin Cabé
93bf06a235 drivers: firmware: scmi: inclusive language fixes
As per coding guidelines, "sanity check" must be avoided.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2026-01-19 18:48:51 -06:00
Gaetan Perrot
44e0c38c63 net: coap: coap_client: make coap_client_schedule_poll void
coap_client_schedule_poll() never reports errors and always returns
0.
The error check at the call site is therefore dead code.

Make the function void and drop the unused error handling.

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2026-01-19 18:48:26 -06:00
Charles Hardin
fb9c9f034b drivers: ethernet: lan9250: Add promiscuous mode support
Handle both multicast packets and promiscuous mode in the driver. This
will allow the lan9250 to be added to a bridge as well as process
multicast packets being received.

Signed-off-by: Charles Hardin <ckhardin@gmail.com>
2026-01-19 18:47:57 -06:00
Pieter De Gendt
eee57d48cb drivers: pwm: mcux: Print status value on error
When PWM_SetupPwm returns an error, add the value of status to the error
log message.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2026-01-19 18:47:25 -06:00
Pieter De Gendt
42f96fc78d manifest: Update hal_nxp with PWM assert to error patch
Update the NXP HAL with a change where PWM_Setup can return an error value
instead of asserting.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2026-01-19 18:47:25 -06:00
Tim Knodel
e734c05d78 drivers: i2c: mcux_flexcomm: Add ip block reset to bus recovery
The bus recovery implementation did not reset the I2C block. If
a glitch on the bus looks like a start condition, the I2C block
will be stuck forever waiting for the associated stop. This adds
reset to the I2C block to address this type of error.

Signed-off-by: Tim Knodel <tbk@google.com>
2026-01-19 18:46:41 -06:00
Fabrice DJIATSA
11f7d3be2f tests: drivers: rtc: rtc_api: remove alarm support from wb09ke
Alarms are not supported due to RTC interrupt not triggered
in Run mode erratum.

Delete the overlay since RTC node already defined in the
board dts.

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2026-01-19 16:22:56 -06:00
Alain Volmat
4711521016 boards: st: avoid enabling CONFIG_INPUT in board/shield defconfig
Usage or not of the input subsystem is an application decision hence
boards or shields defconfig should not force it, even if there might
be a touchpanel available on the board.
This commit remove enabling of CONFIG_INPUT in ST shields / boards.
This shouldn't have impact on in-tree application since LVGL samples
already enable CONFIG_INPUT.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2026-01-19 16:22:31 -06:00
Alain Volmat
2619ef5e5f samples: display: lvgl: make CONFIG_INPUT common in prj.conf
Always enable the CONFIG_INPUT in the project since it is trying
to use inputs, and let inside the application figure out if there
is really an input device available or not to either simply
draw a label or a button with a label.
This also allow avoid need to have board specific conf file just
to enable CONFIG_INPUT as well has allow to use shields which
embed touchpanels.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2026-01-19 16:22:31 -06:00
Alain Volmat
143fa22b4d samples: lvgl: demos: remove CONFIG_INPUT from st25dv_mb1283_disco.conf
CONFIG_INPUT=y is already part of the demos sample prj.conf file so
it is not necessary to have it enabled in the st25dv_mb1283_disco
board specific conf file.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2026-01-19 16:22:31 -06:00
Tomas Galbicka
c057340a86 soc: RT600 DSP Hifi4 enable cache handling
This commit adds cache handling for Hifi4 core on RT600.
Enable CACHE_MANAGEMENT and HAS_DCACHE.

This is required for proper data coherency when the DSP shares memory
with other cores (e.g., Cortex-M33) or DMA peripherals.

With this change, applications can now use sys_cache_data_flush_range()
and sys_cache_data_invd_range() to ensure cache coherency in shared
memory scenarios.

Signed-off-by: Tomas Galbicka <tomas.galbicka@nxp.com>
2026-01-19 16:21:37 -06:00
Martin Moya
dd2dedf343 sensor: bosch: bma4xx: add attr_get to device API
This feature allows the user to get the chip's id
from the sensor's API easily

Signed-off-by: Martin Moya <moyamartin1@gmail.com>
2026-01-19 16:21:11 -06:00
Eve Redero
60c1970c4d doc: build: use dt_freq_m in example
Example dts should use dt_freq_m instead of lots of zeros.

Signed-off-by: Eve Redero <eve.redero@gmail.com>
2026-01-19 16:20:56 -06:00
Guillaume Gautier
c62748a9e0 doc: releases: migration guide: add a note for stm32f2/f4/f7 pll rework
Add a note for the STM32F2/F4/F7 PLL clock rework in the migration guide.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2026-01-19 16:20:44 -06:00
Guillaume Gautier
3e7fa6c5e9 drivers: clock: stm32_f2_f4_f7: remove __unused from exported functions
Remove the __unused keyword from exported functions.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2026-01-19 16:20:44 -06:00
Guillaume Gautier
911d6905d0 dts: arm: st: add clk48 clock mux for f446, f469, f479 and f7
For STM32F446, F469, F479 and F7x, add the clk48 node in the dtsi.
This allows configuring the clock source of the CLK48 clock.
It is necessary to add it for the SDIO peripheral that can have either
SYSCLK or CLK48 as clock source.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2026-01-19 16:20:44 -06:00
Guillaume Gautier
a26ad94d82 drivers: clock: stm32f2_f4_f7: extend get_ck48_frequency function
On STM32F446, F469, F479 and on STM32F7x, the CK48M mux can have either
PLL Q or PLLSAI P as input. Adds the support for the PLLSAI P input in
the driver.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2026-01-19 16:20:44 -06:00
Guillaume Gautier
4536b15bca drivers: clock: stm32f2_f4_f7: move get_ck48_frequency function
Move get_ck48_frequency function outside of the #if STM32_PLL_ENABLED
because it should be usable even if the main PLL is not used. The mux
can indeed be used with PLLI2S.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2026-01-19 16:20:44 -06:00
Guillaume Gautier
e5dbb600bc include: dt-bindings: clock: stm32f4: rename clock sel macro
Rename CLK48M_SEL to CK48M_SEL for consistency with stm32f410_clock.h.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2026-01-19 16:20:44 -06:00
Guillaume Gautier
4bf38ff694 boards: stm32f4: add missing pll properties
With the new PLL bindings, fixes a few board dts and overlays
that are missing some properties.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2026-01-19 16:20:44 -06:00
Guillaume Gautier
21e433eed6 include: drivers: clock: stm32: clean up indentation
Clean up indentation for consistency.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2026-01-19 16:20:44 -06:00
Guillaume Gautier
5960c2d5a1 drivers: clock: stm32: update stm32f2_f4_f7 driver with the new binding
This commit updates the STM32Fx clock driver to add complete support for
all PLLs for all SoCs.

Supports  all outputs and additional divisors:
- PLL-DIV-R
- PLLI2S-P
- PLLI2S-DIV-Q
- PLLI2S-DIV-R

Adds global checks to make sure that all:
- All PLLs share the same source clocks
- All PLLs share the same M-Divisor (on applicable SoCs)
- Both div-X and div-divX are defined (on applicable SoCs)

Functions get_plli2s_source and get_plli2ssrc_frequency are added to make
sure that PLLI2S can be used even if PLL is not defined.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2026-01-19 16:20:44 -06:00
Guillaume Gautier
447d552ac0 include: dt-bindings: clock: stm32fx: add missing clock sources
Add some missing clock sources and reorganize them to class the PLL outputs
together for STM32F4 and F7.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2026-01-19 16:20:44 -06:00
Guillaume Gautier
97cc7adf25 dts: arm: st: update stm32f2, f4 and f7 pll compatibles
For all STM32F2, F4 and F7, use the new binding instead of the various ones
previously defined.

For F411 and F446, this removes the need to define the PLLI2S since it is
already included in F401.

For F7, this commit also adds the PLLI2S that was missing.

Also update post-div-x properties for some boards and overlays.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2026-01-19 16:20:44 -06:00
Guillaume Gautier
d985cfa9f5 dts: bindings: clock: st: use a single binding for stm32f2, f4 and f7 PLLs
STM32F2, F4 and F7 have up to 3 PLLs: PLL, PLLI2S and PLLSAI. These PLLs
are very similar, the principal differences are which outputs are available
for which PLL of each SoC.

Instead of having a large number of files to describe all the possible
very similar variants, use one single binding to rule them all.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2026-01-19 16:20:44 -06:00
Guillaume Gautier
8d677b2c29 drivers: clock: use concat instead of ##
Use CONCAT macro instead of ## to create the PLL division macro.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2026-01-19 16:20:44 -06:00
Ashirwad Paswan
68b86a15a1 dma: rpi_pico: fix transfer count calculation
The Pico SDK expects a transfer count (items), not a byte count. The
driver incorrectly passed the byte size, causing buffer overflows on
16-bit and 32-bit transfers.Fix this by storing the transfer width in
the channel configuration and dividing the block size by that width
to calculate the correct transfer count.

Fixes #99435

Signed-off-by: Ashirwad Paswan <ashi06712@gmail.com>
2026-01-19 16:19:56 -06:00
Alessandro Manganaro
b93fabaf25 drivers: timers: stm32: improving lptim configuration sequence
Moving the reset of ltpim hw ip at the beginning of
sys_clock_driver_init to improve the reliability of lptim hw
configuration sequence.

Signed-off-by: Alessandro Manganaro <alessandro.manganaro@st.com>
2026-01-19 16:04:36 +00:00
Yves Wang
9214274464 tests: watchdog: Enable watchdog reset none for more nxp socs
Enable reset_none_ewm for frdm_ke15z, frdm_mcxe247 and mimxrt1170.

Signed-off-by: Yves Wang <zhengjia.wang@nxp.com>
2026-01-19 16:04:24 +00:00
Yves Wang
0d66cdd54b dts: nxp: support watchdog on more nxp platforms
Add ewm dts node for mimxrt1170.
Enable ewm clock for frdm_mcxe247.
Enable wdog for frdm_mcxe247 and frdm_ke15z.

Signed-off-by: Yves Wang <zhengjia.wang@nxp.com>
2026-01-19 16:04:24 +00:00
Alain Volmat
290b8e6748 samples: display: use white background for ARGB_8888
Set the background color to 0xFF (white) in case of ARGB_8888
framebuffer format so that it is same for all formats except
AL88 and MONO.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2026-01-19 16:04:04 +00:00
Alain Volmat
5b5cdecb97 display: fix SDL display format handling
Switch SDL buffers from SDL_PIXELFORMAT_ARGB8888 to
SDL_PIXELFORMAT_BGRA32. BGRA32 is platform endianness independent
description, defined as below:

	Byte 0   Byte 1   Byte 2   Byte 3
	7......0 15.....8 23....16 31....24
	Bbbbbbbb Gggggggg Rrrrrrrr Aaaaaaaa

The driver is then updated in order to ensure that all buffers,
given via a PIXEL_FORMAT_ described format are properly converted
into the SDL_PIXELFORMAT_BGRA32. At the same time endianness
conversion code is also added in order to avoid taking assumption
that the running platform is little-endian and ensure that data
are properly read as expected.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2026-01-19 16:04:04 +00:00
Alain Volmat
b39b8bc94c samples: display: add corner colors in L_8 mode
Draw different greyscale in all 4 corners in L_8 mode.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2026-01-19 16:04:04 +00:00
Alain Volmat
321f08ae97 samples: display: fix RGB888 red/blue values
The RGB888 colors generated leads to having
  byte0 - R
  byte1 - G
  byte2 - B
while the RGB888 is usually described as B - G - R
going from byte0 to byte2.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2026-01-19 16:04:04 +00:00
Alain Volmat
26afede1db samples: display: ensure data proper endianness buffer fill
Ensure proper endianness when data are written via 16 or 32bit write.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2026-01-19 16:04:04 +00:00
Alain Volmat
83e6e4379b include: display: Add description for all formats
Add detailed description for all supported display formats.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2026-01-19 16:04:04 +00:00
Alain Volmat
b13d9a0510 display: rename current BGR_565 format into RGB_565X
The format currently expected by devices and sample display
application for BGR_565 is actually RGB_565 format with bytes
swapped (not B / R swapped). That is:

PIXEL_FORMAT_RGB_565:
         * @code{.unparsed}
         *   7......0 15.....8
         * | gggBbbbb RrrrrGgg | ...
         * @endcode

current PIXEL_FORMAT_BGR_565:
         * @code{.unparsed}
         *   7......0 15.....8
         * | RrrrrGgg gggBbbbb | ...
         * @endcode

This is explained in both st7796s display driver but also is
what is generated by the sample display application. As a video
format (ex: V4L2), such format is not mentioned as BGR (for
which R and B are swapped) but RGB_565X.

Within the whole Zephyr tree, rename the curremt BGR_565 format
into RGB_565X in order to emphasis that this is a byte swapped
format rather than a B/G component swapped format.

This also correct the description of the format in display.h
file, which wasn't correct based on what was being used by
display driver or sample display app.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2026-01-19 16:04:04 +00:00
Stephan Linz
9d205d65f9 MAINTAINERS: include MCP251xFD Click shields in CAN drivers
This commit adds the MikroE MCP251xFD Click shields under the same
assignees as other of the CAN driver based shields.

Signed-off-by: Stephan Linz <linz@li-pro.net>
2026-01-19 16:03:49 +00:00
Stephan Linz
ef55e9bfc1 boards: shields: mikroe_mcp251xfd_click: add MCP251863 click shield
Adds MikroElektronica MCP251xFD click shield with the Microchip
MCP251863 CAN FD controller.

Signed-off-by: Stephan Linz <linz@li-pro.net>
2026-01-19 16:03:49 +00:00
Stephan Linz
c6ae75b0d7 boards: shields: mikroe_mcp251xfd_click: add MCP2517FD click shield
Adds MikroElektronica MCP251xFD click shield with the Microchip
MCP2517FD CAN FD controller.

Signed-off-by: Stephan Linz <linz@li-pro.net>
2026-01-19 16:03:49 +00:00
Stephan Linz
db302632e6 boards: shields: mikroe_mcp251xfd_click: adjust documentation
The documentation now contains an introductory section covering
the possible variants of this shield. Furthermore, the existing
documentation for the MikroElektronika MCP2518FD click shield
has been enhanced with additional WEB references and the missing
picture.

Signed-off-by: Stephan Linz <linz@li-pro.net>
2026-01-19 16:03:49 +00:00
Stephan Linz
e9b8784f2f boards: shields: mikroe_mcp2518fd_click: prepare for variations
MikroElektronica offers various click shields, all based on the MCP251xFD
chip family. These include, for example, the MCP2517FD and MCP251863. All
of these chips are software compatible, meaning they can be used with the
same driver.

This preparation makes it possible to introduce additional click shields,
each with their own name. These do not differ in terms of functionality
and handling, so a separate directory for each additional "similar"
module is not necessary. Only an additional DTS overlay and documentation
need to be added.

In addition, missing copyright strings have been added or their labeling
has been adapted to the current guidelines.

Signed-off-by: Stephan Linz <linz@li-pro.net>
2026-01-19 16:03:49 +00:00
Gaetan Perrot
e38ddf4edf tests: bluetooth: btp_mesh: return error when blob target list is full
cmd_blob_target() always returned 0 even when the target list was
full, making error checks at call sites unreachable.

Return a proper error code when no more targets can be added so
callers can correctly detect and handle the failure.

Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
2026-01-19 16:03:28 +00:00
Alberto Escolar Piedras
c8e1138bc6 manifest: Update nRF hw models to latest
Update the HW models module to:
4d11a73d62bf999205f16de21a0ef675501f5b21

Including the following:
4d11a73 makefile: Check for more types of build warnings
e53f8db hal: Disable unused-parameter warning when building hal files
5dfba9f RADIO: Avoid 2 shadow redefinition warnings
4a4f979 nrf_hack: Avoid a shadowed redefinition warning
4b9e63b misc: Fix a couple of signedness comparison warnings
d46094f CRACEN: Fix an unused parameter warning
1cf2b04 CLOCK: Fix prototype and one warning
2dab612 nrf_clock: Select header based on symbol instead of platform
0b45a30 54 CRACEN: Make it clear that fallthrough is intentional
7945bf8 GRTC: Add PASTCC model
0a997e5 nrf_hack: Trivial refactoring to remove duplicate code
f328e9b cmake: Add build defines to nrfx library
3824f9c hal: nrf_common: Add repl. for nrf_address_{bus,slave}_get()

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2026-01-19 16:03:20 +00:00
Fabio Baltieri
fa646a28fc ci: pr_metadata_check: do not rerun on edited
This workflow used to host the "empty" description check and had to
rerun on PR title edit, but that has been moved to into the (faster) dnm
workflow in db18e4c507. Drop the "edited" trigger from this one as it's
not needed anymore.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2026-01-19 16:03:05 +00:00
Ren Chen
5720f4aa54 tests: secure_storage: skip flash erase if no storage partition
On the it51xxx soc, the psa/its twister test was failing because
there is no storage partition defined. This change ensures the
flash erase function in the psa/its test only runs if fixed
partition labeled 'storage_partition' exists.

Tested with:
- west twister -p it51xxx_evb/it51526aw \
  -s secure_storage.psa.its.secure_storage.custom.both
- west twister -p it51xxx_evb/it51526aw \
  -s secure_storage.psa.its.secure_storage.custom.store

Signed-off-by: Ren Chen <Ren.Chen@ite.com.tw>
2026-01-19 16:02:44 +00:00
Georgios Vasilakis
347b2c9077 dts: nordic: Rename the dts/vendor dtsi files
This renames the dtsi files in the dts/vendor/nordic
to include the cpuapp in the filename.

At the same time it updates the inclusion of these files
to include the vendor in the path because the same filenames
exists in both:
dts/vendor/nordic
dts/arm/nordic

Signed-off-by: Georgios Vasilakis <georgios.vasilakis@nordicsemi.no>
2026-01-19 15:24:50 +01:00
Georgios Vasilakis
dac69073cd dts: nordic: Rename all Nordic dtsi files for non secure
Rename all dtsi files for Nordic boards for non secure builds
to have a _ prefix before "ns" to increase readiblity.

At the same time, change the path to include the arm
folder in order to be able to differentiate with the
vendor folder which has similar files.

Signed-off-by: Georgios Vasilakis <georgios.vasilakis@nordicsemi.no>
2026-01-19 15:24:50 +01:00