| .. | .. |
|---|
| 6 | 6 | #include <dt-bindings/interrupt-controller/arm-gic.h> |
|---|
| 7 | 7 | #include <dt-bindings/reset/tegra124-car.h> |
|---|
| 8 | 8 | #include <dt-bindings/thermal/tegra124-soctherm.h> |
|---|
| 9 | +#include <dt-bindings/soc/tegra-pmc.h> |
|---|
| 9 | 10 | |
|---|
| 10 | 11 | / { |
|---|
| 11 | 12 | compatible = "nvidia,tegra124"; |
|---|
| .. | .. |
|---|
| 21 | 22 | pcie@1003000 { |
|---|
| 22 | 23 | compatible = "nvidia,tegra124-pcie"; |
|---|
| 23 | 24 | device_type = "pci"; |
|---|
| 24 | | - reg = <0x0 0x01003000 0x0 0x00000800 /* PADS registers */ |
|---|
| 25 | | - 0x0 0x01003800 0x0 0x00000800 /* AFI registers */ |
|---|
| 26 | | - 0x0 0x02000000 0x0 0x10000000>; /* configuration space */ |
|---|
| 25 | + reg = <0x0 0x01003000 0x0 0x00000800>, /* PADS registers */ |
|---|
| 26 | + <0x0 0x01003800 0x0 0x00000800>, /* AFI registers */ |
|---|
| 27 | + <0x0 0x02000000 0x0 0x10000000>; /* configuration space */ |
|---|
| 27 | 28 | reg-names = "pads", "afi", "cs"; |
|---|
| 28 | 29 | interrupts = <GIC_SPI 98 IRQ_TYPE_LEVEL_HIGH>, /* controller interrupt */ |
|---|
| 29 | 30 | <GIC_SPI 99 IRQ_TYPE_LEVEL_HIGH>; /* MSI interrupt */ |
|---|
| .. | .. |
|---|
| 37 | 38 | #address-cells = <3>; |
|---|
| 38 | 39 | #size-cells = <2>; |
|---|
| 39 | 40 | |
|---|
| 40 | | - ranges = <0x82000000 0 0x01000000 0x0 0x01000000 0 0x00001000 /* port 0 configuration space */ |
|---|
| 41 | | - 0x82000000 0 0x01001000 0x0 0x01001000 0 0x00001000 /* port 1 configuration space */ |
|---|
| 42 | | - 0x81000000 0 0x0 0x0 0x12000000 0 0x00010000 /* downstream I/O (64 KiB) */ |
|---|
| 43 | | - 0x82000000 0 0x13000000 0x0 0x13000000 0 0x0d000000 /* non-prefetchable memory (208 MiB) */ |
|---|
| 44 | | - 0xc2000000 0 0x20000000 0x0 0x20000000 0 0x20000000>; /* prefetchable memory (512 MiB) */ |
|---|
| 41 | + ranges = <0x02000000 0 0x01000000 0x0 0x01000000 0 0x00001000>, /* port 0 configuration space */ |
|---|
| 42 | + <0x02000000 0 0x01001000 0x0 0x01001000 0 0x00001000>, /* port 1 configuration space */ |
|---|
| 43 | + <0x01000000 0 0x0 0x0 0x12000000 0 0x00010000>, /* downstream I/O (64 KiB) */ |
|---|
| 44 | + <0x02000000 0 0x13000000 0x0 0x13000000 0 0x0d000000>, /* non-prefetchable memory (208 MiB) */ |
|---|
| 45 | + <0x42000000 0 0x20000000 0x0 0x20000000 0 0x20000000>; /* prefetchable memory (512 MiB) */ |
|---|
| 45 | 46 | |
|---|
| 46 | 47 | clocks = <&tegra_car TEGRA124_CLK_PCIE>, |
|---|
| 47 | 48 | <&tegra_car TEGRA124_CLK_AFI>, |
|---|
| .. | .. |
|---|
| 84 | 85 | }; |
|---|
| 85 | 86 | |
|---|
| 86 | 87 | host1x@50000000 { |
|---|
| 87 | | - compatible = "nvidia,tegra124-host1x", "simple-bus"; |
|---|
| 88 | + compatible = "nvidia,tegra124-host1x"; |
|---|
| 88 | 89 | reg = <0x0 0x50000000 0x0 0x00034000>; |
|---|
| 89 | 90 | interrupts = <GIC_SPI 65 IRQ_TYPE_LEVEL_HIGH>, /* syncpt */ |
|---|
| 90 | 91 | <GIC_SPI 67 IRQ_TYPE_LEVEL_HIGH>; /* general */ |
|---|
| 92 | + interrupt-names = "syncpt", "host1x"; |
|---|
| 91 | 93 | clocks = <&tegra_car TEGRA124_CLK_HOST1X>; |
|---|
| 94 | + clock-names = "host1x"; |
|---|
| 92 | 95 | resets = <&tegra_car 28>; |
|---|
| 93 | 96 | reset-names = "host1x"; |
|---|
| 94 | 97 | iommus = <&mc TEGRA_SWGROUP_HC>; |
|---|
| .. | .. |
|---|
| 102 | 105 | compatible = "nvidia,tegra124-dc"; |
|---|
| 103 | 106 | reg = <0x0 0x54200000 0x0 0x00040000>; |
|---|
| 104 | 107 | interrupts = <GIC_SPI 73 IRQ_TYPE_LEVEL_HIGH>; |
|---|
| 105 | | - clocks = <&tegra_car TEGRA124_CLK_DISP1>, |
|---|
| 106 | | - <&tegra_car TEGRA124_CLK_PLL_P>; |
|---|
| 107 | | - clock-names = "dc", "parent"; |
|---|
| 108 | + clocks = <&tegra_car TEGRA124_CLK_DISP1>; |
|---|
| 109 | + clock-names = "dc"; |
|---|
| 108 | 110 | resets = <&tegra_car 27>; |
|---|
| 109 | 111 | reset-names = "dc"; |
|---|
| 110 | 112 | |
|---|
| .. | .. |
|---|
| 117 | 119 | compatible = "nvidia,tegra124-dc"; |
|---|
| 118 | 120 | reg = <0x0 0x54240000 0x0 0x00040000>; |
|---|
| 119 | 121 | interrupts = <GIC_SPI 74 IRQ_TYPE_LEVEL_HIGH>; |
|---|
| 120 | | - clocks = <&tegra_car TEGRA124_CLK_DISP2>, |
|---|
| 121 | | - <&tegra_car TEGRA124_CLK_PLL_P>; |
|---|
| 122 | | - clock-names = "dc", "parent"; |
|---|
| 122 | + clocks = <&tegra_car TEGRA124_CLK_DISP2>; |
|---|
| 123 | + clock-names = "dc"; |
|---|
| 123 | 124 | resets = <&tegra_car 26>; |
|---|
| 124 | 125 | reset-names = "dc"; |
|---|
| 125 | 126 | |
|---|
| .. | .. |
|---|
| 140 | 141 | status = "disabled"; |
|---|
| 141 | 142 | }; |
|---|
| 142 | 143 | |
|---|
| 144 | + vic@54340000 { |
|---|
| 145 | + compatible = "nvidia,tegra124-vic"; |
|---|
| 146 | + reg = <0x0 0x54340000 0x0 0x00040000>; |
|---|
| 147 | + interrupts = <GIC_SPI 72 IRQ_TYPE_LEVEL_HIGH>; |
|---|
| 148 | + clocks = <&tegra_car TEGRA124_CLK_VIC03>; |
|---|
| 149 | + clock-names = "vic"; |
|---|
| 150 | + resets = <&tegra_car 178>; |
|---|
| 151 | + reset-names = "vic"; |
|---|
| 152 | + |
|---|
| 153 | + iommus = <&mc TEGRA_SWGROUP_VIC>; |
|---|
| 154 | + }; |
|---|
| 155 | + |
|---|
| 143 | 156 | sor@54540000 { |
|---|
| 144 | 157 | compatible = "nvidia,tegra124-sor"; |
|---|
| 145 | 158 | reg = <0x0 0x54540000 0x0 0x00040000>; |
|---|
| 146 | 159 | interrupts = <GIC_SPI 76 IRQ_TYPE_LEVEL_HIGH>; |
|---|
| 147 | 160 | clocks = <&tegra_car TEGRA124_CLK_SOR0>, |
|---|
| 161 | + <&tegra_car TEGRA124_CLK_SOR0_OUT>, |
|---|
| 148 | 162 | <&tegra_car TEGRA124_CLK_PLL_D_OUT0>, |
|---|
| 149 | 163 | <&tegra_car TEGRA124_CLK_PLL_DP>, |
|---|
| 150 | 164 | <&tegra_car TEGRA124_CLK_CLK_M>; |
|---|
| 151 | | - clock-names = "sor", "parent", "dp", "safe"; |
|---|
| 165 | + clock-names = "sor", "out", "parent", "dp", "safe"; |
|---|
| 152 | 166 | resets = <&tegra_car 182>; |
|---|
| 153 | 167 | reset-names = "sor"; |
|---|
| 154 | 168 | status = "disabled"; |
|---|
| .. | .. |
|---|
| 164 | 178 | resets = <&tegra_car 181>; |
|---|
| 165 | 179 | reset-names = "dpaux"; |
|---|
| 166 | 180 | status = "disabled"; |
|---|
| 181 | + |
|---|
| 182 | + i2c-bus { |
|---|
| 183 | + #address-cells = <1>; |
|---|
| 184 | + #size-cells = <0>; |
|---|
| 185 | + }; |
|---|
| 167 | 186 | }; |
|---|
| 168 | 187 | }; |
|---|
| 169 | 188 | |
|---|
| .. | .. |
|---|
| 582 | 601 | clocks = <&tegra_car TEGRA124_CLK_RTC>; |
|---|
| 583 | 602 | }; |
|---|
| 584 | 603 | |
|---|
| 585 | | - pmc@7000e400 { |
|---|
| 604 | + tegra_pmc: pmc@7000e400 { |
|---|
| 586 | 605 | compatible = "nvidia,tegra124-pmc"; |
|---|
| 587 | 606 | reg = <0x0 0x7000e400 0x0 0x400>; |
|---|
| 588 | 607 | clocks = <&tegra_car TEGRA124_CLK_PCLK>, <&clk32k_in>; |
|---|
| 589 | 608 | clock-names = "pclk", "clk32k_in"; |
|---|
| 609 | + #clock-cells = <1>; |
|---|
| 590 | 610 | }; |
|---|
| 591 | 611 | |
|---|
| 592 | 612 | fuse@7000f800 { |
|---|
| .. | .. |
|---|
| 607 | 627 | interrupts = <GIC_SPI 77 IRQ_TYPE_LEVEL_HIGH>; |
|---|
| 608 | 628 | |
|---|
| 609 | 629 | #iommu-cells = <1>; |
|---|
| 630 | + #reset-cells = <1>; |
|---|
| 610 | 631 | }; |
|---|
| 611 | 632 | |
|---|
| 612 | | - emc: emc@7001b000 { |
|---|
| 633 | + emc: external-memory-controller@7001b000 { |
|---|
| 613 | 634 | compatible = "nvidia,tegra124-emc"; |
|---|
| 614 | 635 | reg = <0x0 0x7001b000 0x0 0x1000>; |
|---|
| 636 | + clocks = <&tegra_car TEGRA124_CLK_EMC>; |
|---|
| 637 | + clock-names = "emc"; |
|---|
| 615 | 638 | |
|---|
| 616 | 639 | nvidia,memory-controller = <&mc>; |
|---|
| 617 | 640 | }; |
|---|
| .. | .. |
|---|
| 662 | 685 | <&tegra_car TEGRA124_CLK_XUSB_HOST_SRC>, |
|---|
| 663 | 686 | <&tegra_car TEGRA124_CLK_XUSB_FALCON_SRC>, |
|---|
| 664 | 687 | <&tegra_car TEGRA124_CLK_XUSB_SS>, |
|---|
| 665 | | - <&tegra_car TEGRA124_CLK_XUSB_SS_DIV2>, |
|---|
| 666 | 688 | <&tegra_car TEGRA124_CLK_XUSB_SS_SRC>, |
|---|
| 689 | + <&tegra_car TEGRA124_CLK_XUSB_SS_DIV2>, |
|---|
| 667 | 690 | <&tegra_car TEGRA124_CLK_XUSB_HS_SRC>, |
|---|
| 668 | 691 | <&tegra_car TEGRA124_CLK_XUSB_FS_SRC>, |
|---|
| 669 | 692 | <&tegra_car TEGRA124_CLK_PLL_U_480M>, |
|---|
| .. | .. |
|---|
| 671 | 694 | <&tegra_car TEGRA124_CLK_PLL_E>; |
|---|
| 672 | 695 | clock-names = "xusb_host", "xusb_host_src", |
|---|
| 673 | 696 | "xusb_falcon_src", "xusb_ss", |
|---|
| 674 | | - "xusb_ss_div2", "xusb_ss_src", |
|---|
| 697 | + "xusb_ss_src", "xusb_ss_div2", |
|---|
| 675 | 698 | "xusb_hs_src", "xusb_fs_src", |
|---|
| 676 | 699 | "pll_u_480m", "clk_m", "pll_e"; |
|---|
| 677 | 700 | resets = <&tegra_car 89>, <&tegra_car 156>, |
|---|
| .. | .. |
|---|
| 816 | 839 | }; |
|---|
| 817 | 840 | }; |
|---|
| 818 | 841 | |
|---|
| 819 | | - sdhci@700b0000 { |
|---|
| 842 | + mmc@700b0000 { |
|---|
| 820 | 843 | compatible = "nvidia,tegra124-sdhci"; |
|---|
| 821 | 844 | reg = <0x0 0x700b0000 0x0 0x200>; |
|---|
| 822 | 845 | interrupts = <GIC_SPI 14 IRQ_TYPE_LEVEL_HIGH>; |
|---|
| 823 | 846 | clocks = <&tegra_car TEGRA124_CLK_SDMMC1>; |
|---|
| 847 | + clock-names = "sdhci"; |
|---|
| 824 | 848 | resets = <&tegra_car 14>; |
|---|
| 825 | 849 | reset-names = "sdhci"; |
|---|
| 826 | 850 | status = "disabled"; |
|---|
| 827 | 851 | }; |
|---|
| 828 | 852 | |
|---|
| 829 | | - sdhci@700b0200 { |
|---|
| 853 | + mmc@700b0200 { |
|---|
| 830 | 854 | compatible = "nvidia,tegra124-sdhci"; |
|---|
| 831 | 855 | reg = <0x0 0x700b0200 0x0 0x200>; |
|---|
| 832 | 856 | interrupts = <GIC_SPI 15 IRQ_TYPE_LEVEL_HIGH>; |
|---|
| 833 | 857 | clocks = <&tegra_car TEGRA124_CLK_SDMMC2>; |
|---|
| 858 | + clock-names = "sdhci"; |
|---|
| 834 | 859 | resets = <&tegra_car 9>; |
|---|
| 835 | 860 | reset-names = "sdhci"; |
|---|
| 836 | 861 | status = "disabled"; |
|---|
| 837 | 862 | }; |
|---|
| 838 | 863 | |
|---|
| 839 | | - sdhci@700b0400 { |
|---|
| 864 | + mmc@700b0400 { |
|---|
| 840 | 865 | compatible = "nvidia,tegra124-sdhci"; |
|---|
| 841 | 866 | reg = <0x0 0x700b0400 0x0 0x200>; |
|---|
| 842 | 867 | interrupts = <GIC_SPI 19 IRQ_TYPE_LEVEL_HIGH>; |
|---|
| 843 | 868 | clocks = <&tegra_car TEGRA124_CLK_SDMMC3>; |
|---|
| 869 | + clock-names = "sdhci"; |
|---|
| 844 | 870 | resets = <&tegra_car 69>; |
|---|
| 845 | 871 | reset-names = "sdhci"; |
|---|
| 846 | 872 | status = "disabled"; |
|---|
| 847 | 873 | }; |
|---|
| 848 | 874 | |
|---|
| 849 | | - sdhci@700b0600 { |
|---|
| 875 | + mmc@700b0600 { |
|---|
| 850 | 876 | compatible = "nvidia,tegra124-sdhci"; |
|---|
| 851 | 877 | reg = <0x0 0x700b0600 0x0 0x200>; |
|---|
| 852 | 878 | interrupts = <GIC_SPI 31 IRQ_TYPE_LEVEL_HIGH>; |
|---|
| 853 | 879 | clocks = <&tegra_car TEGRA124_CLK_SDMMC4>; |
|---|
| 880 | + clock-names = "sdhci"; |
|---|
| 854 | 881 | resets = <&tegra_car 15>; |
|---|
| 855 | 882 | reset-names = "sdhci"; |
|---|
| 856 | 883 | status = "disabled"; |
|---|
| .. | .. |
|---|
| 868 | 895 | |
|---|
| 869 | 896 | soctherm: thermal-sensor@700e2000 { |
|---|
| 870 | 897 | compatible = "nvidia,tegra124-soctherm"; |
|---|
| 871 | | - reg = <0x0 0x700e2000 0x0 0x600 /* SOC_THERM reg_base */ |
|---|
| 872 | | - 0x0 0x60006000 0x0 0x400>; /* CAR reg_base */ |
|---|
| 898 | + reg = <0x0 0x700e2000 0x0 0x600>, /* SOC_THERM reg_base */ |
|---|
| 899 | + <0x0 0x60006000 0x0 0x400>; /* CAR reg_base */ |
|---|
| 873 | 900 | reg-names = "soctherm-reg", "car-reg"; |
|---|
| 874 | 901 | interrupts = <GIC_SPI 48 IRQ_TYPE_LEVEL_HIGH>; |
|---|
| 875 | 902 | clocks = <&tegra_car TEGRA124_CLK_TSENSOR>, |
|---|
| .. | .. |
|---|
| 1039 | 1066 | clock-names = "reg", "pll_u", "utmi-pads"; |
|---|
| 1040 | 1067 | resets = <&tegra_car 22>, <&tegra_car 22>; |
|---|
| 1041 | 1068 | reset-names = "usb", "utmi-pads"; |
|---|
| 1069 | + #phy-cells = <0>; |
|---|
| 1042 | 1070 | nvidia,hssync-start-delay = <0>; |
|---|
| 1043 | 1071 | nvidia,idle-wait-delay = <17>; |
|---|
| 1044 | 1072 | nvidia,elastic-limit = <16>; |
|---|
| .. | .. |
|---|
| 1076 | 1104 | clock-names = "reg", "pll_u", "utmi-pads"; |
|---|
| 1077 | 1105 | resets = <&tegra_car 58>, <&tegra_car 22>; |
|---|
| 1078 | 1106 | reset-names = "usb", "utmi-pads"; |
|---|
| 1107 | + #phy-cells = <0>; |
|---|
| 1079 | 1108 | nvidia,hssync-start-delay = <0>; |
|---|
| 1080 | 1109 | nvidia,idle-wait-delay = <17>; |
|---|
| 1081 | 1110 | nvidia,elastic-limit = <16>; |
|---|
| .. | .. |
|---|
| 1112 | 1141 | clock-names = "reg", "pll_u", "utmi-pads"; |
|---|
| 1113 | 1142 | resets = <&tegra_car 59>, <&tegra_car 22>; |
|---|
| 1114 | 1143 | reset-names = "usb", "utmi-pads"; |
|---|
| 1144 | + #phy-cells = <0>; |
|---|
| 1115 | 1145 | nvidia,hssync-start-delay = <0>; |
|---|
| 1116 | 1146 | nvidia,idle-wait-delay = <17>; |
|---|
| 1117 | 1147 | nvidia,elastic-limit = <16>; |
|---|