1// SPDX-License-Identifier: GPL-2.0 2/* 3 * Insignal's Exynos4412 based Origen board device tree source 4 * 5 * Copyright (c) 2012-2013 Samsung Electronics Co., Ltd. 6 * http://www.samsung.com 7 * 8 * Device tree source file for Insignal's Origen board which is based on 9 * Samsung's Exynos4412 SoC. 10 */ 11 12/dts-v1/; 13#include "exynos4412.dtsi" 14#include <dt-bindings/gpio/gpio.h> 15#include <dt-bindings/input/input.h> 16#include "exynos-mfc-reserved-memory.dtsi" 17 18/ { 19 model = "Insignal Origen evaluation board based on Exynos4412"; 20 compatible = "insignal,origen4412", "samsung,exynos4412", "samsung,exynos4"; 21 22 memory@40000000 { 23 device_type = "memory"; 24 reg = <0x40000000 0x40000000>; 25 }; 26 27 chosen { 28 bootargs ="console=ttySAC2,115200"; 29 stdout-path = &serial_2; 30 }; 31 32 firmware@203f000 { 33 compatible = "samsung,secure-firmware"; 34 reg = <0x0203F000 0x1000>; 35 }; 36 37 regulators { 38 compatible = "simple-bus"; 39 #address-cells = <1>; 40 #size-cells = <0>; 41 42 mmc_reg: regulator@0 { 43 compatible = "regulator-fixed"; 44 reg = <0>; 45 regulator-name = "VMEM_VDD_2.8V"; 46 regulator-min-microvolt = <2800000>; 47 regulator-max-microvolt = <2800000>; 48 gpio = <&gpx1 1 GPIO_ACTIVE_HIGH>; 49 enable-active-high; 50 }; 51 }; 52 53 display-timings { 54 native-mode = <&timing0>; 55 timing0: timing { 56 clock-frequency = <47500000>; 57 hactive = <1024>; 58 vactive = <600>; 59 hfront-porch = <64>; 60 hback-porch = <16>; 61 hsync-len = <48>; 62 vback-porch = <64>; 63 vfront-porch = <16>; 64 vsync-len = <3>; 65 }; 66 }; 67 68 fixed-rate-clocks { 69 xxti { 70 compatible = "samsung,clock-xxti"; 71 clock-frequency = <0>; 72 }; 73 74 xusbxti { 75 compatible = "samsung,clock-xusbxti"; 76 clock-frequency = <24000000>; 77 }; 78 }; 79}; 80 81&cpu0 { 82 cpu0-supply = <&buck2_reg>; 83}; 84 85&exynos_usbphy { 86 status = "okay"; 87}; 88 89&ehci { 90 samsung,vbus-gpio = <&gpx3 5 1>; 91 status = "okay"; 92 93 port@1 { 94 status = "okay"; 95 }; 96 port@2 { 97 status = "okay"; 98 }; 99}; 100 101&fimd { 102 pinctrl-0 = <&lcd_clk &lcd_data24 &pwm1_out>; 103 pinctrl-names = "default"; 104 status = "okay"; 105}; 106 107&i2c_0 { 108 #address-cells = <1>; 109 #size-cells = <0>; 110 samsung,i2c-sda-delay = <100>; 111 samsung,i2c-max-bus-freq = <20000>; 112 pinctrl-0 = <&i2c0_bus>; 113 pinctrl-names = "default"; 114 status = "okay"; 115 116 s5m8767_pmic@66 { 117 compatible = "samsung,s5m8767-pmic"; 118 reg = <0x66>; 119 120 s5m8767,pmic-buck-default-dvs-idx = <3>; 121 122 s5m8767,pmic-buck-dvs-gpios = <&gpx2 3 GPIO_ACTIVE_HIGH>, 123 <&gpx2 4 GPIO_ACTIVE_HIGH>, 124 <&gpx2 5 GPIO_ACTIVE_HIGH>; 125 126 s5m8767,pmic-buck-ds-gpios = <&gpm3 5 GPIO_ACTIVE_HIGH>, 127 <&gpm3 6 GPIO_ACTIVE_HIGH>, 128 <&gpm3 7 GPIO_ACTIVE_HIGH>; 129 130 s5m8767,pmic-buck2-dvs-voltage = <1250000>, <1200000>, 131 <1200000>, <1200000>, 132 <1200000>, <1200000>, 133 <1200000>, <1200000>; 134 135 s5m8767,pmic-buck3-dvs-voltage = <1100000>, <1100000>, 136 <1100000>, <1100000>, 137 <1100000>, <1100000>, 138 <1100000>, <1100000>; 139 140 s5m8767,pmic-buck4-dvs-voltage = <1200000>, <1200000>, 141 <1200000>, <1200000>, 142 <1200000>, <1200000>, 143 <1200000>, <1200000>; 144 145 regulators { 146 ldo1_reg: LDO1 { 147 regulator-name = "VDD_ALIVE"; 148 regulator-min-microvolt = <1100000>; 149 regulator-max-microvolt = <1100000>; 150 regulator-always-on; 151 regulator-boot-on; 152 op_mode = <1>; /* Normal Mode */ 153 }; 154 155 ldo2_reg: LDO2 { 156 regulator-name = "VDDQ_M12"; 157 regulator-min-microvolt = <1200000>; 158 regulator-max-microvolt = <1200000>; 159 regulator-always-on; 160 op_mode = <1>; /* Normal Mode */ 161 }; 162 163 ldo3_reg: LDO3 { 164 regulator-name = "VDDIOAP_18"; 165 regulator-min-microvolt = <1800000>; 166 regulator-max-microvolt = <1800000>; 167 regulator-always-on; 168 op_mode = <1>; /* Normal Mode */ 169 }; 170 171 ldo4_reg: LDO4 { 172 regulator-name = "VDDQ_PRE"; 173 regulator-min-microvolt = <1800000>; 174 regulator-max-microvolt = <1800000>; 175 regulator-always-on; 176 op_mode = <1>; /* Normal Mode */ 177 }; 178 179 ldo5_reg: LDO5 { 180 regulator-name = "VDD18_2M"; 181 regulator-min-microvolt = <1800000>; 182 regulator-max-microvolt = <1800000>; 183 regulator-always-on; 184 op_mode = <1>; /* Normal Mode */ 185 }; 186 187 ldo6_reg: LDO6 { 188 regulator-name = "VDD10_MPLL"; 189 regulator-min-microvolt = <1000000>; 190 regulator-max-microvolt = <1000000>; 191 regulator-always-on; 192 op_mode = <1>; /* Normal Mode */ 193 }; 194 195 ldo7_reg: LDO7 { 196 regulator-name = "VDD10_XPLL"; 197 regulator-min-microvolt = <1000000>; 198 regulator-max-microvolt = <1000000>; 199 regulator-always-on; 200 op_mode = <1>; /* Normal Mode */ 201 }; 202 203 ldo8_reg: LDO8 { 204 regulator-name = "VDD10_MIPI"; 205 regulator-min-microvolt = <1000000>; 206 regulator-max-microvolt = <1000000>; 207 regulator-always-on; 208 op_mode = <1>; /* Normal Mode */ 209 }; 210 211 ldo9_reg: LDO9 { 212 regulator-name = "VDD33_LCD"; 213 regulator-min-microvolt = <3300000>; 214 regulator-max-microvolt = <3300000>; 215 regulator-always-on; 216 op_mode = <1>; /* Normal Mode */ 217 }; 218 219 ldo10_reg: LDO10 { 220 regulator-name = "VDD18_MIPI"; 221 regulator-min-microvolt = <1800000>; 222 regulator-max-microvolt = <1800000>; 223 regulator-always-on; 224 op_mode = <1>; /* Normal Mode */ 225 }; 226 227 ldo11_reg: LDO11 { 228 regulator-name = "VDD18_ABB1"; 229 regulator-min-microvolt = <1800000>; 230 regulator-max-microvolt = <1800000>; 231 regulator-always-on; 232 op_mode = <1>; /* Normal Mode */ 233 }; 234 235 ldo12_reg: LDO12 { 236 regulator-name = "VDD33_UOTG"; 237 regulator-min-microvolt = <3300000>; 238 regulator-max-microvolt = <3300000>; 239 regulator-always-on; 240 op_mode = <1>; /* Normal Mode */ 241 }; 242 243 ldo13_reg: LDO13 { 244 regulator-name = "VDDIOPERI_18"; 245 regulator-min-microvolt = <1800000>; 246 regulator-max-microvolt = <1800000>; 247 regulator-always-on; 248 op_mode = <1>; /* Normal Mode */ 249 }; 250 251 ldo14_reg: LDO14 { 252 regulator-name = "VDD18_ABB02"; 253 regulator-min-microvolt = <1800000>; 254 regulator-max-microvolt = <1800000>; 255 regulator-always-on; 256 op_mode = <1>; /* Normal Mode */ 257 }; 258 259 ldo15_reg: LDO15 { 260 regulator-name = "VDD10_USH"; 261 regulator-min-microvolt = <1000000>; 262 regulator-max-microvolt = <1000000>; 263 regulator-always-on; 264 op_mode = <1>; /* Normal Mode */ 265 }; 266 267 ldo16_reg: LDO16 { 268 regulator-name = "VDD18_HSIC"; 269 regulator-min-microvolt = <1800000>; 270 regulator-max-microvolt = <1800000>; 271 regulator-always-on; 272 op_mode = <1>; /* Normal Mode */ 273 }; 274 275 ldo17_reg: LDO17 { 276 regulator-name = "VDDIOAP_MMC012_28"; 277 regulator-min-microvolt = <2800000>; 278 regulator-max-microvolt = <2800000>; 279 regulator-always-on; 280 op_mode = <1>; /* Normal Mode */ 281 }; 282 283 ldo18_reg: LDO18 { 284 regulator-name = "VDDIOPERI_28"; 285 regulator-min-microvolt = <2800000>; 286 regulator-max-microvolt = <2800000>; 287 regulator-always-on; 288 op_mode = <1>; /* Normal Mode */ 289 }; 290 291 ldo19_reg: LDO19 { 292 regulator-name = "DVDD25"; 293 regulator-min-microvolt = <2500000>; 294 regulator-max-microvolt = <2500000>; 295 regulator-always-on; 296 op_mode = <1>; /* Normal Mode */ 297 }; 298 299 ldo20_reg: LDO20 { 300 regulator-name = "VDD28_CAM"; 301 regulator-min-microvolt = <2800000>; 302 regulator-max-microvolt = <2800000>; 303 regulator-always-on; 304 op_mode = <1>; /* Normal Mode */ 305 }; 306 307 ldo21_reg: LDO21 { 308 regulator-name = "VDD28_AF"; 309 regulator-min-microvolt = <2800000>; 310 regulator-max-microvolt = <2800000>; 311 regulator-always-on; 312 op_mode = <1>; /* Normal Mode */ 313 }; 314 315 ldo22_reg: LDO22 { 316 regulator-name = "VDDA28_2M"; 317 regulator-min-microvolt = <2800000>; 318 regulator-max-microvolt = <2800000>; 319 regulator-always-on; 320 op_mode = <1>; /* Normal Mode */ 321 }; 322 323 ldo23_reg: LDO23 { 324 regulator-name = "VDD28_TF"; 325 regulator-min-microvolt = <2800000>; 326 regulator-max-microvolt = <2800000>; 327 regulator-always-on; 328 op_mode = <1>; /* Normal Mode */ 329 }; 330 331 ldo24_reg: LDO24 { 332 regulator-name = "VDD33_A31"; 333 regulator-min-microvolt = <3300000>; 334 regulator-max-microvolt = <3300000>; 335 regulator-always-on; 336 op_mode = <1>; /* Normal Mode */ 337 }; 338 339 ldo25_reg: LDO25 { 340 regulator-name = "VDD18_CAM"; 341 regulator-min-microvolt = <1800000>; 342 regulator-max-microvolt = <1800000>; 343 regulator-always-on; 344 op_mode = <1>; /* Normal Mode */ 345 }; 346 347 ldo26_reg: LDO26 { 348 regulator-name = "VDD18_A31"; 349 regulator-min-microvolt = <1800000>; 350 regulator-max-microvolt = <1800000>; 351 regulator-always-on; 352 op_mode = <1>; /* Normal Mode */ 353 }; 354 355 ldo27_reg: LDO27 { 356 regulator-name = "GPS_1V8"; 357 regulator-min-microvolt = <1800000>; 358 regulator-max-microvolt = <1800000>; 359 regulator-always-on; 360 op_mode = <1>; /* Normal Mode */ 361 }; 362 363 ldo28_reg: LDO28 { 364 regulator-name = "DVDD12"; 365 regulator-min-microvolt = <1200000>; 366 regulator-max-microvolt = <1200000>; 367 regulator-always-on; 368 op_mode = <1>; /* Normal Mode */ 369 }; 370 371 buck1_reg: BUCK1 { 372 regulator-name = "vdd_mif"; 373 regulator-min-microvolt = <950000>; 374 regulator-max-microvolt = <1100000>; 375 regulator-always-on; 376 regulator-boot-on; 377 op_mode = <1>; /* Normal Mode */ 378 }; 379 380 buck2_reg: BUCK2 { 381 regulator-name = "vdd_arm"; 382 regulator-min-microvolt = <900000>; 383 regulator-max-microvolt = <1350000>; 384 regulator-always-on; 385 regulator-boot-on; 386 op_mode = <1>; /* Normal Mode */ 387 }; 388 389 buck3_reg: BUCK3 { 390 regulator-name = "vdd_int"; 391 regulator-min-microvolt = <900000>; 392 regulator-max-microvolt = <1200000>; 393 regulator-always-on; 394 regulator-boot-on; 395 op_mode = <1>; /* Normal Mode */ 396 }; 397 398 buck4_reg: BUCK4 { 399 regulator-name = "vdd_g3d"; 400 regulator-min-microvolt = <750000>; 401 regulator-max-microvolt = <1500000>; 402 regulator-always-on; 403 regulator-boot-on; 404 op_mode = <1>; /* Normal Mode */ 405 }; 406 407 buck5_reg: BUCK5 { 408 regulator-name = "vdd_m12"; 409 regulator-min-microvolt = <750000>; 410 regulator-max-microvolt = <1500000>; 411 regulator-always-on; 412 regulator-boot-on; 413 op_mode = <1>; /* Normal Mode */ 414 }; 415 416 buck6_reg: BUCK6 { 417 regulator-name = "vdd12_5m"; 418 regulator-min-microvolt = <750000>; 419 regulator-max-microvolt = <1500000>; 420 regulator-always-on; 421 regulator-boot-on; 422 op_mode = <1>; /* Normal Mode */ 423 }; 424 425 buck9_reg: BUCK9 { 426 regulator-name = "vddf28_emmc"; 427 regulator-min-microvolt = <750000>; 428 regulator-max-microvolt = <3000000>; 429 regulator-always-on; 430 regulator-boot-on; 431 op_mode = <1>; /* Normal Mode */ 432 }; 433 }; 434 }; 435}; 436 437&keypad { 438 samsung,keypad-num-rows = <3>; 439 samsung,keypad-num-columns = <2>; 440 linux,keypad-no-autorepeat; 441 wakeup-source; 442 pinctrl-0 = <&keypad_rows &keypad_cols>; 443 pinctrl-names = "default"; 444 status = "okay"; 445 446 key_home { 447 keypad,row = <0>; 448 keypad,column = <0>; 449 linux,code = <KEY_HOME>; 450 }; 451 452 key_down { 453 keypad,row = <0>; 454 keypad,column = <1>; 455 linux,code = <KEY_DOWN>; 456 }; 457 458 key_up { 459 keypad,row = <1>; 460 keypad,column = <0>; 461 linux,code = <KEY_UP>; 462 }; 463 464 key_menu { 465 keypad,row = <1>; 466 keypad,column = <1>; 467 linux,code = <KEY_MENU>; 468 }; 469 470 key_back { 471 keypad,row = <2>; 472 keypad,column = <0>; 473 linux,code = <KEY_BACK>; 474 }; 475 476 key_enter { 477 keypad,row = <2>; 478 keypad,column = <1>; 479 linux,code = <KEY_ENTER>; 480 }; 481}; 482 483&mshc_0 { 484 pinctrl-0 = <&sd4_clk &sd4_cmd &sd4_bus4 &sd4_bus8>; 485 pinctrl-names = "default"; 486 status = "okay"; 487 488 broken-cd; 489 card-detect-delay = <200>; 490 samsung,dw-mshc-ciu-div = <3>; 491 samsung,dw-mshc-sdr-timing = <2 3>; 492 samsung,dw-mshc-ddr-timing = <1 2>; 493 bus-width = <8>; 494 cap-mmc-highspeed; 495}; 496 497&pinctrl_1 { 498 keypad_rows: keypad-rows { 499 samsung,pins = "gpx2-0", "gpx2-1", "gpx2-2"; 500 samsung,pin-function = <EXYNOS_PIN_FUNC_3>; 501 samsung,pin-pud = <EXYNOS_PIN_PULL_UP>; 502 samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>; 503 }; 504 505 keypad_cols: keypad-cols { 506 samsung,pins = "gpx1-0", "gpx1-1"; 507 samsung,pin-function = <EXYNOS_PIN_FUNC_3>; 508 samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; 509 samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>; 510 }; 511}; 512 513&rtc { 514 status = "okay"; 515}; 516 517&sdhci_2 { 518 bus-width = <4>; 519 pinctrl-0 = <&sd2_clk &sd2_cmd &sd2_bus4 &sd2_cd>; 520 pinctrl-names = "default"; 521 vmmc-supply = <&mmc_reg>; 522 status = "okay"; 523}; 524 525&serial_0 { 526 status = "okay"; 527}; 528 529&serial_1 { 530 status = "okay"; 531}; 532 533&serial_2 { 534 status = "okay"; 535}; 536 537&serial_3 { 538 status = "okay"; 539}; 540