Commit graph

582 commits

Author SHA1 Message Date
Camille BAUD
c36bd29a19 dts: syscon: Add BL70x efuse node
Adds the syscon node

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-08-20 16:30:48 +02:00
Camille BAUD
c1d20a52a0 dts: bflb: Add bl70x dts
Introduce most basic DTS for BL70x

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-08-20 16:30:48 +02:00
Camille BAUD
f3f434b4d5 dts: uart: Add uart nodes to BL61x
Adds the uart nodes for BL61x

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-08-20 13:45:26 +02:00
Camille BAUD
559ad926c1 dts: clock_control: Add BL61x clock nodes and bindings
This adds the clock_control nodes and bindings

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-08-20 13:45:26 +02:00
Camille BAUD
f0df862788 dts: pinctrl: Add bl61x pinctrl node
This adds the pinctrl node

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-08-20 13:45:26 +02:00
Camille BAUD
d57bf82360 dts: syscon: Add BL61x efuse node
Adds the syscon node

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-08-20 13:45:26 +02:00
Camille BAUD
e069d3ed79 dts: bflb: Add bl61x dts
Introduce most basic DTS for BL61x

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-08-20 13:45:26 +02:00
Lucas Tamborrino
02340eec77 drivers: mbox: espressif: add esp32c6 support
Add support for esp32c6 HP and LP Core

Signed-off-by: Lucas Tamborrino <lucas.tamborrino@espressif.com>
2025-08-07 13:15:36 +02:00
Tim Lin
f4e466eb60 drivers/espi: ite: Make ITE's eSPI driver to support PVT2 and PVT3
Make ITE's eSPI driver to support PVT2 and PVT3, but it is not
enabled by default.

Signed-off-by: Tim Lin <tim2.lin@ite.corp-partner.google.com>
2025-08-06 21:35:24 -04:00
Tim Lin
ff293bb61a drivers/flash: it51xxx: Add the M1K flash driver
The flash M1K driver supports read (up to 1K), write (1K), and
erase (4K) operations, which can be accessed via DLM.
Accessible flash regions include internal e-Flash or external SPI
flash via FSCE# or FSCE1#.

Signed-off-by: Tim Lin <tim2.lin@ite.corp-partner.google.com>
2025-08-06 17:09:46 +03:00
Raffael Rostagno
916d67870d soc: esp32c2: Add BT support
Add bluetooth support to ESP32-C2 and ESP8684.

Signed-off-by: Raffael Rostagno <raffael.rostagno@espressif.com>
2025-08-06 12:10:59 +03:00
Sebastian Głąb
ee89450165 boards: nordic: nrf54l09pdk: Remove obsolete board
Board nrf54l09pdk was renamed to nrf54lv10dk.
Remove obsolete board definition.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
2025-08-05 10:24:48 +01:00
Camille BAUD
bdffc08279 bflb: Make BL60x independant from SDK
Reorganize and update soc folder files for SDK-independance
Reorganize and update hal_bouffalolab files for SDK-independance
Reorganize and update soc dts files for SDK-independance
Update serial and pinctrl driver files for SDK-independance
Update ai_wb2_12f, bl604e_iot_dvk, and dt_bl10_dvk
to new bl60x support
and fixup openocd config of ai_wb2_12f

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-08-01 07:57:36 -04:00
Tim Lin
3e82d7c736 drivers/espi: ite: Add support for ESPI_PERIPHERAL_HOST_IO_PVT
Add support the host I/O over eSPI peripheral channel for private
channel.
The default port number of ESPI_PERIPHERAL_HOST_IO_PVT_PORT_NUM
for ITE SoC is 0x68.

Signed-off-by: Tim Lin <tim2.lin@ite.corp-partner.google.com>
2025-07-29 09:30:02 -04:00
Sebastian Głąb
878ddbe2f6 boards: nordic: nrf54l20pdk: Remove obsolete board
Board nrf54l20pdk was renamed to nrf54lm20dk.
Remove obsolete board definition.

Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
2025-07-24 17:00:33 +01:00
Raffael Rostagno
83f0e228bb dts: spi: esp32: Remove unused property
Remove unused DMA clock property from device tree. Clock will
be managed by DMA driver for devices with GDMA peripheral.

Signed-off-by: Raffael Rostagno <raffael.rostagno@espressif.com>
2025-07-24 16:58:48 +01:00
Jimmy Zheng
13e2125402 dts: riscv: andes: add andes_v5_ae350_clic.dtsi
Add andes_v5_ae350_clic for the AE350 FPGA platform with CLIC support.

Signed-off-by: Jimmy Zheng <jimmyzhe@andestech.com>
2025-07-19 15:28:58 -04:00
Fin Maaß
97fffc3298 dts: riscv: litex: update dts
Update dts, so keep up to date
with https://github.com/litex-hub/zephyr-on-litex-vexriscv

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-07-19 13:48:54 -04:00
Fin Maaß
d3ca2f07a9 drivers: spi: litex: remove core_ prefix
remove `core_` prefix from code and
register names, got dropped in litex in
https://github.com/enjoy-digital/litex/pull/2253

Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
2025-07-19 13:48:54 -04:00
Sylvio Alves
1df3403393 soc: esp32c6: add BLE support
Add BLE support to ESP32-C6 series.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2025-06-27 18:27:15 -05:00
Karol Lasończyk
387520c867 soc: nrf: Add nRF54LM20A device
Adding nRF54LM20A device.

Signed-off-by: Karol Lasończyk <karol.lasonczyk@nordicsemi.no>
2025-06-27 18:26:57 -05:00
Frank Kühndel
dbb8ee38f2 drivers: reset: Add MPFS MSS driver
Add driver for Microchip PolarFire SoC (MPFS) peripheral clock and soft
reset control.

Normally, the peripheral clocks and reset state are controlled by the
Hart Software Services (HSS) running on the Monitor processor.  As an
alternative to using HSS services, applications can now enable the reset
controller in a device tree overly, for example:

&reset {
  status = "okay";
};

&uart4 {
  resets = <&reset MSS_RESET_ID_MMUART4>;
};

Embedded the reset controller node in system controller node.

Signed-off-by: Frank Kühndel <frank.kuehndel@embedded-brains.de>
Signed-off-by: Sebastian Huber <sebastian.huber@embedded-brains.de>
Signed-off-by: Conor Paxton <conor.paxton@microchip.com>
2025-06-27 09:59:08 -05:00
Ren Chen
caeda699f5 drivers: spi: add it51xxx spi driver
This commit adds it51xxx spi driver.

Tested with: samples/drivers/spi_flash

Signed-off-by: Ren Chen <Ren.Chen@ite.com.tw>
2025-06-27 14:14:16 +02:00
Martin Jäger
99130bb6fe boards: espressif: esp32c6: Add ieee802154 support
Enable IEEE 802.15.4 driver for esp32c6_devkitc and xiao_esp32c6
boards.

Signed-off-by: Martin Jäger <martin@libre.solar>
2025-06-26 11:12:34 +02:00
b1cd947771 drivers: adc: add a driver for the CH32V003 ADC
The CH32V003 has a 8 channel, 10 bit onboard ADC. Add an immediate
mode driver and the appropriate pinctrl bindings. Note that the
CH32V003 GPIO pins have both a floating input and an analogue input
mode, and the pinctrl is needed to put the pin in analogue mode.

Signed-off-by: Michael Hope <michaelh@juju.nz>
2025-06-26 09:42:20 +02:00
b99b7d14f1 drivers: interrupt_controller: add a WCH EXTI external interrupt driver
The WCH External Trigger and Interrupt controller (EXTI) supports
between 8 and 22 lines where each line can trigger an interrupt on
rising edge, falling edge, or both edges. Lines are assigned to a
group, and each group has a separate interrupt. On the CH32V003/6,
there is one group of 8 lines, while on the CH32V208 there are
multiple groups with between one and six lines per group.

In the same way as the STM32 and GD32, define an EXTI driver that
configures the peripheral and an internal interface that can configure
individual lines.

Signed-off-by: Michael Hope <michaelh@juju.nz>
2025-06-26 09:38:56 +02:00
Miguel Gazquez
798dc5c976 soc: wch: Add packages for the ch32v303
Add the different packages of the CH32V303

Signed-off-by: Miguel Gazquez <miguel.gazquez@bootlin.com>
2025-06-24 15:34:42 -05:00
Miguel Gazquez
de0ef827cd dts: wch: add gpioe bank to ch32v303
Adds the gpioe bank to the ch32v303 devicetree.

Signed-off-by: Miguel Gazquez <miguel.gazquez@bootlin.com>
2025-06-24 15:34:42 -05:00
Miguel Gazquez
1f5a281e9b dts: wch: fix ngpios for some WCH SoCs
The CH32V20x and CH32V30x SoCs have 16 pins per GPIO bank, but in the
devicetree, `ngpios` was incorrectly set to 8.
Fix the devicetrees by setting the correct value.

Signed-off-by: Miguel Gazquez <miguel.gazquez@bootlin.com>
2025-06-24 15:34:42 -05:00
Yunshao Chiang
5a2765da26 drivers: comparator: add it51xxx_evb analog comparator driver
Add analog comparator driver for ITE it51xxx chip.

Signed-off-by: Yunshao Chiang <Yunshao.Chiang@ite.com.tw>
2025-06-24 15:33:17 -05:00
Camille BAUD
8c385be293 soc: bflb: enable clock_control for bl60x
This enables the clock_control driver build on bl60x.
It is currently deferred init, due to being incompatible
with current SDK-based boot, to avoid later giant PR.

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-06-21 10:40:20 +02:00
Camille BAUD
eb06f11a8f soc: bflb: fix bl60x using wrong mtime freq
use new timebase-frequency to fix the timebase of this SoC

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-06-18 09:12:26 -04:00
Tim Lin
a62f157118 drivers/espi: ite: Add it51xxx compatibility with it8xxx2 support retained
The driver originally supported only it8xxx2 series. This updates
introduces compatibility allow it to also support it51xxx series
with minimal changes.

Signed-off-by: Tim Lin <tim2.lin@ite.corp-partner.google.com>
2025-06-16 14:12:44 +02:00
Raffael Rostagno
0dd3274a92 dts: esp32c2: esp8684: Add GDMA support
Add GDMA peripheral to device tree.

Signed-off-by: Raffael Rostagno <raffael.rostagno@espressif.com>
2025-06-09 14:35:51 -07:00
Ruibin Chang
47d1e38043 drivers/counter: implement it51xxx counter driver
Implement counter driver for ITE it51xxx series chip.

Signed-off-by: Ruibin Chang <Ruibin.Chang@ite.com.tw>
2025-06-05 12:33:29 +02:00
Ruibin Chang
ec6b34d870 drivers/timer/it51xxx: remove not used timer
Timer 7 is not used in timer driver, which means that timer
driver doesn't initialize timer 7, it's just declared in dtsi.
So I remove it, timer 7 will be used as alarm timer for counter driver.

Signed-off-by: Ruibin Chang <Ruibin.Chang@ite.com.tw>
2025-06-05 12:33:29 +02:00
Benjamin Cabé
eec8db7bfb soc: esp32c6: Fix clock references
since commit e0a915a178, rtc is now clock

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-06-02 22:10:02 +02:00
Sylvio Alves
e0a915a178 soc: espressif: convert rtc peripheral to clock subsystem
Current ESP32 clock system is mixed with RTC labeling/registers,
but it doesn't implement a real-time clock (RTC) driver.

To avoid confusion and allow adding a proper RTC driver later,
this commit renames the existing RTC interface to CLOCK and make
it as a subsystem without any peripheral attached to it.

This better reflects its actual purpose as a general clock controller.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2025-06-02 17:38:08 +02:00
Camille BAUD
f81e7559bf drivers: spi: introduce basic spi driver for wch
introduces a basic SPI driver for CH32 series

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-05-29 23:25:49 +02:00
Tim Lin
022043c6f6 soc/ite/ec: it51xxx: Add a new SoC variant it51526bw
1. Add it51526bw SoC variant to it51xxx SoC series.
2. Create the .dtsi file with adjusted flash size for 512Kb (default = 1M).

Signed-off-by: Tim Lin <tim2.lin@ite.corp-partner.google.com>
2025-05-29 08:42:08 +02:00
Joel Guittet
9d4530fb79 drivers: counter: introduce counter node in esp32 timers
Add counter device tree node to the esp32 timers.

Signed-off-by: Joel Guittet <joelguittet@gmail.com>
2025-05-29 08:41:59 +02:00
Benjamin Cabé
464a49d1af dts: riscv: aesc: Add reg-names to machine timer node
Commit 42fb9067e4 makes it mandatory to
now have reg-names property on the riscv,machine-timer node. This DTS
file was somehow missed as part of the refactoring.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-05-27 21:39:55 +02:00
Chen Xingyu
e40315eb27 dts: riscv: Add reg-names to machine timer nodes
This commit updates all relevant device tree source files using the
riscv,machine-timer binding to explicitly define `reg-names` for the MTIME
and MTIMECMP registers.

This change ensures compatibility with the updated riscv_machine_timer
driver, which now relies on `reg-names` to resolve register addresses
instead of using fixed index positions.

Signed-off-by: Chen Xingyu <hi@xingrz.me>
2025-05-27 19:04:22 +02:00
Miguel Gazquez
be9549be60 soc: Add support for the WCH CH32V303
Adds support for building an image for the ch32v303.

Signed-off-by: Miguel Gazquez <miguel.gazquez@bootlin.com>
2025-05-24 18:03:53 +02:00
Raffael Rostagno
d8c6376030 soc: esp32c6: i2s: Add support
Add i2s support to ESP32-C6.

Signed-off-by: Raffael Rostagno <raffael.rostagno@espressif.com>
2025-05-22 15:25:12 +02:00
Raffael Rostagno
fb2b48fe41 drivers: pcnt: esp32c6: Add support
Add PCNT support to ESP32-C6.

Signed-off-by: Raffael Rostagno <raffael.rostagno@espressif.com>
2025-05-22 15:23:31 +02:00
Camille BAUD
7521971de8 dts: bflb: Enable efuse driver on bl60x
This enables the driver by default, it will be needed at init in the future

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-05-19 10:11:58 +02:00
Yunshao Chiang
8f8b223ff2 drivers: crypto: add it51xxx sha256 driver
Implement a crypto sha256 driver for it51xxx series.

Signed-off-by: Yunshao Chiang <Yunshao.Chiang@ite.com.tw>
2025-05-16 19:07:37 +02:00
Daniel Schultz
2120b82ec9 dts: riscv: Add aesc
ElemRV-N is based on the nitrogen SoC platform. Add the
base nitrogen device-tree and one for elemrv-n. The elemrv-n
device-tree will contain all IP cores later.

Signed-off-by: Daniel Schultz <dnltz@aesc-silicon.de>
2025-05-14 14:09:41 +02:00
Camille BAUD
e4783692e4 modules: hal_wch: add CH32V203 support
Adds CH32V203 support

Signed-off-by: Camille BAUD <mail@massdriver.space>
2025-05-14 11:02:52 +01:00