Commit graph

11,885 commits

Author SHA1 Message Date
Pete Dietl
c407fbcfc9 [drivers]: gpios: SN74HC595: Extend to allow for chained shift registers
The current driver has a few limitations:
1. The `ngpios` DT property is fixed at eight.
   Since the SN74HC595 and kin are designed to be
   easily daisychain-able, the upper bound on `ngpios`
   should be limited only by the maximum number of pins
   that Zephyr supports per GPIO port, which is 32.
2. In the case of having no control over the shift register's
   reset input, the device tree node should accept a default
   value to shift into the register(s) during init.
3. There seems to be an assumption that the serial clock
   and load clock are tied together. While this is often the
   case, the device tree node should be more flexible in
   allowing the specification of a separate load clock GPIO pin.
4. The device tree node should also be able to accept a GPIO pin
   to drive the enable input pin of the shift register(s).

This commit addresses all of these issues.

Signed-off-by: Pete Dietl <petedietl@gmail.com>
2025-08-19 09:13:12 +02:00
Peter Wang
d172b9d76b boards: nxp: Renamed MCXA276 to MCXA266
1. Renamed MCXA276 to MCXA266
2. NXP frdm_mcxa276 is renamed to frdm_mcxa266,
add this information to migration-guide-4.3.rst.

Signed-off-by: Peter Wang <chaoyi.wang@nxp.com>
2025-08-18 22:00:19 +02:00
Zhaoxiang Jin
7d3fc2b176 boards: nxp: Renamed MCXA166 to MCXA346
1. Renamed MCXA166 to MCXA346.
2. NXP frdm_mcxa166 is renamed to frdm_mcxa346,
add this information to migration-guide-4.3.rst.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-08-18 22:00:19 +02:00
Emil Dahl Juhl
44929f7089 dts: arm: st: n6: describe rng block
The stm32n6 features an RNG block. The RNG is a true NIST SP800-90B
compliant entropy source according to the stm32n657x0 reference manual[1].

Per Table 3 in the reference manual, the RNG peripheral register boundary
address (secure) is 0x54020000 to 0x540203FF. That is, base address
0x54020000 and size 0x400.

Per Table 73 in the reference manual, the RNG peripheral has only a single
rng_clk option (hsis_osc_ck).
Per section 14.10.66 (and more) the RNG peripheral control is performed
through AHB3 using bit 0.
As such, the `clocks` property contains a single phandle to the RCC AHB3
bit 0 entries.

Per Table 135 in the reference manual, the RNG peripheral interrupt is
located at position 40 in the NVIC.

[1] RM0486 Rev 2: https://www.st.com/resource/en/reference_manual/rm0486-stm32n647657xx-armbased-32bit-mcus-stmicroelectronics.pdf

Signed-off-by: Emil Dahl Juhl <emil@s16s.ai>
2025-08-18 17:49:45 +02:00
Jordan Yates
827da4a9e0 disk: sdmmc_stm32: support clock bypass
Add support for the SDMMC clock bypass feature for those SoCs that have
it. This provides a SDMMC bus speed double that of `clk-div = <0>`.

Updated the `clk-div` documentation at the same time to be clearer on
how the bus clock speed is determined.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-08-18 17:49:14 +02:00
Henrik Lindblom
97356ad45c dts: stm32u5: add stm32u595xx
Add variants of the stm32u595 chip with 2M (u595XI) and 4M (u595XJ) of
flash.

Signed-off-by: Henrik Lindblom <henrik.lindblom@vaisala.com>
2025-08-18 16:00:05 +02:00
Mario Paja
cfe0b9a3d8 dts: st: h7rs: add sai node for stm32h7rs
Define SAI1 A & B nodes for STM32H7RS series

Signed-off-by: Mario Paja <mariopaja@hotmail.com>
2025-08-18 15:59:08 +02:00
Mario Paja
faf5eb18a6 dts: st: h7rs: add gpdma1 node
This PR adds gpdma node on stm32h7rs series

Signed-off-by: Mario Paja <mariopaja@hotmail.com>
2025-08-18 15:59:08 +02:00
Mario Paja
85b408edf1 drivers: i2s: add sai support for stm32h7xx
Define SAI1 node for STM32H7xx series.
Add STM32H7xx related DMA configs.
Enable samples/drivers/i2s/output for nucleo_h745zi_q/m7

Signed-off-by: Mario Paja <mariopaja@hotmail.com>
2025-08-18 15:58:58 +02:00
Quang Le
c03b9b1abc dts: renesas: Add external interrupt support for Renesas RZ/A3UL, V2L
Add external interrupt nodes to Renesas RZ/A3UL, V2L

Signed-off-by: Quang Le <quang.le.eb@bp.renesas.com>
Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
2025-08-18 15:58:44 +02:00
Quang Le
be9fabb967 dts: renesas: Update interrupt nodes for Renesas RZ/G3S, N2L, T2M, T2L
- Change node's name, node's register size, node's address cells
of intc node for Renesas RZ/G3S
- Add `renesas, rz-intc` compatible and #size-cells of 0 to intc node
of Renesas RZ/G3S
- Add `reg` property to irq nodes for Renesas RZ/G3S
- Add `renesas, rz-icu` compatible for Renesas RZ/N2L, T2M, T2L

Signed-off-by: Quang Le <quang.le.eb@bp.renesas.com>
Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
2025-08-18 15:58:44 +02:00
Quang Le
efe6812ec5 drivers: intc: Add external interrupt support for Renesas RZ/A3UL, V2L
Add external interrupt support for Renesas RZ/A3UL, V2L

Signed-off-by: Quang Le <quang.le.eb@bp.renesas.com>
Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
2025-08-18 15:58:44 +02:00
Phuc Pham
1fa1565aed dts: renesas: Add ADC support for Renesas RZ/A3UL, T2M, N2L, V2L
Add ADC nodes to Renesas RZ/A3UL, T2M, N2L, V2L

Signed-off-by: Phuc Pham <phuc.pham.xr@bp.renesas.com>
Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
2025-08-18 11:56:47 +02:00
Phuc Pham
41e78de206 dts: renesas: Fix ADC register size for Renesas RZ/G3S
Change the adc node's compatible of RZ/G3S to renesas,rz-adc-c
Fix ADC node register size for Renesas RZ/G3S

Signed-off-by: Phuc Pham <phuc.pham.xr@bp.renesas.com>
Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
2025-08-18 11:56:47 +02:00
Phuc Pham
371f2925dc drivers: adc: Add ADC support for Renesas RZ/A3UL, T2M, N2L, V2L
Add ADC driver support for Renesas RZ/A3UL, T2M, N2L, V2L

Signed-off-by: Phuc Pham <phuc.pham.xr@bp.renesas.com>
Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
2025-08-18 11:56:47 +02:00
MA Junyi
c552847a2f boards: embedsky: add support for TQ‑H503A
This patch introduces a new board definition for embedsky’s
TQ‑H503A development board, based on the STM32H503CBT6 SoC.

Tested: successfully built, ran and debug
`hello_world` and `blinky` samples.

Signed-off-by: MA Junyi <mjysci@live.com>
2025-08-18 10:54:55 +02:00
Camille BAUD
36f2436206 drivers: display: greyscale -> grayscale for ssd1363
british english -> american english

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-08-16 21:38:13 +02:00
Biwen Li
0e830e84ec boards: nxp: imx943_evk: m33: add i2c support
Add i2c support for m33(in NETCMIX) of imx943_evk

Signed-off-by: Biwen Li <biwen.li@nxp.com>
2025-08-16 10:19:31 +02:00
jacob kung
a0adc1f7f5 drivers: spi: add et171 spi driver
The Egis ET171 SPI controller was based on Andes ATCSPI200,
but has since been modified. In particular, the WrTranCnt and RdTranCnt
fields from the SPI Transfer Control Register have been moved to dedicated
Wr_Tran_Cnt and Rd_Tran_Cnt registers.

Signed-off-by: jacob kung <jacob.kung@egistec.com>
2025-08-16 10:18:58 +02:00
Jeppe Odgaard
ec02138402 drivers: sensor: ti: tmp11x: add optional attribute storage
Enable optional storage of sensor attribute values in EEPROM. On reset, the
device goes through a POR sequence that loads the values programmed in the
EEPROM into the respective register map locations.

The driver stores sample frequency, offset, oversampling, lower threshold,
upper threshold, alert pin polarity, alert mode and conversion mode if the
value is continuous or shutdown.

The functionality has been tested with sensor shell and power cycling
sensor:

Test (undocumented) temperature offset is stored:
```shell
uart:~$ sensor attr_set ti_tmp11x@48 ambient_temp offset 0
ti_tmp11x@48 channel=ambient_temp, attr=offset set to value=0
uart:~$ sensor get ti_tmp11x@48 ambient_temp
[...] (25.523436)
uart:~$ sensor attr_set ti_tmp11x@48 ambient_temp offset 50
ti_tmp11x@48 channel=ambient_temp, attr=offset set to value=50
uart:~$ sensor get ti_tmp11x@48 ambient_temp
[...] (75.617186)
uart:~$
[15:12:20.088] Disconnected
[15:12:36.106] Connected
uart:~$ sensor get ti_tmp11x@48 ambient_temp
[...] (75.554686)
uart:~$ sensor attr_get ti_tmp11x@48 ambient_temp offset
ti_tmp11x@48(channel=ambient_temp, attr=offset) value=50.000000
```

Test one-shot mode is not stored:
```shell
uart:~$ sensor attr_set ti_tmp11x@48 ambient_temp 18 1
ti_tmp11x@48 channel=ambient_temp, attr=accel_x set to value=1
uart:~$ sensor get ti_tmp11x@48 ambient_temp
[...] (75.562499)
uart:~$ sensor get ti_tmp11x@48 ambient_temp
Read failed
[00:00:21.332,000] <wrn> sensor_compat: Failed to fetch samples
uart:~$
[15:16:24.529] Disconnected
[15:16:33.540] Connected
uart:~$ sensor get ti_tmp11x@48 ambient_temp
[...] (75.406249)
uart:~$ sensor get ti_tmp11x@48 ambient_temp
[...] (75.351561)
```

Signed-off-by: Jeppe Odgaard <jeppe.odgaard@prevas.dk>
2025-08-15 15:34:12 +02:00
Hieu Nguyen
7bb772b9ea dts: renesas: Add PWM support for Renesas RZ/A3UL
Add MTU nodes to Renesas RZ/A3UL

Signed-off-by: Hieu Nguyen <hieu.nguyen.ym@bp.renesas.com>
Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
2025-08-15 10:30:49 +01:00
Hieu Nguyen
8e40b8a057 drivers: pwm: Add PWM support for Renesas RZ/A3UL
Add PWM driver support for Renesas RZ/A3UL

Signed-off-by: Hieu Nguyen <hieu.nguyen.ym@bp.renesas.com>
Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
2025-08-15 10:30:49 +01:00
Richard Wheatley
d00a734c0c drivers: entropy: add puf-trng entropy driver
add puf-trng entropy driver to apollo510

Signed-off-by: Richard Wheatley <richard.wheatley@ambiq.com>
2025-08-15 10:10:45 +03:00
Bayrem Gharsellaoui
8a901edc85 boards: stm32: Enable HASH peripheral for nucleo_u575zi_q
Add device tree support for STM32 HASH peripheral on the nucleo_u575zi_q

Signed-off-by: Bayrem Gharsellaoui <bayrem.gharsellaoui@protonmail.com>
2025-08-15 10:10:24 +03:00
Bayrem Gharsellaoui
95934d2abd drivers: crypto: Add STM32 HASH hardware driver
Add STM32 HASH driver with SHA-224/256 support for STM32U5

Signed-off-by: Bayrem Gharsellaoui <bayrem.gharsellaoui@protonmail.com>
2025-08-15 10:10:24 +03:00
Dylan Philpot
e1526c9d13 dts: add support MSPM0Gx51x SOC family
Includes device tree files for SOCs and updates
to common MSPM0 device tree

Signed-off-by: Dylan Philpot <d-philpot@ti.com>
2025-08-14 18:03:16 +02:00
Wai-Hong Tam
8222eee990 led_strip: ws2812_spi: Support configurable symbol width
This commit introduces a new devicetree property, bits-per-symbol, to
allow the symbol width to be configured from 3 to 8 bits. This change
is particularly beneficial for MCUs that lack DMA for their SPI
peripheral and have a limited hardware FIFO.

This property provides flexibility by allowing developers to select a
slower SPI clock frequency and use the symbol width to scale the
timings to meet strict LED strip requirements, minimizing the risk of
FIFO underruns.

Additionally, using higher-density patterns (e.g., 3-bit or 4-bit
symbols) makes more efficient use of the pixel buffer, which reduces
the RAM footprint required for the LED strip data.

The implementation is optimized with a fast path for the common 8-bit
symbol case, while a generic bit-packing loop handles all other
widths.

Signed-off-by: Wai-Hong Tam <waihong@google.com>
2025-08-14 10:44:31 +01:00
Hieu Nguyen
f9fd3d3057 dts: renesas: Add PWM support for Renesas RZ/T2M, N2L, V2L
Add GPT nodes to Renesas RZ/T2M, N2L, V2L

Signed-off-by: Hieu Nguyen <hieu.nguyen.ym@bp.renesas.com>
Signed-off-by: Tien Nguyen <tien.nguyen.zg@renesas.com>
2025-08-14 10:40:07 +03:00
Pieter De Gendt
bf6b76abbd dts: arm: nxp: rt10xx: Add power state for soft-off
In order for samples/boards/nxp/mimxrt1060_evk/system_off to work, a
soft-off power state is needed.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-08-13 22:12:46 -04:00
Yangbo Lu
5b2c553b53 dts: arm: nxp_imx943_m33: add NETC switch node
Added NETC switch node.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-08-13 22:09:50 -04:00
Yangbo Lu
92416e2416 net: dsa: add tag protocol definition and binding
Added tag protocol definition and binding. Also introduced
zephyr,dsa-port compatible for future tag protocol driver Kconfig
dependency checking.

Updated existed dts.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2025-08-13 22:09:50 -04:00
Pieter De Gendt
be216ba9e6 drivers: counter: mcux_snvs: Convert Kconfig symbol to dts property
The SNVS RTC can act as a wakeup source, re-use pm.yaml properties and
remove the Kconfig symbol.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-08-13 11:10:03 +01:00
Pieter De Gendt
1ebb7e09ca dts: bindings: Move NXP i.MX SNVS from rtc to counter
The SNVS RTC is a Real Time Counter instead of a Real Time Clock.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-08-13 11:10:03 +01:00
Vit Stanicek
30e053ca2c soc: mimxrt798s/hifi4: Disable GPIO support
Remove INPUTMUX interrupt assignments for PINT and GPIO peripherals.
Remove gpio0 DT node.

As the GPIO peripherals can be secured on the mimxrt798s, accesses from
the cm33_cpu0 and hifi4 are mutually exclusive, so the GPIO0 will stay
enabled in the cm33_cpu0 domain.

Signed-off-by: Vit Stanicek <vit.stanicek@nxp.com>
2025-08-13 11:09:32 +01:00
Jiafei Pan
cb3b08b046 dts: arm64: imx95_a55: add SCMI power device node
Added SCMI power dts node.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-08-13 11:08:39 +01:00
Jiafei Pan
0965d794a6 dts: arm64: imx95_evk: add netc dts nodes
Added NETC dts nodes in imx95_evk A55 platform.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2025-08-13 11:08:39 +01:00
Yongxu Wang
19d118d98d dts: arm: nxp_imx95_m7: add pm node
added wait/stop/suspend pm node for imx95 m7

Signed-off-by: Yongxu Wang <yongxu.wang@nxp.com>
2025-08-13 11:08:00 +01:00
Mahesh Mahadevan
94f93405c1 dts: nxp: Add sleep-output property
This property allows a user to specify the operation of a
pin in sleep mode.
By default, pins are configured to be output low in sleep mode.

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2025-08-12 21:33:34 +02:00
Quy Tran
aadf381bdf dts: rx: Add dts property for flash driver on RSK-RX130-512kb
Add dts for flash controller includes code and data flash region
on RSK-RX130-512kb

Signed-off-by: Quy Tran <quy.tran.pz@renesas.com>
2025-08-12 09:54:10 +03:00
Quy Tran
56ec47c62d drivers: flash: Add flash driver support for RX with flash type 1
- Add support for flash driver on RX with flash type 1
- Add bindings for flash driver on RX

Signed-off-by: Quy Tran <quy.tran.pz@renesas.com>
2025-08-12 09:54:10 +03:00
Sergei Ovchinnikov
b590873e84 dts: bindings: regulator: fix npm13xx soft start current enum
The nPM1300 datasheet featured wrong soft start current values which
were also used in the DTS bindings for its regulator driver. This fixes
the values aligning them with the next release of the document.

Signed-off-by: Sergei Ovchinnikov <sergei.ovchinnikov@nordicsemi.no>
2025-08-11 14:07:49 +03:00
Helmut Lord
169db46cd6 dp: add option to keep reset deasserted
Adds a property to keep reset deasserted even when the SWD port is
disconnected.

Signed-off-by: Helmut Lord <kellyhlord@gmail.com>
2025-08-11 14:07:41 +03:00
Tomasz Leman
bfdab166e3 intel_adsp: Introduce ACE 4.0 architecture with NVL/NVL-S platforms
Introduce the ACE 4.0 architecture, along with support for the NVL and
NVL-S platforms within the Intel ADSP framework in the Zephyr project.

This update includes:

- Addition of ACE 4.0 architecture configurations in Kconfig and
  Kconfig.intel_adsp.
- Inclusion of device tree source files for NVL and NVL-S platforms,
  defining CPU, memory, and peripheral configurations.
- Updates to driver files to support ACE 4.0 specific features,
  including DMIC and SSP configurations.
- Introduction of new header files for ACE 4.0, detailing boot,
  interrupt, IPC, power, and shim functionalities.
- Modifications to the CMakeLists.txt to include ACE 4.0 MMU support.
- Addition of default configurations for NVL and NVL-S platforms in
  Kconfig.defconfig.ace40.

The NVL and NVL-S platforms are part of the Nova Lake series, targeting
advanced audio processing capabilities. ACE 4.0 introduces enhanced DSP
capabilities and advanced power management features, improving audio
stream handling and synchronization compared to ACE 3.0.

Signed-off-by: Flavio Ceolin <flavio.ceolin@intel.com>
Signed-off-by: Daniel Leung <daniel.leung@intel.com>
Signed-off-by: Serhiy Katsyuba <serhiy.katsyuba@intel.com>
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
Signed-off-by: Tomasz Leman <tomasz.m.leman@intel.com>
2025-08-11 12:50:10 +03:00
Karthikeyan Krishnasamy
33a43faffc dts: arm: ti: mspm0: add support for rtc
Add a rtc support for mspm0

Signed-off-by: Karthikeyan Krishnasamy <karthikeyan@linumiz.com>
2025-08-11 12:49:01 +03:00
Karthikeyan Krishnasamy
0278b9c2d5 dts: bindings: rtc: introduce ti mspm0 rtc binding
add Real-Time Clock binding for Texas Instruments MSPM0 Family

Signed-off-by: Karthikeyan Krishnasamy <karthikeyan@linumiz.com>
2025-08-11 12:49:01 +03:00
Phi Tran
8340dedbea drivers: clock control: Add support clock control for RX261
Add support clock control for RX261

Signed-off-by: Phi Tran <phi.tran.jg@bp.renesas.com>
2025-08-11 12:48:35 +03:00
Hau Ho
aa8ae86a9c dts: renesas: initial support dts SoC layer on RX261.
This commit to initial support dts SoC layer on RX261

Signed-off-by: Hau Ho <hau.ho.xc@bp.renesas.com>
Signed-off-by: Phi Tran <phi.tran.jg@bp.renesas.com>
2025-08-11 12:48:35 +03:00
Camille BAUD
5d8cf554e8 drivers: display: ssd1327: greyscale -> grayscale
greyscale -> grayscale

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-08-10 22:08:49 +03:00
Camille BAUD
faf96bc1f0 drivers: display: Add gamma table setting to ssd1327
This adds the ability to send gamma settings to the controller

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-08-10 22:08:49 +03:00
Dmitrii Sharshakov
f2f496df84 drivers: reset: rpi_pico: rewrite
Use HAL functions, which also wait for reset to complete.

Remove unused register size and active-low DT props.

Signed-off-by: Dmitrii Sharshakov <d3dx12.xx@gmail.com>
2025-08-09 03:40:17 -04:00