Commit graph

136,983 commits

Author SHA1 Message Date
Arnaud Pouliquen
51480351ab drivers: ipm: stm32_ipcc: make clock optional
On the STM32MP2 series, the IPCC clock is managed at the system
level by the CPU responsible for system configuration.
In topologies where the Cortex-M33 acts as a companion processor, it
cannot enable the IPCC clock.

This update makes the IPCC clock optional in both the device tree
and the driver.

Signed-off-by: Arnaud Pouliquen <arnaud.pouliquen@foss.st.com>
2025-12-01 12:23:31 -05:00
Qingsong Gou
6211909b78 drivers: pwm: sf32lb: add gpt based pwm driver support
Add gpt based pwm driver for sf32lb platform

Signed-off-by: Qingsong Gou <gouqs@hotmail.com>
2025-12-01 12:23:17 -05:00
Qingsong Gou
03f2d0e3e1 drivers: clock_control: sf32lb: add SF32LB_CLOCK_DT_INST_PARENT_SPEC_GET
Add SF32LB_CLOCK_DT_INST_PARENT_SPEC_GET clock macro

Signed-off-by: Qingsong Gou <gouqs@hotmail.com>
2025-12-01 12:23:17 -05:00
Qingsong Gou
68a9265d04 dts: arm: sifli: sf32lb52x: define gpt2 instance
Add gpt2 controller for sf32lb platform

Signed-off-by: Qingsong Gou <gouqs@hotmail.com>
2025-12-01 12:23:17 -05:00
Qingsong Gou
30746de20a dts: bindings: pwm: add sifli,sf32lb-gpt-pwm
Add gpt based pwm device bindings for sf32lb platform

Signed-off-by: Qingsong Gou <gouqs@hotmail.com>
2025-12-01 12:23:17 -05:00
Qingsong Gou
ef8ab28736 dts: bindings: timer: sf32lb: add sifli,sf32lb-gptim
Add GPT timer bindings for sf32lb platform

Signed-off-by: Qingsong Gou <gouqs@hotmail.com>
2025-12-01 12:23:17 -05:00
Jacky Lee
a29797d264 soc: egis_et171: add customize config value of fw size info
Allows applications to customize the firmware size information
for binary header optionally.

Signed-off-by: Jacky Lee <jacky.lee@egistec.com>
2025-12-01 12:22:44 -05:00
Ivan Pankratov
4f18248b72 doc: releases: document radio binding renames in 4.4
Add migration guide and release notes entries for the radio-related
devicetree binding renames:
- generic-fem-two-ctrl-pins -> radio-fem-two-ctrl-pins
- gpio-radio-coex -> radio-gpio-coex
- tx-high-power-supported -> radio-tx-high-power-supported

Also document the new radio.yaml base binding for generic radio
hardware capabilities.

Signed-off-by: Ivan Pankratov <ivan.pankratov@silabs.com>
2025-12-01 12:22:33 -05:00
Ivan Pankratov
a44583c8f4 dts: bindings: Rename gpio-radio-coex to radio-gpio-coex
Rename GPIO coex binding to use 'radio-' prefix for consistency with
other radio bindings (radio.yaml, radio-fem-two-ctrl-pins.yaml).

Updated beacon sample overlay and coex documentation.

Signed-off-by: Ivan Pankratov <ivan.pankratov@silabs.com>
2025-12-01 12:22:33 -05:00
Ivan Pankratov
6ccc58a8f6 dts: bindings: Rename generic-fem-two-ctrl-pins to radio-fem-two-ctrl-pins
Rename generic FEM binding to use 'radio-' prefix for consistency with
other radio bindings (radio.yaml, ble-radio.yaml).

Updated 3 board files, Nordic BLE controller HAL, documentation, and
test overlays. Added missing settle-time properties to pan1783a board.

Signed-off-by: Ivan Pankratov <ivan.pankratov@silabs.com>
2025-12-01 12:22:33 -05:00
Ivan Pankratov
0aa208d51e dts: bluetooth: add base binding for BLE radio hardware capabilities
Create a shared base binding (ble-radio.yaml) for common Bluetooth LE
radio hardware capabilities to avoid duplication between vendors and
ensure consistent property naming across the ecosystem.

Properties are prefixed with 'ble-' and ordered chronologically by
Bluetooth Core Specification version (5.0, 5.1, 6.0). Each property
indicates a hardware capability, not current enablement state.

Signed-off-by: Ivan Pankratov <ivan.pankratov@silabs.com>
2025-12-01 12:22:33 -05:00
Ivan Pankratov
675e6e05cd drivers: bluetooth: efr32: move Silabs Kconfig settings
Vendor specific configuration is moved to a separate file.

Signed-off-by: Ivan Pankratov <ivan.pankratov@silabs.com>
2025-12-01 12:22:33 -05:00
Emil Gydesen
f537b770e2 tests: Bluetooth: CAP: Unit tests: Delete group after creation
Some of the CAP initiator unit tests did not delete the group
after creation, even if they easily could.

Especially for test_initiator_unicast_group_add_streams it was
a problem, as the stream added was stack allocated, and by the
end of the test it was deallocated, causing issues when the
group was finally deleted in
cap_initiator_test_unicast_group_after.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-12-01 12:22:13 -05:00
Emil Gydesen
bfe66fc548 tests: Bluetooth: CAP: Modify initiator unittests to native_sim
Modify the unit tests to use the native_sim board instead of the
unit_testing board.
The native_sim board allows us to use the kernel in a more
regular way, while still being able to treat the tests as
unittest.

To support mocking we cannot rely on the default
Kconfig options and values. The required Kconfig options
to satisfy dependencies are overridden in the Kconfig
file and the necessary Kconfig files are sourced.
We cannot enable e.g. CONFIG_BT as that would attempt
to pull in a lot of files we do not want in this test.

This commit also removes unused includes in the CMakelists

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2025-12-01 12:22:13 -05:00
Kevin Zeng
ada3aad811 assert: Add an option for a custom assert header
Similar to logging and shell, allow application to override and
extend the ASSERT macros globally. This enables intercepting log strings
at the macro level for things like string tokenizations.

Signed-off-by: Kevin Zeng <zengk@google.com>
2025-12-01 12:22:03 -05:00
Pieter De Gendt
d9be161571 nvmem: Verify device readiness before read/write
Verify the NVMEM controller device state before reads/writes.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-12-01 12:21:52 -05:00
Martin Hoff
d02cdc734e drivers: i2s: siwx91x: ensure device runtime is released
Removed conditional checks for device runtime put in DMA RX and
TX callbacks, ensuring that device runtime is always released
asynchronously.

Signed-off-by: Martin Hoff <martin.hoff@silabs.com>
2025-12-01 11:11:23 +01:00
Martin Hoff
8f4f1efc86 drivers: dma: siwx91x: fix interrupt flag reset
This patch fix a reg write that needs to be done before calling the
callback. Since the user can start a new dma transfer in the callback,
it can miss the interrupt from the new transfer if the new transfer is
done before the interrupt bit is cleared.

Signed-off-by: Martin Hoff <martin.hoff@silabs.com>
2025-12-01 11:11:23 +01:00
Martin Hoff
aa315948dc drivers: dma: siwx91x: replace pm_state with pm_device (udma and gpdma)
Removed unnecessary power management state lock calls since the DMA is
on a power domain that already handles state locking.
It will now managed directly pm_device which will active power_domain
and then block pm_state.

Signed-off-by: Martin Hoff <martin.hoff@silabs.com>
2025-12-01 11:11:23 +01:00
Martin Hoff
d5c45b10e5 drivers: spi: siwx91x: ensure device runtime is released on error
Added calls to pm_device_runtime_put() to ensure proper device runtime
management when configuration or DMA transceive operations fail.

Signed-off-by: Martin Hoff <martin.hoff@silabs.com>
2025-12-01 11:11:23 +01:00
Martin Hoff
b78fe9f1aa drivers: power_domain: siwx91x: fix the link between pd and cpu state
This patch is needed to block the pm_state "PM_STATE_SUSPEND_TO_IDLE"
when a device on the power domain (actually all the peripherals) is
active. Without this patch, cpu can decide to go to deep sleep while
a peripheral is active.

Signed-off-by: Martin Hoff <martin.hoff@silabs.com>
2025-12-01 11:11:23 +01:00
Aksel Skauge Mellbye
a83b19b3f9 soc: silabs: Fix clock control dependency declarations
Most drivers for Series 2 depend on clock control, but didn't
declare it. Enable clock control by default for Series 2 SoCs.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2025-12-01 11:11:14 +01:00
Sai Santhosh Malae
a80855354c tests: watchdog: wdt_basic_api: Enable PM
Add a new test for enabling device runtime PM
for siwx917_rb4338a

Signed-off-by: Sai Santhosh Malae <Santhosh.Malae@silabs.com>
2025-12-01 11:10:39 +01:00
Sai Santhosh Malae
d83740f2d8 drivers: watchdog: siwx91x: Fix pause in sleep
The watchdog timer on SiWx91x devices is designed to
pause during deep-sleep and resume after wakeup.
However, an incorrect check in`wdt_setup` was
preventing this intended behavior. This patch removes
the check, restoring the correct pause-in-sleep
functionality.

Signed-off-by: Sai Santhosh Malae <Santhosh.Malae@silabs.com>
2025-12-01 11:10:39 +01:00
Tim Pambor
9f35dd41ad tests: drivers: regulator: add test for STM32 vrefbuf regulator
Add build test for vrefbuf regulator found on STM32H5 and STM32U5 series.

Signed-off-by: Tim Pambor <tim.pambor@codewrights.de>
2025-12-01 11:10:25 +01:00
Tim Pambor
291ae703d9 tests: drivers: regulator: move app.overlay to board-specific file
Relocate the contents of app.overlay into a board-specific overlay for
native_sim. This change prepares the codebase for adding regulator tests
for other boards.

Signed-off-by: Tim Pambor <tim.pambor@codewrights.de>
2025-12-01 11:10:25 +01:00
Tim Pambor
19423fab21 dts: arm: st: stm32u5: Add support for vrefbuf
Add a node for the VREFBUF peripheral in the STM32U5.

Signed-off-by: Tim Pambor <tim.pambor@codewrights.de>
2025-12-01 11:10:25 +01:00
Tim Pambor
e6cefe2a58 dts: arm: st: stm32h5: Add support for vrefbuf
Add a node for the VREFBUF peripheral in the STM32H5.

Signed-off-by: Tim Pambor <tim.pambor@codewrights.de>
2025-12-01 11:10:25 +01:00
Tim Pambor
cec1861cae drivers: regulator: add stm32 vrefbuf driver
Add driver for the VREFBUF regulator found on STM32 microcontrollers.

Signed-off-by: Tim Pambor <tim.pambor@codewrights.de>
2025-12-01 11:10:25 +01:00
cyliang tw
333d1160a3 tests: drivers: watchdog: wdt_basic_api: Support numaker_m3334ki
Add support for Nuvoton numaker board numaker_m3334ki.

Signed-off-by: cyliang tw <cyliang@nuvoton.com>
2025-12-01 11:10:18 +01:00
cyliang tw
780f260efd drivers: watchdog: Fix Numaker driver bug in test suite
NuMaker watchdog control register is write-once after power-on
or reset. Thus, the control registeris written in the setup
function and the disable function only disables IRQ.

Signed-off-by: cyliang tw <cyliang@nuvoton.com>
2025-12-01 11:10:18 +01:00
Adrian Warecki
6cd7cfa104 xtensa: mmu: ptables: Set PPN in region_map_update to fix memory mapping
Set PPN (Physical Page Number) in L2 entry in the region_map_update
function to ensure correct mapping for memory that was not previously
mapped based on xtensa_soc_mmu_ranges.

When a new memory domain is created, the arch_mem_domain_init function
allocates new ptables using the dup_table function. This function only
copies original L2 entries created from xtensa_soc_mmu_ranges with
OPTION_SAVE_ATTRS. Entries added later by arch_mem_map are replaced with
XTENSA_MMU_PTE_L2_ILLEGAL and have PPN (Physical Page Number) set to zero.

When adding a new partition to a memory domain, the update_region function
is used. It sets new access attributes in the L2 table without setting the
PPN value. As a result, it does not work correctly for memory that was not
previously mapped based on xtensa_soc_mmu_ranges.

Signed-off-by: Adrian Warecki <adrian.warecki@intel.com>
2025-12-01 11:09:09 +01:00
Adrian Warecki
942b1e8571 xtensa: mmu: ptables: Introduce PTE_PPN_SET macro
Add macro PTE_PPN_SET to simplify setting the physical page
number assigned in the page table entry.

Signed-off-by: Adrian Warecki <adrian.warecki@intel.com>
2025-12-01 11:09:09 +01:00
Adrian Warecki
f5f56113fe xtensa: mmu: ptables: Introduce PTE_PPN_GET macro
Add macro PTE_PPN_GET to simplify retrieval of the physical page
number assigned to a page table entry.

Signed-off-by: Adrian Warecki <adrian.warecki@intel.com>
2025-12-01 11:09:09 +01:00
Yangbo Lu
001d889ab7 samples: net: gptp: add mimxrt1180_evk_mimxrt1189_cm33 support
Added mimxrt1180_evk_mimxrt1189_cm33 support.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-12-01 11:09:01 +01:00
Yangbo Lu
3461123ce9 boards: nxp: mimxrt1180_evk: enable ptp clock
Enabled ptp clock.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-12-01 11:09:01 +01:00
Yangbo Lu
9229383f8a dts: arm: nxp_rt118x: add ptp clock node
Added ptp clock node.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-12-01 11:09:01 +01:00
Yangbo Lu
92decb6273 drivers: eth_nxp_imx_netc: support PTP timestamping for no-tag switch
Added PTP timestamping support in NETC ENETC host driver for no-tag
supported NETC switch.

On RX path, extended descriptor is used on host (pseudo MAC) to get
timestamp writeback.

On TX path, TX timestamp response should be enabled on host (pseudo MAC).
After TX, writeback TX timestamp ID should be updated to tx pkt fifo.
Once RX path received TX timestamp response, match TX timestamp to tx
pkt in fifo with the timestamp ID.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-12-01 11:09:01 +01:00
Yangbo Lu
b2b0c9d4e1 drivers: dsa_nxp_imx_netc: support PTP timestamping for no-tag switch
For NETC switch with tag support, PTP timestamping had already been
supported in tag driver.

This patch is to add PTP timestamping support for no-tag supported switch.
Timestamp functions are implemented and exported for host driver to
handle.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-12-01 11:09:01 +01:00
Yangbo Lu
b693f3ca2d drivers: eth_nxp_imx_netc: improve PTP timestamping enablement
Converted to use NETC_PTP_TIMESTAMPING_SUPPORT for PTP timestamping.
PTP timestamping is needed only when NET_L2_PTP and PTP_CLOCK_NXP_NETC
are selected.

Used default 16 bytes for ETH_NXP_IMX_RX_RING_LEN for PTP timestamping
because RX extended descriptor would be used.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-12-01 11:09:01 +01:00
Yangbo Lu
5b8af91236 drivers: dsa_nxp_imx_netc: improve PTP timestamping enablement
PTP timestamping should be enabled only when NET_L2_PTP and
PTP_CLOCK_NXP_NETC are selected. And NET_PKT_CONTROL_BLOCK
is required for PTP timestamping code.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-12-01 11:09:01 +01:00
Yangbo Lu
0b9f25335b drivers: ptp_clock: support clock division for platforms
Supported clock division for platforms as it may vary from
platforms.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-12-01 11:09:01 +01:00
Martin Hoff
29fb893bab soc: silabs: siwx91x: removed sscanf for nwp firmware version check
This patch removes the use of sscanf to maintain compatibility with
tests that use the minimal cpp library. The expected version is now
defined using multiple individual values rather than a single
formatted string.

Signed-off-by: Martin Hoff <martin.hoff@silabs.com>
2025-12-01 11:08:51 +01:00
Andrea Gilardoni
53eaf0f71e llext: llext_priv: INSTR_FETCHABLE missing parentheses in definition
C macro INSTR_FETCHABLE is missing parentheses in its definition,
this could lead to incorrect expansion when combined with logical
operators

Signed-off-by: Andrea Gilardoni <a.gilardoni@arduino.cc>
2025-12-01 08:32:11 +01:00
Fin Maaß
8fd4f987b3 drivers: ethernet: renesas: implement get_phy
implement get_phy for the renesas ethernet
driver.

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-12-01 08:32:00 +01:00
Anas Nashif
d31def38bb doc: usermode: correct header where k_objects is defined
Fix location of where k_objects is defined.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-12-01 08:31:46 +01:00
Lyle Zhu
05dc860f11 Bluetooth: Classic: A2DP: Fix out of bounds issue
This is a negative detection. The conn index should be never out of
bounds of the array `connection`. Because the size of the array is
`CONFIG_BT_MAX_CONN`.

To improve the readability, add a `__ASSERT` checking to check if the
conn index is out of bounds.

CID 487769

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-12-01 08:31:26 +01:00
Lyle Zhu
e586213417 Bluetooth: Classic: SDP: Fix out of bounds issue
This is a negative detection. The conn index should be never out of
bounds of the array `bt_sdp_client_pool`. Because the size of the
array is `CONFIG_BT_MAX_CONN`.

To improve the readability, add a `__ASSERT` checking here. Check
whether the conn index is out of bounds.

Fix #99985

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-12-01 08:31:19 +01:00
Lyle Zhu
2b827d31fc Bluetooth: Classic: conn: Fix br conn cannot be found issue
There is a corner case that the connect complete event is notified
before the function `bt_hci_cmd_send_sync()` returns. Because the
created conn object is in the state of `BT_CONN_DISCONNECTED`, it
cannot be found in the connect complete event. As a result, the
connect can not established normally.

Fix the issue by setting the connect state and role before calling
the function `bt_hci_cmd_send_sync()`.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
2025-12-01 08:30:53 +01:00
Muhammed Asif
1fb4d82ef1 boards: microchip: Add minimal support for sam_e54_cult board
- Adds the basic board support
- Tested with blinky and hello world
- Product page : https://www.microchip.com/en-us/development-tool/EV66Z56A

Signed-off-by: Muhammed Asif <muhammed.asif@microchip.com>
2025-12-01 08:30:44 +01:00