Commit graph

126,787 commits

Author SHA1 Message Date
Mike J. Chen
addf568d3e drivers: spi_mcux_flexcomm: remove DMA block complete callbacks
For every TX, the driver used to get both callbacks when
each block was trasnfered and when the entire DMA was complete.
The callback for each block isn't needed so remove it
and reduce intermediate interrupts (the more blocks in
the DMA link, the more needless intermediate interrupts we
now no longer get).

Signed-off-by: Mike J. Chen <mjchen@google.com>
2025-09-18 09:47:55 +01:00
Mathieu CHOPLAIN
3ae98de48e drivers: usb: udc: stm32: handle endpoint halt properly
Handle endpoints in halted state properly by marking endpoints as halted
when appropriate, and inhibiting transfers involving halted endpoints.

Co-authored-by: IBEN EL HADJ MESSAOUD Marwa <marwa.ibenelhadjmessaoud-ext@st.com>
Signed-off-by: Mathieu CHOPLAIN <mathieu.choplain-ext@st.com>
2025-09-18 09:47:36 +01:00
The Nguyen
ac799750e6 boards: renesas: disable unused button on ek_ra8p1
Set the button to disabled by default if not in use on each
ek_ra8p1 cluster

Signed-off-by: The Nguyen <the.nguyen.yf@renesas.com>
2025-09-18 09:47:06 +01:00
Martin Hoff
4c2bc42f7b drivers: serial: silabs: Change poll_out function to blocking mode
Since the UART API explicitly states that the poll_out function needs
to block until the character is sent, change the mechanism and add
a busy-wait loop to ensure transmission completion before proceeding.

Signed-off-by: Martin Hoff <martin.hoff@silabs.com>
2025-09-18 09:46:49 +01:00
Martin Hoff
c37ffd396b drivers: serial: silabs: Update ISR to check for DMA device presence
Since the symbol CONFIG_UART_ASYNC_API is shared between EUSART and USART
drivers, it creates a scenario where EUSART can have
CONFIG_UART_SILABS_USART_ASYNC=y but with no DMA device declared for it
in the DTS (because we only want async API for the USART driver).
We handled this case by disabling async transfer when the DMA
device is null, but when we activate CONFIG_PM, we have a hard fault due
to null pointer dereference in the ISR.
This bug was only discovered today when trying to enable CONFIG_PM over the
uart_async_api test, which led to a hard fault in the ISR. This occurs
because we only enable interrupts when the PM is enabled in the "poll_out"
function to put the PM lock back.

Signed-off-by: Martin Hoff <martin.hoff@silabs.com>
2025-09-18 09:46:49 +01:00
Mohamed Moawad
ccfe64627e kernel: events: add conditional guards for timeout operations
Add conditional compilation guards around timeout operations in
kernel/events.c to ensure compatibility with timer-less configurations.

Signed-off-by: Mohamed Moawad <moawad@synopsys.com>
2025-09-18 09:46:29 +01:00
Thomas Decker
9380f20b85 dts: bindings: serial: st,stm32-uart: Fix description of dts property
Fix dts property description of de-deassert-time for stm32-uart driver.
Old text was copy'n'pasted from de-assert-time.

Signed-off-by: Thomas Decker <decker@jb-lighting.de>
2025-09-18 09:46:11 +01:00
Luca Burelli
00479a45f8 tests/cmake/snippets: (trivial) fix Kconfig descriptions
Trivial fix to the Kconfig descriptions in the cmake snippet tests so
that they match the actual snippet names.

Signed-off-by: Luca Burelli <l.burelli@arduino.cc>
2025-09-18 09:46:00 +01:00
Ayush Singh
5d4a116c44 boards: pocketbeagle_2: a53: Use RAM from 0x80200000
First 2MiB is reserved for Arm Trusted Firmware-A according the TI docs
[0].

An update bb-zephyr-image [1] provides a custom boot script for u-boot
which allows the old instructions to work (as opposed to having to load
and execute the binary manually).

Tested using tests/arch/arm64/arm64_smc_call.

[0]: https://software-dl.ti.com/mcu-plus-sdk/esd/AM62X/latest/exports/docs/api_guide_am62x/MEMORY_MAP.html
[1]:https://github.com/beagleboard/bb-zephyr-images

Signed-off-by: Ayush Singh <ayush@beagleboard.org>
2025-09-17 19:12:57 -04:00
CHEN Xing
e761db3166 boards: microchip: sam: add sdmmc device for sama7g5
Add sdmmc0 sdmmc1 for sama7g5-ek

Signed-off-by: CHEN Xing <xing.chen@microchip.com>
2025-09-17 19:12:45 -04:00
CHEN Xing
3a6ae2b01c driver: sdhc: add sdmmc for sama7g5
Add driver for sama7g54 Secure Digital MultiMedia Card Controller

Signed-off-by: CHEN Xing <xing.chen@microchip.com>
2025-09-17 19:12:45 -04:00
CHEN Xing
b850f1b94f soc: microchip: sam: update for sama7g5 sdmmc
Update MMU and GCLK configurations for sdmmc.

Signed-off-by: CHEN Xing <xing.chen@microchip.com>
2025-09-17 19:12:45 -04:00
CHEN Xing
d04ae0f11c dts: arm: microchip: sam: add sdmmc device to sama7g5
Add sdmmc0, sdmmc1 device to sama7g5

Signed-off-by: CHEN Xing <xing.chen@microchip.com>
2025-09-17 19:12:45 -04:00
Jonathan Nilsen
6b93eacb6c soc: nordic: uicr: print cmake warning when used without sysbuild
Because generation and programming of UICR + PERIPHCONF artifacts
depend on the 'uicr' image which in turn must be included by Sysbuild,
many if not most nrf54h20 applications will need to be built using
Sysbuild to function as intended.

To make this known to the user, print a CMake warning whenever
CONFIG_NRF_PERIPHCONF_SECTION=y but Sysbuild is not being used.

Signed-off-by: Jonathan Nilsen <jonathan.nilsen@nordicsemi.no>
2025-09-17 19:12:36 -04:00
Jonathan Nilsen
1cb9408f19 soc: nordic: nrf54h: generate PERIPHCONF entries based on devicetree
Add build system support for populating the PERIPHCONF
(global domain peripheral configuration), based on nodes and properties
found in the devicetree. This should make it so all samples and tests
that were broken by the move to IronSide SE now function correctly
without workarounds or manual steps.

When enabled, a new python script called gen_periphconf_entries.py is
run when building. The script iterates over nodes and properties in the
devicetree and generates a C file called periphconf_entries_generated.c
in the build directory, which is added as a source file. The C file
uses the macros from uicr.h to configure the global domain according
to the devicetree.

The PERIPHCONF entry generation is enabled by default when building
for nrf54h20dk/nrf54h20/cpuapp and nrf54h20dk/nrf54h20/cpurad.
It will also be used on nrf9280 soon, therefore it is placed
in the common uicr directory.

This new feature does the same job as nrf-regtool did when building
for nrf54h20 before, and is compatible by the bindings that were used
by nrf-regtool.

Signed-off-by: Jonathan Nilsen <jonathan.nilsen@nordicsemi.no>
2025-09-17 19:12:36 -04:00
Jukka Rissanen
221aca4bb9 net: if: Fix assert when checking lladdr existence
As the linkaddr->addr is no longer a pointer, the original
assert check is not working as it should. So use the length
of the linkaddr to verify that it is > 0.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-09-17 19:10:31 -04:00
Jukka Rissanen
1222383d12 tests: net: mgmt: Dummy interface link addr is max 6 bytes long
The max length of the dummy network interface is 6 bytes so
fix that and make sure we check the return address properly
when setting the link address.

Signed-off-by: Jukka Rissanen <jukka.rissanen@nordicsemi.no>
2025-09-17 19:10:31 -04:00
Pieter De Gendt
58b28eec83 include: zephyr: net: coap: Fix doxygen for coap_packet.user_data
Fix the expansion guard for __DOXYGEN__ and improve the Kconfig dependency
reference.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-09-17 19:10:20 -04:00
Aaron Massey
b8576db6bc MAINTAINERS: Add fuel-gauge DBS06 maintainer
DBS06 has been consistently contributing and reviewing fuel gauge
changes. Given how much additional support they have added we should add
them as a maintainer.

Signed-off-by: Aaron Massey <aaronmassey@google.com>
2025-09-17 19:01:58 +02:00
Benjamin Cabé
299bd82e7c MAINTAINERS: add more utils unit tests to Utilities area
adds hex and winstream tests to Utilities area

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-17 19:01:51 +02:00
Benjamin Cabé
c285527a8f MAINTAINERS: add nanopb documentation to nanopb area
adds doc/services/serialization/nanopb.rst to nanopb area

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-17 19:01:51 +02:00
Benjamin Cabé
a49573b955 MAINTAINERS: add bindesc documentation to bindesc area
adds doc/services/binary_descriptors/index.rst to bindesc area

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-17 19:01:51 +02:00
Benjamin Cabé
64fb8ef1c6 MAINTAINERS: add video dt-bindings headers to the area
add include/zephyr/dt-bindings/video under Video area

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-17 19:01:51 +02:00
Benjamin Cabé
88a5563f6f MAINTAINERS: add MFD dt-bindings headers to the area
add include/zephyr/dt-bindings/mfd under MFD area

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-17 19:01:51 +02:00
Benjamin Cabé
33402ff387 MAINTAINERS: add comparator dt-bindings headers to the area
add include/zephyr/dt-bindings/comparator under comparator area

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-17 19:01:51 +02:00
Benjamin Cabé
71d1fd8140 MAINTAINERS: add all memc headers to MEMC area
Vendor specific memc headers fall under MEMC area

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-17 19:01:51 +02:00
Benjamin Cabé
4fcb42c531 MAINTAINERS: add all Haptics headers to Haptics area
Vendor specific haptics headers fall under Haptics area

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-17 19:01:51 +02:00
Benjamin Cabé
9ab0d09ecf MAINTAINERS: add all DAC headers to DAC area
Vendor specific DAC headers fall under DAC area

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-17 19:01:51 +02:00
Benjamin Cabé
e0905cf945 MAINTAINERS: hal_ambiq is maintained
Align hal_ambiq maintainership with that of the platform.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-17 19:01:51 +02:00
Benjamin Cabé
f73970bb56 MAINTAINERS: add file glob for cmsis_6
Add modules/cmsis_6 to the list of files under CMSIS_6.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-17 19:01:51 +02:00
Benjamin Cabé
a0dca5ea5e MAINTAINERS: add file glob for hal_afbr
Add modules/hal_afbr to the list of files under hal_afbr.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-17 19:01:51 +02:00
Emilio Benavente
d7857b0771 boards: nxp: mimxrt1170: Remove SYSBUILD in board.cmake
Removed the dependency of config sysbuild from
the mimxrt1170_evk board.cmake.

Signed-off-by: Emilio Benavente <emilio.benavente@nxp.com>
2025-09-17 19:01:46 +02:00
Guennadi Liakhovetski
c6b6c62c21 arch: xtensa: (cosmetic) simplify function prototypes
Several static functions in ptables.c always return 0, make them void
to improve readability.

Signed-off-by: Guennadi Liakhovetski <guennadi.liakhovetski@linux.intel.com>
2025-09-17 19:01:35 +02:00
Aksel Skauge Mellbye
acbb894410 boards: silabs: slwrb4180a/b: Enable BLE
Enable Bluetooth on xg21 radio boards. Update hal_silabs to
include binary blob for Bluetooth on xg21.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-09-17 19:01:10 +02:00
Aksel Skauge Mellbye
0fa7aed3bf dts: arm: silabs: xg21: Add missing nodes
Add missing peripheral and clock nodes for xg21.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-09-17 19:01:10 +02:00
Aksel Skauge Mellbye
7d5580dc24 dts: arm: silabs: xg21: Reformat dtsi files
Reformat devicetree files:

* Sort nodes by unit address or name
* Sort properties by category and name

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-09-17 19:01:10 +02:00
Firas Sammoura
a1a47e21d9 util: Add MAX_FROM_LIST macro to find the maximum of variable arguments
This change introduces a set of C preprocessor macros to determine the
maximum value from a list of 1 to 10 arguments.

The main macro `MAX_FROM_LIST(...)` dispatches to specialized `MAX_N`
macros (where N is from 1 to 10) based on the number of arguments
provided. This is achieved using a common variadic macro technique
involving a helper macro `GET_MAX_MACRO` to count the arguments and
select the appropriate implementation.

The `MAX_N` macros are defined recursively using the ternary operator
`?:` to perform comparisons.

This provides a compile-time mechanism to find the maximum value within
a small set of numbers.

Signed-off-by: Firas Sammoura <fsammoura@google.com>
2025-09-17 19:01:03 +02:00
Benjamin Cabé
6221251254 include: mgmt: mcumgr: fix few incorrect doxygen comments in os_mgmt.h
A few documentation comments in os_mgmt.h were not using the proper
"javadoc-style" comments.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-17 16:37:57 +02:00
Cristian Bulacu
477c7624c0 samples: net: openthread: border_router: Update configuration
New OpenThread functionalities have been enabled. Updated specific nxp-
rcp-host-wifi configuration file.

Signed-off-by: Cristian Bulacu <cristian.bulacu@nxp.com>
2025-09-17 16:37:49 +02:00
Cristian Bulacu
16c8a16952 modules: openthread: Add new Border Router functionalities.
This commit brings new platform files:
	-`border_agent`
	-`udp`
	-`mdns_socket`
	-'trel'
This commit also makes use of existing Openthread task to
process border router messages.

Signed-off-by: Cristian Bulacu <cristian.bulacu@nxp.com>
2025-09-17 16:37:49 +02:00
Cristian Bulacu
2928670381 net: l2: openthread: Parse Border Router messages in correct context.
This commit adds a work item designated for Border Router message
parsing. A generic message structure has been proposed.

If CONFIG_NET_IPV4 is enabled, border router services will start only
after an IPV4 address has been assigned on the backbone interface.
If border router is initialized before DHCPV4 client has been assigned
an address, initial mDNS IPV4 packets will be dropped, because a source
address cannot be retrieved from that specific backbone interface.

Signed-off-by: Cristian Bulacu <cristian.bulacu@nxp.com>
2025-09-17 16:37:49 +02:00
Adam BERLINGER
cd0c3a3033 drivers: i3c: stm32: Allow I3C clock selection
This allows to use different I3C clocks from bus clock.
E.g. I3C can run from HSI instead of bus clocks.

Signed-off-by: Adam BERLINGER <adam.berlinger@st.com>
2025-09-17 16:35:00 +02:00
Adam BERLINGER
e52cf67aa6 drivers: i3c: stm32: Remove STM32_I3C_IRQ_HANDLER_FUNCTION macro
Old code looks like there is relation between .pclken and
IRQ handler. This change should make it more readable.

Signed-off-by: Adam BERLINGER <adam.berlinger@st.com>
2025-09-17 16:35:00 +02:00
Michael Zimmermann
5bba1edb6e mqtt_sn: process_ping: fix infinite loop
When next_ping == now, the code scheduled the workqueue for the current
time. On native_sim, this meant that the system workqueue thread was stuck
in an infinite loop because it kept processing the MQTT work over and over
again and the current timestamp could not advance anymore.

I didn't investigate why the yield inside the workqueue didn't help or why
native_sim can't advance time when one of the threads is stuck, but
changing the condition to >= inside mqtt_sn solves this issue.

I discovered this while running zephyr.exe through strace for up to 60
minutes. I guess that the performance overhead makes it more likely for the
workqueue handler to be run while next_ping == now, but I didn't verify
that, because it takes a long time to trigger the bug.

Signed-off-by: Michael Zimmermann <michael.zimmermann@sevenlab.de>
2025-09-17 16:32:49 +02:00
Khaoula Bidani
e803a10b91 drivers: gpio: stm32: Fix gpio_pin_get_config
This commit updates the function to only set output-related flags
(GPIO_OUTPUT_INIT_HIGH, GPIO_OUTPUT_INIT_LOW) when the pin
is actually configured as output. For input pins, only GPIO_INPUT and
other relevant flags are set.

Signed-off-by: Khaoula Bidani <khaoula.bidani-ext@st.com>
2025-09-17 16:32:39 +02:00
Benjamin Cabé
cb65ff9fc6 ci: workflows: codecov: run codecov workflow on push
Code coverage is currently executed and uploaded to codecov twice a day.
Now that "twister on push" also uploads stuff (test results) to codecov,
it is preferrable to have each push commit known to codecov to have both
tests and coverage results, since otherwise the "compare" feature that
allows to see the delta between two commits might not work as expected.

We do an average of ~4 merge batches per day so overhead is pretty
minimal.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-09-17 16:32:27 +02:00
Yassine El Aissaoui
0c9a8c6813 soc: nxp: mcxw: Fix MCXW71 BLE warning during init
SOC_MCXW716C is using a different ACL_TX_COUNT compared
to SOC_MCXW727C

Signed-off-by: Yassine El Aissaoui <yassine.elaissaoui@nxp.com>
2025-09-17 14:54:39 +02:00
Erwan Gouriou
e4dcd5d10c soc: st: stm32n6: Provide static mpu regions for !XIP
In !XIP case, provide RAM_RO and RAM_RW regions with their
respective MPU configurations.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
Co-authored-by: Sudan Landge <sudan.landge@arm.com>
2025-09-17 14:54:28 +02:00
Erwan Gouriou
8e6b779dc7 include: arch: arm: cortex_m: Provide __rom_region_size linker symbol
__rom_region_size linker symbol is available for other archs, but was
missing for Cortex-M. Add it now.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2025-09-17 14:54:28 +02:00
Erwan Gouriou
d734c3768a soc: stm32n6: Compute FLASH_SIZE when XIP=y
In XIP, we need to know FLASH_SIZE.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2025-09-17 14:54:28 +02:00