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