1/* 2 * Copyright (c) 2014 Romain Perier <romain.perier@gmail.com> 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#include "rk3066a.dtsi" 45 46/ { 47 model = "MarsBoard RK3066"; 48 compatible = "haoyu,marsboard-rk3066", "rockchip,rk3066a"; 49 50 memory { 51 device_type = "memory"; 52 reg = <0x60000000 0x40000000>; 53 }; 54 55 vdd_log: vdd-log { 56 compatible = "pwm-regulator"; 57 pwms = <&pwm3 0 1000>; 58 regulator-name = "vdd_log"; 59 regulator-min-microvolt = <1200000>; 60 regulator-max-microvolt = <1200000>; 61 regulator-always-on; 62 voltage-table = <1000000 100>, 63 <1200000 42>; 64 status = "okay"; 65 }; 66 67 vcc_sd0: sdmmc-regulator { 68 compatible = "regulator-fixed"; 69 regulator-name = "sdmmc-supply"; 70 regulator-min-microvolt = <3000000>; 71 regulator-max-microvolt = <3000000>; 72 gpio = <&gpio3 7 GPIO_ACTIVE_LOW>; 73 startup-delay-us = <100000>; 74 vin-supply = <&vcc_io>; 75 }; 76 77 vsys: vsys-regulator { 78 compatible = "regulator-fixed"; 79 regulator-name = "vsys"; 80 regulator-min-microvolt = <5000000>; 81 regulator-max-microvolt = <5000000>; 82 regulator-boot-on; 83 }; 84}; 85 86&i2c1 { 87 status = "okay"; 88 clock-frequency = <400000>; 89 90 tps: tps@2d { 91 reg = <0x2d>; 92 93 interrupt-parent = <&gpio6>; 94 interrupts = <4 IRQ_TYPE_LEVEL_LOW>; 95 96 vcc1-supply = <&vsys>; 97 vcc2-supply = <&vsys>; 98 vcc3-supply = <&vsys>; 99 vcc4-supply = <&vsys>; 100 vcc5-supply = <&vcc_io>; 101 vcc6-supply = <&vcc_io>; 102 vcc7-supply = <&vsys>; 103 vccio-supply = <&vsys>; 104 105 regulators { 106 vcc_rtc: regulator@0 { 107 regulator-name = "vcc_rtc"; 108 regulator-always-on; 109 }; 110 111 vcc_io: regulator@1 { 112 regulator-name = "vcc_io"; 113 regulator-always-on; 114 }; 115 116 vdd_arm: regulator@2 { 117 regulator-name = "vdd_arm"; 118 regulator-min-microvolt = <600000>; 119 regulator-max-microvolt = <1500000>; 120 regulator-boot-on; 121 regulator-always-on; 122 }; 123 124 vcc_ddr: regulator@3 { 125 regulator-name = "vcc_ddr"; 126 regulator-min-microvolt = <600000>; 127 regulator-max-microvolt = <1500000>; 128 regulator-boot-on; 129 regulator-always-on; 130 }; 131 132 vcc18_cif: regulator@5 { 133 regulator-name = "vcc18_cif"; 134 regulator-always-on; 135 }; 136 137 vdd_11: regulator@6 { 138 regulator-name = "vdd_11"; 139 regulator-always-on; 140 }; 141 142 vcc_25: regulator@7 { 143 regulator-name = "vcc_25"; 144 regulator-always-on; 145 }; 146 147 vcc_18: regulator@8 { 148 regulator-name = "vcc_18"; 149 regulator-always-on; 150 }; 151 152 vcc25_hdmi: regulator@9 { 153 regulator-name = "vcc25_hdmi"; 154 regulator-always-on; 155 }; 156 157 vcca_33: regulator@10 { 158 regulator-name = "vcca_33"; 159 regulator-always-on; 160 }; 161 162 vcc_rmii: regulator@11 { 163 regulator-name = "vcc_rmii"; 164 }; 165 166 vcc28_cif: regulator@12 { 167 regulator-name = "vcc28_cif"; 168 regulator-always-on; 169 }; 170 }; 171 }; 172}; 173 174/* must be included after &tps gets defined */ 175#include "tps65910.dtsi" 176 177&emac { 178 status = "okay"; 179 180 phy = <&phy0>; 181 phy-supply = <&vcc_rmii>; 182 183 pinctrl-names = "default"; 184 pinctrl-0 = <&emac_xfer>, <&emac_mdio>, <&phy_int>; 185 186 phy0: ethernet-phy@0 { 187 reg = <0>; 188 interrupt-parent = <&gpio1>; 189 interrupts = <26 IRQ_TYPE_LEVEL_LOW>; 190 }; 191}; 192 193&mmc0 { 194 status = "okay"; 195 196 pinctrl-names = "default"; 197 pinctrl-0 = <&sd0_clk>, <&sd0_cmd>, <&sd0_cd>, <&sd0_bus4>; 198 vmmc-supply = <&vcc_sd0>; 199}; 200 201&pinctrl { 202 lan8720a { 203 phy_int: phy-int { 204 rockchip,pins = <RK_GPIO1 26 RK_FUNC_GPIO &pcfg_pull_none>; 205 }; 206 }; 207}; 208 209&pwm3 { 210 status = "okay"; 211}; 212 213&uart0 { 214 status = "okay"; 215}; 216 217&uart1 { 218 status = "okay"; 219}; 220 221&uart2 { 222 status = "okay"; 223}; 224 225&uart3 { 226 status = "okay"; 227}; 228 229&usbphy { 230 status = "okay"; 231}; 232 233&usb_host { 234 status = "okay"; 235}; 236 237&usb_otg { 238 status = "okay"; 239}; 240 241&wdt { 242 status = "okay"; 243}; 244