1/* 2 * Google Veyron Minnie Rev 0+ board device tree source 3 * 4 * Copyright 2015 Google, Inc 5 * 6 * This file is dual-licensed: you can use it either under the terms 7 * of the GPL or the X11 license, at your option. Note that this dual 8 * licensing only applies to this file, and not this project as a 9 * whole. 10 * 11 * a) This file is free software; you can redistribute it and/or 12 * modify it under the terms of the GNU General Public License as 13 * published by the Free Software Foundation; either version 2 of the 14 * License, or (at your option) any later version. 15 * 16 * This file is distributed in the hope that it will be useful, 17 * but WITHOUT ANY WARRANTY; without even the implied warranty of 18 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 19 * GNU General Public License for more details. 20 * 21 * Or, alternatively, 22 * 23 * b) Permission is hereby granted, free of charge, to any person 24 * obtaining a copy of this software and associated documentation 25 * files (the "Software"), to deal in the Software without 26 * restriction, including without limitation the rights to use, 27 * copy, modify, merge, publish, distribute, sublicense, and/or 28 * sell copies of the Software, and to permit persons to whom the 29 * Software is furnished to do so, subject to the following 30 * conditions: 31 * 32 * The above copyright notice and this permission notice shall be 33 * included in all copies or substantial portions of the Software. 34 * 35 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, 36 * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES 37 * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 38 * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT 39 * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, 40 * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING 41 * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR 42 * OTHER DEALINGS IN THE SOFTWARE. 43 */ 44 45/dts-v1/; 46#include "rk3288-veyron-chromebook.dtsi" 47 48/ { 49 model = "Google Minnie"; 50 compatible = "google,veyron-minnie-rev4", "google,veyron-minnie-rev3", 51 "google,veyron-minnie-rev2", "google,veyron-minnie-rev1", 52 "google,veyron-minnie-rev0", "google,veyron-minnie", 53 "google,veyron", "rockchip,rk3288"; 54 55 backlight_regulator: backlight-regulator { 56 compatible = "regulator-fixed"; 57 enable-active-high; 58 gpio = <&gpio2 12 GPIO_ACTIVE_HIGH>; 59 pinctrl-names = "default"; 60 pinctrl-0 = <&bl_pwr_en>; 61 regulator-name = "backlight_regulator"; 62 vin-supply = <&vcc33_sys>; 63 startup-delay-us = <15000>; 64 }; 65 66 panel_regulator: panel-regulator { 67 compatible = "regulator-fixed"; 68 enable-active-high; 69 gpio = <&gpio7 14 GPIO_ACTIVE_HIGH>; 70 pinctrl-names = "default"; 71 pinctrl-0 = <&lcd_enable_h>; 72 regulator-name = "panel_regulator"; 73 startup-delay-us = <100000>; 74 vin-supply = <&vcc33_sys>; 75 }; 76 77 vcc18_lcd: vcc18-lcd { 78 compatible = "regulator-fixed"; 79 enable-active-high; 80 gpio = <&gpio2 13 GPIO_ACTIVE_HIGH>; 81 pinctrl-names = "default"; 82 pinctrl-0 = <&avdd_1v8_disp_en>; 83 regulator-name = "vcc18_lcd"; 84 regulator-always-on; 85 regulator-boot-on; 86 vin-supply = <&vcc18_wl>; 87 }; 88 89 sound { 90 compatible = "rockchip,audio-max98090-jerry"; 91 92 cpu { 93 sound-dai = <&i2s 0>; 94 }; 95 96 codec { 97 sound-dai = <&max98090 0>; 98 }; 99 }; 100}; 101 102&backlight { 103 /* Minnie panel PWM must be >= 1%, so start non-zero brightness at 3 */ 104 brightness-levels = < 105 0 3 4 5 6 7 106 8 9 10 11 12 13 14 15 107 16 17 18 19 20 21 22 23 108 24 25 26 27 28 29 30 31 109 32 33 34 35 36 37 38 39 110 40 41 42 43 44 45 46 47 111 48 49 50 51 52 53 54 55 112 56 57 58 59 60 61 62 63 113 64 65 66 67 68 69 70 71 114 72 73 74 75 76 77 78 79 115 80 81 82 83 84 85 86 87 116 88 89 90 91 92 93 94 95 117 96 97 98 99 100 101 102 103 118 104 105 106 107 108 109 110 111 119 112 113 114 115 116 117 118 119 120 120 121 122 123 124 125 126 127 121 128 129 130 131 132 133 134 135 122 136 137 138 139 140 141 142 143 123 144 145 146 147 148 149 150 151 124 152 153 154 155 156 157 158 159 125 160 161 162 163 164 165 166 167 126 168 169 170 171 172 173 174 175 127 176 177 178 179 180 181 182 183 128 184 185 186 187 188 189 190 191 129 192 193 194 195 196 197 198 199 130 200 201 202 203 204 205 206 207 131 208 209 210 211 212 213 214 215 132 216 217 218 219 220 221 222 223 133 224 225 226 227 228 229 230 231 134 232 233 234 235 236 237 238 239 135 240 241 242 243 244 245 246 247 136 248 249 250 251 252 253 254 255>; 137 power-supply = <&backlight_regulator>; 138}; 139 140&dmc { 141 rockchip,pctl-timing = <0x215 0xc8 0x0 0x35 0x26 0x2 0x70 0x2000d 142 0x6 0x0 0x8 0x4 0x17 0x24 0xd 0x6 143 0x4 0x8 0x4 0x76 0x4 0x0 0x30 0x0 144 0x1 0x2 0x2 0x4 0x0 0x0 0xc0 0x4 145 0x8 0x1f4>; 146 rockchip,phy-timing = <0x48d7dd93 0x187008d8 0x121076 147 0x0 0xc3 0x6 0x1>; 148 rockchip,sdram-params = <0x20d266a4 0x5b6 6 533000000 6 13 0>; 149}; 150 151&emmc { 152 /delete-property/mmc-hs200-1_8v; 153}; 154 155&gpio_keys { 156 pinctrl-0 = <&pwr_key_h &ap_lid_int_l &volum_down_l &volum_up_l>; 157 158 volum_down { 159 label = "Volum_down"; 160 gpios = <&gpio5 11 GPIO_ACTIVE_LOW>; 161 linux,code = <KEY_VOLUMEDOWN>; 162 debounce-interval = <100>; 163 }; 164 165 volum_up { 166 label = "Volum_up"; 167 gpios = <&gpio5 10 GPIO_ACTIVE_LOW>; 168 linux,code = <KEY_VOLUMEUP>; 169 debounce-interval = <100>; 170 }; 171}; 172 173&i2c_tunnel { 174 battery: bq27500@55 { 175 compatible = "ti,bq27500"; 176 reg = <0x55>; 177 }; 178}; 179 180&i2c3 { 181 status = "okay"; 182 183 clock-frequency = <400000>; 184 i2c-scl-falling-time-ns = <50>; 185 i2c-scl-rising-time-ns = <300>; 186 187 touchscreen@10 { 188 compatible = "elan,ekth3500"; 189 reg = <0x10>; 190 interrupt-parent = <&gpio2>; 191 interrupts = <14 IRQ_TYPE_EDGE_FALLING>; 192 pinctrl-names = "default"; 193 pinctrl-0 = <&touch_int &touch_rst>; 194 reset-gpios = <&gpio2 15 GPIO_ACTIVE_LOW>; 195 vcc33-supply = <&vcc33_touch>; 196 vccio-supply = <&vcc33_touch>; 197 }; 198}; 199 200&panel { 201 compatible = "auo,b101ean01", "simple-panel"; 202 power-supply= <&panel_regulator>; 203}; 204 205&rk808 { 206 pinctrl-names = "default"; 207 pinctrl-0 = <&pmic_int_l &dvs_1 &dvs_2>; 208 209 regulators { 210 vcc33_touch: LDO_REG2 { 211 regulator-min-microvolt = <3300000>; 212 regulator-max-microvolt = <3300000>; 213 regulator-name = "vcc33_touch"; 214 regulator-state-mem { 215 regulator-off-in-suspend; 216 }; 217 }; 218 219 vcc5v_touch: SWITCH_REG2 { 220 regulator-name = "vcc5v_touch"; 221 regulator-state-mem { 222 regulator-off-in-suspend; 223 }; 224 }; 225 }; 226}; 227 228&sdmmc { 229 disable-wp; 230 pinctrl-names = "default"; 231 pinctrl-0 = <&sdmmc_clk &sdmmc_cmd &sdmmc_cd_disabled &sdmmc_cd_gpio 232 &sdmmc_bus4>; 233}; 234 235&vcc_5v { 236 enable-active-high; 237 gpio = <&gpio7 21 GPIO_ACTIVE_HIGH>; 238 pinctrl-names = "default"; 239 pinctrl-0 = <&drv_5v>; 240}; 241 242&vcc50_hdmi { 243 enable-active-high; 244 gpio = <&gpio5 19 GPIO_ACTIVE_HIGH>; 245 pinctrl-names = "default"; 246 pinctrl-0 = <&vcc50_hdmi_en>; 247}; 248 249&pinctrl { 250 backlight { 251 bl_pwr_en: bl_pwr_en { 252 rockchip,pins = <2 12 RK_FUNC_GPIO &pcfg_pull_none>; 253 }; 254 }; 255 256 buck-5v { 257 drv_5v: drv-5v { 258 rockchip,pins = <7 21 RK_FUNC_GPIO &pcfg_pull_none>; 259 }; 260 }; 261 262 buttons { 263 volum_down_l: volum-down-l { 264 rockchip,pins = <5 11 RK_FUNC_GPIO &pcfg_pull_up>; 265 }; 266 267 volum_up_l: volum-up-l { 268 rockchip,pins = <5 10 RK_FUNC_GPIO &pcfg_pull_up>; 269 }; 270 }; 271 272 hdmi { 273 vcc50_hdmi_en: vcc50-hdmi-en { 274 rockchip,pins = <5 19 RK_FUNC_GPIO &pcfg_pull_none>; 275 }; 276 }; 277 278 lcd { 279 lcd_enable_h: lcd-en { 280 rockchip,pins = <7 14 RK_FUNC_GPIO &pcfg_pull_none>; 281 }; 282 283 avdd_1v8_disp_en: avdd-1v8-disp-en { 284 rockchip,pins = <2 13 RK_FUNC_GPIO &pcfg_pull_none>; 285 }; 286 }; 287 288 pmic { 289 dvs_1: dvs-1 { 290 rockchip,pins = <7 12 RK_FUNC_GPIO &pcfg_pull_down>; 291 }; 292 293 dvs_2: dvs-2 { 294 rockchip,pins = <7 15 RK_FUNC_GPIO &pcfg_pull_down>; 295 }; 296 }; 297 298 prochot { 299 gpio_prochot: gpio-prochot { 300 rockchip,pins = <2 8 RK_FUNC_GPIO &pcfg_pull_none>; 301 }; 302 }; 303 304 touchscreen { 305 touch_int: touch-int { 306 rockchip,pins = <2 14 RK_FUNC_GPIO &pcfg_pull_none>; 307 }; 308 309 touch_rst: touch-rst { 310 rockchip,pins = <2 15 RK_FUNC_GPIO &pcfg_pull_none>; 311 }; 312 }; 313}; 314