1// SPDX-License-Identifier: GPL-2.0 2/* 3 * Samsung's Exynos4210 based Origen board device tree source 4 * 5 * Copyright (c) 2010-2011 Samsung Electronics Co., Ltd. 6 * http://www.samsung.com 7 * Copyright (c) 2010-2011 Linaro Ltd. 8 * www.linaro.org 9 * 10 * Device tree source file for Insignal's Origen board which is based on 11 * Samsung's Exynos4210 SoC. 12 */ 13 14/dts-v1/; 15#include "exynos4210.dtsi" 16#include <dt-bindings/gpio/gpio.h> 17#include <dt-bindings/input/input.h> 18#include <dt-bindings/leds/common.h> 19#include "exynos-mfc-reserved-memory.dtsi" 20 21/ { 22 model = "Insignal Origen evaluation board based on Exynos4210"; 23 compatible = "insignal,origen", "samsung,exynos4210", "samsung,exynos4"; 24 25 memory@40000000 { 26 device_type = "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 init=/linuxrc"; 35 stdout-path = "serial2:115200n8"; 36 }; 37 38 mmc_reg: voltage-regulator { 39 compatible = "regulator-fixed"; 40 regulator-name = "VMEM_VDD_2.8V"; 41 regulator-min-microvolt = <2800000>; 42 regulator-max-microvolt = <2800000>; 43 gpio = <&gpx1 1 GPIO_ACTIVE_HIGH>; 44 enable-active-high; 45 }; 46 47 gpio-keys { 48 compatible = "gpio-keys"; 49 50 key-up { 51 label = "Up"; 52 gpios = <&gpx2 0 GPIO_ACTIVE_LOW>; 53 linux,code = <KEY_UP>; 54 wakeup-source; 55 }; 56 57 key-down { 58 label = "Down"; 59 gpios = <&gpx2 1 GPIO_ACTIVE_LOW>; 60 linux,code = <KEY_DOWN>; 61 wakeup-source; 62 }; 63 64 key-back { 65 label = "Back"; 66 gpios = <&gpx1 7 GPIO_ACTIVE_LOW>; 67 linux,code = <KEY_BACK>; 68 wakeup-source; 69 }; 70 71 key-home { 72 label = "Home"; 73 gpios = <&gpx1 6 GPIO_ACTIVE_LOW>; 74 linux,code = <KEY_HOME>; 75 wakeup-source; 76 }; 77 78 key-menu { 79 label = "Menu"; 80 gpios = <&gpx1 5 GPIO_ACTIVE_LOW>; 81 linux,code = <KEY_MENU>; 82 wakeup-source; 83 }; 84 }; 85 86 leds { 87 compatible = "gpio-leds"; 88 status { 89 gpios = <&gpx1 3 GPIO_ACTIVE_LOW>; 90 function = LED_FUNCTION_HEARTBEAT; 91 linux,default-trigger = "heartbeat"; 92 }; 93 }; 94 95 fixed-rate-clocks { 96 xxti { 97 compatible = "samsung,clock-xxti"; 98 clock-frequency = <0>; 99 }; 100 101 xusbxti { 102 compatible = "samsung,clock-xusbxti"; 103 clock-frequency = <24000000>; 104 }; 105 106 pmic_ap_clk: pmic-ap-clk { 107 /* Workaround for missing clock on max8997 PMIC */ 108 compatible = "fixed-clock"; 109 #clock-cells = <0>; 110 clock-frequency = <32768>; 111 }; 112 }; 113 114 display-timings { 115 native-mode = <&timing0>; 116 timing0: timing { 117 clock-frequency = <47500000>; 118 hactive = <1024>; 119 vactive = <600>; 120 hfront-porch = <64>; 121 hback-porch = <16>; 122 hsync-len = <48>; 123 vback-porch = <64>; 124 vfront-porch = <16>; 125 vsync-len = <3>; 126 }; 127 }; 128}; 129 130&cpu0 { 131 cpu0-supply = <&buck1_reg>; 132}; 133 134&cpu_thermal { 135 cooling-maps { 136 map0 { 137 /* Corresponds to 800MHz */ 138 cooling-device = <&cpu0 2 2>; 139 }; 140 map1 { 141 /* Corresponds to 200MHz */ 142 cooling-device = <&cpu0 4 4>; 143 }; 144 }; 145}; 146 147&exynos_usbphy { 148 status = "okay"; 149}; 150 151&fimd { 152 pinctrl-0 = <&lcd_en &lcd_clk &lcd_data24 &pwm0_out>; 153 pinctrl-names = "default"; 154 status = "okay"; 155}; 156 157&gpu { 158 mali-supply = <&buck3_reg>; 159 status = "okay"; 160}; 161 162&hsotg { 163 vusb_d-supply = <&ldo3_reg>; 164 vusb_a-supply = <&ldo8_reg>; 165 dr_mode = "peripheral"; 166 status = "okay"; 167}; 168 169&i2c_0 { 170 status = "okay"; 171 samsung,i2c-sda-delay = <100>; 172 samsung,i2c-max-bus-freq = <20000>; 173 pinctrl-0 = <&i2c0_bus>; 174 pinctrl-names = "default"; 175 176 pmic@66 { 177 compatible = "maxim,max8997-pmic"; 178 reg = <0x66>; 179 interrupt-parent = <&gpx0>; 180 interrupts = <4 IRQ_TYPE_NONE>, <3 IRQ_TYPE_NONE>; 181 pinctrl-names = "default"; 182 pinctrl-0 = <&max8997_irq>; 183 184 max8997,pmic-buck1-dvs-voltage = <1350000>; 185 max8997,pmic-buck2-dvs-voltage = <1100000>; 186 max8997,pmic-buck5-dvs-voltage = <1200000>; 187 188 regulators { 189 ldo1_reg: LDO1 { 190 regulator-name = "VDD_ABB_3.3V"; 191 regulator-min-microvolt = <3300000>; 192 regulator-max-microvolt = <3300000>; 193 }; 194 195 ldo2_reg: LDO2 { 196 regulator-name = "VDD_ALIVE_1.1V"; 197 regulator-min-microvolt = <1100000>; 198 regulator-max-microvolt = <1100000>; 199 regulator-always-on; 200 }; 201 202 ldo3_reg: LDO3 { 203 regulator-name = "VMIPI_1.1V"; 204 regulator-min-microvolt = <1100000>; 205 regulator-max-microvolt = <1100000>; 206 }; 207 208 ldo4_reg: LDO4 { 209 regulator-name = "VDD_RTC_1.8V"; 210 regulator-min-microvolt = <1800000>; 211 regulator-max-microvolt = <1800000>; 212 regulator-always-on; 213 }; 214 215 ldo6_reg: LDO6 { 216 regulator-name = "VMIPI_1.8V"; 217 regulator-min-microvolt = <1800000>; 218 regulator-max-microvolt = <1800000>; 219 regulator-always-on; 220 }; 221 222 ldo7_reg: LDO7 { 223 regulator-name = "VDD_AUD_1.8V"; 224 regulator-min-microvolt = <1800000>; 225 regulator-max-microvolt = <1800000>; 226 }; 227 228 ldo8_reg: LDO8 { 229 regulator-name = "VADC_3.3V"; 230 regulator-min-microvolt = <3300000>; 231 regulator-max-microvolt = <3300000>; 232 }; 233 234 ldo9_reg: LDO9 { 235 regulator-name = "DVDD_SWB_2.8V"; 236 regulator-min-microvolt = <2800000>; 237 regulator-max-microvolt = <2800000>; 238 regulator-always-on; 239 }; 240 241 ldo10_reg: LDO10 { 242 regulator-name = "VDD_PLL_1.1V"; 243 regulator-min-microvolt = <1100000>; 244 regulator-max-microvolt = <1100000>; 245 regulator-always-on; 246 }; 247 248 ldo11_reg: LDO11 { 249 regulator-name = "VDD_AUD_3V"; 250 regulator-min-microvolt = <3000000>; 251 regulator-max-microvolt = <3000000>; 252 }; 253 254 ldo14_reg: LDO14 { 255 regulator-name = "AVDD18_SWB_1.8V"; 256 regulator-min-microvolt = <1800000>; 257 regulator-max-microvolt = <1800000>; 258 regulator-always-on; 259 }; 260 261 ldo17_reg: LDO17 { 262 regulator-name = "VDD_SWB_3.3V"; 263 regulator-min-microvolt = <3300000>; 264 regulator-max-microvolt = <3300000>; 265 regulator-always-on; 266 }; 267 268 ldo21_reg: LDO21 { 269 regulator-name = "VDD_MIF_1.2V"; 270 regulator-min-microvolt = <1200000>; 271 regulator-max-microvolt = <1200000>; 272 regulator-always-on; 273 }; 274 275 buck1_reg: BUCK1 { 276 regulator-name = "VDD_ARM_1.2V"; 277 regulator-min-microvolt = <950000>; 278 regulator-max-microvolt = <1350000>; 279 regulator-always-on; 280 regulator-boot-on; 281 }; 282 283 buck2_reg: BUCK2 { 284 regulator-name = "VDD_INT_1.1V"; 285 regulator-min-microvolt = <900000>; 286 regulator-max-microvolt = <1100000>; 287 regulator-always-on; 288 regulator-boot-on; 289 }; 290 291 buck3_reg: BUCK3 { 292 regulator-name = "VDD_G3D_1.1V"; 293 regulator-min-microvolt = <900000>; 294 regulator-max-microvolt = <1100000>; 295 }; 296 297 buck5_reg: BUCK5 { 298 regulator-name = "VDDQ_M1M2_1.2V"; 299 regulator-min-microvolt = <1200000>; 300 regulator-max-microvolt = <1200000>; 301 regulator-always-on; 302 }; 303 304 buck7_reg: BUCK7 { 305 regulator-name = "VDD_LCD_3.3V"; 306 regulator-min-microvolt = <3300000>; 307 regulator-max-microvolt = <3300000>; 308 regulator-boot-on; 309 regulator-always-on; 310 }; 311 312 EN32KHZ_AP { 313 regulator-name = "EN32KHZ_AP"; 314 regulator-always-on; 315 }; 316 }; 317 }; 318}; 319 320&pinctrl_1 { 321 max8997_irq: max8997-irq-pins { 322 samsung,pins = "gpx0-3", "gpx0-4"; 323 samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; 324 }; 325}; 326 327&sdhci_0 { 328 bus-width = <4>; 329 pinctrl-0 = <&sd0_clk &sd0_cmd &sd0_bus4 &sd0_cd>; 330 pinctrl-names = "default"; 331 vmmc-supply = <&mmc_reg>; 332 status = "okay"; 333}; 334 335&sdhci_2 { 336 bus-width = <4>; 337 pinctrl-0 = <&sd2_clk &sd2_cmd &sd2_bus4 &sd2_cd>; 338 pinctrl-names = "default"; 339 vmmc-supply = <&mmc_reg>; 340 status = "okay"; 341}; 342 343&serial_0 { 344 status = "okay"; 345}; 346 347&serial_1 { 348 status = "okay"; 349}; 350 351&serial_2 { 352 status = "okay"; 353}; 354 355&serial_3 { 356 status = "okay"; 357}; 358 359&rtc { 360 status = "okay"; 361 clocks = <&clock CLK_RTC>, <&pmic_ap_clk>; 362 clock-names = "rtc", "rtc_src"; 363}; 364 365&tmu { 366 status = "okay"; 367}; 368