blob: 2a4d1cb49658cebe5bf85e5f8ccef8adb8d4434e [file] [log] [blame]
dillon minf132c492021-04-09 15:28:44 +08001// SPDX-License-Identifier: GPL-2.0+ OR X11
2/*
3 * Copyright 2021 - Dillon Min <dillon.minfei@gmail.com>
4 *
5 */
6
7/dts-v1/;
8#include "stm32h750.dtsi"
9#include "stm32h7-pinctrl.dtsi"
10#include <dt-bindings/interrupt-controller/irq.h>
11#include <dt-bindings/gpio/gpio.h>
12
13/ {
14 model = "RT-Thread STM32H750i-ART-PI board";
15 compatible = "st,stm32h750i-art-pi", "st,stm32h750";
16
17 chosen {
18 bootargs = "root=/dev/ram";
19 stdout-path = "serial0:2000000n8";
20 };
21
22 memory@c0000000 {
23 device_type = "memory";
24 reg = <0xc0000000 0x2000000>;
25 };
26
27 reserved-memory {
28 #address-cells = <1>;
29 #size-cells = <1>;
30 ranges;
31
32 linux,cma {
33 compatible = "shared-dma-pool";
34 no-map;
35 size = <0x100000>;
36 linux,dma-default;
37 };
38 };
39
40 aliases {
41 serial0 = &uart4;
42 serial1 = &usart3;
43 };
44
45 leds {
46 compatible = "gpio-leds";
47 led-red {
48 gpios = <&gpioi 8 0>;
49 };
50 led-green {
51 gpios = <&gpioc 15 0>;
52 linux,default-trigger = "heartbeat";
53 };
54 };
55
56 v3v3: regulator-v3v3 {
57 compatible = "regulator-fixed";
58 regulator-name = "v3v3";
59 regulator-min-microvolt = <3300000>;
60 regulator-max-microvolt = <3300000>;
61 regulator-always-on;
62 };
63
64 wlan_pwr: regulator-wlan {
65 compatible = "regulator-fixed";
66
67 regulator-name = "wl-reg";
68 regulator-min-microvolt = <3300000>;
69 regulator-max-microvolt = <3300000>;
70
71 gpios = <&gpioc 13 GPIO_ACTIVE_HIGH>;
72 enable-active-high;
73 };
74};
75
76&clk_hse {
77 clock-frequency = <25000000>;
78};
79
80&dma1 {
81 status = "okay";
82};
83
84&dma2 {
85 status = "okay";
86};
87
88&mac {
89 status = "disabled";
90 pinctrl-0 = <&ethernet_rmii>;
91 pinctrl-names = "default";
92 phy-mode = "rmii";
93 phy-handle = <&phy0>;
94
95 mdio0 {
96 #address-cells = <1>;
97 #size-cells = <0>;
98 compatible = "snps,dwmac-mdio";
99 phy0: ethernet-phy@0 {
100 reg = <0>;
101 };
102 };
103};
104
105&sdmmc1 {
106 pinctrl-names = "default", "opendrain", "sleep";
107 pinctrl-0 = <&sdmmc1_b4_pins_a>;
108 pinctrl-1 = <&sdmmc1_b4_od_pins_a>;
109 pinctrl-2 = <&sdmmc1_b4_sleep_pins_a>;
110 broken-cd;
111 st,neg-edge;
112 bus-width = <4>;
113 vmmc-supply = <&v3v3>;
114 status = "okay";
115};
116
117&sdmmc2 {
118 pinctrl-names = "default", "opendrain", "sleep";
119 pinctrl-0 = <&sdmmc2_b4_pins_a>;
120 pinctrl-1 = <&sdmmc2_b4_od_pins_a>;
121 pinctrl-2 = <&sdmmc2_b4_sleep_pins_a>;
122 broken-cd;
123 non-removable;
124 st,neg-edge;
125 bus-width = <4>;
126 vmmc-supply = <&wlan_pwr>;
127 status = "okay";
128
129 #address-cells = <1>;
130 #size-cells = <0>;
131 brcmf: bcrmf@1 {
132 reg = <1>;
133 compatible = "brcm,bcm4329-fmac";
134 };
135};
136
137&spi1 {
138 status = "okay";
139 pinctrl-0 = <&spi1_pins>;
140 pinctrl-names = "default";
141 cs-gpios = <&gpioa 4 GPIO_ACTIVE_LOW>;
142 dmas = <&dmamux1 37 0x400 0x05>,
143 <&dmamux1 38 0x400 0x05>;
144 dma-names = "rx", "tx";
145
146 flash@0 {
147 #address-cells = <1>;
148 #size-cells = <1>;
149 compatible = "winbond,w25q128", "jedec,spi-nor";
150 reg = <0>;
151 spi-max-frequency = <80000000>;
152
153 partition@0 {
154 label = "root filesystem";
155 reg = <0 0x1000000>;
156 };
157 };
158};
159
160&usart2 {
161 pinctrl-0 = <&usart2_pins>;
162 pinctrl-names = "default";
163 status = "disabled";
164};
165
166&usart3 {
167 pinctrl-names = "default";
168 pinctrl-0 = <&usart3_pins>;
169 dmas = <&dmamux1 45 0x400 0x05>,
170 <&dmamux1 46 0x400 0x05>;
171 dma-names = "rx", "tx";
172 st,hw-flow-ctrl;
173 status = "okay";
174
175 bluetooth {
176 compatible = "brcm,bcm43438-bt";
177 host-wakeup-gpios = <&gpioc 0 GPIO_ACTIVE_HIGH>;
178 device-wakeup-gpios = <&gpioi 10 GPIO_ACTIVE_HIGH>;
179 shutdown-gpios = <&gpioi 11 GPIO_ACTIVE_HIGH>;
180 max-speed = <115200>;
181 };
182};
183
184&uart4 {
185 pinctrl-0 = <&uart4_pins>;
186 pinctrl-names = "default";
187 status = "okay";
188};