1aa1a8ff2SEmmanuel Vadot// SPDX-License-Identifier: GPL-2.0+ OR BSD-3-Clause 2aa1a8ff2SEmmanuel Vadot/* 3aa1a8ff2SEmmanuel Vadot * IPQ5018 SoC device tree source 4aa1a8ff2SEmmanuel Vadot * 5aa1a8ff2SEmmanuel Vadot * Copyright (c) 2023 The Linux Foundation. All rights reserved. 6aa1a8ff2SEmmanuel Vadot */ 7aa1a8ff2SEmmanuel Vadot 8*8d13bc63SEmmanuel Vadot#include <dt-bindings/clock/qcom,apss-ipq.h> 9aa1a8ff2SEmmanuel Vadot#include <dt-bindings/interrupt-controller/arm-gic.h> 10aa1a8ff2SEmmanuel Vadot#include <dt-bindings/clock/qcom,gcc-ipq5018.h> 11aa1a8ff2SEmmanuel Vadot#include <dt-bindings/reset/qcom,gcc-ipq5018.h> 12aa1a8ff2SEmmanuel Vadot 13aa1a8ff2SEmmanuel Vadot/ { 14aa1a8ff2SEmmanuel Vadot interrupt-parent = <&intc>; 15aa1a8ff2SEmmanuel Vadot #address-cells = <2>; 16aa1a8ff2SEmmanuel Vadot #size-cells = <2>; 17aa1a8ff2SEmmanuel Vadot 18aa1a8ff2SEmmanuel Vadot clocks { 19aa1a8ff2SEmmanuel Vadot sleep_clk: sleep-clk { 20aa1a8ff2SEmmanuel Vadot compatible = "fixed-clock"; 21aa1a8ff2SEmmanuel Vadot #clock-cells = <0>; 22aa1a8ff2SEmmanuel Vadot }; 23aa1a8ff2SEmmanuel Vadot 24aa1a8ff2SEmmanuel Vadot xo_board_clk: xo-board-clk { 25aa1a8ff2SEmmanuel Vadot compatible = "fixed-clock"; 26aa1a8ff2SEmmanuel Vadot #clock-cells = <0>; 27aa1a8ff2SEmmanuel Vadot }; 28aa1a8ff2SEmmanuel Vadot }; 29aa1a8ff2SEmmanuel Vadot 30aa1a8ff2SEmmanuel Vadot cpus { 31aa1a8ff2SEmmanuel Vadot #address-cells = <1>; 32aa1a8ff2SEmmanuel Vadot #size-cells = <0>; 33aa1a8ff2SEmmanuel Vadot 34aa1a8ff2SEmmanuel Vadot CPU0: cpu@0 { 35aa1a8ff2SEmmanuel Vadot device_type = "cpu"; 36aa1a8ff2SEmmanuel Vadot compatible = "arm,cortex-a53"; 37aa1a8ff2SEmmanuel Vadot reg = <0x0>; 38aa1a8ff2SEmmanuel Vadot enable-method = "psci"; 39aa1a8ff2SEmmanuel Vadot next-level-cache = <&L2_0>; 40*8d13bc63SEmmanuel Vadot clocks = <&apcs_glb APCS_ALIAS0_CORE_CLK>; 41*8d13bc63SEmmanuel Vadot operating-points-v2 = <&cpu_opp_table>; 42aa1a8ff2SEmmanuel Vadot }; 43aa1a8ff2SEmmanuel Vadot 44aa1a8ff2SEmmanuel Vadot CPU1: cpu@1 { 45aa1a8ff2SEmmanuel Vadot device_type = "cpu"; 46aa1a8ff2SEmmanuel Vadot compatible = "arm,cortex-a53"; 47aa1a8ff2SEmmanuel Vadot reg = <0x1>; 48aa1a8ff2SEmmanuel Vadot enable-method = "psci"; 49aa1a8ff2SEmmanuel Vadot next-level-cache = <&L2_0>; 50*8d13bc63SEmmanuel Vadot clocks = <&apcs_glb APCS_ALIAS0_CORE_CLK>; 51*8d13bc63SEmmanuel Vadot operating-points-v2 = <&cpu_opp_table>; 52aa1a8ff2SEmmanuel Vadot }; 53aa1a8ff2SEmmanuel Vadot 54aa1a8ff2SEmmanuel Vadot L2_0: l2-cache { 55aa1a8ff2SEmmanuel Vadot compatible = "cache"; 56aa1a8ff2SEmmanuel Vadot cache-level = <2>; 57aa1a8ff2SEmmanuel Vadot cache-size = <0x80000>; 58aa1a8ff2SEmmanuel Vadot cache-unified; 59aa1a8ff2SEmmanuel Vadot }; 60aa1a8ff2SEmmanuel Vadot }; 61aa1a8ff2SEmmanuel Vadot 62*8d13bc63SEmmanuel Vadot cpu_opp_table: opp-table-cpu { 63*8d13bc63SEmmanuel Vadot compatible = "operating-points-v2"; 64*8d13bc63SEmmanuel Vadot opp-shared; 65*8d13bc63SEmmanuel Vadot 66*8d13bc63SEmmanuel Vadot opp-800000000 { 67*8d13bc63SEmmanuel Vadot opp-hz = /bits/ 64 <800000000>; 68*8d13bc63SEmmanuel Vadot opp-microvolt = <1100000>; 69*8d13bc63SEmmanuel Vadot clock-latency-ns = <200000>; 70*8d13bc63SEmmanuel Vadot }; 71*8d13bc63SEmmanuel Vadot 72*8d13bc63SEmmanuel Vadot opp-1008000000 { 73*8d13bc63SEmmanuel Vadot opp-hz = /bits/ 64 <1008000000>; 74*8d13bc63SEmmanuel Vadot opp-microvolt = <1100000>; 75*8d13bc63SEmmanuel Vadot clock-latency-ns = <200000>; 76*8d13bc63SEmmanuel Vadot }; 77*8d13bc63SEmmanuel Vadot }; 78*8d13bc63SEmmanuel Vadot 79aa1a8ff2SEmmanuel Vadot firmware { 80aa1a8ff2SEmmanuel Vadot scm { 81aa1a8ff2SEmmanuel Vadot compatible = "qcom,scm-ipq5018", "qcom,scm"; 8284943d6fSEmmanuel Vadot qcom,sdi-enabled; 83aa1a8ff2SEmmanuel Vadot }; 84aa1a8ff2SEmmanuel Vadot }; 85aa1a8ff2SEmmanuel Vadot 86aa1a8ff2SEmmanuel Vadot memory@40000000 { 87aa1a8ff2SEmmanuel Vadot device_type = "memory"; 88aa1a8ff2SEmmanuel Vadot /* We expect the bootloader to fill in the size */ 89aa1a8ff2SEmmanuel Vadot reg = <0x0 0x40000000 0x0 0x0>; 90aa1a8ff2SEmmanuel Vadot }; 91aa1a8ff2SEmmanuel Vadot 92aa1a8ff2SEmmanuel Vadot pmu { 93aa1a8ff2SEmmanuel Vadot compatible = "arm,cortex-a53-pmu"; 94aa1a8ff2SEmmanuel Vadot interrupts = <GIC_PPI 7 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_HIGH)>; 95aa1a8ff2SEmmanuel Vadot }; 96aa1a8ff2SEmmanuel Vadot 97aa1a8ff2SEmmanuel Vadot psci { 98aa1a8ff2SEmmanuel Vadot compatible = "arm,psci-1.0"; 99aa1a8ff2SEmmanuel Vadot method = "smc"; 100aa1a8ff2SEmmanuel Vadot }; 101aa1a8ff2SEmmanuel Vadot 102aa1a8ff2SEmmanuel Vadot reserved-memory { 103aa1a8ff2SEmmanuel Vadot #address-cells = <2>; 104aa1a8ff2SEmmanuel Vadot #size-cells = <2>; 105aa1a8ff2SEmmanuel Vadot ranges; 106aa1a8ff2SEmmanuel Vadot 107*8d13bc63SEmmanuel Vadot bootloader@4a800000 { 108*8d13bc63SEmmanuel Vadot reg = <0x0 0x4a800000 0x0 0x200000>; 109*8d13bc63SEmmanuel Vadot no-map; 110*8d13bc63SEmmanuel Vadot }; 111*8d13bc63SEmmanuel Vadot 112*8d13bc63SEmmanuel Vadot sbl@4aa00000 { 113*8d13bc63SEmmanuel Vadot reg = <0x0 0x4aa00000 0x0 0x100000>; 114*8d13bc63SEmmanuel Vadot no-map; 115*8d13bc63SEmmanuel Vadot }; 116*8d13bc63SEmmanuel Vadot 117*8d13bc63SEmmanuel Vadot smem@4ab00000 { 118*8d13bc63SEmmanuel Vadot compatible = "qcom,smem"; 119*8d13bc63SEmmanuel Vadot reg = <0x0 0x4ab00000 0x0 0x100000>; 120*8d13bc63SEmmanuel Vadot no-map; 121*8d13bc63SEmmanuel Vadot 122*8d13bc63SEmmanuel Vadot hwlocks = <&tcsr_mutex 3>; 123*8d13bc63SEmmanuel Vadot }; 124*8d13bc63SEmmanuel Vadot 125aa1a8ff2SEmmanuel Vadot tz_region: tz@4ac00000 { 126aa1a8ff2SEmmanuel Vadot reg = <0x0 0x4ac00000 0x0 0x200000>; 127aa1a8ff2SEmmanuel Vadot no-map; 128aa1a8ff2SEmmanuel Vadot }; 129aa1a8ff2SEmmanuel Vadot }; 130aa1a8ff2SEmmanuel Vadot 131aa1a8ff2SEmmanuel Vadot soc: soc@0 { 132aa1a8ff2SEmmanuel Vadot compatible = "simple-bus"; 133aa1a8ff2SEmmanuel Vadot #address-cells = <1>; 134aa1a8ff2SEmmanuel Vadot #size-cells = <1>; 135aa1a8ff2SEmmanuel Vadot ranges = <0 0 0 0xffffffff>; 136aa1a8ff2SEmmanuel Vadot 137*8d13bc63SEmmanuel Vadot usbphy0: phy@5b000 { 138*8d13bc63SEmmanuel Vadot compatible = "qcom,ipq5018-usb-hsphy"; 139*8d13bc63SEmmanuel Vadot reg = <0x0005b000 0x120>; 140*8d13bc63SEmmanuel Vadot 141*8d13bc63SEmmanuel Vadot clocks = <&gcc GCC_USB0_PHY_CFG_AHB_CLK>; 142*8d13bc63SEmmanuel Vadot 143*8d13bc63SEmmanuel Vadot resets = <&gcc GCC_QUSB2_0_PHY_BCR>; 144*8d13bc63SEmmanuel Vadot 145*8d13bc63SEmmanuel Vadot #phy-cells = <0>; 146*8d13bc63SEmmanuel Vadot 147*8d13bc63SEmmanuel Vadot status = "disabled"; 148*8d13bc63SEmmanuel Vadot }; 149*8d13bc63SEmmanuel Vadot 150aa1a8ff2SEmmanuel Vadot tlmm: pinctrl@1000000 { 151aa1a8ff2SEmmanuel Vadot compatible = "qcom,ipq5018-tlmm"; 152aa1a8ff2SEmmanuel Vadot reg = <0x01000000 0x300000>; 153aa1a8ff2SEmmanuel Vadot interrupts = <GIC_SPI 208 IRQ_TYPE_LEVEL_HIGH>; 154aa1a8ff2SEmmanuel Vadot gpio-controller; 155aa1a8ff2SEmmanuel Vadot #gpio-cells = <2>; 156aa1a8ff2SEmmanuel Vadot gpio-ranges = <&tlmm 0 0 47>; 157aa1a8ff2SEmmanuel Vadot interrupt-controller; 158aa1a8ff2SEmmanuel Vadot #interrupt-cells = <2>; 159aa1a8ff2SEmmanuel Vadot 160aa1a8ff2SEmmanuel Vadot uart1_pins: uart1-state { 161aa1a8ff2SEmmanuel Vadot pins = "gpio31", "gpio32", "gpio33", "gpio34"; 162aa1a8ff2SEmmanuel Vadot function = "blsp1_uart1"; 163aa1a8ff2SEmmanuel Vadot drive-strength = <8>; 164aa1a8ff2SEmmanuel Vadot bias-pull-down; 165aa1a8ff2SEmmanuel Vadot }; 166aa1a8ff2SEmmanuel Vadot }; 167aa1a8ff2SEmmanuel Vadot 168aa1a8ff2SEmmanuel Vadot gcc: clock-controller@1800000 { 169aa1a8ff2SEmmanuel Vadot compatible = "qcom,gcc-ipq5018"; 170aa1a8ff2SEmmanuel Vadot reg = <0x01800000 0x80000>; 171aa1a8ff2SEmmanuel Vadot clocks = <&xo_board_clk>, 172aa1a8ff2SEmmanuel Vadot <&sleep_clk>, 173aa1a8ff2SEmmanuel Vadot <0>, 174aa1a8ff2SEmmanuel Vadot <0>, 175aa1a8ff2SEmmanuel Vadot <0>, 176aa1a8ff2SEmmanuel Vadot <0>, 177aa1a8ff2SEmmanuel Vadot <0>, 178aa1a8ff2SEmmanuel Vadot <0>, 179aa1a8ff2SEmmanuel Vadot <0>; 180aa1a8ff2SEmmanuel Vadot #clock-cells = <1>; 181aa1a8ff2SEmmanuel Vadot #reset-cells = <1>; 182aa1a8ff2SEmmanuel Vadot }; 183aa1a8ff2SEmmanuel Vadot 184*8d13bc63SEmmanuel Vadot tcsr_mutex: hwlock@1905000 { 185*8d13bc63SEmmanuel Vadot compatible = "qcom,tcsr-mutex"; 186*8d13bc63SEmmanuel Vadot reg = <0x01905000 0x20000>; 187*8d13bc63SEmmanuel Vadot #hwlock-cells = <1>; 188*8d13bc63SEmmanuel Vadot }; 189*8d13bc63SEmmanuel Vadot 190aa1a8ff2SEmmanuel Vadot sdhc_1: mmc@7804000 { 191aa1a8ff2SEmmanuel Vadot compatible = "qcom,ipq5018-sdhci", "qcom,sdhci-msm-v5"; 192aa1a8ff2SEmmanuel Vadot reg = <0x7804000 0x1000>; 193aa1a8ff2SEmmanuel Vadot reg-names = "hc"; 194aa1a8ff2SEmmanuel Vadot 195aa1a8ff2SEmmanuel Vadot interrupts = <GIC_SPI 123 IRQ_TYPE_LEVEL_HIGH>, 196aa1a8ff2SEmmanuel Vadot <GIC_SPI 138 IRQ_TYPE_LEVEL_HIGH>; 197aa1a8ff2SEmmanuel Vadot interrupt-names = "hc_irq", "pwr_irq"; 198aa1a8ff2SEmmanuel Vadot 199aa1a8ff2SEmmanuel Vadot clocks = <&gcc GCC_SDCC1_AHB_CLK>, 200aa1a8ff2SEmmanuel Vadot <&gcc GCC_SDCC1_APPS_CLK>, 201aa1a8ff2SEmmanuel Vadot <&xo_board_clk>; 202aa1a8ff2SEmmanuel Vadot clock-names = "iface", "core", "xo"; 203aa1a8ff2SEmmanuel Vadot non-removable; 204aa1a8ff2SEmmanuel Vadot status = "disabled"; 205aa1a8ff2SEmmanuel Vadot }; 206aa1a8ff2SEmmanuel Vadot 207*8d13bc63SEmmanuel Vadot blsp_dma: dma-controller@7884000 { 208*8d13bc63SEmmanuel Vadot compatible = "qcom,bam-v1.7.0"; 209*8d13bc63SEmmanuel Vadot reg = <0x07884000 0x1d000>; 210*8d13bc63SEmmanuel Vadot interrupts = <GIC_SPI 238 IRQ_TYPE_LEVEL_HIGH>; 211*8d13bc63SEmmanuel Vadot clocks = <&gcc GCC_BLSP1_AHB_CLK>; 212*8d13bc63SEmmanuel Vadot clock-names = "bam_clk"; 213*8d13bc63SEmmanuel Vadot #dma-cells = <1>; 214*8d13bc63SEmmanuel Vadot qcom,ee = <0>; 215*8d13bc63SEmmanuel Vadot }; 216*8d13bc63SEmmanuel Vadot 217aa1a8ff2SEmmanuel Vadot blsp1_uart1: serial@78af000 { 218aa1a8ff2SEmmanuel Vadot compatible = "qcom,msm-uartdm-v1.4", "qcom,msm-uartdm"; 219aa1a8ff2SEmmanuel Vadot reg = <0x078af000 0x200>; 220aa1a8ff2SEmmanuel Vadot interrupts = <GIC_SPI 107 IRQ_TYPE_LEVEL_HIGH>; 221aa1a8ff2SEmmanuel Vadot clocks = <&gcc GCC_BLSP1_UART1_APPS_CLK>, 222aa1a8ff2SEmmanuel Vadot <&gcc GCC_BLSP1_AHB_CLK>; 223aa1a8ff2SEmmanuel Vadot clock-names = "core", "iface"; 224aa1a8ff2SEmmanuel Vadot status = "disabled"; 225aa1a8ff2SEmmanuel Vadot }; 226aa1a8ff2SEmmanuel Vadot 227*8d13bc63SEmmanuel Vadot blsp1_spi1: spi@78b5000 { 228*8d13bc63SEmmanuel Vadot compatible = "qcom,spi-qup-v2.2.1"; 229*8d13bc63SEmmanuel Vadot #address-cells = <1>; 230*8d13bc63SEmmanuel Vadot #size-cells = <0>; 231*8d13bc63SEmmanuel Vadot reg = <0x078b5000 0x600>; 232*8d13bc63SEmmanuel Vadot interrupts = <GIC_SPI 95 IRQ_TYPE_LEVEL_HIGH>; 233*8d13bc63SEmmanuel Vadot clocks = <&gcc GCC_BLSP1_QUP1_SPI_APPS_CLK>, 234*8d13bc63SEmmanuel Vadot <&gcc GCC_BLSP1_AHB_CLK>; 235*8d13bc63SEmmanuel Vadot clock-names = "core", "iface"; 236*8d13bc63SEmmanuel Vadot dmas = <&blsp_dma 4>, <&blsp_dma 5>; 237*8d13bc63SEmmanuel Vadot dma-names = "tx", "rx"; 238*8d13bc63SEmmanuel Vadot status = "disabled"; 239*8d13bc63SEmmanuel Vadot }; 240*8d13bc63SEmmanuel Vadot 241*8d13bc63SEmmanuel Vadot usb: usb@8af8800 { 242*8d13bc63SEmmanuel Vadot compatible = "qcom,ipq5018-dwc3", "qcom,dwc3"; 243*8d13bc63SEmmanuel Vadot reg = <0x08af8800 0x400>; 244*8d13bc63SEmmanuel Vadot 245*8d13bc63SEmmanuel Vadot interrupts = <GIC_SPI 62 IRQ_TYPE_LEVEL_HIGH>; 246*8d13bc63SEmmanuel Vadot interrupt-names = "hs_phy_irq"; 247*8d13bc63SEmmanuel Vadot 248*8d13bc63SEmmanuel Vadot clocks = <&gcc GCC_USB0_MASTER_CLK>, 249*8d13bc63SEmmanuel Vadot <&gcc GCC_SYS_NOC_USB0_AXI_CLK>, 250*8d13bc63SEmmanuel Vadot <&gcc GCC_USB0_SLEEP_CLK>, 251*8d13bc63SEmmanuel Vadot <&gcc GCC_USB0_MOCK_UTMI_CLK>; 252*8d13bc63SEmmanuel Vadot clock-names = "core", 253*8d13bc63SEmmanuel Vadot "iface", 254*8d13bc63SEmmanuel Vadot "sleep", 255*8d13bc63SEmmanuel Vadot "mock_utmi"; 256*8d13bc63SEmmanuel Vadot 257*8d13bc63SEmmanuel Vadot resets = <&gcc GCC_USB0_BCR>; 258*8d13bc63SEmmanuel Vadot 259*8d13bc63SEmmanuel Vadot qcom,select-utmi-as-pipe-clk; 260*8d13bc63SEmmanuel Vadot #address-cells = <1>; 261*8d13bc63SEmmanuel Vadot #size-cells = <1>; 262*8d13bc63SEmmanuel Vadot ranges; 263*8d13bc63SEmmanuel Vadot 264*8d13bc63SEmmanuel Vadot status = "disabled"; 265*8d13bc63SEmmanuel Vadot 266*8d13bc63SEmmanuel Vadot usb_dwc: usb@8a00000 { 267*8d13bc63SEmmanuel Vadot compatible = "snps,dwc3"; 268*8d13bc63SEmmanuel Vadot reg = <0x08a00000 0xe000>; 269*8d13bc63SEmmanuel Vadot clocks = <&gcc GCC_USB0_MOCK_UTMI_CLK>; 270*8d13bc63SEmmanuel Vadot clock-names = "ref"; 271*8d13bc63SEmmanuel Vadot interrupts = <GIC_SPI 140 IRQ_TYPE_LEVEL_HIGH>; 272*8d13bc63SEmmanuel Vadot phy-names = "usb2-phy"; 273*8d13bc63SEmmanuel Vadot phys = <&usbphy0>; 274*8d13bc63SEmmanuel Vadot tx-fifo-resize; 275*8d13bc63SEmmanuel Vadot snps,is-utmi-l1-suspend; 276*8d13bc63SEmmanuel Vadot snps,hird-threshold = /bits/ 8 <0x0>; 277*8d13bc63SEmmanuel Vadot snps,dis_u2_susphy_quirk; 278*8d13bc63SEmmanuel Vadot snps,dis_u3_susphy_quirk; 279*8d13bc63SEmmanuel Vadot }; 280*8d13bc63SEmmanuel Vadot }; 281*8d13bc63SEmmanuel Vadot 282aa1a8ff2SEmmanuel Vadot intc: interrupt-controller@b000000 { 283aa1a8ff2SEmmanuel Vadot compatible = "qcom,msm-qgic2"; 284aa1a8ff2SEmmanuel Vadot reg = <0x0b000000 0x1000>, /* GICD */ 285aa1a8ff2SEmmanuel Vadot <0x0b002000 0x2000>, /* GICC */ 286aa1a8ff2SEmmanuel Vadot <0x0b001000 0x1000>, /* GICH */ 287aa1a8ff2SEmmanuel Vadot <0x0b004000 0x2000>; /* GICV */ 288aa1a8ff2SEmmanuel Vadot interrupts = <GIC_PPI 9 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_HIGH)>; 289aa1a8ff2SEmmanuel Vadot interrupt-controller; 290aa1a8ff2SEmmanuel Vadot #interrupt-cells = <3>; 291aa1a8ff2SEmmanuel Vadot #address-cells = <1>; 292aa1a8ff2SEmmanuel Vadot #size-cells = <1>; 293aa1a8ff2SEmmanuel Vadot ranges = <0 0x0b00a000 0x1ffa>; 294aa1a8ff2SEmmanuel Vadot 295aa1a8ff2SEmmanuel Vadot v2m0: v2m@0 { 296aa1a8ff2SEmmanuel Vadot compatible = "arm,gic-v2m-frame"; 297aa1a8ff2SEmmanuel Vadot reg = <0x00000000 0xff8>; 298aa1a8ff2SEmmanuel Vadot msi-controller; 299aa1a8ff2SEmmanuel Vadot }; 300aa1a8ff2SEmmanuel Vadot 301aa1a8ff2SEmmanuel Vadot v2m1: v2m@1000 { 302aa1a8ff2SEmmanuel Vadot compatible = "arm,gic-v2m-frame"; 303aa1a8ff2SEmmanuel Vadot reg = <0x00001000 0xff8>; 304aa1a8ff2SEmmanuel Vadot msi-controller; 305aa1a8ff2SEmmanuel Vadot }; 306aa1a8ff2SEmmanuel Vadot }; 307aa1a8ff2SEmmanuel Vadot 30884943d6fSEmmanuel Vadot watchdog: watchdog@b017000 { 30984943d6fSEmmanuel Vadot compatible = "qcom,apss-wdt-ipq5018", "qcom,kpss-wdt"; 31084943d6fSEmmanuel Vadot reg = <0x0b017000 0x40>; 31184943d6fSEmmanuel Vadot interrupts = <GIC_SPI 3 IRQ_TYPE_EDGE_RISING>; 31284943d6fSEmmanuel Vadot clocks = <&sleep_clk>; 31384943d6fSEmmanuel Vadot }; 31484943d6fSEmmanuel Vadot 315*8d13bc63SEmmanuel Vadot apcs_glb: mailbox@b111000 { 316*8d13bc63SEmmanuel Vadot compatible = "qcom,ipq5018-apcs-apps-global", 317*8d13bc63SEmmanuel Vadot "qcom,ipq6018-apcs-apps-global"; 318*8d13bc63SEmmanuel Vadot reg = <0x0b111000 0x1000>; 319*8d13bc63SEmmanuel Vadot #clock-cells = <1>; 320*8d13bc63SEmmanuel Vadot clocks = <&a53pll>, <&xo_board_clk>, <&gcc GPLL0>; 321*8d13bc63SEmmanuel Vadot clock-names = "pll", "xo", "gpll0"; 322*8d13bc63SEmmanuel Vadot #mbox-cells = <1>; 323*8d13bc63SEmmanuel Vadot }; 324*8d13bc63SEmmanuel Vadot 325*8d13bc63SEmmanuel Vadot a53pll: clock@b116000 { 326*8d13bc63SEmmanuel Vadot compatible = "qcom,ipq5018-a53pll"; 327*8d13bc63SEmmanuel Vadot reg = <0x0b116000 0x40>; 328*8d13bc63SEmmanuel Vadot #clock-cells = <0>; 329*8d13bc63SEmmanuel Vadot clocks = <&xo_board_clk>; 330*8d13bc63SEmmanuel Vadot clock-names = "xo"; 331*8d13bc63SEmmanuel Vadot }; 332*8d13bc63SEmmanuel Vadot 333aa1a8ff2SEmmanuel Vadot timer@b120000 { 334aa1a8ff2SEmmanuel Vadot compatible = "arm,armv7-timer-mem"; 335aa1a8ff2SEmmanuel Vadot reg = <0x0b120000 0x1000>; 336aa1a8ff2SEmmanuel Vadot #address-cells = <1>; 337aa1a8ff2SEmmanuel Vadot #size-cells = <1>; 338aa1a8ff2SEmmanuel Vadot ranges; 339aa1a8ff2SEmmanuel Vadot 340aa1a8ff2SEmmanuel Vadot frame@b120000 { 341aa1a8ff2SEmmanuel Vadot reg = <0x0b121000 0x1000>, 342aa1a8ff2SEmmanuel Vadot <0x0b122000 0x1000>; 343aa1a8ff2SEmmanuel Vadot interrupts = <GIC_SPI 8 IRQ_TYPE_LEVEL_HIGH>, 344aa1a8ff2SEmmanuel Vadot <GIC_SPI 7 IRQ_TYPE_LEVEL_HIGH>; 345aa1a8ff2SEmmanuel Vadot frame-number = <0>; 346aa1a8ff2SEmmanuel Vadot }; 347aa1a8ff2SEmmanuel Vadot 348aa1a8ff2SEmmanuel Vadot frame@b123000 { 349aa1a8ff2SEmmanuel Vadot reg = <0xb123000 0x1000>; 350aa1a8ff2SEmmanuel Vadot interrupts = <GIC_SPI 9 IRQ_TYPE_LEVEL_HIGH>; 351aa1a8ff2SEmmanuel Vadot frame-number = <1>; 352aa1a8ff2SEmmanuel Vadot status = "disabled"; 353aa1a8ff2SEmmanuel Vadot }; 354aa1a8ff2SEmmanuel Vadot 355aa1a8ff2SEmmanuel Vadot frame@b124000 { 356aa1a8ff2SEmmanuel Vadot frame-number = <2>; 357aa1a8ff2SEmmanuel Vadot interrupts = <GIC_SPI 10 IRQ_TYPE_LEVEL_HIGH>; 358aa1a8ff2SEmmanuel Vadot reg = <0x0b124000 0x1000>; 359aa1a8ff2SEmmanuel Vadot status = "disabled"; 360aa1a8ff2SEmmanuel Vadot }; 361aa1a8ff2SEmmanuel Vadot 362aa1a8ff2SEmmanuel Vadot frame@b125000 { 363aa1a8ff2SEmmanuel Vadot reg = <0x0b125000 0x1000>; 364aa1a8ff2SEmmanuel Vadot interrupts = <GIC_SPI 11 IRQ_TYPE_LEVEL_HIGH>; 365aa1a8ff2SEmmanuel Vadot frame-number = <3>; 366aa1a8ff2SEmmanuel Vadot status = "disabled"; 367aa1a8ff2SEmmanuel Vadot }; 368aa1a8ff2SEmmanuel Vadot 369aa1a8ff2SEmmanuel Vadot frame@b126000 { 370aa1a8ff2SEmmanuel Vadot reg = <0x0b126000 0x1000>; 371aa1a8ff2SEmmanuel Vadot interrupts = <GIC_SPI 12 IRQ_TYPE_LEVEL_HIGH>; 372aa1a8ff2SEmmanuel Vadot frame-number = <4>; 373aa1a8ff2SEmmanuel Vadot status = "disabled"; 374aa1a8ff2SEmmanuel Vadot }; 375aa1a8ff2SEmmanuel Vadot 376aa1a8ff2SEmmanuel Vadot frame@b127000 { 377aa1a8ff2SEmmanuel Vadot reg = <0x0b127000 0x1000>; 378aa1a8ff2SEmmanuel Vadot interrupts = <GIC_SPI 13 IRQ_TYPE_LEVEL_HIGH>; 379aa1a8ff2SEmmanuel Vadot frame-number = <5>; 380aa1a8ff2SEmmanuel Vadot status = "disabled"; 381aa1a8ff2SEmmanuel Vadot }; 382aa1a8ff2SEmmanuel Vadot 383aa1a8ff2SEmmanuel Vadot frame@b128000 { 384aa1a8ff2SEmmanuel Vadot reg = <0x0b128000 0x1000>; 385aa1a8ff2SEmmanuel Vadot interrupts = <GIC_SPI 14 IRQ_TYPE_LEVEL_HIGH>; 386aa1a8ff2SEmmanuel Vadot frame-number = <6>; 387aa1a8ff2SEmmanuel Vadot status = "disabled"; 388aa1a8ff2SEmmanuel Vadot }; 389aa1a8ff2SEmmanuel Vadot }; 390aa1a8ff2SEmmanuel Vadot }; 391aa1a8ff2SEmmanuel Vadot 392aa1a8ff2SEmmanuel Vadot timer { 393aa1a8ff2SEmmanuel Vadot compatible = "arm,armv8-timer"; 394aa1a8ff2SEmmanuel Vadot interrupts = <GIC_PPI 2 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>, 395aa1a8ff2SEmmanuel Vadot <GIC_PPI 3 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>, 396aa1a8ff2SEmmanuel Vadot <GIC_PPI 4 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>, 397aa1a8ff2SEmmanuel Vadot <GIC_PPI 1 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>; 398aa1a8ff2SEmmanuel Vadot }; 399aa1a8ff2SEmmanuel Vadot}; 400