Skip to content

Commit 49ba8fc

Browse files
passgatAlexandre Torgue
authored andcommitted
ARM: dts: stm32: support STM32h747i-disco board
The board includes an STM32H747XI SoC with the following resources: - 2 Mbytes Flash - 1 Mbyte SRAM - LCD-TFT controller - MIPI-DSI interface - FD-CAN - USB 2.0 high-speed/full-speed - Ethernet MAC - camera interface Detailed information can be found at: https://www.st.com/en/evaluation-tools/stm32h747i-disco.html Signed-off-by: Dario Binacchi <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Alexandre Torgue <[email protected]>
1 parent 8e71dfe commit 49ba8fc

File tree

2 files changed

+137
-0
lines changed

2 files changed

+137
-0
lines changed

arch/arm/boot/dts/st/Makefile

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,7 @@ dtb-$(CONFIG_ARCH_STM32) += \
2828
stm32746g-eval.dtb \
2929
stm32h743i-eval.dtb \
3030
stm32h743i-disco.dtb \
31+
stm32h747i-disco.dtb \
3132
stm32h750i-art-pi.dtb \
3233
stm32mp133c-prihmb.dtb \
3334
stm32mp135f-dhcor-dhsbc.dtb \
Lines changed: 136 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,136 @@
1+
// SPDX-License-Identifier: GPL-2.0
2+
/*
3+
* Copyright (C) 2025 Amarula Solutions, Dario Binacchi <[email protected]>
4+
*/
5+
6+
/dts-v1/;
7+
#include "stm32h743.dtsi"
8+
#include "stm32h7-pinctrl.dtsi"
9+
#include <dt-bindings/gpio/gpio.h>
10+
#include <dt-bindings/input/input.h>
11+
12+
/ {
13+
model = "STMicroelectronics STM32H747i-Discovery board";
14+
compatible = "st,stm32h747i-disco", "st,stm32h747";
15+
16+
chosen {
17+
bootargs = "root=/dev/ram";
18+
stdout-path = "serial0:115200n8";
19+
};
20+
21+
memory@d0000000 {
22+
device_type = "memory";
23+
reg = <0xd0000000 0x2000000>;
24+
};
25+
26+
aliases {
27+
serial0 = &usart1;
28+
serial1 = &uart8;
29+
};
30+
31+
v3v3: regulator-v3v3 {
32+
compatible = "regulator-fixed";
33+
regulator-name = "v3v3";
34+
regulator-min-microvolt = <3300000>;
35+
regulator-max-microvolt = <3300000>;
36+
regulator-always-on;
37+
};
38+
39+
leds {
40+
compatible = "gpio-leds";
41+
led-green {
42+
gpios = <&gpioi 12 GPIO_ACTIVE_LOW>;
43+
linux,default-trigger = "heartbeat";
44+
};
45+
led-orange {
46+
gpios = <&gpioi 13 GPIO_ACTIVE_LOW>;
47+
};
48+
led-red {
49+
gpios = <&gpioi 14 GPIO_ACTIVE_LOW>;
50+
};
51+
led-blue {
52+
gpios = <&gpioi 15 GPIO_ACTIVE_LOW>;
53+
};
54+
};
55+
56+
gpio-keys {
57+
compatible = "gpio-keys";
58+
autorepeat;
59+
button-0 {
60+
label = "User";
61+
linux,code = <KEY_WAKEUP>;
62+
gpios = <&gpioc 13 GPIO_ACTIVE_HIGH>;
63+
};
64+
button-1 {
65+
label = "JoySel";
66+
linux,code = <KEY_ENTER>;
67+
gpios = <&gpiok 2 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>;
68+
};
69+
button-2 {
70+
label = "JoyDown";
71+
linux,code = <KEY_DOWN>;
72+
gpios = <&gpiok 3 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>;
73+
};
74+
button-3 {
75+
label = "JoyUp";
76+
linux,code = <KEY_UP>;
77+
gpios = <&gpiok 6 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>;
78+
};
79+
button-4 {
80+
label = "JoyLeft";
81+
linux,code = <KEY_LEFT>;
82+
gpios = <&gpiok 4 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>;
83+
};
84+
button-5 {
85+
label = "JoyRight";
86+
linux,code = <KEY_RIGHT>;
87+
gpios = <&gpiok 5 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>;
88+
};
89+
};
90+
};
91+
92+
&clk_hse {
93+
clock-frequency = <25000000>;
94+
};
95+
96+
&mac {
97+
status = "disabled";
98+
pinctrl-0 = <&ethernet_rmii>;
99+
pinctrl-names = "default";
100+
phy-mode = "rmii";
101+
phy-handle = <&phy0>;
102+
103+
mdio0 {
104+
#address-cells = <1>;
105+
#size-cells = <0>;
106+
compatible = "snps,dwmac-mdio";
107+
phy0: ethernet-phy@0 {
108+
reg = <0>;
109+
};
110+
};
111+
};
112+
113+
&sdmmc1 {
114+
pinctrl-names = "default", "opendrain", "sleep";
115+
pinctrl-0 = <&sdmmc1_b4_pins_a>;
116+
pinctrl-1 = <&sdmmc1_b4_od_pins_a>;
117+
pinctrl-2 = <&sdmmc1_b4_sleep_pins_a>;
118+
cd-gpios = <&gpioi 8 GPIO_ACTIVE_LOW>;
119+
broken-cd;
120+
st,neg-edge;
121+
bus-width = <4>;
122+
vmmc-supply = <&v3v3>;
123+
status = "okay";
124+
};
125+
126+
&usart1 {
127+
pinctrl-0 = <&usart1_pins_b>;
128+
pinctrl-names = "default";
129+
status = "okay";
130+
};
131+
132+
&uart8 {
133+
pinctrl-0 = <&uart8_pins_a>;
134+
pinctrl-names = "default";
135+
status = "okay";
136+
};

0 commit comments

Comments
 (0)