1// SPDX-License-Identifier: GPL-2.0 OR MIT
2/*
3 * Copyright (C) 2019 BayLibre SAS.
4 * Author: Fabien Parent <fparent@baylibre.com>
5 */
6
7/dts-v1/;
8
9#include <config.h>
10#include "mt8516.dtsi"
11
12/ {
13	model = "Pumpkin MT8516";
14
15	chosen {
16		stdout-path = &uart0;
17	};
18
19	memory@40000000 {
20		device_type = "memory";
21		reg = <0x40000000 0x20000000>;
22	};
23
24	reserved-memory {
25		#address-cells = <2>;
26		#size-cells = <2>;
27
28		/* 128 KiB reserved for ARM Trusted Firmware (BL31) */
29		bl31_secmon_reserved: secmon@43000000 {
30			no-map;
31			reg = <0 0x43000000 0 0x20000>;
32		};
33	};
34
35	reg_1p8v: regulator-1p8v {
36		compatible = "regulator-fixed";
37		regulator-name = "fixed-1.8V";
38		regulator-min-microvolt = <1800000>;
39		regulator-max-microvolt = <1800000>;
40		regulator-boot-on;
41		regulator-always-on;
42	};
43
44	reg_3p3v: regulator-3p3v {
45		compatible = "regulator-fixed";
46		regulator-name = "fixed-3.3V";
47		regulator-min-microvolt = <3300000>;
48		regulator-max-microvolt = <3300000>;
49		regulator-boot-on;
50		regulator-always-on;
51	};
52};
53
54&mmc0 {
55	pinctrl-names = "default";
56	pinctrl-0 = <&mmc0_pins_default>;
57	bus-width = <4>;
58	max-frequency = <200000000>;
59	cap-mmc-highspeed;
60	mmc-hs200-1_8v;
61	cap-mmc-hw-reset;
62	vmmc-supply = <&reg_3p3v>;
63	vqmmc-supply = <&reg_1p8v>;
64	non-removable;
65	status = "okay";
66};
67
68&pinctrl {
69	mmc0_pins_default: mmc0default {
70		mux {
71			function = "msdc";
72			groups =  "msdc0";
73		};
74
75		conf-cmd-data {
76			pins = "MSDC0_CMD", "MSDC0_DAT0", "MSDC0_DAT1",
77			       "MSDC0_DAT2", "MSDC0_DAT3", "MSDC0_DAT4",
78			       "MSDC0_DAT5", "MSDC0_DAT6", "MSDC0_DAT7";
79			input-enable;
80			bias-pull-up;
81		};
82
83		conf-clk {
84			pins = "MSDC0_CLK";
85			bias-pull-down;
86		};
87
88		conf-rst {
89			pins = "MSDC0_RSTB";
90			bias-pull-up;
91		};
92	};
93
94	uart0_pins: uart0 {
95		mux {
96			function = "uart";
97			groups = "uart0_0_rxd_txd";
98		};
99	};
100};
101
102&uart0 {
103	pinctrl-names = "default";
104	pinctrl-0 = <&uart0_pins>;
105	status = "okay";
106};
107
108&watchdog {
109	status = "okay";
110};
111
112&usb0 {
113	status = "okay";
114	dr_mode = "peripheral";
115
116	usb_con_c: connector {
117		compatible = "usb-c-connector";
118		label = "USB-C";
119	};
120};
121