1/* 2 * Google Veyron (and derivatives) board device tree source 3 * Chromebook specific parts 4 * 5 * Copyright 2015 Google, Inc 6 * 7 * This file is dual-licensed: you can use it either under the terms 8 * of the GPL or the X11 license, at your option. Note that this dual 9 * licensing only applies to this file, and not this project as a 10 * whole. 11 * 12 * a) This file is free software; you can redistribute it and/or 13 * modify it under the terms of the GNU General Public License as 14 * published by the Free Software Foundation; either version 2 of the 15 * License, or (at your option) any later version. 16 * 17 * This file is distributed in the hope that it will be useful, 18 * but WITHOUT ANY WARRANTY; without even the implied warranty of 19 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 20 * GNU General Public License for more details. 21 * 22 * Or, alternatively, 23 * 24 * b) Permission is hereby granted, free of charge, to any person 25 * obtaining a copy of this software and associated documentation 26 * files (the "Software"), to deal in the Software without 27 * restriction, including without limitation the rights to use, 28 * copy, modify, merge, publish, distribute, sublicense, and/or 29 * sell copies of the Software, and to permit persons to whom the 30 * Software is furnished to do so, subject to the following 31 * conditions: 32 * 33 * The above copyright notice and this permission notice shall be 34 * included in all copies or substantial portions of the Software. 35 * 36 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, 37 * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES 38 * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 39 * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT 40 * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, 41 * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING 42 * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR 43 * OTHER DEALINGS IN THE SOFTWARE. 44 */ 45 46#include <dt-bindings/clock/rockchip,rk808.h> 47#include <dt-bindings/input/input.h> 48#include "rk3288-veyron.dtsi" 49#include "rk3288-veyron-sdmmc.dtsi" 50 51/ { 52 aliases { 53 /* Assign 20 so we don't get confused w/ builtin ones */ 54 i2c20 = &i2c_tunnel; 55 }; 56 57 gpio-charger { 58 compatible = "gpio-charger"; 59 charger-type = "mains"; 60 gpios = <&gpio0 8 GPIO_ACTIVE_HIGH>; 61 pinctrl-names = "default"; 62 pinctrl-0 = <&ac_present_ap>; 63 }; 64 65 /* A non-regulated voltage from power supply or battery */ 66 vccsys: vccsys { 67 compatible = "regulator-fixed"; 68 regulator-name = "vccsys"; 69 regulator-boot-on; 70 regulator-always-on; 71 }; 72 73 vcc33_sys: vcc33-sys { 74 vin-supply = <&vccsys>; 75 }; 76 77 vcc_5v: vcc-5v { 78 vin-supply = <&vccsys>; 79 }; 80 81 /* This turns on vbus for host1 (dwc2) */ 82 vcc5_host1: vcc5-host1-regulator { 83 compatible = "regulator-fixed"; 84 enable-active-high; 85 gpio = <&gpio0 11 GPIO_ACTIVE_HIGH>; 86 pinctrl-names = "default"; 87 pinctrl-0 = <&host1_pwr_en>; 88 regulator-name = "vcc5_host1"; 89 regulator-always-on; 90 regulator-boot-on; 91 }; 92 93 /* This turns on vbus for otg for host mode (dwc2) */ 94 vcc5v_otg: vcc5v-otg-regulator { 95 compatible = "regulator-fixed"; 96 enable-active-high; 97 gpio = <&gpio0 12 GPIO_ACTIVE_HIGH>; 98 pinctrl-names = "default"; 99 pinctrl-0 = <&usbotg_pwren_h>; 100 regulator-name = "vcc5_host2"; 101 regulator-always-on; 102 regulator-boot-on; 103 }; 104}; 105 106&gpio_keys { 107 pinctrl-0 = <&pwr_key_l &ap_lid_int_l>; 108 lid { 109 label = "Lid"; 110 gpios = <&gpio0 6 GPIO_ACTIVE_LOW>; 111 gpio-key,wakeup; 112 linux,code = <0>; /* SW_LID */ 113 linux,input-type = <5>; /* EV_SW */ 114 debounce-interval = <1>; 115 }; 116}; 117 118&rk808 { 119 vcc11-supply = <&vcc_5v>; 120 121 regulators { 122 vcc33_ccd: LDO_REG8 { 123 regulator-name = "vcc33_ccd"; 124 regulator-always-on; 125 regulator-boot-on; 126 regulator-min-microvolt = <3300000>; 127 regulator-max-microvolt = <3300000>; 128 regulator-state-mem { 129 regulator-on-in-suspend; 130 regulator-suspend-microvolt = <3300000>; 131 }; 132 }; 133 }; 134}; 135 136&spi0 { 137 status = "okay"; 138 139 cros_ec: ec@0 { 140 compatible = "google,cros-ec-spi"; 141 reg = <0>; 142 google,cros-ec-spi-pre-delay = <30>; 143 interrupt-parent = <&gpio7>; 144 interrupts = <7 IRQ_TYPE_LEVEL_LOW>; 145 pinctrl-names = "default"; 146 pinctrl-0 = <&ec_int>; 147 spi-max-frequency = <3000000>; 148 149 i2c_tunnel: i2c-tunnel { 150 compatible = "google,cros-ec-i2c-tunnel"; 151 google,remote-bus = <0>; 152 #address-cells = <1>; 153 #size-cells = <0>; 154 }; 155 }; 156}; 157 158&i2c4 { 159 trackpad@15 { 160 compatible = "elan,ekth3000"; 161 reg = <0x15>; 162 interrupt-parent = <&gpio7>; 163 interrupts = <3 IRQ_TYPE_EDGE_FALLING>; 164 pinctrl-names = "default"; 165 pinctrl-0 = <&trackpad_int>; 166 vcc-supply = <&vcc33_io>; 167 wakeup-source; 168 }; 169}; 170 171&pinctrl { 172 pinctrl-0 = < 173 /* Common for sleep and wake, but no owners */ 174 &global_pwroff 175 176 /* Wake only */ 177 &suspend_l_wake 178 >; 179 pinctrl-1 = < 180 /* Common for sleep and wake, but no owners */ 181 &global_pwroff 182 183 /* Sleep only */ 184 &suspend_l_sleep 185 >; 186 187 buttons { 188 ap_lid_int_l: ap-lid-int-l { 189 rockchip,pins = <0 6 RK_FUNC_GPIO &pcfg_pull_up>; 190 }; 191 }; 192 193 charger { 194 ac_present_ap: ac-present-ap { 195 rockchip,pins = <0 8 RK_FUNC_GPIO &pcfg_pull_up>; 196 }; 197 }; 198 199 cros-ec { 200 ec_int: ec-int { 201 rockchip,pins = <7 7 RK_FUNC_GPIO &pcfg_pull_none>; 202 }; 203 }; 204 205 suspend { 206 suspend_l_wake: suspend-l-wake { 207 rockchip,pins = <0 17 RK_FUNC_GPIO &pcfg_output_low>; 208 }; 209 210 suspend_l_sleep: suspend-l-sleep { 211 rockchip,pins = <0 17 RK_FUNC_GPIO &pcfg_output_high>; 212 }; 213 }; 214 215 trackpad { 216 trackpad_int: trackpad-int { 217 rockchip,pins = <7 3 RK_FUNC_GPIO &pcfg_pull_up>; 218 }; 219 }; 220 221 usb-host { 222 host1_pwr_en: host1-pwr-en { 223 rockchip,pins = <0 11 RK_FUNC_GPIO &pcfg_pull_none>; 224 }; 225 226 usbotg_pwren_h: usbotg-pwren-h { 227 rockchip,pins = <0 12 RK_FUNC_GPIO &pcfg_pull_none>; 228 }; 229 }; 230}; 231 232#include "cros-ec-keyboard.dtsi" 233