arm64: allwinner: h5: orangepi-prime: Sync usb otg nodes from Linux
[oweals/u-boot.git] / arch / arm / dts / stm32429i-eval.dts
1 // SPDX-License-Identifier: GPL-2.0+
2 /*
3  * Copyright (C) 2015, STMicroelectronics - All Rights Reserved
4  * Author: Maxime Coquelin <mcoquelin.stm32@gmail.com> for STMicroelectronics.
5  */
6
7 /dts-v1/;
8 #include "stm32f429.dtsi"
9 #include "stm32f429-pinctrl.dtsi"
10 #include <dt-bindings/input/input.h>
11 #include <dt-bindings/gpio/gpio.h>
12
13 / {
14         model = "STMicroelectronics STM32429i-EVAL board";
15         compatible = "st,stm32429i-eval", "st,stm32f429";
16
17         chosen {
18                 bootargs = "root=/dev/ram";
19                 stdout-path = "serial0:115200n8";
20         };
21
22         memory {
23                 reg = <0x00000000 0x2000000>;
24         };
25
26         aliases {
27                 serial0 = &usart1;
28         };
29
30         clocks {
31                 clk_ext_camera: clk-ext-camera {
32                         #clock-cells = <0>;
33                         compatible = "fixed-clock";
34                         clock-frequency = <24000000>;
35                 };
36         };
37
38         soc {
39                 dma-ranges = <0xc0000000 0x0 0x10000000>;
40         };
41
42         regulators {
43                 compatible = "simple-bus";
44                 #address-cells = <1>;
45                 #size-cells = <0>;
46
47                 reg_vref: regulator@0 {
48                         compatible = "regulator-fixed";
49                         reg = <0>;
50                         regulator-name = "vref";
51                         regulator-min-microvolt = <3300000>;
52                         regulator-max-microvolt = <3300000>;
53                 };
54         };
55
56         leds {
57                 compatible = "gpio-leds";
58                 green {
59                         gpios = <&gpiog 6 1>;
60                         linux,default-trigger = "heartbeat";
61                 };
62                 orange {
63                         gpios = <&gpiog 7 1>;
64                 };
65                 red {
66                         gpios = <&gpiog 10 1>;
67                 };
68                 blue {
69                         gpios = <&gpiog 12 1>;
70                 };
71         };
72
73         gpio_keys {
74                 compatible = "gpio-keys";
75                 #address-cells = <1>;
76                 #size-cells = <0>;
77                 autorepeat;
78                 button@0 {
79                         label = "Wake up";
80                         linux,code = <KEY_WAKEUP>;
81                         gpios = <&gpioa 0 0>;
82                 };
83                 button@1 {
84                         label = "Tamper";
85                         linux,code = <KEY_RESTART>;
86                         gpios = <&gpioc 13 0>;
87                 };
88         };
89
90         usbotg_hs_phy: usbphy {
91                 #phy-cells = <0>;
92                 compatible = "usb-nop-xceiv";
93                 clocks = <&rcc 0 STM32F4_AHB1_CLOCK(OTGHSULPI)>;
94                 clock-names = "main_clk";
95         };
96
97         panel_rgb: panel-rgb {
98                 compatible = "ampire,am-480272h3tmqw-t01h";
99                 status = "okay";
100                 port {
101                         panel_in_rgb: endpoint {
102                                 remote-endpoint = <&ltdc_out_rgb>;
103                         };
104                 };
105         };
106
107         mmc_vcard: mmc_vcard {
108                 compatible = "regulator-fixed";
109                 regulator-name = "mmc_vcard";
110                 regulator-min-microvolt = <3300000>;
111                 regulator-max-microvolt = <3300000>;
112         };
113 };
114
115 &adc {
116         pinctrl-names = "default";
117         pinctrl-0 = <&adc3_in8_pin>;
118         vref-supply = <&reg_vref>;
119         status = "okay";
120         adc3: adc@200 {
121                 st,adc-channels = <8>;
122                 status = "okay";
123         };
124 };
125
126 &clk_hse {
127         clock-frequency = <25000000>;
128 };
129
130 &crc {
131         status = "okay";
132 };
133
134 &dcmi {
135         status = "okay";
136
137         port {
138                 dcmi_0: endpoint {
139                         remote-endpoint = <&ov2640_0>;
140                         bus-width = <8>;
141                         hsync-active = <0>;
142                         vsync-active = <0>;
143                         pclk-sample = <1>;
144                 };
145         };
146 };
147
148 &i2c1 {
149         pinctrl-0 = <&i2c1_pins>;
150         pinctrl-names = "default";
151         status = "okay";
152
153         ov2640: camera@30 {
154                 compatible = "ovti,ov2640";
155                 reg = <0x30>;
156                 resetb-gpios = <&stmpegpio 2 GPIO_ACTIVE_HIGH>;
157                 pwdn-gpios = <&stmpegpio 0 GPIO_ACTIVE_LOW>;
158                 clocks = <&clk_ext_camera>;
159                 clock-names = "xvclk";
160                 status = "okay";
161
162                 port {
163                         ov2640_0: endpoint {
164                                 remote-endpoint = <&dcmi_0>;
165                         };
166                 };
167         };
168
169         stmpe1600: stmpe1600@42 {
170                 compatible = "st,stmpe1600";
171                 reg = <0x42>;
172                 interrupts = <8 3>;
173                 interrupt-parent = <&gpioi>;
174                 interrupt-controller;
175                 wakeup-source;
176
177                 stmpegpio: stmpe_gpio {
178                         compatible = "st,stmpe-gpio";
179                         gpio-controller;
180                         #gpio-cells = <2>;
181                 };
182         };
183 };
184
185 &iwdg {
186         status = "okay";
187         timeout-sec = <32>;
188 };
189
190 &ltdc {
191         status = "okay";
192         pinctrl-0 = <&ltdc_pins>;
193         pinctrl-names = "default";
194         dma-ranges;
195
196         port {
197                 ltdc_out_rgb: endpoint {
198                         remote-endpoint = <&panel_in_rgb>;
199                 };
200         };
201 };
202
203 &mac {
204         status = "okay";
205         pinctrl-0       = <&ethernet_mii>;
206         pinctrl-names   = "default";
207         phy-mode        = "mii";
208         phy-handle      = <&phy1>;
209         mdio0 {
210                 #address-cells = <1>;
211                 #size-cells = <0>;
212                 compatible = "snps,dwmac-mdio";
213                 phy1: ethernet-phy@1 {
214                         reg = <1>;
215                 };
216         };
217 };
218
219 &rtc {
220         status = "okay";
221 };
222
223 &sdio {
224         status = "okay";
225         vmmc-supply = <&mmc_vcard>;
226         cd-gpios = <&stmpegpio 15 GPIO_ACTIVE_HIGH>;
227         cd-inverted;
228         pinctrl-names = "default", "opendrain";
229         pinctrl-0 = <&sdio_pins>;
230         pinctrl-1 = <&sdio_pins_od>;
231         bus-width = <4>;
232         max-frequency = <14000000>;
233 };
234
235 &timers1 {
236         status = "okay";
237
238         pwm {
239                 pinctrl-0 = <&pwm1_pins>;
240                 pinctrl-names = "default";
241                 status = "okay";
242         };
243
244         timer@0 {
245                 status = "okay";
246         };
247 };
248
249 &timers3 {
250         status = "okay";
251
252         pwm {
253                 pinctrl-0 = <&pwm3_pins>;
254                 pinctrl-names = "default";
255                 status = "okay";
256         };
257
258         timer@2 {
259                 status = "okay";
260         };
261 };
262
263 &usart1 {
264         pinctrl-0 = <&usart1_pins_a>;
265         pinctrl-names = "default";
266         status = "okay";
267 };
268
269 &usbotg_hs {
270         dr_mode = "host";
271         phys = <&usbotg_hs_phy>;
272         phy-names = "usb2-phy";
273         pinctrl-0 = <&usbotg_hs_pins_a>;
274         pinctrl-names = "default";
275         status = "okay";
276 };