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#include "exynos-mfc-reserved-memory.dtsi" 22 23/ { 24 model = "Insignal Origen evaluation board based on Exynos4210"; 25 compatible = "insignal,origen", "samsung,exynos4210", "samsung,exynos4"; 26 27 memory@40000000 { 28 device_type = "memory"; 29 reg = <0x40000000 0x10000000 30 0x50000000 0x10000000 31 0x60000000 0x10000000 32 0x70000000 0x10000000>; 33 }; 34 35 chosen { 36 bootargs ="root=/dev/ram0 rw ramdisk=8192 initrd=0x41000000,8M console=ttySAC2,115200 init=/linuxrc"; 37 stdout-path = &serial_2; 38 }; 39 40 regulators { 41 compatible = "simple-bus"; 42 #address-cells = <1>; 43 #size-cells = <0>; 44 45 mmc_reg: regulator@0 { 46 compatible = "regulator-fixed"; 47 reg = <0>; 48 regulator-name = "VMEM_VDD_2.8V"; 49 regulator-min-microvolt = <2800000>; 50 regulator-max-microvolt = <2800000>; 51 gpio = <&gpx1 1 GPIO_ACTIVE_HIGH>; 52 enable-active-high; 53 }; 54 }; 55 56 gpio_keys { 57 compatible = "gpio-keys"; 58 #address-cells = <1>; 59 #size-cells = <0>; 60 61 up { 62 label = "Up"; 63 gpios = <&gpx2 0 GPIO_ACTIVE_LOW>; 64 linux,code = <KEY_UP>; 65 wakeup-source; 66 }; 67 68 down { 69 label = "Down"; 70 gpios = <&gpx2 1 GPIO_ACTIVE_LOW>; 71 linux,code = <KEY_DOWN>; 72 wakeup-source; 73 }; 74 75 back { 76 label = "Back"; 77 gpios = <&gpx1 7 GPIO_ACTIVE_LOW>; 78 linux,code = <KEY_BACK>; 79 wakeup-source; 80 }; 81 82 home { 83 label = "Home"; 84 gpios = <&gpx1 6 GPIO_ACTIVE_LOW>; 85 linux,code = <KEY_HOME>; 86 wakeup-source; 87 }; 88 89 menu { 90 label = "Menu"; 91 gpios = <&gpx1 5 GPIO_ACTIVE_LOW>; 92 linux,code = <KEY_MENU>; 93 wakeup-source; 94 }; 95 }; 96 97 leds { 98 compatible = "gpio-leds"; 99 status { 100 gpios = <&gpx1 3 GPIO_ACTIVE_LOW>; 101 linux,default-trigger = "heartbeat"; 102 }; 103 }; 104 105 fixed-rate-clocks { 106 xxti { 107 compatible = "samsung,clock-xxti"; 108 clock-frequency = <0>; 109 }; 110 111 xusbxti { 112 compatible = "samsung,clock-xusbxti"; 113 clock-frequency = <24000000>; 114 }; 115 }; 116 117 display-timings { 118 native-mode = <&timing0>; 119 timing0: timing { 120 clock-frequency = <47500000>; 121 hactive = <1024>; 122 vactive = <600>; 123 hfront-porch = <64>; 124 hback-porch = <16>; 125 hsync-len = <48>; 126 vback-porch = <64>; 127 vfront-porch = <16>; 128 vsync-len = <3>; 129 }; 130 }; 131}; 132 133&cpu0 { 134 cpu0-supply = <&buck1_reg>; 135}; 136 137&fimd { 138 pinctrl-0 = <&lcd_en &lcd_clk &lcd_data24 &pwm0_out>; 139 pinctrl-names = "default"; 140 status = "okay"; 141}; 142 143&i2c_0 { 144 status = "okay"; 145 samsung,i2c-sda-delay = <100>; 146 samsung,i2c-max-bus-freq = <20000>; 147 pinctrl-0 = <&i2c0_bus>; 148 pinctrl-names = "default"; 149 150 max8997_pmic@66 { 151 compatible = "maxim,max8997-pmic"; 152 reg = <0x66>; 153 interrupt-parent = <&gpx0>; 154 interrupts = <4 IRQ_TYPE_NONE>, <3 IRQ_TYPE_NONE>; 155 pinctrl-names = "default"; 156 pinctrl-0 = <&max8997_irq>; 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&pinctrl_1 { 295 max8997_irq: max8997-irq { 296 samsung,pins = "gpx0-3", "gpx0-4"; 297 samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; 298 }; 299}; 300 301&sdhci_0 { 302 bus-width = <4>; 303 pinctrl-0 = <&sd0_clk &sd0_cmd &sd0_bus4 &sd0_cd>; 304 pinctrl-names = "default"; 305 vmmc-supply = <&mmc_reg>; 306 status = "okay"; 307}; 308 309&sdhci_2 { 310 bus-width = <4>; 311 pinctrl-0 = <&sd2_clk &sd2_cmd &sd2_bus4 &sd2_cd>; 312 pinctrl-names = "default"; 313 vmmc-supply = <&mmc_reg>; 314 status = "okay"; 315}; 316 317&serial_0 { 318 status = "okay"; 319}; 320 321&serial_1 { 322 status = "okay"; 323}; 324 325&serial_2 { 326 status = "okay"; 327}; 328 329&serial_3 { 330 status = "okay"; 331}; 332 333&rtc { 334 status = "okay"; 335}; 336 337&tmu { 338 status = "okay"; 339}; 340