Commit graph zephyr/dts
Author SHA1 Message Date
Mathieu Choplain
3ae1585e24 dts: arm: st: h5: fix clocks of UCPD1 peripheral
The UCPD1 clock enable bit is in
RCC_APB1HENR, which should be represented as "STM32_CLOCK(APB1_2, 23)",
but the SoC DTSI used "APB1" (no _2) instead. As a result, the UCPD
clock could not really be enabled.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2026-07-27 14:43:47 +02:00
Sher Amir Singh Dullat
907158637e dts: arm: st: n6: fix gpdma1 dma-requests count and interrupts style
Update dma-requests to 145 and group interrupt cells to match hpdma1.

Signed-off-by: Sher Amir Singh Dullat <sheramir51@gmail.com>
2026-07-27 14:42:33 +02:00
Sher Amir Singh Dullat
68705da8e7 dts: arm: st: n6: add HPDMA1 controller node
Adds the high-performance DMA controller (HPDMA1) node to the STM32N6
base devicetree file. Base address, clocks, and contiguous IRQ lines
(68-83) are derived directly from the vendor CMSIS device headers.

Signed-off-by: Sher Amir Singh Dullat <sheramir51@gmail.com>
2026-07-27 14:42:33 +02:00
Mathieu Choplain
88a7f556e9 dts: arm: st: h7rs: add OTGHS controller and PHY nodes
Add missing nodes for the OTG_HS USB controller and associated USBPHYC
to the STM32H7R/S SoC DTSI.

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2026-07-27 14:41:07 +02:00
Mathieu Choplain
477a964eab dts: bindings: phy: stm32-usbphyc: update binding for STM32H7R/S
Perform a few changes to the st,stm32-usbphyc binding in order to allow
its use on STM32H7R/S series SoCs:
- make the `clock-names` property mandatory
  - cell names will be used in the PHY pseudo-driver for STM32H7R/S
- drop requirement to provide `reg`
  - USBPHYC does not have a MMIO interface on STM32H7R/S

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
2026-07-27 14:41:07 +02:00
Ofir Shemesh
d94fd4d2f8 drivers: mbox: add ARM MHUv2 mailbox driver
Add a Zephyr mbox driver for the ARM Message Handling Unit v2.
Supports doorbell-only signalling across all hardware channel
windows from a single device instance.

Signed-off-by: Ofir Shemesh <ofirshemesh777@gmail.com>
2026-07-27 14:40:37 +02:00
Henrik Brix Andersen
8ba1698fbf Revert "drivers: uart: unify xilinx ps uart driver with cadence uart driver"
This reverts commit 189ccda20b as it is
causing breakage on qemu_cortex_r5/zynqmp_rpu.

Signed-off-by: Henrik Brix Andersen <henrik@brixandersen.dk>
2026-07-27 06:09:38 -05:00
Sara Touqan
7b57752d88 dts: bindings: mspi: add st,nor-mspi binding
This commit adds STM32 MSPI device binding
with memory type configuration.

Signed-off-by: Sara Touqan <zephyr@exalt.ps>
2026-07-27 09:21:41 +02:00
Muhammad Waleed Badar
189ccda20b drivers: uart: unify xilinx ps uart driver with cadence uart driver
Remove the dedicated xlnx_xuartps driver and consolidate support
into the Cadence UART driver (uart_cdns), as both drivers target
the same underlying Cadence UART IP used by Xilinx platforms.

Update device tree bindings and DTS files to use the Cadence
compatible string on supported platforms, remove obsolete driver
sources, and adjust build system configuration accordingly.

Also update test overlays to reflect the driver consolidation.

Signed-off-by: Muhammad Waleed Badar <walid.badar@gmail.com>
2026-07-27 09:20:04 +02:00
Jonathan E. Peace
90d0a0ab4f dts: broadcom: fix CTS pin in uart0_ctsrts_gpio32
group2 muxed UART0_RTS_GPIO31 a second time instead of
UART0_CTS_GPIO30, leaving the CTS pin unmuxed, so CTS/RTS flow
control did not work for boards using this group. Verified on a
Pi Zero 2 W where GPIO 30-33 at ALT3 route uart0 to the onboard
CYW43436 BT HCI with flow control enabled.

Signed-off-by: Jonathan E. Peace <jep@alphabetiq.com>
2026-07-26 08:15:20 -04:00
Hongquan Li
c1c13f7715 dts: espressif: esp32p4: Add N32 variants and 32 MB partitions
Add SIP-level dtsi files for 32 MB flash ESP32-P4 variants:
esp32p4_n32r32.dtsi for the ESP32-P4NRW32 SIP (32 MB in-package
PSRAM and 32 MB external NOR flash) and esp32p4_lpcore_n32.dtsi
for the LP core on 32 MB flash parts.

Also add a default 32 MB partition layout with the 0x2000 boot
offset, mirroring the existing 0x1000 32 MB layout.

Signed-off-by: Hongquan Li <hongquan.li@processmission.com>
2026-07-25 17:09:02 +02:00
Raphaël Gallais-Pou
82c668938d dts: arm: st: *: sai: use empty ranges
Map 1:1 using empty 'ranges;' property. Specific range property should
only be use when devices are not on the same bus interface.  This also
prevents from redefining Secure/Non-Secure addresses.

Signed-off-by: Raphaël Gallais-Pou <raphael.gallais-pou@foss.st.com>
2026-07-24 12:39:14 -07:00
Mathieu Choplain
89c5021baa dts: bindings: i2s: stm32-sai: use proper type for ranges property
The `ranges` property should be a `compound` because it can either be
EMPTY (a.k.a. 'boolean') or NUMS (a.k.a. 'array').

Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
Signed-off-by: Raphaël Gallais-Pou <raphael.gallais-pou@foss.st.com>
2026-07-24 12:39:14 -07:00
Fabin V Martin
8f89804f3c dts: atmel/microchip: add ranges property to flash nodes
Add #address-cells, #size-cells, and ranges properties to flash nodes.
This enables address translation from partition offsets to physical
flash addresses, required for zephyr,mapped-partition compatible.

Signed-off-by: Fabin V Martin <Fabinv.Martin@microchip.com>
2026-07-24 12:38:17 -07:00
Fabian Blatz
891bb37561 modules: lvgl: Deprecate swap-xy, invert-{x,y} for pointer input
The swap-xy, invert-x, and invert-y properties in the
zephyr,lvgl-pointer-input devicetree binding are deprecated. Users should
instead add these properties to the underlying touch input controller
device node.

Signed-off-by: Fabian Blatz <fabianblatz@gmail.com>
2026-07-24 12:37:36 -07:00
Sunil Abraham
cf7190ce87 dts: clock: PIC32CM_SG_GC: Add clock control driver bindings
Add bindings for dfll, dpll, gclk generator, mclk cpu, osc32k, rtc clock
and xosc.

Signed-off-by: Sunil Abraham <Sunil.Abraham@microchip.com>
2026-07-24 15:34:12 -04:00
Tim Lin
591aebf3a7 mgmt: ec_host_cmd: shi_ite: Switch pinctrl states during device PM
Apply the default pinctrl state during PM_DEVICE_ACTION_RESUME to restore
normal SHI operation.
Apply the sleep pinctrl state during PM_DEVICE_ACTION_SUSPEND to disable
the SHI interface pins and prevent leakage.

This lets board/shim code control the pin state purely via
pm_device_runtime_get()/put().

Signed-off-by: Tim Lin <tim2.lin@ite.corp-partner.google.com>
2026-07-24 14:10:12 +02:00
Fabian Blatz
21802e47cc drivers: input: xpt2046: Add touchscreen common config
Adds the touchscreen common config to the xpt2046 controller.

Signed-off-by: Fabian Blatz <fabianblatz@gmail.com>
2026-07-24 14:10:00 +02:00
Fabian Blatz
ea8d0d478d drivers: input: ili2132a: Add touchscreen common config
Adds the touchscreen common config to the ili2132a controller.

Signed-off-by: Fabian Blatz <fabianblatz@gmail.com>
2026-07-24 14:10:00 +02:00
Fabian Blatz
7b34108be5 drivers: input: cst8xx: Add touchscreen common config
Adds the touchscreen common config to the cst8xx controller.

Signed-off-by: Fabian Blatz <fabianblatz@gmail.com>
2026-07-24 14:10:00 +02:00
Jaro Van Landschoot
d141014e37 drivers: counter: mcux_gpt: add pinctrl support
Add optional pinctrl support so board files can mux GPT_CLK,
GPT_CAPTUREn, and GPT_COMPAREn pins via the standard pinctrl-0
property. The default state is applied early in driver init, before
GPT_Init. A missing pinctrl state (-ENOENT) is treated as optional
and silently ignored.

Signed-off-by: Jaro Van Landschoot <jaro.vanlandschoot@basalte.be>
2026-07-24 14:08:12 +02:00
Jaro Van Landschoot
1dfd0e2142 drivers: counter: mcux_gpt: add configurable clock source
Allow selecting from all five GPT clock sources (off, periph,
high-freq, ext, low-freq, osc) via a new clock-source DT property.
The ext source fixes the prescaler at 1 since the frequency
is unknown to software.

gptfreq is no longer required when clock-source = "ext", in which
case counter_get_freq() returns 0 and callers work in raw ticks.

Signed-off-by: Jaro Van Landschoot <jaro.vanlandschoot@basalte.be>
2026-07-24 14:08:12 +02:00
Samuel Slesar
203f47f022 dts: add MCXL255 LPSPI nodes
Add LPSPI0 and LPSPI1 nodes for MCXL255 CPU0.

Signed-off-by: Samuel Slesar <samuel.slesar@nxp.com>
2026-07-23 21:01:14 -07:00
Anton Puppe
2fead6e31e drivers: add Hamamatsu S9706 digital color sensor driver
Add a driver for the Hamamatsu S9706 digital RGB sensor using plain
GPIOs. All parameters (e.g. integration time and sensor range) are
runtime-configurable via sensor attributes.

Signed-off-by: Anton Puppe <anton-noel-flynn.puppe@zeiss.com>
2026-07-23 17:14:29 -07:00
Paulo Santos
8e9066062b modem: cellular: skip power-on pulse when modem already on
The bring-up path pulses the power key unconditionally. On modems that
toggle power with the key, that turns off a modem still running after an
MCU-only reset, and the driver then times out against a dead bus until the
modem completes a full power cycle.

Add an optional mdm-status-gpios input reporting modem power state. When it
is present and asserted at start-up, skip the power-on pulse and bring up
the bus directly; the init script confirms the modem responds, and if it
does not, the driver powers the modem on. Boards without the GPIO behave as
before.

Signed-off-by: Paulo Santos <pauloxrms@gmail.com>
2026-07-23 18:12:55 +02:00
Fabio Baltieri
1100769f35 i2c: ite: switch to the generic timeout macro
Remove the ite specific timeout property and use the generic one.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2026-07-23 16:25:25 +02:00
Hakan Jansson
942c352a67 dts: bindings: wifi: fix compatible in airoc-wifi example
Example was using incorrect compatible

Signed-off-by: Hakan Jansson <hakan.jansson@infineon.com>
2026-07-23 16:23:55 +02:00
Arkadiusz Grzelka
b06f511136 input: touch: scale reported coordinates into the display's space
swapped-x-y exchanges only the reported event codes. That is correct
when the touchscreen's coordinate space and the display share an aspect
ratio, and wrong as soon as they do not: on a rotated non-square panel
the swapped axes still carry each other's range, so X arrives bounded by
the screen height while Y overruns the display's.

A concrete case: a 480x272 panel whose controller reports in its own
480x272 space, mounted rotated a quarter turn. swapped-x-y alone
confines the reported X to 0..272 and lets Y reach 480 on a panel 272
tall. There is no combination of the existing properties that expresses
the rotation, because none of them rescale.

Add optional output-width / output-height describing the space
coordinates should land in, and scale into it after inverting and
swapping. Each value keeps its own source range -- the value held as X
always spans screen-width -- while its target dimension follows the code
it is reported under, which swapped-x-y has already chosen. So with the
axes swapped, the X value is scaled by output-height/screen-width and
lands on INPUT_ABS_Y.

The dimensions can also come from a display controller directly: an
optional display phandle sources output-width / output-height from the
referenced node's width / height, so the panel resolution is not
duplicated on the touchscreen node.

Both output dimensions are optional and resolve to 0 when absent, which
disables scaling: every existing driver and board keeps reporting
exactly what the controller produced.

Signed-off-by: Arkadiusz Grzelka <devitwise@gmail.com>
2026-07-23 16:22:41 +02:00
Florian Moesch
d1add600cf soc: st: stm32: add support for STM32L151xE
This is almost a copy of the STM32L152xE support.
The STM32L152xE is already supported and is nearly identical.
The STM32L151xE differs only by lacking the LCD interface.

Signed-off-by: Florian Moesch <florian.moesch@draeger.com>
2026-07-23 16:22:01 +02:00
Alain Volmat
de828e58ea dts: arm: st: stm32h5: Add LTDC display-controller node
Describe the LTDC display controller available on
STM32 H5E4/H5E5 and H5F4/H5F5.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
(cherry picked from commit 82d6afb375)
Signed-off-by: Arkadiusz Grzelka <devitwise@gmail.com>
2026-07-23 16:17:08 +02:00
Zhiyuan Tang
7ea7718183 boards: realtek: rtl87x2g: resize TCM split to 176K SRAM / 28K ITCM
RTL87x2G exposes 204 KB of TCM to Zephyr (0x100c00–0x133c00).
The previous 100 KB / 104 KB split left ITCM heavily over-allocated:
actual usage is ~2.2 KB of relocation tables, while the remaining
~101 KB was idle.  Meanwhile SRAM is a bottleneck; for example, the
CMSIS-DSP matrix.binary_q15 test requires ≥144 KB and fails with OOM.

Resize the split to give Zephyr more usable SRAM:

  tcm0 (zephyr,sram): 0x100c00 + 176 KB → 0x12cc00
  tcm1 (zephyr,itcm): 0x12cc00 +  28 KB → 0x133c00

Update the board yaml ram field for all four rtl87x2g variants
(gkh, gku, grh, gru) from the stale placeholder 100 to 176.

Co-Authored-By: Claude <noreply@anthropic.com>
Signed-off-by: Zhiyuan Tang <zhiyuan_tang@realsil.com.cn>
2026-07-23 16:16:55 +02:00
Zhaoxiang Jin
4dd50eb4a6 dts: arm: nxp: imxrt: wire irtc deep-sleep wakeup on rt7xx
Route the CPU0 IRTC wake-timer through SLEEPCON0: mark the node
wakeup-source with a wakeup-ctrls line of <&sleepcon0 27>, and enable
sleepcon0 itself. SLEEPCON0 is an always-present on-chip controller, so
it is enabled by default; CONFIG_WUC still gates whether its driver is
built. This lets the IRTC wake CPU0 from deep-sleep retention.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2026-07-23 16:11:52 +02:00
Zhaoxiang Jin
c84d37d1e2 dts: bindings: counter: allow irtc wake-timer to be a WUC source
Include the wuc-device.yaml mixin so an nxp,irtc-wake-timer node can
declare a WUC wakeup line via the wakeup-ctrls property. The property is
optional, so SoCs whose IRTC does not route through a WUC leave it unset
and are unaffected.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2026-07-23 16:11:52 +02:00
Zhaoxiang Jin
8c9701eac2 dts: arm: nxp: imxrt: add sleepcon for rt7xx
add sleepcon for rt7xx

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2026-07-23 16:11:52 +02:00
Zhaoxiang Jin
e148ad7c30 drivers: wuc: add support for sleepcon-wuc
add support for sleepcon-wuc

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2026-07-23 16:11:52 +02:00
Yves Wang
0c29a1544c dts: nxp: mcxa: add RTC node for MCXA3xx SoCs
Add a disabled nxp,rtc node for the MCXAXX6.

OSC32k is not available on these devices; clock-source is set to
"LPO" to select the 16.384 kHz FRO16K (VBAT domain) via CR[LPOS]=1.

Signed-off-by: Yves Wang <zhengjia.wang@nxp.com>
2026-07-23 16:08:53 +02:00
Ayush Singh
f6985dc0d2 dts: arm: ti: mspm0: l111x: Add timg timers
- Only timg0 timer seems to be consistent across all L-series. And event
  that does not seem guaranteed. So only adding to mspm0l111x.
- Currently tested as counters using samples/drivers/counter/alarm on
  beagleconnect_zepto (mspm0l1117).

Signed-off-by: Ayush Singh <ayush@beagleboard.org>
2026-07-22 19:07:51 +01:00
Benjamin Santon
2a402f2f8b drivers: flash: max32: spixf: fix jedec-id into yaml example
Fix jedec-id into yaml example to match with mx25u64 jedec-id.

Signed-off-by: Benjamin Santon <benjamin.santon@analog.com>
2026-07-22 19:07:28 +01:00
Giovanni Piccari
6bfb38b8e7 drivers: modem: add Quectel BC66 and BC660K support
Add initial driver support for the Quectel BC66 and BC660K NB-IoT
cellular modems. The driver implements the standard Zephyr
cellular modem APIs and features network offloading via BSD sockets,
specifically supporting TCP and UDP clients. Device Power Management
(PM) support is also included.

Assisted-by: Claude:claude-sonnet-4.6
Assisted-by: Gemini:gemini-3.1-pro
Signed-off-by: Giovanni Piccari <giopiccari@outlook.com>
2026-07-22 19:04:34 +01:00
Yeray Lois Sanchez
2b920af989 drivers: display: st7789v: make panel tuning properties optional
Some ST7789V panel integrations rely on the controller reset defaults
or on fixed power sequencing and must not receive the default power
and gamma configuration commands during initialization.

Instead of adding a bypass flag, make the power/gamma/tuning
devicetree properties optional (vcom, gctrl, lcm, gamma, porch-param,
cmd2en-param, pwctrl1-param, pvgam-param, nvgam-param, ram-param,
rgb-param) and only send a configuration command when its property is
present, following the existing vrhs/vdvs handling.

Existing boards set all of these properties, so their initialization
sequence is unchanged.

Signed-off-by: Yeray Lois Sanchez <yerayloissanchez@gmail.com>
2026-07-22 14:16:38 +01:00
Darcy Lu
91c7b2dcde dts: realtek: rts5817: Add ocotp device node to RTS5817
This commit adds ocotp device node to RTS5817

Signed-off-by: Darcy Lu <darcy_lu@realsil.com.cn>
2026-07-22 14:16:16 +01:00
Darcy Lu
9d1dece900 drivers: otp: Add support for Realtek RTS5817 OCOTP
This commit adds On-Chip OTP driver for RTS5817

Signed-off-by: Darcy Lu <darcy_lu@realsil.com.cn>
2026-07-22 14:16:16 +01:00
Albort Xue
41e318da64 dts: bindings: nxp,imx-flexspi-device: drop spi-device.yaml include
FlexSPI is NXP's proprietary memory-mapped flash/PSRAM controller
with its own LUT engine, AHB buffers, and clock tree — it is not a
standard SPI bus. Including spi-device.yaml pulled in `on-bus: spi`
semantics and 11 SPI-specific properties (duplex, spi-cpol, spi-cpha,
etc.) that are meaningless for FlexSPI devices.

Replace the spi-device.yaml include with base.yaml and power.yaml,
and directly declare the only two properties FlexSPI actually uses
from the SPI binding: `reg` and `spi-max-frequency`.

This removes the incorrect SPI bus semantics from the FlexSPI binding
chain, which caused all FlexSPI descendants (including `soc-nv-flash`
grandchild nodes) to appear as SPI bus devices, misleading downstream
DTS authors into placing SPI-specific properties on nodes whose
bindings do not declare them.

Signed-off-by: Albort Xue <yao.xue@nxp.com>
2026-07-22 14:15:23 +01:00
Arkadiusz Grzelka
5e4a497236 input: cf1133: report through the common touchscreen helper
The driver reports raw controller coordinates straight to INPUT_ABS_X and
INPUT_ABS_Y, so none of the touchscreen-common orientation properties reach
it: a board wiring this part to a rotated or mirrored panel has no way to
describe that in devicetree. Every other touch driver in the tree goes
through input_touchscreen_report_pos().

Route both report paths through the helper and include
touchscreen-common.yaml in the binding. `select INPUT_TOUCH` comes with it:
input_touch.c is gated on that symbol, so without it the helper is never
compiled and the driver fails to link.

Behaviour is unchanged for existing users -- with none of the orientation
properties set the helper passes the coordinates through untouched.

Signed-off-by: Arkadiusz Grzelka <devitwise@gmail.com>
2026-07-22 14:14:13 +01:00
Muhammed Asif
37b1443660 dts: arm: microchip: updates counter binding
- Adds example property on how to use the the tcc peripheral as counter

Signed-off-by: Muhammed Asif <asifp3104@gmail.com>
2026-07-22 10:59:44 +01:00
Sameer Srivastava
f9337dcfde dts: arm: ti: add AM13E230x devicetree source
Define CPU type, frequency, MPU and SRAM regions.

Signed-off-by: Sameer Srivastava <s-srivastava4@ti.com>
2026-07-22 10:59:14 +01:00
minyuan xue
f7fe1539e0 dts: arm: add pwm binding and nodes
Add ameba series pwm biding and nodes.

Signed-off-by: minyuan xue <minyuan_xue@realsil.com.cn>
2026-07-22 10:58:45 +01:00
Nicolas Pitre
8abd366765 dts: bindings: add arm,cortex-a57 CPU binding
Commit 7afcac3f51 ("drivers: interrupt_controller: Use new CPU macro
to iterate through CPUs") made CPU enumeration depend on the
device_type property being declared by a matched binding, breaking the
build for CPU node compatibles that have no binding. Commit
0a26f478af3c ("dts: bindings: cpu: add arm,cortex-r8f binding") and
commit 17cf0dabd3 ("dts: bindings: cpu: add arm,armv8 binding") added
two of the three missing bindings, which also unbroke the
rcar_h3ulcb/r8a77951/a57 build through the "arm,armv8" fallback in its
CPU nodes' compatible list.

Add the Cortex-A57 binding as well so those CPUs match their specific
compatible rather than the generic fallback.

Signed-off-by: Nicolas Pitre <npitre@baylibre.com>
2026-07-21 14:10:08 -04:00
Dhanoo Surasarang
f7a3680399 dts: riscv: nordic: Fix nRF7120 cpuflpr_mram write-block-size
The MRAMC driver requires write-block-size to be a multiple of the
16-byte MRAM word size. Set write-block-size to 16 to match the
hardware constraint and the cpuapp_mram definition.

Signed-off-by: Dhanoo Surasarang <dhanoo.surasarang@nordicsemi.no>
2026-07-21 14:09:29 -04:00
Travis Lam
fe36b41302 dts: vendor: nrf7120: reduce sram_s allocation 96Kb
Reduce secure RAM allocation for tf-m to futher minimize the tfm RAM
usage.

Signed-off-by: Travis Lam <travis.lam@nordicsemi.no>
2026-07-21 14:07:48 -04:00