blob: f88a8680bfa5afdcf06ff3438df94139e155a900 [file] [log] [blame]
Simon Glass9d5d1cc2015-08-30 16:55:42 -06001/*
2 * Google Veyron (and derivatives) board device tree source
3 *
4 * Copyright 2014 Google, Inc
5 *
6 * SPDX-License-Identifier: GPL-2.0
7 */
8
9#include <dt-bindings/clock/rockchip,rk808.h>
10#include <dt-bindings/input/input.h>
11#include "rk3288-veyron.dtsi"
12
13/ {
14 aliases {
15 i2c20 = &i2c_tunnel;
Simon Glass86ad1b62016-11-13 14:22:08 -070016 video0 = &vopl;
17 video1 = &vopb;
Simon Glass9d5d1cc2015-08-30 16:55:42 -060018 };
19
20 gpio_keys: gpio-keys {
21 pinctrl-0 = <&pwr_key_h &ap_lid_int_l>;
22 lid {
23 label = "Lid";
24 gpios = <&gpio0 6 GPIO_ACTIVE_LOW>;
25 linux,code = <0>; /* SW_LID */
26 linux,input-type = <5>; /* EV_SW */
27 debounce-interval = <1>;
28 gpio-key,wakeup;
29 };
30 };
31
32 gpio-charger {
33 compatible = "gpio-charger";
34 gpios = <&gpio0 8 GPIO_ACTIVE_HIGH>;
35 pinctrl-names = "default";
36 pinctrl-0 = <&ac_present_ap>;
37 charger-type = "mains";
38 };
39
40 /* A non-regulated voltage from power supply or battery */
41 vccsys: vccsys {
42 compatible = "regulator-fixed";
43 regulator-name = "vccsys";
44 regulator-boot-on;
45 regulator-always-on;
46 };
47
48 vcc33_sys: vcc33-sys {
49 vin-supply = <&vccsys>;
50 };
51
52 vcc_5v: vcc-5v {
53 vin-supply = <&vccsys>;
54 };
55
56 /* This turns on vbus for host1 (dwc2) */
57 vcc5_host1: vcc5-host1-regulator {
58 compatible = "regulator-fixed";
59 enable-active-high;
60 gpio = <&gpio0 11 GPIO_ACTIVE_HIGH>;
61 pinctrl-names = "default";
62 pinctrl-0 = <&host1_pwr_en>;
63 regulator-name = "vcc5_host1";
64 regulator-always-on;
65 regulator-boot-on;
66 };
67
68 /* This turns on vbus for otg for host mode (dwc2) */
69 vcc5v_otg: vcc5v-otg-regulator {
70 compatible = "regulator-fixed";
71 enable-active-high;
72 gpio = <&gpio0 12 GPIO_ACTIVE_HIGH>;
73 pinctrl-names = "default";
74 pinctrl-0 = <&usbotg_pwren_h>;
75 regulator-name = "vcc5_host2";
76 regulator-always-on;
77 regulator-boot-on;
78 };
79};
80
81&rk808 {
82 regulators {
83 vcc33_ccd: LDO_REG8 {
84 regulator-always-on;
85 regulator-boot-on;
86 regulator-min-microvolt = <3300000>;
87 regulator-max-microvolt = <3300000>;
88 regulator-name = "vcc33_ccd";
89 regulator-suspend-mem-disabled;
90 };
91 };
92};
93
94&spi0 {
95 status = "okay";
Simon Glasscf88b7c2016-01-21 19:44:13 -070096 spi-activate-delay = <100>;
97 spi-max-frequency = <3000000>;
98 spi-deactivate-delay = <200>;
Simon Glass9d5d1cc2015-08-30 16:55:42 -060099
100 cros_ec: ec@0 {
101 compatible = "google,cros-ec-spi";
102 spi-max-frequency = <3000000>;
103 interrupt-parent = <&gpio7>;
104 interrupts = <7 IRQ_TYPE_LEVEL_LOW>;
Simon Glasscf88b7c2016-01-21 19:44:13 -0700105 ec-interrupt = <&gpio7 7 GPIO_ACTIVE_LOW>;
Simon Glass9d5d1cc2015-08-30 16:55:42 -0600106 pinctrl-names = "default";
107 pinctrl-0 = <&ec_int>;
108 reg = <0>;
109 google,cros-ec-spi-pre-delay = <30>;
110
111 i2c_tunnel: i2c-tunnel {
112 compatible = "google,cros-ec-i2c-tunnel";
113 google,remote-bus = <0>;
114 #address-cells = <1>;
115 #size-cells = <0>;
116 };
117 };
118};
119
120&i2c4 {
121 trackpad@15 {
122 compatible = "elan,i2c_touchpad";
123 interrupt-parent = <&gpio7>;
124 interrupts = <3 IRQ_TYPE_EDGE_FALLING>;
125 pinctrl-names = "default";
126 pinctrl-0 = <&trackpad_int>;
127 reg = <0x15>;
128 vcc-supply = <&vcc33_io>;
129 wakeup-source;
130 };
131};
132
133&pinctrl {
134 pinctrl-0 = <
135 /* Common for sleep and wake, but no owners */
136 &ddr0_retention
137 &ddrio_pwroff
138 &global_pwroff
139
140 /* Wake only */
141 &suspend_l_wake
142 &bt_dev_wake_awake
143 >;
144 pinctrl-1 = <
145 /* Common for sleep and wake, but no owners */
146 &ddr0_retention
147 &ddrio_pwroff
148 &global_pwroff
149
150 /* Sleep only */
151 &suspend_l_sleep
152 &bt_dev_wake_sleep
153 >;
154
155 buttons {
156 ap_lid_int_l: ap-lid-int-l {
157 rockchip,pins = <0 6 RK_FUNC_GPIO &pcfg_pull_up>;
158 };
159 };
160
161 charger {
162 ac_present_ap: ac-present-ap {
163 rockchip,pins = <0 8 RK_FUNC_GPIO &pcfg_pull_up>;
164 };
165 };
166
167 cros-ec {
168 ec_int: ec-int {
169 rockchip,pins = <7 7 RK_FUNC_GPIO &pcfg_pull_none>;
170 };
171 };
172
173 sdmmc {
174 sdmmc_wp_gpio: sdmmc-wp-gpio {
175 rockchip,pins = <7 10 RK_FUNC_GPIO &pcfg_pull_up>;
176 };
177 };
178
179 suspend {
180 suspend_l_wake: suspend-l-wake {
181 rockchip,pins = <0 17 RK_FUNC_GPIO &pcfg_output_low>;
182 };
183
184 suspend_l_sleep: suspend-l-sleep {
185 rockchip,pins = <0 17 RK_FUNC_GPIO &pcfg_output_high>;
186 };
187 };
188
189 trackpad {
190 trackpad_int: trackpad-int {
191 rockchip,pins = <7 3 RK_FUNC_GPIO &pcfg_pull_up>;
192 };
193 };
194
195 usb-host {
196 host1_pwr_en: host1-pwr-en {
197 rockchip,pins = <0 11 RK_FUNC_GPIO &pcfg_pull_none>;
198 };
199
200 usbotg_pwren_h: usbotg-pwren-h {
201 rockchip,pins = <0 12 RK_FUNC_GPIO &pcfg_pull_none>;
202 };
203 };
204};
205
206#include "cros-ec-keyboard.dtsi"