Commit graph

136,983 commits

Author SHA1 Message Date
Sylvio Alves
1f672c777a soc: esp32c6: lp core gpio driver fixes and improvements
- Fix lp_gpio Kconfig dependency to use proper
  DT_HAS_ESPRESSIF_ESP32_LPGPIO_ENABLED symbol instead of
  SOC_ESP32C6_LPCORE, and separate GPIO_ESP32 from LPGPIO_ESP32

- fix lp_gpio compatible string to espressif,esp32-lpgpio to
  match the corrected Kconfig dependency

- enable global LP core interrupts at startup via
  ulp_lp_core_intr_enable() in lp_core_startup(); the LP core
  has no interrupt allocator so this must be done once for any
  peripheral using the single interrupt vector

- enable lp_gpio in gpio_wakeup sample overlay

- fix ESP_CONSOLE_UART_NUM default for LP HP UART console

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2026-03-05 04:51:18 +01:00
Lucien Zhao
be886e5600 boards: nxp: add cpu frequency property for rt1180 boards
- add zephyr,cpu node
- get cycles value from cpu frequency property

Signed-off-by: Lucien Zhao <lucien.zhao@nxp.com>
2026-03-05 04:50:33 +01:00
Alberto Escolar Piedras
a30ac3bc35 drivers: pwm: stm32: Fix builds without mastermode support
Correct an #if which otherwise is always true, so we do not
refer to a function which does not exist otherwise.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2026-03-05 04:44:58 +01:00
Valerio Setti
3d8207880e samples: net: sockets: http_get: add missing SHA alg
Add PSA_WANT_ALG_SHA_1 to the TLS configuration. This is required to
parse the certificate.

Signed-off-by: Valerio Setti <vsetti@baylibre.com>
2026-03-05 04:44:46 +01:00
Benjamin Cabé
aa209c09c7 include: drivers: biometrics: document driver operations using Doxygen
Use doxygen driver_ops commands to properly document the required/optional
biometrics driver operations

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2026-03-05 04:44:25 +01:00
Jamie McCrae
a64142b86f Revert "scripts: build: emitting syscall/subsystem metadata to JSON if commented"
This reverts commit d739a4d0ab.

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2026-03-05 04:44:15 +01:00
Francois Ramu
66fb4e16a0 drivers: clock control: stm32h7 set the voltage scale0 correctly
This PR uses the correct macro that actually set VOS0
 (thanks to @pillo79 that got the bottom of the problem discovering
 that this is a bug in the STM zephyr driver).
A bug report that explains the problem can be found here:
 zephyrproject-rtos#104536.

Signed-off-by: Francois Ramu <francois.ramu@st.com>
2026-03-05 04:43:19 +01:00
Torbjørn Biering Tvermosegaard
157057d3a1 drivers: interrupt: pint: Fix IRQ override when re-enabling
Remove pin slot assignment if GPIO pin interrupt is disabled,
otherwise a new interrupt configured while the interrupt is
disabled will cause re-enabling of the original interrupt
to override the slot assigned of the last interrupt configured.

Signed-off-by: Torbjørn Biering Tvermosegaard <tbt@foss.dk>
2026-03-05 04:42:54 +01:00
Pete Johanson
10966a6bec shields: Add Adafruit 128x64 OLED Featherwing shield
Add a shield definition for the newer SH1106 based OLED featherwing.

Signed-off-by: Pete Johanson <pete.johanson@analog.com>
2026-03-05 04:42:38 +01:00
Surya Prakash T
2067243b60 tests: drivers: pwm: add cy8cproto_041tp support for loopback test
Add board-specific configuration and Devicetree overlay for the
CY8CPROTO-041TP development board to enable the pwm_gpio_loopback test.
defining the loopback path in the overlay: PWM output on P3.1 and
GPIO input on P3.0.

Signed-off-by: Surya Prakash T <suryat@aerlync.com>
Signed-off-by: Sayooj K Karun <sayooj@aerlync.com>
2026-03-05 04:42:21 +01:00
Surya Prakash T
dc25712645 samples: blinky_pwm: add overlay for cy8cproto_041tp
Adds the required Devicetree overlay to support the blinky_pwm
sample on the cy8cproto_041tp board, enabling PWM output
and pin configurations.

Signed-off-by: Surya Prakash T <suryat@aerlync.com>
Signed-off-by: Sayooj K Karun <sayooj@aerlync.com>
2026-03-05 04:42:21 +01:00
Manojkumar Konisetty
9cfc87619a drivers: pwm: infineon: add dedicated PWM driver for PSoC4
Add PWM driver for the Infineon PSoC4 family.
This includes SoC-specific register configurations, API calls,
and hardware instance mapping required for PSoC4 compatibility.

Signed-off-by: Surya Prakash T <suryat@aerlync.com>
Signed-off-by: Manojkumar Konisetty <manoj@aerlync.com>
Signed-off-by: Sayooj K Karun <sayooj@aerlync.com>
2026-03-05 04:42:21 +01:00
Surya Prakash T
32a09f89a7 dts: arm: infineon: psoc4: add PWM pinmux and TCPWM interrupts
Extends the PSoC 4100T Plus support by adding PWM pinmux definitions
and configuring TCPWM hardware interrupts.

Changes:
- Added comprehensive PWM and complementary PWM pinmux mappings in
  psoc4100tp.64-tqfp.dtsi for the 64-TQFP package.
- Defined interrupts (mapping to IRQs 16-21) and priorities for all
  six TCPWM instances (tcpwm0_0 to tcpwm0_5) in psoc4100tp.dtsi.
- Add the 'index' property to TCPWM nodes to explicitly define
  their hardware instance number

Signed-off-by: Surya Prakash T <suryat@aerlync.com>
Signed-off-by: Sayooj K Karun <sayooj@aerlync.com>
2026-03-05 04:42:21 +01:00
Manojkumar Konisetty
7558c7723a dts: infineon: adding new index binding for timer
- Add an explicit 'index' property to the TCPWM binding to
  represent the hardware index of the TCPWM peripheral.

- This makes the configuration explicit and independent of
  Devicetree node ordering.

Signed-off-by: Manojkumar Konisetty <manoj@aerlync.com>
Signed-off-by: Sayooj K Karun <sayooj@aerlync.com>
2026-03-05 04:42:21 +01:00
Alexios Lyrakis
c94c297c31 arch: riscv: icsr: add Doxygen documentation for indirect CSR helpers
Add comprehensive Doxygen documentation for all micsr_* and micsr2_*
helper functions that provide atomic indirect CSR access. These
functions are critical for preventing race conditions when accessing
RISC-V indirect CSRs from interrupt contexts.

Signed-off-by: Alexios Lyrakis <alex_gfd@hotmail.com>
2026-03-05 04:42:06 +01:00
Alexios Lyrakis
23bf240be4 drivers: intc: riscv_clic: fix race condition and improve architecture
Fix race condition in riscv_clic_irq_set_pending() and other CLIC
functions when called from ISR context. The original code used unsafe
two-step CSR operations (MISELECT write followed by MIREG access) that
could be interrupted between steps, leading to incorrect register access.

Replace runtime IS_ENABLED() conditionals with compile-time preprocessor
directives for better code structure and explicit error handling when
platform configuration is incomplete.

Use atomic micsr_* and micsr2_* helpers that perform IRQ-locked indirect
CSR operations, ensuring proper MISELECT/MIREG register pairing.

Changes:
- Convert all CLIC functions to use compile-time ifdef structure
- Replace unsafe CSR operations with atomic micsr_*/micsr2_* helpers
- Use micsr_* (MIREG) for CLIC_INTIP, CLIC_INTCTRL, CLIC_CFG
- Use micsr2_* (MIREG2) for CLIC_INTIE, CLIC_INTATTR
- Add explicit error messages for unsupported configurations
- Fix bit_offset variable scope to avoid redefinition

Signed-off-by: Alexios Lyrakis <alex_gfd@hotmail.com>
2026-03-05 04:42:06 +01:00
Alexios Lyrakis
037b8fe971 arch: riscv: icsr: add micsr2_* helpers for MIREG2 access
Add complete set of micsr2_* helper functions for atomic indirect CSR
access via MIREG2. These complement existing micsr_* helpers that
access via MIREG, providing support for CLIC registers that require
MIREG2 access (CLIC_INTIE, CLIC_INTATTR).

Signed-off-by: Alexios Lyrakis <alex_gfd@hotmail.com>
2026-03-05 04:42:06 +01:00
Seyoung Jeong
61d0f48df3 samples: pm: device_pm: add missing README.rst
Add README.rst documentation for the device_pm sample following the
standard Zephyr sample documentation template (doc/templates/sample.tmpl).

Fix incorrect doxygen group names and missing toctree declarations.
Update dummy drivers to use pm_device_driver_init instead of
pm_device_runtime_enable in their init functions. This removes the pre-
main 'suspending..' log messages. Add
CONFIG_PM_DEVICE_RUNTIME_DEFAULT_ENABLE=y to prj.conf so that runtime
PM is actually enabled for the dummy devices. Update sample.yaml
harness regex to match the new output (no pre-main suspending messages).

The README includes:
- zephyr:code-sample directive with relevant PM APIs
- Overview describing parent-child device PM hierarchy
- Requirements section
- Building and Running instructions with zephyr-app-commands directive
- Sample output verified on qemu_x86
- References to Device Runtime PM documentation

Tested by building and running on qemu_x86, confirming the expected
suspend/resume lifecycle output.

Relates to #27805

Signed-off-by: Seyoung Jeong <seyoungjeong@gmail.com>
2026-03-05 04:41:34 +01:00
Yassine El Aissaoui
f66677833f drivers: mcux_lpuart: Handle STANDBY PM state in state-lock functions
STANDBY state can place the peripheral into a
low‑power state, and transitioning to it before
a TX transmission completes may cause data loss

Signed-off-by: Yassine El Aissaoui <yassine.elaissaoui@nxp.com>
2026-03-05 04:41:25 +01:00
Jose Alberto Meza
20e318b0bd samples: drivers: espi: Update sample to test against NPCX4
Adding missing NPCX4 board overlays that enables eSPI

Signed-off-by: Jose Alberto Meza <jose.a.meza.arellano@intel.com>
2026-03-05 04:41:14 +01:00
Peter Mitsis
8c8666156f tests: mslab: Fix alignment of slab definition
Upgrades the slab alignment from 4 to 8 so that it will work
on both 32-bit and 64-bit platforms. The fact that it was not
failing prior to this patch falls under happenstance as the
compiler was conveniently aligning the buffer to an even larger
boundary.

Signed-off-by: Peter Mitsis <peter.mitsis@intel.com>
2026-03-05 04:41:02 +01:00
Peter Mitsis
eba9fc33c0 doc: mem_slab: Update for 64-bit platforms
The original slab documentation was written with only 32-bit platforms
in mind. Since then support for 64-bit platforms have been added, but
the documented minimum values for alignment (and block sizes too) had
not been updated. This makes it clear that the minimum alignment
required for 32-bit platforms is 4 bytes, and 8 bytes for 64-bit
platforms.

Signed-off-by: Peter Mitsis <peter.mitsis@intel.com>
2026-03-05 04:41:02 +01:00
Peter Mitsis
fa558229af kernel: mem_slab: Change loop variable type
Changes the loop variable type from 'int' to 'uint32_t' in the
create_free_list() routine to match the type of the 'num_blocks'
field. Otherwise, if a very large number of blocks is specified,
the conversion from 'uint32_t' to 'int' could have resulted in
a negative number. The result of this improper conversion would
be an empty free list.

Signed-off-by: Peter Mitsis <peter.mitsis@intel.com>
2026-03-05 04:41:02 +01:00
Andrej Butok
4e4cbdc058 boards: nxp: frdm_mcxw72: switch to jlink default runner
Switches frdm_mcxw72 to the jlink default runner,
as this board is configured to use J-Link.

Signed-off-by: Andrej Butok <andrey.butok@nxp.com>
2026-03-05 04:40:50 +01:00
Lucien Zhao
7be67be0dd samples: adc: support adc_dt/adc_sequence on frdm_imxrt1186
- support adc_dt/adc_sequence on frdm_imxrt1186
- enable channel0/1 for adc test
   Channel 0: GPIO_AD_15 (ADC1_CH1B) via J51-2
   Channel 1: GPIO_AD_16 (ADC1_CH0A) via J51-4, ensure J28 is
              in 2-3 position

Signed-off-by: Lucien Zhao <lucien.zhao@nxp.com>
2026-03-05 04:39:04 +01:00
Lucien Zhao
5ce4d720df boards: frdm_imxrt1186: add lpadc1 instance support
- enable lpadc1 instance for cm33/cm7 cores
- configure lpadc1 ch0/1 channel pins
- support adc_api case on cm33/cm7 cores

Signed-off-by: Lucien Zhao <lucien.zhao@nxp.com>
2026-03-05 04:39:04 +01:00
Albort Xue
d40e921228 drivers: add: mcux_lpadc: Add clock configuration and enable
Add explicit clock configuration and enable calls during driver
initialization.

Note: -ENOSYS is temporarily ignored as not all clock control
drivers currently implement the configure API. This handling
should be removed once all clock drivers support configure.

Signed-off-by: Albort Xue <yao.xue@nxp.com>
2026-03-05 04:38:52 +01:00
Stephan Linz
15bccaeacf MAINTAINERS: include Seeed Studio XIAO RP2350 in RPi Pico Platforms
This commit adds the Seeed Studio XIAO RP2350 under the same assignees
as other of the Raspberry Pi Pico based boards.

Signed-off-by: Stephan Linz <linz@li-pro.net>
2026-03-05 04:38:34 +01:00
Stephan Linz
dbf093fd7f boards: seeed: adds the Seeed Studio XIAO RP2350
Adds basic support for the "Seeed Studio XIAO RP2350" that comes with
2MB on-board QSPI Flash, a yellow user LED on GP25, UART0 as console,
I2C1 and SPI0 as primjary default serial busses, UART1, I2C0 and SPI1
as secondary serial busses, free access to ADC0 - ADC2, and the
following add-ons:

- support for the digital on-board RGB LED at GP22 over PIO0
  with power switch (enable) on GP23 (as fixed regulator)
- support for the on-board battery charging circuit with simple
  voltage monitoring of VBAT/2 at ADC3 and gated over a second
  power switch on GP19 (as fixed regulator)
- support for the Seeed Studio XIAO pin header
- support for the Seeed Studio XIAO expantion test pads with
  additional signals (secondary busses) on the PCB bottom side

Signed-off-by: Stephan Linz <linz@li-pro.net>
2026-03-05 04:38:34 +01:00
Stephan Linz
c61b1f59da dts: bindings: add generic Xiao test pad interconnection
Some newer XIAO boards provide additional signals on the bottom side via
testing pads. This adds the new corresponding 'seeed-xioa-pads.yaml' DTS
binding for new nexus node.

Signed-off-by: Stephan Linz <linz@li-pro.net>
2026-03-05 04:38:34 +01:00
Stephan Linz
9d795aded9 dts: bindings: improve documentation for seeed-xiao-header
This fix some typos and provide a clear description of the different
signals and their general meaning.

Signed-off-by: Stephan Linz <linz@li-pro.net>
2026-03-05 04:38:34 +01:00
Vixay Phimmasane
e02e04098b boards: shields: add support for ZHAW Luma Matrix Shield
add support for ZHAW Luma Matrix Shield

Signed-off-by: Vixay Phimmasane <me@visuphi.ch>
2026-03-05 04:38:21 +01:00
Duy Nguyen
dfafe4fb0d MAINTAINERS: Update Renesas files to cover mdio folder change
The mdio driver is moved into Ethernet driver folder
this change maintainer file to cover the change

Signed-off-by: Duy Nguyen <duy.nguyen.xa@renesas.com>
2026-03-05 04:38:09 +01:00
Duy Nguyen
e2dd203072 soc: renesas: ra: Select ARM MPU as default for RA8x2
Make ARM MPU configuration default for RA8x2 family to support
CPU caching

Signed-off-by: Duy Nguyen <duy.nguyen.xa@renesas.com>
2026-03-05 04:38:09 +01:00
Nhat Ta
b54b473d99 board: renesas: add ethernet for ra8x2 boards
This commit add ethernet support for ek_ra8p1, ek_ra8m2,
ek_ra8d2, mck_ra8t2.

Signed-off-by: Nhat Ta <nhat-minh.ta.yn@bp.renesas.com>
2026-03-05 04:38:09 +01:00
Nhat Ta
ea64ea10cb drivers: ethernet: phy: add Maxlinear GPY111 phy driver
This commit add phy driver support for Maxlinear GPY111. This driver
implements vendor specific behaviour rgmii delay time setup, which is
not present in the generic MII driver.

Signed-off-by: Nhat Ta <nhat-minh.ta.yn@bp.renesas.com>
2026-03-05 04:38:09 +01:00
Nhat Ta
bafe07beeb dts: arm: renesas: ra: ra8: add Ethernet for ra8x2
This commit define eswm module for ra8x2 that includes ethernet
and mdio nodes.

Signed-off-by: Nhat Ta <nhat-minh.ta.yn@bp.renesas.com>
2026-03-05 04:38:09 +01:00
Nhat Ta
cc4debfeca drivers: mdio: initial support for mdio rmac driver
This commit add mdio driver support for ra8x2.

Signed-off-by: Nhat Ta <nhat-minh.ta.yn@bp.renesas.com>
2026-03-05 04:38:09 +01:00
Nhat Ta
d188d066a3 drivers: ethernet: Put DMA buffer to nocache
This commit put ethernet buffers and descriptors to nocache .

Signed-off-by: Nhat Ta <nhat-minh.ta.yn@bp.renesas.com>
2026-03-05 04:38:09 +01:00
Nhat Ta
65fbe9c9aa drivers: ethernet: initial support for ethernet rmac driver
This commit add ethernet driver support for ra8x2.

Signed-off-by: Nhat Ta <nhat-minh.ta.yn@bp.renesas.com>
2026-03-05 04:38:09 +01:00
Nhat Ta
5fc6276541 drivers: entropy: add trng for ra8x2
This commit add entropy support for ra8x2.

Signed-off-by: Nhat Ta <nhat-minh.ta.yn@bp.renesas.com>
2026-03-05 04:38:09 +01:00
Nhat Ta
a0045e522e manifest: update hal_renesas revision
Change hal_renesas revision to support ethernet for ra8x2

Signed-off-by: Nhat Ta <nhat-minh.ta.yn@bp.renesas.com>
2026-03-05 04:38:09 +01:00
Camille BAUD
a2ae1272e3 boards: qualcomm: Add QCC744M EVK
Adds the QCC744M EVK, using Bouffalolab port

Signed-off-by: Camille BAUD <mail@massdriver.space>
2026-03-05 04:37:47 +01:00
Amneesh Singh
014b2db1f7 soc: ti_k3: am6x: enable cache for R5 cores
Enable cache during soc early init for Cortex-R5F cores in the TI AM6x
series.

Signed-off-by: Amneesh Singh <amneesh@ti.com>
2026-03-04 16:44:38 +00:00
farsin NASAR V A
9b6022061b tests: drivers: dac: Added sam_e54_xpro test support files
Added sam_e54_xpro.overlay file and sam_e54_xpro.conf file

Signed-off-by: farsin NASAR V A <farsin.nasarva@microchip.com>
2026-03-04 16:44:27 +00:00
Alexander Wachter
1b6f1c102b soc: gd32vf103: add soc.h
Add soc.h file that includes the hal soc headers.

Signed-off-by: Alexander Wachter <alexander@wachter.cloud>
2026-03-04 16:44:03 +00:00
Alberto Escolar Piedras
cf144f27ae cmake: FindBabbleSim: Ensure BSIM variables are available everywhere
Ensure the two BSIM variables BSIM_OUT_PATH and BSIM_COMPONENTS_PATH are
available everywhere also as a cmake variable as quite a few apps use
them. (Some apps try to get them as an environment var, some as a cmake
var).

When the user had them set in the environment, and the BabbleSim module
uses zephyr_get() to try to find them, this also sets them globally.
But otherwise, if we just deduced them in this module, we were only
setting them in the enviroment, so apps which expected them globally
would not build properly.

As bonus, add a cache variable to mark the module as found, so if
find_package(BabbleSim) is called again, we just skip it.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2026-03-04 16:43:53 +00:00
Robert Lubos
a909dc8296 net: ipv6: mld: Return 0 if address was already joined
In case address was already joined, return 0 instead of an error code to
avoid confusion.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2026-03-04 16:43:42 +00:00
Robert Lubos
f84eeb9deb net: ipv4: igmp: Return 0 if address was already joined
In case address was already joined, return 0 instead of an error code to
avoid confusion.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2026-03-04 16:43:42 +00:00
Robert Lubos
b2ce248e23 tests: net: iface: Align tests with mcast ref counting
Align interface tests with multicast address ref counting changes:

* net_if_ipv6_maddr_add() does not fail now on second attempt, but
  rather bumps the ref counter, verify that the address pointer returned
  is the same instead.

* Solicited-node addresses won't be added twice, so instead of checking
  if second adding attempt fails, check if address already exist
  instead.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2026-03-04 16:43:42 +00:00