| .. | .. |
|---|
| 18 | 18 | #include <dt-bindings/phy/phy.h> |
|---|
| 19 | 19 | #include <dt-bindings/power/mt8173-power.h> |
|---|
| 20 | 20 | #include <dt-bindings/reset/mt8173-resets.h> |
|---|
| 21 | +#include <dt-bindings/gce/mt8173-gce.h> |
|---|
| 22 | +#include <dt-bindings/thermal/thermal.h> |
|---|
| 21 | 23 | #include "mt8173-pinfunc.h" |
|---|
| 22 | 24 | |
|---|
| 23 | 25 | / { |
|---|
| .. | .. |
|---|
| 41 | 43 | dpi0 = &dpi0; |
|---|
| 42 | 44 | dsi0 = &dsi0; |
|---|
| 43 | 45 | dsi1 = &dsi1; |
|---|
| 44 | | - mdp_rdma0 = &mdp_rdma0; |
|---|
| 45 | | - mdp_rdma1 = &mdp_rdma1; |
|---|
| 46 | | - mdp_rsz0 = &mdp_rsz0; |
|---|
| 47 | | - mdp_rsz1 = &mdp_rsz1; |
|---|
| 48 | | - mdp_rsz2 = &mdp_rsz2; |
|---|
| 49 | | - mdp_wdma0 = &mdp_wdma0; |
|---|
| 50 | | - mdp_wrot0 = &mdp_wrot0; |
|---|
| 51 | | - mdp_wrot1 = &mdp_wrot1; |
|---|
| 46 | + mdp-rdma0 = &mdp_rdma0; |
|---|
| 47 | + mdp-rdma1 = &mdp_rdma1; |
|---|
| 48 | + mdp-rsz0 = &mdp_rsz0; |
|---|
| 49 | + mdp-rsz1 = &mdp_rsz1; |
|---|
| 50 | + mdp-rsz2 = &mdp_rsz2; |
|---|
| 51 | + mdp-wdma0 = &mdp_wdma0; |
|---|
| 52 | + mdp-wrot0 = &mdp_wrot0; |
|---|
| 53 | + mdp-wrot1 = &mdp_wrot1; |
|---|
| 54 | + serial0 = &uart0; |
|---|
| 55 | + serial1 = &uart1; |
|---|
| 56 | + serial2 = &uart2; |
|---|
| 57 | + serial3 = &uart3; |
|---|
| 52 | 58 | }; |
|---|
| 53 | 59 | |
|---|
| 54 | 60 | cluster0_opp: opp_table0 { |
|---|
| .. | .. |
|---|
| 156 | 162 | enable-method = "psci"; |
|---|
| 157 | 163 | cpu-idle-states = <&CPU_SLEEP_0>; |
|---|
| 158 | 164 | #cooling-cells = <2>; |
|---|
| 165 | + dynamic-power-coefficient = <263>; |
|---|
| 159 | 166 | clocks = <&infracfg CLK_INFRA_CA53SEL>, |
|---|
| 160 | 167 | <&apmixedsys CLK_APMIXED_MAINPLL>; |
|---|
| 161 | 168 | clock-names = "cpu", "intermediate"; |
|---|
| 162 | 169 | operating-points-v2 = <&cluster0_opp>; |
|---|
| 170 | + capacity-dmips-mhz = <740>; |
|---|
| 163 | 171 | }; |
|---|
| 164 | 172 | |
|---|
| 165 | 173 | cpu1: cpu@1 { |
|---|
| .. | .. |
|---|
| 169 | 177 | enable-method = "psci"; |
|---|
| 170 | 178 | cpu-idle-states = <&CPU_SLEEP_0>; |
|---|
| 171 | 179 | #cooling-cells = <2>; |
|---|
| 180 | + dynamic-power-coefficient = <263>; |
|---|
| 172 | 181 | clocks = <&infracfg CLK_INFRA_CA53SEL>, |
|---|
| 173 | 182 | <&apmixedsys CLK_APMIXED_MAINPLL>; |
|---|
| 174 | 183 | clock-names = "cpu", "intermediate"; |
|---|
| 175 | 184 | operating-points-v2 = <&cluster0_opp>; |
|---|
| 185 | + capacity-dmips-mhz = <740>; |
|---|
| 176 | 186 | }; |
|---|
| 177 | 187 | |
|---|
| 178 | 188 | cpu2: cpu@100 { |
|---|
| 179 | 189 | device_type = "cpu"; |
|---|
| 180 | | - compatible = "arm,cortex-a57"; |
|---|
| 190 | + compatible = "arm,cortex-a72"; |
|---|
| 181 | 191 | reg = <0x100>; |
|---|
| 182 | 192 | enable-method = "psci"; |
|---|
| 183 | 193 | cpu-idle-states = <&CPU_SLEEP_0>; |
|---|
| 184 | 194 | #cooling-cells = <2>; |
|---|
| 185 | | - clocks = <&infracfg CLK_INFRA_CA57SEL>, |
|---|
| 195 | + dynamic-power-coefficient = <530>; |
|---|
| 196 | + clocks = <&infracfg CLK_INFRA_CA72SEL>, |
|---|
| 186 | 197 | <&apmixedsys CLK_APMIXED_MAINPLL>; |
|---|
| 187 | 198 | clock-names = "cpu", "intermediate"; |
|---|
| 188 | 199 | operating-points-v2 = <&cluster1_opp>; |
|---|
| 200 | + capacity-dmips-mhz = <1024>; |
|---|
| 189 | 201 | }; |
|---|
| 190 | 202 | |
|---|
| 191 | 203 | cpu3: cpu@101 { |
|---|
| 192 | 204 | device_type = "cpu"; |
|---|
| 193 | | - compatible = "arm,cortex-a57"; |
|---|
| 205 | + compatible = "arm,cortex-a72"; |
|---|
| 194 | 206 | reg = <0x101>; |
|---|
| 195 | 207 | enable-method = "psci"; |
|---|
| 196 | 208 | cpu-idle-states = <&CPU_SLEEP_0>; |
|---|
| 197 | 209 | #cooling-cells = <2>; |
|---|
| 198 | | - clocks = <&infracfg CLK_INFRA_CA57SEL>, |
|---|
| 210 | + dynamic-power-coefficient = <530>; |
|---|
| 211 | + clocks = <&infracfg CLK_INFRA_CA72SEL>, |
|---|
| 199 | 212 | <&apmixedsys CLK_APMIXED_MAINPLL>; |
|---|
| 200 | 213 | clock-names = "cpu", "intermediate"; |
|---|
| 201 | 214 | operating-points-v2 = <&cluster1_opp>; |
|---|
| 215 | + capacity-dmips-mhz = <1024>; |
|---|
| 202 | 216 | }; |
|---|
| 203 | 217 | |
|---|
| 204 | 218 | idle-states { |
|---|
| .. | .. |
|---|
| 213 | 227 | arm,psci-suspend-param = <0x0010000>; |
|---|
| 214 | 228 | }; |
|---|
| 215 | 229 | }; |
|---|
| 230 | + }; |
|---|
| 231 | + |
|---|
| 232 | + pmu_a53 { |
|---|
| 233 | + compatible = "arm,cortex-a53-pmu"; |
|---|
| 234 | + interrupts = <GIC_SPI 8 IRQ_TYPE_LEVEL_LOW>, |
|---|
| 235 | + <GIC_SPI 9 IRQ_TYPE_LEVEL_LOW>; |
|---|
| 236 | + interrupt-affinity = <&cpu0>, <&cpu1>; |
|---|
| 237 | + }; |
|---|
| 238 | + |
|---|
| 239 | + pmu_a72 { |
|---|
| 240 | + compatible = "arm,cortex-a72-pmu"; |
|---|
| 241 | + interrupts = <GIC_SPI 12 IRQ_TYPE_LEVEL_LOW>, |
|---|
| 242 | + <GIC_SPI 13 IRQ_TYPE_LEVEL_LOW>; |
|---|
| 243 | + interrupt-affinity = <&cpu2>, <&cpu3>; |
|---|
| 216 | 244 | }; |
|---|
| 217 | 245 | |
|---|
| 218 | 246 | psci { |
|---|
| .. | .. |
|---|
| 275 | 303 | cooling-maps { |
|---|
| 276 | 304 | map0 { |
|---|
| 277 | 305 | trip = <&target>; |
|---|
| 278 | | - cooling-device = <&cpu0 0 0>; |
|---|
| 306 | + cooling-device = <&cpu0 THERMAL_NO_LIMIT |
|---|
| 307 | + THERMAL_NO_LIMIT>, |
|---|
| 308 | + <&cpu1 THERMAL_NO_LIMIT |
|---|
| 309 | + THERMAL_NO_LIMIT>; |
|---|
| 279 | 310 | contribution = <3072>; |
|---|
| 280 | 311 | }; |
|---|
| 281 | 312 | map1 { |
|---|
| 282 | 313 | trip = <&target>; |
|---|
| 283 | | - cooling-device = <&cpu2 0 0>; |
|---|
| 314 | + cooling-device = <&cpu2 THERMAL_NO_LIMIT |
|---|
| 315 | + THERMAL_NO_LIMIT>, |
|---|
| 316 | + <&cpu3 THERMAL_NO_LIMIT |
|---|
| 317 | + THERMAL_NO_LIMIT>; |
|---|
| 284 | 318 | contribution = <1024>; |
|---|
| 285 | 319 | }; |
|---|
| 286 | 320 | }; |
|---|
| .. | .. |
|---|
| 310 | 344 | (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>, |
|---|
| 311 | 345 | <GIC_PPI 10 |
|---|
| 312 | 346 | (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>; |
|---|
| 347 | + arm,no-tick-in-suspend; |
|---|
| 313 | 348 | }; |
|---|
| 314 | 349 | |
|---|
| 315 | 350 | soc { |
|---|
| .. | .. |
|---|
| 415 | 450 | }; |
|---|
| 416 | 451 | }; |
|---|
| 417 | 452 | |
|---|
| 418 | | - scpsys: scpsys@10006000 { |
|---|
| 453 | + scpsys: power-controller@10006000 { |
|---|
| 419 | 454 | compatible = "mediatek,mt8173-scpsys"; |
|---|
| 420 | 455 | #power-domain-cells = <1>; |
|---|
| 421 | 456 | reg = <0 0x10006000 0 0x1000>; |
|---|
| .. | .. |
|---|
| 519 | 554 | #clock-cells = <0>; |
|---|
| 520 | 555 | #phy-cells = <0>; |
|---|
| 521 | 556 | status = "disabled"; |
|---|
| 557 | + }; |
|---|
| 558 | + |
|---|
| 559 | + gce: mailbox@10212000 { |
|---|
| 560 | + compatible = "mediatek,mt8173-gce"; |
|---|
| 561 | + reg = <0 0x10212000 0 0x1000>; |
|---|
| 562 | + interrupts = <GIC_SPI 135 IRQ_TYPE_LEVEL_LOW>; |
|---|
| 563 | + clocks = <&infracfg CLK_INFRA_GCE>; |
|---|
| 564 | + clock-names = "gce"; |
|---|
| 565 | + #mbox-cells = <2>; |
|---|
| 522 | 566 | }; |
|---|
| 523 | 567 | |
|---|
| 524 | 568 | mipi_tx0: mipi-dphy@10215000 { |
|---|
| .. | .. |
|---|
| 878 | 922 | }; |
|---|
| 879 | 923 | }; |
|---|
| 880 | 924 | |
|---|
| 881 | | - mmsys: clock-controller@14000000 { |
|---|
| 925 | + mmsys: syscon@14000000 { |
|---|
| 882 | 926 | compatible = "mediatek,mt8173-mmsys", "syscon"; |
|---|
| 883 | 927 | reg = <0 0x14000000 0 0x1000>; |
|---|
| 884 | 928 | power-domains = <&scpsys MT8173_POWER_DOMAIN_MM>; |
|---|
| 885 | 929 | assigned-clocks = <&topckgen CLK_TOP_MM_SEL>; |
|---|
| 886 | 930 | assigned-clock-rates = <400000000>; |
|---|
| 887 | 931 | #clock-cells = <1>; |
|---|
| 932 | + mboxes = <&gce 0 CMDQ_THR_PRIO_HIGHEST>, |
|---|
| 933 | + <&gce 1 CMDQ_THR_PRIO_HIGHEST>; |
|---|
| 934 | + mediatek,gce-client-reg = <&gce SUBSYS_1400XXXX 0 0x1000>; |
|---|
| 888 | 935 | }; |
|---|
| 889 | 936 | |
|---|
| 890 | 937 | mdp_rdma0: rdma@14001000 { |
|---|
| .. | .. |
|---|
| 965 | 1012 | clocks = <&mmsys CLK_MM_DISP_OVL0>; |
|---|
| 966 | 1013 | iommus = <&iommu M4U_PORT_DISP_OVL0>; |
|---|
| 967 | 1014 | mediatek,larb = <&larb0>; |
|---|
| 1015 | + mediatek,gce-client-reg = <&gce SUBSYS_1400XXXX 0xc000 0x1000>; |
|---|
| 968 | 1016 | }; |
|---|
| 969 | 1017 | |
|---|
| 970 | 1018 | ovl1: ovl@1400d000 { |
|---|
| .. | .. |
|---|
| 975 | 1023 | clocks = <&mmsys CLK_MM_DISP_OVL1>; |
|---|
| 976 | 1024 | iommus = <&iommu M4U_PORT_DISP_OVL1>; |
|---|
| 977 | 1025 | mediatek,larb = <&larb4>; |
|---|
| 1026 | + mediatek,gce-client-reg = <&gce SUBSYS_1400XXXX 0xd000 0x1000>; |
|---|
| 978 | 1027 | }; |
|---|
| 979 | 1028 | |
|---|
| 980 | 1029 | rdma0: rdma@1400e000 { |
|---|
| .. | .. |
|---|
| 985 | 1034 | clocks = <&mmsys CLK_MM_DISP_RDMA0>; |
|---|
| 986 | 1035 | iommus = <&iommu M4U_PORT_DISP_RDMA0>; |
|---|
| 987 | 1036 | mediatek,larb = <&larb0>; |
|---|
| 1037 | + mediatek,gce-client-reg = <&gce SUBSYS_1400XXXX 0xe000 0x1000>; |
|---|
| 988 | 1038 | }; |
|---|
| 989 | 1039 | |
|---|
| 990 | 1040 | rdma1: rdma@1400f000 { |
|---|
| .. | .. |
|---|
| 995 | 1045 | clocks = <&mmsys CLK_MM_DISP_RDMA1>; |
|---|
| 996 | 1046 | iommus = <&iommu M4U_PORT_DISP_RDMA1>; |
|---|
| 997 | 1047 | mediatek,larb = <&larb4>; |
|---|
| 1048 | + mediatek,gce-client-reg = <&gce SUBSYS_1400XXXX 0xf000 0x1000>; |
|---|
| 998 | 1049 | }; |
|---|
| 999 | 1050 | |
|---|
| 1000 | 1051 | rdma2: rdma@14010000 { |
|---|
| .. | .. |
|---|
| 1005 | 1056 | clocks = <&mmsys CLK_MM_DISP_RDMA2>; |
|---|
| 1006 | 1057 | iommus = <&iommu M4U_PORT_DISP_RDMA2>; |
|---|
| 1007 | 1058 | mediatek,larb = <&larb4>; |
|---|
| 1059 | + mediatek,gce-client-reg = <&gce SUBSYS_1401XXXX 0 0x1000>; |
|---|
| 1008 | 1060 | }; |
|---|
| 1009 | 1061 | |
|---|
| 1010 | 1062 | wdma0: wdma@14011000 { |
|---|
| .. | .. |
|---|
| 1015 | 1067 | clocks = <&mmsys CLK_MM_DISP_WDMA0>; |
|---|
| 1016 | 1068 | iommus = <&iommu M4U_PORT_DISP_WDMA0>; |
|---|
| 1017 | 1069 | mediatek,larb = <&larb0>; |
|---|
| 1070 | + mediatek,gce-client-reg = <&gce SUBSYS_1401XXXX 0x1000 0x1000>; |
|---|
| 1018 | 1071 | }; |
|---|
| 1019 | 1072 | |
|---|
| 1020 | 1073 | wdma1: wdma@14012000 { |
|---|
| .. | .. |
|---|
| 1025 | 1078 | clocks = <&mmsys CLK_MM_DISP_WDMA1>; |
|---|
| 1026 | 1079 | iommus = <&iommu M4U_PORT_DISP_WDMA1>; |
|---|
| 1027 | 1080 | mediatek,larb = <&larb4>; |
|---|
| 1081 | + mediatek,gce-client-reg = <&gce SUBSYS_1401XXXX 0x2000 0x1000>; |
|---|
| 1028 | 1082 | }; |
|---|
| 1029 | 1083 | |
|---|
| 1030 | 1084 | color0: color@14013000 { |
|---|
| .. | .. |
|---|
| 1033 | 1087 | interrupts = <GIC_SPI 187 IRQ_TYPE_LEVEL_LOW>; |
|---|
| 1034 | 1088 | power-domains = <&scpsys MT8173_POWER_DOMAIN_MM>; |
|---|
| 1035 | 1089 | clocks = <&mmsys CLK_MM_DISP_COLOR0>; |
|---|
| 1090 | + mediatek,gce-client-reg = <&gce SUBSYS_1401XXXX 0x3000 0x1000>; |
|---|
| 1036 | 1091 | }; |
|---|
| 1037 | 1092 | |
|---|
| 1038 | 1093 | color1: color@14014000 { |
|---|
| .. | .. |
|---|
| 1041 | 1096 | interrupts = <GIC_SPI 188 IRQ_TYPE_LEVEL_LOW>; |
|---|
| 1042 | 1097 | power-domains = <&scpsys MT8173_POWER_DOMAIN_MM>; |
|---|
| 1043 | 1098 | clocks = <&mmsys CLK_MM_DISP_COLOR1>; |
|---|
| 1099 | + mediatek,gce-client-reg = <&gce SUBSYS_1401XXXX 0x4000 0x1000>; |
|---|
| 1044 | 1100 | }; |
|---|
| 1045 | 1101 | |
|---|
| 1046 | 1102 | aal@14015000 { |
|---|
| .. | .. |
|---|
| 1049 | 1105 | interrupts = <GIC_SPI 189 IRQ_TYPE_LEVEL_LOW>; |
|---|
| 1050 | 1106 | power-domains = <&scpsys MT8173_POWER_DOMAIN_MM>; |
|---|
| 1051 | 1107 | clocks = <&mmsys CLK_MM_DISP_AAL>; |
|---|
| 1108 | + mediatek,gce-client-reg = <&gce SUBSYS_1401XXXX 0x5000 0x1000>; |
|---|
| 1052 | 1109 | }; |
|---|
| 1053 | 1110 | |
|---|
| 1054 | 1111 | gamma@14016000 { |
|---|
| .. | .. |
|---|
| 1057 | 1114 | interrupts = <GIC_SPI 190 IRQ_TYPE_LEVEL_LOW>; |
|---|
| 1058 | 1115 | power-domains = <&scpsys MT8173_POWER_DOMAIN_MM>; |
|---|
| 1059 | 1116 | clocks = <&mmsys CLK_MM_DISP_GAMMA>; |
|---|
| 1117 | + mediatek,gce-client-reg = <&gce SUBSYS_1401XXXX 0x6000 0x1000>; |
|---|
| 1060 | 1118 | }; |
|---|
| 1061 | 1119 | |
|---|
| 1062 | 1120 | merge@14017000 { |
|---|
| .. | .. |
|---|
| 1162 | 1220 | interrupts = <GIC_SPI 169 IRQ_TYPE_LEVEL_LOW>; |
|---|
| 1163 | 1221 | power-domains = <&scpsys MT8173_POWER_DOMAIN_MM>; |
|---|
| 1164 | 1222 | clocks = <&mmsys CLK_MM_MUTEX_32K>; |
|---|
| 1223 | + mediatek,gce-events = <CMDQ_EVENT_MUTEX0_STREAM_EOF>, |
|---|
| 1224 | + <CMDQ_EVENT_MUTEX1_STREAM_EOF>; |
|---|
| 1165 | 1225 | }; |
|---|
| 1166 | 1226 | |
|---|
| 1167 | 1227 | larb0: larb@14021000 { |
|---|
| .. | .. |
|---|
| 1295 | 1355 | "vencpll", |
|---|
| 1296 | 1356 | "venc_lt_sel", |
|---|
| 1297 | 1357 | "vdec_bus_clk_src"; |
|---|
| 1358 | + assigned-clocks = <&topckgen CLK_TOP_VENC_LT_SEL>, |
|---|
| 1359 | + <&topckgen CLK_TOP_CCI400_SEL>, |
|---|
| 1360 | + <&topckgen CLK_TOP_VDEC_SEL>, |
|---|
| 1361 | + <&apmixedsys CLK_APMIXED_VCODECPLL>, |
|---|
| 1362 | + <&apmixedsys CLK_APMIXED_VENCPLL>; |
|---|
| 1363 | + assigned-clock-parents = <&topckgen CLK_TOP_VCODECPLL_370P5>, |
|---|
| 1364 | + <&topckgen CLK_TOP_UNIVPLL_D2>, |
|---|
| 1365 | + <&topckgen CLK_TOP_VCODECPLL>; |
|---|
| 1366 | + assigned-clock-rates = <0>, <0>, <0>, <1482000000>, <800000000>; |
|---|
| 1298 | 1367 | }; |
|---|
| 1299 | 1368 | |
|---|
| 1300 | 1369 | larb1: larb@16010000 { |
|---|
| .. | .. |
|---|
| 1360 | 1429 | "venc_sel", |
|---|
| 1361 | 1430 | "venc_lt_sel_src", |
|---|
| 1362 | 1431 | "venc_lt_sel"; |
|---|
| 1432 | + assigned-clocks = <&topckgen CLK_TOP_VENC_SEL>, |
|---|
| 1433 | + <&topckgen CLK_TOP_VENC_LT_SEL>; |
|---|
| 1434 | + assigned-clock-parents = <&topckgen CLK_TOP_VCODECPLL>, |
|---|
| 1435 | + <&topckgen CLK_TOP_VCODECPLL_370P5>; |
|---|
| 1436 | + }; |
|---|
| 1437 | + |
|---|
| 1438 | + jpegdec: jpegdec@18004000 { |
|---|
| 1439 | + compatible = "mediatek,mt8173-jpgdec"; |
|---|
| 1440 | + reg = <0 0x18004000 0 0x1000>; |
|---|
| 1441 | + interrupts = <GIC_SPI 203 IRQ_TYPE_LEVEL_LOW>; |
|---|
| 1442 | + clocks = <&vencsys CLK_VENC_CKE0>, |
|---|
| 1443 | + <&vencsys CLK_VENC_CKE3>; |
|---|
| 1444 | + clock-names = "jpgdec-smi", |
|---|
| 1445 | + "jpgdec"; |
|---|
| 1446 | + power-domains = <&scpsys MT8173_POWER_DOMAIN_VENC>; |
|---|
| 1447 | + mediatek,larb = <&larb3>; |
|---|
| 1448 | + iommus = <&iommu M4U_PORT_JPGDEC_WDMA>, |
|---|
| 1449 | + <&iommu M4U_PORT_JPGDEC_BSDMA>; |
|---|
| 1363 | 1450 | }; |
|---|
| 1364 | 1451 | |
|---|
| 1365 | 1452 | vencltsys: clock-controller@19000000 { |
|---|
| .. | .. |
|---|
| 1379 | 1466 | }; |
|---|
| 1380 | 1467 | }; |
|---|
| 1381 | 1468 | }; |
|---|
| 1382 | | - |
|---|