1// SPDX-License-Identifier: GPL-2.0+ OR X11
2/*
3 * Copyright 2017 - Vikas MANOCHA <vikas.manocha@st.com>
4 *
5 */
6
7/dts-v1/;
8#include "stm32f746.dtsi"
9#include "stm32f746-pinctrl.dtsi"
10#include <dt-bindings/input/input.h>
11#include <dt-bindings/gpio/gpio.h>
12
13/ {
14	model = "STMicroelectronics STM32F746-DISCO board";
15	compatible = "st,stm32f746-disco", "st,stm32f746";
16
17	chosen {
18		bootargs = "root=/dev/ram";
19		stdout-path = "serial0:115200n8";
20	};
21
22	memory@c0000000 {
23		device_type = "memory";
24		reg = <0xC0000000 0x800000>;
25	};
26
27	aliases {
28		serial0 = &usart1;
29	};
30
31	usbotg_hs_phy: usb-phy {
32		#phy-cells = <0>;
33		compatible = "usb-nop-xceiv";
34		clocks = <&rcc 0 STM32F7_AHB1_CLOCK(OTGHSULPI)>;
35		clock-names = "main_clk";
36	};
37
38	/* This turns on vbus for otg fs for host mode (dwc2) */
39	vcc5v_otg_fs: vcc5v-otg-fs-regulator {
40		compatible = "regulator-fixed";
41		gpio = <&gpiod 5 0>;
42		regulator-name = "vcc5_host1";
43		regulator-always-on;
44	};
45
46	mmc_vcard: mmc_vcard {
47		compatible = "regulator-fixed";
48		regulator-name = "mmc_vcard";
49		regulator-min-microvolt = <3300000>;
50		regulator-max-microvolt = <3300000>;
51	};
52};
53
54&clk_hse {
55	clock-frequency = <25000000>;
56};
57
58&i2c1 {
59	pinctrl-0 = <&i2c1_pins_b>;
60	pinctrl-names = "default";
61	i2c-scl-rising-time-ns = <185>;
62	i2c-scl-falling-time-ns = <20>;
63	status = "okay";
64};
65
66&sdio1 {
67	status = "okay";
68	vmmc-supply = <&mmc_vcard>;
69	cd-gpios = <&gpioc 13 GPIO_ACTIVE_LOW>;
70	pinctrl-names = "default", "opendrain";
71	pinctrl-0 = <&sdio_pins_a>;
72	pinctrl-1 = <&sdio_pins_od_a>;
73	bus-width = <4>;
74};
75
76&usart1 {
77	pinctrl-0 = <&usart1_pins_b>;
78	pinctrl-names = "default";
79	status = "okay";
80};
81
82&usbotg_fs {
83	dr_mode = "host";
84	pinctrl-0 = <&usbotg_fs_pins_a>;
85	pinctrl-names = "default";
86	status = "okay";
87};
88
89&usbotg_hs {
90	dr_mode = "host";
91	phys = <&usbotg_hs_phy>;
92	phy-names = "usb2-phy";
93	pinctrl-0 = <&usbotg_hs_pins_b>;
94	pinctrl-names = "default";
95	status = "okay";
96};
97