xref: /freebsd/sys/contrib/device-tree/src/arm/rockchip/rk3066a-bqcurie2.dts (revision f126890ac5386406dadf7c4cfa9566cbb56537c5)
1*f126890aSEmmanuel Vadot// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
2*f126890aSEmmanuel Vadot/*
3*f126890aSEmmanuel Vadot * Copyright (c) 2013 MundoReader S.L.
4*f126890aSEmmanuel Vadot * Author: Heiko Stuebner <heiko@sntech.de>
5*f126890aSEmmanuel Vadot */
6*f126890aSEmmanuel Vadot
7*f126890aSEmmanuel Vadot/dts-v1/;
8*f126890aSEmmanuel Vadot#include <dt-bindings/input/input.h>
9*f126890aSEmmanuel Vadot#include "rk3066a.dtsi"
10*f126890aSEmmanuel Vadot
11*f126890aSEmmanuel Vadot/ {
12*f126890aSEmmanuel Vadot	model = "bq Curie 2";
13*f126890aSEmmanuel Vadot	compatible = "mundoreader,bq-curie2", "rockchip,rk3066a";
14*f126890aSEmmanuel Vadot
15*f126890aSEmmanuel Vadot	aliases {
16*f126890aSEmmanuel Vadot		mmc0 = &mmc0;
17*f126890aSEmmanuel Vadot		mmc1 = &mmc1;
18*f126890aSEmmanuel Vadot	};
19*f126890aSEmmanuel Vadot
20*f126890aSEmmanuel Vadot	memory@60000000 {
21*f126890aSEmmanuel Vadot		device_type = "memory";
22*f126890aSEmmanuel Vadot		reg = <0x60000000 0x40000000>;
23*f126890aSEmmanuel Vadot	};
24*f126890aSEmmanuel Vadot
25*f126890aSEmmanuel Vadot	vdd_log: vdd-log {
26*f126890aSEmmanuel Vadot		compatible = "pwm-regulator";
27*f126890aSEmmanuel Vadot		pwms = <&pwm3 0 1000>;
28*f126890aSEmmanuel Vadot		regulator-name = "vdd_log";
29*f126890aSEmmanuel Vadot		regulator-min-microvolt = <1200000>;
30*f126890aSEmmanuel Vadot		regulator-max-microvolt = <1200000>;
31*f126890aSEmmanuel Vadot		regulator-always-on;
32*f126890aSEmmanuel Vadot		voltage-table = <1000000 100>,
33*f126890aSEmmanuel Vadot				<1200000 42>;
34*f126890aSEmmanuel Vadot		status = "okay";
35*f126890aSEmmanuel Vadot	};
36*f126890aSEmmanuel Vadot
37*f126890aSEmmanuel Vadot	vcc_sd0: fixed-regulator {
38*f126890aSEmmanuel Vadot		compatible = "regulator-fixed";
39*f126890aSEmmanuel Vadot		regulator-name = "sdmmc-supply";
40*f126890aSEmmanuel Vadot		regulator-min-microvolt = <3000000>;
41*f126890aSEmmanuel Vadot		regulator-max-microvolt = <3000000>;
42*f126890aSEmmanuel Vadot		gpio = <&gpio3 RK_PA7 GPIO_ACTIVE_LOW>;
43*f126890aSEmmanuel Vadot		startup-delay-us = <100000>;
44*f126890aSEmmanuel Vadot		vin-supply = <&vcc_io>;
45*f126890aSEmmanuel Vadot	};
46*f126890aSEmmanuel Vadot
47*f126890aSEmmanuel Vadot	gpio-keys {
48*f126890aSEmmanuel Vadot		compatible = "gpio-keys";
49*f126890aSEmmanuel Vadot		autorepeat;
50*f126890aSEmmanuel Vadot
51*f126890aSEmmanuel Vadot		key-power {
52*f126890aSEmmanuel Vadot			gpios = <&gpio6 RK_PA2 GPIO_ACTIVE_LOW>; /* GPIO6_A2 */
53*f126890aSEmmanuel Vadot			linux,code = <KEY_POWER>;
54*f126890aSEmmanuel Vadot			label = "GPIO Key Power";
55*f126890aSEmmanuel Vadot			linux,input-type = <1>;
56*f126890aSEmmanuel Vadot			wakeup-source;
57*f126890aSEmmanuel Vadot			debounce-interval = <100>;
58*f126890aSEmmanuel Vadot		};
59*f126890aSEmmanuel Vadot		key-volume-down {
60*f126890aSEmmanuel Vadot			gpios = <&gpio4 RK_PC5 GPIO_ACTIVE_LOW>; /* GPIO4_C5 */
61*f126890aSEmmanuel Vadot			linux,code = <KEY_VOLUMEDOWN>;
62*f126890aSEmmanuel Vadot			label = "GPIO Key Vol-";
63*f126890aSEmmanuel Vadot			linux,input-type = <1>;
64*f126890aSEmmanuel Vadot			debounce-interval = <100>;
65*f126890aSEmmanuel Vadot		};
66*f126890aSEmmanuel Vadot		/* VOL+ comes somehow thru the ADC */
67*f126890aSEmmanuel Vadot	};
68*f126890aSEmmanuel Vadot};
69*f126890aSEmmanuel Vadot
70*f126890aSEmmanuel Vadot&cpu0 {
71*f126890aSEmmanuel Vadot	cpu-supply = <&vdd_arm>;
72*f126890aSEmmanuel Vadot};
73*f126890aSEmmanuel Vadot
74*f126890aSEmmanuel Vadot&cpu1 {
75*f126890aSEmmanuel Vadot	cpu-supply = <&vdd_arm>;
76*f126890aSEmmanuel Vadot};
77*f126890aSEmmanuel Vadot
78*f126890aSEmmanuel Vadot&i2c1 {
79*f126890aSEmmanuel Vadot	status = "okay";
80*f126890aSEmmanuel Vadot	clock-frequency = <400000>;
81*f126890aSEmmanuel Vadot
82*f126890aSEmmanuel Vadot	tps: tps@2d {
83*f126890aSEmmanuel Vadot		reg = <0x2d>;
84*f126890aSEmmanuel Vadot
85*f126890aSEmmanuel Vadot		interrupt-parent = <&gpio6>;
86*f126890aSEmmanuel Vadot		interrupts = <RK_PA6 IRQ_TYPE_LEVEL_LOW>;
87*f126890aSEmmanuel Vadot
88*f126890aSEmmanuel Vadot		vcc5-supply = <&vcc_io>;
89*f126890aSEmmanuel Vadot		vcc6-supply = <&vcc_io>;
90*f126890aSEmmanuel Vadot
91*f126890aSEmmanuel Vadot		regulators {
92*f126890aSEmmanuel Vadot			vcc_rtc: regulator@0 {
93*f126890aSEmmanuel Vadot				regulator-name = "vcc_rtc";
94*f126890aSEmmanuel Vadot				regulator-always-on;
95*f126890aSEmmanuel Vadot			};
96*f126890aSEmmanuel Vadot
97*f126890aSEmmanuel Vadot			vcc_io: regulator@1 {
98*f126890aSEmmanuel Vadot				regulator-name = "vcc_io";
99*f126890aSEmmanuel Vadot				regulator-always-on;
100*f126890aSEmmanuel Vadot			};
101*f126890aSEmmanuel Vadot
102*f126890aSEmmanuel Vadot			vdd_arm: regulator@2 {
103*f126890aSEmmanuel Vadot				regulator-name = "vdd_arm";
104*f126890aSEmmanuel Vadot				regulator-min-microvolt = <600000>;
105*f126890aSEmmanuel Vadot				regulator-max-microvolt = <1500000>;
106*f126890aSEmmanuel Vadot				regulator-boot-on;
107*f126890aSEmmanuel Vadot				regulator-always-on;
108*f126890aSEmmanuel Vadot			};
109*f126890aSEmmanuel Vadot
110*f126890aSEmmanuel Vadot			vcc_ddr: regulator@3 {
111*f126890aSEmmanuel Vadot				regulator-name = "vcc_ddr";
112*f126890aSEmmanuel Vadot				regulator-min-microvolt = <600000>;
113*f126890aSEmmanuel Vadot				regulator-max-microvolt = <1500000>;
114*f126890aSEmmanuel Vadot				regulator-boot-on;
115*f126890aSEmmanuel Vadot				regulator-always-on;
116*f126890aSEmmanuel Vadot			};
117*f126890aSEmmanuel Vadot
118*f126890aSEmmanuel Vadot			vcc18_cif: regulator@5 {
119*f126890aSEmmanuel Vadot				regulator-name = "vcc18_cif";
120*f126890aSEmmanuel Vadot				regulator-always-on;
121*f126890aSEmmanuel Vadot			};
122*f126890aSEmmanuel Vadot
123*f126890aSEmmanuel Vadot			vdd_11: regulator@6 {
124*f126890aSEmmanuel Vadot				regulator-name = "vdd_11";
125*f126890aSEmmanuel Vadot				regulator-always-on;
126*f126890aSEmmanuel Vadot			};
127*f126890aSEmmanuel Vadot
128*f126890aSEmmanuel Vadot			vcc_25: regulator@7 {
129*f126890aSEmmanuel Vadot				regulator-name = "vcc_25";
130*f126890aSEmmanuel Vadot				regulator-always-on;
131*f126890aSEmmanuel Vadot			};
132*f126890aSEmmanuel Vadot
133*f126890aSEmmanuel Vadot			vcc_18: regulator@8 {
134*f126890aSEmmanuel Vadot				regulator-name = "vcc_18";
135*f126890aSEmmanuel Vadot				regulator-always-on;
136*f126890aSEmmanuel Vadot			};
137*f126890aSEmmanuel Vadot
138*f126890aSEmmanuel Vadot			vcc25_hdmi: regulator@9 {
139*f126890aSEmmanuel Vadot				regulator-name = "vcc25_hdmi";
140*f126890aSEmmanuel Vadot				regulator-always-on;
141*f126890aSEmmanuel Vadot			};
142*f126890aSEmmanuel Vadot
143*f126890aSEmmanuel Vadot			vcca_33: regulator@10 {
144*f126890aSEmmanuel Vadot				regulator-name = "vcca_33";
145*f126890aSEmmanuel Vadot				regulator-always-on;
146*f126890aSEmmanuel Vadot			};
147*f126890aSEmmanuel Vadot
148*f126890aSEmmanuel Vadot			vcc_tp: regulator@11 {
149*f126890aSEmmanuel Vadot				regulator-name = "vcc_tp";
150*f126890aSEmmanuel Vadot				regulator-always-on;
151*f126890aSEmmanuel Vadot			};
152*f126890aSEmmanuel Vadot
153*f126890aSEmmanuel Vadot			vcc28_cif: regulator@12 {
154*f126890aSEmmanuel Vadot				regulator-name = "vcc28_cif";
155*f126890aSEmmanuel Vadot				regulator-always-on;
156*f126890aSEmmanuel Vadot			};
157*f126890aSEmmanuel Vadot		};
158*f126890aSEmmanuel Vadot	};
159*f126890aSEmmanuel Vadot};
160*f126890aSEmmanuel Vadot
161*f126890aSEmmanuel Vadot/* must be included after &tps gets defined */
162*f126890aSEmmanuel Vadot#include "../tps65910.dtsi"
163*f126890aSEmmanuel Vadot
164*f126890aSEmmanuel Vadot&mmc0 { /* sdmmc */
165*f126890aSEmmanuel Vadot	status = "okay";
166*f126890aSEmmanuel Vadot	pinctrl-names = "default";
167*f126890aSEmmanuel Vadot	pinctrl-0 = <&sd0_clk>, <&sd0_cmd>, <&sd0_cd>, <&sd0_bus4>;
168*f126890aSEmmanuel Vadot	vmmc-supply = <&vcc_sd0>;
169*f126890aSEmmanuel Vadot	bus-width = <4>;
170*f126890aSEmmanuel Vadot	cap-mmc-highspeed;
171*f126890aSEmmanuel Vadot	cap-sd-highspeed;
172*f126890aSEmmanuel Vadot	disable-wp;
173*f126890aSEmmanuel Vadot};
174*f126890aSEmmanuel Vadot
175*f126890aSEmmanuel Vadot&mmc1 { /* wifi */
176*f126890aSEmmanuel Vadot	status = "okay";
177*f126890aSEmmanuel Vadot	non-removable;
178*f126890aSEmmanuel Vadot
179*f126890aSEmmanuel Vadot	pinctrl-names = "default";
180*f126890aSEmmanuel Vadot	pinctrl-0 = <&sd1_clk &sd1_cmd &sd1_bus4>;
181*f126890aSEmmanuel Vadot
182*f126890aSEmmanuel Vadot	bus-width = <4>;
183*f126890aSEmmanuel Vadot};
184*f126890aSEmmanuel Vadot
185*f126890aSEmmanuel Vadot&pwm3 {
186*f126890aSEmmanuel Vadot	status = "okay";
187*f126890aSEmmanuel Vadot};
188*f126890aSEmmanuel Vadot
189*f126890aSEmmanuel Vadot&uart0 {
190*f126890aSEmmanuel Vadot	status = "okay";
191*f126890aSEmmanuel Vadot};
192*f126890aSEmmanuel Vadot
193*f126890aSEmmanuel Vadot&uart1 {
194*f126890aSEmmanuel Vadot	status = "okay";
195*f126890aSEmmanuel Vadot};
196*f126890aSEmmanuel Vadot
197*f126890aSEmmanuel Vadot&uart2 {
198*f126890aSEmmanuel Vadot	status = "okay";
199*f126890aSEmmanuel Vadot};
200*f126890aSEmmanuel Vadot
201*f126890aSEmmanuel Vadot&uart3 {
202*f126890aSEmmanuel Vadot	status = "okay";
203*f126890aSEmmanuel Vadot};
204*f126890aSEmmanuel Vadot
205*f126890aSEmmanuel Vadot&wdt {
206*f126890aSEmmanuel Vadot	status = "okay";
207*f126890aSEmmanuel Vadot};
208