1 // SPDX-License-Identifier: (GPL-2.0 OR BSD-3-Clause)
3 * Copyright (C) Linaro Ltd 2019 - All Rights Reserved
4 * Author: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
9 #include "stm32mp157c.dtsi"
10 #include "stm32mp157xac-pinctrl.dtsi"
11 #include <dt-bindings/gpio/gpio.h>
12 #include <dt-bindings/mfd/st,stpmic1.h>
15 model = "Arrow Electronics STM32MP157A Avenger96 board";
16 compatible = "arrow,stm32mp157a-avenger96", "st,stm32mp157";
20 ethernet0 = ðernet0;
28 stdout-path = "serial0:115200n8";
32 device_type = "memory";
33 reg = <0xc0000000 0x40000000>;
37 compatible = "gpio-leds";
39 label = "green:user1";
40 gpios = <&gpioz 7 GPIO_ACTIVE_HIGH>;
41 linux,default-trigger = "heartbeat";
42 default-state = "off";
46 label = "green:user2";
47 gpios = <&gpiof 3 GPIO_ACTIVE_HIGH>;
48 linux,default-trigger = "mmc0";
49 default-state = "off";
53 label = "green:user3";
54 gpios = <&gpiog 0 GPIO_ACTIVE_HIGH>;
55 linux,default-trigger = "mmc1";
56 default-state = "off";
60 label = "green:user3";
61 gpios = <&gpiog 1 GPIO_ACTIVE_HIGH>;
62 linux,default-trigger = "none";
63 default-state = "off";
68 label = "yellow:wifi";
69 gpios = <&gpioz 3 GPIO_ACTIVE_HIGH>;
70 linux,default-trigger = "phy0tx";
71 default-state = "off";
76 gpios = <&gpioz 6 GPIO_ACTIVE_HIGH>;
77 linux,default-trigger = "bluetooth-power";
78 default-state = "off";
82 sd_switch: regulator-sd_switch {
83 compatible = "regulator-gpio";
84 regulator-name = "sd_switch";
85 regulator-min-microvolt = <1800000>;
86 regulator-max-microvolt = <2900000>;
87 regulator-type = "voltage";
90 gpios = <&gpioi 5 GPIO_ACTIVE_HIGH>;
92 states = <1800000 0x1>,
99 pinctrl-0 = <ðernet0_rgmii_pins_b>;
100 pinctrl-1 = <ðernet0_rgmii_pins_sleep_b>;
101 pinctrl-names = "default", "sleep";
104 phy-handle = <&phy0>;
105 phy-reset-gpios = <&gpioz 2 GPIO_ACTIVE_LOW>;
108 #address-cells = <1>;
110 compatible = "snps,dwmac-mdio";
111 phy0: ethernet-phy@7 {
118 pinctrl-names = "default";
119 pinctrl-0 = <&i2c1_pins_b>;
120 i2c-scl-rising-time-ns = <185>;
121 i2c-scl-falling-time-ns = <20>;
123 /delete-property/dmas;
124 /delete-property/dma-names;
128 pinctrl-names = "default";
129 pinctrl-0 = <&i2c2_pins_b1 &i2c2_pins_b2>;
130 i2c-scl-rising-time-ns = <185>;
131 i2c-scl-falling-time-ns = <20>;
133 /delete-property/dmas;
134 /delete-property/dma-names;
138 pinctrl-names = "default";
139 pinctrl-0 = <&i2c4_pins_a>;
140 i2c-scl-rising-time-ns = <185>;
141 i2c-scl-falling-time-ns = <20>;
143 /delete-property/dmas;
144 /delete-property/dma-names;
147 compatible = "st,stpmic1";
149 interrupts-extended = <&exti 55 IRQ_TYPE_EDGE_FALLING>;
150 interrupt-controller;
151 #interrupt-cells = <2>;
154 st,main-control-register = <0x04>;
155 st,vin-control-register = <0xc0>;
156 st,usb-control-register = <0x30>;
159 compatible = "st,stpmic1-regulators";
161 ldo1-supply = <&v3v3>;
162 ldo2-supply = <&v3v3>;
163 ldo3-supply = <&vdd_ddr>;
164 ldo5-supply = <&v3v3>;
165 ldo6-supply = <&v3v3>;
166 pwr_sw1-supply = <&bst_out>;
167 pwr_sw2-supply = <&bst_out>;
170 regulator-name = "vddcore";
171 regulator-min-microvolt = <1200000>;
172 regulator-max-microvolt = <1350000>;
174 regulator-initial-mode = <0>;
175 regulator-over-current-protection;
179 regulator-name = "vdd_ddr";
180 regulator-min-microvolt = <1350000>;
181 regulator-max-microvolt = <1350000>;
183 regulator-initial-mode = <0>;
184 regulator-over-current-protection;
188 regulator-name = "vdd";
189 regulator-min-microvolt = <3300000>;
190 regulator-max-microvolt = <3300000>;
193 regulator-initial-mode = <0>;
194 regulator-over-current-protection;
198 regulator-name = "v3v3";
199 regulator-min-microvolt = <3300000>;
200 regulator-max-microvolt = <3300000>;
202 regulator-over-current-protection;
203 regulator-initial-mode = <0>;
207 regulator-name = "vdda";
208 regulator-min-microvolt = <2900000>;
209 regulator-max-microvolt = <2900000>;
210 interrupts = <IT_CURLIM_LDO1 0>;
211 interrupt-parent = <&pmic>;
215 regulator-name = "v2v8";
216 regulator-min-microvolt = <2800000>;
217 regulator-max-microvolt = <2800000>;
218 interrupts = <IT_CURLIM_LDO2 0>;
219 interrupt-parent = <&pmic>;
223 regulator-name = "vtt_ddr";
224 regulator-min-microvolt = <500000>;
225 regulator-max-microvolt = <750000>;
227 regulator-over-current-protection;
231 regulator-name = "vdd_usb";
232 regulator-min-microvolt = <3300000>;
233 regulator-max-microvolt = <3300000>;
234 interrupts = <IT_CURLIM_LDO4 0>;
235 interrupt-parent = <&pmic>;
239 regulator-name = "vdd_sd";
240 regulator-min-microvolt = <2900000>;
241 regulator-max-microvolt = <2900000>;
242 interrupts = <IT_CURLIM_LDO5 0>;
243 interrupt-parent = <&pmic>;
248 regulator-name = "v1v8";
249 regulator-min-microvolt = <1800000>;
250 regulator-max-microvolt = <1800000>;
251 interrupts = <IT_CURLIM_LDO6 0>;
252 interrupt-parent = <&pmic>;
253 regulator-enable-ramp-delay = <300000>;
257 regulator-name = "vref_ddr";
259 regulator-over-current-protection;
263 regulator-name = "bst_out";
264 interrupts = <IT_OCP_BOOST 0>;
265 interrupt-parent = <&pmic>;
269 regulator-name = "vbus_otg";
270 interrupts = <IT_OCP_OTG 0>;
271 interrupt-parent = <&pmic>;
275 regulator-name = "vbus_sw";
276 interrupts = <IT_OCP_SWOUT 0>;
277 interrupt-parent = <&pmic>;
278 regulator-active-discharge = <1>;
283 compatible = "st,stpmic1-onkey";
284 interrupts = <IT_PONKEY_F 0>, <IT_PONKEY_R 1>;
285 interrupt-names = "onkey-falling", "onkey-rising";
290 compatible = "st,stpmic1-wdt";
296 compatible = "atmel,24c02";
309 vdd_3v3_usbfs-supply = <&vdd_usb>;
313 pinctrl-names = "default", "sleep";
314 pinctrl-0 = <&qspi_clk_pins_a &qspi_bk1_pins_a>;
315 pinctrl-1 = <&qspi_clk_sleep_pins_a &qspi_bk1_sleep_pins_a>;
316 reg = <0x58003000 0x1000>, <0x70000000 0x200000>;
317 #address-cells = <1>;
321 flash0: spi-flash@0 {
322 compatible = "jedec,spi-nor";
324 spi-rx-bus-width = <4>;
325 spi-max-frequency = <108000000>;
326 #address-cells = <1>;
340 pinctrl-names = "default", "opendrain", "sleep";
341 pinctrl-0 = <&sdmmc1_b4_pins_a &sdmmc1_dir_pins_b>;
342 pinctrl-1 = <&sdmmc1_b4_od_pins_a &sdmmc1_dir_pins_b>;
343 pinctrl-2 = <&sdmmc1_b4_sleep_pins_a &sdmmc1_dir_sleep_pins_b>;
344 cd-gpios = <&gpioi 8 GPIO_ACTIVE_LOW>;
351 vmmc-supply = <&vdd_sd>;
352 vqmmc-supply = <&sd_switch>;
357 pinctrl-names = "default";
358 pinctrl-0 = <&sdmmc2_b4_pins_a &sdmmc2_d47_pins_b>;
364 vmmc-supply = <&v3v3>;
370 pinctrl-names = "default";
371 pinctrl-0 = <&spi2_pins_a>;
376 /* On Low speed expansion header */
378 pinctrl-names = "default";
379 pinctrl-0 = <&uart4_pins_b>;
384 /* On Low speed expansion header */
386 pinctrl-names = "default";
387 pinctrl-0 = <&uart7_pins_a>;
392 phys = <&usbphyc_port0>;
398 dr_mode = "peripheral";
399 phys = <&usbphyc_port1 0>;
400 phy-names = "usb2-phy";
409 phy-supply = <&vdd_usb>;
413 phy-supply = <&vdd_usb>;