Skip to content

Commit 3b33aa5

Browse files
ExaltZephyrkartben
authored andcommitted
dts: Add I3C configuration for STM32.
This commit adds the main DTS configurations required to enable I3C support on STM32. Signed-off-by: Mohammad Badawi <[email protected]> Signed-off-by: Sara Touqan <[email protected]>
1 parent b69004c commit 3b33aa5

File tree

2 files changed

+59
-0
lines changed

2 files changed

+59
-0
lines changed

dts/arm/st/h5/stm32h5.dtsi

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -457,6 +457,32 @@
457457
status = "disabled";
458458
};
459459

460+
i3c1: i3c@40005c00 {
461+
compatible = "st,stm32-i3c";
462+
reg = <0x40005c00 0x400>;
463+
interrupts = <123 0>, <124 0>;
464+
interrupt-names = "event", "error";
465+
#address-cells = <3>;
466+
#size-cells = <0>;
467+
clocks = <&rcc STM32_CLOCK(APB1, 23U)>;
468+
resets = <&rctl STM32_RESET(APB1L, 23U)>;
469+
zephyr,pm-device-runtime-auto;
470+
status = "disabled";
471+
};
472+
473+
i3c2: i3c@44003000 {
474+
compatible = "st,stm32-i3c";
475+
reg = <0x44003000 0x400>;
476+
interrupts = <131 0>, <132 0>;
477+
interrupt-names = "event", "error";
478+
#address-cells = <3>;
479+
#size-cells = <0>;
480+
clocks = <&rcc STM32_CLOCK(APB3, 9U)>;
481+
resets = <&rctl STM32_RESET(APB3, 9U)>;
482+
zephyr,pm-device-runtime-auto;
483+
status = "disabled";
484+
};
485+
460486
spi1: spi@40013000 {
461487
compatible = "st,stm32h7-spi", "st,stm32-spi-fifo", "st,stm32-spi";
462488
#address-cells = <1>;

dts/bindings/i3c/st,stm32-i3c.yaml

Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
# Copyright (c) 2024 EXALT Technologies.
2+
#
3+
# SPDX-License-Identifier: Apache-2.0
4+
5+
description: STM32H5 I3C controller
6+
7+
compatible: "st,stm32-i3c"
8+
9+
include: [i3c-controller.yaml, pinctrl-device.yaml, reset-device.yaml]
10+
11+
properties:
12+
reg:
13+
required: true
14+
15+
interrupts:
16+
required: true
17+
18+
pinctrl-names:
19+
required: true
20+
21+
resets:
22+
required: true
23+
24+
dmas:
25+
description: |
26+
Optional DMA channel specifier, required for DMA transactions.
27+
28+
dma-names:
29+
description: |
30+
DMA channel name. If DMA should be used, expected value is "rx" "tx" "tc" "rs".
31+
32+
For example
33+
dma-names = "rx", "tx", "tc", "rs";

0 commit comments

Comments
 (0)