1/* 2 * SAMSUNG EXYNOS7 SoC device tree source 3 * 4 * Copyright (c) 2014 Samsung Electronics Co., Ltd. 5 * http://www.samsung.com 6 * 7 * This program is free software; you can redistribute it and/or modify 8 * it under the terms of the GNU General Public License version 2 as 9 * published by the Free Software Foundation. 10 */ 11 12#include <dt-bindings/clock/exynos7-clk.h> 13 14/ { 15 compatible = "samsung,exynos7"; 16 interrupt-parent = <&gic>; 17 #address-cells = <2>; 18 #size-cells = <2>; 19 20 aliases { 21 pinctrl0 = &pinctrl_alive; 22 pinctrl1 = &pinctrl_bus0; 23 pinctrl2 = &pinctrl_nfc; 24 pinctrl3 = &pinctrl_touch; 25 pinctrl4 = &pinctrl_ff; 26 pinctrl5 = &pinctrl_ese; 27 pinctrl6 = &pinctrl_fsys0; 28 pinctrl7 = &pinctrl_fsys1; 29 pinctrl8 = &pinctrl_bus1; 30 }; 31 32 cpus { 33 #address-cells = <1>; 34 #size-cells = <0>; 35 36 cpu@0 { 37 device_type = "cpu"; 38 compatible = "arm,cortex-a57", "arm,armv8"; 39 reg = <0x0>; 40 enable-method = "psci"; 41 }; 42 43 cpu@1 { 44 device_type = "cpu"; 45 compatible = "arm,cortex-a57", "arm,armv8"; 46 reg = <0x1>; 47 enable-method = "psci"; 48 }; 49 50 cpu@2 { 51 device_type = "cpu"; 52 compatible = "arm,cortex-a57", "arm,armv8"; 53 reg = <0x2>; 54 enable-method = "psci"; 55 }; 56 57 cpu@3 { 58 device_type = "cpu"; 59 compatible = "arm,cortex-a57", "arm,armv8"; 60 reg = <0x3>; 61 enable-method = "psci"; 62 }; 63 }; 64 65 psci { 66 compatible = "arm,psci-0.2"; 67 method = "smc"; 68 }; 69 70 soc: soc { 71 compatible = "simple-bus"; 72 #address-cells = <1>; 73 #size-cells = <1>; 74 ranges = <0 0 0 0x18000000>; 75 76 chipid@10000000 { 77 compatible = "samsung,exynos4210-chipid"; 78 reg = <0x10000000 0x100>; 79 }; 80 81 fin_pll: xxti { 82 compatible = "fixed-clock"; 83 clock-output-names = "fin_pll"; 84 #clock-cells = <0>; 85 }; 86 87 gic: interrupt-controller@11001000 { 88 compatible = "arm,gic-400"; 89 #interrupt-cells = <3>; 90 #address-cells = <0>; 91 interrupt-controller; 92 reg = <0x11001000 0x1000>, 93 <0x11002000 0x1000>, 94 <0x11004000 0x2000>, 95 <0x11006000 0x2000>; 96 }; 97 98 clock_topc: clock-controller@10570000 { 99 compatible = "samsung,exynos7-clock-topc"; 100 reg = <0x10570000 0x10000>; 101 #clock-cells = <1>; 102 }; 103 104 clock_top0: clock-controller@105d0000 { 105 compatible = "samsung,exynos7-clock-top0"; 106 reg = <0x105d0000 0xb000>; 107 #clock-cells = <1>; 108 clocks = <&fin_pll>, <&clock_topc DOUT_SCLK_BUS0_PLL>, 109 <&clock_topc DOUT_SCLK_BUS1_PLL>, 110 <&clock_topc DOUT_SCLK_CC_PLL>, 111 <&clock_topc DOUT_SCLK_MFC_PLL>; 112 clock-names = "fin_pll", "dout_sclk_bus0_pll", 113 "dout_sclk_bus1_pll", "dout_sclk_cc_pll", 114 "dout_sclk_mfc_pll"; 115 }; 116 117 clock_top1: clock-controller@105e0000 { 118 compatible = "samsung,exynos7-clock-top1"; 119 reg = <0x105e0000 0xb000>; 120 #clock-cells = <1>; 121 clocks = <&fin_pll>, <&clock_topc DOUT_SCLK_BUS0_PLL>, 122 <&clock_topc DOUT_SCLK_BUS1_PLL>, 123 <&clock_topc DOUT_SCLK_CC_PLL>, 124 <&clock_topc DOUT_SCLK_MFC_PLL>; 125 clock-names = "fin_pll", "dout_sclk_bus0_pll", 126 "dout_sclk_bus1_pll", "dout_sclk_cc_pll", 127 "dout_sclk_mfc_pll"; 128 }; 129 130 clock_ccore: clock-controller@105b0000 { 131 compatible = "samsung,exynos7-clock-ccore"; 132 reg = <0x105b0000 0xd00>; 133 #clock-cells = <1>; 134 clocks = <&fin_pll>, <&clock_topc DOUT_ACLK_CCORE_133>; 135 clock-names = "fin_pll", "dout_aclk_ccore_133"; 136 }; 137 138 clock_peric0: clock-controller@13610000 { 139 compatible = "samsung,exynos7-clock-peric0"; 140 reg = <0x13610000 0xd00>; 141 #clock-cells = <1>; 142 clocks = <&fin_pll>, <&clock_top0 DOUT_ACLK_PERIC0>, 143 <&clock_top0 CLK_SCLK_UART0>; 144 clock-names = "fin_pll", "dout_aclk_peric0_66", 145 "sclk_uart0"; 146 }; 147 148 clock_peric1: clock-controller@14c80000 { 149 compatible = "samsung,exynos7-clock-peric1"; 150 reg = <0x14c80000 0xd00>; 151 #clock-cells = <1>; 152 clocks = <&fin_pll>, <&clock_top0 DOUT_ACLK_PERIC1>, 153 <&clock_top0 CLK_SCLK_UART1>, 154 <&clock_top0 CLK_SCLK_UART2>, 155 <&clock_top0 CLK_SCLK_UART3>; 156 clock-names = "fin_pll", "dout_aclk_peric1_66", 157 "sclk_uart1", "sclk_uart2", "sclk_uart3"; 158 }; 159 160 clock_peris: clock-controller@10040000 { 161 compatible = "samsung,exynos7-clock-peris"; 162 reg = <0x10040000 0xd00>; 163 #clock-cells = <1>; 164 clocks = <&fin_pll>, <&clock_topc DOUT_ACLK_PERIS>; 165 clock-names = "fin_pll", "dout_aclk_peris_66"; 166 }; 167 168 clock_fsys0: clock-controller@10e90000 { 169 compatible = "samsung,exynos7-clock-fsys0"; 170 reg = <0x10e90000 0xd00>; 171 #clock-cells = <1>; 172 clocks = <&fin_pll>, <&clock_top1 DOUT_ACLK_FSYS0_200>, 173 <&clock_top1 DOUT_SCLK_MMC2>; 174 clock-names = "fin_pll", "dout_aclk_fsys0_200", 175 "dout_sclk_mmc2"; 176 }; 177 178 clock_fsys1: clock-controller@156e0000 { 179 compatible = "samsung,exynos7-clock-fsys1"; 180 reg = <0x156e0000 0xd00>; 181 #clock-cells = <1>; 182 clocks = <&fin_pll>, <&clock_top1 DOUT_ACLK_FSYS1_200>, 183 <&clock_top1 DOUT_SCLK_MMC0>, 184 <&clock_top1 DOUT_SCLK_MMC1>; 185 clock-names = "fin_pll", "dout_aclk_fsys1_200", 186 "dout_sclk_mmc0", "dout_sclk_mmc1"; 187 }; 188 189 serial_0: serial@13630000 { 190 compatible = "samsung,exynos4210-uart"; 191 reg = <0x13630000 0x100>; 192 interrupts = <0 440 0>; 193 clocks = <&clock_peric0 PCLK_UART0>, 194 <&clock_peric0 SCLK_UART0>; 195 clock-names = "uart", "clk_uart_baud0"; 196 status = "disabled"; 197 }; 198 199 serial_1: serial@14c20000 { 200 compatible = "samsung,exynos4210-uart"; 201 reg = <0x14c20000 0x100>; 202 interrupts = <0 456 0>; 203 clocks = <&clock_peric1 PCLK_UART1>, 204 <&clock_peric1 SCLK_UART1>; 205 clock-names = "uart", "clk_uart_baud0"; 206 status = "disabled"; 207 }; 208 209 serial_2: serial@14c30000 { 210 compatible = "samsung,exynos4210-uart"; 211 reg = <0x14c30000 0x100>; 212 interrupts = <0 457 0>; 213 clocks = <&clock_peric1 PCLK_UART2>, 214 <&clock_peric1 SCLK_UART2>; 215 clock-names = "uart", "clk_uart_baud0"; 216 status = "disabled"; 217 }; 218 219 serial_3: serial@14c40000 { 220 compatible = "samsung,exynos4210-uart"; 221 reg = <0x14c40000 0x100>; 222 interrupts = <0 458 0>; 223 clocks = <&clock_peric1 PCLK_UART3>, 224 <&clock_peric1 SCLK_UART3>; 225 clock-names = "uart", "clk_uart_baud0"; 226 status = "disabled"; 227 }; 228 229 pinctrl_alive: pinctrl@10580000 { 230 compatible = "samsung,exynos7-pinctrl"; 231 reg = <0x10580000 0x1000>; 232 233 wakeup-interrupt-controller { 234 compatible = "samsung,exynos7-wakeup-eint"; 235 interrupt-parent = <&gic>; 236 interrupts = <0 16 0>; 237 }; 238 }; 239 240 pinctrl_bus0: pinctrl@13470000 { 241 compatible = "samsung,exynos7-pinctrl"; 242 reg = <0x13470000 0x1000>; 243 interrupts = <0 383 0>; 244 }; 245 246 pinctrl_nfc: pinctrl@14cd0000 { 247 compatible = "samsung,exynos7-pinctrl"; 248 reg = <0x14cd0000 0x1000>; 249 interrupts = <0 473 0>; 250 }; 251 252 pinctrl_touch: pinctrl@14ce0000 { 253 compatible = "samsung,exynos7-pinctrl"; 254 reg = <0x14ce0000 0x1000>; 255 interrupts = <0 474 0>; 256 }; 257 258 pinctrl_ff: pinctrl@14c90000 { 259 compatible = "samsung,exynos7-pinctrl"; 260 reg = <0x14c90000 0x1000>; 261 interrupts = <0 475 0>; 262 }; 263 264 pinctrl_ese: pinctrl@14ca0000 { 265 compatible = "samsung,exynos7-pinctrl"; 266 reg = <0x14ca0000 0x1000>; 267 interrupts = <0 476 0>; 268 }; 269 270 pinctrl_fsys0: pinctrl@10e60000 { 271 compatible = "samsung,exynos7-pinctrl"; 272 reg = <0x10e60000 0x1000>; 273 interrupts = <0 221 0>; 274 }; 275 276 pinctrl_fsys1: pinctrl@15690000 { 277 compatible = "samsung,exynos7-pinctrl"; 278 reg = <0x15690000 0x1000>; 279 interrupts = <0 203 0>; 280 }; 281 282 pinctrl_bus1: pinctrl@14870000 { 283 compatible = "samsung,exynos7-pinctrl"; 284 reg = <0x14870000 0x1000>; 285 interrupts = <0 384 0>; 286 }; 287 288 hsi2c_0: hsi2c@13640000 { 289 compatible = "samsung,exynos7-hsi2c"; 290 reg = <0x13640000 0x1000>; 291 interrupts = <0 441 0>; 292 #address-cells = <1>; 293 #size-cells = <0>; 294 pinctrl-names = "default"; 295 pinctrl-0 = <&hs_i2c0_bus>; 296 clocks = <&clock_peric0 PCLK_HSI2C0>; 297 clock-names = "hsi2c"; 298 status = "disabled"; 299 }; 300 301 hsi2c_1: hsi2c@13650000 { 302 compatible = "samsung,exynos7-hsi2c"; 303 reg = <0x13650000 0x1000>; 304 interrupts = <0 442 0>; 305 #address-cells = <1>; 306 #size-cells = <0>; 307 pinctrl-names = "default"; 308 pinctrl-0 = <&hs_i2c1_bus>; 309 clocks = <&clock_peric0 PCLK_HSI2C1>; 310 clock-names = "hsi2c"; 311 status = "disabled"; 312 }; 313 314 hsi2c_2: hsi2c@14e60000 { 315 compatible = "samsung,exynos7-hsi2c"; 316 reg = <0x14e60000 0x1000>; 317 interrupts = <0 459 0>; 318 #address-cells = <1>; 319 #size-cells = <0>; 320 pinctrl-names = "default"; 321 pinctrl-0 = <&hs_i2c2_bus>; 322 clocks = <&clock_peric1 PCLK_HSI2C2>; 323 clock-names = "hsi2c"; 324 status = "disabled"; 325 }; 326 327 hsi2c_3: hsi2c@14e70000 { 328 compatible = "samsung,exynos7-hsi2c"; 329 reg = <0x14e70000 0x1000>; 330 interrupts = <0 460 0>; 331 #address-cells = <1>; 332 #size-cells = <0>; 333 pinctrl-names = "default"; 334 pinctrl-0 = <&hs_i2c3_bus>; 335 clocks = <&clock_peric1 PCLK_HSI2C3>; 336 clock-names = "hsi2c"; 337 status = "disabled"; 338 }; 339 340 hsi2c_4: hsi2c@13660000 { 341 compatible = "samsung,exynos7-hsi2c"; 342 reg = <0x13660000 0x1000>; 343 interrupts = <0 443 0>; 344 #address-cells = <1>; 345 #size-cells = <0>; 346 pinctrl-names = "default"; 347 pinctrl-0 = <&hs_i2c4_bus>; 348 clocks = <&clock_peric0 PCLK_HSI2C4>; 349 clock-names = "hsi2c"; 350 status = "disabled"; 351 }; 352 353 hsi2c_5: hsi2c@13670000 { 354 compatible = "samsung,exynos7-hsi2c"; 355 reg = <0x13670000 0x1000>; 356 interrupts = <0 444 0>; 357 #address-cells = <1>; 358 #size-cells = <0>; 359 pinctrl-names = "default"; 360 pinctrl-0 = <&hs_i2c5_bus>; 361 clocks = <&clock_peric0 PCLK_HSI2C5>; 362 clock-names = "hsi2c"; 363 status = "disabled"; 364 }; 365 366 hsi2c_6: hsi2c@14e00000 { 367 compatible = "samsung,exynos7-hsi2c"; 368 reg = <0x14e00000 0x1000>; 369 interrupts = <0 461 0>; 370 #address-cells = <1>; 371 #size-cells = <0>; 372 pinctrl-names = "default"; 373 pinctrl-0 = <&hs_i2c6_bus>; 374 clocks = <&clock_peric1 PCLK_HSI2C6>; 375 clock-names = "hsi2c"; 376 status = "disabled"; 377 }; 378 379 hsi2c_7: hsi2c@13e10000 { 380 compatible = "samsung,exynos7-hsi2c"; 381 reg = <0x13e10000 0x1000>; 382 interrupts = <0 462 0>; 383 #address-cells = <1>; 384 #size-cells = <0>; 385 pinctrl-names = "default"; 386 pinctrl-0 = <&hs_i2c7_bus>; 387 clocks = <&clock_peric1 PCLK_HSI2C7>; 388 clock-names = "hsi2c"; 389 status = "disabled"; 390 }; 391 392 hsi2c_8: hsi2c@14e20000 { 393 compatible = "samsung,exynos7-hsi2c"; 394 reg = <0x14e20000 0x1000>; 395 interrupts = <0 463 0>; 396 #address-cells = <1>; 397 #size-cells = <0>; 398 pinctrl-names = "default"; 399 pinctrl-0 = <&hs_i2c8_bus>; 400 clocks = <&clock_peric1 PCLK_HSI2C8>; 401 clock-names = "hsi2c"; 402 status = "disabled"; 403 }; 404 405 hsi2c_9: hsi2c@13680000 { 406 compatible = "samsung,exynos7-hsi2c"; 407 reg = <0x13680000 0x1000>; 408 interrupts = <0 445 0>; 409 #address-cells = <1>; 410 #size-cells = <0>; 411 pinctrl-names = "default"; 412 pinctrl-0 = <&hs_i2c9_bus>; 413 clocks = <&clock_peric0 PCLK_HSI2C9>; 414 clock-names = "hsi2c"; 415 status = "disabled"; 416 }; 417 418 hsi2c_10: hsi2c@13690000 { 419 compatible = "samsung,exynos7-hsi2c"; 420 reg = <0x13690000 0x1000>; 421 interrupts = <0 446 0>; 422 #address-cells = <1>; 423 #size-cells = <0>; 424 pinctrl-names = "default"; 425 pinctrl-0 = <&hs_i2c10_bus>; 426 clocks = <&clock_peric0 PCLK_HSI2C10>; 427 clock-names = "hsi2c"; 428 status = "disabled"; 429 }; 430 431 hsi2c_11: hsi2c@136a0000 { 432 compatible = "samsung,exynos7-hsi2c"; 433 reg = <0x136a0000 0x1000>; 434 interrupts = <0 447 0>; 435 #address-cells = <1>; 436 #size-cells = <0>; 437 pinctrl-names = "default"; 438 pinctrl-0 = <&hs_i2c11_bus>; 439 clocks = <&clock_peric0 PCLK_HSI2C11>; 440 clock-names = "hsi2c"; 441 status = "disabled"; 442 }; 443 444 timer { 445 compatible = "arm,armv8-timer"; 446 interrupts = <1 13 0xff01>, 447 <1 14 0xff01>, 448 <1 11 0xff01>, 449 <1 10 0xff01>; 450 }; 451 452 pmu_system_controller: system-controller@105c0000 { 453 compatible = "samsung,exynos7-pmu", "syscon"; 454 reg = <0x105c0000 0x5000>; 455 }; 456 457 rtc: rtc@10590000 { 458 compatible = "samsung,s3c6410-rtc"; 459 reg = <0x10590000 0x100>; 460 interrupts = <0 355 0>, <0 356 0>; 461 clocks = <&clock_ccore PCLK_RTC>; 462 clock-names = "rtc"; 463 status = "disabled"; 464 }; 465 466 watchdog: watchdog@101d0000 { 467 compatible = "samsung,exynos7-wdt"; 468 reg = <0x101d0000 0x100>; 469 interrupts = <0 110 0>; 470 clocks = <&clock_peris PCLK_WDT>; 471 clock-names = "watchdog"; 472 samsung,syscon-phandle = <&pmu_system_controller>; 473 status = "disabled"; 474 }; 475 476 mmc_0: mmc@15740000 { 477 compatible = "samsung,exynos7-dw-mshc-smu"; 478 interrupts = <0 201 0>; 479 #address-cells = <1>; 480 #size-cells = <0>; 481 reg = <0x15740000 0x2000>; 482 clocks = <&clock_fsys1 ACLK_MMC0>, 483 <&clock_top1 CLK_SCLK_MMC0>; 484 clock-names = "biu", "ciu"; 485 fifo-depth = <0x40>; 486 status = "disabled"; 487 }; 488 489 mmc_1: mmc@15750000 { 490 compatible = "samsung,exynos7-dw-mshc"; 491 interrupts = <0 202 0>; 492 #address-cells = <1>; 493 #size-cells = <0>; 494 reg = <0x15750000 0x2000>; 495 clocks = <&clock_fsys1 ACLK_MMC1>, 496 <&clock_top1 CLK_SCLK_MMC1>; 497 clock-names = "biu", "ciu"; 498 fifo-depth = <0x40>; 499 status = "disabled"; 500 }; 501 502 mmc_2: mmc@15560000 { 503 compatible = "samsung,exynos7-dw-mshc-smu"; 504 interrupts = <0 216 0>; 505 #address-cells = <1>; 506 #size-cells = <0>; 507 reg = <0x15560000 0x2000>; 508 clocks = <&clock_fsys0 ACLK_MMC2>, 509 <&clock_top1 CLK_SCLK_MMC2>; 510 clock-names = "biu", "ciu"; 511 fifo-depth = <0x40>; 512 status = "disabled"; 513 }; 514 515 adc: adc@13620000 { 516 compatible = "samsung,exynos7-adc"; 517 reg = <0x13620000 0x100>; 518 interrupts = <0 448 0>; 519 clocks = <&clock_peric0 PCLK_ADCIF>; 520 clock-names = "adc"; 521 #io-channel-cells = <1>; 522 io-channel-ranges; 523 status = "disabled"; 524 }; 525 526 pwm: pwm@136c0000 { 527 compatible = "samsung,exynos4210-pwm"; 528 reg = <0x136c0000 0x100>; 529 samsung,pwm-outputs = <0>, <1>, <2>, <3>; 530 #pwm-cells = <3>; 531 clocks = <&clock_peric0 PCLK_PWM>; 532 clock-names = "timers"; 533 }; 534 }; 535}; 536 537#include "exynos7-pinctrl.dtsi" 538