Commit graph zephyr/dts
Author SHA1 Message Date
Sylvio Alves
1343660a91 soc: espressif: add esp32p4 nocache memory support
Add non-cacheable memory support on the esp32p4 by reserving a
power-of-two window at the top of HP SRAM and marking it
non-cacheable with a PMA NAPOT entry at boot. The window keeps its
normal cached address so it stays reachable by the DMA engine,
while CPU accesses bypass the cache, so both masters see coherent
data through one address.

The region size comes from the sramhp_nocache devicetree node and
the base is derived per silicon revision, whose SRAM and cache
layouts differ. The PMA entry is re-applied on wake from standby
because the PMA CSRs are volatile across CPU power-down sleep.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2026-07-14 20:07:22 -04:00
Laura Carlesso
33b508a7ff dts: infineon: pse84: Resolve warning avoid_unnecessary_addr_size
The comparator nodes had  address-cells and size-cells
without ranges or a child reg property causing warnings
at build time. Removed them as they are unnecessary.

Signed-off-by: Laura Carlesso <laura.carlesso@infineon.com>
2026-07-14 20:07:13 -04:00
Oliver Schmidhauser
e72986dc95 drivers: adc, gpio, mfd: add TLA2528 driver
Adds support for the TI TLA2528 I2C ADC with GPIOs.
The TLA2528 is a 12-bit 8-channel ADC, where each channel can also be
configured as a GPIO in- or output in push-pull or open-drain.

Signed-off-by: Oliver Schmidhauser <oliver.schmidhauser@leica-geosystems.com>
2026-07-14 09:56:45 -04:00
Sylvio Alves
9efa09f562 drivers: mbox: esp32 mailbox support on esp32c5 and esp32p4
Add esp32c5 and esp32p4 support to the esp32 mailbox driver. The HP and
LP cores signal each other through the PMU software interrupt, the same
mechanism used on the esp32c6, with the esp32p4 LP interrupt status bit
handled per its register layout.

The esp32p4 LP core uses a multi-vectored interrupt controller that
jumps directly to the handler, so tag the LP PMU handler with
LP_CORE_ISR_ATTR so it saves and restores registers and returns with
mret; on the single-vector esp32c5 and esp32c6 the attribute is empty.
Also shrink the esp32p4 LP ulp_ram region so it stops before the shared
ulp_shm block that holds the mailbox coordination data, matching the HP
view and preventing the loader from clobbering it.

Mark the esp32c5 and esp32p4 mailbox nodes okay to match the other socs.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2026-07-14 09:54:55 -04:00
Soumya Tripathy
4e2d92f8bf dts: ti: am62l: add wakeup RTC peripheral support
Enable wakeup RTC peripheral support as zephyr counter for
AM62L SoC.

Signed-off-by: Soumya Tripathy <s-tripathy@ti.com>
2026-07-14 09:53:51 -04:00
cyliang tw
ff72037a4d dts: arm: nuvoton: add uspi nodes for numaker m031x
Update m031x.dtsi to include uspi configuration.

Signed-off-by: cyliang tw <cyliang@nuvoton.com>
2026-07-14 09:53:31 -04:00
Deepika R
e601e4a650 soc: infineon: psoc4: Add power management support
- Add power management support for Infineon PSOC4 for Deepsleep.
- Configure Watchdog Timer as the wakeup source.

Signed-off-by: Deepika R <deepika@aerlync.com>
Signed-off-by: Sayooj K Karun <sayooj@aerlync.com>
Co-authored-by: Niranjan M <niranjan@aerlync.com>
2026-07-14 09:53:21 -04:00
Holt Sun
8e0ba3bb3c drivers: counter: mcux_ctimer: add capture support
Add support for the counter capture API to the MCUX CTIMER driver.
The driver stores capture callbacks per channel, maps Zephyr edge
flags to CTIMER capture modes, enables capture interrupts, and reports
captured TC values from the CTIMER CR registers.

Capture is mutually exclusive with alarms on the same channel because
both features share the counter channel namespace. Add optional
pinctrl and INPUTMUX routing support so boards can route CTIMER capture
sources from devicetree without changing the public counter API.

Signed-off-by: Holt Sun <holt.sun@nxp.com>
2026-07-13 16:43:16 +02:00
Zhaoxiang Jin
a4847e3c80 dts: arm: nxp_rt118x: support vref on rt118x
support vref on rt118x

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2026-07-13 16:39:17 +02:00
DineshKumar Kalva
21958f13cf dts: amd: acp_7_x: add TDM DAI and DMA device tree nodes
Add three TDM DAI instances (tdm_dai0/1/2) and one unified
acp_tdm_dma DMA controller node to the ACP 7.X device tree.

Update dma-channels default to 6 (2 per instance x 3 TDM
instances) in Kconfig.acp_tdm.

Signed-off-by: DineshKumar Kalva <DineshKumar.Kalva@amd.com>
Signed-off-by: Sneha Voona <sneha.voona@amd.com>
2026-07-13 10:21:57 +01:00
Aleksandrs Sevastjanovs
1f97fa9d32 drivers: display: ssd16xx: enable SSD1680 RAM ping-pong
SSD1680 supports RAM ping-pong for display mode 2 through the display
option register. Enable F[6] when switching to the partial refresh
profile so partial updates can use the controller's buffer swap behavior.

Expose this as a "ram-ping-pong-mode2" devicetree property on the
SSD1680-specific binding.

Signed-off-by: Aleksandrs Sevastjanovs <sevalks@gmail.com>
2026-07-13 09:49:22 +02:00
Allen Zhang
537f952b2f drivers: clock_control: nxp_mcxw7x: gate SIRC on DT sirc-supported
Replace the CONFIG_SOC_MCXW70AC / CONFIG_SOC_MCXW716C Kconfig guards
that conditionalize SIRC hardware access with a new DT boolean
property 'sirc-supported' on the nxp,mcxw7x-clock binding.

MCXW70 and MCXW71 carry the SIRC hardware block; MCXW72 (MCXW727C)
does not - its SIRCCSR register block was removed from the SDK
headers, making kCLOCK_ScgSircClk, CLOCK_UnlockSircControlStatusReg,
scg_sirc_config_t, kSCG_SircEnableInSleep and CLOCK_InitSirc
undefined at build time for frdm_mcxw72.

Set sirc-supported in the MCXW70 and MCXW71 clk_ctrl DT nodes.
Leave it absent on MCXW72 so DT_INST_PROP(0, sirc_supported)
evaluates to 0 at compile time, bypassing all three affected sites:
  - get_rate() FRO_6M: fall back to the fixed 6000000U constant
  - clock_control_init(): skip CLOCK_UnlockSircControlStatusReg()
  - clock_control_init(): skip the SIRC LP-mode init block,
    which also bypasses enable_sirc_in_lp_mode

Move enable-sirc-in-lp-mode out of nxp_mcxw7x_common.dtsi (where
it was incorrectly inherited by MCXW72) into the MCXW70/MCXW71
per-variant DTS nodes.

Tested: west build -p=always -b frdm_mcxw72 tests/lib/cpp/cxx
builds cleanly after this change.

Signed-off-by: Allen Zhang <chunfeng.zhang@nxp.com>
2026-07-13 09:46:57 +02:00
Muhammad Waleed Badar
005ca62f3c drivers: pinctrl: bcm2711: add ngpios devicetree property
Add a required ngpios property to the BCM2711 pinctrl binding
and set it in the SoC dtsi. Update the driver to read the number
of GPIOs from devicetree via DT_INST_PROP.

This makes the GPIO count explicit in devicetree and avoids
hardcoded assumptions in the driver.

Signed-off-by: Muhammad Waleed Badar <walid.badar@gmail.com>
2026-07-11 07:30:36 -04:00
Aksel Skauge Mellbye
b01be6b7b1 dts: arm: silabs: Fix Series 0/1 LF clock frequency
Series 0 and 1 have 32768 Hz low-frequency oscillators, while
DT_FREQ_K(32) is 32000 Hz.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2026-07-10 22:34:49 +02:00
Axel Le Bourhis
22ed52d7b0 drivers: clock_control: mcxw7x: fix OSC32K load cap and coarse gain
The MCXW7x clock controller configured the OSC32K 32 kHz crystal
oscillator with an 8 pF internal load capacitance (cap value 4) on
both the XTAL and EXTAL pins, and hardcoded the amplifier coarse
gain to Range0. This configuration leads to a clock precision issue
of around 180 ppm on the 32 kHz clock.

A 16 pF internal load capacitance is the best configuration to
achieve the best precision, together with a per-SoC coarse amplifier
gain. Fix the default configuration:
- Use a 16 pF internal load capacitance on XTAL and EXTAL.
- Add an osc32k-coarse-adjustment devicetree property so the coarse
  amplifier gain is configurable (the driver previously forced
  Range0), and wire it into the CCM32K oscillator config.
- Set the coarse gain per SoC: Range3 on MCXW72, Range1 on MCXW71.
  MCXW70 is aligned with MCXW72 (Range3).

Also add named dt-bindings macros for the OSC32K load capacitance
(MCXW_CLK_OSC32K_CAP_*pF, value N maps to 2*N pF) and coarse gain
(MCXW_CLK_OSC32K_COARSE_RANGE*) so the devicetree no longer relies
on opaque magic numbers.

Built samples/hello_world for frdm_mcxw70, frdm_mcxw71 and
frdm_mcxw72 and verified the generated devicetree resolves to 16 pF
caps with coarse gain Range3 (W70/W72) and Range1 (W71).

Signed-off-by: Axel Le Bourhis <axel.lebourhis@nxp.com>
2026-07-10 08:55:36 -05:00
Etienne Carriere
931f9c5035 dts: bindings: remove default value from required properties
Remove the default value for DT properties that are required.

Edtlib.py mandates DTS files to provide a value for required properties
even when a default value is defined in the YAML file hence no functional
changes.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2026-07-10 08:52:35 -05:00
Sven Ginka
70f1f0ace1 dts: bindings: add vendor prefix for Heimann Sensor GmbH
Add vendor for eval board and ir/thermopile camera devices.

Signed-off-by: Sven Ginka <s.ginka@sensry.de>
2026-07-10 08:52:22 -05:00
Swift Tian
78f9b99ef6 bindings: update mspi bindings names and compat string
The binding filename is updated to (vendor,)[device]-mspi.yaml
The compat string is updated to (vendor,)[device]
Fixing https://github.com/zephyrproject-rtos/zephyr/issues/107020

Signed-off-by: Swift Tian <swift.tian@ambiq.com>
2026-07-10 08:51:14 -05:00
Adrian Śliwa
2150a55a0d dts: riscv: openisa: rv32m1: fix peripheral reg sizes
Several peripheral reg sizes in rv32m1.dtsi are too small and do not
cover their full documented register maps.

Update the affected ranges to match the actual peripheral layouts:

  gpio*:   0x14  -> 0x40    PDDR @ 0x14 ends at 0x18; 0x40 matches
                            the 0x40-aligned port slots and every
                            other Kinetis dtsi (nxp_kw41z, nxp_k6x,
                            nxp_k2x, nxp_k8x, nxp_ke1x*).
  lpuart*: 0x2C  -> 0x1000  WATER @ 0x2C ends at 0x30; 0x1000
                            matches nxp_k8x and nxp_k32l2b3.
  lpi2c*:  0x170 -> 0x1000  SRDR @ 0x170 ends at 0x174; 0x1000
                            matches the 0x1000-spaced layout.
  pcc*:    0x200 -> 0x1000  CLKCFG[130] runs to 0x208; 0x1000
                            matches nxp_ke1xf/nxp_ke1xz.
  intmux1: 0x20  -> 0x200   Typo - intmux0 (same IP, same struct)
                            is 0x200.

Signed-off-by: Adrian Śliwa <asliwa@internships.antmicro.com>
2026-07-10 11:31:47 +01:00
Qiang Zhao
995e7184b4 dts: arm: nxp: imx952: Add #address-cells to IRQSTEER masters
Add missing #address-cells = <0> property to all IRQSTEER
interrupt-controller master nodes to eliminate devicetree warnings.

Adding #address-cells = <0> indicates that interrupt specifiers do
not contain address information, only interrupt number and flags.

Signed-off-by: Qiang Zhao <qiang.zhao@nxp.com>
2026-07-10 11:29:47 +01:00
Qiang Zhao
8a7d57090d dts: nxp: imx952: add and enable SAR ADC node
Add sar_adc node to nxp_imx952_m7.dtsi.
Enable it on imx952_evk M7 board and add adc to supported features.

Signed-off-by: Qiang Zhao <qiang.zhao@nxp.com>
2026-07-10 11:29:47 +01:00
Amneesh Singh
ea4fc4e68d am62l_evm: am62l3: a53: add support for TI ECAP
Add DT nodes for TI's Enhanced Capture module.

Signed-off-by: Amneesh Singh <amneesh@ti.com>
2026-07-09 18:03:11 -04:00
Amneesh Singh
646956138d am243x_evm: am2434: r5f0_0: add support for TI ECAP
Add DT nodes for TI's Enhanced Capture module.

Signed-off-by: Amneesh Singh <amneesh@ti.com>
2026-07-09 18:03:11 -04:00
Amneesh Singh
bec4e78f69 drivers: pwm: introduce ti_am3352_ecap
This patch adds driver support for TI ECAP module which can capture an
external input or work as a standalone APWM generator.

Signed-off-by: Amneesh Singh <amneesh@ti.com>
2026-07-09 18:03:11 -04:00
TOKITA Hiroshi
4f69eb584b dts: pcie: epdpoint: Add brcm,iproc-pcie-ep-v2
ADd `brcm,iproc-pcie-ep-v2` to represent the version difference
with `brcm,iproc-pcie-ep`.

This property can replace the CONFIG_PCIE_EP_IPROC_V2.
So, we removed it.

Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@gmail.com>
2026-07-09 18:02:38 -04:00
Qiang Zhao
266e2d074c dts: nxp: fix TSTMR clock-frequency to 24 MHz on i.MX93/943/95/952
The TSTMR on i.MX93, i.MX943, i.MX95 and i.MX952 runs at 24 MHz
(sourced from the 24 MHz OSC). Correct the clock-frequency property
from the erroneous 1 MHz to 24 MHz in the respective dtsi files.

Signed-off-by: Qiang Zhao <qiang.zhao@nxp.com>
2026-07-09 10:32:27 -05:00
Simon Maurer
cba0c93dd2 soc: xlnx: zynq7000: add I2C Controllers
Add device tree nodes for the Cadence I2C controllers.

Signed-off-by: Simon Maurer <mail@maurer.systems>
2026-07-09 13:41:49 +01:00
Neil Chen
5246eb0d11 dts: arm/nxp: Add opamp nodes to NXP MCXA344 dtsi file
Add opamp nodes to NXP MCXA344 dtsi file

Signed-off-by: Neil Chen <cheng.chen_1@nxp.com>
2026-07-09 10:11:24 +01:00
Richard Wheatley
9de93e6534 dts: ambiq: add flash controllers
Add ambiq,flash-controller and soc-nv-flash nodes to ambiq_apollo2.dtsi.
Correct the flash controller binding in ambiq_apollo4p_blue.dtsi. Add the
MRAM controller node to ambiq_apollo510.dtsi; no register base is needed
as the driver programs MRAM via bootROM helper functions.

Signed-off-by: Richard Wheatley <richard.wheatley@ambiq.com>
2026-07-09 07:58:28 +02:00
Michael Zimmermann
cffe6ba8bf soc: silabs: efr32mg13p: add support for trng
This allows for more secure entropy, which is useful for e.g. Bluetooth or
OpenThread. The changes were adapted from xg12.dtsi.

Signed-off-by: Michael Zimmermann <michael.zimmermann@sevenlab.de>
2026-07-08 17:17:16 +01:00
TOKITA Hiroshi
a1157b023f dts: arm64: rockchip: rk3568: Fix leading zeros warning
Address parameter is not accepts zero leaded value expression
such as `@000`.  Fix it to simple `@0`

Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@gmail.com>
2026-07-08 17:16:24 +01:00
Guillaume Gautier
36a7f0a614 soc: st: stm32c5: add power management support
Enable STM32C5 PM integration in soc build and Kconfig, and add power
state definitions for STOP0 and STOP1 in stm32c5.dtsi.

Add soc-level PM implementation files for suspend-to-idle and poweroff
handling on STM32C5.

Assisted-by: GitHub Copilot:GPT-5.3-Codex
Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2026-07-08 17:15:29 +01:00
Guillaume Gautier
9da111b5d0 dts: arm: st: stm32c5: add lptim1 node
Add the lptim1 node to stm32c5.dtsi with clocks, reset, IRQ, and
U5-style LPTIM compatible strings.

This enables board-level selection of LPTIM as a low-power tick source
on STM32C5 targets.

Assisted-by: GitHub Copilot:GPT-5.3-Codex
Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2026-07-08 17:15:29 +01:00
Guillaume Gautier
d8804865a9 drivers: timer: stm32_lptim: switch U5-style handling to DT compat
Switch the STM32 LPTIM timer driver from SoC-series checks to a
Devicetree compatible check for U5-style LPTIM instances.

Update STM32 dtsi files to advertise "st,stm32u5-lptim" alongside
the legacy compatible so the new detection path is used consistently.

Assisted-by: GitHub Copilot:GPT-5.3-Codex
Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2026-07-08 17:15:29 +01:00
Guillaume Gautier
06c6c3b439 dts: bindings: timer: add st,stm32u5-lptim
Add a dedicated Devicetree compatible for STM32 U5-style LPTIM
instances and include the common STM32 LPTIM binding schema.

This provides a stable compatible to key driver behavior on register
interface differences.

Assisted-by: GitHub Copilot:GPT-5.3-Codex
Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2026-07-08 17:15:29 +01:00
Mario Paja
a6dcd69213 dts: st: l4+ fix sai dma slot
These changes match the SAI DMA Slot to DMAMUX
Request

Signed-off-by: Mario Paja <mariopaja@hotmail.com>
2026-07-08 17:14:42 +01:00
Fabrice DJIATSA
db8e1f7692 tests: subsys: sd: sdmmc: cleanup redundant properties
Remove/move some properties to the correct place.

- Move interrupt-names properties to the dtsi level.
- Remove other properties that are already present in the
  board dts/dtsi level.

Signed-off-by: Fabrice DJIATSA <fabrice.djiatsa-ext@st.com>
2026-07-08 17:14:03 +01:00
Sylvio Alves
f61a2d5440 drivers: udc_dwc2: add esp32p4 usb otg-hs device controller
Add the ESP32-P4 USB-OTG high-speed controller using the
espressif,esp32-usb-otg-hs binding and the internal UTMI PHY. The
high-speed PHY uses dedicated pins, so no pad configuration is
needed. Enable the controller on the function ev board.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2026-07-08 17:13:54 +01:00
Sylvio Alves
cb7f6f9b50 drivers: udc_dwc2: add generic espressif fs usb otg quirk
Introduce a shared Espressif USB-OTG binding scheme and rename the
existing full-speed quirk to the speed specific
espressif,esp32-usb-otg-fs compatible. The internal PHY D+/D- pad
numbers now come from the phy-dp-pin and phy-dm-pin device tree
properties, so migrate the esp32s3 node accordingly.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2026-07-08 17:13:54 +01:00
Sylvio Alves
839b29c5b0 dts: espressif: esp32p4: add usb otg full-speed controller node
Add the ESP32-P4 USB-OTG full-speed controller node using the
espressif,esp32-usb-otg-fs binding, with the internal PHY D+/D- pad
numbers provided through the phy-dp-pin and phy-dm-pin properties.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2026-07-08 17:13:54 +01:00
Eve Redero
61a6987a34 dts: atmel: add dac node to sam3x
Add the DAC node to SoC description for Atmel sam3x series

Signed-off-by: Eve Redero <eve.redero@gmail.com>
2026-07-08 17:11:14 +01:00
Lauren Murphy
7a2c4bc9d9 arch: instr mem api
Adds arch-level instruction memory API with functions
for memcpying / memsetting and determining whether a
region is in instruction memory. Implement API for
Xtensa and ESP32, with support for word granular access.
Adds definitions for instruction memory to
Xtensa ESP32 platforms.

Signed-off-by: Lauren Murphy <lauren.murphy@intel.com>
2026-07-08 17:10:58 +01:00
Amneesh Singh
09e776e72a am62l_evm: am62l3: a53: add support for TI EPWM
Add DT nodes for TI's Enhanced PWM. This requires addition of a syscon node
as well to configure the timebase clock.

Signed-off-by: Amneesh Singh <amneesh@ti.com>
2026-07-08 17:10:15 +01:00
Amneesh Singh
09de0d347c am243x_evm: am2434: r5f0_0: add support for TI EPWM
Add DT nodes for TI's Enhanced PWM. This requires addition of a syscon node
as well to configure the timebase clock.

Signed-off-by: Amneesh Singh <amneesh@ti.com>
2026-07-08 17:10:15 +01:00
Amneesh Singh
539f5c316d dts: ti: am64x: add TISCI clock controller
Add the TISCI clock controller with the node label k3_clks.

Signed-off-by: Amneesh Singh <amneesh@ti.com>
2026-07-08 17:10:15 +01:00
Amneesh Singh
9ee0024c07 drivers: pwm: introduce ti_am3352_ehrpwm
This is the driver for EPWM/EHRPWM module of TI SoCs. It only uses Action
Qualifier submodule currently.

Signed-off-by: Amneesh Singh <amneesh@ti.com>
2026-07-08 17:10:15 +01:00
Amneesh Singh
c1a1b1be5a dts: ti,control-module: add epwm-tbclk space-specifier
Add a specifier space for configuring timebase clock for TI's Enhanced PWM
via syscon.

Signed-off-by: Amneesh Singh <amneesh@ti.com>
2026-07-08 17:10:15 +01:00
Camille BAUD
1fa8bee594 dts: bflb: Add BL616CL DTS
Add BL616CL DTS tree with all working devices

Signed-off-by: Camille BAUD <mail@massdriver.space>
2026-07-08 10:01:48 +02:00
Camille BAUD
1430fe7c3b drivers: clock_control: Add BL616CL clock control driver
Add a clock_control driver for BL616CL

Signed-off-by: Camille BAUD <mail@massdriver.space>
2026-07-08 10:01:48 +02:00
Camille BAUD
f7aea10f7a soc: bflb: Add BL616CL SoC Series
Add soc files and support for BL616CL

Signed-off-by: Camille BAUD <mail@massdriver.space>
2026-07-08 10:01:48 +02:00