1f126890aSEmmanuel Vadot// SPDX-License-Identifier: GPL-2.0 2f126890aSEmmanuel Vadot/dts-v1/; 3f126890aSEmmanuel Vadot 4f126890aSEmmanuel Vadot#include <dt-bindings/clock/qcom,gcc-msm8960.h> 5f126890aSEmmanuel Vadot#include <dt-bindings/clock/qcom,lcc-msm8960.h> 6f126890aSEmmanuel Vadot#include <dt-bindings/reset/qcom,gcc-msm8960.h> 7f126890aSEmmanuel Vadot#include <dt-bindings/clock/qcom,mmcc-msm8960.h> 8f126890aSEmmanuel Vadot#include <dt-bindings/clock/qcom,rpmcc.h> 9f126890aSEmmanuel Vadot#include <dt-bindings/soc/qcom,gsbi.h> 10f126890aSEmmanuel Vadot#include <dt-bindings/interrupt-controller/irq.h> 11f126890aSEmmanuel Vadot#include <dt-bindings/interrupt-controller/arm-gic.h> 12f126890aSEmmanuel Vadot/ { 13f126890aSEmmanuel Vadot #address-cells = <1>; 14f126890aSEmmanuel Vadot #size-cells = <1>; 15f126890aSEmmanuel Vadot model = "Qualcomm APQ8064"; 16f126890aSEmmanuel Vadot compatible = "qcom,apq8064"; 17f126890aSEmmanuel Vadot interrupt-parent = <&intc>; 18f126890aSEmmanuel Vadot 19f126890aSEmmanuel Vadot reserved-memory { 20f126890aSEmmanuel Vadot #address-cells = <1>; 21f126890aSEmmanuel Vadot #size-cells = <1>; 22f126890aSEmmanuel Vadot ranges; 23f126890aSEmmanuel Vadot 24f126890aSEmmanuel Vadot smem_region: smem@80000000 { 25f126890aSEmmanuel Vadot reg = <0x80000000 0x200000>; 26f126890aSEmmanuel Vadot no-map; 27f126890aSEmmanuel Vadot }; 28f126890aSEmmanuel Vadot 29f126890aSEmmanuel Vadot wcnss_mem: wcnss@8f000000 { 30f126890aSEmmanuel Vadot reg = <0x8f000000 0x700000>; 31f126890aSEmmanuel Vadot no-map; 32f126890aSEmmanuel Vadot }; 33f126890aSEmmanuel Vadot }; 34f126890aSEmmanuel Vadot 35f126890aSEmmanuel Vadot cpus { 36f126890aSEmmanuel Vadot #address-cells = <1>; 37f126890aSEmmanuel Vadot #size-cells = <0>; 38f126890aSEmmanuel Vadot 39f126890aSEmmanuel Vadot CPU0: cpu@0 { 40f126890aSEmmanuel Vadot compatible = "qcom,krait"; 41f126890aSEmmanuel Vadot enable-method = "qcom,kpss-acc-v1"; 42f126890aSEmmanuel Vadot device_type = "cpu"; 43f126890aSEmmanuel Vadot reg = <0>; 44f126890aSEmmanuel Vadot next-level-cache = <&L2>; 45f126890aSEmmanuel Vadot qcom,acc = <&acc0>; 46f126890aSEmmanuel Vadot qcom,saw = <&saw0>; 47f126890aSEmmanuel Vadot cpu-idle-states = <&CPU_SPC>; 48f126890aSEmmanuel Vadot }; 49f126890aSEmmanuel Vadot 50f126890aSEmmanuel Vadot CPU1: cpu@1 { 51f126890aSEmmanuel Vadot compatible = "qcom,krait"; 52f126890aSEmmanuel Vadot enable-method = "qcom,kpss-acc-v1"; 53f126890aSEmmanuel Vadot device_type = "cpu"; 54f126890aSEmmanuel Vadot reg = <1>; 55f126890aSEmmanuel Vadot next-level-cache = <&L2>; 56f126890aSEmmanuel Vadot qcom,acc = <&acc1>; 57f126890aSEmmanuel Vadot qcom,saw = <&saw1>; 58f126890aSEmmanuel Vadot cpu-idle-states = <&CPU_SPC>; 59f126890aSEmmanuel Vadot }; 60f126890aSEmmanuel Vadot 61f126890aSEmmanuel Vadot CPU2: cpu@2 { 62f126890aSEmmanuel Vadot compatible = "qcom,krait"; 63f126890aSEmmanuel Vadot enable-method = "qcom,kpss-acc-v1"; 64f126890aSEmmanuel Vadot device_type = "cpu"; 65f126890aSEmmanuel Vadot reg = <2>; 66f126890aSEmmanuel Vadot next-level-cache = <&L2>; 67f126890aSEmmanuel Vadot qcom,acc = <&acc2>; 68f126890aSEmmanuel Vadot qcom,saw = <&saw2>; 69f126890aSEmmanuel Vadot cpu-idle-states = <&CPU_SPC>; 70f126890aSEmmanuel Vadot }; 71f126890aSEmmanuel Vadot 72f126890aSEmmanuel Vadot CPU3: cpu@3 { 73f126890aSEmmanuel Vadot compatible = "qcom,krait"; 74f126890aSEmmanuel Vadot enable-method = "qcom,kpss-acc-v1"; 75f126890aSEmmanuel Vadot device_type = "cpu"; 76f126890aSEmmanuel Vadot reg = <3>; 77f126890aSEmmanuel Vadot next-level-cache = <&L2>; 78f126890aSEmmanuel Vadot qcom,acc = <&acc3>; 79f126890aSEmmanuel Vadot qcom,saw = <&saw3>; 80f126890aSEmmanuel Vadot cpu-idle-states = <&CPU_SPC>; 81f126890aSEmmanuel Vadot }; 82f126890aSEmmanuel Vadot 83f126890aSEmmanuel Vadot L2: l2-cache { 84f126890aSEmmanuel Vadot compatible = "cache"; 85f126890aSEmmanuel Vadot cache-level = <2>; 86f126890aSEmmanuel Vadot cache-unified; 87f126890aSEmmanuel Vadot }; 88f126890aSEmmanuel Vadot 89f126890aSEmmanuel Vadot idle-states { 90f126890aSEmmanuel Vadot CPU_SPC: spc { 91f126890aSEmmanuel Vadot compatible = "qcom,idle-state-spc", 92f126890aSEmmanuel Vadot "arm,idle-state"; 93f126890aSEmmanuel Vadot entry-latency-us = <400>; 94f126890aSEmmanuel Vadot exit-latency-us = <900>; 95f126890aSEmmanuel Vadot min-residency-us = <3000>; 96f126890aSEmmanuel Vadot }; 97f126890aSEmmanuel Vadot }; 98f126890aSEmmanuel Vadot }; 99f126890aSEmmanuel Vadot 100f126890aSEmmanuel Vadot memory@0 { 101f126890aSEmmanuel Vadot device_type = "memory"; 102f126890aSEmmanuel Vadot reg = <0x0 0x0>; 103f126890aSEmmanuel Vadot }; 104f126890aSEmmanuel Vadot 105f126890aSEmmanuel Vadot thermal-zones { 106f126890aSEmmanuel Vadot cpu0-thermal { 107f126890aSEmmanuel Vadot polling-delay-passive = <250>; 108f126890aSEmmanuel Vadot polling-delay = <1000>; 109f126890aSEmmanuel Vadot 110f126890aSEmmanuel Vadot thermal-sensors = <&tsens 7>; 111f126890aSEmmanuel Vadot coefficients = <1199 0>; 112f126890aSEmmanuel Vadot 113f126890aSEmmanuel Vadot trips { 114f126890aSEmmanuel Vadot cpu_alert0: trip0 { 115f126890aSEmmanuel Vadot temperature = <75000>; 116f126890aSEmmanuel Vadot hysteresis = <2000>; 117f126890aSEmmanuel Vadot type = "passive"; 118f126890aSEmmanuel Vadot }; 119f126890aSEmmanuel Vadot cpu_crit0: trip1 { 120f126890aSEmmanuel Vadot temperature = <110000>; 121f126890aSEmmanuel Vadot hysteresis = <2000>; 122f126890aSEmmanuel Vadot type = "critical"; 123f126890aSEmmanuel Vadot }; 124f126890aSEmmanuel Vadot }; 125f126890aSEmmanuel Vadot }; 126f126890aSEmmanuel Vadot 127f126890aSEmmanuel Vadot cpu1-thermal { 128f126890aSEmmanuel Vadot polling-delay-passive = <250>; 129f126890aSEmmanuel Vadot polling-delay = <1000>; 130f126890aSEmmanuel Vadot 131f126890aSEmmanuel Vadot thermal-sensors = <&tsens 8>; 132f126890aSEmmanuel Vadot coefficients = <1132 0>; 133f126890aSEmmanuel Vadot 134f126890aSEmmanuel Vadot trips { 135f126890aSEmmanuel Vadot cpu_alert1: trip0 { 136f126890aSEmmanuel Vadot temperature = <75000>; 137f126890aSEmmanuel Vadot hysteresis = <2000>; 138f126890aSEmmanuel Vadot type = "passive"; 139f126890aSEmmanuel Vadot }; 140f126890aSEmmanuel Vadot cpu_crit1: trip1 { 141f126890aSEmmanuel Vadot temperature = <110000>; 142f126890aSEmmanuel Vadot hysteresis = <2000>; 143f126890aSEmmanuel Vadot type = "critical"; 144f126890aSEmmanuel Vadot }; 145f126890aSEmmanuel Vadot }; 146f126890aSEmmanuel Vadot }; 147f126890aSEmmanuel Vadot 148f126890aSEmmanuel Vadot cpu2-thermal { 149f126890aSEmmanuel Vadot polling-delay-passive = <250>; 150f126890aSEmmanuel Vadot polling-delay = <1000>; 151f126890aSEmmanuel Vadot 152f126890aSEmmanuel Vadot thermal-sensors = <&tsens 9>; 153f126890aSEmmanuel Vadot coefficients = <1199 0>; 154f126890aSEmmanuel Vadot 155f126890aSEmmanuel Vadot trips { 156f126890aSEmmanuel Vadot cpu_alert2: trip0 { 157f126890aSEmmanuel Vadot temperature = <75000>; 158f126890aSEmmanuel Vadot hysteresis = <2000>; 159f126890aSEmmanuel Vadot type = "passive"; 160f126890aSEmmanuel Vadot }; 161f126890aSEmmanuel Vadot cpu_crit2: trip1 { 162f126890aSEmmanuel Vadot temperature = <110000>; 163f126890aSEmmanuel Vadot hysteresis = <2000>; 164f126890aSEmmanuel Vadot type = "critical"; 165f126890aSEmmanuel Vadot }; 166f126890aSEmmanuel Vadot }; 167f126890aSEmmanuel Vadot }; 168f126890aSEmmanuel Vadot 169f126890aSEmmanuel Vadot cpu3-thermal { 170f126890aSEmmanuel Vadot polling-delay-passive = <250>; 171f126890aSEmmanuel Vadot polling-delay = <1000>; 172f126890aSEmmanuel Vadot 173f126890aSEmmanuel Vadot thermal-sensors = <&tsens 10>; 174f126890aSEmmanuel Vadot coefficients = <1132 0>; 175f126890aSEmmanuel Vadot 176f126890aSEmmanuel Vadot trips { 177f126890aSEmmanuel Vadot cpu_alert3: trip0 { 178f126890aSEmmanuel Vadot temperature = <75000>; 179f126890aSEmmanuel Vadot hysteresis = <2000>; 180f126890aSEmmanuel Vadot type = "passive"; 181f126890aSEmmanuel Vadot }; 182f126890aSEmmanuel Vadot cpu_crit3: trip1 { 183f126890aSEmmanuel Vadot temperature = <110000>; 184f126890aSEmmanuel Vadot hysteresis = <2000>; 185f126890aSEmmanuel Vadot type = "critical"; 186f126890aSEmmanuel Vadot }; 187f126890aSEmmanuel Vadot }; 188f126890aSEmmanuel Vadot }; 189f126890aSEmmanuel Vadot }; 190f126890aSEmmanuel Vadot 191f126890aSEmmanuel Vadot cpu-pmu { 192f126890aSEmmanuel Vadot compatible = "qcom,krait-pmu"; 193*01950c46SEmmanuel Vadot interrupts = <GIC_PPI 10 (GIC_CPU_MASK_SIMPLE(2) | IRQ_TYPE_LEVEL_HIGH)>; 194f126890aSEmmanuel Vadot }; 195f126890aSEmmanuel Vadot 196f126890aSEmmanuel Vadot clocks { 197f126890aSEmmanuel Vadot cxo_board: cxo_board { 198f126890aSEmmanuel Vadot compatible = "fixed-clock"; 199f126890aSEmmanuel Vadot #clock-cells = <0>; 200f126890aSEmmanuel Vadot clock-frequency = <19200000>; 201f126890aSEmmanuel Vadot }; 202f126890aSEmmanuel Vadot 203f126890aSEmmanuel Vadot pxo_board: pxo_board { 204f126890aSEmmanuel Vadot compatible = "fixed-clock"; 205f126890aSEmmanuel Vadot #clock-cells = <0>; 206f126890aSEmmanuel Vadot clock-frequency = <27000000>; 207f126890aSEmmanuel Vadot }; 208f126890aSEmmanuel Vadot 209f126890aSEmmanuel Vadot sleep_clk: sleep_clk { 210f126890aSEmmanuel Vadot compatible = "fixed-clock"; 211f126890aSEmmanuel Vadot #clock-cells = <0>; 212f126890aSEmmanuel Vadot clock-frequency = <32768>; 213f126890aSEmmanuel Vadot }; 214f126890aSEmmanuel Vadot }; 215f126890aSEmmanuel Vadot 216f126890aSEmmanuel Vadot sfpb_mutex: hwmutex { 217f126890aSEmmanuel Vadot compatible = "qcom,sfpb-mutex"; 218f126890aSEmmanuel Vadot syscon = <&sfpb_wrapper_mutex 0x604 0x4>; 219f126890aSEmmanuel Vadot #hwlock-cells = <1>; 220f126890aSEmmanuel Vadot }; 221f126890aSEmmanuel Vadot 222f126890aSEmmanuel Vadot smem { 223f126890aSEmmanuel Vadot compatible = "qcom,smem"; 224f126890aSEmmanuel Vadot memory-region = <&smem_region>; 225f126890aSEmmanuel Vadot 226f126890aSEmmanuel Vadot hwlocks = <&sfpb_mutex 3>; 227f126890aSEmmanuel Vadot }; 228f126890aSEmmanuel Vadot 229f126890aSEmmanuel Vadot smsm { 230f126890aSEmmanuel Vadot compatible = "qcom,smsm"; 231f126890aSEmmanuel Vadot 232f126890aSEmmanuel Vadot #address-cells = <1>; 233f126890aSEmmanuel Vadot #size-cells = <0>; 234f126890aSEmmanuel Vadot 235f126890aSEmmanuel Vadot qcom,ipc-1 = <&l2cc 8 4>; 236f126890aSEmmanuel Vadot qcom,ipc-2 = <&l2cc 8 14>; 237f126890aSEmmanuel Vadot qcom,ipc-3 = <&l2cc 8 23>; 238f126890aSEmmanuel Vadot qcom,ipc-4 = <&sps_sic_non_secure 0x4094 0>; 239f126890aSEmmanuel Vadot 240f126890aSEmmanuel Vadot apps_smsm: apps@0 { 241f126890aSEmmanuel Vadot reg = <0>; 242f126890aSEmmanuel Vadot #qcom,smem-state-cells = <1>; 243f126890aSEmmanuel Vadot }; 244f126890aSEmmanuel Vadot 245f126890aSEmmanuel Vadot modem_smsm: modem@1 { 246f126890aSEmmanuel Vadot reg = <1>; 247*01950c46SEmmanuel Vadot interrupts = <GIC_SPI 38 IRQ_TYPE_EDGE_RISING>; 248f126890aSEmmanuel Vadot 249f126890aSEmmanuel Vadot interrupt-controller; 250f126890aSEmmanuel Vadot #interrupt-cells = <2>; 251f126890aSEmmanuel Vadot }; 252f126890aSEmmanuel Vadot 253f126890aSEmmanuel Vadot q6_smsm: q6@2 { 254f126890aSEmmanuel Vadot reg = <2>; 255*01950c46SEmmanuel Vadot interrupts = <GIC_SPI 89 IRQ_TYPE_EDGE_RISING>; 256f126890aSEmmanuel Vadot 257f126890aSEmmanuel Vadot interrupt-controller; 258f126890aSEmmanuel Vadot #interrupt-cells = <2>; 259f126890aSEmmanuel Vadot }; 260f126890aSEmmanuel Vadot 261f126890aSEmmanuel Vadot wcnss_smsm: wcnss@3 { 262f126890aSEmmanuel Vadot reg = <3>; 263*01950c46SEmmanuel Vadot interrupts = <GIC_SPI 204 IRQ_TYPE_EDGE_RISING>; 264f126890aSEmmanuel Vadot 265f126890aSEmmanuel Vadot interrupt-controller; 266f126890aSEmmanuel Vadot #interrupt-cells = <2>; 267f126890aSEmmanuel Vadot }; 268f126890aSEmmanuel Vadot 269f126890aSEmmanuel Vadot dsps_smsm: dsps@4 { 270f126890aSEmmanuel Vadot reg = <4>; 271*01950c46SEmmanuel Vadot interrupts = <GIC_SPI 137 IRQ_TYPE_EDGE_RISING>; 272f126890aSEmmanuel Vadot 273f126890aSEmmanuel Vadot interrupt-controller; 274f126890aSEmmanuel Vadot #interrupt-cells = <2>; 275f126890aSEmmanuel Vadot }; 276f126890aSEmmanuel Vadot }; 277f126890aSEmmanuel Vadot 278f126890aSEmmanuel Vadot firmware { 279f126890aSEmmanuel Vadot scm { 280f126890aSEmmanuel Vadot compatible = "qcom,scm-apq8064", "qcom,scm"; 281f126890aSEmmanuel Vadot 282f126890aSEmmanuel Vadot clocks = <&rpmcc RPM_DAYTONA_FABRIC_CLK>; 283f126890aSEmmanuel Vadot clock-names = "core"; 284f126890aSEmmanuel Vadot }; 285f126890aSEmmanuel Vadot }; 286f126890aSEmmanuel Vadot 287f126890aSEmmanuel Vadot soc: soc { 288f126890aSEmmanuel Vadot #address-cells = <1>; 289f126890aSEmmanuel Vadot #size-cells = <1>; 290f126890aSEmmanuel Vadot ranges; 291f126890aSEmmanuel Vadot compatible = "simple-bus"; 292f126890aSEmmanuel Vadot 293f126890aSEmmanuel Vadot tlmm_pinmux: pinctrl@800000 { 294f126890aSEmmanuel Vadot compatible = "qcom,apq8064-pinctrl"; 295f126890aSEmmanuel Vadot reg = <0x800000 0x4000>; 296f126890aSEmmanuel Vadot 297f126890aSEmmanuel Vadot gpio-controller; 298f126890aSEmmanuel Vadot gpio-ranges = <&tlmm_pinmux 0 0 90>; 299f126890aSEmmanuel Vadot #gpio-cells = <2>; 300f126890aSEmmanuel Vadot interrupt-controller; 301f126890aSEmmanuel Vadot #interrupt-cells = <2>; 302*01950c46SEmmanuel Vadot interrupts = <GIC_SPI 16 IRQ_TYPE_LEVEL_HIGH>; 303f126890aSEmmanuel Vadot 304f126890aSEmmanuel Vadot pinctrl-names = "default"; 305f126890aSEmmanuel Vadot pinctrl-0 = <&ps_hold>; 306f126890aSEmmanuel Vadot }; 307f126890aSEmmanuel Vadot 308f126890aSEmmanuel Vadot sfpb_wrapper_mutex: syscon@1200000 { 309f126890aSEmmanuel Vadot compatible = "syscon"; 310f126890aSEmmanuel Vadot reg = <0x01200000 0x8000>; 311f126890aSEmmanuel Vadot }; 312f126890aSEmmanuel Vadot 313f126890aSEmmanuel Vadot intc: interrupt-controller@2000000 { 314f126890aSEmmanuel Vadot compatible = "qcom,msm-qgic2"; 315f126890aSEmmanuel Vadot interrupt-controller; 316f126890aSEmmanuel Vadot #interrupt-cells = <3>; 317f126890aSEmmanuel Vadot reg = <0x02000000 0x1000>, 318f126890aSEmmanuel Vadot <0x02002000 0x1000>; 319f126890aSEmmanuel Vadot }; 320f126890aSEmmanuel Vadot 321f126890aSEmmanuel Vadot timer@200a000 { 322f126890aSEmmanuel Vadot compatible = "qcom,kpss-wdt-apq8064", "qcom,kpss-timer", 323f126890aSEmmanuel Vadot "qcom,msm-timer"; 324*01950c46SEmmanuel Vadot interrupts = <GIC_PPI 1 (GIC_CPU_MASK_SIMPLE(2) | IRQ_TYPE_EDGE_RISING)>, 325*01950c46SEmmanuel Vadot <GIC_PPI 2 (GIC_CPU_MASK_SIMPLE(2) | IRQ_TYPE_EDGE_RISING)>, 326*01950c46SEmmanuel Vadot <GIC_PPI 3 (GIC_CPU_MASK_SIMPLE(2) | IRQ_TYPE_EDGE_RISING)>; 327f126890aSEmmanuel Vadot reg = <0x0200a000 0x100>; 328f126890aSEmmanuel Vadot clock-frequency = <27000000>; 329f126890aSEmmanuel Vadot cpu-offset = <0x80000>; 330f126890aSEmmanuel Vadot }; 331f126890aSEmmanuel Vadot 332f126890aSEmmanuel Vadot acc0: clock-controller@2088000 { 333f126890aSEmmanuel Vadot compatible = "qcom,kpss-acc-v1"; 334f126890aSEmmanuel Vadot reg = <0x02088000 0x1000>, <0x02008000 0x1000>; 335f126890aSEmmanuel Vadot clocks = <&gcc PLL8_VOTE>, <&pxo_board>; 336f126890aSEmmanuel Vadot clock-names = "pll8_vote", "pxo"; 337f126890aSEmmanuel Vadot clock-output-names = "acpu0_aux"; 338f126890aSEmmanuel Vadot #clock-cells = <0>; 339f126890aSEmmanuel Vadot }; 340f126890aSEmmanuel Vadot 341f126890aSEmmanuel Vadot acc1: clock-controller@2098000 { 342f126890aSEmmanuel Vadot compatible = "qcom,kpss-acc-v1"; 343f126890aSEmmanuel Vadot reg = <0x02098000 0x1000>, <0x02008000 0x1000>; 344f126890aSEmmanuel Vadot clocks = <&gcc PLL8_VOTE>, <&pxo_board>; 345f126890aSEmmanuel Vadot clock-names = "pll8_vote", "pxo"; 346f126890aSEmmanuel Vadot clock-output-names = "acpu1_aux"; 347f126890aSEmmanuel Vadot #clock-cells = <0>; 348f126890aSEmmanuel Vadot }; 349f126890aSEmmanuel Vadot 350f126890aSEmmanuel Vadot acc2: clock-controller@20a8000 { 351f126890aSEmmanuel Vadot compatible = "qcom,kpss-acc-v1"; 352f126890aSEmmanuel Vadot reg = <0x020a8000 0x1000>, <0x02008000 0x1000>; 353f126890aSEmmanuel Vadot clocks = <&gcc PLL8_VOTE>, <&pxo_board>; 354f126890aSEmmanuel Vadot clock-names = "pll8_vote", "pxo"; 355f126890aSEmmanuel Vadot clock-output-names = "acpu2_aux"; 356f126890aSEmmanuel Vadot #clock-cells = <0>; 357f126890aSEmmanuel Vadot }; 358f126890aSEmmanuel Vadot 359f126890aSEmmanuel Vadot acc3: clock-controller@20b8000 { 360f126890aSEmmanuel Vadot compatible = "qcom,kpss-acc-v1"; 361f126890aSEmmanuel Vadot reg = <0x020b8000 0x1000>, <0x02008000 0x1000>; 362f126890aSEmmanuel Vadot clocks = <&gcc PLL8_VOTE>, <&pxo_board>; 363f126890aSEmmanuel Vadot clock-names = "pll8_vote", "pxo"; 364f126890aSEmmanuel Vadot clock-output-names = "acpu3_aux"; 365f126890aSEmmanuel Vadot #clock-cells = <0>; 366f126890aSEmmanuel Vadot }; 367f126890aSEmmanuel Vadot 368*01950c46SEmmanuel Vadot saw0: power-manager@2089000 { 369f126890aSEmmanuel Vadot compatible = "qcom,apq8064-saw2-v1.1-cpu", "qcom,saw2"; 370f126890aSEmmanuel Vadot reg = <0x02089000 0x1000>, <0x02009000 0x1000>; 371*01950c46SEmmanuel Vadot 372*01950c46SEmmanuel Vadot saw0_vreg: regulator { 373*01950c46SEmmanuel Vadot regulator-min-microvolt = <850000>; 374*01950c46SEmmanuel Vadot regulator-max-microvolt = <1300000>; 375*01950c46SEmmanuel Vadot }; 376f126890aSEmmanuel Vadot }; 377f126890aSEmmanuel Vadot 378*01950c46SEmmanuel Vadot saw1: power-manager@2099000 { 379f126890aSEmmanuel Vadot compatible = "qcom,apq8064-saw2-v1.1-cpu", "qcom,saw2"; 380f126890aSEmmanuel Vadot reg = <0x02099000 0x1000>, <0x02009000 0x1000>; 381*01950c46SEmmanuel Vadot 382*01950c46SEmmanuel Vadot saw1_vreg: regulator { 383*01950c46SEmmanuel Vadot regulator-min-microvolt = <850000>; 384*01950c46SEmmanuel Vadot regulator-max-microvolt = <1300000>; 385*01950c46SEmmanuel Vadot }; 386f126890aSEmmanuel Vadot }; 387f126890aSEmmanuel Vadot 388*01950c46SEmmanuel Vadot saw2: power-manager@20a9000 { 389f126890aSEmmanuel Vadot compatible = "qcom,apq8064-saw2-v1.1-cpu", "qcom,saw2"; 390f126890aSEmmanuel Vadot reg = <0x020a9000 0x1000>, <0x02009000 0x1000>; 391*01950c46SEmmanuel Vadot 392*01950c46SEmmanuel Vadot saw2_vreg: regulator { 393*01950c46SEmmanuel Vadot regulator-min-microvolt = <850000>; 394*01950c46SEmmanuel Vadot regulator-max-microvolt = <1300000>; 395*01950c46SEmmanuel Vadot }; 396f126890aSEmmanuel Vadot }; 397f126890aSEmmanuel Vadot 398*01950c46SEmmanuel Vadot saw3: power-manager@20b9000 { 399f126890aSEmmanuel Vadot compatible = "qcom,apq8064-saw2-v1.1-cpu", "qcom,saw2"; 400f126890aSEmmanuel Vadot reg = <0x020b9000 0x1000>, <0x02009000 0x1000>; 401*01950c46SEmmanuel Vadot 402*01950c46SEmmanuel Vadot saw3_vreg: regulator { 403*01950c46SEmmanuel Vadot regulator-min-microvolt = <850000>; 404*01950c46SEmmanuel Vadot regulator-max-microvolt = <1300000>; 405*01950c46SEmmanuel Vadot }; 406f126890aSEmmanuel Vadot }; 407f126890aSEmmanuel Vadot 408f126890aSEmmanuel Vadot sps_sic_non_secure: sps-sic-non-secure@12100000 { 409f126890aSEmmanuel Vadot compatible = "syscon"; 410f126890aSEmmanuel Vadot reg = <0x12100000 0x10000>; 411f126890aSEmmanuel Vadot }; 412f126890aSEmmanuel Vadot 413f126890aSEmmanuel Vadot gsbi1: gsbi@12440000 { 414f126890aSEmmanuel Vadot status = "disabled"; 415f126890aSEmmanuel Vadot compatible = "qcom,gsbi-v1.0.0"; 416f126890aSEmmanuel Vadot cell-index = <1>; 417f126890aSEmmanuel Vadot reg = <0x12440000 0x100>; 418f126890aSEmmanuel Vadot clocks = <&gcc GSBI1_H_CLK>; 419f126890aSEmmanuel Vadot clock-names = "iface"; 420f126890aSEmmanuel Vadot #address-cells = <1>; 421f126890aSEmmanuel Vadot #size-cells = <1>; 422f126890aSEmmanuel Vadot ranges; 423f126890aSEmmanuel Vadot 424f126890aSEmmanuel Vadot syscon-tcsr = <&tcsr>; 425f126890aSEmmanuel Vadot 426f126890aSEmmanuel Vadot gsbi1_serial: serial@12450000 { 427f126890aSEmmanuel Vadot compatible = "qcom,msm-uartdm-v1.3", "qcom,msm-uartdm"; 428f126890aSEmmanuel Vadot reg = <0x12450000 0x100>, 429f126890aSEmmanuel Vadot <0x12400000 0x03>; 430*01950c46SEmmanuel Vadot interrupts = <GIC_SPI 193 IRQ_TYPE_LEVEL_HIGH>; 431f126890aSEmmanuel Vadot clocks = <&gcc GSBI1_UART_CLK>, <&gcc GSBI1_H_CLK>; 432f126890aSEmmanuel Vadot clock-names = "core", "iface"; 433f126890aSEmmanuel Vadot status = "disabled"; 434f126890aSEmmanuel Vadot }; 435f126890aSEmmanuel Vadot 436f126890aSEmmanuel Vadot gsbi1_i2c: i2c@12460000 { 437f126890aSEmmanuel Vadot compatible = "qcom,i2c-qup-v1.1.1"; 438f126890aSEmmanuel Vadot pinctrl-0 = <&i2c1_pins>; 439f126890aSEmmanuel Vadot pinctrl-1 = <&i2c1_pins_sleep>; 440f126890aSEmmanuel Vadot pinctrl-names = "default", "sleep"; 441f126890aSEmmanuel Vadot reg = <0x12460000 0x1000>; 442*01950c46SEmmanuel Vadot interrupts = <GIC_SPI 194 IRQ_TYPE_LEVEL_HIGH>; 443f126890aSEmmanuel Vadot clocks = <&gcc GSBI1_QUP_CLK>, <&gcc GSBI1_H_CLK>; 444f126890aSEmmanuel Vadot clock-names = "core", "iface"; 445f126890aSEmmanuel Vadot #address-cells = <1>; 446f126890aSEmmanuel Vadot #size-cells = <0>; 447f126890aSEmmanuel Vadot status = "disabled"; 448f126890aSEmmanuel Vadot }; 449f126890aSEmmanuel Vadot 450f126890aSEmmanuel Vadot }; 451f126890aSEmmanuel Vadot 452f126890aSEmmanuel Vadot gsbi2: gsbi@12480000 { 453f126890aSEmmanuel Vadot status = "disabled"; 454f126890aSEmmanuel Vadot compatible = "qcom,gsbi-v1.0.0"; 455f126890aSEmmanuel Vadot cell-index = <2>; 456f126890aSEmmanuel Vadot reg = <0x12480000 0x100>; 457f126890aSEmmanuel Vadot clocks = <&gcc GSBI2_H_CLK>; 458f126890aSEmmanuel Vadot clock-names = "iface"; 459f126890aSEmmanuel Vadot #address-cells = <1>; 460f126890aSEmmanuel Vadot #size-cells = <1>; 461f126890aSEmmanuel Vadot ranges; 462f126890aSEmmanuel Vadot 463f126890aSEmmanuel Vadot syscon-tcsr = <&tcsr>; 464f126890aSEmmanuel Vadot 465f126890aSEmmanuel Vadot gsbi2_i2c: i2c@124a0000 { 466f126890aSEmmanuel Vadot compatible = "qcom,i2c-qup-v1.1.1"; 467f126890aSEmmanuel Vadot reg = <0x124a0000 0x1000>; 468f126890aSEmmanuel Vadot pinctrl-0 = <&i2c2_pins>; 469f126890aSEmmanuel Vadot pinctrl-1 = <&i2c2_pins_sleep>; 470f126890aSEmmanuel Vadot pinctrl-names = "default", "sleep"; 471*01950c46SEmmanuel Vadot interrupts = <GIC_SPI 196 IRQ_TYPE_LEVEL_HIGH>; 472f126890aSEmmanuel Vadot clocks = <&gcc GSBI2_QUP_CLK>, <&gcc GSBI2_H_CLK>; 473f126890aSEmmanuel Vadot clock-names = "core", "iface"; 474f126890aSEmmanuel Vadot #address-cells = <1>; 475f126890aSEmmanuel Vadot #size-cells = <0>; 476f126890aSEmmanuel Vadot status = "disabled"; 477f126890aSEmmanuel Vadot }; 478f126890aSEmmanuel Vadot }; 479f126890aSEmmanuel Vadot 480f126890aSEmmanuel Vadot gsbi3: gsbi@16200000 { 481f126890aSEmmanuel Vadot status = "disabled"; 482f126890aSEmmanuel Vadot compatible = "qcom,gsbi-v1.0.0"; 483f126890aSEmmanuel Vadot cell-index = <3>; 484f126890aSEmmanuel Vadot reg = <0x16200000 0x100>; 485f126890aSEmmanuel Vadot clocks = <&gcc GSBI3_H_CLK>; 486f126890aSEmmanuel Vadot clock-names = "iface"; 487f126890aSEmmanuel Vadot #address-cells = <1>; 488f126890aSEmmanuel Vadot #size-cells = <1>; 489f126890aSEmmanuel Vadot ranges; 490f126890aSEmmanuel Vadot gsbi3_i2c: i2c@16280000 { 491f126890aSEmmanuel Vadot compatible = "qcom,i2c-qup-v1.1.1"; 492f126890aSEmmanuel Vadot pinctrl-0 = <&i2c3_pins>; 493f126890aSEmmanuel Vadot pinctrl-1 = <&i2c3_pins_sleep>; 494f126890aSEmmanuel Vadot pinctrl-names = "default", "sleep"; 495f126890aSEmmanuel Vadot reg = <0x16280000 0x1000>; 496f126890aSEmmanuel Vadot interrupts = <GIC_SPI 151 IRQ_TYPE_LEVEL_HIGH>; 497f126890aSEmmanuel Vadot clocks = <&gcc GSBI3_QUP_CLK>, 498f126890aSEmmanuel Vadot <&gcc GSBI3_H_CLK>; 499f126890aSEmmanuel Vadot clock-names = "core", "iface"; 500f126890aSEmmanuel Vadot #address-cells = <1>; 501f126890aSEmmanuel Vadot #size-cells = <0>; 502f126890aSEmmanuel Vadot status = "disabled"; 503f126890aSEmmanuel Vadot }; 504f126890aSEmmanuel Vadot }; 505f126890aSEmmanuel Vadot 506f126890aSEmmanuel Vadot gsbi4: gsbi@16300000 { 507f126890aSEmmanuel Vadot status = "disabled"; 508f126890aSEmmanuel Vadot compatible = "qcom,gsbi-v1.0.0"; 509f126890aSEmmanuel Vadot cell-index = <4>; 510f126890aSEmmanuel Vadot reg = <0x16300000 0x03>; 511f126890aSEmmanuel Vadot clocks = <&gcc GSBI4_H_CLK>; 512f126890aSEmmanuel Vadot clock-names = "iface"; 513f126890aSEmmanuel Vadot #address-cells = <1>; 514f126890aSEmmanuel Vadot #size-cells = <1>; 515f126890aSEmmanuel Vadot ranges; 516f126890aSEmmanuel Vadot 517aa1a8ff2SEmmanuel Vadot gsbi4_serial: serial@16340000 { 518aa1a8ff2SEmmanuel Vadot compatible = "qcom,msm-uartdm-v1.3", "qcom,msm-uartdm"; 519aa1a8ff2SEmmanuel Vadot reg = <0x16340000 0x100>, 520aa1a8ff2SEmmanuel Vadot <0x16300000 0x3>; 521aa1a8ff2SEmmanuel Vadot interrupts = <GIC_SPI 152 IRQ_TYPE_LEVEL_HIGH>; 522aa1a8ff2SEmmanuel Vadot pinctrl-0 = <&gsbi4_uart_pin_a>; 523aa1a8ff2SEmmanuel Vadot pinctrl-names = "default"; 524aa1a8ff2SEmmanuel Vadot clocks = <&gcc GSBI4_UART_CLK>, <&gcc GSBI4_H_CLK>; 525aa1a8ff2SEmmanuel Vadot clock-names = "core", "iface"; 526aa1a8ff2SEmmanuel Vadot status = "disabled"; 527aa1a8ff2SEmmanuel Vadot }; 528aa1a8ff2SEmmanuel Vadot 529f126890aSEmmanuel Vadot gsbi4_i2c: i2c@16380000 { 530f126890aSEmmanuel Vadot compatible = "qcom,i2c-qup-v1.1.1"; 531f126890aSEmmanuel Vadot pinctrl-0 = <&i2c4_pins>; 532f126890aSEmmanuel Vadot pinctrl-1 = <&i2c4_pins_sleep>; 533f126890aSEmmanuel Vadot pinctrl-names = "default", "sleep"; 534f126890aSEmmanuel Vadot reg = <0x16380000 0x1000>; 535f126890aSEmmanuel Vadot interrupts = <GIC_SPI 153 IRQ_TYPE_LEVEL_HIGH>; 536f126890aSEmmanuel Vadot clocks = <&gcc GSBI4_QUP_CLK>, 537f126890aSEmmanuel Vadot <&gcc GSBI4_H_CLK>; 538f126890aSEmmanuel Vadot clock-names = "core", "iface"; 539f126890aSEmmanuel Vadot status = "disabled"; 540f126890aSEmmanuel Vadot }; 541f126890aSEmmanuel Vadot }; 542f126890aSEmmanuel Vadot 543f126890aSEmmanuel Vadot gsbi5: gsbi@1a200000 { 544f126890aSEmmanuel Vadot status = "disabled"; 545f126890aSEmmanuel Vadot compatible = "qcom,gsbi-v1.0.0"; 546f126890aSEmmanuel Vadot cell-index = <5>; 547f126890aSEmmanuel Vadot reg = <0x1a200000 0x03>; 548f126890aSEmmanuel Vadot clocks = <&gcc GSBI5_H_CLK>; 549f126890aSEmmanuel Vadot clock-names = "iface"; 550f126890aSEmmanuel Vadot #address-cells = <1>; 551f126890aSEmmanuel Vadot #size-cells = <1>; 552f126890aSEmmanuel Vadot ranges; 553f126890aSEmmanuel Vadot 554f126890aSEmmanuel Vadot gsbi5_serial: serial@1a240000 { 555f126890aSEmmanuel Vadot compatible = "qcom,msm-uartdm-v1.3", "qcom,msm-uartdm"; 556f126890aSEmmanuel Vadot reg = <0x1a240000 0x100>, 557f126890aSEmmanuel Vadot <0x1a200000 0x03>; 558*01950c46SEmmanuel Vadot interrupts = <GIC_SPI 154 IRQ_TYPE_LEVEL_HIGH>; 559f126890aSEmmanuel Vadot clocks = <&gcc GSBI5_UART_CLK>, <&gcc GSBI5_H_CLK>; 560f126890aSEmmanuel Vadot clock-names = "core", "iface"; 561f126890aSEmmanuel Vadot status = "disabled"; 562f126890aSEmmanuel Vadot }; 563f126890aSEmmanuel Vadot 564f126890aSEmmanuel Vadot gsbi5_spi: spi@1a280000 { 565f126890aSEmmanuel Vadot compatible = "qcom,spi-qup-v1.1.1"; 566f126890aSEmmanuel Vadot reg = <0x1a280000 0x1000>; 567*01950c46SEmmanuel Vadot interrupts = <GIC_SPI 155 IRQ_TYPE_LEVEL_HIGH>; 568f126890aSEmmanuel Vadot pinctrl-0 = <&spi5_default>; 569f126890aSEmmanuel Vadot pinctrl-1 = <&spi5_sleep>; 570f126890aSEmmanuel Vadot pinctrl-names = "default", "sleep"; 571f126890aSEmmanuel Vadot clocks = <&gcc GSBI5_QUP_CLK>, <&gcc GSBI5_H_CLK>; 572f126890aSEmmanuel Vadot clock-names = "core", "iface"; 573f126890aSEmmanuel Vadot status = "disabled"; 574f126890aSEmmanuel Vadot #address-cells = <1>; 575f126890aSEmmanuel Vadot #size-cells = <0>; 576f126890aSEmmanuel Vadot }; 577f126890aSEmmanuel Vadot }; 578f126890aSEmmanuel Vadot 579f126890aSEmmanuel Vadot gsbi6: gsbi@16500000 { 580f126890aSEmmanuel Vadot status = "disabled"; 581f126890aSEmmanuel Vadot compatible = "qcom,gsbi-v1.0.0"; 582f126890aSEmmanuel Vadot cell-index = <6>; 583f126890aSEmmanuel Vadot reg = <0x16500000 0x03>; 584f126890aSEmmanuel Vadot clocks = <&gcc GSBI6_H_CLK>; 585f126890aSEmmanuel Vadot clock-names = "iface"; 586f126890aSEmmanuel Vadot #address-cells = <1>; 587f126890aSEmmanuel Vadot #size-cells = <1>; 588f126890aSEmmanuel Vadot ranges; 589f126890aSEmmanuel Vadot 590f126890aSEmmanuel Vadot gsbi6_serial: serial@16540000 { 591f126890aSEmmanuel Vadot compatible = "qcom,msm-uartdm-v1.3", "qcom,msm-uartdm"; 592f126890aSEmmanuel Vadot reg = <0x16540000 0x100>, 593f126890aSEmmanuel Vadot <0x16500000 0x03>; 594*01950c46SEmmanuel Vadot interrupts = <GIC_SPI 156 IRQ_TYPE_LEVEL_HIGH>; 595f126890aSEmmanuel Vadot clocks = <&gcc GSBI6_UART_CLK>, <&gcc GSBI6_H_CLK>; 596f126890aSEmmanuel Vadot clock-names = "core", "iface"; 597f126890aSEmmanuel Vadot status = "disabled"; 598f126890aSEmmanuel Vadot }; 599f126890aSEmmanuel Vadot 600f126890aSEmmanuel Vadot gsbi6_i2c: i2c@16580000 { 601f126890aSEmmanuel Vadot compatible = "qcom,i2c-qup-v1.1.1"; 602f126890aSEmmanuel Vadot pinctrl-0 = <&i2c6_pins>; 603f126890aSEmmanuel Vadot pinctrl-1 = <&i2c6_pins_sleep>; 604f126890aSEmmanuel Vadot pinctrl-names = "default", "sleep"; 605f126890aSEmmanuel Vadot reg = <0x16580000 0x1000>; 606f126890aSEmmanuel Vadot interrupts = <GIC_SPI 157 IRQ_TYPE_LEVEL_HIGH>; 607f126890aSEmmanuel Vadot clocks = <&gcc GSBI6_QUP_CLK>, 608f126890aSEmmanuel Vadot <&gcc GSBI6_H_CLK>; 609f126890aSEmmanuel Vadot clock-names = "core", "iface"; 610f126890aSEmmanuel Vadot status = "disabled"; 611f126890aSEmmanuel Vadot }; 612f126890aSEmmanuel Vadot }; 613f126890aSEmmanuel Vadot 614f126890aSEmmanuel Vadot gsbi7: gsbi@16600000 { 615f126890aSEmmanuel Vadot status = "disabled"; 616f126890aSEmmanuel Vadot compatible = "qcom,gsbi-v1.0.0"; 617f126890aSEmmanuel Vadot cell-index = <7>; 618f126890aSEmmanuel Vadot reg = <0x16600000 0x100>; 619f126890aSEmmanuel Vadot clocks = <&gcc GSBI7_H_CLK>; 620f126890aSEmmanuel Vadot clock-names = "iface"; 621f126890aSEmmanuel Vadot #address-cells = <1>; 622f126890aSEmmanuel Vadot #size-cells = <1>; 623f126890aSEmmanuel Vadot ranges; 624f126890aSEmmanuel Vadot syscon-tcsr = <&tcsr>; 625f126890aSEmmanuel Vadot 626f126890aSEmmanuel Vadot gsbi7_serial: serial@16640000 { 627f126890aSEmmanuel Vadot compatible = "qcom,msm-uartdm-v1.3", "qcom,msm-uartdm"; 628f126890aSEmmanuel Vadot reg = <0x16640000 0x1000>, 629f126890aSEmmanuel Vadot <0x16600000 0x1000>; 630*01950c46SEmmanuel Vadot interrupts = <GIC_SPI 158 IRQ_TYPE_LEVEL_HIGH>; 631f126890aSEmmanuel Vadot clocks = <&gcc GSBI7_UART_CLK>, <&gcc GSBI7_H_CLK>; 632f126890aSEmmanuel Vadot clock-names = "core", "iface"; 633f126890aSEmmanuel Vadot status = "disabled"; 634f126890aSEmmanuel Vadot }; 635f126890aSEmmanuel Vadot 636f126890aSEmmanuel Vadot gsbi7_i2c: i2c@16680000 { 637f126890aSEmmanuel Vadot compatible = "qcom,i2c-qup-v1.1.1"; 638f126890aSEmmanuel Vadot pinctrl-0 = <&i2c7_pins>; 639f126890aSEmmanuel Vadot pinctrl-1 = <&i2c7_pins_sleep>; 640f126890aSEmmanuel Vadot pinctrl-names = "default", "sleep"; 641f126890aSEmmanuel Vadot reg = <0x16680000 0x1000>; 642f126890aSEmmanuel Vadot interrupts = <GIC_SPI 159 IRQ_TYPE_LEVEL_HIGH>; 643f126890aSEmmanuel Vadot clocks = <&gcc GSBI7_QUP_CLK>, 644f126890aSEmmanuel Vadot <&gcc GSBI7_H_CLK>; 645f126890aSEmmanuel Vadot clock-names = "core", "iface"; 646f126890aSEmmanuel Vadot status = "disabled"; 647f126890aSEmmanuel Vadot }; 648f126890aSEmmanuel Vadot }; 649f126890aSEmmanuel Vadot 650f126890aSEmmanuel Vadot rng@1a500000 { 651f126890aSEmmanuel Vadot compatible = "qcom,prng"; 652f126890aSEmmanuel Vadot reg = <0x1a500000 0x200>; 653f126890aSEmmanuel Vadot clocks = <&gcc PRNG_CLK>; 654f126890aSEmmanuel Vadot clock-names = "core"; 655f126890aSEmmanuel Vadot }; 656f126890aSEmmanuel Vadot 6578d13bc63SEmmanuel Vadot ssbi2: ssbi@c00000 { 658f126890aSEmmanuel Vadot compatible = "qcom,ssbi"; 659f126890aSEmmanuel Vadot reg = <0x00c00000 0x1000>; 660f126890aSEmmanuel Vadot qcom,controller-type = "pmic-arbiter"; 661f126890aSEmmanuel Vadot }; 662f126890aSEmmanuel Vadot 6638d13bc63SEmmanuel Vadot ssbi: ssbi@500000 { 664f126890aSEmmanuel Vadot compatible = "qcom,ssbi"; 665f126890aSEmmanuel Vadot reg = <0x00500000 0x1000>; 666f126890aSEmmanuel Vadot qcom,controller-type = "pmic-arbiter"; 667f126890aSEmmanuel Vadot }; 668f126890aSEmmanuel Vadot 669f126890aSEmmanuel Vadot qfprom: qfprom@700000 { 670f126890aSEmmanuel Vadot compatible = "qcom,apq8064-qfprom", "qcom,qfprom"; 671f126890aSEmmanuel Vadot reg = <0x00700000 0x1000>; 672f126890aSEmmanuel Vadot #address-cells = <1>; 673f126890aSEmmanuel Vadot #size-cells = <1>; 674f126890aSEmmanuel Vadot ranges; 675f126890aSEmmanuel Vadot tsens_calib: calib@404 { 676f126890aSEmmanuel Vadot reg = <0x404 0x10>; 677f126890aSEmmanuel Vadot }; 678f126890aSEmmanuel Vadot tsens_backup: backup_calib@414 { 679f126890aSEmmanuel Vadot reg = <0x414 0x10>; 680f126890aSEmmanuel Vadot }; 681f126890aSEmmanuel Vadot }; 682f126890aSEmmanuel Vadot 683f126890aSEmmanuel Vadot gcc: clock-controller@900000 { 684f126890aSEmmanuel Vadot compatible = "qcom,gcc-apq8064", "syscon"; 685f126890aSEmmanuel Vadot reg = <0x00900000 0x4000>; 686f126890aSEmmanuel Vadot #clock-cells = <1>; 687f126890aSEmmanuel Vadot #power-domain-cells = <1>; 688f126890aSEmmanuel Vadot #reset-cells = <1>; 689f126890aSEmmanuel Vadot clocks = <&cxo_board>, 690f126890aSEmmanuel Vadot <&pxo_board>, 691f126890aSEmmanuel Vadot <&lcc PLL4>; 692f126890aSEmmanuel Vadot clock-names = "cxo", "pxo", "pll4"; 693f126890aSEmmanuel Vadot 694f126890aSEmmanuel Vadot tsens: thermal-sensor { 695f126890aSEmmanuel Vadot compatible = "qcom,msm8960-tsens"; 696f126890aSEmmanuel Vadot 697f126890aSEmmanuel Vadot nvmem-cells = <&tsens_calib>, <&tsens_backup>; 698f126890aSEmmanuel Vadot nvmem-cell-names = "calib", "calib_backup"; 699f126890aSEmmanuel Vadot interrupts = <GIC_SPI 178 IRQ_TYPE_LEVEL_HIGH>; 700f126890aSEmmanuel Vadot interrupt-names = "uplow"; 701f126890aSEmmanuel Vadot 702f126890aSEmmanuel Vadot #qcom,sensors = <11>; 703f126890aSEmmanuel Vadot #thermal-sensor-cells = <1>; 704f126890aSEmmanuel Vadot }; 705f126890aSEmmanuel Vadot }; 706f126890aSEmmanuel Vadot 707f126890aSEmmanuel Vadot lcc: clock-controller@28000000 { 708f126890aSEmmanuel Vadot compatible = "qcom,lcc-apq8064"; 709f126890aSEmmanuel Vadot reg = <0x28000000 0x1000>; 710f126890aSEmmanuel Vadot #clock-cells = <1>; 711f126890aSEmmanuel Vadot #reset-cells = <1>; 712f126890aSEmmanuel Vadot clocks = <&pxo_board>, 713f126890aSEmmanuel Vadot <&gcc PLL4_VOTE>, 714f126890aSEmmanuel Vadot <0>, 715f126890aSEmmanuel Vadot <0>, <0>, 716f126890aSEmmanuel Vadot <0>, <0>, 717f126890aSEmmanuel Vadot <0>; 718f126890aSEmmanuel Vadot clock-names = "pxo", 719f126890aSEmmanuel Vadot "pll4_vote", 720f126890aSEmmanuel Vadot "mi2s_codec_clk", 721f126890aSEmmanuel Vadot "codec_i2s_mic_codec_clk", 722f126890aSEmmanuel Vadot "spare_i2s_mic_codec_clk", 723f126890aSEmmanuel Vadot "codec_i2s_spkr_codec_clk", 724f126890aSEmmanuel Vadot "spare_i2s_spkr_codec_clk", 725f126890aSEmmanuel Vadot "pcm_codec_clk"; 726f126890aSEmmanuel Vadot }; 727f126890aSEmmanuel Vadot 728f126890aSEmmanuel Vadot mmcc: clock-controller@4000000 { 729f126890aSEmmanuel Vadot compatible = "qcom,mmcc-apq8064"; 730f126890aSEmmanuel Vadot reg = <0x4000000 0x1000>; 731f126890aSEmmanuel Vadot #clock-cells = <1>; 732f126890aSEmmanuel Vadot #power-domain-cells = <1>; 733f126890aSEmmanuel Vadot #reset-cells = <1>; 734f126890aSEmmanuel Vadot clocks = <&pxo_board>, 735f126890aSEmmanuel Vadot <&gcc PLL3>, 736f126890aSEmmanuel Vadot <&gcc PLL8_VOTE>, 737f126890aSEmmanuel Vadot <&dsi0_phy 1>, 738f126890aSEmmanuel Vadot <&dsi0_phy 0>, 739f126890aSEmmanuel Vadot <&dsi1_phy 1>, 740f126890aSEmmanuel Vadot <&dsi1_phy 0>, 741f126890aSEmmanuel Vadot <&hdmi_phy>; 742f126890aSEmmanuel Vadot clock-names = "pxo", 743f126890aSEmmanuel Vadot "pll3", 744f126890aSEmmanuel Vadot "pll8_vote", 745f126890aSEmmanuel Vadot "dsi1pll", 746f126890aSEmmanuel Vadot "dsi1pllbyte", 747f126890aSEmmanuel Vadot "dsi2pll", 748f126890aSEmmanuel Vadot "dsi2pllbyte", 749f126890aSEmmanuel Vadot "hdmipll"; 750f126890aSEmmanuel Vadot }; 751f126890aSEmmanuel Vadot 752f126890aSEmmanuel Vadot l2cc: clock-controller@2011000 { 753f126890aSEmmanuel Vadot compatible = "qcom,kpss-gcc-apq8064", "qcom,kpss-gcc", "syscon"; 754f126890aSEmmanuel Vadot reg = <0x2011000 0x1000>; 755f126890aSEmmanuel Vadot clocks = <&gcc PLL8_VOTE>, <&pxo_board>; 756f126890aSEmmanuel Vadot clock-names = "pll8_vote", "pxo"; 757f126890aSEmmanuel Vadot #clock-cells = <0>; 758f126890aSEmmanuel Vadot }; 759f126890aSEmmanuel Vadot 760f126890aSEmmanuel Vadot rpm: rpm@108000 { 761f126890aSEmmanuel Vadot compatible = "qcom,rpm-apq8064"; 762f126890aSEmmanuel Vadot reg = <0x108000 0x1000>; 763f126890aSEmmanuel Vadot qcom,ipc = <&l2cc 0x8 2>; 764f126890aSEmmanuel Vadot 765f126890aSEmmanuel Vadot interrupts = <GIC_SPI 19 IRQ_TYPE_EDGE_RISING>, 766f126890aSEmmanuel Vadot <GIC_SPI 21 IRQ_TYPE_EDGE_RISING>, 767f126890aSEmmanuel Vadot <GIC_SPI 22 IRQ_TYPE_EDGE_RISING>; 768f126890aSEmmanuel Vadot interrupt-names = "ack", "err", "wakeup"; 769f126890aSEmmanuel Vadot 770f126890aSEmmanuel Vadot rpmcc: clock-controller { 771f126890aSEmmanuel Vadot compatible = "qcom,rpmcc-apq8064", "qcom,rpmcc"; 772f126890aSEmmanuel Vadot #clock-cells = <1>; 773f126890aSEmmanuel Vadot clocks = <&pxo_board>, <&cxo_board>; 774f126890aSEmmanuel Vadot clock-names = "pxo", "cxo"; 775f126890aSEmmanuel Vadot }; 776f126890aSEmmanuel Vadot }; 777f126890aSEmmanuel Vadot 778f126890aSEmmanuel Vadot usb1: usb@12500000 { 779f126890aSEmmanuel Vadot compatible = "qcom,ci-hdrc"; 780f126890aSEmmanuel Vadot reg = <0x12500000 0x200>, 781f126890aSEmmanuel Vadot <0x12500200 0x200>; 782f126890aSEmmanuel Vadot interrupts = <GIC_SPI 100 IRQ_TYPE_LEVEL_HIGH>; 783f126890aSEmmanuel Vadot clocks = <&gcc USB_HS1_XCVR_CLK>, <&gcc USB_HS1_H_CLK>; 784f126890aSEmmanuel Vadot clock-names = "core", "iface"; 785f126890aSEmmanuel Vadot assigned-clocks = <&gcc USB_HS1_XCVR_CLK>; 786f126890aSEmmanuel Vadot assigned-clock-rates = <60000000>; 787f126890aSEmmanuel Vadot resets = <&gcc USB_HS1_RESET>; 788f126890aSEmmanuel Vadot reset-names = "core"; 789f126890aSEmmanuel Vadot phy_type = "ulpi"; 790f126890aSEmmanuel Vadot ahb-burst-config = <0>; 791f126890aSEmmanuel Vadot phys = <&usb_hs1_phy>; 792f126890aSEmmanuel Vadot phy-names = "usb-phy"; 793f126890aSEmmanuel Vadot status = "disabled"; 794f126890aSEmmanuel Vadot #reset-cells = <1>; 795f126890aSEmmanuel Vadot 796f126890aSEmmanuel Vadot ulpi { 797f126890aSEmmanuel Vadot usb_hs1_phy: phy { 798f126890aSEmmanuel Vadot compatible = "qcom,usb-hs-phy-apq8064", 799f126890aSEmmanuel Vadot "qcom,usb-hs-phy"; 800f126890aSEmmanuel Vadot clocks = <&sleep_clk>, <&cxo_board>; 801f126890aSEmmanuel Vadot clock-names = "sleep", "ref"; 802f126890aSEmmanuel Vadot resets = <&usb1 0>; 803f126890aSEmmanuel Vadot reset-names = "por"; 804f126890aSEmmanuel Vadot #phy-cells = <0>; 805f126890aSEmmanuel Vadot }; 806f126890aSEmmanuel Vadot }; 807f126890aSEmmanuel Vadot }; 808f126890aSEmmanuel Vadot 809f126890aSEmmanuel Vadot usb3: usb@12520000 { 810f126890aSEmmanuel Vadot compatible = "qcom,ci-hdrc"; 811f126890aSEmmanuel Vadot reg = <0x12520000 0x200>, 812f126890aSEmmanuel Vadot <0x12520200 0x200>; 813f126890aSEmmanuel Vadot interrupts = <GIC_SPI 188 IRQ_TYPE_LEVEL_HIGH>; 814f126890aSEmmanuel Vadot clocks = <&gcc USB_HS3_XCVR_CLK>, <&gcc USB_HS3_H_CLK>; 815f126890aSEmmanuel Vadot clock-names = "core", "iface"; 816f126890aSEmmanuel Vadot assigned-clocks = <&gcc USB_HS3_XCVR_CLK>; 817f126890aSEmmanuel Vadot assigned-clock-rates = <60000000>; 818f126890aSEmmanuel Vadot resets = <&gcc USB_HS3_RESET>; 819f126890aSEmmanuel Vadot reset-names = "core"; 820f126890aSEmmanuel Vadot phy_type = "ulpi"; 821f126890aSEmmanuel Vadot ahb-burst-config = <0>; 822f126890aSEmmanuel Vadot phys = <&usb_hs3_phy>; 823f126890aSEmmanuel Vadot phy-names = "usb-phy"; 824f126890aSEmmanuel Vadot status = "disabled"; 825f126890aSEmmanuel Vadot #reset-cells = <1>; 826f126890aSEmmanuel Vadot 827f126890aSEmmanuel Vadot ulpi { 828f126890aSEmmanuel Vadot usb_hs3_phy: phy { 829f126890aSEmmanuel Vadot compatible = "qcom,usb-hs-phy-apq8064", 830f126890aSEmmanuel Vadot "qcom,usb-hs-phy"; 831f126890aSEmmanuel Vadot #phy-cells = <0>; 832f126890aSEmmanuel Vadot clocks = <&sleep_clk>, <&cxo_board>; 833f126890aSEmmanuel Vadot clock-names = "sleep", "ref"; 834f126890aSEmmanuel Vadot resets = <&usb3 0>; 835f126890aSEmmanuel Vadot reset-names = "por"; 836f126890aSEmmanuel Vadot }; 837f126890aSEmmanuel Vadot }; 838f126890aSEmmanuel Vadot }; 839f126890aSEmmanuel Vadot 840f126890aSEmmanuel Vadot usb4: usb@12530000 { 841f126890aSEmmanuel Vadot compatible = "qcom,ci-hdrc"; 842f126890aSEmmanuel Vadot reg = <0x12530000 0x200>, 843f126890aSEmmanuel Vadot <0x12530200 0x200>; 844f126890aSEmmanuel Vadot interrupts = <GIC_SPI 215 IRQ_TYPE_LEVEL_HIGH>; 845f126890aSEmmanuel Vadot clocks = <&gcc USB_HS4_XCVR_CLK>, <&gcc USB_HS4_H_CLK>; 846f126890aSEmmanuel Vadot clock-names = "core", "iface"; 847f126890aSEmmanuel Vadot assigned-clocks = <&gcc USB_HS4_XCVR_CLK>; 848f126890aSEmmanuel Vadot assigned-clock-rates = <60000000>; 849f126890aSEmmanuel Vadot resets = <&gcc USB_HS4_RESET>; 850f126890aSEmmanuel Vadot reset-names = "core"; 851f126890aSEmmanuel Vadot phy_type = "ulpi"; 852f126890aSEmmanuel Vadot ahb-burst-config = <0>; 853f126890aSEmmanuel Vadot phys = <&usb_hs4_phy>; 854f126890aSEmmanuel Vadot phy-names = "usb-phy"; 855f126890aSEmmanuel Vadot status = "disabled"; 856f126890aSEmmanuel Vadot #reset-cells = <1>; 857f126890aSEmmanuel Vadot 858f126890aSEmmanuel Vadot ulpi { 859f126890aSEmmanuel Vadot usb_hs4_phy: phy { 860f126890aSEmmanuel Vadot compatible = "qcom,usb-hs-phy-apq8064", 861f126890aSEmmanuel Vadot "qcom,usb-hs-phy"; 862f126890aSEmmanuel Vadot #phy-cells = <0>; 863f126890aSEmmanuel Vadot clocks = <&sleep_clk>, <&cxo_board>; 864f126890aSEmmanuel Vadot clock-names = "sleep", "ref"; 865f126890aSEmmanuel Vadot resets = <&usb4 0>; 866f126890aSEmmanuel Vadot reset-names = "por"; 867f126890aSEmmanuel Vadot }; 868f126890aSEmmanuel Vadot }; 869f126890aSEmmanuel Vadot }; 870f126890aSEmmanuel Vadot 871f126890aSEmmanuel Vadot sata_phy0: phy@1b400000 { 872f126890aSEmmanuel Vadot compatible = "qcom,apq8064-sata-phy"; 873f126890aSEmmanuel Vadot status = "disabled"; 874f126890aSEmmanuel Vadot reg = <0x1b400000 0x200>; 875f126890aSEmmanuel Vadot reg-names = "phy_mem"; 876f126890aSEmmanuel Vadot clocks = <&gcc SATA_PHY_CFG_CLK>; 877f126890aSEmmanuel Vadot clock-names = "cfg"; 878f126890aSEmmanuel Vadot #phy-cells = <0>; 879f126890aSEmmanuel Vadot }; 880f126890aSEmmanuel Vadot 881f126890aSEmmanuel Vadot sata0: sata@29000000 { 882f126890aSEmmanuel Vadot compatible = "qcom,apq8064-ahci", "generic-ahci"; 883f126890aSEmmanuel Vadot status = "disabled"; 884f126890aSEmmanuel Vadot reg = <0x29000000 0x180>; 885f126890aSEmmanuel Vadot interrupts = <GIC_SPI 209 IRQ_TYPE_LEVEL_HIGH>; 886f126890aSEmmanuel Vadot 887f126890aSEmmanuel Vadot clocks = <&gcc SFAB_SATA_S_H_CLK>, 888f126890aSEmmanuel Vadot <&gcc SATA_H_CLK>, 889f126890aSEmmanuel Vadot <&gcc SATA_A_CLK>, 890f126890aSEmmanuel Vadot <&gcc SATA_RXOOB_CLK>, 891f126890aSEmmanuel Vadot <&gcc SATA_PMALIVE_CLK>; 892f126890aSEmmanuel Vadot clock-names = "slave_iface", 893f126890aSEmmanuel Vadot "iface", 894f126890aSEmmanuel Vadot "bus", 895f126890aSEmmanuel Vadot "rxoob", 896f126890aSEmmanuel Vadot "core_pmalive"; 897f126890aSEmmanuel Vadot 898f126890aSEmmanuel Vadot assigned-clocks = <&gcc SATA_RXOOB_CLK>, 899f126890aSEmmanuel Vadot <&gcc SATA_PMALIVE_CLK>; 900f126890aSEmmanuel Vadot assigned-clock-rates = <100000000>, <100000000>; 901f126890aSEmmanuel Vadot 902f126890aSEmmanuel Vadot phys = <&sata_phy0>; 903f126890aSEmmanuel Vadot phy-names = "sata-phy"; 904f126890aSEmmanuel Vadot ports-implemented = <0x1>; 905f126890aSEmmanuel Vadot }; 906f126890aSEmmanuel Vadot 907f126890aSEmmanuel Vadot sdcc3: mmc@12180000 { 908f126890aSEmmanuel Vadot compatible = "arm,pl18x", "arm,primecell"; 909f126890aSEmmanuel Vadot arm,primecell-periphid = <0x00051180>; 910f126890aSEmmanuel Vadot status = "disabled"; 911f126890aSEmmanuel Vadot reg = <0x12180000 0x2000>; 912f126890aSEmmanuel Vadot interrupts = <GIC_SPI 102 IRQ_TYPE_LEVEL_HIGH>; 913f126890aSEmmanuel Vadot clocks = <&gcc SDC3_CLK>, <&gcc SDC3_H_CLK>; 914f126890aSEmmanuel Vadot clock-names = "mclk", "apb_pclk"; 915f126890aSEmmanuel Vadot bus-width = <4>; 916f126890aSEmmanuel Vadot cap-sd-highspeed; 917f126890aSEmmanuel Vadot cap-mmc-highspeed; 918f126890aSEmmanuel Vadot max-frequency = <192000000>; 919f126890aSEmmanuel Vadot no-1-8-v; 920f126890aSEmmanuel Vadot dmas = <&sdcc3bam 2>, <&sdcc3bam 1>; 921f126890aSEmmanuel Vadot dma-names = "tx", "rx"; 922f126890aSEmmanuel Vadot }; 923f126890aSEmmanuel Vadot 924f126890aSEmmanuel Vadot sdcc3bam: dma-controller@12182000 { 925f126890aSEmmanuel Vadot compatible = "qcom,bam-v1.3.0"; 926f126890aSEmmanuel Vadot reg = <0x12182000 0x8000>; 927*01950c46SEmmanuel Vadot interrupts = <GIC_SPI 96 IRQ_TYPE_LEVEL_HIGH>; 928f126890aSEmmanuel Vadot clocks = <&gcc SDC3_H_CLK>; 929f126890aSEmmanuel Vadot clock-names = "bam_clk"; 930f126890aSEmmanuel Vadot #dma-cells = <1>; 931f126890aSEmmanuel Vadot qcom,ee = <0>; 932f126890aSEmmanuel Vadot }; 933f126890aSEmmanuel Vadot 934f126890aSEmmanuel Vadot sdcc4: mmc@121c0000 { 935f126890aSEmmanuel Vadot compatible = "arm,pl18x", "arm,primecell"; 936f126890aSEmmanuel Vadot arm,primecell-periphid = <0x00051180>; 937f126890aSEmmanuel Vadot status = "disabled"; 938f126890aSEmmanuel Vadot reg = <0x121c0000 0x2000>; 939f126890aSEmmanuel Vadot interrupts = <GIC_SPI 101 IRQ_TYPE_LEVEL_HIGH>; 940f126890aSEmmanuel Vadot clocks = <&gcc SDC4_CLK>, <&gcc SDC4_H_CLK>; 941f126890aSEmmanuel Vadot clock-names = "mclk", "apb_pclk"; 942f126890aSEmmanuel Vadot bus-width = <4>; 943f126890aSEmmanuel Vadot cap-sd-highspeed; 944f126890aSEmmanuel Vadot cap-mmc-highspeed; 945f126890aSEmmanuel Vadot max-frequency = <48000000>; 946f126890aSEmmanuel Vadot dmas = <&sdcc4bam 2>, <&sdcc4bam 1>; 947f126890aSEmmanuel Vadot dma-names = "tx", "rx"; 948f126890aSEmmanuel Vadot pinctrl-names = "default"; 949f126890aSEmmanuel Vadot pinctrl-0 = <&sdc4_gpios>; 950f126890aSEmmanuel Vadot }; 951f126890aSEmmanuel Vadot 952f126890aSEmmanuel Vadot sdcc4bam: dma-controller@121c2000 { 953f126890aSEmmanuel Vadot compatible = "qcom,bam-v1.3.0"; 954f126890aSEmmanuel Vadot reg = <0x121c2000 0x8000>; 955*01950c46SEmmanuel Vadot interrupts = <GIC_SPI 95 IRQ_TYPE_LEVEL_HIGH>; 956f126890aSEmmanuel Vadot clocks = <&gcc SDC4_H_CLK>; 957f126890aSEmmanuel Vadot clock-names = "bam_clk"; 958f126890aSEmmanuel Vadot #dma-cells = <1>; 959f126890aSEmmanuel Vadot qcom,ee = <0>; 960f126890aSEmmanuel Vadot }; 961f126890aSEmmanuel Vadot 962f126890aSEmmanuel Vadot sdcc1: mmc@12400000 { 963f126890aSEmmanuel Vadot status = "disabled"; 964f126890aSEmmanuel Vadot compatible = "arm,pl18x", "arm,primecell"; 965f126890aSEmmanuel Vadot pinctrl-names = "default"; 966f126890aSEmmanuel Vadot pinctrl-0 = <&sdcc1_pins>; 967f126890aSEmmanuel Vadot arm,primecell-periphid = <0x00051180>; 968f126890aSEmmanuel Vadot reg = <0x12400000 0x2000>; 969f126890aSEmmanuel Vadot interrupts = <GIC_SPI 104 IRQ_TYPE_LEVEL_HIGH>; 970f126890aSEmmanuel Vadot clocks = <&gcc SDC1_CLK>, <&gcc SDC1_H_CLK>; 971f126890aSEmmanuel Vadot clock-names = "mclk", "apb_pclk"; 972f126890aSEmmanuel Vadot bus-width = <8>; 973f126890aSEmmanuel Vadot max-frequency = <96000000>; 974f126890aSEmmanuel Vadot non-removable; 975f126890aSEmmanuel Vadot cap-sd-highspeed; 976f126890aSEmmanuel Vadot cap-mmc-highspeed; 977f126890aSEmmanuel Vadot dmas = <&sdcc1bam 2>, <&sdcc1bam 1>; 978f126890aSEmmanuel Vadot dma-names = "tx", "rx"; 979f126890aSEmmanuel Vadot }; 980f126890aSEmmanuel Vadot 981f126890aSEmmanuel Vadot sdcc1bam: dma-controller@12402000 { 982f126890aSEmmanuel Vadot compatible = "qcom,bam-v1.3.0"; 983f126890aSEmmanuel Vadot reg = <0x12402000 0x8000>; 984*01950c46SEmmanuel Vadot interrupts = <GIC_SPI 98 IRQ_TYPE_LEVEL_HIGH>; 985f126890aSEmmanuel Vadot clocks = <&gcc SDC1_H_CLK>; 986f126890aSEmmanuel Vadot clock-names = "bam_clk"; 987f126890aSEmmanuel Vadot #dma-cells = <1>; 988f126890aSEmmanuel Vadot qcom,ee = <0>; 989f126890aSEmmanuel Vadot }; 990f126890aSEmmanuel Vadot 991f126890aSEmmanuel Vadot tcsr: syscon@1a400000 { 992f126890aSEmmanuel Vadot compatible = "qcom,tcsr-apq8064", "syscon"; 993f126890aSEmmanuel Vadot reg = <0x1a400000 0x100>; 994f126890aSEmmanuel Vadot }; 995f126890aSEmmanuel Vadot 996f126890aSEmmanuel Vadot gpu: adreno-3xx@4300000 { 997f126890aSEmmanuel Vadot compatible = "qcom,adreno-320.2", "qcom,adreno"; 998f126890aSEmmanuel Vadot reg = <0x04300000 0x20000>; 999f126890aSEmmanuel Vadot reg-names = "kgsl_3d0_reg_memory"; 1000f126890aSEmmanuel Vadot interrupts = <GIC_SPI 80 IRQ_TYPE_LEVEL_HIGH>; 1001f126890aSEmmanuel Vadot interrupt-names = "kgsl_3d0_irq"; 1002f126890aSEmmanuel Vadot clock-names = 1003f126890aSEmmanuel Vadot "core", 1004f126890aSEmmanuel Vadot "iface", 1005f126890aSEmmanuel Vadot "mem", 1006f126890aSEmmanuel Vadot "mem_iface"; 1007f126890aSEmmanuel Vadot clocks = 1008f126890aSEmmanuel Vadot <&mmcc GFX3D_CLK>, 1009f126890aSEmmanuel Vadot <&mmcc GFX3D_AHB_CLK>, 1010f126890aSEmmanuel Vadot <&mmcc GFX3D_AXI_CLK>, 1011f126890aSEmmanuel Vadot <&mmcc MMSS_IMEM_AHB_CLK>; 1012f126890aSEmmanuel Vadot 1013f126890aSEmmanuel Vadot iommus = <&gfx3d 0 1014f126890aSEmmanuel Vadot &gfx3d 1 1015f126890aSEmmanuel Vadot &gfx3d 2 1016f126890aSEmmanuel Vadot &gfx3d 3 1017f126890aSEmmanuel Vadot &gfx3d 4 1018f126890aSEmmanuel Vadot &gfx3d 5 1019f126890aSEmmanuel Vadot &gfx3d 6 1020f126890aSEmmanuel Vadot &gfx3d 7 1021f126890aSEmmanuel Vadot &gfx3d 8 1022f126890aSEmmanuel Vadot &gfx3d 9 1023f126890aSEmmanuel Vadot &gfx3d 10 1024f126890aSEmmanuel Vadot &gfx3d 11 1025f126890aSEmmanuel Vadot &gfx3d 12 1026f126890aSEmmanuel Vadot &gfx3d 13 1027f126890aSEmmanuel Vadot &gfx3d 14 1028f126890aSEmmanuel Vadot &gfx3d 15 1029f126890aSEmmanuel Vadot &gfx3d 16 1030f126890aSEmmanuel Vadot &gfx3d 17 1031f126890aSEmmanuel Vadot &gfx3d 18 1032f126890aSEmmanuel Vadot &gfx3d 19 1033f126890aSEmmanuel Vadot &gfx3d 20 1034f126890aSEmmanuel Vadot &gfx3d 21 1035f126890aSEmmanuel Vadot &gfx3d 22 1036f126890aSEmmanuel Vadot &gfx3d 23 1037f126890aSEmmanuel Vadot &gfx3d 24 1038f126890aSEmmanuel Vadot &gfx3d 25 1039f126890aSEmmanuel Vadot &gfx3d 26 1040f126890aSEmmanuel Vadot &gfx3d 27 1041f126890aSEmmanuel Vadot &gfx3d 28 1042f126890aSEmmanuel Vadot &gfx3d 29 1043f126890aSEmmanuel Vadot &gfx3d 30 1044f126890aSEmmanuel Vadot &gfx3d 31 1045f126890aSEmmanuel Vadot &gfx3d1 0 1046f126890aSEmmanuel Vadot &gfx3d1 1 1047f126890aSEmmanuel Vadot &gfx3d1 2 1048f126890aSEmmanuel Vadot &gfx3d1 3 1049f126890aSEmmanuel Vadot &gfx3d1 4 1050f126890aSEmmanuel Vadot &gfx3d1 5 1051f126890aSEmmanuel Vadot &gfx3d1 6 1052f126890aSEmmanuel Vadot &gfx3d1 7 1053f126890aSEmmanuel Vadot &gfx3d1 8 1054f126890aSEmmanuel Vadot &gfx3d1 9 1055f126890aSEmmanuel Vadot &gfx3d1 10 1056f126890aSEmmanuel Vadot &gfx3d1 11 1057f126890aSEmmanuel Vadot &gfx3d1 12 1058f126890aSEmmanuel Vadot &gfx3d1 13 1059f126890aSEmmanuel Vadot &gfx3d1 14 1060f126890aSEmmanuel Vadot &gfx3d1 15 1061f126890aSEmmanuel Vadot &gfx3d1 16 1062f126890aSEmmanuel Vadot &gfx3d1 17 1063f126890aSEmmanuel Vadot &gfx3d1 18 1064f126890aSEmmanuel Vadot &gfx3d1 19 1065f126890aSEmmanuel Vadot &gfx3d1 20 1066f126890aSEmmanuel Vadot &gfx3d1 21 1067f126890aSEmmanuel Vadot &gfx3d1 22 1068f126890aSEmmanuel Vadot &gfx3d1 23 1069f126890aSEmmanuel Vadot &gfx3d1 24 1070f126890aSEmmanuel Vadot &gfx3d1 25 1071f126890aSEmmanuel Vadot &gfx3d1 26 1072f126890aSEmmanuel Vadot &gfx3d1 27 1073f126890aSEmmanuel Vadot &gfx3d1 28 1074f126890aSEmmanuel Vadot &gfx3d1 29 1075f126890aSEmmanuel Vadot &gfx3d1 30 1076f126890aSEmmanuel Vadot &gfx3d1 31>; 1077f126890aSEmmanuel Vadot 1078f126890aSEmmanuel Vadot operating-points-v2 = <&gpu_opp_table>; 1079f126890aSEmmanuel Vadot 1080f126890aSEmmanuel Vadot gpu_opp_table: opp-table { 1081f126890aSEmmanuel Vadot compatible = "operating-points-v2"; 1082f126890aSEmmanuel Vadot 1083f126890aSEmmanuel Vadot opp-450000000 { 1084f126890aSEmmanuel Vadot opp-hz = /bits/ 64 <450000000>; 1085f126890aSEmmanuel Vadot }; 1086f126890aSEmmanuel Vadot 1087f126890aSEmmanuel Vadot opp-27000000 { 1088f126890aSEmmanuel Vadot opp-hz = /bits/ 64 <27000000>; 1089f126890aSEmmanuel Vadot }; 1090f126890aSEmmanuel Vadot }; 1091f126890aSEmmanuel Vadot }; 1092f126890aSEmmanuel Vadot 1093f126890aSEmmanuel Vadot mmss_sfpb: syscon@5700000 { 1094f126890aSEmmanuel Vadot compatible = "syscon"; 1095f126890aSEmmanuel Vadot reg = <0x5700000 0x70>; 1096f126890aSEmmanuel Vadot }; 1097f126890aSEmmanuel Vadot 1098f126890aSEmmanuel Vadot dsi0: dsi@4700000 { 1099f126890aSEmmanuel Vadot compatible = "qcom,apq8064-dsi-ctrl", 1100f126890aSEmmanuel Vadot "qcom,mdss-dsi-ctrl"; 1101f126890aSEmmanuel Vadot #address-cells = <1>; 1102f126890aSEmmanuel Vadot #size-cells = <0>; 1103f126890aSEmmanuel Vadot interrupts = <GIC_SPI 82 IRQ_TYPE_LEVEL_HIGH>; 1104f126890aSEmmanuel Vadot reg = <0x04700000 0x200>; 1105f126890aSEmmanuel Vadot reg-names = "dsi_ctrl"; 1106f126890aSEmmanuel Vadot 1107f126890aSEmmanuel Vadot clocks = <&mmcc DSI_M_AHB_CLK>, 1108f126890aSEmmanuel Vadot <&mmcc DSI_S_AHB_CLK>, 1109f126890aSEmmanuel Vadot <&mmcc AMP_AHB_CLK>, 1110f126890aSEmmanuel Vadot <&mmcc DSI_CLK>, 1111f126890aSEmmanuel Vadot <&mmcc DSI1_BYTE_CLK>, 1112f126890aSEmmanuel Vadot <&mmcc DSI_PIXEL_CLK>, 1113f126890aSEmmanuel Vadot <&mmcc DSI1_ESC_CLK>; 1114f126890aSEmmanuel Vadot clock-names = "iface", "bus", "core_mmss", 1115f126890aSEmmanuel Vadot "src", "byte", "pixel", 1116f126890aSEmmanuel Vadot "core"; 1117f126890aSEmmanuel Vadot 1118f126890aSEmmanuel Vadot assigned-clocks = <&mmcc DSI1_BYTE_SRC>, 1119f126890aSEmmanuel Vadot <&mmcc DSI1_ESC_SRC>, 1120f126890aSEmmanuel Vadot <&mmcc DSI_SRC>, 1121f126890aSEmmanuel Vadot <&mmcc DSI_PIXEL_SRC>; 1122f126890aSEmmanuel Vadot assigned-clock-parents = <&dsi0_phy 0>, 1123f126890aSEmmanuel Vadot <&dsi0_phy 0>, 1124f126890aSEmmanuel Vadot <&dsi0_phy 1>, 1125f126890aSEmmanuel Vadot <&dsi0_phy 1>; 1126f126890aSEmmanuel Vadot syscon-sfpb = <&mmss_sfpb>; 1127f126890aSEmmanuel Vadot phys = <&dsi0_phy>; 1128f126890aSEmmanuel Vadot status = "disabled"; 1129f126890aSEmmanuel Vadot 1130f126890aSEmmanuel Vadot ports { 1131f126890aSEmmanuel Vadot #address-cells = <1>; 1132f126890aSEmmanuel Vadot #size-cells = <0>; 1133f126890aSEmmanuel Vadot 1134f126890aSEmmanuel Vadot port@0 { 1135f126890aSEmmanuel Vadot reg = <0>; 1136f126890aSEmmanuel Vadot dsi0_in: endpoint { 1137f126890aSEmmanuel Vadot }; 1138f126890aSEmmanuel Vadot }; 1139f126890aSEmmanuel Vadot 1140f126890aSEmmanuel Vadot port@1 { 1141f126890aSEmmanuel Vadot reg = <1>; 1142f126890aSEmmanuel Vadot dsi0_out: endpoint { 1143f126890aSEmmanuel Vadot }; 1144f126890aSEmmanuel Vadot }; 1145f126890aSEmmanuel Vadot }; 1146f126890aSEmmanuel Vadot }; 1147f126890aSEmmanuel Vadot 1148f126890aSEmmanuel Vadot 1149f126890aSEmmanuel Vadot dsi0_phy: phy@4700200 { 1150f126890aSEmmanuel Vadot compatible = "qcom,dsi-phy-28nm-8960"; 1151f126890aSEmmanuel Vadot #clock-cells = <1>; 1152f126890aSEmmanuel Vadot #phy-cells = <0>; 1153f126890aSEmmanuel Vadot 1154f126890aSEmmanuel Vadot reg = <0x04700200 0x100>, 1155f126890aSEmmanuel Vadot <0x04700300 0x200>, 1156f126890aSEmmanuel Vadot <0x04700500 0x5c>; 1157f126890aSEmmanuel Vadot reg-names = "dsi_pll", "dsi_phy", "dsi_phy_regulator"; 1158f126890aSEmmanuel Vadot clock-names = "iface", "ref"; 1159f126890aSEmmanuel Vadot clocks = <&mmcc DSI_M_AHB_CLK>, 1160f126890aSEmmanuel Vadot <&pxo_board>; 1161f126890aSEmmanuel Vadot status = "disabled"; 1162f126890aSEmmanuel Vadot }; 1163f126890aSEmmanuel Vadot 1164f126890aSEmmanuel Vadot dsi1: dsi@5800000 { 1165f126890aSEmmanuel Vadot compatible = "qcom,mdss-dsi-ctrl"; 1166f126890aSEmmanuel Vadot interrupts = <GIC_SPI 166 IRQ_TYPE_LEVEL_HIGH>; 1167f126890aSEmmanuel Vadot reg = <0x05800000 0x200>; 1168f126890aSEmmanuel Vadot reg-names = "dsi_ctrl"; 1169f126890aSEmmanuel Vadot 1170f126890aSEmmanuel Vadot clocks = <&mmcc DSI2_M_AHB_CLK>, 1171f126890aSEmmanuel Vadot <&mmcc DSI2_S_AHB_CLK>, 1172f126890aSEmmanuel Vadot <&mmcc AMP_AHB_CLK>, 1173f126890aSEmmanuel Vadot <&mmcc DSI2_CLK>, 1174f126890aSEmmanuel Vadot <&mmcc DSI2_BYTE_CLK>, 1175f126890aSEmmanuel Vadot <&mmcc DSI2_PIXEL_CLK>, 1176f126890aSEmmanuel Vadot <&mmcc DSI2_ESC_CLK>; 1177f126890aSEmmanuel Vadot clock-names = "iface", 1178f126890aSEmmanuel Vadot "bus", 1179f126890aSEmmanuel Vadot "core_mmss", 1180f126890aSEmmanuel Vadot "src", 1181f126890aSEmmanuel Vadot "byte", 1182f126890aSEmmanuel Vadot "pixel", 1183f126890aSEmmanuel Vadot "core"; 1184f126890aSEmmanuel Vadot 1185f126890aSEmmanuel Vadot assigned-clocks = <&mmcc DSI2_BYTE_SRC>, 1186f126890aSEmmanuel Vadot <&mmcc DSI2_ESC_SRC>, 1187f126890aSEmmanuel Vadot <&mmcc DSI2_SRC>, 1188f126890aSEmmanuel Vadot <&mmcc DSI2_PIXEL_SRC>; 1189f126890aSEmmanuel Vadot assigned-clock-parents = <&dsi1_phy 0>, 1190f126890aSEmmanuel Vadot <&dsi1_phy 0>, 1191f126890aSEmmanuel Vadot <&dsi1_phy 1>, 1192f126890aSEmmanuel Vadot <&dsi1_phy 1>; 1193f126890aSEmmanuel Vadot 1194f126890aSEmmanuel Vadot syscon-sfpb = <&mmss_sfpb>; 1195f126890aSEmmanuel Vadot phys = <&dsi1_phy>; 1196f126890aSEmmanuel Vadot 1197f126890aSEmmanuel Vadot #address-cells = <1>; 1198f126890aSEmmanuel Vadot #size-cells = <0>; 1199f126890aSEmmanuel Vadot 1200f126890aSEmmanuel Vadot status = "disabled"; 1201f126890aSEmmanuel Vadot 1202f126890aSEmmanuel Vadot ports { 1203f126890aSEmmanuel Vadot #address-cells = <1>; 1204f126890aSEmmanuel Vadot #size-cells = <0>; 1205f126890aSEmmanuel Vadot 1206f126890aSEmmanuel Vadot port@0 { 1207f126890aSEmmanuel Vadot reg = <0>; 1208f126890aSEmmanuel Vadot dsi1_in: endpoint { 1209f126890aSEmmanuel Vadot }; 1210f126890aSEmmanuel Vadot }; 1211f126890aSEmmanuel Vadot 1212f126890aSEmmanuel Vadot port@1 { 1213f126890aSEmmanuel Vadot reg = <1>; 1214f126890aSEmmanuel Vadot dsi1_out: endpoint { 1215f126890aSEmmanuel Vadot }; 1216f126890aSEmmanuel Vadot }; 1217f126890aSEmmanuel Vadot }; 1218f126890aSEmmanuel Vadot }; 1219f126890aSEmmanuel Vadot 1220f126890aSEmmanuel Vadot 1221f126890aSEmmanuel Vadot dsi1_phy: dsi-phy@5800200 { 1222f126890aSEmmanuel Vadot compatible = "qcom,dsi-phy-28nm-8960"; 1223f126890aSEmmanuel Vadot reg = <0x05800200 0x100>, 1224f126890aSEmmanuel Vadot <0x05800300 0x200>, 1225f126890aSEmmanuel Vadot <0x05800500 0x5c>; 1226f126890aSEmmanuel Vadot reg-names = "dsi_pll", 1227f126890aSEmmanuel Vadot "dsi_phy", 1228f126890aSEmmanuel Vadot "dsi_phy_regulator"; 1229f126890aSEmmanuel Vadot clock-names = "iface", 1230f126890aSEmmanuel Vadot "ref"; 1231f126890aSEmmanuel Vadot clocks = <&mmcc DSI2_M_AHB_CLK>, 1232f126890aSEmmanuel Vadot <&pxo_board>; 1233f126890aSEmmanuel Vadot #clock-cells = <1>; 1234f126890aSEmmanuel Vadot #phy-cells = <0>; 1235f126890aSEmmanuel Vadot 1236f126890aSEmmanuel Vadot status = "disabled"; 1237f126890aSEmmanuel Vadot }; 1238f126890aSEmmanuel Vadot 1239f126890aSEmmanuel Vadot mdp_port0: iommu@7500000 { 1240f126890aSEmmanuel Vadot compatible = "qcom,apq8064-iommu"; 1241f126890aSEmmanuel Vadot #iommu-cells = <1>; 1242f126890aSEmmanuel Vadot clock-names = 1243f126890aSEmmanuel Vadot "smmu_pclk", 1244f126890aSEmmanuel Vadot "iommu_clk"; 1245f126890aSEmmanuel Vadot clocks = 1246f126890aSEmmanuel Vadot <&mmcc SMMU_AHB_CLK>, 1247f126890aSEmmanuel Vadot <&mmcc MDP_AXI_CLK>; 1248f126890aSEmmanuel Vadot reg = <0x07500000 0x100000>; 1249f126890aSEmmanuel Vadot interrupts = 1250f126890aSEmmanuel Vadot <GIC_SPI 63 IRQ_TYPE_LEVEL_HIGH>, 1251f126890aSEmmanuel Vadot <GIC_SPI 64 IRQ_TYPE_LEVEL_HIGH>; 1252f126890aSEmmanuel Vadot qcom,ncb = <2>; 1253f126890aSEmmanuel Vadot }; 1254f126890aSEmmanuel Vadot 1255f126890aSEmmanuel Vadot mdp_port1: iommu@7600000 { 1256f126890aSEmmanuel Vadot compatible = "qcom,apq8064-iommu"; 1257f126890aSEmmanuel Vadot #iommu-cells = <1>; 1258f126890aSEmmanuel Vadot clock-names = 1259f126890aSEmmanuel Vadot "smmu_pclk", 1260f126890aSEmmanuel Vadot "iommu_clk"; 1261f126890aSEmmanuel Vadot clocks = 1262f126890aSEmmanuel Vadot <&mmcc SMMU_AHB_CLK>, 1263f126890aSEmmanuel Vadot <&mmcc MDP_AXI_CLK>; 1264f126890aSEmmanuel Vadot reg = <0x07600000 0x100000>; 1265f126890aSEmmanuel Vadot interrupts = 1266f126890aSEmmanuel Vadot <GIC_SPI 61 IRQ_TYPE_LEVEL_HIGH>, 1267f126890aSEmmanuel Vadot <GIC_SPI 62 IRQ_TYPE_LEVEL_HIGH>; 1268f126890aSEmmanuel Vadot qcom,ncb = <2>; 1269f126890aSEmmanuel Vadot }; 1270f126890aSEmmanuel Vadot 1271f126890aSEmmanuel Vadot gfx3d: iommu@7c00000 { 1272f126890aSEmmanuel Vadot compatible = "qcom,apq8064-iommu"; 1273f126890aSEmmanuel Vadot #iommu-cells = <1>; 1274f126890aSEmmanuel Vadot clock-names = 1275f126890aSEmmanuel Vadot "smmu_pclk", 1276f126890aSEmmanuel Vadot "iommu_clk"; 1277f126890aSEmmanuel Vadot clocks = 1278f126890aSEmmanuel Vadot <&mmcc SMMU_AHB_CLK>, 1279f126890aSEmmanuel Vadot <&mmcc GFX3D_AXI_CLK>; 1280f126890aSEmmanuel Vadot reg = <0x07c00000 0x100000>; 1281f126890aSEmmanuel Vadot interrupts = 1282f126890aSEmmanuel Vadot <GIC_SPI 69 IRQ_TYPE_LEVEL_HIGH>, 1283f126890aSEmmanuel Vadot <GIC_SPI 70 IRQ_TYPE_LEVEL_HIGH>; 1284f126890aSEmmanuel Vadot qcom,ncb = <3>; 1285f126890aSEmmanuel Vadot }; 1286f126890aSEmmanuel Vadot 1287f126890aSEmmanuel Vadot gfx3d1: iommu@7d00000 { 1288f126890aSEmmanuel Vadot compatible = "qcom,apq8064-iommu"; 1289f126890aSEmmanuel Vadot #iommu-cells = <1>; 1290f126890aSEmmanuel Vadot clock-names = 1291f126890aSEmmanuel Vadot "smmu_pclk", 1292f126890aSEmmanuel Vadot "iommu_clk"; 1293f126890aSEmmanuel Vadot clocks = 1294f126890aSEmmanuel Vadot <&mmcc SMMU_AHB_CLK>, 1295f126890aSEmmanuel Vadot <&mmcc GFX3D_AXI_CLK>; 1296f126890aSEmmanuel Vadot reg = <0x07d00000 0x100000>; 1297f126890aSEmmanuel Vadot interrupts = 1298f126890aSEmmanuel Vadot <GIC_SPI 210 IRQ_TYPE_LEVEL_HIGH>, 1299f126890aSEmmanuel Vadot <GIC_SPI 211 IRQ_TYPE_LEVEL_HIGH>; 1300f126890aSEmmanuel Vadot qcom,ncb = <3>; 1301f126890aSEmmanuel Vadot }; 1302f126890aSEmmanuel Vadot 13038d13bc63SEmmanuel Vadot pcie: pcie@1b500000 { 1304f126890aSEmmanuel Vadot compatible = "qcom,pcie-apq8064"; 1305f126890aSEmmanuel Vadot reg = <0x1b500000 0x1000>, 1306f126890aSEmmanuel Vadot <0x1b502000 0x80>, 1307f126890aSEmmanuel Vadot <0x1b600000 0x100>, 1308f126890aSEmmanuel Vadot <0x0ff00000 0x100000>; 1309f126890aSEmmanuel Vadot reg-names = "dbi", "elbi", "parf", "config"; 1310f126890aSEmmanuel Vadot device_type = "pci"; 1311f126890aSEmmanuel Vadot linux,pci-domain = <0>; 1312f126890aSEmmanuel Vadot bus-range = <0x00 0xff>; 1313f126890aSEmmanuel Vadot num-lanes = <1>; 1314f126890aSEmmanuel Vadot #address-cells = <3>; 1315f126890aSEmmanuel Vadot #size-cells = <2>; 1316f126890aSEmmanuel Vadot ranges = <0x81000000 0x0 0x00000000 0x0fe00000 0x0 0x00100000>, /* I/O */ 1317f126890aSEmmanuel Vadot <0x82000000 0x0 0x08000000 0x08000000 0x0 0x07e00000>; /* mem */ 1318f126890aSEmmanuel Vadot interrupts = <GIC_SPI 238 IRQ_TYPE_LEVEL_HIGH>; 1319f126890aSEmmanuel Vadot interrupt-names = "msi"; 1320f126890aSEmmanuel Vadot #interrupt-cells = <1>; 1321f126890aSEmmanuel Vadot interrupt-map-mask = <0 0 0 0x7>; 1322f126890aSEmmanuel Vadot interrupt-map = <0 0 0 1 &intc 0 36 IRQ_TYPE_LEVEL_HIGH>, /* int_a */ 1323f126890aSEmmanuel Vadot <0 0 0 2 &intc 0 37 IRQ_TYPE_LEVEL_HIGH>, /* int_b */ 1324f126890aSEmmanuel Vadot <0 0 0 3 &intc 0 38 IRQ_TYPE_LEVEL_HIGH>, /* int_c */ 1325f126890aSEmmanuel Vadot <0 0 0 4 &intc 0 39 IRQ_TYPE_LEVEL_HIGH>; /* int_d */ 1326f126890aSEmmanuel Vadot clocks = <&gcc PCIE_A_CLK>, 1327f126890aSEmmanuel Vadot <&gcc PCIE_H_CLK>, 1328f126890aSEmmanuel Vadot <&gcc PCIE_PHY_REF_CLK>; 1329f126890aSEmmanuel Vadot clock-names = "core", "iface", "phy"; 1330f126890aSEmmanuel Vadot resets = <&gcc PCIE_ACLK_RESET>, 1331f126890aSEmmanuel Vadot <&gcc PCIE_HCLK_RESET>, 1332f126890aSEmmanuel Vadot <&gcc PCIE_POR_RESET>, 1333f126890aSEmmanuel Vadot <&gcc PCIE_PCI_RESET>, 1334f126890aSEmmanuel Vadot <&gcc PCIE_PHY_RESET>; 1335f126890aSEmmanuel Vadot reset-names = "axi", "ahb", "por", "pci", "phy"; 1336f126890aSEmmanuel Vadot status = "disabled"; 1337f126890aSEmmanuel Vadot }; 1338f126890aSEmmanuel Vadot 1339f126890aSEmmanuel Vadot hdmi: hdmi-tx@4a00000 { 1340f126890aSEmmanuel Vadot compatible = "qcom,hdmi-tx-8960"; 1341f126890aSEmmanuel Vadot pinctrl-names = "default"; 1342f126890aSEmmanuel Vadot pinctrl-0 = <&hdmi_pinctrl>; 1343f126890aSEmmanuel Vadot reg = <0x04a00000 0x2f0>; 1344f126890aSEmmanuel Vadot reg-names = "core_physical"; 1345f126890aSEmmanuel Vadot interrupts = <GIC_SPI 79 IRQ_TYPE_LEVEL_HIGH>; 1346f126890aSEmmanuel Vadot clocks = <&mmcc HDMI_APP_CLK>, 1347f126890aSEmmanuel Vadot <&mmcc HDMI_M_AHB_CLK>, 1348f126890aSEmmanuel Vadot <&mmcc HDMI_S_AHB_CLK>; 1349f126890aSEmmanuel Vadot clock-names = "core", 1350f126890aSEmmanuel Vadot "master_iface", 1351f126890aSEmmanuel Vadot "slave_iface"; 1352f126890aSEmmanuel Vadot 1353f126890aSEmmanuel Vadot phys = <&hdmi_phy>; 1354f126890aSEmmanuel Vadot 1355f126890aSEmmanuel Vadot status = "disabled"; 1356f126890aSEmmanuel Vadot 1357f126890aSEmmanuel Vadot ports { 1358f126890aSEmmanuel Vadot #address-cells = <1>; 1359f126890aSEmmanuel Vadot #size-cells = <0>; 1360f126890aSEmmanuel Vadot 1361f126890aSEmmanuel Vadot port@0 { 1362f126890aSEmmanuel Vadot reg = <0>; 1363f126890aSEmmanuel Vadot hdmi_in: endpoint { 1364f126890aSEmmanuel Vadot }; 1365f126890aSEmmanuel Vadot }; 1366f126890aSEmmanuel Vadot 1367f126890aSEmmanuel Vadot port@1 { 1368f126890aSEmmanuel Vadot reg = <1>; 1369f126890aSEmmanuel Vadot hdmi_out: endpoint { 1370f126890aSEmmanuel Vadot }; 1371f126890aSEmmanuel Vadot }; 1372f126890aSEmmanuel Vadot }; 1373f126890aSEmmanuel Vadot }; 1374f126890aSEmmanuel Vadot 1375f126890aSEmmanuel Vadot hdmi_phy: phy@4a00400 { 1376f126890aSEmmanuel Vadot compatible = "qcom,hdmi-phy-8960"; 1377f126890aSEmmanuel Vadot reg = <0x4a00400 0x60>, 1378f126890aSEmmanuel Vadot <0x4a00500 0x100>; 1379f126890aSEmmanuel Vadot reg-names = "hdmi_phy", 1380f126890aSEmmanuel Vadot "hdmi_pll"; 1381f126890aSEmmanuel Vadot 1382f126890aSEmmanuel Vadot clocks = <&mmcc HDMI_S_AHB_CLK>; 1383f126890aSEmmanuel Vadot clock-names = "slave_iface"; 1384f126890aSEmmanuel Vadot #phy-cells = <0>; 1385f126890aSEmmanuel Vadot #clock-cells = <0>; 1386f126890aSEmmanuel Vadot 1387f126890aSEmmanuel Vadot status = "disabled"; 1388f126890aSEmmanuel Vadot }; 1389f126890aSEmmanuel Vadot 1390f126890aSEmmanuel Vadot mdp: display-controller@5100000 { 1391f126890aSEmmanuel Vadot compatible = "qcom,mdp4"; 1392f126890aSEmmanuel Vadot reg = <0x05100000 0xf0000>; 1393f126890aSEmmanuel Vadot interrupts = <GIC_SPI 75 IRQ_TYPE_LEVEL_HIGH>; 1394f126890aSEmmanuel Vadot clocks = <&mmcc MDP_CLK>, 1395f126890aSEmmanuel Vadot <&mmcc MDP_AHB_CLK>, 1396f126890aSEmmanuel Vadot <&mmcc MDP_AXI_CLK>, 1397f126890aSEmmanuel Vadot <&mmcc MDP_LUT_CLK>, 1398f126890aSEmmanuel Vadot <&mmcc HDMI_TV_CLK>, 1399f126890aSEmmanuel Vadot <&mmcc MDP_TV_CLK>; 1400f126890aSEmmanuel Vadot clock-names = "core_clk", 1401f126890aSEmmanuel Vadot "iface_clk", 1402f126890aSEmmanuel Vadot "bus_clk", 1403f126890aSEmmanuel Vadot "lut_clk", 1404f126890aSEmmanuel Vadot "hdmi_clk", 1405f126890aSEmmanuel Vadot "tv_clk"; 1406f126890aSEmmanuel Vadot 1407f126890aSEmmanuel Vadot iommus = <&mdp_port0 0 1408f126890aSEmmanuel Vadot &mdp_port0 2 1409f126890aSEmmanuel Vadot &mdp_port1 0 1410f126890aSEmmanuel Vadot &mdp_port1 2>; 1411f126890aSEmmanuel Vadot 1412f126890aSEmmanuel Vadot ports { 1413f126890aSEmmanuel Vadot #address-cells = <1>; 1414f126890aSEmmanuel Vadot #size-cells = <0>; 1415f126890aSEmmanuel Vadot 1416f126890aSEmmanuel Vadot port@0 { 1417f126890aSEmmanuel Vadot reg = <0>; 1418f126890aSEmmanuel Vadot mdp_lvds_out: endpoint { 1419f126890aSEmmanuel Vadot }; 1420f126890aSEmmanuel Vadot }; 1421f126890aSEmmanuel Vadot 1422f126890aSEmmanuel Vadot port@1 { 1423f126890aSEmmanuel Vadot reg = <1>; 1424f126890aSEmmanuel Vadot mdp_dsi1_out: endpoint { 1425f126890aSEmmanuel Vadot }; 1426f126890aSEmmanuel Vadot }; 1427f126890aSEmmanuel Vadot 1428f126890aSEmmanuel Vadot port@2 { 1429f126890aSEmmanuel Vadot reg = <2>; 1430f126890aSEmmanuel Vadot mdp_dsi2_out: endpoint { 1431f126890aSEmmanuel Vadot }; 1432f126890aSEmmanuel Vadot }; 1433f126890aSEmmanuel Vadot 1434f126890aSEmmanuel Vadot port@3 { 1435f126890aSEmmanuel Vadot reg = <3>; 1436f126890aSEmmanuel Vadot mdp_dtv_out: endpoint { 1437f126890aSEmmanuel Vadot }; 1438f126890aSEmmanuel Vadot }; 1439f126890aSEmmanuel Vadot }; 1440f126890aSEmmanuel Vadot }; 1441f126890aSEmmanuel Vadot 1442f126890aSEmmanuel Vadot riva: riva-pil@3200800 { 1443f126890aSEmmanuel Vadot compatible = "qcom,riva-pil"; 1444f126890aSEmmanuel Vadot 1445f126890aSEmmanuel Vadot reg = <0x03200800 0x1000>, <0x03202000 0x2000>, <0x03204000 0x100>; 1446f126890aSEmmanuel Vadot reg-names = "ccu", "dxe", "pmu"; 1447f126890aSEmmanuel Vadot 1448f126890aSEmmanuel Vadot interrupts-extended = <&intc GIC_SPI 199 IRQ_TYPE_EDGE_RISING>, 1449f126890aSEmmanuel Vadot <&wcnss_smsm 6 IRQ_TYPE_EDGE_RISING>; 1450f126890aSEmmanuel Vadot interrupt-names = "wdog", "fatal"; 1451f126890aSEmmanuel Vadot 1452f126890aSEmmanuel Vadot memory-region = <&wcnss_mem>; 1453f126890aSEmmanuel Vadot 1454f126890aSEmmanuel Vadot status = "disabled"; 1455f126890aSEmmanuel Vadot 1456f126890aSEmmanuel Vadot iris { 1457f126890aSEmmanuel Vadot compatible = "qcom,wcn3660"; 1458f126890aSEmmanuel Vadot 1459f126890aSEmmanuel Vadot clocks = <&cxo_board>; 1460f126890aSEmmanuel Vadot clock-names = "xo"; 1461f126890aSEmmanuel Vadot }; 1462f126890aSEmmanuel Vadot 1463f126890aSEmmanuel Vadot smd-edge { 1464f126890aSEmmanuel Vadot interrupts = <GIC_SPI 198 IRQ_TYPE_EDGE_RISING>; 1465f126890aSEmmanuel Vadot 1466f126890aSEmmanuel Vadot qcom,ipc = <&l2cc 8 25>; 1467f126890aSEmmanuel Vadot qcom,smd-edge = <6>; 1468f126890aSEmmanuel Vadot 1469f126890aSEmmanuel Vadot label = "riva"; 1470f126890aSEmmanuel Vadot 1471f126890aSEmmanuel Vadot wcnss { 1472f126890aSEmmanuel Vadot compatible = "qcom,wcnss"; 1473f126890aSEmmanuel Vadot qcom,smd-channels = "WCNSS_CTRL"; 1474f126890aSEmmanuel Vadot 1475f126890aSEmmanuel Vadot qcom,mmio = <&riva>; 1476f126890aSEmmanuel Vadot 1477f126890aSEmmanuel Vadot bluetooth { 1478f126890aSEmmanuel Vadot compatible = "qcom,wcnss-bt"; 1479f126890aSEmmanuel Vadot }; 1480f126890aSEmmanuel Vadot 1481f126890aSEmmanuel Vadot wifi { 1482f126890aSEmmanuel Vadot compatible = "qcom,wcnss-wlan"; 1483f126890aSEmmanuel Vadot 1484f126890aSEmmanuel Vadot interrupts = <GIC_SPI 203 IRQ_TYPE_LEVEL_HIGH>, 1485f126890aSEmmanuel Vadot <GIC_SPI 202 IRQ_TYPE_LEVEL_HIGH>; 1486f126890aSEmmanuel Vadot interrupt-names = "tx", "rx"; 1487f126890aSEmmanuel Vadot 1488f126890aSEmmanuel Vadot qcom,smem-states = <&apps_smsm 10>, <&apps_smsm 9>; 1489f126890aSEmmanuel Vadot qcom,smem-state-names = "tx-enable", "tx-rings-empty"; 1490f126890aSEmmanuel Vadot }; 1491f126890aSEmmanuel Vadot }; 1492f126890aSEmmanuel Vadot }; 1493f126890aSEmmanuel Vadot }; 1494f126890aSEmmanuel Vadot 1495f126890aSEmmanuel Vadot etb@1a01000 { 1496f126890aSEmmanuel Vadot compatible = "arm,coresight-etb10", "arm,primecell"; 1497f126890aSEmmanuel Vadot reg = <0x1a01000 0x1000>; 1498f126890aSEmmanuel Vadot 1499f126890aSEmmanuel Vadot clocks = <&rpmcc RPM_QDSS_CLK>; 1500f126890aSEmmanuel Vadot clock-names = "apb_pclk"; 1501f126890aSEmmanuel Vadot 1502f126890aSEmmanuel Vadot in-ports { 1503f126890aSEmmanuel Vadot port { 1504f126890aSEmmanuel Vadot etb_in: endpoint { 1505f126890aSEmmanuel Vadot remote-endpoint = <&replicator_out0>; 1506f126890aSEmmanuel Vadot }; 1507f126890aSEmmanuel Vadot }; 1508f126890aSEmmanuel Vadot }; 1509f126890aSEmmanuel Vadot }; 1510f126890aSEmmanuel Vadot 1511f126890aSEmmanuel Vadot tpiu@1a03000 { 1512f126890aSEmmanuel Vadot compatible = "arm,coresight-tpiu", "arm,primecell"; 1513f126890aSEmmanuel Vadot reg = <0x1a03000 0x1000>; 1514f126890aSEmmanuel Vadot 1515f126890aSEmmanuel Vadot clocks = <&rpmcc RPM_QDSS_CLK>; 1516f126890aSEmmanuel Vadot clock-names = "apb_pclk"; 1517f126890aSEmmanuel Vadot 1518f126890aSEmmanuel Vadot in-ports { 1519f126890aSEmmanuel Vadot port { 1520f126890aSEmmanuel Vadot tpiu_in: endpoint { 1521f126890aSEmmanuel Vadot remote-endpoint = <&replicator_out1>; 1522f126890aSEmmanuel Vadot }; 1523f126890aSEmmanuel Vadot }; 1524f126890aSEmmanuel Vadot }; 1525f126890aSEmmanuel Vadot }; 1526f126890aSEmmanuel Vadot 1527f126890aSEmmanuel Vadot replicator { 1528f126890aSEmmanuel Vadot compatible = "arm,coresight-static-replicator"; 1529f126890aSEmmanuel Vadot 1530f126890aSEmmanuel Vadot clocks = <&rpmcc RPM_QDSS_CLK>; 1531f126890aSEmmanuel Vadot clock-names = "apb_pclk"; 1532f126890aSEmmanuel Vadot 1533f126890aSEmmanuel Vadot out-ports { 1534f126890aSEmmanuel Vadot #address-cells = <1>; 1535f126890aSEmmanuel Vadot #size-cells = <0>; 1536f126890aSEmmanuel Vadot 1537f126890aSEmmanuel Vadot port@0 { 1538f126890aSEmmanuel Vadot reg = <0>; 1539f126890aSEmmanuel Vadot replicator_out0: endpoint { 1540f126890aSEmmanuel Vadot remote-endpoint = <&etb_in>; 1541f126890aSEmmanuel Vadot }; 1542f126890aSEmmanuel Vadot }; 1543f126890aSEmmanuel Vadot port@1 { 1544f126890aSEmmanuel Vadot reg = <1>; 1545f126890aSEmmanuel Vadot replicator_out1: endpoint { 1546f126890aSEmmanuel Vadot remote-endpoint = <&tpiu_in>; 1547f126890aSEmmanuel Vadot }; 1548f126890aSEmmanuel Vadot }; 1549f126890aSEmmanuel Vadot }; 1550f126890aSEmmanuel Vadot 1551f126890aSEmmanuel Vadot in-ports { 1552f126890aSEmmanuel Vadot port { 1553f126890aSEmmanuel Vadot replicator_in: endpoint { 1554f126890aSEmmanuel Vadot remote-endpoint = <&funnel_out>; 1555f126890aSEmmanuel Vadot }; 1556f126890aSEmmanuel Vadot }; 1557f126890aSEmmanuel Vadot }; 1558f126890aSEmmanuel Vadot }; 1559f126890aSEmmanuel Vadot 1560f126890aSEmmanuel Vadot funnel@1a04000 { 1561f126890aSEmmanuel Vadot compatible = "arm,coresight-dynamic-funnel", "arm,primecell"; 1562f126890aSEmmanuel Vadot reg = <0x1a04000 0x1000>; 1563f126890aSEmmanuel Vadot 1564f126890aSEmmanuel Vadot clocks = <&rpmcc RPM_QDSS_CLK>; 1565f126890aSEmmanuel Vadot clock-names = "apb_pclk"; 1566f126890aSEmmanuel Vadot 1567f126890aSEmmanuel Vadot in-ports { 1568f126890aSEmmanuel Vadot #address-cells = <1>; 1569f126890aSEmmanuel Vadot #size-cells = <0>; 1570f126890aSEmmanuel Vadot 1571f126890aSEmmanuel Vadot /* 1572f126890aSEmmanuel Vadot * Not described input ports: 1573f126890aSEmmanuel Vadot * 2 - connected to STM component 1574f126890aSEmmanuel Vadot * 3 - not-connected 1575f126890aSEmmanuel Vadot * 6 - not-connected 1576f126890aSEmmanuel Vadot * 7 - not-connected 1577f126890aSEmmanuel Vadot */ 1578f126890aSEmmanuel Vadot port@0 { 1579f126890aSEmmanuel Vadot reg = <0>; 1580f126890aSEmmanuel Vadot funnel_in0: endpoint { 1581f126890aSEmmanuel Vadot remote-endpoint = <&etm0_out>; 1582f126890aSEmmanuel Vadot }; 1583f126890aSEmmanuel Vadot }; 1584f126890aSEmmanuel Vadot port@1 { 1585f126890aSEmmanuel Vadot reg = <1>; 1586f126890aSEmmanuel Vadot funnel_in1: endpoint { 1587f126890aSEmmanuel Vadot remote-endpoint = <&etm1_out>; 1588f126890aSEmmanuel Vadot }; 1589f126890aSEmmanuel Vadot }; 1590f126890aSEmmanuel Vadot port@4 { 1591f126890aSEmmanuel Vadot reg = <4>; 1592f126890aSEmmanuel Vadot funnel_in4: endpoint { 1593f126890aSEmmanuel Vadot remote-endpoint = <&etm2_out>; 1594f126890aSEmmanuel Vadot }; 1595f126890aSEmmanuel Vadot }; 1596f126890aSEmmanuel Vadot port@5 { 1597f126890aSEmmanuel Vadot reg = <5>; 1598f126890aSEmmanuel Vadot funnel_in5: endpoint { 1599f126890aSEmmanuel Vadot remote-endpoint = <&etm3_out>; 1600f126890aSEmmanuel Vadot }; 1601f126890aSEmmanuel Vadot }; 1602f126890aSEmmanuel Vadot }; 1603f126890aSEmmanuel Vadot 1604f126890aSEmmanuel Vadot out-ports { 1605f126890aSEmmanuel Vadot port { 1606f126890aSEmmanuel Vadot funnel_out: endpoint { 1607f126890aSEmmanuel Vadot remote-endpoint = <&replicator_in>; 1608f126890aSEmmanuel Vadot }; 1609f126890aSEmmanuel Vadot }; 1610f126890aSEmmanuel Vadot }; 1611f126890aSEmmanuel Vadot }; 1612f126890aSEmmanuel Vadot 1613f126890aSEmmanuel Vadot etm@1a1c000 { 1614f126890aSEmmanuel Vadot compatible = "arm,coresight-etm3x", "arm,primecell"; 1615f126890aSEmmanuel Vadot reg = <0x1a1c000 0x1000>; 1616f126890aSEmmanuel Vadot 1617f126890aSEmmanuel Vadot clocks = <&rpmcc RPM_QDSS_CLK>; 1618f126890aSEmmanuel Vadot clock-names = "apb_pclk"; 1619f126890aSEmmanuel Vadot 1620f126890aSEmmanuel Vadot cpu = <&CPU0>; 1621f126890aSEmmanuel Vadot 1622f126890aSEmmanuel Vadot out-ports { 1623f126890aSEmmanuel Vadot port { 1624f126890aSEmmanuel Vadot etm0_out: endpoint { 1625f126890aSEmmanuel Vadot remote-endpoint = <&funnel_in0>; 1626f126890aSEmmanuel Vadot }; 1627f126890aSEmmanuel Vadot }; 1628f126890aSEmmanuel Vadot }; 1629f126890aSEmmanuel Vadot }; 1630f126890aSEmmanuel Vadot 1631f126890aSEmmanuel Vadot etm@1a1d000 { 1632f126890aSEmmanuel Vadot compatible = "arm,coresight-etm3x", "arm,primecell"; 1633f126890aSEmmanuel Vadot reg = <0x1a1d000 0x1000>; 1634f126890aSEmmanuel Vadot 1635f126890aSEmmanuel Vadot clocks = <&rpmcc RPM_QDSS_CLK>; 1636f126890aSEmmanuel Vadot clock-names = "apb_pclk"; 1637f126890aSEmmanuel Vadot 1638f126890aSEmmanuel Vadot cpu = <&CPU1>; 1639f126890aSEmmanuel Vadot 1640f126890aSEmmanuel Vadot out-ports { 1641f126890aSEmmanuel Vadot port { 1642f126890aSEmmanuel Vadot etm1_out: endpoint { 1643f126890aSEmmanuel Vadot remote-endpoint = <&funnel_in1>; 1644f126890aSEmmanuel Vadot }; 1645f126890aSEmmanuel Vadot }; 1646f126890aSEmmanuel Vadot }; 1647f126890aSEmmanuel Vadot }; 1648f126890aSEmmanuel Vadot 1649f126890aSEmmanuel Vadot etm@1a1e000 { 1650f126890aSEmmanuel Vadot compatible = "arm,coresight-etm3x", "arm,primecell"; 1651f126890aSEmmanuel Vadot reg = <0x1a1e000 0x1000>; 1652f126890aSEmmanuel Vadot 1653f126890aSEmmanuel Vadot clocks = <&rpmcc RPM_QDSS_CLK>; 1654f126890aSEmmanuel Vadot clock-names = "apb_pclk"; 1655f126890aSEmmanuel Vadot 1656f126890aSEmmanuel Vadot cpu = <&CPU2>; 1657f126890aSEmmanuel Vadot 1658f126890aSEmmanuel Vadot out-ports { 1659f126890aSEmmanuel Vadot port { 1660f126890aSEmmanuel Vadot etm2_out: endpoint { 1661f126890aSEmmanuel Vadot remote-endpoint = <&funnel_in4>; 1662f126890aSEmmanuel Vadot }; 1663f126890aSEmmanuel Vadot }; 1664f126890aSEmmanuel Vadot }; 1665f126890aSEmmanuel Vadot }; 1666f126890aSEmmanuel Vadot 1667f126890aSEmmanuel Vadot etm@1a1f000 { 1668f126890aSEmmanuel Vadot compatible = "arm,coresight-etm3x", "arm,primecell"; 1669f126890aSEmmanuel Vadot reg = <0x1a1f000 0x1000>; 1670f126890aSEmmanuel Vadot 1671f126890aSEmmanuel Vadot clocks = <&rpmcc RPM_QDSS_CLK>; 1672f126890aSEmmanuel Vadot clock-names = "apb_pclk"; 1673f126890aSEmmanuel Vadot 1674f126890aSEmmanuel Vadot cpu = <&CPU3>; 1675f126890aSEmmanuel Vadot 1676f126890aSEmmanuel Vadot out-ports { 1677f126890aSEmmanuel Vadot port { 1678f126890aSEmmanuel Vadot etm3_out: endpoint { 1679f126890aSEmmanuel Vadot remote-endpoint = <&funnel_in5>; 1680f126890aSEmmanuel Vadot }; 1681f126890aSEmmanuel Vadot }; 1682f126890aSEmmanuel Vadot }; 1683f126890aSEmmanuel Vadot }; 1684f126890aSEmmanuel Vadot }; 1685f126890aSEmmanuel Vadot}; 1686f126890aSEmmanuel Vadot#include "qcom-apq8064-pins.dtsi" 1687