1 // SPDX-License-Identifier: GPL-2.0
4 #include <dt-bindings/interrupt-controller/arm-gic.h>
5 #include <dt-bindings/clock/qcom,gcc-apq8084.h>
6 #include <dt-bindings/gpio/gpio.h>
11 model = "Qualcomm APQ 8084";
12 compatible = "qcom,apq8084";
13 interrupt-parent = <&intc>;
20 smem_mem: smem_region@fa00000 {
21 reg = <0xfa00000 0x200000>;
32 compatible = "qcom,krait";
34 enable-method = "qcom,kpss-acc-v2";
35 next-level-cache = <&L2>;
38 cpu-idle-states = <&CPU_SPC>;
43 compatible = "qcom,krait";
45 enable-method = "qcom,kpss-acc-v2";
46 next-level-cache = <&L2>;
49 cpu-idle-states = <&CPU_SPC>;
54 compatible = "qcom,krait";
56 enable-method = "qcom,kpss-acc-v2";
57 next-level-cache = <&L2>;
60 cpu-idle-states = <&CPU_SPC>;
65 compatible = "qcom,krait";
67 enable-method = "qcom,kpss-acc-v2";
68 next-level-cache = <&L2>;
71 cpu-idle-states = <&CPU_SPC>;
83 compatible = "qcom,idle-state-spc",
85 entry-latency-us = <150>;
86 exit-latency-us = <200>;
87 min-residency-us = <2000>;
93 device_type = "memory";
99 compatible = "qcom,scm-apq8084", "qcom,scm";
100 clocks = <&gcc GCC_CE1_CLK> , <&gcc GCC_CE1_AXI_CLK>, <&gcc GCC_CE1_AHB_CLK>;
101 clock-names = "core", "bus", "iface";
107 polling-delay-passive = <250>;
108 polling-delay = <1000>;
110 thermal-sensors = <&tsens 5>;
114 temperature = <75000>;
119 temperature = <110000>;
127 polling-delay-passive = <250>;
128 polling-delay = <1000>;
130 thermal-sensors = <&tsens 6>;
134 temperature = <75000>;
139 temperature = <110000>;
147 polling-delay-passive = <250>;
148 polling-delay = <1000>;
150 thermal-sensors = <&tsens 7>;
154 temperature = <75000>;
159 temperature = <110000>;
167 polling-delay-passive = <250>;
168 polling-delay = <1000>;
170 thermal-sensors = <&tsens 8>;
174 temperature = <75000>;
179 temperature = <110000>;
188 compatible = "qcom,krait-pmu";
189 interrupts = <GIC_PPI 7 0xf04>;
194 compatible = "fixed-clock";
196 clock-frequency = <19200000>;
199 sleep_clk: sleep_clk {
200 compatible = "fixed-clock";
202 clock-frequency = <32768>;
207 compatible = "arm,armv7-timer";
208 interrupts = <GIC_PPI 2 0xf08>,
212 clock-frequency = <19200000>;
216 compatible = "qcom,smem";
218 qcom,rpm-msg-ram = <&rpm_msg_ram>;
219 memory-region = <&smem_mem>;
221 hwlocks = <&tcsr_mutex 3>;
225 #address-cells = <1>;
228 compatible = "simple-bus";
230 intc: interrupt-controller@f9000000 {
231 compatible = "qcom,msm-qgic2";
232 interrupt-controller;
233 #interrupt-cells = <3>;
234 reg = <0xf9000000 0x1000>,
238 apcs: syscon@f9011000 {
239 compatible = "syscon";
240 reg = <0xf9011000 0x1000>;
244 compatible = "qcom,apq8084-rpm-stats";
245 reg = <0xfc190000 0x10000>;
248 qfprom: qfprom@fc4bc000 {
249 compatible = "qcom,apq8084-qfprom", "qcom,qfprom";
250 reg = <0xfc4bc000 0x1000>;
251 #address-cells = <1>;
254 tsens_base1: base1@d0 {
259 tsens_s0_p1: s0-p1@d1 {
264 tsens_s1_p1: s1-p1@d2 {
269 tsens_s2_p1: s2-p1@d2 {
274 tsens_s3_p1: s3-p1@d3 {
279 tsens_s4_p1: s4-p1@d4 {
284 tsens_s5_p1: s5-p1@d4 {
289 tsens_s6_p1: s6-p1@d5 {
294 tsens_s7_p1: s7-p1@d6 {
299 tsens_s8_p1: s8-p1@d7 {
304 tsens_mode: mode@d7 {
309 tsens_s9_p1: s9-p1@d8 {
314 tsens_s10_p1: s10_p1@d8 {
319 tsens_base2: base2@d9 {
324 tsens_s0_p2: s0-p2@da {
329 tsens_s1_p2: s1-p2@db {
334 tsens_s2_p2: s2-p2@dc {
339 tsens_s3_p2: s3-p2@dc {
344 tsens_s4_p2: s4-p2@dd {
349 tsens_s5_p2: s5-p2@de {
354 tsens_s6_p2: s6-p2@df {
359 tsens_s7_p2: s7-p2@e0 {
364 tsens_s8_p2: s8-p2@e0 {
369 tsens_s9_p2: s9-p2@e1 {
374 tsens_s10_p2: s10_p2@e2 {
379 tsens_s5_p2_backup: s5-p2_backup@e3 {
384 tsens_mode_backup: mode_backup@e3 {
389 tsens_s6_p2_backup: s6-p2_backup@e4 {
394 tsens_s7_p2_backup: s7-p2_backup@e4 {
399 tsens_s8_p2_backup: s8-p2_backup@e5 {
404 tsens_s9_p2_backup: s9-p2_backup@e6 {
409 tsens_s10_p2_backup: s10_p2_backup@e7 {
414 tsens_base1_backup: base1_backup@440 {
419 tsens_s0_p1_backup: s0-p1_backup@441 {
424 tsens_s1_p1_backup: s1-p1_backup@442 {
429 tsens_s2_p1_backup: s2-p1_backup@442 {
434 tsens_s3_p1_backup: s3-p1_backup@443 {
439 tsens_s4_p1_backup: s4-p1_backup@444 {
444 tsens_s5_p1_backup: s5-p1_backup@444 {
449 tsens_s6_p1_backup: s6-p1_backup@445 {
454 tsens_s7_p1_backup: s7-p1_backup@446 {
459 tsens_use_backup: use_backup@447 {
464 tsens_s8_p1_backup: s8-p1_backup@448 {
469 tsens_s9_p1_backup: s9-p1_backup@448 {
474 tsens_s10_p1_backup: s10_p1_backup@449 {
479 tsens_base2_backup: base2_backup@44a {
484 tsens_s0_p2_backup: s0-p2_backup@44b {
489 tsens_s1_p2_backup: s1-p2_backup@44c {
494 tsens_s2_p2_backup: s2-p2_backup@44c {
499 tsens_s3_p2_backup: s3-p2_backup@44d {
504 tsens_s4_p2_backup: s4-p2_backup@44e {
510 tsens: thermal-sensor@fc4a9000 {
511 compatible = "qcom,msm8974-tsens", "qcom,tsens-v0_1";
512 reg = <0xfc4a9000 0x1000>, /* TM */
513 <0xfc4a8000 0x1000>; /* SROT */
514 nvmem-cells = <&tsens_mode>,
515 <&tsens_base1>, <&tsens_base2>,
517 <&tsens_mode_backup>,
518 <&tsens_base1_backup>, <&tsens_base2_backup>,
519 <&tsens_s0_p1>, <&tsens_s0_p2>,
520 <&tsens_s1_p1>, <&tsens_s1_p2>,
521 <&tsens_s2_p1>, <&tsens_s2_p2>,
522 <&tsens_s3_p1>, <&tsens_s3_p2>,
523 <&tsens_s4_p1>, <&tsens_s4_p2>,
524 <&tsens_s5_p1>, <&tsens_s5_p2>,
525 <&tsens_s6_p1>, <&tsens_s6_p2>,
526 <&tsens_s7_p1>, <&tsens_s7_p2>,
527 <&tsens_s8_p1>, <&tsens_s8_p2>,
528 <&tsens_s9_p1>, <&tsens_s9_p2>,
529 <&tsens_s10_p1>, <&tsens_s10_p2>,
530 <&tsens_s0_p1_backup>, <&tsens_s0_p2_backup>,
531 <&tsens_s1_p1_backup>, <&tsens_s1_p2_backup>,
532 <&tsens_s2_p1_backup>, <&tsens_s2_p2_backup>,
533 <&tsens_s3_p1_backup>, <&tsens_s3_p2_backup>,
534 <&tsens_s4_p1_backup>, <&tsens_s4_p2_backup>,
535 <&tsens_s5_p1_backup>, <&tsens_s5_p2_backup>,
536 <&tsens_s6_p1_backup>, <&tsens_s6_p2_backup>,
537 <&tsens_s7_p1_backup>, <&tsens_s7_p2_backup>,
538 <&tsens_s8_p1_backup>, <&tsens_s8_p2_backup>,
539 <&tsens_s9_p1_backup>, <&tsens_s9_p2_backup>,
540 <&tsens_s10_p1_backup>, <&tsens_s10_p2_backup>;
541 nvmem-cell-names = "mode",
545 "base1_backup", "base2_backup",
557 "s0_p1_backup", "s0_p2_backup",
558 "s1_p1_backup", "s1_p2_backup",
559 "s2_p1_backup", "s2_p2_backup",
560 "s3_p1_backup", "s3_p2_backup",
561 "s4_p1_backup", "s4_p2_backup",
562 "s5_p1_backup", "s5_p2_backup",
563 "s6_p1_backup", "s6_p2_backup",
564 "s7_p1_backup", "s7_p2_backup",
565 "s8_p1_backup", "s8_p2_backup",
566 "s9_p1_backup", "s9_p2_backup",
567 "s10_p1_backup", "s10_p2_backup";
568 #qcom,sensors = <11>;
569 interrupts = <GIC_SPI 184 IRQ_TYPE_LEVEL_HIGH>;
570 interrupt-names = "uplow";
571 #thermal-sensor-cells = <1>;
574 #address-cells = <1>;
577 compatible = "arm,armv7-timer-mem";
578 reg = <0xf9020000 0x1000>;
579 clock-frequency = <19200000>;
583 interrupts = <GIC_SPI 8 IRQ_TYPE_LEVEL_HIGH>,
584 <GIC_SPI 7 IRQ_TYPE_LEVEL_HIGH>;
585 reg = <0xf9021000 0x1000>,
591 interrupts = <GIC_SPI 9 IRQ_TYPE_LEVEL_HIGH>;
592 reg = <0xf9023000 0x1000>;
598 interrupts = <GIC_SPI 10 IRQ_TYPE_LEVEL_HIGH>;
599 reg = <0xf9024000 0x1000>;
605 interrupts = <GIC_SPI 11 IRQ_TYPE_LEVEL_HIGH>;
606 reg = <0xf9025000 0x1000>;
612 interrupts = <GIC_SPI 12 IRQ_TYPE_LEVEL_HIGH>;
613 reg = <0xf9026000 0x1000>;
619 interrupts = <GIC_SPI 13 IRQ_TYPE_LEVEL_HIGH>;
620 reg = <0xf9027000 0x1000>;
626 interrupts = <GIC_SPI 14 IRQ_TYPE_LEVEL_HIGH>;
627 reg = <0xf9028000 0x1000>;
632 saw0: power-controller@f9089000 {
633 compatible = "qcom,apq8084-saw2-v2.1-cpu", "qcom,saw2";
634 reg = <0xf9089000 0x1000>, <0xf9009000 0x1000>;
637 saw1: power-controller@f9099000 {
638 compatible = "qcom,apq8084-saw2-v2.1-cpu", "qcom,saw2";
639 reg = <0xf9099000 0x1000>, <0xf9009000 0x1000>;
642 saw2: power-controller@f90a9000 {
643 compatible = "qcom,apq8084-saw2-v2.1-cpu", "qcom,saw2";
644 reg = <0xf90a9000 0x1000>, <0xf9009000 0x1000>;
647 saw3: power-controller@f90b9000 {
648 compatible = "qcom,apq8084-saw2-v2.1-cpu", "qcom,saw2";
649 reg = <0xf90b9000 0x1000>, <0xf9009000 0x1000>;
652 saw_l2: power-controller@f9012000 {
653 compatible = "qcom,saw2";
654 reg = <0xf9012000 0x1000>;
658 acc0: power-manager@f9088000 {
659 compatible = "qcom,kpss-acc-v2";
660 reg = <0xf9088000 0x1000>,
664 acc1: power-manager@f9098000 {
665 compatible = "qcom,kpss-acc-v2";
666 reg = <0xf9098000 0x1000>,
670 acc2: power-manager@f90a8000 {
671 compatible = "qcom,kpss-acc-v2";
672 reg = <0xf90a8000 0x1000>,
676 acc3: power-manager@f90b8000 {
677 compatible = "qcom,kpss-acc-v2";
678 reg = <0xf90b8000 0x1000>,
683 compatible = "qcom,pshold";
684 reg = <0xfc4ab000 0x4>;
687 gcc: clock-controller@fc400000 {
688 compatible = "qcom,gcc-apq8084";
691 #power-domain-cells = <1>;
692 reg = <0xfc400000 0x4000>;
693 clocks = <&xo_board>,
704 "ufs_rx_symbol_0_clk_src",
705 "ufs_rx_symbol_1_clk_src",
706 "ufs_tx_symbol_0_clk_src",
707 "ufs_tx_symbol_1_clk_src",
713 tcsr_mutex: hwlock@fd484000 {
714 compatible = "qcom,apq8084-tcsr-mutex", "qcom,tcsr-mutex";
715 reg = <0xfd484000 0x1000>;
719 rpm_msg_ram: sram@fc428000 {
720 compatible = "qcom,rpm-msg-ram";
721 reg = <0xfc428000 0x4000>;
724 tlmm: pinctrl@fd510000 {
725 compatible = "qcom,apq8084-pinctrl";
726 reg = <0xfd510000 0x4000>;
728 gpio-ranges = <&tlmm 0 0 147>;
730 interrupt-controller;
731 #interrupt-cells = <2>;
732 interrupts = <GIC_SPI 208 IRQ_TYPE_LEVEL_HIGH>;
735 blsp2_uart2: serial@f995e000 {
736 compatible = "qcom,msm-uartdm-v1.4", "qcom,msm-uartdm";
737 reg = <0xf995e000 0x1000>;
738 interrupts = <GIC_SPI 114 IRQ_TYPE_LEVEL_HIGH>;
739 clocks = <&gcc GCC_BLSP2_UART2_APPS_CLK>, <&gcc GCC_BLSP2_AHB_CLK>;
740 clock-names = "core", "iface";
744 sdhc_1: mmc@f9824900 {
745 compatible = "qcom,apq8084-sdhci", "qcom,sdhci-msm-v4";
746 reg = <0xf9824900 0x11c>, <0xf9824000 0x800>;
747 reg-names = "hc", "core";
748 interrupts = <GIC_SPI 123 IRQ_TYPE_LEVEL_HIGH>, <GIC_SPI 138 IRQ_TYPE_LEVEL_HIGH>;
749 interrupt-names = "hc_irq", "pwr_irq";
750 clocks = <&gcc GCC_SDCC1_AHB_CLK>,
751 <&gcc GCC_SDCC1_APPS_CLK>,
753 clock-names = "iface", "core", "xo";
757 sdhc_2: mmc@f98a4900 {
758 compatible = "qcom,apq8084-sdhci", "qcom,sdhci-msm-v4";
759 reg = <0xf98a4900 0x11c>, <0xf98a4000 0x800>;
760 reg-names = "hc", "core";
761 interrupts = <GIC_SPI 125 IRQ_TYPE_LEVEL_HIGH>, <GIC_SPI 221 IRQ_TYPE_LEVEL_HIGH>;
762 interrupt-names = "hc_irq", "pwr_irq";
763 clocks = <&gcc GCC_SDCC2_AHB_CLK>,
764 <&gcc GCC_SDCC2_APPS_CLK>,
766 clock-names = "iface", "core", "xo";
770 spmi_bus: spmi@fc4cf000 {
771 compatible = "qcom,spmi-pmic-arb";
772 reg-names = "core", "intr", "cnfg";
773 reg = <0xfc4cf000 0x1000>,
776 interrupt-names = "periph_irq";
777 interrupts = <GIC_SPI 190 IRQ_TYPE_LEVEL_HIGH>;
780 #address-cells = <2>;
782 interrupt-controller;
783 #interrupt-cells = <4>;
788 compatible = "qcom,smd";
791 interrupts = <GIC_SPI 168 IRQ_TYPE_EDGE_RISING>;
792 qcom,ipc = <&apcs 8 0>;
793 qcom,smd-edge = <15>;
796 compatible = "qcom,rpm-apq8084";
797 qcom,smd-channels = "rpm_requests";
800 compatible = "qcom,rpm-pma8084-regulators";
843 pma8084_lvs1: lvs1 {};
844 pma8084_lvs2: lvs2 {};
845 pma8084_lvs3: lvs3 {};
846 pma8084_lvs4: lvs4 {};
848 pma8084_5vs1: 5vs1 {};