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 { 907d0873ebSEmmanuel Vadot CPU_SPC: cpu-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"; 19301950c46SEmmanuel 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>; 24701950c46SEmmanuel 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>; 25501950c46SEmmanuel 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>; 26301950c46SEmmanuel 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>; 27101950c46SEmmanuel 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>; 30201950c46SEmmanuel Vadot interrupts = <GIC_SPI 16 IRQ_TYPE_LEVEL_HIGH>; 303f126890aSEmmanuel Vadot 304f126890aSEmmanuel Vadot pinctrl-names = "default"; 305*b2d2a78aSEmmanuel Vadot pinctrl-0 = <&ps_hold_default_state>; 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"; 32401950c46SEmmanuel Vadot interrupts = <GIC_PPI 1 (GIC_CPU_MASK_SIMPLE(2) | IRQ_TYPE_EDGE_RISING)>, 32501950c46SEmmanuel Vadot <GIC_PPI 2 (GIC_CPU_MASK_SIMPLE(2) | IRQ_TYPE_EDGE_RISING)>, 32601950c46SEmmanuel 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 36801950c46SEmmanuel Vadot saw0: power-manager@2089000 { 369f126890aSEmmanuel Vadot compatible = "qcom,apq8064-saw2-v1.1-cpu", "qcom,saw2"; 370f126890aSEmmanuel Vadot reg = <0x02089000 0x1000>, <0x02009000 0x1000>; 37101950c46SEmmanuel Vadot 37201950c46SEmmanuel Vadot saw0_vreg: regulator { 37301950c46SEmmanuel Vadot regulator-min-microvolt = <850000>; 37401950c46SEmmanuel Vadot regulator-max-microvolt = <1300000>; 37501950c46SEmmanuel Vadot }; 376f126890aSEmmanuel Vadot }; 377f126890aSEmmanuel Vadot 37801950c46SEmmanuel Vadot saw1: power-manager@2099000 { 379f126890aSEmmanuel Vadot compatible = "qcom,apq8064-saw2-v1.1-cpu", "qcom,saw2"; 380f126890aSEmmanuel Vadot reg = <0x02099000 0x1000>, <0x02009000 0x1000>; 38101950c46SEmmanuel Vadot 38201950c46SEmmanuel Vadot saw1_vreg: regulator { 38301950c46SEmmanuel Vadot regulator-min-microvolt = <850000>; 38401950c46SEmmanuel Vadot regulator-max-microvolt = <1300000>; 38501950c46SEmmanuel Vadot }; 386f126890aSEmmanuel Vadot }; 387f126890aSEmmanuel Vadot 38801950c46SEmmanuel Vadot saw2: power-manager@20a9000 { 389f126890aSEmmanuel Vadot compatible = "qcom,apq8064-saw2-v1.1-cpu", "qcom,saw2"; 390f126890aSEmmanuel Vadot reg = <0x020a9000 0x1000>, <0x02009000 0x1000>; 39101950c46SEmmanuel Vadot 39201950c46SEmmanuel Vadot saw2_vreg: regulator { 39301950c46SEmmanuel Vadot regulator-min-microvolt = <850000>; 39401950c46SEmmanuel Vadot regulator-max-microvolt = <1300000>; 39501950c46SEmmanuel Vadot }; 396f126890aSEmmanuel Vadot }; 397f126890aSEmmanuel Vadot 39801950c46SEmmanuel Vadot saw3: power-manager@20b9000 { 399f126890aSEmmanuel Vadot compatible = "qcom,apq8064-saw2-v1.1-cpu", "qcom,saw2"; 400f126890aSEmmanuel Vadot reg = <0x020b9000 0x1000>, <0x02009000 0x1000>; 40101950c46SEmmanuel Vadot 40201950c46SEmmanuel Vadot saw3_vreg: regulator { 40301950c46SEmmanuel Vadot regulator-min-microvolt = <850000>; 40401950c46SEmmanuel Vadot regulator-max-microvolt = <1300000>; 40501950c46SEmmanuel 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>; 43001950c46SEmmanuel 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"; 438*b2d2a78aSEmmanuel Vadot pinctrl-0 = <&i2c1_default_state>; 439*b2d2a78aSEmmanuel Vadot pinctrl-1 = <&i2c1_sleep_state>; 440f126890aSEmmanuel Vadot pinctrl-names = "default", "sleep"; 441f126890aSEmmanuel Vadot reg = <0x12460000 0x1000>; 44201950c46SEmmanuel 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>; 468*b2d2a78aSEmmanuel Vadot pinctrl-0 = <&i2c2_default_state>; 469*b2d2a78aSEmmanuel Vadot pinctrl-1 = <&i2c2_sleep_state>; 470f126890aSEmmanuel Vadot pinctrl-names = "default", "sleep"; 47101950c46SEmmanuel 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"; 492*b2d2a78aSEmmanuel Vadot pinctrl-0 = <&i2c3_default_state>; 493*b2d2a78aSEmmanuel Vadot pinctrl-1 = <&i2c3_sleep_state>; 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"; 531*b2d2a78aSEmmanuel Vadot pinctrl-0 = <&i2c4_default_state>; 532*b2d2a78aSEmmanuel Vadot pinctrl-1 = <&i2c4_sleep_state>; 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>; 55801950c46SEmmanuel 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>; 56701950c46SEmmanuel Vadot interrupts = <GIC_SPI 155 IRQ_TYPE_LEVEL_HIGH>; 568*b2d2a78aSEmmanuel Vadot pinctrl-0 = <&spi5_default_state>; 569*b2d2a78aSEmmanuel Vadot pinctrl-1 = <&spi5_sleep_state>; 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>; 59401950c46SEmmanuel 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"; 602*b2d2a78aSEmmanuel Vadot pinctrl-0 = <&i2c6_default_state>; 603*b2d2a78aSEmmanuel Vadot pinctrl-1 = <&i2c6_sleep_state>; 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>; 63001950c46SEmmanuel 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"; 638*b2d2a78aSEmmanuel Vadot pinctrl-0 = <&i2c7_default_state>; 639*b2d2a78aSEmmanuel Vadot pinctrl-1 = <&i2c7_sleep_state>; 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 6690e8011faSEmmanuel Vadot qfprom: efuse@700000 { 670f126890aSEmmanuel Vadot compatible = "qcom,apq8064-qfprom", "qcom,qfprom"; 671f126890aSEmmanuel Vadot reg = <0x00700000 0x1000>; 672f126890aSEmmanuel Vadot #address-cells = <1>; 673f126890aSEmmanuel Vadot #size-cells = <1>; 6740e8011faSEmmanuel Vadot 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 #reset-cells = <1>; 688f126890aSEmmanuel Vadot clocks = <&cxo_board>, 689f126890aSEmmanuel Vadot <&pxo_board>, 690f126890aSEmmanuel Vadot <&lcc PLL4>; 691f126890aSEmmanuel Vadot clock-names = "cxo", "pxo", "pll4"; 692f126890aSEmmanuel Vadot 693f126890aSEmmanuel Vadot tsens: thermal-sensor { 694f126890aSEmmanuel Vadot compatible = "qcom,msm8960-tsens"; 695f126890aSEmmanuel Vadot 696f126890aSEmmanuel Vadot nvmem-cells = <&tsens_calib>, <&tsens_backup>; 697f126890aSEmmanuel Vadot nvmem-cell-names = "calib", "calib_backup"; 698f126890aSEmmanuel Vadot interrupts = <GIC_SPI 178 IRQ_TYPE_LEVEL_HIGH>; 699f126890aSEmmanuel Vadot interrupt-names = "uplow"; 700f126890aSEmmanuel Vadot 701f126890aSEmmanuel Vadot #qcom,sensors = <11>; 702f126890aSEmmanuel Vadot #thermal-sensor-cells = <1>; 703f126890aSEmmanuel Vadot }; 704f126890aSEmmanuel Vadot }; 705f126890aSEmmanuel Vadot 706f126890aSEmmanuel Vadot lcc: clock-controller@28000000 { 707f126890aSEmmanuel Vadot compatible = "qcom,lcc-apq8064"; 708f126890aSEmmanuel Vadot reg = <0x28000000 0x1000>; 709f126890aSEmmanuel Vadot #clock-cells = <1>; 710f126890aSEmmanuel Vadot #reset-cells = <1>; 711f126890aSEmmanuel Vadot clocks = <&pxo_board>, 712f126890aSEmmanuel Vadot <&gcc PLL4_VOTE>, 713f126890aSEmmanuel Vadot <0>, 714f126890aSEmmanuel Vadot <0>, <0>, 715f126890aSEmmanuel Vadot <0>, <0>, 716f126890aSEmmanuel Vadot <0>; 717f126890aSEmmanuel Vadot clock-names = "pxo", 718f126890aSEmmanuel Vadot "pll4_vote", 719f126890aSEmmanuel Vadot "mi2s_codec_clk", 720f126890aSEmmanuel Vadot "codec_i2s_mic_codec_clk", 721f126890aSEmmanuel Vadot "spare_i2s_mic_codec_clk", 722f126890aSEmmanuel Vadot "codec_i2s_spkr_codec_clk", 723f126890aSEmmanuel Vadot "spare_i2s_spkr_codec_clk", 724f126890aSEmmanuel Vadot "pcm_codec_clk"; 725f126890aSEmmanuel Vadot }; 726f126890aSEmmanuel Vadot 727f126890aSEmmanuel Vadot mmcc: clock-controller@4000000 { 728f126890aSEmmanuel Vadot compatible = "qcom,mmcc-apq8064"; 729f126890aSEmmanuel Vadot reg = <0x4000000 0x1000>; 730f126890aSEmmanuel Vadot #clock-cells = <1>; 731f126890aSEmmanuel Vadot #power-domain-cells = <1>; 732f126890aSEmmanuel Vadot #reset-cells = <1>; 733f126890aSEmmanuel Vadot clocks = <&pxo_board>, 734f126890aSEmmanuel Vadot <&gcc PLL3>, 735f126890aSEmmanuel Vadot <&gcc PLL8_VOTE>, 736f126890aSEmmanuel Vadot <&dsi0_phy 1>, 737f126890aSEmmanuel Vadot <&dsi0_phy 0>, 738f126890aSEmmanuel Vadot <&dsi1_phy 1>, 739f126890aSEmmanuel Vadot <&dsi1_phy 0>, 740f126890aSEmmanuel Vadot <&hdmi_phy>; 741f126890aSEmmanuel Vadot clock-names = "pxo", 742f126890aSEmmanuel Vadot "pll3", 743f126890aSEmmanuel Vadot "pll8_vote", 744f126890aSEmmanuel Vadot "dsi1pll", 745f126890aSEmmanuel Vadot "dsi1pllbyte", 746f126890aSEmmanuel Vadot "dsi2pll", 747f126890aSEmmanuel Vadot "dsi2pllbyte", 748f126890aSEmmanuel Vadot "hdmipll"; 749f126890aSEmmanuel Vadot }; 750f126890aSEmmanuel Vadot 751f126890aSEmmanuel Vadot l2cc: clock-controller@2011000 { 752f126890aSEmmanuel Vadot compatible = "qcom,kpss-gcc-apq8064", "qcom,kpss-gcc", "syscon"; 753f126890aSEmmanuel Vadot reg = <0x2011000 0x1000>; 754f126890aSEmmanuel Vadot clocks = <&gcc PLL8_VOTE>, <&pxo_board>; 755f126890aSEmmanuel Vadot clock-names = "pll8_vote", "pxo"; 756f126890aSEmmanuel Vadot #clock-cells = <0>; 757f126890aSEmmanuel Vadot }; 758f126890aSEmmanuel Vadot 759f126890aSEmmanuel Vadot rpm: rpm@108000 { 760f126890aSEmmanuel Vadot compatible = "qcom,rpm-apq8064"; 761f126890aSEmmanuel Vadot reg = <0x108000 0x1000>; 762f126890aSEmmanuel Vadot qcom,ipc = <&l2cc 0x8 2>; 763f126890aSEmmanuel Vadot 764f126890aSEmmanuel Vadot interrupts = <GIC_SPI 19 IRQ_TYPE_EDGE_RISING>, 765f126890aSEmmanuel Vadot <GIC_SPI 21 IRQ_TYPE_EDGE_RISING>, 766f126890aSEmmanuel Vadot <GIC_SPI 22 IRQ_TYPE_EDGE_RISING>; 767f126890aSEmmanuel Vadot interrupt-names = "ack", "err", "wakeup"; 768f126890aSEmmanuel Vadot 769f126890aSEmmanuel Vadot rpmcc: clock-controller { 770f126890aSEmmanuel Vadot compatible = "qcom,rpmcc-apq8064", "qcom,rpmcc"; 771f126890aSEmmanuel Vadot #clock-cells = <1>; 772f126890aSEmmanuel Vadot clocks = <&pxo_board>, <&cxo_board>; 773f126890aSEmmanuel Vadot clock-names = "pxo", "cxo"; 774f126890aSEmmanuel Vadot }; 775f126890aSEmmanuel Vadot }; 776f126890aSEmmanuel Vadot 777f126890aSEmmanuel Vadot usb1: usb@12500000 { 778f126890aSEmmanuel Vadot compatible = "qcom,ci-hdrc"; 779f126890aSEmmanuel Vadot reg = <0x12500000 0x200>, 780f126890aSEmmanuel Vadot <0x12500200 0x200>; 781f126890aSEmmanuel Vadot interrupts = <GIC_SPI 100 IRQ_TYPE_LEVEL_HIGH>; 782f126890aSEmmanuel Vadot clocks = <&gcc USB_HS1_XCVR_CLK>, <&gcc USB_HS1_H_CLK>; 783f126890aSEmmanuel Vadot clock-names = "core", "iface"; 784f126890aSEmmanuel Vadot assigned-clocks = <&gcc USB_HS1_XCVR_CLK>; 785f126890aSEmmanuel Vadot assigned-clock-rates = <60000000>; 786f126890aSEmmanuel Vadot resets = <&gcc USB_HS1_RESET>; 787f126890aSEmmanuel Vadot reset-names = "core"; 788f126890aSEmmanuel Vadot phy_type = "ulpi"; 789f126890aSEmmanuel Vadot ahb-burst-config = <0>; 790f126890aSEmmanuel Vadot phys = <&usb_hs1_phy>; 791f126890aSEmmanuel Vadot phy-names = "usb-phy"; 792f126890aSEmmanuel Vadot status = "disabled"; 793f126890aSEmmanuel Vadot #reset-cells = <1>; 794f126890aSEmmanuel Vadot 795f126890aSEmmanuel Vadot ulpi { 796f126890aSEmmanuel Vadot usb_hs1_phy: phy { 797f126890aSEmmanuel Vadot compatible = "qcom,usb-hs-phy-apq8064", 798f126890aSEmmanuel Vadot "qcom,usb-hs-phy"; 799f126890aSEmmanuel Vadot clocks = <&sleep_clk>, <&cxo_board>; 800f126890aSEmmanuel Vadot clock-names = "sleep", "ref"; 801f126890aSEmmanuel Vadot resets = <&usb1 0>; 802f126890aSEmmanuel Vadot reset-names = "por"; 803f126890aSEmmanuel Vadot #phy-cells = <0>; 804f126890aSEmmanuel Vadot }; 805f126890aSEmmanuel Vadot }; 806f126890aSEmmanuel Vadot }; 807f126890aSEmmanuel Vadot 808f126890aSEmmanuel Vadot usb3: usb@12520000 { 809f126890aSEmmanuel Vadot compatible = "qcom,ci-hdrc"; 810f126890aSEmmanuel Vadot reg = <0x12520000 0x200>, 811f126890aSEmmanuel Vadot <0x12520200 0x200>; 812f126890aSEmmanuel Vadot interrupts = <GIC_SPI 188 IRQ_TYPE_LEVEL_HIGH>; 813f126890aSEmmanuel Vadot clocks = <&gcc USB_HS3_XCVR_CLK>, <&gcc USB_HS3_H_CLK>; 814f126890aSEmmanuel Vadot clock-names = "core", "iface"; 815f126890aSEmmanuel Vadot assigned-clocks = <&gcc USB_HS3_XCVR_CLK>; 816f126890aSEmmanuel Vadot assigned-clock-rates = <60000000>; 817f126890aSEmmanuel Vadot resets = <&gcc USB_HS3_RESET>; 818f126890aSEmmanuel Vadot reset-names = "core"; 819f126890aSEmmanuel Vadot phy_type = "ulpi"; 820f126890aSEmmanuel Vadot ahb-burst-config = <0>; 821f126890aSEmmanuel Vadot phys = <&usb_hs3_phy>; 822f126890aSEmmanuel Vadot phy-names = "usb-phy"; 823f126890aSEmmanuel Vadot status = "disabled"; 824f126890aSEmmanuel Vadot #reset-cells = <1>; 825f126890aSEmmanuel Vadot 826f126890aSEmmanuel Vadot ulpi { 827f126890aSEmmanuel Vadot usb_hs3_phy: phy { 828f126890aSEmmanuel Vadot compatible = "qcom,usb-hs-phy-apq8064", 829f126890aSEmmanuel Vadot "qcom,usb-hs-phy"; 830f126890aSEmmanuel Vadot #phy-cells = <0>; 831f126890aSEmmanuel Vadot clocks = <&sleep_clk>, <&cxo_board>; 832f126890aSEmmanuel Vadot clock-names = "sleep", "ref"; 833f126890aSEmmanuel Vadot resets = <&usb3 0>; 834f126890aSEmmanuel Vadot reset-names = "por"; 835f126890aSEmmanuel Vadot }; 836f126890aSEmmanuel Vadot }; 837f126890aSEmmanuel Vadot }; 838f126890aSEmmanuel Vadot 839f126890aSEmmanuel Vadot usb4: usb@12530000 { 840f126890aSEmmanuel Vadot compatible = "qcom,ci-hdrc"; 841f126890aSEmmanuel Vadot reg = <0x12530000 0x200>, 842f126890aSEmmanuel Vadot <0x12530200 0x200>; 843f126890aSEmmanuel Vadot interrupts = <GIC_SPI 215 IRQ_TYPE_LEVEL_HIGH>; 844f126890aSEmmanuel Vadot clocks = <&gcc USB_HS4_XCVR_CLK>, <&gcc USB_HS4_H_CLK>; 845f126890aSEmmanuel Vadot clock-names = "core", "iface"; 846f126890aSEmmanuel Vadot assigned-clocks = <&gcc USB_HS4_XCVR_CLK>; 847f126890aSEmmanuel Vadot assigned-clock-rates = <60000000>; 848f126890aSEmmanuel Vadot resets = <&gcc USB_HS4_RESET>; 849f126890aSEmmanuel Vadot reset-names = "core"; 850f126890aSEmmanuel Vadot phy_type = "ulpi"; 851f126890aSEmmanuel Vadot ahb-burst-config = <0>; 852f126890aSEmmanuel Vadot phys = <&usb_hs4_phy>; 853f126890aSEmmanuel Vadot phy-names = "usb-phy"; 854f126890aSEmmanuel Vadot status = "disabled"; 855f126890aSEmmanuel Vadot #reset-cells = <1>; 856f126890aSEmmanuel Vadot 857f126890aSEmmanuel Vadot ulpi { 858f126890aSEmmanuel Vadot usb_hs4_phy: phy { 859f126890aSEmmanuel Vadot compatible = "qcom,usb-hs-phy-apq8064", 860f126890aSEmmanuel Vadot "qcom,usb-hs-phy"; 861f126890aSEmmanuel Vadot #phy-cells = <0>; 862f126890aSEmmanuel Vadot clocks = <&sleep_clk>, <&cxo_board>; 863f126890aSEmmanuel Vadot clock-names = "sleep", "ref"; 864f126890aSEmmanuel Vadot resets = <&usb4 0>; 865f126890aSEmmanuel Vadot reset-names = "por"; 866f126890aSEmmanuel Vadot }; 867f126890aSEmmanuel Vadot }; 868f126890aSEmmanuel Vadot }; 869f126890aSEmmanuel Vadot 870f126890aSEmmanuel Vadot sata_phy0: phy@1b400000 { 871f126890aSEmmanuel Vadot compatible = "qcom,apq8064-sata-phy"; 872f126890aSEmmanuel Vadot status = "disabled"; 873f126890aSEmmanuel Vadot reg = <0x1b400000 0x200>; 874f126890aSEmmanuel Vadot clocks = <&gcc SATA_PHY_CFG_CLK>; 875f126890aSEmmanuel Vadot clock-names = "cfg"; 876f126890aSEmmanuel Vadot #phy-cells = <0>; 877f126890aSEmmanuel Vadot }; 878f126890aSEmmanuel Vadot 879f126890aSEmmanuel Vadot sata0: sata@29000000 { 880f126890aSEmmanuel Vadot compatible = "qcom,apq8064-ahci", "generic-ahci"; 881f126890aSEmmanuel Vadot status = "disabled"; 882f126890aSEmmanuel Vadot reg = <0x29000000 0x180>; 883f126890aSEmmanuel Vadot interrupts = <GIC_SPI 209 IRQ_TYPE_LEVEL_HIGH>; 884f126890aSEmmanuel Vadot 885f126890aSEmmanuel Vadot clocks = <&gcc SFAB_SATA_S_H_CLK>, 886f126890aSEmmanuel Vadot <&gcc SATA_H_CLK>, 887f126890aSEmmanuel Vadot <&gcc SATA_A_CLK>, 888f126890aSEmmanuel Vadot <&gcc SATA_RXOOB_CLK>, 889f126890aSEmmanuel Vadot <&gcc SATA_PMALIVE_CLK>; 890f126890aSEmmanuel Vadot clock-names = "slave_iface", 891f126890aSEmmanuel Vadot "iface", 892*b2d2a78aSEmmanuel Vadot "core", 893f126890aSEmmanuel Vadot "rxoob", 894*b2d2a78aSEmmanuel Vadot "pmalive"; 895f126890aSEmmanuel Vadot 896f126890aSEmmanuel Vadot assigned-clocks = <&gcc SATA_RXOOB_CLK>, 897f126890aSEmmanuel Vadot <&gcc SATA_PMALIVE_CLK>; 898f126890aSEmmanuel Vadot assigned-clock-rates = <100000000>, <100000000>; 899f126890aSEmmanuel Vadot 900f126890aSEmmanuel Vadot phys = <&sata_phy0>; 901f126890aSEmmanuel Vadot phy-names = "sata-phy"; 902f126890aSEmmanuel Vadot ports-implemented = <0x1>; 903f126890aSEmmanuel Vadot }; 904f126890aSEmmanuel Vadot 905f126890aSEmmanuel Vadot sdcc3: mmc@12180000 { 906f126890aSEmmanuel Vadot compatible = "arm,pl18x", "arm,primecell"; 907f126890aSEmmanuel Vadot arm,primecell-periphid = <0x00051180>; 908f126890aSEmmanuel Vadot status = "disabled"; 909f126890aSEmmanuel Vadot reg = <0x12180000 0x2000>; 910f126890aSEmmanuel Vadot interrupts = <GIC_SPI 102 IRQ_TYPE_LEVEL_HIGH>; 911f126890aSEmmanuel Vadot clocks = <&gcc SDC3_CLK>, <&gcc SDC3_H_CLK>; 912f126890aSEmmanuel Vadot clock-names = "mclk", "apb_pclk"; 913f126890aSEmmanuel Vadot bus-width = <4>; 914f126890aSEmmanuel Vadot cap-sd-highspeed; 915f126890aSEmmanuel Vadot cap-mmc-highspeed; 916f126890aSEmmanuel Vadot max-frequency = <192000000>; 917f126890aSEmmanuel Vadot no-1-8-v; 918f126890aSEmmanuel Vadot dmas = <&sdcc3bam 2>, <&sdcc3bam 1>; 919f126890aSEmmanuel Vadot dma-names = "tx", "rx"; 920f126890aSEmmanuel Vadot }; 921f126890aSEmmanuel Vadot 922f126890aSEmmanuel Vadot sdcc3bam: dma-controller@12182000 { 923f126890aSEmmanuel Vadot compatible = "qcom,bam-v1.3.0"; 924f126890aSEmmanuel Vadot reg = <0x12182000 0x8000>; 92501950c46SEmmanuel Vadot interrupts = <GIC_SPI 96 IRQ_TYPE_LEVEL_HIGH>; 926f126890aSEmmanuel Vadot clocks = <&gcc SDC3_H_CLK>; 927f126890aSEmmanuel Vadot clock-names = "bam_clk"; 928f126890aSEmmanuel Vadot #dma-cells = <1>; 929f126890aSEmmanuel Vadot qcom,ee = <0>; 930f126890aSEmmanuel Vadot }; 931f126890aSEmmanuel Vadot 932f126890aSEmmanuel Vadot sdcc4: mmc@121c0000 { 933f126890aSEmmanuel Vadot compatible = "arm,pl18x", "arm,primecell"; 934f126890aSEmmanuel Vadot arm,primecell-periphid = <0x00051180>; 935f126890aSEmmanuel Vadot status = "disabled"; 936f126890aSEmmanuel Vadot reg = <0x121c0000 0x2000>; 937f126890aSEmmanuel Vadot interrupts = <GIC_SPI 101 IRQ_TYPE_LEVEL_HIGH>; 938f126890aSEmmanuel Vadot clocks = <&gcc SDC4_CLK>, <&gcc SDC4_H_CLK>; 939f126890aSEmmanuel Vadot clock-names = "mclk", "apb_pclk"; 940f126890aSEmmanuel Vadot bus-width = <4>; 941f126890aSEmmanuel Vadot cap-sd-highspeed; 942f126890aSEmmanuel Vadot cap-mmc-highspeed; 943f126890aSEmmanuel Vadot max-frequency = <48000000>; 944f126890aSEmmanuel Vadot dmas = <&sdcc4bam 2>, <&sdcc4bam 1>; 945f126890aSEmmanuel Vadot dma-names = "tx", "rx"; 946f126890aSEmmanuel Vadot pinctrl-names = "default"; 947*b2d2a78aSEmmanuel Vadot pinctrl-0 = <&sdc4_default_state>; 948f126890aSEmmanuel Vadot }; 949f126890aSEmmanuel Vadot 950f126890aSEmmanuel Vadot sdcc4bam: dma-controller@121c2000 { 951f126890aSEmmanuel Vadot compatible = "qcom,bam-v1.3.0"; 952f126890aSEmmanuel Vadot reg = <0x121c2000 0x8000>; 95301950c46SEmmanuel Vadot interrupts = <GIC_SPI 95 IRQ_TYPE_LEVEL_HIGH>; 954f126890aSEmmanuel Vadot clocks = <&gcc SDC4_H_CLK>; 955f126890aSEmmanuel Vadot clock-names = "bam_clk"; 956f126890aSEmmanuel Vadot #dma-cells = <1>; 957f126890aSEmmanuel Vadot qcom,ee = <0>; 958f126890aSEmmanuel Vadot }; 959f126890aSEmmanuel Vadot 960f126890aSEmmanuel Vadot sdcc1: mmc@12400000 { 961f126890aSEmmanuel Vadot status = "disabled"; 962f126890aSEmmanuel Vadot compatible = "arm,pl18x", "arm,primecell"; 963f126890aSEmmanuel Vadot pinctrl-names = "default"; 964*b2d2a78aSEmmanuel Vadot pinctrl-0 = <&sdcc1_default_state>; 965f126890aSEmmanuel Vadot arm,primecell-periphid = <0x00051180>; 966f126890aSEmmanuel Vadot reg = <0x12400000 0x2000>; 967f126890aSEmmanuel Vadot interrupts = <GIC_SPI 104 IRQ_TYPE_LEVEL_HIGH>; 968f126890aSEmmanuel Vadot clocks = <&gcc SDC1_CLK>, <&gcc SDC1_H_CLK>; 969f126890aSEmmanuel Vadot clock-names = "mclk", "apb_pclk"; 970f126890aSEmmanuel Vadot bus-width = <8>; 971f126890aSEmmanuel Vadot max-frequency = <96000000>; 972f126890aSEmmanuel Vadot non-removable; 973f126890aSEmmanuel Vadot cap-sd-highspeed; 974f126890aSEmmanuel Vadot cap-mmc-highspeed; 975f126890aSEmmanuel Vadot dmas = <&sdcc1bam 2>, <&sdcc1bam 1>; 976f126890aSEmmanuel Vadot dma-names = "tx", "rx"; 977f126890aSEmmanuel Vadot }; 978f126890aSEmmanuel Vadot 979f126890aSEmmanuel Vadot sdcc1bam: dma-controller@12402000 { 980f126890aSEmmanuel Vadot compatible = "qcom,bam-v1.3.0"; 981f126890aSEmmanuel Vadot reg = <0x12402000 0x8000>; 98201950c46SEmmanuel Vadot interrupts = <GIC_SPI 98 IRQ_TYPE_LEVEL_HIGH>; 983f126890aSEmmanuel Vadot clocks = <&gcc SDC1_H_CLK>; 984f126890aSEmmanuel Vadot clock-names = "bam_clk"; 985f126890aSEmmanuel Vadot #dma-cells = <1>; 986f126890aSEmmanuel Vadot qcom,ee = <0>; 987f126890aSEmmanuel Vadot }; 988f126890aSEmmanuel Vadot 989f126890aSEmmanuel Vadot tcsr: syscon@1a400000 { 990f126890aSEmmanuel Vadot compatible = "qcom,tcsr-apq8064", "syscon"; 991f126890aSEmmanuel Vadot reg = <0x1a400000 0x100>; 992f126890aSEmmanuel Vadot }; 993f126890aSEmmanuel Vadot 9940e8011faSEmmanuel Vadot gpu: gpu@4300000 { 995f126890aSEmmanuel Vadot compatible = "qcom,adreno-320.2", "qcom,adreno"; 996f126890aSEmmanuel Vadot reg = <0x04300000 0x20000>; 997f126890aSEmmanuel Vadot reg-names = "kgsl_3d0_reg_memory"; 998f126890aSEmmanuel Vadot interrupts = <GIC_SPI 80 IRQ_TYPE_LEVEL_HIGH>; 999f126890aSEmmanuel Vadot interrupt-names = "kgsl_3d0_irq"; 1000f126890aSEmmanuel Vadot clock-names = 1001f126890aSEmmanuel Vadot "core", 1002f126890aSEmmanuel Vadot "iface", 1003f126890aSEmmanuel Vadot "mem", 1004f126890aSEmmanuel Vadot "mem_iface"; 1005f126890aSEmmanuel Vadot clocks = 1006f126890aSEmmanuel Vadot <&mmcc GFX3D_CLK>, 1007f126890aSEmmanuel Vadot <&mmcc GFX3D_AHB_CLK>, 1008f126890aSEmmanuel Vadot <&mmcc GFX3D_AXI_CLK>, 1009f126890aSEmmanuel Vadot <&mmcc MMSS_IMEM_AHB_CLK>; 1010f126890aSEmmanuel Vadot 1011f126890aSEmmanuel Vadot iommus = <&gfx3d 0 1012f126890aSEmmanuel Vadot &gfx3d 1 1013f126890aSEmmanuel Vadot &gfx3d 2 1014f126890aSEmmanuel Vadot &gfx3d 3 1015f126890aSEmmanuel Vadot &gfx3d 4 1016f126890aSEmmanuel Vadot &gfx3d 5 1017f126890aSEmmanuel Vadot &gfx3d 6 1018f126890aSEmmanuel Vadot &gfx3d 7 1019f126890aSEmmanuel Vadot &gfx3d 8 1020f126890aSEmmanuel Vadot &gfx3d 9 1021f126890aSEmmanuel Vadot &gfx3d 10 1022f126890aSEmmanuel Vadot &gfx3d 11 1023f126890aSEmmanuel Vadot &gfx3d 12 1024f126890aSEmmanuel Vadot &gfx3d 13 1025f126890aSEmmanuel Vadot &gfx3d 14 1026f126890aSEmmanuel Vadot &gfx3d 15 1027f126890aSEmmanuel Vadot &gfx3d 16 1028f126890aSEmmanuel Vadot &gfx3d 17 1029f126890aSEmmanuel Vadot &gfx3d 18 1030f126890aSEmmanuel Vadot &gfx3d 19 1031f126890aSEmmanuel Vadot &gfx3d 20 1032f126890aSEmmanuel Vadot &gfx3d 21 1033f126890aSEmmanuel Vadot &gfx3d 22 1034f126890aSEmmanuel Vadot &gfx3d 23 1035f126890aSEmmanuel Vadot &gfx3d 24 1036f126890aSEmmanuel Vadot &gfx3d 25 1037f126890aSEmmanuel Vadot &gfx3d 26 1038f126890aSEmmanuel Vadot &gfx3d 27 1039f126890aSEmmanuel Vadot &gfx3d 28 1040f126890aSEmmanuel Vadot &gfx3d 29 1041f126890aSEmmanuel Vadot &gfx3d 30 1042f126890aSEmmanuel Vadot &gfx3d 31 1043f126890aSEmmanuel Vadot &gfx3d1 0 1044f126890aSEmmanuel Vadot &gfx3d1 1 1045f126890aSEmmanuel Vadot &gfx3d1 2 1046f126890aSEmmanuel Vadot &gfx3d1 3 1047f126890aSEmmanuel Vadot &gfx3d1 4 1048f126890aSEmmanuel Vadot &gfx3d1 5 1049f126890aSEmmanuel Vadot &gfx3d1 6 1050f126890aSEmmanuel Vadot &gfx3d1 7 1051f126890aSEmmanuel Vadot &gfx3d1 8 1052f126890aSEmmanuel Vadot &gfx3d1 9 1053f126890aSEmmanuel Vadot &gfx3d1 10 1054f126890aSEmmanuel Vadot &gfx3d1 11 1055f126890aSEmmanuel Vadot &gfx3d1 12 1056f126890aSEmmanuel Vadot &gfx3d1 13 1057f126890aSEmmanuel Vadot &gfx3d1 14 1058f126890aSEmmanuel Vadot &gfx3d1 15 1059f126890aSEmmanuel Vadot &gfx3d1 16 1060f126890aSEmmanuel Vadot &gfx3d1 17 1061f126890aSEmmanuel Vadot &gfx3d1 18 1062f126890aSEmmanuel Vadot &gfx3d1 19 1063f126890aSEmmanuel Vadot &gfx3d1 20 1064f126890aSEmmanuel Vadot &gfx3d1 21 1065f126890aSEmmanuel Vadot &gfx3d1 22 1066f126890aSEmmanuel Vadot &gfx3d1 23 1067f126890aSEmmanuel Vadot &gfx3d1 24 1068f126890aSEmmanuel Vadot &gfx3d1 25 1069f126890aSEmmanuel Vadot &gfx3d1 26 1070f126890aSEmmanuel Vadot &gfx3d1 27 1071f126890aSEmmanuel Vadot &gfx3d1 28 1072f126890aSEmmanuel Vadot &gfx3d1 29 1073f126890aSEmmanuel Vadot &gfx3d1 30 1074f126890aSEmmanuel Vadot &gfx3d1 31>; 1075f126890aSEmmanuel Vadot 1076f126890aSEmmanuel Vadot operating-points-v2 = <&gpu_opp_table>; 1077f126890aSEmmanuel Vadot 1078f126890aSEmmanuel Vadot gpu_opp_table: opp-table { 1079f126890aSEmmanuel Vadot compatible = "operating-points-v2"; 1080f126890aSEmmanuel Vadot 1081f126890aSEmmanuel Vadot opp-450000000 { 1082f126890aSEmmanuel Vadot opp-hz = /bits/ 64 <450000000>; 1083f126890aSEmmanuel Vadot }; 1084f126890aSEmmanuel Vadot 1085f126890aSEmmanuel Vadot opp-27000000 { 1086f126890aSEmmanuel Vadot opp-hz = /bits/ 64 <27000000>; 1087f126890aSEmmanuel Vadot }; 1088f126890aSEmmanuel Vadot }; 1089f126890aSEmmanuel Vadot }; 1090f126890aSEmmanuel Vadot 1091f126890aSEmmanuel Vadot mmss_sfpb: syscon@5700000 { 1092f126890aSEmmanuel Vadot compatible = "syscon"; 1093f126890aSEmmanuel Vadot reg = <0x5700000 0x70>; 1094f126890aSEmmanuel Vadot }; 1095f126890aSEmmanuel Vadot 1096f126890aSEmmanuel Vadot dsi0: dsi@4700000 { 1097f126890aSEmmanuel Vadot compatible = "qcom,apq8064-dsi-ctrl", 1098f126890aSEmmanuel Vadot "qcom,mdss-dsi-ctrl"; 1099f126890aSEmmanuel Vadot #address-cells = <1>; 1100f126890aSEmmanuel Vadot #size-cells = <0>; 1101f126890aSEmmanuel Vadot interrupts = <GIC_SPI 82 IRQ_TYPE_LEVEL_HIGH>; 1102f126890aSEmmanuel Vadot reg = <0x04700000 0x200>; 1103f126890aSEmmanuel Vadot reg-names = "dsi_ctrl"; 1104f126890aSEmmanuel Vadot 1105f126890aSEmmanuel Vadot clocks = <&mmcc DSI_M_AHB_CLK>, 1106f126890aSEmmanuel Vadot <&mmcc DSI_S_AHB_CLK>, 1107f126890aSEmmanuel Vadot <&mmcc AMP_AHB_CLK>, 1108f126890aSEmmanuel Vadot <&mmcc DSI_CLK>, 1109f126890aSEmmanuel Vadot <&mmcc DSI1_BYTE_CLK>, 1110f126890aSEmmanuel Vadot <&mmcc DSI_PIXEL_CLK>, 1111f126890aSEmmanuel Vadot <&mmcc DSI1_ESC_CLK>; 1112f126890aSEmmanuel Vadot clock-names = "iface", "bus", "core_mmss", 1113f126890aSEmmanuel Vadot "src", "byte", "pixel", 1114f126890aSEmmanuel Vadot "core"; 1115f126890aSEmmanuel Vadot 1116f126890aSEmmanuel Vadot assigned-clocks = <&mmcc DSI1_BYTE_SRC>, 1117f126890aSEmmanuel Vadot <&mmcc DSI1_ESC_SRC>, 1118f126890aSEmmanuel Vadot <&mmcc DSI_SRC>, 1119f126890aSEmmanuel Vadot <&mmcc DSI_PIXEL_SRC>; 1120f126890aSEmmanuel Vadot assigned-clock-parents = <&dsi0_phy 0>, 1121f126890aSEmmanuel Vadot <&dsi0_phy 0>, 1122f126890aSEmmanuel Vadot <&dsi0_phy 1>, 1123f126890aSEmmanuel Vadot <&dsi0_phy 1>; 1124f126890aSEmmanuel Vadot syscon-sfpb = <&mmss_sfpb>; 1125f126890aSEmmanuel Vadot phys = <&dsi0_phy>; 1126f126890aSEmmanuel Vadot status = "disabled"; 1127f126890aSEmmanuel Vadot 1128f126890aSEmmanuel Vadot ports { 1129f126890aSEmmanuel Vadot #address-cells = <1>; 1130f126890aSEmmanuel Vadot #size-cells = <0>; 1131f126890aSEmmanuel Vadot 1132f126890aSEmmanuel Vadot port@0 { 1133f126890aSEmmanuel Vadot reg = <0>; 1134f126890aSEmmanuel Vadot dsi0_in: endpoint { 1135f126890aSEmmanuel Vadot }; 1136f126890aSEmmanuel Vadot }; 1137f126890aSEmmanuel Vadot 1138f126890aSEmmanuel Vadot port@1 { 1139f126890aSEmmanuel Vadot reg = <1>; 1140f126890aSEmmanuel Vadot dsi0_out: endpoint { 1141f126890aSEmmanuel Vadot }; 1142f126890aSEmmanuel Vadot }; 1143f126890aSEmmanuel Vadot }; 1144f126890aSEmmanuel Vadot }; 1145f126890aSEmmanuel Vadot 1146f126890aSEmmanuel Vadot 1147f126890aSEmmanuel Vadot dsi0_phy: phy@4700200 { 1148f126890aSEmmanuel Vadot compatible = "qcom,dsi-phy-28nm-8960"; 1149f126890aSEmmanuel Vadot #clock-cells = <1>; 1150f126890aSEmmanuel Vadot #phy-cells = <0>; 1151f126890aSEmmanuel Vadot 1152f126890aSEmmanuel Vadot reg = <0x04700200 0x100>, 1153f126890aSEmmanuel Vadot <0x04700300 0x200>, 1154f126890aSEmmanuel Vadot <0x04700500 0x5c>; 1155f126890aSEmmanuel Vadot reg-names = "dsi_pll", "dsi_phy", "dsi_phy_regulator"; 1156f126890aSEmmanuel Vadot clock-names = "iface", "ref"; 1157f126890aSEmmanuel Vadot clocks = <&mmcc DSI_M_AHB_CLK>, 1158f126890aSEmmanuel Vadot <&pxo_board>; 1159f126890aSEmmanuel Vadot status = "disabled"; 1160f126890aSEmmanuel Vadot }; 1161f126890aSEmmanuel Vadot 1162f126890aSEmmanuel Vadot dsi1: dsi@5800000 { 1163f126890aSEmmanuel Vadot compatible = "qcom,mdss-dsi-ctrl"; 1164f126890aSEmmanuel Vadot interrupts = <GIC_SPI 166 IRQ_TYPE_LEVEL_HIGH>; 1165f126890aSEmmanuel Vadot reg = <0x05800000 0x200>; 1166f126890aSEmmanuel Vadot reg-names = "dsi_ctrl"; 1167f126890aSEmmanuel Vadot 1168f126890aSEmmanuel Vadot clocks = <&mmcc DSI2_M_AHB_CLK>, 1169f126890aSEmmanuel Vadot <&mmcc DSI2_S_AHB_CLK>, 1170f126890aSEmmanuel Vadot <&mmcc AMP_AHB_CLK>, 1171f126890aSEmmanuel Vadot <&mmcc DSI2_CLK>, 1172f126890aSEmmanuel Vadot <&mmcc DSI2_BYTE_CLK>, 1173f126890aSEmmanuel Vadot <&mmcc DSI2_PIXEL_CLK>, 1174f126890aSEmmanuel Vadot <&mmcc DSI2_ESC_CLK>; 1175f126890aSEmmanuel Vadot clock-names = "iface", 1176f126890aSEmmanuel Vadot "bus", 1177f126890aSEmmanuel Vadot "core_mmss", 1178f126890aSEmmanuel Vadot "src", 1179f126890aSEmmanuel Vadot "byte", 1180f126890aSEmmanuel Vadot "pixel", 1181f126890aSEmmanuel Vadot "core"; 1182f126890aSEmmanuel Vadot 1183f126890aSEmmanuel Vadot assigned-clocks = <&mmcc DSI2_BYTE_SRC>, 1184f126890aSEmmanuel Vadot <&mmcc DSI2_ESC_SRC>, 1185f126890aSEmmanuel Vadot <&mmcc DSI2_SRC>, 1186f126890aSEmmanuel Vadot <&mmcc DSI2_PIXEL_SRC>; 1187f126890aSEmmanuel Vadot assigned-clock-parents = <&dsi1_phy 0>, 1188f126890aSEmmanuel Vadot <&dsi1_phy 0>, 1189f126890aSEmmanuel Vadot <&dsi1_phy 1>, 1190f126890aSEmmanuel Vadot <&dsi1_phy 1>; 1191f126890aSEmmanuel Vadot 1192f126890aSEmmanuel Vadot syscon-sfpb = <&mmss_sfpb>; 1193f126890aSEmmanuel Vadot phys = <&dsi1_phy>; 1194f126890aSEmmanuel Vadot 1195f126890aSEmmanuel Vadot #address-cells = <1>; 1196f126890aSEmmanuel Vadot #size-cells = <0>; 1197f126890aSEmmanuel Vadot 1198f126890aSEmmanuel Vadot status = "disabled"; 1199f126890aSEmmanuel Vadot 1200f126890aSEmmanuel Vadot ports { 1201f126890aSEmmanuel Vadot #address-cells = <1>; 1202f126890aSEmmanuel Vadot #size-cells = <0>; 1203f126890aSEmmanuel Vadot 1204f126890aSEmmanuel Vadot port@0 { 1205f126890aSEmmanuel Vadot reg = <0>; 1206f126890aSEmmanuel Vadot dsi1_in: endpoint { 1207f126890aSEmmanuel Vadot }; 1208f126890aSEmmanuel Vadot }; 1209f126890aSEmmanuel Vadot 1210f126890aSEmmanuel Vadot port@1 { 1211f126890aSEmmanuel Vadot reg = <1>; 1212f126890aSEmmanuel Vadot dsi1_out: endpoint { 1213f126890aSEmmanuel Vadot }; 1214f126890aSEmmanuel Vadot }; 1215f126890aSEmmanuel Vadot }; 1216f126890aSEmmanuel Vadot }; 1217f126890aSEmmanuel Vadot 1218f126890aSEmmanuel Vadot 1219f126890aSEmmanuel Vadot dsi1_phy: dsi-phy@5800200 { 1220f126890aSEmmanuel Vadot compatible = "qcom,dsi-phy-28nm-8960"; 1221f126890aSEmmanuel Vadot reg = <0x05800200 0x100>, 1222f126890aSEmmanuel Vadot <0x05800300 0x200>, 1223f126890aSEmmanuel Vadot <0x05800500 0x5c>; 1224f126890aSEmmanuel Vadot reg-names = "dsi_pll", 1225f126890aSEmmanuel Vadot "dsi_phy", 1226f126890aSEmmanuel Vadot "dsi_phy_regulator"; 1227f126890aSEmmanuel Vadot clock-names = "iface", 1228f126890aSEmmanuel Vadot "ref"; 1229f126890aSEmmanuel Vadot clocks = <&mmcc DSI2_M_AHB_CLK>, 1230f126890aSEmmanuel Vadot <&pxo_board>; 1231f126890aSEmmanuel Vadot #clock-cells = <1>; 1232f126890aSEmmanuel Vadot #phy-cells = <0>; 1233f126890aSEmmanuel Vadot 1234f126890aSEmmanuel Vadot status = "disabled"; 1235f126890aSEmmanuel Vadot }; 1236f126890aSEmmanuel Vadot 1237f126890aSEmmanuel Vadot mdp_port0: iommu@7500000 { 1238f126890aSEmmanuel Vadot compatible = "qcom,apq8064-iommu"; 1239f126890aSEmmanuel Vadot #iommu-cells = <1>; 1240f126890aSEmmanuel Vadot clock-names = 1241f126890aSEmmanuel Vadot "smmu_pclk", 1242f126890aSEmmanuel Vadot "iommu_clk"; 1243f126890aSEmmanuel Vadot clocks = 1244f126890aSEmmanuel Vadot <&mmcc SMMU_AHB_CLK>, 1245f126890aSEmmanuel Vadot <&mmcc MDP_AXI_CLK>; 1246f126890aSEmmanuel Vadot reg = <0x07500000 0x100000>; 1247f126890aSEmmanuel Vadot interrupts = 1248f126890aSEmmanuel Vadot <GIC_SPI 63 IRQ_TYPE_LEVEL_HIGH>, 1249f126890aSEmmanuel Vadot <GIC_SPI 64 IRQ_TYPE_LEVEL_HIGH>; 1250f126890aSEmmanuel Vadot qcom,ncb = <2>; 1251f126890aSEmmanuel Vadot }; 1252f126890aSEmmanuel Vadot 1253f126890aSEmmanuel Vadot mdp_port1: iommu@7600000 { 1254f126890aSEmmanuel Vadot compatible = "qcom,apq8064-iommu"; 1255f126890aSEmmanuel Vadot #iommu-cells = <1>; 1256f126890aSEmmanuel Vadot clock-names = 1257f126890aSEmmanuel Vadot "smmu_pclk", 1258f126890aSEmmanuel Vadot "iommu_clk"; 1259f126890aSEmmanuel Vadot clocks = 1260f126890aSEmmanuel Vadot <&mmcc SMMU_AHB_CLK>, 1261f126890aSEmmanuel Vadot <&mmcc MDP_AXI_CLK>; 1262f126890aSEmmanuel Vadot reg = <0x07600000 0x100000>; 1263f126890aSEmmanuel Vadot interrupts = 1264f126890aSEmmanuel Vadot <GIC_SPI 61 IRQ_TYPE_LEVEL_HIGH>, 1265f126890aSEmmanuel Vadot <GIC_SPI 62 IRQ_TYPE_LEVEL_HIGH>; 1266f126890aSEmmanuel Vadot qcom,ncb = <2>; 1267f126890aSEmmanuel Vadot }; 1268f126890aSEmmanuel Vadot 1269f126890aSEmmanuel Vadot gfx3d: iommu@7c00000 { 1270f126890aSEmmanuel Vadot compatible = "qcom,apq8064-iommu"; 1271f126890aSEmmanuel Vadot #iommu-cells = <1>; 1272f126890aSEmmanuel Vadot clock-names = 1273f126890aSEmmanuel Vadot "smmu_pclk", 1274f126890aSEmmanuel Vadot "iommu_clk"; 1275f126890aSEmmanuel Vadot clocks = 1276f126890aSEmmanuel Vadot <&mmcc SMMU_AHB_CLK>, 1277f126890aSEmmanuel Vadot <&mmcc GFX3D_AXI_CLK>; 1278f126890aSEmmanuel Vadot reg = <0x07c00000 0x100000>; 1279f126890aSEmmanuel Vadot interrupts = 1280f126890aSEmmanuel Vadot <GIC_SPI 69 IRQ_TYPE_LEVEL_HIGH>, 1281f126890aSEmmanuel Vadot <GIC_SPI 70 IRQ_TYPE_LEVEL_HIGH>; 1282f126890aSEmmanuel Vadot qcom,ncb = <3>; 1283f126890aSEmmanuel Vadot }; 1284f126890aSEmmanuel Vadot 1285f126890aSEmmanuel Vadot gfx3d1: iommu@7d00000 { 1286f126890aSEmmanuel Vadot compatible = "qcom,apq8064-iommu"; 1287f126890aSEmmanuel Vadot #iommu-cells = <1>; 1288f126890aSEmmanuel Vadot clock-names = 1289f126890aSEmmanuel Vadot "smmu_pclk", 1290f126890aSEmmanuel Vadot "iommu_clk"; 1291f126890aSEmmanuel Vadot clocks = 1292f126890aSEmmanuel Vadot <&mmcc SMMU_AHB_CLK>, 1293f126890aSEmmanuel Vadot <&mmcc GFX3D_AXI_CLK>; 1294f126890aSEmmanuel Vadot reg = <0x07d00000 0x100000>; 1295f126890aSEmmanuel Vadot interrupts = 1296f126890aSEmmanuel Vadot <GIC_SPI 210 IRQ_TYPE_LEVEL_HIGH>, 1297f126890aSEmmanuel Vadot <GIC_SPI 211 IRQ_TYPE_LEVEL_HIGH>; 1298f126890aSEmmanuel Vadot qcom,ncb = <3>; 1299f126890aSEmmanuel Vadot }; 1300f126890aSEmmanuel Vadot 13018d13bc63SEmmanuel Vadot pcie: pcie@1b500000 { 1302f126890aSEmmanuel Vadot compatible = "qcom,pcie-apq8064"; 1303f126890aSEmmanuel Vadot reg = <0x1b500000 0x1000>, 1304f126890aSEmmanuel Vadot <0x1b502000 0x80>, 1305f126890aSEmmanuel Vadot <0x1b600000 0x100>, 1306f126890aSEmmanuel Vadot <0x0ff00000 0x100000>; 1307f126890aSEmmanuel Vadot reg-names = "dbi", "elbi", "parf", "config"; 1308f126890aSEmmanuel Vadot device_type = "pci"; 1309f126890aSEmmanuel Vadot linux,pci-domain = <0>; 1310f126890aSEmmanuel Vadot bus-range = <0x00 0xff>; 1311f126890aSEmmanuel Vadot num-lanes = <1>; 1312f126890aSEmmanuel Vadot #address-cells = <3>; 1313f126890aSEmmanuel Vadot #size-cells = <2>; 1314f126890aSEmmanuel Vadot ranges = <0x81000000 0x0 0x00000000 0x0fe00000 0x0 0x00100000>, /* I/O */ 1315f126890aSEmmanuel Vadot <0x82000000 0x0 0x08000000 0x08000000 0x0 0x07e00000>; /* mem */ 1316f126890aSEmmanuel Vadot interrupts = <GIC_SPI 238 IRQ_TYPE_LEVEL_HIGH>; 1317f126890aSEmmanuel Vadot interrupt-names = "msi"; 1318f126890aSEmmanuel Vadot #interrupt-cells = <1>; 1319f126890aSEmmanuel Vadot interrupt-map-mask = <0 0 0 0x7>; 1320f126890aSEmmanuel Vadot interrupt-map = <0 0 0 1 &intc 0 36 IRQ_TYPE_LEVEL_HIGH>, /* int_a */ 1321f126890aSEmmanuel Vadot <0 0 0 2 &intc 0 37 IRQ_TYPE_LEVEL_HIGH>, /* int_b */ 1322f126890aSEmmanuel Vadot <0 0 0 3 &intc 0 38 IRQ_TYPE_LEVEL_HIGH>, /* int_c */ 1323f126890aSEmmanuel Vadot <0 0 0 4 &intc 0 39 IRQ_TYPE_LEVEL_HIGH>; /* int_d */ 1324f126890aSEmmanuel Vadot clocks = <&gcc PCIE_A_CLK>, 1325f126890aSEmmanuel Vadot <&gcc PCIE_H_CLK>, 1326f126890aSEmmanuel Vadot <&gcc PCIE_PHY_REF_CLK>; 1327f126890aSEmmanuel Vadot clock-names = "core", "iface", "phy"; 1328f126890aSEmmanuel Vadot resets = <&gcc PCIE_ACLK_RESET>, 1329f126890aSEmmanuel Vadot <&gcc PCIE_HCLK_RESET>, 1330f126890aSEmmanuel Vadot <&gcc PCIE_POR_RESET>, 1331f126890aSEmmanuel Vadot <&gcc PCIE_PCI_RESET>, 1332f126890aSEmmanuel Vadot <&gcc PCIE_PHY_RESET>; 1333f126890aSEmmanuel Vadot reset-names = "axi", "ahb", "por", "pci", "phy"; 1334f126890aSEmmanuel Vadot status = "disabled"; 13357d0873ebSEmmanuel Vadot 13367d0873ebSEmmanuel Vadot pcie@0 { 13377d0873ebSEmmanuel Vadot device_type = "pci"; 13387d0873ebSEmmanuel Vadot reg = <0x0 0x0 0x0 0x0 0x0>; 13397d0873ebSEmmanuel Vadot bus-range = <0x01 0xff>; 13407d0873ebSEmmanuel Vadot 13417d0873ebSEmmanuel Vadot #address-cells = <3>; 13427d0873ebSEmmanuel Vadot #size-cells = <2>; 13437d0873ebSEmmanuel Vadot ranges; 13447d0873ebSEmmanuel Vadot }; 1345f126890aSEmmanuel Vadot }; 1346f126890aSEmmanuel Vadot 1347f126890aSEmmanuel Vadot hdmi: hdmi-tx@4a00000 { 1348f126890aSEmmanuel Vadot compatible = "qcom,hdmi-tx-8960"; 1349f126890aSEmmanuel Vadot pinctrl-names = "default"; 1350f126890aSEmmanuel Vadot pinctrl-0 = <&hdmi_pinctrl>; 1351f126890aSEmmanuel Vadot reg = <0x04a00000 0x2f0>; 1352f126890aSEmmanuel Vadot reg-names = "core_physical"; 1353f126890aSEmmanuel Vadot interrupts = <GIC_SPI 79 IRQ_TYPE_LEVEL_HIGH>; 1354f126890aSEmmanuel Vadot clocks = <&mmcc HDMI_APP_CLK>, 1355f126890aSEmmanuel Vadot <&mmcc HDMI_M_AHB_CLK>, 1356f126890aSEmmanuel Vadot <&mmcc HDMI_S_AHB_CLK>; 1357f126890aSEmmanuel Vadot clock-names = "core", 1358f126890aSEmmanuel Vadot "master_iface", 1359f126890aSEmmanuel Vadot "slave_iface"; 1360f126890aSEmmanuel Vadot 1361f126890aSEmmanuel Vadot phys = <&hdmi_phy>; 1362f126890aSEmmanuel Vadot 1363f126890aSEmmanuel Vadot status = "disabled"; 1364f126890aSEmmanuel Vadot 1365f126890aSEmmanuel Vadot ports { 1366f126890aSEmmanuel Vadot #address-cells = <1>; 1367f126890aSEmmanuel Vadot #size-cells = <0>; 1368f126890aSEmmanuel Vadot 1369f126890aSEmmanuel Vadot port@0 { 1370f126890aSEmmanuel Vadot reg = <0>; 1371f126890aSEmmanuel Vadot hdmi_in: endpoint { 1372f126890aSEmmanuel Vadot }; 1373f126890aSEmmanuel Vadot }; 1374f126890aSEmmanuel Vadot 1375f126890aSEmmanuel Vadot port@1 { 1376f126890aSEmmanuel Vadot reg = <1>; 1377f126890aSEmmanuel Vadot hdmi_out: endpoint { 1378f126890aSEmmanuel Vadot }; 1379f126890aSEmmanuel Vadot }; 1380f126890aSEmmanuel Vadot }; 1381f126890aSEmmanuel Vadot }; 1382f126890aSEmmanuel Vadot 1383f126890aSEmmanuel Vadot hdmi_phy: phy@4a00400 { 1384f126890aSEmmanuel Vadot compatible = "qcom,hdmi-phy-8960"; 1385f126890aSEmmanuel Vadot reg = <0x4a00400 0x60>, 1386f126890aSEmmanuel Vadot <0x4a00500 0x100>; 1387f126890aSEmmanuel Vadot reg-names = "hdmi_phy", 1388f126890aSEmmanuel Vadot "hdmi_pll"; 1389f126890aSEmmanuel Vadot 1390f126890aSEmmanuel Vadot clocks = <&mmcc HDMI_S_AHB_CLK>; 1391f126890aSEmmanuel Vadot clock-names = "slave_iface"; 1392f126890aSEmmanuel Vadot #phy-cells = <0>; 1393f126890aSEmmanuel Vadot #clock-cells = <0>; 1394f126890aSEmmanuel Vadot 1395f126890aSEmmanuel Vadot status = "disabled"; 1396f126890aSEmmanuel Vadot }; 1397f126890aSEmmanuel Vadot 1398f126890aSEmmanuel Vadot mdp: display-controller@5100000 { 1399f126890aSEmmanuel Vadot compatible = "qcom,mdp4"; 1400f126890aSEmmanuel Vadot reg = <0x05100000 0xf0000>; 1401f126890aSEmmanuel Vadot interrupts = <GIC_SPI 75 IRQ_TYPE_LEVEL_HIGH>; 1402f126890aSEmmanuel Vadot clocks = <&mmcc MDP_CLK>, 1403f126890aSEmmanuel Vadot <&mmcc MDP_AHB_CLK>, 1404f126890aSEmmanuel Vadot <&mmcc MDP_AXI_CLK>, 1405f126890aSEmmanuel Vadot <&mmcc MDP_LUT_CLK>, 1406f126890aSEmmanuel Vadot <&mmcc HDMI_TV_CLK>, 1407f126890aSEmmanuel Vadot <&mmcc MDP_TV_CLK>; 1408f126890aSEmmanuel Vadot clock-names = "core_clk", 1409f126890aSEmmanuel Vadot "iface_clk", 1410f126890aSEmmanuel Vadot "bus_clk", 1411f126890aSEmmanuel Vadot "lut_clk", 1412f126890aSEmmanuel Vadot "hdmi_clk", 1413f126890aSEmmanuel Vadot "tv_clk"; 1414f126890aSEmmanuel Vadot 1415f126890aSEmmanuel Vadot iommus = <&mdp_port0 0 1416f126890aSEmmanuel Vadot &mdp_port0 2 1417f126890aSEmmanuel Vadot &mdp_port1 0 1418f126890aSEmmanuel Vadot &mdp_port1 2>; 1419f126890aSEmmanuel Vadot 1420f126890aSEmmanuel Vadot ports { 1421f126890aSEmmanuel Vadot #address-cells = <1>; 1422f126890aSEmmanuel Vadot #size-cells = <0>; 1423f126890aSEmmanuel Vadot 1424f126890aSEmmanuel Vadot port@0 { 1425f126890aSEmmanuel Vadot reg = <0>; 1426f126890aSEmmanuel Vadot mdp_lvds_out: endpoint { 1427f126890aSEmmanuel Vadot }; 1428f126890aSEmmanuel Vadot }; 1429f126890aSEmmanuel Vadot 1430f126890aSEmmanuel Vadot port@1 { 1431f126890aSEmmanuel Vadot reg = <1>; 1432f126890aSEmmanuel Vadot mdp_dsi1_out: endpoint { 1433f126890aSEmmanuel Vadot }; 1434f126890aSEmmanuel Vadot }; 1435f126890aSEmmanuel Vadot 1436f126890aSEmmanuel Vadot port@2 { 1437f126890aSEmmanuel Vadot reg = <2>; 1438f126890aSEmmanuel Vadot mdp_dsi2_out: endpoint { 1439f126890aSEmmanuel Vadot }; 1440f126890aSEmmanuel Vadot }; 1441f126890aSEmmanuel Vadot 1442f126890aSEmmanuel Vadot port@3 { 1443f126890aSEmmanuel Vadot reg = <3>; 1444f126890aSEmmanuel Vadot mdp_dtv_out: endpoint { 1445f126890aSEmmanuel Vadot }; 1446f126890aSEmmanuel Vadot }; 1447f126890aSEmmanuel Vadot }; 1448f126890aSEmmanuel Vadot }; 1449f126890aSEmmanuel Vadot 1450f126890aSEmmanuel Vadot riva: riva-pil@3200800 { 1451f126890aSEmmanuel Vadot compatible = "qcom,riva-pil"; 1452f126890aSEmmanuel Vadot 1453f126890aSEmmanuel Vadot reg = <0x03200800 0x1000>, <0x03202000 0x2000>, <0x03204000 0x100>; 1454f126890aSEmmanuel Vadot reg-names = "ccu", "dxe", "pmu"; 1455f126890aSEmmanuel Vadot 1456f126890aSEmmanuel Vadot interrupts-extended = <&intc GIC_SPI 199 IRQ_TYPE_EDGE_RISING>, 1457f126890aSEmmanuel Vadot <&wcnss_smsm 6 IRQ_TYPE_EDGE_RISING>; 1458f126890aSEmmanuel Vadot interrupt-names = "wdog", "fatal"; 1459f126890aSEmmanuel Vadot 1460f126890aSEmmanuel Vadot memory-region = <&wcnss_mem>; 1461f126890aSEmmanuel Vadot 1462f126890aSEmmanuel Vadot status = "disabled"; 1463f126890aSEmmanuel Vadot 1464f126890aSEmmanuel Vadot iris { 1465f126890aSEmmanuel Vadot compatible = "qcom,wcn3660"; 1466f126890aSEmmanuel Vadot 1467f126890aSEmmanuel Vadot clocks = <&cxo_board>; 1468f126890aSEmmanuel Vadot clock-names = "xo"; 1469f126890aSEmmanuel Vadot }; 1470f126890aSEmmanuel Vadot 1471f126890aSEmmanuel Vadot smd-edge { 1472f126890aSEmmanuel Vadot interrupts = <GIC_SPI 198 IRQ_TYPE_EDGE_RISING>; 1473f126890aSEmmanuel Vadot 1474f126890aSEmmanuel Vadot qcom,ipc = <&l2cc 8 25>; 1475f126890aSEmmanuel Vadot qcom,smd-edge = <6>; 1476f126890aSEmmanuel Vadot 1477f126890aSEmmanuel Vadot label = "riva"; 1478f126890aSEmmanuel Vadot 1479f126890aSEmmanuel Vadot wcnss { 1480f126890aSEmmanuel Vadot compatible = "qcom,wcnss"; 1481f126890aSEmmanuel Vadot qcom,smd-channels = "WCNSS_CTRL"; 1482f126890aSEmmanuel Vadot 1483f126890aSEmmanuel Vadot qcom,mmio = <&riva>; 1484f126890aSEmmanuel Vadot 1485f126890aSEmmanuel Vadot bluetooth { 1486f126890aSEmmanuel Vadot compatible = "qcom,wcnss-bt"; 1487f126890aSEmmanuel Vadot }; 1488f126890aSEmmanuel Vadot 1489f126890aSEmmanuel Vadot wifi { 1490f126890aSEmmanuel Vadot compatible = "qcom,wcnss-wlan"; 1491f126890aSEmmanuel Vadot 1492f126890aSEmmanuel Vadot interrupts = <GIC_SPI 203 IRQ_TYPE_LEVEL_HIGH>, 1493f126890aSEmmanuel Vadot <GIC_SPI 202 IRQ_TYPE_LEVEL_HIGH>; 1494f126890aSEmmanuel Vadot interrupt-names = "tx", "rx"; 1495f126890aSEmmanuel Vadot 1496f126890aSEmmanuel Vadot qcom,smem-states = <&apps_smsm 10>, <&apps_smsm 9>; 1497f126890aSEmmanuel Vadot qcom,smem-state-names = "tx-enable", "tx-rings-empty"; 1498f126890aSEmmanuel Vadot }; 1499f126890aSEmmanuel Vadot }; 1500f126890aSEmmanuel Vadot }; 1501f126890aSEmmanuel Vadot }; 1502f126890aSEmmanuel Vadot 1503f126890aSEmmanuel Vadot etb@1a01000 { 1504f126890aSEmmanuel Vadot compatible = "arm,coresight-etb10", "arm,primecell"; 1505f126890aSEmmanuel Vadot reg = <0x1a01000 0x1000>; 1506f126890aSEmmanuel Vadot 1507f126890aSEmmanuel Vadot clocks = <&rpmcc RPM_QDSS_CLK>; 1508f126890aSEmmanuel Vadot clock-names = "apb_pclk"; 1509f126890aSEmmanuel Vadot 1510f126890aSEmmanuel Vadot in-ports { 1511f126890aSEmmanuel Vadot port { 1512f126890aSEmmanuel Vadot etb_in: endpoint { 1513f126890aSEmmanuel Vadot remote-endpoint = <&replicator_out0>; 1514f126890aSEmmanuel Vadot }; 1515f126890aSEmmanuel Vadot }; 1516f126890aSEmmanuel Vadot }; 1517f126890aSEmmanuel Vadot }; 1518f126890aSEmmanuel Vadot 1519f126890aSEmmanuel Vadot tpiu@1a03000 { 1520f126890aSEmmanuel Vadot compatible = "arm,coresight-tpiu", "arm,primecell"; 1521f126890aSEmmanuel Vadot reg = <0x1a03000 0x1000>; 1522f126890aSEmmanuel Vadot 1523f126890aSEmmanuel Vadot clocks = <&rpmcc RPM_QDSS_CLK>; 1524f126890aSEmmanuel Vadot clock-names = "apb_pclk"; 1525f126890aSEmmanuel Vadot 1526f126890aSEmmanuel Vadot in-ports { 1527f126890aSEmmanuel Vadot port { 1528f126890aSEmmanuel Vadot tpiu_in: endpoint { 1529f126890aSEmmanuel Vadot remote-endpoint = <&replicator_out1>; 1530f126890aSEmmanuel Vadot }; 1531f126890aSEmmanuel Vadot }; 1532f126890aSEmmanuel Vadot }; 1533f126890aSEmmanuel Vadot }; 1534f126890aSEmmanuel Vadot 1535f126890aSEmmanuel Vadot replicator { 1536f126890aSEmmanuel Vadot compatible = "arm,coresight-static-replicator"; 1537f126890aSEmmanuel Vadot 1538f126890aSEmmanuel Vadot clocks = <&rpmcc RPM_QDSS_CLK>; 1539f126890aSEmmanuel Vadot clock-names = "apb_pclk"; 1540f126890aSEmmanuel Vadot 1541f126890aSEmmanuel Vadot out-ports { 1542f126890aSEmmanuel Vadot #address-cells = <1>; 1543f126890aSEmmanuel Vadot #size-cells = <0>; 1544f126890aSEmmanuel Vadot 1545f126890aSEmmanuel Vadot port@0 { 1546f126890aSEmmanuel Vadot reg = <0>; 1547f126890aSEmmanuel Vadot replicator_out0: endpoint { 1548f126890aSEmmanuel Vadot remote-endpoint = <&etb_in>; 1549f126890aSEmmanuel Vadot }; 1550f126890aSEmmanuel Vadot }; 1551f126890aSEmmanuel Vadot port@1 { 1552f126890aSEmmanuel Vadot reg = <1>; 1553f126890aSEmmanuel Vadot replicator_out1: endpoint { 1554f126890aSEmmanuel Vadot remote-endpoint = <&tpiu_in>; 1555f126890aSEmmanuel Vadot }; 1556f126890aSEmmanuel Vadot }; 1557f126890aSEmmanuel Vadot }; 1558f126890aSEmmanuel Vadot 1559f126890aSEmmanuel Vadot in-ports { 1560f126890aSEmmanuel Vadot port { 1561f126890aSEmmanuel Vadot replicator_in: endpoint { 1562f126890aSEmmanuel Vadot remote-endpoint = <&funnel_out>; 1563f126890aSEmmanuel Vadot }; 1564f126890aSEmmanuel Vadot }; 1565f126890aSEmmanuel Vadot }; 1566f126890aSEmmanuel Vadot }; 1567f126890aSEmmanuel Vadot 1568f126890aSEmmanuel Vadot funnel@1a04000 { 1569f126890aSEmmanuel Vadot compatible = "arm,coresight-dynamic-funnel", "arm,primecell"; 1570f126890aSEmmanuel Vadot reg = <0x1a04000 0x1000>; 1571f126890aSEmmanuel Vadot 1572f126890aSEmmanuel Vadot clocks = <&rpmcc RPM_QDSS_CLK>; 1573f126890aSEmmanuel Vadot clock-names = "apb_pclk"; 1574f126890aSEmmanuel Vadot 1575f126890aSEmmanuel Vadot in-ports { 1576f126890aSEmmanuel Vadot #address-cells = <1>; 1577f126890aSEmmanuel Vadot #size-cells = <0>; 1578f126890aSEmmanuel Vadot 1579f126890aSEmmanuel Vadot /* 1580f126890aSEmmanuel Vadot * Not described input ports: 1581f126890aSEmmanuel Vadot * 2 - connected to STM component 1582f126890aSEmmanuel Vadot * 3 - not-connected 1583f126890aSEmmanuel Vadot * 6 - not-connected 1584f126890aSEmmanuel Vadot * 7 - not-connected 1585f126890aSEmmanuel Vadot */ 1586f126890aSEmmanuel Vadot port@0 { 1587f126890aSEmmanuel Vadot reg = <0>; 1588f126890aSEmmanuel Vadot funnel_in0: endpoint { 1589f126890aSEmmanuel Vadot remote-endpoint = <&etm0_out>; 1590f126890aSEmmanuel Vadot }; 1591f126890aSEmmanuel Vadot }; 1592f126890aSEmmanuel Vadot port@1 { 1593f126890aSEmmanuel Vadot reg = <1>; 1594f126890aSEmmanuel Vadot funnel_in1: endpoint { 1595f126890aSEmmanuel Vadot remote-endpoint = <&etm1_out>; 1596f126890aSEmmanuel Vadot }; 1597f126890aSEmmanuel Vadot }; 1598f126890aSEmmanuel Vadot port@4 { 1599f126890aSEmmanuel Vadot reg = <4>; 1600f126890aSEmmanuel Vadot funnel_in4: endpoint { 1601f126890aSEmmanuel Vadot remote-endpoint = <&etm2_out>; 1602f126890aSEmmanuel Vadot }; 1603f126890aSEmmanuel Vadot }; 1604f126890aSEmmanuel Vadot port@5 { 1605f126890aSEmmanuel Vadot reg = <5>; 1606f126890aSEmmanuel Vadot funnel_in5: endpoint { 1607f126890aSEmmanuel Vadot remote-endpoint = <&etm3_out>; 1608f126890aSEmmanuel Vadot }; 1609f126890aSEmmanuel Vadot }; 1610f126890aSEmmanuel Vadot }; 1611f126890aSEmmanuel Vadot 1612f126890aSEmmanuel Vadot out-ports { 1613f126890aSEmmanuel Vadot port { 1614f126890aSEmmanuel Vadot funnel_out: endpoint { 1615f126890aSEmmanuel Vadot remote-endpoint = <&replicator_in>; 1616f126890aSEmmanuel Vadot }; 1617f126890aSEmmanuel Vadot }; 1618f126890aSEmmanuel Vadot }; 1619f126890aSEmmanuel Vadot }; 1620f126890aSEmmanuel Vadot 1621f126890aSEmmanuel Vadot etm@1a1c000 { 1622f126890aSEmmanuel Vadot compatible = "arm,coresight-etm3x", "arm,primecell"; 1623f126890aSEmmanuel Vadot reg = <0x1a1c000 0x1000>; 1624f126890aSEmmanuel Vadot 1625f126890aSEmmanuel Vadot clocks = <&rpmcc RPM_QDSS_CLK>; 1626f126890aSEmmanuel Vadot clock-names = "apb_pclk"; 1627f126890aSEmmanuel Vadot 1628f126890aSEmmanuel Vadot cpu = <&CPU0>; 1629f126890aSEmmanuel Vadot 1630f126890aSEmmanuel Vadot out-ports { 1631f126890aSEmmanuel Vadot port { 1632f126890aSEmmanuel Vadot etm0_out: endpoint { 1633f126890aSEmmanuel Vadot remote-endpoint = <&funnel_in0>; 1634f126890aSEmmanuel Vadot }; 1635f126890aSEmmanuel Vadot }; 1636f126890aSEmmanuel Vadot }; 1637f126890aSEmmanuel Vadot }; 1638f126890aSEmmanuel Vadot 1639f126890aSEmmanuel Vadot etm@1a1d000 { 1640f126890aSEmmanuel Vadot compatible = "arm,coresight-etm3x", "arm,primecell"; 1641f126890aSEmmanuel Vadot reg = <0x1a1d000 0x1000>; 1642f126890aSEmmanuel Vadot 1643f126890aSEmmanuel Vadot clocks = <&rpmcc RPM_QDSS_CLK>; 1644f126890aSEmmanuel Vadot clock-names = "apb_pclk"; 1645f126890aSEmmanuel Vadot 1646f126890aSEmmanuel Vadot cpu = <&CPU1>; 1647f126890aSEmmanuel Vadot 1648f126890aSEmmanuel Vadot out-ports { 1649f126890aSEmmanuel Vadot port { 1650f126890aSEmmanuel Vadot etm1_out: endpoint { 1651f126890aSEmmanuel Vadot remote-endpoint = <&funnel_in1>; 1652f126890aSEmmanuel Vadot }; 1653f126890aSEmmanuel Vadot }; 1654f126890aSEmmanuel Vadot }; 1655f126890aSEmmanuel Vadot }; 1656f126890aSEmmanuel Vadot 1657f126890aSEmmanuel Vadot etm@1a1e000 { 1658f126890aSEmmanuel Vadot compatible = "arm,coresight-etm3x", "arm,primecell"; 1659f126890aSEmmanuel Vadot reg = <0x1a1e000 0x1000>; 1660f126890aSEmmanuel Vadot 1661f126890aSEmmanuel Vadot clocks = <&rpmcc RPM_QDSS_CLK>; 1662f126890aSEmmanuel Vadot clock-names = "apb_pclk"; 1663f126890aSEmmanuel Vadot 1664f126890aSEmmanuel Vadot cpu = <&CPU2>; 1665f126890aSEmmanuel Vadot 1666f126890aSEmmanuel Vadot out-ports { 1667f126890aSEmmanuel Vadot port { 1668f126890aSEmmanuel Vadot etm2_out: endpoint { 1669f126890aSEmmanuel Vadot remote-endpoint = <&funnel_in4>; 1670f126890aSEmmanuel Vadot }; 1671f126890aSEmmanuel Vadot }; 1672f126890aSEmmanuel Vadot }; 1673f126890aSEmmanuel Vadot }; 1674f126890aSEmmanuel Vadot 1675f126890aSEmmanuel Vadot etm@1a1f000 { 1676f126890aSEmmanuel Vadot compatible = "arm,coresight-etm3x", "arm,primecell"; 1677f126890aSEmmanuel Vadot reg = <0x1a1f000 0x1000>; 1678f126890aSEmmanuel Vadot 1679f126890aSEmmanuel Vadot clocks = <&rpmcc RPM_QDSS_CLK>; 1680f126890aSEmmanuel Vadot clock-names = "apb_pclk"; 1681f126890aSEmmanuel Vadot 1682f126890aSEmmanuel Vadot cpu = <&CPU3>; 1683f126890aSEmmanuel Vadot 1684f126890aSEmmanuel Vadot out-ports { 1685f126890aSEmmanuel Vadot port { 1686f126890aSEmmanuel Vadot etm3_out: endpoint { 1687f126890aSEmmanuel Vadot remote-endpoint = <&funnel_in5>; 1688f126890aSEmmanuel Vadot }; 1689f126890aSEmmanuel Vadot }; 1690f126890aSEmmanuel Vadot }; 1691f126890aSEmmanuel Vadot }; 1692f126890aSEmmanuel Vadot }; 1693f126890aSEmmanuel Vadot}; 1694f126890aSEmmanuel Vadot#include "qcom-apq8064-pins.dtsi" 1695