1/* 2 * Samsung's Exynos4210 based Origen board device tree source 3 * 4 * Copyright (c) 2010-2011 Samsung Electronics Co., Ltd. 5 * http://www.samsung.com 6 * Copyright (c) 2010-2011 Linaro Ltd. 7 * www.linaro.org 8 * 9 * Device tree source file for Insignal's Origen board which is based on 10 * Samsung's Exynos4210 SoC. 11 * 12 * This program is free software; you can redistribute it and/or modify 13 * it under the terms of the GNU General Public License version 2 as 14 * published by the Free Software Foundation. 15*/ 16 17/dts-v1/; 18#include "exynos4210.dtsi" 19#include <dt-bindings/gpio/gpio.h> 20#include <dt-bindings/input/input.h> 21 22/ { 23 model = "Insignal Origen evaluation board based on Exynos4210"; 24 compatible = "insignal,origen", "samsung,exynos4210", "samsung,exynos4"; 25 26 memory { 27 reg = <0x40000000 0x10000000 28 0x50000000 0x10000000 29 0x60000000 0x10000000 30 0x70000000 0x10000000>; 31 }; 32 33 chosen { 34 bootargs ="root=/dev/ram0 rw ramdisk=8192 initrd=0x41000000,8M console=ttySAC2,115200 init=/linuxrc"; 35 stdout-path = &serial_2; 36 }; 37 38 regulators { 39 compatible = "simple-bus"; 40 #address-cells = <1>; 41 #size-cells = <0>; 42 43 mmc_reg: regulator@0 { 44 compatible = "regulator-fixed"; 45 reg = <0>; 46 regulator-name = "VMEM_VDD_2.8V"; 47 regulator-min-microvolt = <2800000>; 48 regulator-max-microvolt = <2800000>; 49 gpio = <&gpx1 1 GPIO_ACTIVE_HIGH>; 50 enable-active-high; 51 }; 52 }; 53 54 gpio_keys { 55 compatible = "gpio-keys"; 56 #address-cells = <1>; 57 #size-cells = <0>; 58 59 up { 60 label = "Up"; 61 gpios = <&gpx2 0 GPIO_ACTIVE_LOW>; 62 linux,code = <KEY_UP>; 63 gpio-key,wakeup; 64 }; 65 66 down { 67 label = "Down"; 68 gpios = <&gpx2 1 GPIO_ACTIVE_LOW>; 69 linux,code = <KEY_DOWN>; 70 gpio-key,wakeup; 71 }; 72 73 back { 74 label = "Back"; 75 gpios = <&gpx1 7 GPIO_ACTIVE_LOW>; 76 linux,code = <KEY_BACK>; 77 gpio-key,wakeup; 78 }; 79 80 home { 81 label = "Home"; 82 gpios = <&gpx1 6 GPIO_ACTIVE_LOW>; 83 linux,code = <KEY_HOME>; 84 gpio-key,wakeup; 85 }; 86 87 menu { 88 label = "Menu"; 89 gpios = <&gpx1 5 GPIO_ACTIVE_LOW>; 90 linux,code = <KEY_MENU>; 91 gpio-key,wakeup; 92 }; 93 }; 94 95 leds { 96 compatible = "gpio-leds"; 97 status { 98 gpios = <&gpx1 3 GPIO_ACTIVE_LOW>; 99 linux,default-trigger = "heartbeat"; 100 }; 101 }; 102 103 fixed-rate-clocks { 104 xxti { 105 compatible = "samsung,clock-xxti"; 106 clock-frequency = <0>; 107 }; 108 109 xusbxti { 110 compatible = "samsung,clock-xusbxti"; 111 clock-frequency = <24000000>; 112 }; 113 }; 114 115 display-timings { 116 native-mode = <&timing0>; 117 timing0: timing { 118 clock-frequency = <47500000>; 119 hactive = <1024>; 120 vactive = <600>; 121 hfront-porch = <64>; 122 hback-porch = <16>; 123 hsync-len = <48>; 124 vback-porch = <64>; 125 vfront-porch = <16>; 126 vsync-len = <3>; 127 }; 128 }; 129}; 130 131&cpu0 { 132 cpu0-supply = <&buck1_reg>; 133}; 134 135&fimd { 136 pinctrl-0 = <&lcd_en &lcd_clk &lcd_data24 &pwm0_out>; 137 pinctrl-names = "default"; 138 status = "okay"; 139}; 140 141&g2d { 142 status = "okay"; 143}; 144 145&i2c_0 { 146 status = "okay"; 147 samsung,i2c-sda-delay = <100>; 148 samsung,i2c-max-bus-freq = <20000>; 149 pinctrl-0 = <&i2c0_bus>; 150 pinctrl-names = "default"; 151 152 max8997_pmic@66 { 153 compatible = "maxim,max8997-pmic"; 154 reg = <0x66>; 155 interrupt-parent = <&gpx0>; 156 interrupts = <4 0>, <3 0>; 157 158 max8997,pmic-buck1-dvs-voltage = <1350000>; 159 max8997,pmic-buck2-dvs-voltage = <1100000>; 160 max8997,pmic-buck5-dvs-voltage = <1200000>; 161 162 regulators { 163 ldo1_reg: LDO1 { 164 regulator-name = "VDD_ABB_3.3V"; 165 regulator-min-microvolt = <3300000>; 166 regulator-max-microvolt = <3300000>; 167 }; 168 169 ldo2_reg: LDO2 { 170 regulator-name = "VDD_ALIVE_1.1V"; 171 regulator-min-microvolt = <1100000>; 172 regulator-max-microvolt = <1100000>; 173 regulator-always-on; 174 }; 175 176 ldo3_reg: LDO3 { 177 regulator-name = "VMIPI_1.1V"; 178 regulator-min-microvolt = <1100000>; 179 regulator-max-microvolt = <1100000>; 180 }; 181 182 ldo4_reg: LDO4 { 183 regulator-name = "VDD_RTC_1.8V"; 184 regulator-min-microvolt = <1800000>; 185 regulator-max-microvolt = <1800000>; 186 regulator-always-on; 187 }; 188 189 ldo6_reg: LDO6 { 190 regulator-name = "VMIPI_1.8V"; 191 regulator-min-microvolt = <1800000>; 192 regulator-max-microvolt = <1800000>; 193 regulator-always-on; 194 }; 195 196 ldo7_reg: LDO7 { 197 regulator-name = "VDD_AUD_1.8V"; 198 regulator-min-microvolt = <1800000>; 199 regulator-max-microvolt = <1800000>; 200 }; 201 202 ldo8_reg: LDO8 { 203 regulator-name = "VADC_3.3V"; 204 regulator-min-microvolt = <3300000>; 205 regulator-max-microvolt = <3300000>; 206 }; 207 208 ldo9_reg: LDO9 { 209 regulator-name = "DVDD_SWB_2.8V"; 210 regulator-min-microvolt = <2800000>; 211 regulator-max-microvolt = <2800000>; 212 regulator-always-on; 213 }; 214 215 ldo10_reg: LDO10 { 216 regulator-name = "VDD_PLL_1.1V"; 217 regulator-min-microvolt = <1100000>; 218 regulator-max-microvolt = <1100000>; 219 regulator-always-on; 220 }; 221 222 ldo11_reg: LDO11 { 223 regulator-name = "VDD_AUD_3V"; 224 regulator-min-microvolt = <3000000>; 225 regulator-max-microvolt = <3000000>; 226 }; 227 228 ldo14_reg: LDO14 { 229 regulator-name = "AVDD18_SWB_1.8V"; 230 regulator-min-microvolt = <1800000>; 231 regulator-max-microvolt = <1800000>; 232 regulator-always-on; 233 }; 234 235 ldo17_reg: LDO17 { 236 regulator-name = "VDD_SWB_3.3V"; 237 regulator-min-microvolt = <3300000>; 238 regulator-max-microvolt = <3300000>; 239 regulator-always-on; 240 }; 241 242 ldo21_reg: LDO21 { 243 regulator-name = "VDD_MIF_1.2V"; 244 regulator-min-microvolt = <1200000>; 245 regulator-max-microvolt = <1200000>; 246 regulator-always-on; 247 }; 248 249 buck1_reg: BUCK1 { 250 /* 251 * HACK: The real name is VDD_ARM_1.2V, 252 * but exynos-cpufreq does not support 253 * DT-based regulator lookup yet. 254 */ 255 regulator-name = "vdd_arm"; 256 regulator-min-microvolt = <950000>; 257 regulator-max-microvolt = <1350000>; 258 regulator-always-on; 259 regulator-boot-on; 260 }; 261 262 buck2_reg: BUCK2 { 263 regulator-name = "VDD_INT_1.1V"; 264 regulator-min-microvolt = <900000>; 265 regulator-max-microvolt = <1100000>; 266 regulator-always-on; 267 regulator-boot-on; 268 }; 269 270 buck3_reg: BUCK3 { 271 regulator-name = "VDD_G3D_1.1V"; 272 regulator-min-microvolt = <900000>; 273 regulator-max-microvolt = <1100000>; 274 }; 275 276 buck5_reg: BUCK5 { 277 regulator-name = "VDDQ_M1M2_1.2V"; 278 regulator-min-microvolt = <1200000>; 279 regulator-max-microvolt = <1200000>; 280 regulator-always-on; 281 }; 282 283 buck7_reg: BUCK7 { 284 regulator-name = "VDD_LCD_3.3V"; 285 regulator-min-microvolt = <3300000>; 286 regulator-max-microvolt = <3300000>; 287 regulator-boot-on; 288 regulator-always-on; 289 }; 290 }; 291 }; 292}; 293 294&mfc { 295 samsung,mfc-r = <0x43000000 0x800000>; 296 samsung,mfc-l = <0x51000000 0x800000>; 297 status = "okay"; 298}; 299 300&sdhci_0 { 301 bus-width = <4>; 302 pinctrl-0 = <&sd0_clk &sd0_cmd &sd0_bus4 &sd0_cd>; 303 pinctrl-names = "default"; 304 vmmc-supply = <&mmc_reg>; 305 status = "okay"; 306}; 307 308&sdhci_2 { 309 bus-width = <4>; 310 pinctrl-0 = <&sd2_clk &sd2_cmd &sd2_bus4 &sd2_cd>; 311 pinctrl-names = "default"; 312 vmmc-supply = <&mmc_reg>; 313 status = "okay"; 314}; 315 316&serial_0 { 317 status = "okay"; 318}; 319 320&serial_1 { 321 status = "okay"; 322}; 323 324&serial_2 { 325 status = "okay"; 326}; 327 328&serial_3 { 329 status = "okay"; 330}; 331 332&rtc { 333 status = "okay"; 334}; 335 336&tmu { 337 status = "okay"; 338}; 339 340&watchdog { 341 status = "okay"; 342}; 343