xref: /OK3568_Linux_fs/kernel/arch/arm/boot/dts/rk3229-at-gva.dts (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1/*
2 * Copyright (c) 2017 Fuzhou Rockchip Electronics Co., Ltd
3 *
4 * This file is dual-licensed: you can use it either under the terms
5 * of the GPL or the X11 license, at your option. Note that this dual
6 * licensing only applies to this file, and not this project as a
7 * whole.
8 *
9 *  a) This file is free software; you can redistribute it and/or
10 *     modify it under the terms of the GNU General Public License as
11 *     published by the Free Software Foundation; either version 2 of the
12 *     License, or (at your option) any later version.
13 *
14 *     This file is distributed in the hope that it will be useful,
15 *     but WITHOUT ANY WARRANTY; without even the implied warranty of
16 *     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
17 *     GNU General Public License for more details.
18 *
19 *  Or, alternatively,
20 *
21 *  b) Permission is hereby granted, free of charge, to any person
22 *     obtaining a copy of this software and associated documentation
23 *     files (the "Software"), to deal in the Software without
24 *     restriction, including without limitation the rights to use,
25 *     copy, modify, merge, publish, distribute, sublicense, and/or
26 *     sell copies of the Software, and to permit persons to whom the
27 *     Software is furnished to do so, subject to the following
28 *     conditions:
29 *
30 *     The above copyright notice and this permission notice shall be
31 *     included in all copies or substantial portions of the Software.
32 *
33 *     THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
34 *     EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
35 *     OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
36 *     NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
37 *     HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
38 *     WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
39 *     FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
40 *     OTHER DEALINGS IN THE SOFTWARE.
41 */
42
43/dts-v1/;
44
45#include "rk3229-at-som.dtsi"
46
47/ {
48	model = "RK3229 ANDROID THINGS GVA Board";
49	compatible = "rockchip,rk3229-at-gva", "rockchip,rk3229";
50
51	sdio_pwrseq: sdio-pwrseq {
52		compatible = "mmc-pwrseq-simple";
53		clocks = <&rk805 1>;
54		clock-names = "ext_clock";
55		pinctrl-names = "default";
56		pinctrl-0 = <&wifi_enable_h>;
57
58		/*
59		 * On the module itself this is one of these (depending
60		 * on the actual card populated):
61		 * - SDIO_RESET_L_WL_REG_ON
62		 * - PDN (power down when low)
63		 */
64		reset-gpios = <&gpio3 15 GPIO_ACTIVE_LOW>; /* GPIO3_B7 */
65	};
66
67	wireless-bluetooth {
68		compatible = "bluetooth-platdata";
69		clocks = <&rk805 1>;
70		clock-names = "ext_clock";
71		uart_rts_gpios = <&gpio3 6 GPIO_ACTIVE_LOW>;
72		pinctrl-names = "default", "rts_gpio";
73		pinctrl-0 = <&uart11_rts>;
74		pinctrl-1 = <&uart11_rts_gpio>;
75		BT,reset_gpio    = <&gpio2 29 GPIO_ACTIVE_HIGH>;
76		BT,wake_gpio     = <&gpio3 27 GPIO_ACTIVE_HIGH>;
77		BT,wake_host_irq = <&gpio3 26 GPIO_ACTIVE_HIGH>;
78		status = "okay";
79	};
80
81	wireless-wlan {
82		compatible = "wlan-platdata";
83		rockchip,grf = <&grf>;
84		wifi_chip_type = "ap6255";
85		WIFI,host_wake_irq = <&gpio0 28 GPIO_ACTIVE_HIGH>;
86		status = "okay";
87	};
88
89	gpio_keys {
90		compatible = "gpio-keys";
91		#address-cells = <1>;
92		#size-cells = <0>;
93		autorepeat;
94
95		pinctrl-names = "default";
96		pinctrl-0 = <&pwr_key>;
97
98		power_key {
99			label = "GPIO Key Power";
100			gpios = <&gpio3 23 GPIO_ACTIVE_HIGH>;
101			linux,code = <116>;
102			debounce-interval = <100>;
103			wakeup-source;
104		};
105
106	};
107};
108
109&emmc {
110	/*
111	 * enable emmc ddr mode, choose the
112	 * according parameter base on the emmc
113	 * io voltage.
114	 */
115	mmc-ddr-1_8v;
116	//mmc-ddr-1_2v;
117	status = "okay";
118};
119
120&gpu {
121	status = "okay";
122};
123
124&nandc {
125	status = "disabled";
126};
127
128&pinctrl {
129	pinctrl-names = "default";
130	/*
131	 * sdmmc, pwm0, pwm2, ir, and spdif pins are defaultly set as gpio,
132	 * if you want to enable it, please remove below besides fixed_gpio.
133	 */
134	pinctrl-0 = <&sdmmc_gpio &pwm0_gpio &pwm2_gpio
135		     &ir_gpio &spdif_gpio &fixed_gpio>;
136
137	keys {
138		pwr_key: pwr-key {
139			rockchip,pins = <3 RK_PC7 RK_FUNC_GPIO &pcfg_pull_down>;
140		};
141	};
142
143	sdio-pwrseq {
144		wifi_enable_h: wifi-enable-h {
145			rockchip,pins = <3 RK_PB7 RK_FUNC_GPIO &pcfg_pull_none>;
146		};
147	};
148};
149
150&reboot_mode {
151	/delete-property/ mode-bootloader;
152};
153
154&sdio {
155	max-frequency = <150000000>;
156	mmc-pwrseq = <&sdio_pwrseq>;
157	num-slots = <1>;
158	sd-uhs-sdr104;
159	status = "okay";
160};
161
162/*
163 * If sdmmc is enabled on hardware, set status to okay.
164 * and remove the sdmmc_gpio from pinctrl-0 above.
165 */
166&sdmmc {
167	bus-width = <4>;
168	cap-mmc-highspeed;
169	cap-sd-highspeed;
170	card-detect-delay = <200>;
171	disable-wp;
172	max-frequency = <50000000>;
173	num-slots = <1>;
174	no-sdio;
175	no-mmc;
176	status = "disabled";
177};
178
179&vop {
180	assigned-clocks = <&cru DCLK_VOP>;
181	assigned-clock-parents = <&cru HDMIPHY>;
182	status = "okay";
183};
184
185&vop_mmu {
186	status = "okay";
187};
188