blob: 5d9dfb541cdaf40dde10cd4a2aadf3793f0d948a [file] [log] [blame]
Philipp Tomsich3c2bbd52017-03-28 18:48:51 +02001/*
2 * (C) Copyright 2017 Theobroma Systems Design und Consulting GmbH
3 *
Philipp Tomsichfaf1afc2017-04-07 19:09:37 +02004 * SPDX-License-Identifier: GPL-2.0+ X11
Philipp Tomsich3c2bbd52017-03-28 18:48:51 +02005 */
6
7/dts-v1/;
8#include <dt-bindings/pwm/pwm.h>
9#include "rk3399.dtsi"
Philipp Tomsich572045b2017-04-17 17:50:38 +020010#include "rk3399-sdram-ddr3-1600.dtsi"
Philipp Tomsich3c2bbd52017-03-28 18:48:51 +020011
12/ {
13 model = "Theobroma Systems RK3399-Q7 SoM";
14 compatible = "tsd,puma", "rockchip,rk3399";
15
Philipp Tomsich572045b2017-04-17 17:50:38 +020016 config {
17 u-boot,spl-payload-offset = <204800>;
18 };
19
Philipp Tomsich3c2bbd52017-03-28 18:48:51 +020020 chosen {
21 stdout-path = "serial0:115200n8";
22 u-boot,spl-boot-order = &spiflash, &sdhci, &sdmmc;
23 };
24
25 aliases {
26 spi0 = &spi1;
27 spi1 = &spi5;
28 };
29
30 vdd_center: vdd-center {
31 compatible = "pwm-regulator";
32 pwms = <&pwm3 0 25000 0>;
33 regulator-name = "vdd_center";
34 regulator-min-microvolt = <800000>;
35 regulator-max-microvolt = <1400000>;
36 regulator-init-microvolt = <950000>;
37 regulator-always-on;
38 regulator-boot-on;
39 status = "okay";
40 };
41
42 vcc3v3_sys: vcc3v3-sys {
43 compatible = "regulator-fixed";
44 regulator-name = "vcc3v3_sys";
45 regulator-always-on;
46 regulator-boot-on;
47 regulator-min-microvolt = <3300000>;
48 regulator-max-microvolt = <3300000>;
49 };
50
51 vcc_phy: vcc-phy-regulator {
52 compatible = "regulator-fixed";
53 regulator-name = "vcc_phy";
54 regulator-always-on;
55 regulator-boot-on;
56 };
57
58 vcc5v0_host: vcc5v0-host-en {
59 compatible = "regulator-fixed";
60 regulator-name = "vcc5v0_host";
61 gpio = <&gpio4 25 GPIO_ACTIVE_HIGH>;
62 };
63
64 clkin_gmac: external-gmac-clock {
65 compatible = "fixed-clock";
66 clock-frequency = <125000000>;
67 clock-output-names = "clkin_gmac";
68 #clock-cells = <0>;
69 };
70
71 vcc_phy: vcc-phy-regulator {
72 compatible = "regulator-fixed";
73 regulator-name = "vcc_phy";
74 regulator-always-on;
75 regulator-boot-on;
76 };
77};
78
79&emmc_phy {
80 status = "okay";
81};
82
83&pwm0 {
84 status = "okay";
85};
86
87&pwm2 {
88 status = "okay";
89};
90
91&pwm3 {
92 status = "okay";
93};
94
95&sdmmc {
96 u-boot,dm-pre-reloc;
97 bus-width = <4>;
Philipp Tomsich3c2bbd52017-03-28 18:48:51 +020098 status = "okay";
99};
100
101&sdhci {
102 bus-width = <8>;
103 mmc-hs400-1_8v;
104 mmc-hs400-enhanced-strobe;
105 non-removable;
106 status = "okay";
107};
108
109&uart0 {
Philipp Tomsich4411cd02017-05-31 18:17:57 +0200110 u-boot,dm-pre-reloc;
Philipp Tomsich3c2bbd52017-03-28 18:48:51 +0200111 status = "okay";
112};
113
114&uart2 {
115 status = "okay";
116};
117
118&usb_host0_ehci {
119 status = "okay";
120};
121
122&usb_host0_ohci {
123 status = "okay";
124};
125
126&dwc3_typec0 {
127 status = "okay";
128};
129
130&usb_host1_ehci {
131 status = "okay";
132};
133
134&usb_host1_ohci {
135 status = "okay";
136};
137
138&dwc3_typec1 {
139 status = "okay";
140};
141
142&pinctrl {
143 pmic {
144 pmic_int_l: pmic-int-l {
145 rockchip,pins =
146 <1 21 RK_FUNC_GPIO &pcfg_pull_up>;
147 };
148
149 pmic_dvs2: pmic-dvs2 {
150 rockchip,pins =
151 <1 18 RK_FUNC_GPIO &pcfg_pull_down>;
152 };
153 };
154};
155
156&gmac {
157 phy-supply = <&vcc_phy>;
158 phy-mode = "rgmii";
159 clock_in_out = "input";
160 snps,reset-gpio = <&gpio3 16 GPIO_ACTIVE_LOW>;
161 snps,reset-active-low;
162 snps,reset-delays-us = <0 10000 50000>;
163 assigned-clocks = <&cru SCLK_RMII_SRC>;
164 assigned-clock-parents = <&clkin_gmac>;
165 pinctrl-names = "default";
166 pinctrl-0 = <&rgmii_pins>;
167 tx_delay = <0x10>;
168 rx_delay = <0x10>;
169 status = "okay";
170};
171
172&spi1 {
173 u-boot,dm-pre-reloc;
174
175 status = "okay";
176
177 #address-cells = <1>;
178 #size-cells = <0>;
179
180 spiflash: w25q32dw@0 {
181 u-boot,dm-pre-reloc;
182
183 compatible = "spi-flash";
184 reg = <0>;
185 spi-max-frequency = <5000000>;
186 spi-cpol;
187 spi-cpha;
188 };
189};
190
191&spi5 {
192 status = "okay";
193};