Lines Matching +full:msm8996 +full:- +full:smmu +full:- +full:v2
1 // SPDX-License-Identifier: BSD-3-Clause
6 #include <dt-bindings/clock/qcom,dispcc-sm6125.h>
7 #include <dt-bindings/clock/qcom,gcc-sm6125.h>
8 #include <dt-bindings/clock/qcom,rpmcc.h>
9 #include <dt-bindings/dma/qcom-gpi.h>
10 #include <dt-bindings/gpio/gpio.h>
11 #include <dt-bindings/interrupt-controller/arm-gic.h>
12 #include <dt-bindings/power/qcom-rpmpd.h>
15 interrupt-parent = <&intc>;
16 #address-cells = <2>;
17 #size-cells = <2>;
22 xo_board: xo-board {
23 compatible = "fixed-clock";
24 #clock-cells = <0>;
25 clock-frequency = <19200000>;
28 sleep_clk: sleep-clk {
29 compatible = "fixed-clock";
30 #clock-cells = <0>;
31 clock-frequency = <32000>;
32 clock-output-names = "sleep_clk";
37 #address-cells = <2>;
38 #size-cells = <0>;
44 enable-method = "psci";
45 capacity-dmips-mhz = <1024>;
46 next-level-cache = <&L2_0>;
47 L2_0: l2-cache {
49 cache-level = <2>;
50 cache-unified;
58 enable-method = "psci";
59 capacity-dmips-mhz = <1024>;
60 next-level-cache = <&L2_0>;
67 enable-method = "psci";
68 capacity-dmips-mhz = <1024>;
69 next-level-cache = <&L2_0>;
76 enable-method = "psci";
77 capacity-dmips-mhz = <1024>;
78 next-level-cache = <&L2_0>;
85 enable-method = "psci";
86 capacity-dmips-mhz = <1638>;
87 next-level-cache = <&L2_1>;
88 L2_1: l2-cache {
90 cache-level = <2>;
91 cache-unified;
99 enable-method = "psci";
100 capacity-dmips-mhz = <1638>;
101 next-level-cache = <&L2_1>;
108 enable-method = "psci";
109 capacity-dmips-mhz = <1638>;
110 next-level-cache = <&L2_1>;
117 enable-method = "psci";
118 capacity-dmips-mhz = <1638>;
119 next-level-cache = <&L2_1>;
122 cpu-map {
163 compatible = "qcom,scm-sm6125", "qcom,scm";
164 #reset-cells = <1>;
175 compatible = "arm,armv8-pmuv3";
180 compatible = "arm,psci-1.0";
185 compatible = "qcom,sm6125-rpm-proc", "qcom,rpm-proc";
187 glink-edge {
188 compatible = "qcom,glink-rpm";
191 qcom,rpm-msg-ram = <&rpm_msg_ram>;
194 rpm_requests: rpm-requests {
195 compatible = "qcom,rpm-sm6125", "qcom,glink-smd-rpm";
196 qcom,glink-channels = "rpm_requests";
198 rpmcc: clock-controller {
199 compatible = "qcom,rpmcc-sm6125", "qcom,rpmcc";
200 #clock-cells = <1>;
202 clock-names = "xo";
205 rpmpd: power-controller {
206 compatible = "qcom,sm6125-rpmpd";
207 #power-domain-cells = <1>;
208 operating-points-v2 = <&rpmpd_opp_table>;
210 rpmpd_opp_table: opp-table {
211 compatible = "operating-points-v2";
214 opp-level = <RPM_SMD_LEVEL_RETENTION>;
218 opp-level = <RPM_SMD_LEVEL_RETENTION_PLUS>;
222 opp-level = <RPM_SMD_LEVEL_MIN_SVS>;
226 opp-level = <RPM_SMD_LEVEL_LOW_SVS>;
230 opp-level = <RPM_SMD_LEVEL_SVS>;
234 opp-level = <RPM_SMD_LEVEL_SVS_PLUS>;
238 opp-level = <RPM_SMD_LEVEL_NOM>;
242 opp-level = <RPM_SMD_LEVEL_NOM_PLUS>;
246 opp-level = <RPM_SMD_LEVEL_TURBO>;
250 opp-level = <RPM_SMD_LEVEL_TURBO_NO_CPR>;
258 reserved_memory: reserved-memory {
259 #address-cells = <2>;
260 #size-cells = <2>;
265 no-map;
270 no-map;
275 no-map;
280 no-map;
285 no-map;
290 no-map;
295 no-map;
300 no-map;
305 no-map;
310 no-map;
315 no-map;
320 no-map;
325 no-map;
330 no-map;
335 no-map;
340 no-map;
345 no-map;
350 no-map;
355 no-map;
360 no-map;
365 no-map;
371 memory-region = <&smem_mem>;
376 #address-cells = <1>;
377 #size-cells = <1>;
379 compatible = "simple-bus";
382 compatible = "qcom,tcsr-mutex";
384 #hwlock-cells = <1>;
388 compatible = "qcom,sm6125-tlmm";
392 reg-names = "west", "south", "east";
394 gpio-controller;
395 gpio-ranges = <&tlmm 0 0 134>;
396 #gpio-cells = <2>;
397 interrupt-controller;
398 #interrupt-cells = <2>;
400 sdc2_off_state: sdc2-off-state {
401 clk-pins {
403 drive-strength = <2>;
404 bias-disable;
407 cmd-pins {
409 drive-strength = <2>;
410 bias-pull-up;
413 data-pins {
415 drive-strength = <2>;
416 bias-pull-up;
420 sdc2_on_state: sdc2-on-state {
421 clk-pins {
423 drive-strength = <16>;
424 bias-disable;
427 cmd-pins {
429 drive-strength = <10>;
430 bias-pull-up;
433 data-pins {
435 drive-strength = <10>;
436 bias-pull-up;
440 qup_i2c0_default: qup-i2c0-default-state {
443 drive-strength = <2>;
444 bias-disable;
447 qup_i2c0_sleep: qup-i2c0-sleep-state {
450 drive-strength = <2>;
451 bias-pull-up;
454 qup_i2c1_default: qup-i2c1-default-state {
457 drive-strength = <2>;
458 bias-disable;
461 qup_i2c1_sleep: qup-i2c1-sleep-state {
464 drive-strength = <2>;
465 bias-pull-up;
468 qup_i2c2_default: qup-i2c2-default-state {
471 drive-strength = <2>;
472 bias-disable;
475 qup_i2c2_sleep: qup-i2c2-sleep-state {
478 drive-strength = <2>;
479 bias-pull-up;
482 qup_i2c3_default: qup-i2c3-default-state {
485 drive-strength = <2>;
486 bias-disable;
489 qup_i2c3_sleep: qup-i2c3-sleep-state {
492 drive-strength = <2>;
493 bias-pull-up;
496 qup_i2c4_default: qup-i2c4-default-state {
499 drive-strength = <2>;
500 bias-disable;
503 qup_i2c4_sleep: qup-i2c4-sleep-state {
506 drive-strength = <2>;
507 bias-pull-up;
510 qup_i2c5_default: qup-i2c5-default-state {
513 drive-strength = <2>;
514 bias-disable;
517 qup_i2c5_sleep: qup-i2c5-sleep-state {
520 drive-strength = <2>;
521 bias-pull-up;
524 qup_i2c6_default: qup-i2c6-default-state {
527 drive-strength = <2>;
528 bias-disable;
531 qup_i2c6_sleep: qup-i2c6-sleep-state {
534 drive-strength = <2>;
535 bias-pull-up;
538 qup_i2c7_default: qup-i2c7-default-state {
541 drive-strength = <2>;
542 bias-disable;
545 qup_i2c7_sleep: qup-i2c7-sleep-state {
548 drive-strength = <2>;
549 bias-pull-up;
552 qup_i2c8_default: qup-i2c8-default-state {
555 drive-strength = <2>;
556 bias-disable;
559 qup_i2c8_sleep: qup-i2c8-sleep-state {
562 drive-strength = <2>;
563 bias-pull-up;
566 qup_i2c9_default: qup-i2c9-default-state {
569 drive-strength = <2>;
570 bias-disable;
573 qup_i2c9_sleep: qup-i2c9-sleep-state {
576 drive-strength = <2>;
577 bias-pull-up;
580 qup_spi0_default: qup-spi0-default-state {
583 drive-strength = <6>;
584 bias-disable;
587 qup_spi0_sleep: qup-spi0-sleep-state {
590 drive-strength = <6>;
591 bias-disable;
594 qup_spi2_default: qup-spi2-default-state {
597 drive-strength = <6>;
598 bias-disable;
601 qup_spi2_sleep: qup-spi2-sleep-state {
604 drive-strength = <6>;
605 bias-disable;
608 qup_spi5_default: qup-spi5-default-state {
611 drive-strength = <6>;
612 bias-disable;
615 qup_spi5_sleep: qup-spi5-sleep-state {
618 drive-strength = <6>;
619 bias-disable;
622 qup_spi6_default: qup-spi6-default-state {
625 drive-strength = <6>;
626 bias-disable;
629 qup_spi6_sleep: qup-spi6-sleep-state {
632 drive-strength = <6>;
633 bias-disable;
636 qup_spi8_default: qup-spi8-default-state {
639 drive-strength = <6>;
640 bias-disable;
643 qup_spi8_sleep: qup-spi8-sleep-state {
646 drive-strength = <6>;
647 bias-disable;
650 qup_spi9_default: qup-spi9-default-state {
653 drive-strength = <6>;
654 bias-disable;
657 qup_spi9_sleep: qup-spi9-sleep-state {
660 drive-strength = <6>;
661 bias-disable;
665 gcc: clock-controller@1400000 {
666 compatible = "qcom,gcc-sm6125";
668 #clock-cells = <1>;
669 #reset-cells = <1>;
670 #power-domain-cells = <1>;
671 clock-names = "bi_tcxo", "sleep_clk";
676 compatible = "qcom,msm8996-qusb2-phy";
678 #phy-cells = <0>;
682 clock-names = "cfg_ahb", "ref";
689 compatible = "qcom,spmi-pmic-arb";
695 reg-names = "core", "chnls", "obsrvr", "intr", "cnfg";
696 interrupt-names = "periph_irq";
700 #address-cells = <2>;
701 #size-cells = <0>;
702 interrupt-controller;
703 #interrupt-cells = <4>;
707 compatible = "qcom,rpm-msg-ram";
712 compatible = "qcom,sm6125-sdhci", "qcom,sdhci-msm-v5";
714 reg-names = "hc", "cqhci";
718 interrupt-names = "hc_irq", "pwr_irq";
723 clock-names = "iface", "core", "xo";
726 power-domains = <&rpmpd SM6125_VDDCX>;
728 qcom,dll-config = <0x000f642c>;
729 qcom,ddr-config = <0x80040873>;
731 bus-width = <8>;
732 non-removable;
733 supports-cqe;
739 compatible = "qcom,sm6125-sdhci", "qcom,sdhci-msm-v5";
741 reg-names = "hc";
745 interrupt-names = "hc_irq", "pwr_irq";
750 clock-names = "iface", "core", "xo";
753 pinctrl-0 = <&sdc2_on_state>;
754 pinctrl-1 = <&sdc2_off_state>;
755 pinctrl-names = "default", "sleep";
757 power-domains = <&rpmpd SM6125_VDDCX>;
759 qcom,dll-config = <0x0007642c>;
760 qcom,ddr-config = <0x80040873>;
762 bus-width = <4>;
767 compatible = "qcom,sm6125-ufshc", "qcom,ufshc", "jedec,ufs-2.0";
769 reg-names = "std", "ice";
780 clock-names = "core_clk",
788 freq-table-hz = <50000000 240000000>,
798 reset-names = "rst";
799 #reset-cells = <1>;
802 phy-names = "ufsphy";
804 lanes-per-direction = <1>;
812 compatible = "qcom,sm6125-qmp-ufs-phy";
818 clock-names = "ref",
823 reset-names = "ufsphy";
825 power-domains = <&gcc UFS_PHY_GDSC>;
827 #phy-cells = <0>;
832 gpi_dma0: dma-controller@4a00000 {
833 compatible = "qcom,sm6125-gpi-dma", "qcom,sdm845-gpi-dma";
843 dma-channels = <8>;
844 dma-channel-mask = <0x1f>;
846 #dma-cells = <3>;
851 compatible = "qcom,geni-se-qup";
855 clock-names = "m-ahb", "s-ahb";
857 #address-cells = <1>;
858 #size-cells = <1>;
863 compatible = "qcom,geni-i2c";
866 clock-names = "se";
868 pinctrl-0 = <&qup_i2c0_default>;
869 pinctrl-1 = <&qup_i2c0_sleep>;
870 pinctrl-names = "default", "sleep";
873 dma-names = "tx", "rx";
874 #address-cells = <1>;
875 #size-cells = <0>;
880 compatible = "qcom,geni-spi";
883 clock-names = "se";
885 pinctrl-0 = <&qup_spi0_default>;
886 pinctrl-1 = <&qup_spi0_sleep>;
887 pinctrl-names = "default", "sleep";
890 dma-names = "tx", "rx";
891 #address-cells = <1>;
892 #size-cells = <0>;
897 compatible = "qcom,geni-i2c";
900 clock-names = "se";
902 pinctrl-0 = <&qup_i2c1_default>;
903 pinctrl-1 = <&qup_i2c1_sleep>;
904 pinctrl-names = "default", "sleep";
907 dma-names = "tx", "rx";
908 #address-cells = <1>;
909 #size-cells = <0>;
914 compatible = "qcom,geni-i2c";
917 clock-names = "se";
919 pinctrl-0 = <&qup_i2c2_default>;
920 pinctrl-1 = <&qup_i2c2_sleep>;
921 pinctrl-names = "default", "sleep";
924 dma-names = "tx", "rx";
925 #address-cells = <1>;
926 #size-cells = <0>;
931 compatible = "qcom,geni-spi";
934 clock-names = "se";
936 pinctrl-0 = <&qup_spi2_default>;
937 pinctrl-1 = <&qup_spi2_sleep>;
938 pinctrl-names = "default", "sleep";
941 dma-names = "tx", "rx";
942 #address-cells = <1>;
943 #size-cells = <0>;
948 compatible = "qcom,geni-i2c";
951 clock-names = "se";
953 pinctrl-0 = <&qup_i2c3_default>;
954 pinctrl-1 = <&qup_i2c3_sleep>;
955 pinctrl-names = "default", "sleep";
958 dma-names = "tx", "rx";
959 #address-cells = <1>;
960 #size-cells = <0>;
965 compatible = "qcom,geni-i2c";
968 clock-names = "se";
970 pinctrl-0 = <&qup_i2c4_default>;
971 pinctrl-1 = <&qup_i2c4_sleep>;
972 pinctrl-names = "default", "sleep";
975 dma-names = "tx", "rx";
976 #address-cells = <1>;
977 #size-cells = <0>;
982 gpi_dma1: dma-controller@4c00000 {
983 compatible = "qcom,sm6125-gpi-dma", "qcom,sdm845-gpi-dma";
993 dma-channels = <8>;
994 dma-channel-mask = <0x0f>;
996 #dma-cells = <3>;
1001 compatible = "qcom,geni-se-qup";
1005 clock-names = "m-ahb", "s-ahb";
1007 #address-cells = <1>;
1008 #size-cells = <1>;
1013 compatible = "qcom,geni-i2c";
1016 clock-names = "se";
1018 pinctrl-0 = <&qup_i2c5_default>;
1019 pinctrl-1 = <&qup_i2c5_sleep>;
1020 pinctrl-names = "default", "sleep";
1023 dma-names = "tx", "rx";
1024 #address-cells = <1>;
1025 #size-cells = <0>;
1030 compatible = "qcom,geni-spi";
1033 clock-names = "se";
1035 pinctrl-0 = <&qup_spi5_default>;
1036 pinctrl-1 = <&qup_spi5_sleep>;
1037 pinctrl-names = "default", "sleep";
1040 dma-names = "tx", "rx";
1041 #address-cells = <1>;
1042 #size-cells = <0>;
1047 compatible = "qcom,geni-i2c";
1050 clock-names = "se";
1052 pinctrl-0 = <&qup_i2c6_default>;
1053 pinctrl-1 = <&qup_i2c6_sleep>;
1054 pinctrl-names = "default", "sleep";
1057 dma-names = "tx", "rx";
1058 #address-cells = <1>;
1059 #size-cells = <0>;
1064 compatible = "qcom,geni-spi";
1067 clock-names = "se";
1069 pinctrl-0 = <&qup_spi6_default>;
1070 pinctrl-1 = <&qup_spi6_sleep>;
1071 pinctrl-names = "default", "sleep";
1074 dma-names = "tx", "rx";
1075 #address-cells = <1>;
1076 #size-cells = <0>;
1081 compatible = "qcom,geni-i2c";
1084 clock-names = "se";
1086 pinctrl-0 = <&qup_i2c7_default>;
1087 pinctrl-1 = <&qup_i2c7_sleep>;
1088 pinctrl-names = "default", "sleep";
1091 dma-names = "tx", "rx";
1092 #address-cells = <1>;
1093 #size-cells = <0>;
1098 compatible = "qcom,geni-i2c";
1101 clock-names = "se";
1103 pinctrl-0 = <&qup_i2c8_default>;
1104 pinctrl-1 = <&qup_i2c8_sleep>;
1105 pinctrl-names = "default", "sleep";
1108 dma-names = "tx", "rx";
1109 #address-cells = <1>;
1110 #size-cells = <0>;
1115 compatible = "qcom,geni-spi";
1118 clock-names = "se";
1120 pinctrl-0 = <&qup_spi8_default>;
1121 pinctrl-1 = <&qup_spi8_sleep>;
1122 pinctrl-names = "default", "sleep";
1125 dma-names = "tx", "rx";
1126 #address-cells = <1>;
1127 #size-cells = <0>;
1132 compatible = "qcom,geni-i2c";
1135 clock-names = "se";
1137 pinctrl-0 = <&qup_i2c9_default>;
1138 pinctrl-1 = <&qup_i2c9_sleep>;
1139 pinctrl-names = "default", "sleep";
1142 dma-names = "tx", "rx";
1143 #address-cells = <1>;
1144 #size-cells = <0>;
1149 compatible = "qcom,geni-spi";
1152 clock-names = "se";
1154 pinctrl-0 = <&qup_spi9_default>;
1155 pinctrl-1 = <&qup_spi9_sleep>;
1156 pinctrl-names = "default", "sleep";
1159 dma-names = "tx", "rx";
1160 #address-cells = <1>;
1161 #size-cells = <0>;
1167 compatible = "qcom,sm6125-dwc3", "qcom,dwc3";
1169 #address-cells = <1>;
1170 #size-cells = <1>;
1179 clock-names = "cfg_noc",
1186 assigned-clocks = <&gcc GCC_USB30_PRIM_MOCK_UTMI_CLK>,
1188 assigned-clock-rates = <19200000>, <66666667>;
1194 interrupt-names = "pwr_event",
1199 power-domains = <&gcc USB30_PRIM_GDSC>;
1200 qcom,select-utmi-as-pipe-clk;
1209 phy-names = "usb2-phy";
1212 maximum-speed = "high-speed";
1218 compatible = "qcom,rpm-stats";
1222 mdss: display-subsystem@5e00000 {
1223 compatible = "qcom,sm6125-mdss";
1225 reg-names = "mdss";
1228 interrupt-controller;
1229 #interrupt-cells = <1>;
1234 clock-names = "iface",
1238 power-domains = <&dispcc MDSS_GDSC>;
1242 #address-cells = <1>;
1243 #size-cells = <1>;
1248 mdss_mdp: display-controller@5e01000 {
1249 compatible = "qcom,sm6125-dpu";
1252 reg-names = "mdp", "vbif";
1254 interrupt-parent = <&mdss>;
1264 clock-names = "bus",
1271 assigned-clocks = <&dispcc DISP_CC_MDSS_VSYNC_CLK>;
1272 assigned-clock-rates = <19200000>;
1274 operating-points-v2 = <&mdp_opp_table>;
1275 power-domains = <&rpmpd SM6125_VDDCX>;
1278 #address-cells = <1>;
1279 #size-cells = <0>;
1284 remote-endpoint = <&mdss_dsi0_in>;
1289 mdp_opp_table: opp-table {
1290 compatible = "operating-points-v2";
1292 opp-192000000 {
1293 opp-hz = /bits/ 64 <192000000>;
1294 required-opps = <&rpmpd_opp_low_svs>;
1297 opp-256000000 {
1298 opp-hz = /bits/ 64 <256000000>;
1299 required-opps = <&rpmpd_opp_svs>;
1302 opp-307200000 {
1303 opp-hz = /bits/ 64 <307200000>;
1304 required-opps = <&rpmpd_opp_svs_plus>;
1307 opp-384000000 {
1308 opp-hz = /bits/ 64 <384000000>;
1309 required-opps = <&rpmpd_opp_nom>;
1312 opp-400000000 {
1313 opp-hz = /bits/ 64 <400000000>;
1314 required-opps = <&rpmpd_opp_turbo>;
1320 compatible = "qcom,sm6125-dsi-ctrl", "qcom,mdss-dsi-ctrl";
1322 reg-names = "dsi_ctrl";
1324 interrupt-parent = <&mdss>;
1333 clock-names = "byte",
1339 assigned-clocks = <&dispcc DISP_CC_MDSS_BYTE0_CLK_SRC>,
1341 assigned-clock-parents = <&mdss_dsi0_phy 0>, <&mdss_dsi0_phy 1>;
1343 operating-points-v2 = <&dsi_opp_table>;
1344 power-domains = <&rpmpd SM6125_VDDCX>;
1347 phy-names = "dsi";
1349 #address-cells = <1>;
1350 #size-cells = <0>;
1355 #address-cells = <1>;
1356 #size-cells = <0>;
1361 remote-endpoint = <&dpu_intf1_out>;
1372 dsi_opp_table: opp-table {
1373 compatible = "operating-points-v2";
1375 opp-164000000 {
1376 opp-hz = /bits/ 64 <164000000>;
1377 required-opps = <&rpmpd_opp_low_svs>;
1380 opp-187500000 {
1381 opp-hz = /bits/ 64 <187500000>;
1382 required-opps = <&rpmpd_opp_svs>;
1388 compatible = "qcom,sm6125-dsi-phy-14nm";
1392 reg-names = "dsi_phy",
1396 #clock-cells = <1>;
1397 #phy-cells = <0>;
1401 clock-names = "iface",
1404 required-opps = <&rpmpd_opp_nom>;
1405 power-domains = <&rpmpd SM6125_VDDMX>;
1411 dispcc: clock-controller@5f00000 {
1412 compatible = "qcom,sm6125-dispcc";
1423 clock-names = "bi_tcxo",
1432 required-opps = <&rpmpd_opp_ret>;
1433 power-domains = <&rpmpd SM6125_VDDCX>;
1435 #clock-cells = <1>;
1436 #power-domain-cells = <1>;
1440 compatible = "qcom,sm6125-smmu-500", "qcom,smmu-500", "arm,mmu-500";
1508 #global-interrupts = <1>;
1509 #iommu-cells = <2>;
1513 compatible = "qcom,sm6125-apcs-hmss-global",
1514 "qcom,msm8994-apcs-kpss-global";
1517 #mbox-cells = <1>;
1521 compatible = "arm,armv7-timer-mem";
1522 #address-cells = <1>;
1523 #size-cells = <1>;
1526 clock-frequency = <19200000>;
1529 frame-number = <0>;
1537 frame-number = <1>;
1544 frame-number = <2>;
1551 frame-number = <3>;
1558 frame-number = <4>;
1565 frame-number = <5>;
1572 frame-number = <6>;
1579 intc: interrupt-controller@f200000 {
1580 compatible = "arm,gic-v3";
1583 #interrupt-cells = <3>;
1584 interrupt-controller;
1590 compatible = "arm,armv8-timer";
1595 clock-frequency = <19200000>;