xref: /freebsd/sys/contrib/device-tree/src/arm64/st/stm32mp257f-dk.dts (revision 8ccc0d235c226d84112561d453c49904398d085c)
1*8ccc0d23SEmmanuel Vadot// SPDX-License-Identifier: (GPL-2.0-only OR BSD-3-Clause)
2*8ccc0d23SEmmanuel Vadot/*
3*8ccc0d23SEmmanuel Vadot * Copyright (C) STMicroelectronics 2025 - All Rights Reserved
4*8ccc0d23SEmmanuel Vadot * Author: Alexandre Torgue <alexandre.torgue@foss.st.com> for STMicroelectronics.
5*8ccc0d23SEmmanuel Vadot */
6*8ccc0d23SEmmanuel Vadot
7*8ccc0d23SEmmanuel Vadot/dts-v1/;
8*8ccc0d23SEmmanuel Vadot
9*8ccc0d23SEmmanuel Vadot#include <dt-bindings/gpio/gpio.h>
10*8ccc0d23SEmmanuel Vadot#include <dt-bindings/input/input.h>
11*8ccc0d23SEmmanuel Vadot#include <dt-bindings/leds/common.h>
12*8ccc0d23SEmmanuel Vadot#include "stm32mp257.dtsi"
13*8ccc0d23SEmmanuel Vadot#include "stm32mp25xf.dtsi"
14*8ccc0d23SEmmanuel Vadot#include "stm32mp25-pinctrl.dtsi"
15*8ccc0d23SEmmanuel Vadot#include "stm32mp25xxak-pinctrl.dtsi"
16*8ccc0d23SEmmanuel Vadot
17*8ccc0d23SEmmanuel Vadot/ {
18*8ccc0d23SEmmanuel Vadot	model = "STMicroelectronics STM32MP257F-DK Discovery Board";
19*8ccc0d23SEmmanuel Vadot	compatible = "st,stm32mp257f-dk", "st,stm32mp257";
20*8ccc0d23SEmmanuel Vadot
21*8ccc0d23SEmmanuel Vadot	aliases {
22*8ccc0d23SEmmanuel Vadot		serial0 = &usart2;
23*8ccc0d23SEmmanuel Vadot	};
24*8ccc0d23SEmmanuel Vadot
25*8ccc0d23SEmmanuel Vadot	chosen {
26*8ccc0d23SEmmanuel Vadot		stdout-path = "serial0:115200n8";
27*8ccc0d23SEmmanuel Vadot	};
28*8ccc0d23SEmmanuel Vadot
29*8ccc0d23SEmmanuel Vadot	gpio-keys {
30*8ccc0d23SEmmanuel Vadot		compatible = "gpio-keys";
31*8ccc0d23SEmmanuel Vadot
32*8ccc0d23SEmmanuel Vadot		button-user-1 {
33*8ccc0d23SEmmanuel Vadot			label = "User-1";
34*8ccc0d23SEmmanuel Vadot			linux,code = <BTN_1>;
35*8ccc0d23SEmmanuel Vadot			gpios = <&gpioc 5 GPIO_ACTIVE_HIGH>;
36*8ccc0d23SEmmanuel Vadot		};
37*8ccc0d23SEmmanuel Vadot
38*8ccc0d23SEmmanuel Vadot		button-user-2 {
39*8ccc0d23SEmmanuel Vadot			label = "User-2";
40*8ccc0d23SEmmanuel Vadot			linux,code = <BTN_2>;
41*8ccc0d23SEmmanuel Vadot			gpios = <&gpioc 11 GPIO_ACTIVE_HIGH>;
42*8ccc0d23SEmmanuel Vadot		};
43*8ccc0d23SEmmanuel Vadot	};
44*8ccc0d23SEmmanuel Vadot
45*8ccc0d23SEmmanuel Vadot	gpio-leds {
46*8ccc0d23SEmmanuel Vadot		compatible = "gpio-leds";
47*8ccc0d23SEmmanuel Vadot
48*8ccc0d23SEmmanuel Vadot		led-blue {
49*8ccc0d23SEmmanuel Vadot			function = LED_FUNCTION_HEARTBEAT;
50*8ccc0d23SEmmanuel Vadot			color = <LED_COLOR_ID_BLUE>;
51*8ccc0d23SEmmanuel Vadot			gpios = <&gpioh 7 GPIO_ACTIVE_HIGH>;
52*8ccc0d23SEmmanuel Vadot			linux,default-trigger = "heartbeat";
53*8ccc0d23SEmmanuel Vadot			default-state = "off";
54*8ccc0d23SEmmanuel Vadot		};
55*8ccc0d23SEmmanuel Vadot	};
56*8ccc0d23SEmmanuel Vadot
57*8ccc0d23SEmmanuel Vadot	memory@80000000 {
58*8ccc0d23SEmmanuel Vadot		device_type = "memory";
59*8ccc0d23SEmmanuel Vadot		reg = <0x0 0x80000000 0x1 0x0>;
60*8ccc0d23SEmmanuel Vadot	};
61*8ccc0d23SEmmanuel Vadot
62*8ccc0d23SEmmanuel Vadot	reserved-memory {
63*8ccc0d23SEmmanuel Vadot		#address-cells = <2>;
64*8ccc0d23SEmmanuel Vadot		#size-cells = <2>;
65*8ccc0d23SEmmanuel Vadot		ranges;
66*8ccc0d23SEmmanuel Vadot
67*8ccc0d23SEmmanuel Vadot		fw@80000000 {
68*8ccc0d23SEmmanuel Vadot			compatible = "shared-dma-pool";
69*8ccc0d23SEmmanuel Vadot			reg = <0x0 0x80000000 0x0 0x4000000>;
70*8ccc0d23SEmmanuel Vadot			no-map;
71*8ccc0d23SEmmanuel Vadot		};
72*8ccc0d23SEmmanuel Vadot	};
73*8ccc0d23SEmmanuel Vadot};
74*8ccc0d23SEmmanuel Vadot
75*8ccc0d23SEmmanuel Vadot&arm_wdt {
76*8ccc0d23SEmmanuel Vadot	timeout-sec = <32>;
77*8ccc0d23SEmmanuel Vadot	status = "okay";
78*8ccc0d23SEmmanuel Vadot};
79*8ccc0d23SEmmanuel Vadot
80*8ccc0d23SEmmanuel Vadot&scmi_regu {
81*8ccc0d23SEmmanuel Vadot	scmi_vddio1: regulator@0 {
82*8ccc0d23SEmmanuel Vadot		regulator-min-microvolt = <1800000>;
83*8ccc0d23SEmmanuel Vadot		regulator-max-microvolt = <3300000>;
84*8ccc0d23SEmmanuel Vadot	};
85*8ccc0d23SEmmanuel Vadot	scmi_vdd_sdcard: regulator@23 {
86*8ccc0d23SEmmanuel Vadot		reg = <VOLTD_SCMI_STPMIC2_LDO7>;
87*8ccc0d23SEmmanuel Vadot		regulator-name = "vdd_sdcard";
88*8ccc0d23SEmmanuel Vadot	};
89*8ccc0d23SEmmanuel Vadot};
90*8ccc0d23SEmmanuel Vadot
91*8ccc0d23SEmmanuel Vadot&sdmmc1 {
92*8ccc0d23SEmmanuel Vadot	pinctrl-names = "default", "opendrain", "sleep";
93*8ccc0d23SEmmanuel Vadot	pinctrl-0 = <&sdmmc1_b4_pins_a>;
94*8ccc0d23SEmmanuel Vadot	pinctrl-1 = <&sdmmc1_b4_od_pins_a>;
95*8ccc0d23SEmmanuel Vadot	pinctrl-2 = <&sdmmc1_b4_sleep_pins_a>;
96*8ccc0d23SEmmanuel Vadot	cd-gpios = <&gpiod 3 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>;
97*8ccc0d23SEmmanuel Vadot	disable-wp;
98*8ccc0d23SEmmanuel Vadot	st,neg-edge;
99*8ccc0d23SEmmanuel Vadot	bus-width = <4>;
100*8ccc0d23SEmmanuel Vadot	vmmc-supply = <&scmi_vdd_sdcard>;
101*8ccc0d23SEmmanuel Vadot	vqmmc-supply = <&scmi_vddio1>;
102*8ccc0d23SEmmanuel Vadot	status = "okay";
103*8ccc0d23SEmmanuel Vadot};
104*8ccc0d23SEmmanuel Vadot
105*8ccc0d23SEmmanuel Vadot&usart2 {
106*8ccc0d23SEmmanuel Vadot	pinctrl-names = "default", "idle", "sleep";
107*8ccc0d23SEmmanuel Vadot	pinctrl-0 = <&usart2_pins_a>;
108*8ccc0d23SEmmanuel Vadot	pinctrl-1 = <&usart2_idle_pins_a>;
109*8ccc0d23SEmmanuel Vadot	pinctrl-2 = <&usart2_sleep_pins_a>;
110*8ccc0d23SEmmanuel Vadot	/delete-property/dmas;
111*8ccc0d23SEmmanuel Vadot	/delete-property/dma-names;
112*8ccc0d23SEmmanuel Vadot	status = "okay";
113*8ccc0d23SEmmanuel Vadot};
114