Commit graph zephyr/dts
Author SHA1 Message Date
Fabio Baltieri
a0fcce9cb2 input: replace few BUILD_ASSERT with min-len and max-len
Replace few BUILD_ASSERT(DT_INST_PROP_LEN(..)) with min-len and max-len
properties.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2026-06-04 23:50:20 +02:00
Benjamin Cabé
26e87b1459 dts: bindings: renesas,rcar-mfis-mbox: update dts snippet
The "examples" section of the renesas,rcar-mfis-mbox.yaml was containing
an invalid dts fragment. Fix it.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2026-06-04 18:22:30 +02:00
Martin Hoff
ee852fa416 drivers: adc: siwx91x: add PM device support to ADC driver
This patch adds PM device support to the siwx91x ADC driver. It allows
the ADC to be reconfigured after waking from deep sleep. Without this
patch, the ADC peripheral fails to return valid values after the system
resumes from deep sleep.

Signed-off-by: Martin Hoff <martin.hoff@silabs.com>
2026-06-04 14:05:14 +02:00
Adrien Ricciardi
502c43cb90 dts: bindings: i2c: Add pinctrl support to the R-Car I2C driver
Allow to set the required pinctrl properties from the corresponding
device tree nodes.

Signed-off-by: Adrien Ricciardi <aricciardi@baylibre.com>
2026-06-04 14:04:34 +02:00
Julien Panis
da38c467c6 dts: arm: renesas: rcar: gen5: Add I2C support
Add I2C1 to I2C8 bus interfaces. Do not add I2C0 which is used by SCP.

Signed-off-by: Julien Panis <jpanis@baylibre.com>
2026-06-04 14:04:02 +02:00
Julien Panis
669ec66d67 soc: renesas: rcar_gen5: Add power domain support
Power domains may be turned on/off through SCMI (System Control
and Management Interface).

Signed-off-by: Julien Panis <jpanis@baylibre.com>
2026-06-04 14:04:02 +02:00
Julien Panis
b28cd2f9ab soc: renesas: Add support for R-Car Gen5 series
These SoCs are provided with:
- Arm Cortex-A720AE application cores (8 clusters x 4 cores)
- Arm Cortex-R52 real-time cores (3 clusters x 4 cores)
- Arm Cortex-M33 system control processor

Signed-off-by: Julien Panis <jpanis@baylibre.com>
2026-06-04 14:04:02 +02:00
Julien Panis
6a4546785f drivers: mbox: Add support for Renesas R-Car MFIS
The multifunctional interface (MFIS) provides an interface
between the different CPU core domains (AP/RT, AP/SCP and
RT/SCP).

Signed-off-by: Julien Panis <jpanis@baylibre.com>
2026-06-04 14:02:54 +02:00
Axel Le Bourhis
5be96e1125 soc: mcxw70: soc bringup
- Adapt to new MCXW7x clock control
- disable HDI pins
- use flw on non secure range
- enable lpuart1 and use it for uart-pipe, bt-c2h-uart and shell-uart
- configure sys clock to 96MHz for core0 and 48MHz for core1
- use PTA18 for LPUART0 RX pin as workaround for board issue
- fix LPTMR clock source to 32K
- place main stack at beginning of the RAM to workaround boot issue
- move shared memory to third bank (instead of the second) - last 8K

Signed-off-by: Axel Le Bourhis <axel.lebourhis@nxp.com>
2026-06-04 14:01:15 +02:00
Thomas Decker
d32a1a505a dts: arm: st: g4: Add comp3 to comp7 nodes to stm32g473
Adding missing comp3 & comp4 node to g4 (all g4 have 4 comparators).
Adding missing comp5, comp6 & comp7 to stm32g473 (all g473 and derived
types have 7 comparators).

Add configdefaults for SHARED_IRQ_MAX_NUM_CLIENTS and SHARED_INTERRUPTS
to the soc's Kconfig.defconfig.

Signed-off-by: Thomas Decker <decker@jb-lighting.de>
2026-06-04 11:07:07 +02:00
Silesh C V
b646b6b908 boards: alif: ensemble: remove soc-nv-flash and partitions from MRAM
Alif MRAM is a random access non-volatile memory that is directly
mapped to the address space of the application core and is available
from reset. A flash driver is not yet available for this device. So
remove "soc-nv-flash" compatible and support for the "fixed-partitions"
from the MRAM node. Fix the board dts files as per this change. This
correctly makes the MRAM node simply a "zephyr,memory-region" so that
the linker can place the ROM image there.

Note that this fix has already been made for the Balletto family
SoC/boards.

Related-to: #107737

Signed-off-by: Silesh C V <silesh@alifsemi.com>
2026-06-04 08:43:27 +02:00
Qiang Zhao
00d894c929 dts: arm: nxp: add i.MX952 M7 core devicetree
Add devicetree source for i.MX952 Cortex-M7 core including:
- Memory regions (ITCM, DTCM, OCRAM, DDR)
- Interrupt controller (GIC, IRQSTEER)
- SCMI clock and power domain support
- Peripheral definitions (LPUART, LPI2C, LPSPI, ENET, etc.)
- DMA controllers (EDMA)
- Timers (TPM, GPT)
- GPIO controllers
- Mailbox (MU) interfaces

Signed-off-by: Qiang Zhao <qiang.zhao@nxp.com>
2026-06-04 08:41:59 +02:00
Tyler Baker
0d37fbfab8 drivers: display: add charlieplex LED matrix driver
Add a display driver for monochrome and grayscale LED matrices driven by
charlieplexed GPIOs. With N GPIO lines such a matrix can drive up to
N*(N-1) LEDs: each pixel sits between an ordered pair of lines and is lit
by driving one line high and one low while every other line is held at
high impedance. Only one LED is lit at a time; a timer scans the pixels
fast enough for persistence of vision.

The driver implements the display API. It keeps a per-pixel framebuffer
and uses a counter device as the scan time source, lighting the next
pixel on each top-value callback. Grayscale is produced by duty
modulation over a configurable number of sub-frames. To stay portable
across SoCs it drives the matrix purely through the generic GPIO API,
configuring the inactive lines as disconnected to obtain the required
high-impedance state rather than touching the GPIO registers directly.

The GPIO bank, the per-pixel high/low pin-pair map, the scan timer,
refresh rate and grayscale depth are all described in devicetree through
the new charlieplex-led-matrix binding.

Signed-off-by: Tyler Baker <tyler.baker@oss.qualcomm.com>
Assisted-by: Claude Code:claude-opus-4.8
2026-06-03 18:28:33 -04:00
Etienne Carriere
dfac16c73c dts: bindings: usb: audio: clarify range of volume values
Use min/max DT properties instead of providing an informative
only range description in usb-audio-hp and usb-audio-hs compatible
devices YAML file.

This change provides a cleaner build time error trace message when
the values are out of bounds while previously implementation relied
on these values being stored in 16-bit fields.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2026-06-03 18:27:41 -04:00
Etienne Carriere
2f82b722f1 dts: bindings: usb-c: clarify {source|sink}-{pdos|vdos} range info
Clarify that the range information for source-pdos, sink-pdos,
sink-vdos and sink-vdos-v1 DT properties in usb-c-connect DT YAML
file relate to the number of elements in the property array, not
the elements value ranges.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2026-06-03 18:27:41 -04:00
Etienne Carriere
b486d3a7e1 dts: bindings: reset: use min/max properties in reset-mmio
Use min/max DT properties for reset num-resets DT properties to factorize
documentation and build time check of the property values against its
valid range.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2026-06-03 18:27:28 -04:00
Etienne Carriere
fec7063f7c dts: bindings: adc: use min/max properties in ADC emulation
Use min/max DT properties for ADC nchannels DT properties to factorize
documentation and build time check of the property values against its
valid range.

Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
2026-06-03 18:27:28 -04:00
Sylvio Alves
f4be16c6e5 dts: riscv: espressif: add esp32p4 device tree
Add the device tree for the ESP32-P4 SoC: HP-core peripherals
(cpu, intc, gpio, uart, i2c, spi, dma, ledc, etc.), LP-core
memory regions, on-chip LDO regulator node and the LP-core
specific dtsi.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2026-06-03 18:27:15 -04:00
Qiang Zhang
b237ffd8db dts: arm: nxp: imx95: add EDMA1 controller node for M7 core
- Add EDMA1 controller node at base address 0x44000000.
- 32 DMA channels with 32 interrupt lines.
- EDMA version 4 compatible (compatible = "nxp,mcux-edma").
- Node is left disabled by default; boards opt in.

Signed-off-by: Qiang Zhang <qiang.zhang_6@nxp.com>
2026-06-03 18:38:23 +02:00
Alexpandi Muniyandi
2ddccfbd0a dts: bindings: audio: Add binding support for tlv320aic26
Add binding support for tlv320aic26 audio codec

Signed-off-by: Alexpandi Muniyandi <alexpandi@linumiz.com>
2026-06-03 18:37:09 +02:00
Jérôme Pouiller
233545d1e6 drivers: spi: siwx91x: Simplify DMA configuration
SPI_SILABS_SIWX91X_GSPI_DMA and SPI_SILABS_SIWX91X_GSPI_DMA_MAX_BLOCKS are
redundant. We can achieve the same by checking if
SPI_SILABS_SIWX91X_GSPI_DMA_MAX_BLOCKS > 0.

Then, rather than pulling the DMA if one device use it, automatically use
the DMA it exist (the user can still disable it by settings DMA_MAX_BLOCKS
== 0).

Thanks to that change, we can remove allthe #ifdef in the SPI driver.
A test in spi_siwx91x_is_dma_enabled_instance() is sufficient to make the
DMA relative functions orphans.

Then, we can enable the dma instances in the board DTS, so the user just
have to set DMA=y to enable DMA in the drivers.

The two errors cases are:
  - DMA=y while referenced DMA instance in the DT is disabled. The user get
    a compilation error
  - DMA=n (or DMA driver is disabled) but the user explicitly set
    DMA_MAX_BLOCKS > 0. The user get an error during runtime.

Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
2026-06-03 13:05:03 +02:00
Jérôme Pouiller
4c55936506 drivers: dma: siwx91x: udma: Rename driver
SiWx91x provide two DMA hardware block: GPDMA and UDMA, The GPDMA is
properly named: silabs,gpdma. However, the UDMA is named
"silabs,siwx91x-dma" without any reference to the hardware block it is
supposed to run.

Rename the UDMA driver to fix this inconsistency.

Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
2026-06-03 13:05:03 +02:00
Seppo Takalo
503c4ca327 boards: nordic: Add nRF93M1 DK board
Add build targets for nRF93M1 DK board which includes
nRF54L15 as a host MCU.

Bulk of the board definitions are copied from nRF54L15DK.

Main differences:
* The console UART is changed to uart20 as uart30 is routed to modem
* Few GPIO hogs to control the modem and UART switches
* nPM1300 PMIC set up to enable various voltages on board

Signed-off-by: Seppo Takalo <seppo.takalo@nordicsemi.no>
2026-06-03 13:03:32 +02:00
David Jewsbury
ee1462f653 drivers: mspi_dw: Add optional HW concurrent memmap configuration
Some configurations of the DesignWare IP support concurrent XIP
(memory mapping) as part of the IP. The driver currently supports
concurrent XIP using a software workaround and this HW feature is not
yet supported by the driver. However, if concurrent XIP is supported as
well as write XIP not being supported, this will introduce a new
register called XIPSER which this commit adds support for.

Signed-off-by: David Jewsbury <david.jewsbury@nordicsemi.no>
2026-06-03 08:25:32 +02:00
David Jewsbury
086be9caac drivers: mspi_dw: Add optional mem-map write support configuration
Some configurations of the designware IP support write access but not
all. Therefore, this is a configurable devicetree option to enable or
disable support for the mem-map (memory mapped) write registers. Otherwise,
devices that don't support this will come into a bus fault.

signed-off-by: David Jewsbury <david.jewsbury@nordicsemi.no>
2026-06-03 08:25:32 +02:00
minyuan xue
dddad7dc8b dts: arm: add trng binding and nodes.
Add ameba series trng binding and nodes.

Signed-off-by: minyuan xue <minyuan_xue@realsil.com.cn>
2026-06-03 08:24:57 +02:00
Henrik Brix Andersen
5bd51cb082 dts: bindings: update Bosch M_CAN FIFO element assignment examples
Update devicetree binding examples to allocate all Bosch M_CAN RX FIFO
elements to RX FIFO0.

Signed-off-by: Henrik Brix Andersen <henrik@brixandersen.dk>
2026-06-02 20:22:25 -04:00
Henrik Brix Andersen
b8bd74a74f dts: vendor: nordic: move all Bosch M_CAN FIFO elements to FIFO0
Move all allocated Bosch M_CAN RX FIFO elements to FIFO0.

Signed-off-by: Henrik Brix Andersen <henrik@brixandersen.dk>
2026-06-02 20:22:25 -04:00
Henrik Brix Andersen
7996831ef1 dts: arm: ti: move all Bosch M_CAN FIFO elements to FIFO0
Move all allocated Bosch M_CAN RX FIFO elements to FIFO0.

Signed-off-by: Henrik Brix Andersen <henrik@brixandersen.dk>
2026-06-02 20:22:25 -04:00
Henrik Brix Andersen
3c424390b1 dts: arm: st: move Bosch M_CAN FIFO elements to FIFO0 where possible
Move dynamically allocated Bosch M_CAN RX FIFO elements to FIFO0.

Signed-off-by: Henrik Brix Andersen <henrik@brixandersen.dk>
2026-06-02 20:22:25 -04:00
Henrik Brix Andersen
c5777e57a4 dts: arm: nxp: move all Bosch M_CAN FIFO elements to FIFO0
Move all allocated Bosch M_CAN RX FIFO elements to FIFO0.

Signed-off-by: Henrik Brix Andersen <henrik@brixandersen.dk>
2026-06-02 20:22:25 -04:00
Henrik Brix Andersen
bc19ab0689 dts: arm: nuvoton: move all Bosch M_CAN FIFO elements to FIFO0
Move all allocated Bosch M_CAN RX FIFO elements to FIFO0.

Signed-off-by: Henrik Brix Andersen <henrik@brixandersen.dk>
2026-06-02 20:22:25 -04:00
Henrik Brix Andersen
c7a335d868 dts: arm: microchip: move all Bosch M_CAN FIFO elements to FIFO0
Move all allocated Bosch M_CAN RX FIFO elements to FIFO0.

Signed-off-by: Henrik Brix Andersen <henrik@brixandersen.dk>
2026-06-02 20:22:25 -04:00
Henrik Brix Andersen
03736068c7 dts: arm: infineon: move all Bosch M_CAN FIFO elements to FIFO0
Move all allocated Bosch M_CAN RX FIFO elements to FIFO0.

Signed-off-by: Henrik Brix Andersen <henrik@brixandersen.dk>
2026-06-02 20:22:25 -04:00
Henrik Brix Andersen
d65500d9a6 dts: arm: atmel: move all Bosch M_CAN FIFO elements to FIFO0
Move all allocated Bosch M_CAN RX FIFO elements to FIFO0.

Signed-off-by: Henrik Brix Andersen <henrik@brixandersen.dk>
2026-06-02 20:22:25 -04:00
Dan Mangum
7daea21650 drivers: sensor: ntc_thermistor: make tdk ntcg generic
Uses generic nomenclature for TDK ntcg series NTC thermistors, which use a
naming scheme that indicates their resistance (R25) and beta (B25/85)
values. Compensation tables are identical for parts with the same
resistance and beta values.

Signed-off-by: Dan Mangum <georgedanielmangum@gmail.com>
2026-06-02 20:19:47 -04:00
Camille BAUD
16b8db7fbf drivers: bflb: Convert EFUSEs to OTP
Use new OTP API instead of syscon

Signed-off-by: Camille BAUD <mail@massdriver.space>
2026-06-02 20:19:36 -04:00
Benjamin Cabé
5d6e7c0ef8 boards: m5stack: add support for PaperColor
The M5Stack PaperColor is an ESP32-S3R8 based development board with a
4-inch Spectra 6 e-paper display.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
Assisted-by: Claude:opus-4.7
2026-06-02 20:18:46 -04:00
Benjamin Cabé
efffca7c2a drivers: watchdog: add watchdog driver for M5Stack M5PM1 PMIC
Implement the M5PM1 watchdog as a Zephyr watchdog controller child
of the MFD device.
The driver supports a single reset-only timeout channel with one-second
granularity (1 to 255 s).

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
Assisted-by: Claude:opus-4.7
2026-06-02 20:18:46 -04:00
Benjamin Cabé
8e18d508bb drivers: regulator: add regulator driver for M5Stack M5PM1 PMIC
Expose the M5PM1 switchable power rails as fixed-voltage regulator devices
child of the MFD device. The driver supports enabling and disabling the 3.3
V DCDC, 3.3 V LDO, and 5 V boost outputs via the PMIC power config
register.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
Assisted-by: Claude:opus-4.7
2026-06-02 20:18:46 -04:00
Benjamin Cabé
5a231ea4d9 drivers: gpio: add GPIO driver for M5Stack M5PM1 PMIC
Expose the M5PM1 GPIO bank as a Zephyr GPIO controller child of the MFD
device. The driver supports five pins with input/output configuration,
pull-up/pull-down, and open-drain outputs; pin interrupts are not
supported.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
Assisted-by: Claude:opus-4.7
2026-06-02 20:18:46 -04:00
Benjamin Cabé
8d579a72fa drivers: adc: add ADC driver for M5Stack M5PM1 PMIC
Expose the M5PM1 on-chip ADC as a Zephyr ADC controller child of the MFD
device.

The driver supports rail monitoring channels (VREF, VBAT, VIN, 5VOUT),
GPIO1/GPIO2 inputs via the ADC mux, and an internal temperature channel
at 12-bit resolution.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
Assisted-by: Claude:opus-4.7
2026-06-02 20:18:46 -04:00
Benjamin Cabé
e5532e6287 drivers: mfd: add MFD driver for M5Stack M5PM1 PMIC
The M5PM1 is a small companion microcontroller used on M5Stack boards to
provide power management (battery charging, switchable rails), a small
bank of GPIOs, and an on-chip ADC.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
Assisted-by: Claude:opus-4.7
2026-06-02 20:18:46 -04:00
John Batch
709fb00d1f dts: mfd: add Infineon HPPASS analog + ac bindings
Adds devicetree bindings for the Infineon HPPASS Analog Subsystem MFD
parent.  Also adds bindings for the HPPASS Autonomous Controller state
table entries.  Adds dt-bindings header file for HPPASS trigger sources
and AC condition/action codes.

infineon,hppass-analog MFD parent covers subsystem base address,
HPPASS interrupt, startup initialization timing, and trigger I/O
routing.

infineon,hppass-ac-state defines bindings for one STT (state-transition
table) row.  Two options are provided, a basic default STT that handles
HPPASS initialization, and an advanced mode that allows a user to supply
a custom STT tailored for the application.

Adds hppass_analog0 to device tree for both psc3.dtsi and psc3_s.dtsi.

Assisted-by: Github Copilot:claude-opus-4.7
Signed-off-by: John Batch <john.batch@infineon.com>
2026-06-02 20:18:27 -04:00
David Boullie
bd89985e60 drivers: ieee802154: Add support of 802.15.4 for EFR xG24
Add the driver itself and Kconfig/CMakeLists/dts/bindings related to it.
Other files and libraries needed are in Silabs' dedicated folder
hal_silabs (modules/hal/silabs).

Co-Authored-by: David Boullie <David.Boullie@silabs.com>
Co-Authored-by: Sree Sreerajatha <sree.sreerajatha@silabs.com>
Signed-off-by: David Boullie <David.Boullie@silabs.com>
2026-06-02 20:18:17 -04:00
Jilay Pandya
b60a22be97 drivers: tmc50xx: tmc51xx: use tmc_stallguard_settings
is_sg_enabled, sg_velocity_check_interval_ms and
sg_threshold_velocity should not be dts properties as they
are not actuallly hardware configurations.
dropping the check for is_sg_enabled in init routines, since
the configuration happens at runtime now.

Signed-off-by: Jilay Pandya <jilay.pandya@outlook.com>
2026-06-02 20:23:46 +02:00
Jilay Pandya
3c9d5b541d dts: bindings: adi,trinamic-stallguard use min/max
use min/max for stallguard2-threshold

Signed-off-by: Jilay Pandya <jilay.pandya@outlook.com>
2026-06-02 20:23:46 +02:00
Jilay Pandya
fc0149c5ec dts: bindings: ti,fdc2x1x use min/max
use min/max for rr-sequence, active-channel, rcount, offset,
settlecount, fref-divider, idrive and fin-sel

Signed-off-by: Jilay Pandya <jilay.pandya@outlook.com>
2026-06-02 20:22:38 +02:00
Jilay Pandya
75293ac94d dts: bindings: rohm,bh1750 use min/max
use min/max for resolution and mtreg

Signed-off-by: Jilay Pandya <jilay.pandya@outlook.com>
2026-06-02 20:22:38 +02:00
Jilay Pandya
6bf48124db drivers: pixart,pat9136 use min/max
use min/max for resolution in range [0,199]
drop the corresponding BUILD_ASSERT

Signed-off-by: Jilay Pandya <jilay.pandya@outlook.com>
2026-06-02 20:22:38 +02:00