.. | .. |
---|
1 | 1 | // SPDX-License-Identifier: GPL-2.0 |
---|
2 | 2 | /* |
---|
3 | | - * SAMSUNG EXYNOS7 SoC device tree source |
---|
| 3 | + * Samsung Exynos7 SoC device tree source |
---|
4 | 4 | * |
---|
5 | 5 | * Copyright (c) 2014 Samsung Electronics Co., Ltd. |
---|
6 | 6 | * http://www.samsung.com |
---|
.. | .. |
---|
28 | 28 | tmuctrl0 = &tmuctrl_0; |
---|
29 | 29 | }; |
---|
30 | 30 | |
---|
| 31 | + arm-pmu { |
---|
| 32 | + compatible = "arm,cortex-a57-pmu"; |
---|
| 33 | + interrupts = <GIC_SPI 56 IRQ_TYPE_LEVEL_HIGH>, |
---|
| 34 | + <GIC_SPI 57 IRQ_TYPE_LEVEL_HIGH>, |
---|
| 35 | + <GIC_SPI 58 IRQ_TYPE_LEVEL_HIGH>, |
---|
| 36 | + <GIC_SPI 59 IRQ_TYPE_LEVEL_HIGH>; |
---|
| 37 | + interrupt-affinity = <&cpu_atlas0>, <&cpu_atlas1>, |
---|
| 38 | + <&cpu_atlas2>, <&cpu_atlas3>; |
---|
| 39 | + }; |
---|
| 40 | + |
---|
| 41 | + fin_pll: clock { |
---|
| 42 | + /* XXTI */ |
---|
| 43 | + compatible = "fixed-clock"; |
---|
| 44 | + clock-output-names = "fin_pll"; |
---|
| 45 | + #clock-cells = <0>; |
---|
| 46 | + }; |
---|
| 47 | + |
---|
31 | 48 | cpus { |
---|
32 | 49 | #address-cells = <1>; |
---|
33 | 50 | #size-cells = <0>; |
---|
34 | 51 | |
---|
35 | 52 | cpu_atlas0: cpu@0 { |
---|
36 | 53 | device_type = "cpu"; |
---|
37 | | - compatible = "arm,cortex-a57", "arm,armv8"; |
---|
| 54 | + compatible = "arm,cortex-a57"; |
---|
38 | 55 | reg = <0x0>; |
---|
39 | 56 | enable-method = "psci"; |
---|
40 | 57 | }; |
---|
41 | 58 | |
---|
42 | 59 | cpu_atlas1: cpu@1 { |
---|
43 | 60 | device_type = "cpu"; |
---|
44 | | - compatible = "arm,cortex-a57", "arm,armv8"; |
---|
| 61 | + compatible = "arm,cortex-a57"; |
---|
45 | 62 | reg = <0x1>; |
---|
46 | 63 | enable-method = "psci"; |
---|
47 | 64 | }; |
---|
48 | 65 | |
---|
49 | 66 | cpu_atlas2: cpu@2 { |
---|
50 | 67 | device_type = "cpu"; |
---|
51 | | - compatible = "arm,cortex-a57", "arm,armv8"; |
---|
| 68 | + compatible = "arm,cortex-a57"; |
---|
52 | 69 | reg = <0x2>; |
---|
53 | 70 | enable-method = "psci"; |
---|
54 | 71 | }; |
---|
55 | 72 | |
---|
56 | 73 | cpu_atlas3: cpu@3 { |
---|
57 | 74 | device_type = "cpu"; |
---|
58 | | - compatible = "arm,cortex-a57", "arm,armv8"; |
---|
| 75 | + compatible = "arm,cortex-a57"; |
---|
59 | 76 | reg = <0x3>; |
---|
60 | 77 | enable-method = "psci"; |
---|
61 | 78 | }; |
---|
.. | .. |
---|
68 | 85 | cpu_on = <0xC4000003>; |
---|
69 | 86 | }; |
---|
70 | 87 | |
---|
71 | | - soc: soc { |
---|
| 88 | + soc: soc@0 { |
---|
72 | 89 | compatible = "simple-bus"; |
---|
73 | 90 | #address-cells = <1>; |
---|
74 | 91 | #size-cells = <1>; |
---|
.. | .. |
---|
77 | 94 | chipid@10000000 { |
---|
78 | 95 | compatible = "samsung,exynos4210-chipid"; |
---|
79 | 96 | reg = <0x10000000 0x100>; |
---|
80 | | - }; |
---|
81 | | - |
---|
82 | | - fin_pll: xxti { |
---|
83 | | - compatible = "fixed-clock"; |
---|
84 | | - clock-output-names = "fin_pll"; |
---|
85 | | - #clock-cells = <0>; |
---|
86 | 97 | }; |
---|
87 | 98 | |
---|
88 | 99 | gic: interrupt-controller@11001000 { |
---|
.. | .. |
---|
96 | 107 | <0x11006000 0x2000>; |
---|
97 | 108 | }; |
---|
98 | 109 | |
---|
99 | | - amba { |
---|
100 | | - compatible = "simple-bus"; |
---|
101 | | - #address-cells = <1>; |
---|
102 | | - #size-cells = <1>; |
---|
103 | | - ranges; |
---|
| 110 | + pdma0: pdma@10e10000 { |
---|
| 111 | + compatible = "arm,pl330", "arm,primecell"; |
---|
| 112 | + reg = <0x10E10000 0x1000>; |
---|
| 113 | + interrupts = <GIC_SPI 225 IRQ_TYPE_LEVEL_HIGH>; |
---|
| 114 | + clocks = <&clock_fsys0 ACLK_PDMA0>; |
---|
| 115 | + clock-names = "apb_pclk"; |
---|
| 116 | + #dma-cells = <1>; |
---|
| 117 | + #dma-channels = <8>; |
---|
| 118 | + #dma-requests = <32>; |
---|
| 119 | + }; |
---|
104 | 120 | |
---|
105 | | - pdma0: pdma@10e10000 { |
---|
106 | | - compatible = "arm,pl330", "arm,primecell"; |
---|
107 | | - reg = <0x10E10000 0x1000>; |
---|
108 | | - interrupts = <GIC_SPI 225 IRQ_TYPE_LEVEL_HIGH>; |
---|
109 | | - clocks = <&clock_fsys0 ACLK_PDMA0>; |
---|
110 | | - clock-names = "apb_pclk"; |
---|
111 | | - #dma-cells = <1>; |
---|
112 | | - #dma-channels = <8>; |
---|
113 | | - #dma-requests = <32>; |
---|
114 | | - }; |
---|
115 | | - |
---|
116 | | - pdma1: pdma@10eb0000 { |
---|
117 | | - compatible = "arm,pl330", "arm,primecell"; |
---|
118 | | - reg = <0x10EB0000 0x1000>; |
---|
119 | | - interrupts = <GIC_SPI 226 IRQ_TYPE_LEVEL_HIGH>; |
---|
120 | | - clocks = <&clock_fsys0 ACLK_PDMA1>; |
---|
121 | | - clock-names = "apb_pclk"; |
---|
122 | | - #dma-cells = <1>; |
---|
123 | | - #dma-channels = <8>; |
---|
124 | | - #dma-requests = <32>; |
---|
125 | | - }; |
---|
| 121 | + pdma1: pdma@10eb0000 { |
---|
| 122 | + compatible = "arm,pl330", "arm,primecell"; |
---|
| 123 | + reg = <0x10EB0000 0x1000>; |
---|
| 124 | + interrupts = <GIC_SPI 226 IRQ_TYPE_LEVEL_HIGH>; |
---|
| 125 | + clocks = <&clock_fsys0 ACLK_PDMA1>; |
---|
| 126 | + clock-names = "apb_pclk"; |
---|
| 127 | + #dma-cells = <1>; |
---|
| 128 | + #dma-channels = <8>; |
---|
| 129 | + #dma-requests = <32>; |
---|
126 | 130 | }; |
---|
127 | 131 | |
---|
128 | 132 | clock_topc: clock-controller@10570000 { |
---|
.. | .. |
---|
211 | 215 | #clock-cells = <1>; |
---|
212 | 216 | clocks = <&fin_pll>, <&clock_top1 DOUT_ACLK_FSYS1_200>, |
---|
213 | 217 | <&clock_top1 DOUT_SCLK_MMC0>, |
---|
214 | | - <&clock_top1 DOUT_SCLK_MMC1>; |
---|
| 218 | + <&clock_top1 DOUT_SCLK_MMC1>, |
---|
| 219 | + <&clock_top1 DOUT_SCLK_UFSUNIPRO20>, |
---|
| 220 | + <&clock_top1 DOUT_SCLK_PHY_FSYS1>, |
---|
| 221 | + <&clock_top1 DOUT_SCLK_PHY_FSYS1_26M>; |
---|
215 | 222 | clock-names = "fin_pll", "dout_aclk_fsys1_200", |
---|
216 | | - "dout_sclk_mmc0", "dout_sclk_mmc1"; |
---|
| 223 | + "dout_sclk_mmc0", "dout_sclk_mmc1", |
---|
| 224 | + "dout_sclk_ufsunipro20", "dout_sclk_phy_fsys1", |
---|
| 225 | + "dout_sclk_phy_fsys1_26m"; |
---|
217 | 226 | }; |
---|
218 | 227 | |
---|
219 | 228 | serial_0: serial@13630000 { |
---|
.. | .. |
---|
471 | 480 | status = "disabled"; |
---|
472 | 481 | }; |
---|
473 | 482 | |
---|
474 | | - arm-pmu { |
---|
475 | | - compatible = "arm,cortex-a57-pmu", "arm,armv8-pmuv3"; |
---|
476 | | - interrupts = <GIC_SPI 56 IRQ_TYPE_LEVEL_HIGH>, |
---|
477 | | - <GIC_SPI 57 IRQ_TYPE_LEVEL_HIGH>, |
---|
478 | | - <GIC_SPI 58 IRQ_TYPE_LEVEL_HIGH>, |
---|
479 | | - <GIC_SPI 59 IRQ_TYPE_LEVEL_HIGH>; |
---|
480 | | - interrupt-affinity = <&cpu_atlas0>, <&cpu_atlas1>, |
---|
481 | | - <&cpu_atlas2>, <&cpu_atlas3>; |
---|
482 | | - }; |
---|
483 | | - |
---|
484 | | - timer { |
---|
485 | | - compatible = "arm,armv8-timer"; |
---|
486 | | - interrupts = <GIC_PPI 13 |
---|
487 | | - (GIC_CPU_MASK_SIMPLE(8) | IRQ_TYPE_LEVEL_LOW)>, |
---|
488 | | - <GIC_PPI 14 |
---|
489 | | - (GIC_CPU_MASK_SIMPLE(8) | IRQ_TYPE_LEVEL_LOW)>, |
---|
490 | | - <GIC_PPI 11 |
---|
491 | | - (GIC_CPU_MASK_SIMPLE(8) | IRQ_TYPE_LEVEL_LOW)>, |
---|
492 | | - <GIC_PPI 10 |
---|
493 | | - (GIC_CPU_MASK_SIMPLE(8) | IRQ_TYPE_LEVEL_LOW)>; |
---|
494 | | - }; |
---|
495 | | - |
---|
496 | 483 | pmu_system_controller: system-controller@105c0000 { |
---|
497 | 484 | compatible = "samsung,exynos7-pmu", "syscon"; |
---|
498 | 485 | reg = <0x105c0000 0x5000>; |
---|
.. | .. |
---|
516 | 503 | clock-names = "watchdog"; |
---|
517 | 504 | samsung,syscon-phandle = <&pmu_system_controller>; |
---|
518 | 505 | status = "disabled"; |
---|
| 506 | + }; |
---|
| 507 | + |
---|
| 508 | + gpu: gpu@14ac0000 { |
---|
| 509 | + compatible = "samsung,exynos5433-mali", "arm,mali-t760"; |
---|
| 510 | + reg = <0x14ac0000 0x5000>; |
---|
| 511 | + interrupts = <GIC_SPI 241 IRQ_TYPE_LEVEL_HIGH>, |
---|
| 512 | + <GIC_SPI 242 IRQ_TYPE_LEVEL_HIGH>, |
---|
| 513 | + <GIC_SPI 240 IRQ_TYPE_LEVEL_HIGH>; |
---|
| 514 | + interrupt-names = "job", "mmu", "gpu"; |
---|
| 515 | + status = "disabled"; |
---|
| 516 | + /* TODO: operating points for DVFS, cooling device */ |
---|
519 | 517 | }; |
---|
520 | 518 | |
---|
521 | 519 | mmc_0: mmc@15740000 { |
---|
.. | .. |
---|
571 | 569 | pwm: pwm@136c0000 { |
---|
572 | 570 | compatible = "samsung,exynos4210-pwm"; |
---|
573 | 571 | reg = <0x136c0000 0x100>; |
---|
| 572 | + interrupts = <GIC_SPI 449 IRQ_TYPE_LEVEL_HIGH>, |
---|
| 573 | + <GIC_SPI 450 IRQ_TYPE_LEVEL_HIGH>, |
---|
| 574 | + <GIC_SPI 451 IRQ_TYPE_LEVEL_HIGH>, |
---|
| 575 | + <GIC_SPI 452 IRQ_TYPE_LEVEL_HIGH>, |
---|
| 576 | + <GIC_SPI 453 IRQ_TYPE_LEVEL_HIGH>; |
---|
574 | 577 | samsung,pwm-outputs = <0>, <1>, <2>, <3>; |
---|
575 | 578 | #pwm-cells = <3>; |
---|
576 | 579 | clocks = <&clock_peric0 PCLK_PWM>; |
---|
.. | .. |
---|
587 | 590 | #thermal-sensor-cells = <0>; |
---|
588 | 591 | }; |
---|
589 | 592 | |
---|
590 | | - thermal-zones { |
---|
591 | | - atlas_thermal: cluster0-thermal { |
---|
592 | | - polling-delay-passive = <0>; /* milliseconds */ |
---|
593 | | - polling-delay = <0>; /* milliseconds */ |
---|
594 | | - thermal-sensors = <&tmuctrl_0>; |
---|
595 | | - #include "exynos7-trip-points.dtsi" |
---|
596 | | - }; |
---|
| 593 | + ufs: ufs@15570000 { |
---|
| 594 | + compatible = "samsung,exynos7-ufs"; |
---|
| 595 | + reg = <0x15570000 0x100>, /* 0: HCI standard */ |
---|
| 596 | + <0x15570100 0x100>, /* 1: Vendor specificed */ |
---|
| 597 | + <0x15571000 0x200>, /* 2: UNIPRO */ |
---|
| 598 | + <0x15572000 0x300>; /* 3: UFS protector */ |
---|
| 599 | + reg-names = "hci", "vs_hci", "unipro", "ufsp"; |
---|
| 600 | + interrupts = <GIC_SPI 200 IRQ_TYPE_LEVEL_HIGH>; |
---|
| 601 | + clocks = <&clock_fsys1 ACLK_UFS20_LINK>, |
---|
| 602 | + <&clock_fsys1 SCLK_UFSUNIPRO20_USER>; |
---|
| 603 | + clock-names = "core_clk", "sclk_unipro_main"; |
---|
| 604 | + freq-table-hz = <0 0>, <0 0>; |
---|
| 605 | + pinctrl-names = "default"; |
---|
| 606 | + pinctrl-0 = <&ufs_rst_n &ufs_refclk_out>; |
---|
| 607 | + phys = <&ufs_phy>; |
---|
| 608 | + phy-names = "ufs-phy"; |
---|
| 609 | + status = "disabled"; |
---|
| 610 | + }; |
---|
| 611 | + |
---|
| 612 | + ufs_phy: ufs-phy@15571800 { |
---|
| 613 | + compatible = "samsung,exynos7-ufs-phy"; |
---|
| 614 | + reg = <0x15571800 0x240>; |
---|
| 615 | + reg-names = "phy-pma"; |
---|
| 616 | + samsung,pmu-syscon = <&pmu_system_controller>; |
---|
| 617 | + #phy-cells = <0>; |
---|
| 618 | + clocks = <&clock_fsys1 SCLK_COMBO_PHY_EMBEDDED_26M>, |
---|
| 619 | + <&clock_fsys1 PHYCLK_UFS20_RX1_SYMBOL_USER>, |
---|
| 620 | + <&clock_fsys1 PHYCLK_UFS20_RX0_SYMBOL_USER>, |
---|
| 621 | + <&clock_fsys1 PHYCLK_UFS20_TX0_SYMBOL_USER>; |
---|
| 622 | + clock-names = "ref_clk", "rx1_symbol_clk", |
---|
| 623 | + "rx0_symbol_clk", |
---|
| 624 | + "tx0_symbol_clk"; |
---|
597 | 625 | }; |
---|
598 | 626 | |
---|
599 | 627 | usbdrd_phy: phy@15500000 { |
---|
.. | .. |
---|
630 | 658 | }; |
---|
631 | 659 | }; |
---|
632 | 660 | }; |
---|
| 661 | + |
---|
| 662 | + thermal-zones { |
---|
| 663 | + atlas_thermal: cluster0-thermal { |
---|
| 664 | + polling-delay-passive = <0>; /* milliseconds */ |
---|
| 665 | + polling-delay = <0>; /* milliseconds */ |
---|
| 666 | + thermal-sensors = <&tmuctrl_0>; |
---|
| 667 | + #include "exynos7-trip-points.dtsi" |
---|
| 668 | + }; |
---|
| 669 | + }; |
---|
| 670 | + |
---|
| 671 | + timer { |
---|
| 672 | + compatible = "arm,armv8-timer"; |
---|
| 673 | + interrupts = <GIC_PPI 13 |
---|
| 674 | + (GIC_CPU_MASK_SIMPLE(8) | IRQ_TYPE_LEVEL_LOW)>, |
---|
| 675 | + <GIC_PPI 14 |
---|
| 676 | + (GIC_CPU_MASK_SIMPLE(8) | IRQ_TYPE_LEVEL_LOW)>, |
---|
| 677 | + <GIC_PPI 11 |
---|
| 678 | + (GIC_CPU_MASK_SIMPLE(8) | IRQ_TYPE_LEVEL_LOW)>, |
---|
| 679 | + <GIC_PPI 10 |
---|
| 680 | + (GIC_CPU_MASK_SIMPLE(8) | IRQ_TYPE_LEVEL_LOW)>; |
---|
| 681 | + }; |
---|
633 | 682 | }; |
---|
634 | 683 | |
---|
635 | 684 | #include "exynos7-pinctrl.dtsi" |
---|