1*f126890aSEmmanuel Vadot// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
2*f126890aSEmmanuel Vadot
3*f126890aSEmmanuel Vadot/*
4*f126890aSEmmanuel Vadot * Copyright (C) 2018 O.S. Systems Software LTDA.
5*f126890aSEmmanuel Vadot */
6*f126890aSEmmanuel Vadot
7*f126890aSEmmanuel Vadot/dts-v1/;
8*f126890aSEmmanuel Vadot
9*f126890aSEmmanuel Vadot#include "rv1108.dtsi"
10*f126890aSEmmanuel Vadot
11*f126890aSEmmanuel Vadot/ {
12*f126890aSEmmanuel Vadot	model = "Elgin RV1108 R1 board";
13*f126890aSEmmanuel Vadot	compatible = "elgin,rv1108-r1", "rockchip,rv1108";
14*f126890aSEmmanuel Vadot
15*f126890aSEmmanuel Vadot	aliases {
16*f126890aSEmmanuel Vadot		mmc0 = &emmc;
17*f126890aSEmmanuel Vadot	};
18*f126890aSEmmanuel Vadot
19*f126890aSEmmanuel Vadot	memory@60000000 {
20*f126890aSEmmanuel Vadot		device_type = "memory";
21*f126890aSEmmanuel Vadot		reg = <0x60000000 0x08000000>;
22*f126890aSEmmanuel Vadot	};
23*f126890aSEmmanuel Vadot
24*f126890aSEmmanuel Vadot	chosen {
25*f126890aSEmmanuel Vadot		stdout-path = "serial2:1500000n8";
26*f126890aSEmmanuel Vadot	};
27*f126890aSEmmanuel Vadot
28*f126890aSEmmanuel Vadot	vcc_sys: vsys-regulator {
29*f126890aSEmmanuel Vadot		compatible = "regulator-fixed";
30*f126890aSEmmanuel Vadot		regulator-name = "vsys";
31*f126890aSEmmanuel Vadot		regulator-min-microvolt = <5000000>;
32*f126890aSEmmanuel Vadot		regulator-max-microvolt = <5000000>;
33*f126890aSEmmanuel Vadot		regulator-boot-on;
34*f126890aSEmmanuel Vadot	};
35*f126890aSEmmanuel Vadot};
36*f126890aSEmmanuel Vadot
37*f126890aSEmmanuel Vadot&cpu0 {
38*f126890aSEmmanuel Vadot	cpu-supply = <&vdd_core>;
39*f126890aSEmmanuel Vadot};
40*f126890aSEmmanuel Vadot
41*f126890aSEmmanuel Vadot&emmc {
42*f126890aSEmmanuel Vadot	bus-width = <8>;
43*f126890aSEmmanuel Vadot	cap-mmc-highspeed;
44*f126890aSEmmanuel Vadot	no-sd;
45*f126890aSEmmanuel Vadot	no-sdio;
46*f126890aSEmmanuel Vadot	non-removable;
47*f126890aSEmmanuel Vadot	mmc-ddr-1_8v;
48*f126890aSEmmanuel Vadot	mmc-hs200-1_8v;
49*f126890aSEmmanuel Vadot	pinctrl-names = "default";
50*f126890aSEmmanuel Vadot	pinctrl-0 = <&emmc_clk &emmc_cmd &emmc_bus8>;
51*f126890aSEmmanuel Vadot	status = "okay";
52*f126890aSEmmanuel Vadot};
53*f126890aSEmmanuel Vadot
54*f126890aSEmmanuel Vadot&gmac {
55*f126890aSEmmanuel Vadot	clock_in_out = "output";
56*f126890aSEmmanuel Vadot	pinctrl-names = "default";
57*f126890aSEmmanuel Vadot	pinctrl-0 = <&rmii_pins>;
58*f126890aSEmmanuel Vadot	snps,reset-gpio = <&gpio1 RK_PC1 GPIO_ACTIVE_LOW>;
59*f126890aSEmmanuel Vadot	snps,reset-active-low;
60*f126890aSEmmanuel Vadot	status = "okay";
61*f126890aSEmmanuel Vadot};
62*f126890aSEmmanuel Vadot
63*f126890aSEmmanuel Vadot&i2c0 {
64*f126890aSEmmanuel Vadot	clock-frequency = <400000>;
65*f126890aSEmmanuel Vadot	i2c-scl-rising-time-ns = <275>;
66*f126890aSEmmanuel Vadot	i2c-scl-falling-time-ns = <16>;
67*f126890aSEmmanuel Vadot	status = "okay";
68*f126890aSEmmanuel Vadot
69*f126890aSEmmanuel Vadot	rk805: pmic@18 {
70*f126890aSEmmanuel Vadot		compatible = "rockchip,rk805";
71*f126890aSEmmanuel Vadot		reg = <0x18>;
72*f126890aSEmmanuel Vadot		interrupt-parent = <&gpio0>;
73*f126890aSEmmanuel Vadot		interrupts = <RK_PB4 IRQ_TYPE_LEVEL_LOW>;
74*f126890aSEmmanuel Vadot		rockchip,system-power-controller;
75*f126890aSEmmanuel Vadot		#clock-cells = <0>;
76*f126890aSEmmanuel Vadot
77*f126890aSEmmanuel Vadot		vcc1-supply = <&vcc_sys>;
78*f126890aSEmmanuel Vadot		vcc2-supply = <&vcc_sys>;
79*f126890aSEmmanuel Vadot		vcc3-supply = <&vcc_sys>;
80*f126890aSEmmanuel Vadot		vcc4-supply = <&vcc_sys>;
81*f126890aSEmmanuel Vadot		vcc5-supply = <&vdd_buck2>;
82*f126890aSEmmanuel Vadot		vcc6-supply = <&vdd_buck2>;
83*f126890aSEmmanuel Vadot
84*f126890aSEmmanuel Vadot		regulators {
85*f126890aSEmmanuel Vadot			vdd_core: DCDC_REG1 {
86*f126890aSEmmanuel Vadot				regulator-name = "vdd_core";
87*f126890aSEmmanuel Vadot				regulator-min-microvolt = <700000>;
88*f126890aSEmmanuel Vadot				regulator-max-microvolt = <1500000>;
89*f126890aSEmmanuel Vadot				regulator-always-on;
90*f126890aSEmmanuel Vadot				regulator-boot-on;
91*f126890aSEmmanuel Vadot				regulator-state-mem {
92*f126890aSEmmanuel Vadot					regulator-on-in-suspend;
93*f126890aSEmmanuel Vadot					regulator-suspend-microvolt = <900000>;
94*f126890aSEmmanuel Vadot				};
95*f126890aSEmmanuel Vadot			};
96*f126890aSEmmanuel Vadot
97*f126890aSEmmanuel Vadot			vdd_buck2: DCDC_REG2 {
98*f126890aSEmmanuel Vadot				regulator-name = "vdd_buck2";
99*f126890aSEmmanuel Vadot				regulator-min-microvolt = <2200000>;
100*f126890aSEmmanuel Vadot				regulator-max-microvolt = <2200000>;
101*f126890aSEmmanuel Vadot				regulator-always-on;
102*f126890aSEmmanuel Vadot				regulator-boot-on;
103*f126890aSEmmanuel Vadot				regulator-state-mem {
104*f126890aSEmmanuel Vadot					regulator-off-in-suspend;
105*f126890aSEmmanuel Vadot				};
106*f126890aSEmmanuel Vadot			};
107*f126890aSEmmanuel Vadot
108*f126890aSEmmanuel Vadot			vcc_ddr: DCDC_REG3 {
109*f126890aSEmmanuel Vadot				regulator-name = "vcc_ddr";
110*f126890aSEmmanuel Vadot				regulator-always-on;
111*f126890aSEmmanuel Vadot				regulator-boot-on;
112*f126890aSEmmanuel Vadot				regulator-state-mem {
113*f126890aSEmmanuel Vadot					regulator-on-in-suspend;
114*f126890aSEmmanuel Vadot				};
115*f126890aSEmmanuel Vadot			};
116*f126890aSEmmanuel Vadot
117*f126890aSEmmanuel Vadot			vcc_io: DCDC_REG4 {
118*f126890aSEmmanuel Vadot				regulator-name = "vcc_io";
119*f126890aSEmmanuel Vadot				regulator-min-microvolt = <3300000>;
120*f126890aSEmmanuel Vadot				regulator-max-microvolt = <3300000>;
121*f126890aSEmmanuel Vadot				regulator-always-on;
122*f126890aSEmmanuel Vadot				regulator-boot-on;
123*f126890aSEmmanuel Vadot				regulator-state-mem {
124*f126890aSEmmanuel Vadot					regulator-on-in-suspend;
125*f126890aSEmmanuel Vadot					regulator-suspend-microvolt = <3300000>;
126*f126890aSEmmanuel Vadot				};
127*f126890aSEmmanuel Vadot			};
128*f126890aSEmmanuel Vadot
129*f126890aSEmmanuel Vadot			vdd_10: LDO_REG1 {
130*f126890aSEmmanuel Vadot				regulator-name = "vdd_10";
131*f126890aSEmmanuel Vadot				regulator-min-microvolt = <1000000>;
132*f126890aSEmmanuel Vadot				regulator-max-microvolt = <1000000>;
133*f126890aSEmmanuel Vadot				regulator-always-on;
134*f126890aSEmmanuel Vadot				regulator-boot-on;
135*f126890aSEmmanuel Vadot				regulator-state-mem {
136*f126890aSEmmanuel Vadot					regulator-off-in-suspend;
137*f126890aSEmmanuel Vadot				};
138*f126890aSEmmanuel Vadot			};
139*f126890aSEmmanuel Vadot
140*f126890aSEmmanuel Vadot			vcc_18: LDO_REG2 {
141*f126890aSEmmanuel Vadot				regulator-name = "vcc_18";
142*f126890aSEmmanuel Vadot				regulator-min-microvolt = <1800000>;
143*f126890aSEmmanuel Vadot				regulator-max-microvolt = <1800000>;
144*f126890aSEmmanuel Vadot				regulator-always-on;
145*f126890aSEmmanuel Vadot				regulator-boot-on;
146*f126890aSEmmanuel Vadot				regulator-state-mem {
147*f126890aSEmmanuel Vadot					regulator-off-in-suspend;
148*f126890aSEmmanuel Vadot				};
149*f126890aSEmmanuel Vadot			};
150*f126890aSEmmanuel Vadot
151*f126890aSEmmanuel Vadot			vdd10_pmu: LDO_REG3 {
152*f126890aSEmmanuel Vadot				regulator-name = "vdd10_pmu";
153*f126890aSEmmanuel Vadot				regulator-min-microvolt = <1000000>;
154*f126890aSEmmanuel Vadot				regulator-max-microvolt = <1000000>;
155*f126890aSEmmanuel Vadot				regulator-always-on;
156*f126890aSEmmanuel Vadot				regulator-boot-on;
157*f126890aSEmmanuel Vadot				regulator-state-mem {
158*f126890aSEmmanuel Vadot					regulator-on-in-suspend;
159*f126890aSEmmanuel Vadot					regulator-suspend-microvolt = <1000000>;
160*f126890aSEmmanuel Vadot				};
161*f126890aSEmmanuel Vadot			};
162*f126890aSEmmanuel Vadot		};
163*f126890aSEmmanuel Vadot	};
164*f126890aSEmmanuel Vadot};
165*f126890aSEmmanuel Vadot
166*f126890aSEmmanuel Vadot&spi {
167*f126890aSEmmanuel Vadot	pinctrl-names = "default";
168*f126890aSEmmanuel Vadot	pinctrl-0 = <&spim1_clk &spim1_cs0 &spim1_tx &spim1_rx>;
169*f126890aSEmmanuel Vadot	status = "okay";
170*f126890aSEmmanuel Vadot
171*f126890aSEmmanuel Vadot	dh2228fv: dac@0 {
172*f126890aSEmmanuel Vadot		compatible = "rohm,dh2228fv";
173*f126890aSEmmanuel Vadot		reg = <0>;
174*f126890aSEmmanuel Vadot		spi-max-frequency = <24000000>;
175*f126890aSEmmanuel Vadot		spi-cpha;
176*f126890aSEmmanuel Vadot		spi-cpol;
177*f126890aSEmmanuel Vadot	};
178*f126890aSEmmanuel Vadot};
179*f126890aSEmmanuel Vadot
180*f126890aSEmmanuel Vadot&u2phy {
181*f126890aSEmmanuel Vadot	status = "okay";
182*f126890aSEmmanuel Vadot
183*f126890aSEmmanuel Vadot	u2phy_host: host-port {
184*f126890aSEmmanuel Vadot		status = "okay";
185*f126890aSEmmanuel Vadot	};
186*f126890aSEmmanuel Vadot
187*f126890aSEmmanuel Vadot	u2phy_otg: otg-port {
188*f126890aSEmmanuel Vadot		status = "okay";
189*f126890aSEmmanuel Vadot	};
190*f126890aSEmmanuel Vadot};
191*f126890aSEmmanuel Vadot
192*f126890aSEmmanuel Vadot&uart0 {
193*f126890aSEmmanuel Vadot	pinctrl-names = "default";
194*f126890aSEmmanuel Vadot	pinctrl-0 = <&uart0_xfer>;
195*f126890aSEmmanuel Vadot	status = "okay";
196*f126890aSEmmanuel Vadot};
197*f126890aSEmmanuel Vadot
198*f126890aSEmmanuel Vadot&uart2 {
199*f126890aSEmmanuel Vadot	status = "okay";
200*f126890aSEmmanuel Vadot};
201*f126890aSEmmanuel Vadot
202*f126890aSEmmanuel Vadot&usb_host_ehci {
203*f126890aSEmmanuel Vadot	status = "okay";
204*f126890aSEmmanuel Vadot};
205*f126890aSEmmanuel Vadot
206*f126890aSEmmanuel Vadot&usb_host_ohci {
207*f126890aSEmmanuel Vadot	status = "okay";
208*f126890aSEmmanuel Vadot};
209*f126890aSEmmanuel Vadot
210*f126890aSEmmanuel Vadot&usb_otg {
211*f126890aSEmmanuel Vadot	status = "okay";
212*f126890aSEmmanuel Vadot};
213