xref: /freebsd-src/sys/contrib/device-tree/src/arm64/st/stm32mp257f-ev1.dts (revision 0e8011faf58b743cc652e3b2ad0f7671227610df)
1f126890aSEmmanuel Vadot// SPDX-License-Identifier: (GPL-2.0-or-later OR BSD-3-Clause)
2f126890aSEmmanuel Vadot/*
3f126890aSEmmanuel Vadot * Copyright (C) STMicroelectronics 2023 - All Rights Reserved
4f126890aSEmmanuel Vadot * Author: Alexandre Torgue <alexandre.torgue@foss.st.com> for STMicroelectronics.
5f126890aSEmmanuel Vadot */
6f126890aSEmmanuel Vadot
7f126890aSEmmanuel Vadot/dts-v1/;
8f126890aSEmmanuel Vadot
984943d6fSEmmanuel Vadot#include <dt-bindings/gpio/gpio.h>
10*0e8011faSEmmanuel Vadot#include <dt-bindings/regulator/st,stm32mp25-regulator.h>
11f126890aSEmmanuel Vadot#include "stm32mp257.dtsi"
12f126890aSEmmanuel Vadot#include "stm32mp25xf.dtsi"
13f126890aSEmmanuel Vadot#include "stm32mp25-pinctrl.dtsi"
14f126890aSEmmanuel Vadot#include "stm32mp25xxai-pinctrl.dtsi"
15f126890aSEmmanuel Vadot
16f126890aSEmmanuel Vadot/ {
17f126890aSEmmanuel Vadot	model = "STMicroelectronics STM32MP257F-EV1 Evaluation Board";
18f126890aSEmmanuel Vadot	compatible = "st,stm32mp257f-ev1", "st,stm32mp257";
19f126890aSEmmanuel Vadot
20f126890aSEmmanuel Vadot	aliases {
21*0e8011faSEmmanuel Vadot		ethernet0 = &ethernet2;
22f126890aSEmmanuel Vadot		serial0 = &usart2;
23*0e8011faSEmmanuel Vadot		serial1 = &usart6;
24f126890aSEmmanuel Vadot	};
25f126890aSEmmanuel Vadot
26f126890aSEmmanuel Vadot	chosen {
27f126890aSEmmanuel Vadot		stdout-path = "serial0:115200n8";
28f126890aSEmmanuel Vadot	};
29f126890aSEmmanuel Vadot
30f126890aSEmmanuel Vadot	memory@80000000 {
31f126890aSEmmanuel Vadot		device_type = "memory";
32f126890aSEmmanuel Vadot		reg = <0x0 0x80000000 0x1 0x0>;
33f126890aSEmmanuel Vadot	};
34f126890aSEmmanuel Vadot
35f126890aSEmmanuel Vadot	reserved-memory {
36f126890aSEmmanuel Vadot		#address-cells = <2>;
37f126890aSEmmanuel Vadot		#size-cells = <2>;
38f126890aSEmmanuel Vadot		ranges;
39f126890aSEmmanuel Vadot
40f126890aSEmmanuel Vadot		fw@80000000 {
41f126890aSEmmanuel Vadot			compatible = "shared-dma-pool";
42f126890aSEmmanuel Vadot			reg = <0x0 0x80000000 0x0 0x4000000>;
43f126890aSEmmanuel Vadot			no-map;
44f126890aSEmmanuel Vadot		};
45f126890aSEmmanuel Vadot	};
4684943d6fSEmmanuel Vadot};
4784943d6fSEmmanuel Vadot
4884943d6fSEmmanuel Vadot&arm_wdt {
4984943d6fSEmmanuel Vadot	timeout-sec = <32>;
5084943d6fSEmmanuel Vadot	status = "okay";
5184943d6fSEmmanuel Vadot};
5284943d6fSEmmanuel Vadot
53*0e8011faSEmmanuel Vadot&ethernet2 {
54*0e8011faSEmmanuel Vadot	pinctrl-names = "default", "sleep";
55*0e8011faSEmmanuel Vadot	pinctrl-0 = <&eth2_rgmii_pins_a>;
56*0e8011faSEmmanuel Vadot	pinctrl-1 = <&eth2_rgmii_sleep_pins_a>;
57*0e8011faSEmmanuel Vadot	max-speed = <1000>;
58*0e8011faSEmmanuel Vadot	phy-handle = <&phy0_eth2>;
59*0e8011faSEmmanuel Vadot	phy-mode = "rgmii-id";
60*0e8011faSEmmanuel Vadot	status = "okay";
61*0e8011faSEmmanuel Vadot
62*0e8011faSEmmanuel Vadot	mdio {
63*0e8011faSEmmanuel Vadot		#address-cells = <1>;
64*0e8011faSEmmanuel Vadot		#size-cells = <0>;
65*0e8011faSEmmanuel Vadot		compatible = "snps,dwmac-mdio";
66*0e8011faSEmmanuel Vadot		phy0_eth2: ethernet-phy@1 {
67*0e8011faSEmmanuel Vadot			compatible = "ethernet-phy-id001c.c916";
68*0e8011faSEmmanuel Vadot			reg = <1>;
69*0e8011faSEmmanuel Vadot			reset-assert-us = <10000>;
70*0e8011faSEmmanuel Vadot			reset-deassert-us = <300>;
71*0e8011faSEmmanuel Vadot			reset-gpios =  <&gpiog 6 GPIO_ACTIVE_LOW>;
72*0e8011faSEmmanuel Vadot		};
73*0e8011faSEmmanuel Vadot	};
74*0e8011faSEmmanuel Vadot};
75*0e8011faSEmmanuel Vadot
767d0873ebSEmmanuel Vadot&i2c2 {
777d0873ebSEmmanuel Vadot	pinctrl-names = "default", "sleep";
787d0873ebSEmmanuel Vadot	pinctrl-0 = <&i2c2_pins_a>;
797d0873ebSEmmanuel Vadot	pinctrl-1 = <&i2c2_sleep_pins_a>;
807d0873ebSEmmanuel Vadot	i2c-scl-rising-time-ns = <100>;
817d0873ebSEmmanuel Vadot	i2c-scl-falling-time-ns = <13>;
827d0873ebSEmmanuel Vadot	clock-frequency = <400000>;
837d0873ebSEmmanuel Vadot	status = "okay";
847d0873ebSEmmanuel Vadot};
857d0873ebSEmmanuel Vadot
867d0873ebSEmmanuel Vadot&i2c8 {
877d0873ebSEmmanuel Vadot	pinctrl-names = "default", "sleep";
887d0873ebSEmmanuel Vadot	pinctrl-0 = <&i2c8_pins_a>;
897d0873ebSEmmanuel Vadot	pinctrl-1 = <&i2c8_sleep_pins_a>;
907d0873ebSEmmanuel Vadot	i2c-scl-rising-time-ns = <57>;
917d0873ebSEmmanuel Vadot	i2c-scl-falling-time-ns = <7>;
927d0873ebSEmmanuel Vadot	clock-frequency = <400000>;
937d0873ebSEmmanuel Vadot	status = "disabled";
947d0873ebSEmmanuel Vadot};
957d0873ebSEmmanuel Vadot
96*0e8011faSEmmanuel Vadot&scmi_regu {
97*0e8011faSEmmanuel Vadot	scmi_vddio1: regulator@0 {
98*0e8011faSEmmanuel Vadot		regulator-min-microvolt = <1800000>;
99*0e8011faSEmmanuel Vadot		regulator-max-microvolt = <3300000>;
100*0e8011faSEmmanuel Vadot	};
101*0e8011faSEmmanuel Vadot	scmi_vddcore: regulator@11  {
102*0e8011faSEmmanuel Vadot		reg = <VOLTD_SCMI_STPMIC2_BUCK2>;
103*0e8011faSEmmanuel Vadot		regulator-name = "vddcore";
104*0e8011faSEmmanuel Vadot	};
105*0e8011faSEmmanuel Vadot	scmi_v1v8: regulator@14  {
106*0e8011faSEmmanuel Vadot		reg = <VOLTD_SCMI_STPMIC2_BUCK5>;
107*0e8011faSEmmanuel Vadot		regulator-name = "v1v8";
108*0e8011faSEmmanuel Vadot	};
109*0e8011faSEmmanuel Vadot	scmi_v3v3: regulator@16 {
110*0e8011faSEmmanuel Vadot		reg = <VOLTD_SCMI_STPMIC2_BUCK7>;
111*0e8011faSEmmanuel Vadot		regulator-name = "v3v3";
112*0e8011faSEmmanuel Vadot	};
113*0e8011faSEmmanuel Vadot	scmi_vdd_emmc: regulator@18 {
114*0e8011faSEmmanuel Vadot		reg = <VOLTD_SCMI_STPMIC2_LDO2>;
115*0e8011faSEmmanuel Vadot		regulator-name = "vdd_emmc";
116*0e8011faSEmmanuel Vadot	};
117*0e8011faSEmmanuel Vadot	scmi_vdd3v3_usb: regulator@20 {
118*0e8011faSEmmanuel Vadot		reg = <VOLTD_SCMI_STPMIC2_LDO4>;
119*0e8011faSEmmanuel Vadot		regulator-name = "vdd3v3_usb";
120*0e8011faSEmmanuel Vadot	};
121*0e8011faSEmmanuel Vadot	scmi_vdd_sdcard: regulator@23 {
122*0e8011faSEmmanuel Vadot		reg = <VOLTD_SCMI_STPMIC2_LDO7>;
123*0e8011faSEmmanuel Vadot		regulator-name = "vdd_sdcard";
124*0e8011faSEmmanuel Vadot	};
125*0e8011faSEmmanuel Vadot};
126*0e8011faSEmmanuel Vadot
12784943d6fSEmmanuel Vadot&sdmmc1 {
12884943d6fSEmmanuel Vadot	pinctrl-names = "default", "opendrain", "sleep";
12984943d6fSEmmanuel Vadot	pinctrl-0 = <&sdmmc1_b4_pins_a>;
13084943d6fSEmmanuel Vadot	pinctrl-1 = <&sdmmc1_b4_od_pins_a>;
13184943d6fSEmmanuel Vadot	pinctrl-2 = <&sdmmc1_b4_sleep_pins_a>;
13284943d6fSEmmanuel Vadot	cd-gpios = <&gpiod 9 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>;
13384943d6fSEmmanuel Vadot	disable-wp;
13484943d6fSEmmanuel Vadot	st,neg-edge;
13584943d6fSEmmanuel Vadot	bus-width = <4>;
136*0e8011faSEmmanuel Vadot	vmmc-supply = <&scmi_vdd_sdcard>;
137*0e8011faSEmmanuel Vadot	vqmmc-supply = <&scmi_vddio1>;
13884943d6fSEmmanuel Vadot	status = "okay";
139f126890aSEmmanuel Vadot};
140f126890aSEmmanuel Vadot
1417d0873ebSEmmanuel Vadot&spi3 {
1427d0873ebSEmmanuel Vadot	pinctrl-names = "default", "sleep";
1437d0873ebSEmmanuel Vadot	pinctrl-0 = <&spi3_pins_a>;
1447d0873ebSEmmanuel Vadot	pinctrl-1 = <&spi3_sleep_pins_a>;
1457d0873ebSEmmanuel Vadot	status = "disabled";
1467d0873ebSEmmanuel Vadot};
1477d0873ebSEmmanuel Vadot
1487d0873ebSEmmanuel Vadot&spi8 {
1497d0873ebSEmmanuel Vadot	pinctrl-names = "default", "sleep";
1507d0873ebSEmmanuel Vadot	pinctrl-0 = <&spi8_pins_a>;
1517d0873ebSEmmanuel Vadot	pinctrl-1 = <&spi8_sleep_pins_a>;
1527d0873ebSEmmanuel Vadot	status = "disabled";
1537d0873ebSEmmanuel Vadot};
1547d0873ebSEmmanuel Vadot
155f126890aSEmmanuel Vadot&usart2 {
156f126890aSEmmanuel Vadot	pinctrl-names = "default", "idle", "sleep";
157f126890aSEmmanuel Vadot	pinctrl-0 = <&usart2_pins_a>;
158f126890aSEmmanuel Vadot	pinctrl-1 = <&usart2_idle_pins_a>;
159f126890aSEmmanuel Vadot	pinctrl-2 = <&usart2_sleep_pins_a>;
160f126890aSEmmanuel Vadot	status = "okay";
161f126890aSEmmanuel Vadot};
162*0e8011faSEmmanuel Vadot
163*0e8011faSEmmanuel Vadot&usart6 {
164*0e8011faSEmmanuel Vadot	pinctrl-names = "default", "idle", "sleep";
165*0e8011faSEmmanuel Vadot	pinctrl-0 = <&usart6_pins_a>;
166*0e8011faSEmmanuel Vadot	pinctrl-1 = <&usart6_idle_pins_a>;
167*0e8011faSEmmanuel Vadot	pinctrl-2 = <&usart6_sleep_pins_a>;
168*0e8011faSEmmanuel Vadot	uart-has-rtscts;
169*0e8011faSEmmanuel Vadot	status = "disabled";
170*0e8011faSEmmanuel Vadot};
171