1*f126890aSEmmanuel Vadot// SPDX-License-Identifier: GPL-2.0-or-later 2*f126890aSEmmanuel Vadot/* 3*f126890aSEmmanuel Vadot * Copyright 2012 Linaro Ltd 4*f126890aSEmmanuel Vadot */ 5*f126890aSEmmanuel Vadot 6*f126890aSEmmanuel Vadot#include <dt-bindings/interrupt-controller/irq.h> 7*f126890aSEmmanuel Vadot#include <dt-bindings/interrupt-controller/arm-gic.h> 8*f126890aSEmmanuel Vadot#include <dt-bindings/clock/ste-db8500-clkout.h> 9*f126890aSEmmanuel Vadot#include <dt-bindings/reset/stericsson,db8500-prcc-reset.h> 10*f126890aSEmmanuel Vadot#include <dt-bindings/mfd/dbx500-prcmu.h> 11*f126890aSEmmanuel Vadot#include <dt-bindings/arm/ux500_pm_domains.h> 12*f126890aSEmmanuel Vadot#include <dt-bindings/gpio/gpio.h> 13*f126890aSEmmanuel Vadot#include <dt-bindings/thermal/thermal.h> 14*f126890aSEmmanuel Vadot 15*f126890aSEmmanuel Vadot/ { 16*f126890aSEmmanuel Vadot #address-cells = <1>; 17*f126890aSEmmanuel Vadot #size-cells = <1>; 18*f126890aSEmmanuel Vadot 19*f126890aSEmmanuel Vadot /* This stablilizes the device enumeration */ 20*f126890aSEmmanuel Vadot aliases { 21*f126890aSEmmanuel Vadot i2c0 = &i2c0; 22*f126890aSEmmanuel Vadot i2c1 = &i2c1; 23*f126890aSEmmanuel Vadot i2c2 = &i2c2; 24*f126890aSEmmanuel Vadot i2c3 = &i2c3; 25*f126890aSEmmanuel Vadot i2c4 = &i2c4; 26*f126890aSEmmanuel Vadot spi0 = &spi0; 27*f126890aSEmmanuel Vadot spi1 = &spi1; 28*f126890aSEmmanuel Vadot spi2 = &spi2; 29*f126890aSEmmanuel Vadot spi3 = &spi3; 30*f126890aSEmmanuel Vadot serial0 = &serial0; 31*f126890aSEmmanuel Vadot serial1 = &serial1; 32*f126890aSEmmanuel Vadot serial2 = &serial2; 33*f126890aSEmmanuel Vadot }; 34*f126890aSEmmanuel Vadot 35*f126890aSEmmanuel Vadot chosen { 36*f126890aSEmmanuel Vadot }; 37*f126890aSEmmanuel Vadot 38*f126890aSEmmanuel Vadot cpus { 39*f126890aSEmmanuel Vadot #address-cells = <1>; 40*f126890aSEmmanuel Vadot #size-cells = <0>; 41*f126890aSEmmanuel Vadot enable-method = "ste,dbx500-smp"; 42*f126890aSEmmanuel Vadot 43*f126890aSEmmanuel Vadot cpu-map { 44*f126890aSEmmanuel Vadot cluster0 { 45*f126890aSEmmanuel Vadot core0 { 46*f126890aSEmmanuel Vadot cpu = <&CPU0>; 47*f126890aSEmmanuel Vadot }; 48*f126890aSEmmanuel Vadot core1 { 49*f126890aSEmmanuel Vadot cpu = <&CPU1>; 50*f126890aSEmmanuel Vadot }; 51*f126890aSEmmanuel Vadot }; 52*f126890aSEmmanuel Vadot }; 53*f126890aSEmmanuel Vadot CPU0: cpu@300 { 54*f126890aSEmmanuel Vadot device_type = "cpu"; 55*f126890aSEmmanuel Vadot compatible = "arm,cortex-a9"; 56*f126890aSEmmanuel Vadot reg = <0x300>; 57*f126890aSEmmanuel Vadot clocks = <&prcmu_clk PRCMU_ARMSS>; 58*f126890aSEmmanuel Vadot clock-names = "cpu"; 59*f126890aSEmmanuel Vadot clock-latency = <20000>; 60*f126890aSEmmanuel Vadot #cooling-cells = <2>; 61*f126890aSEmmanuel Vadot }; 62*f126890aSEmmanuel Vadot CPU1: cpu@301 { 63*f126890aSEmmanuel Vadot device_type = "cpu"; 64*f126890aSEmmanuel Vadot compatible = "arm,cortex-a9"; 65*f126890aSEmmanuel Vadot reg = <0x301>; 66*f126890aSEmmanuel Vadot }; 67*f126890aSEmmanuel Vadot }; 68*f126890aSEmmanuel Vadot 69*f126890aSEmmanuel Vadot thermal-zones { 70*f126890aSEmmanuel Vadot /* 71*f126890aSEmmanuel Vadot * Thermal zone for the SoC, using the thermal sensor in the 72*f126890aSEmmanuel Vadot * PRCMU for temperature and the cpufreq driver for passive 73*f126890aSEmmanuel Vadot * cooling. 74*f126890aSEmmanuel Vadot */ 75*f126890aSEmmanuel Vadot cpu_thermal: cpu-thermal { 76*f126890aSEmmanuel Vadot polling-delay-passive = <250>; 77*f126890aSEmmanuel Vadot /* 78*f126890aSEmmanuel Vadot * This sensor fires interrupts to update the thermal 79*f126890aSEmmanuel Vadot * zone, so no polling is needed. 80*f126890aSEmmanuel Vadot */ 81*f126890aSEmmanuel Vadot polling-delay = <0>; 82*f126890aSEmmanuel Vadot 83*f126890aSEmmanuel Vadot thermal-sensors = <&thermal>; 84*f126890aSEmmanuel Vadot 85*f126890aSEmmanuel Vadot trips { 86*f126890aSEmmanuel Vadot cpu_alert: cpu-alert { 87*f126890aSEmmanuel Vadot temperature = <70000>; 88*f126890aSEmmanuel Vadot hysteresis = <2000>; 89*f126890aSEmmanuel Vadot type = "passive"; 90*f126890aSEmmanuel Vadot }; 91*f126890aSEmmanuel Vadot cpu-crit { 92*f126890aSEmmanuel Vadot temperature = <85000>; 93*f126890aSEmmanuel Vadot hysteresis = <0>; 94*f126890aSEmmanuel Vadot type = "critical"; 95*f126890aSEmmanuel Vadot }; 96*f126890aSEmmanuel Vadot }; 97*f126890aSEmmanuel Vadot 98*f126890aSEmmanuel Vadot cooling-maps { 99*f126890aSEmmanuel Vadot trip = <&cpu_alert>; 100*f126890aSEmmanuel Vadot cooling-device = <&CPU0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; 101*f126890aSEmmanuel Vadot contribution = <100>; 102*f126890aSEmmanuel Vadot }; 103*f126890aSEmmanuel Vadot }; 104*f126890aSEmmanuel Vadot }; 105*f126890aSEmmanuel Vadot 106*f126890aSEmmanuel Vadot soc { 107*f126890aSEmmanuel Vadot #address-cells = <1>; 108*f126890aSEmmanuel Vadot #size-cells = <1>; 109*f126890aSEmmanuel Vadot compatible = "stericsson,db8500", "simple-bus"; 110*f126890aSEmmanuel Vadot interrupt-parent = <&intc>; 111*f126890aSEmmanuel Vadot ranges; 112*f126890aSEmmanuel Vadot 113*f126890aSEmmanuel Vadot /* 114*f126890aSEmmanuel Vadot * 640KB ESRAM (embedded static random access memory), divided 115*f126890aSEmmanuel Vadot * into 5 banks of 128 KB each. This is a fast memory usually 116*f126890aSEmmanuel Vadot * used by different accelerators. We group these according to 117*f126890aSEmmanuel Vadot * their power domains: ESRAM0 (always on) ESRAM 1+2 and 118*f126890aSEmmanuel Vadot * ESRAM 3+4. 119*f126890aSEmmanuel Vadot */ 120*f126890aSEmmanuel Vadot sram@40000000 { 121*f126890aSEmmanuel Vadot /* The first (always on) ESRAM 0, 128 KB */ 122*f126890aSEmmanuel Vadot compatible = "mmio-sram"; 123*f126890aSEmmanuel Vadot reg = <0x40000000 0x20000>; 124*f126890aSEmmanuel Vadot #address-cells = <1>; 125*f126890aSEmmanuel Vadot #size-cells = <1>; 126*f126890aSEmmanuel Vadot ranges = <0 0x40000000 0x20000>; 127*f126890aSEmmanuel Vadot 128*f126890aSEmmanuel Vadot sram@0 { 129*f126890aSEmmanuel Vadot compatible = "stericsson,u8500-esram"; 130*f126890aSEmmanuel Vadot reg = <0x0 0x10000>; 131*f126890aSEmmanuel Vadot pool; 132*f126890aSEmmanuel Vadot }; 133*f126890aSEmmanuel Vadot lcpa: sram@10000 { 134*f126890aSEmmanuel Vadot /* 135*f126890aSEmmanuel Vadot * This eSRAM is used by the DMA40 DMA controller 136*f126890aSEmmanuel Vadot * for Logical Channel Paramers (LCP), the address 137*f126890aSEmmanuel Vadot * where these parameters are stored is called "LCPA". 138*f126890aSEmmanuel Vadot * This is addressed directly by the driver so no 139*f126890aSEmmanuel Vadot * pool is used. 140*f126890aSEmmanuel Vadot */ 141*f126890aSEmmanuel Vadot compatible = "stericsson,u8500-esram"; 142*f126890aSEmmanuel Vadot label = "DMA40-LCPA"; 143*f126890aSEmmanuel Vadot reg = <0x10000 0x800>; 144*f126890aSEmmanuel Vadot }; 145*f126890aSEmmanuel Vadot sram@10800 { 146*f126890aSEmmanuel Vadot compatible = "stericsson,u8500-esram"; 147*f126890aSEmmanuel Vadot reg = <0x10800 0xf800>; 148*f126890aSEmmanuel Vadot pool; 149*f126890aSEmmanuel Vadot }; 150*f126890aSEmmanuel Vadot }; 151*f126890aSEmmanuel Vadot sram@40020000 { 152*f126890aSEmmanuel Vadot /* ESRAM 1+2, 256 KB */ 153*f126890aSEmmanuel Vadot compatible = "mmio-sram"; 154*f126890aSEmmanuel Vadot reg = <0x40020000 0x40000>; 155*f126890aSEmmanuel Vadot #address-cells = <1>; 156*f126890aSEmmanuel Vadot #size-cells = <1>; 157*f126890aSEmmanuel Vadot ranges = <0 0x40020000 0x40000>; 158*f126890aSEmmanuel Vadot }; 159*f126890aSEmmanuel Vadot sram@40060000 { 160*f126890aSEmmanuel Vadot /* ESRAM 3+4, 256 KB */ 161*f126890aSEmmanuel Vadot compatible = "mmio-sram"; 162*f126890aSEmmanuel Vadot reg = <0x40060000 0x40000>; 163*f126890aSEmmanuel Vadot #address-cells = <1>; 164*f126890aSEmmanuel Vadot #size-cells = <1>; 165*f126890aSEmmanuel Vadot ranges = <0 0x40060000 0x40000>; 166*f126890aSEmmanuel Vadot 167*f126890aSEmmanuel Vadot lcla: sram@20000 { 168*f126890aSEmmanuel Vadot /* 169*f126890aSEmmanuel Vadot * This eSRAM is used by the DMA40 DMA controller 170*f126890aSEmmanuel Vadot * for Logical Channel Logical Addresses (LCLA), the address 171*f126890aSEmmanuel Vadot * where these parameters are stored is called "LCLA". 172*f126890aSEmmanuel Vadot * This is addressed directly by the driver so no 173*f126890aSEmmanuel Vadot * pool is used. 174*f126890aSEmmanuel Vadot */ 175*f126890aSEmmanuel Vadot compatible = "stericsson,u8500-esram"; 176*f126890aSEmmanuel Vadot label = "DMA40-LCLA"; 177*f126890aSEmmanuel Vadot reg = <0x20000 0x2000>; 178*f126890aSEmmanuel Vadot }; 179*f126890aSEmmanuel Vadot }; 180*f126890aSEmmanuel Vadot 181*f126890aSEmmanuel Vadot ptm@801ae000 { 182*f126890aSEmmanuel Vadot compatible = "arm,coresight-etm3x", "arm,primecell"; 183*f126890aSEmmanuel Vadot reg = <0x801ae000 0x1000>; 184*f126890aSEmmanuel Vadot 185*f126890aSEmmanuel Vadot clocks = <&prcmu_clk PRCMU_APETRACECLK>, <&prcmu_clk PRCMU_APEATCLK>; 186*f126890aSEmmanuel Vadot clock-names = "apb_pclk", "atclk"; 187*f126890aSEmmanuel Vadot cpu = <&CPU0>; 188*f126890aSEmmanuel Vadot out-ports { 189*f126890aSEmmanuel Vadot port { 190*f126890aSEmmanuel Vadot ptm0_out_port: endpoint { 191*f126890aSEmmanuel Vadot remote-endpoint = <&funnel_in_port0>; 192*f126890aSEmmanuel Vadot }; 193*f126890aSEmmanuel Vadot }; 194*f126890aSEmmanuel Vadot }; 195*f126890aSEmmanuel Vadot }; 196*f126890aSEmmanuel Vadot 197*f126890aSEmmanuel Vadot ptm@801af000 { 198*f126890aSEmmanuel Vadot compatible = "arm,coresight-etm3x", "arm,primecell"; 199*f126890aSEmmanuel Vadot reg = <0x801af000 0x1000>; 200*f126890aSEmmanuel Vadot 201*f126890aSEmmanuel Vadot clocks = <&prcmu_clk PRCMU_APETRACECLK>, <&prcmu_clk PRCMU_APEATCLK>; 202*f126890aSEmmanuel Vadot clock-names = "apb_pclk", "atclk"; 203*f126890aSEmmanuel Vadot cpu = <&CPU1>; 204*f126890aSEmmanuel Vadot out-ports { 205*f126890aSEmmanuel Vadot port { 206*f126890aSEmmanuel Vadot ptm1_out_port: endpoint { 207*f126890aSEmmanuel Vadot remote-endpoint = <&funnel_in_port1>; 208*f126890aSEmmanuel Vadot }; 209*f126890aSEmmanuel Vadot }; 210*f126890aSEmmanuel Vadot }; 211*f126890aSEmmanuel Vadot }; 212*f126890aSEmmanuel Vadot 213*f126890aSEmmanuel Vadot funnel@801a6000 { 214*f126890aSEmmanuel Vadot compatible = "arm,coresight-dynamic-funnel", "arm,primecell"; 215*f126890aSEmmanuel Vadot reg = <0x801a6000 0x1000>; 216*f126890aSEmmanuel Vadot 217*f126890aSEmmanuel Vadot clocks = <&prcmu_clk PRCMU_APETRACECLK>, <&prcmu_clk PRCMU_APEATCLK>; 218*f126890aSEmmanuel Vadot clock-names = "apb_pclk", "atclk"; 219*f126890aSEmmanuel Vadot out-ports { 220*f126890aSEmmanuel Vadot port { 221*f126890aSEmmanuel Vadot funnel_out_port: endpoint { 222*f126890aSEmmanuel Vadot remote-endpoint = 223*f126890aSEmmanuel Vadot <&replicator_in_port0>; 224*f126890aSEmmanuel Vadot }; 225*f126890aSEmmanuel Vadot }; 226*f126890aSEmmanuel Vadot }; 227*f126890aSEmmanuel Vadot 228*f126890aSEmmanuel Vadot in-ports { 229*f126890aSEmmanuel Vadot #address-cells = <1>; 230*f126890aSEmmanuel Vadot #size-cells = <0>; 231*f126890aSEmmanuel Vadot 232*f126890aSEmmanuel Vadot port@0 { 233*f126890aSEmmanuel Vadot reg = <0>; 234*f126890aSEmmanuel Vadot funnel_in_port0: endpoint { 235*f126890aSEmmanuel Vadot remote-endpoint = <&ptm0_out_port>; 236*f126890aSEmmanuel Vadot }; 237*f126890aSEmmanuel Vadot }; 238*f126890aSEmmanuel Vadot 239*f126890aSEmmanuel Vadot port@1 { 240*f126890aSEmmanuel Vadot reg = <1>; 241*f126890aSEmmanuel Vadot funnel_in_port1: endpoint { 242*f126890aSEmmanuel Vadot remote-endpoint = <&ptm1_out_port>; 243*f126890aSEmmanuel Vadot }; 244*f126890aSEmmanuel Vadot }; 245*f126890aSEmmanuel Vadot }; 246*f126890aSEmmanuel Vadot }; 247*f126890aSEmmanuel Vadot 248*f126890aSEmmanuel Vadot replicator { 249*f126890aSEmmanuel Vadot compatible = "arm,coresight-static-replicator"; 250*f126890aSEmmanuel Vadot clocks = <&prcmu_clk PRCMU_APEATCLK>; 251*f126890aSEmmanuel Vadot clock-names = "atclk"; 252*f126890aSEmmanuel Vadot 253*f126890aSEmmanuel Vadot out-ports { 254*f126890aSEmmanuel Vadot #address-cells = <1>; 255*f126890aSEmmanuel Vadot #size-cells = <0>; 256*f126890aSEmmanuel Vadot 257*f126890aSEmmanuel Vadot port@0 { 258*f126890aSEmmanuel Vadot reg = <0>; 259*f126890aSEmmanuel Vadot replicator_out_port0: endpoint { 260*f126890aSEmmanuel Vadot remote-endpoint = <&tpiu_in_port>; 261*f126890aSEmmanuel Vadot }; 262*f126890aSEmmanuel Vadot }; 263*f126890aSEmmanuel Vadot port@1 { 264*f126890aSEmmanuel Vadot reg = <1>; 265*f126890aSEmmanuel Vadot replicator_out_port1: endpoint { 266*f126890aSEmmanuel Vadot remote-endpoint = <&etb_in_port>; 267*f126890aSEmmanuel Vadot }; 268*f126890aSEmmanuel Vadot }; 269*f126890aSEmmanuel Vadot }; 270*f126890aSEmmanuel Vadot 271*f126890aSEmmanuel Vadot in-ports { 272*f126890aSEmmanuel Vadot port { 273*f126890aSEmmanuel Vadot replicator_in_port0: endpoint { 274*f126890aSEmmanuel Vadot remote-endpoint = <&funnel_out_port>; 275*f126890aSEmmanuel Vadot }; 276*f126890aSEmmanuel Vadot }; 277*f126890aSEmmanuel Vadot }; 278*f126890aSEmmanuel Vadot }; 279*f126890aSEmmanuel Vadot 280*f126890aSEmmanuel Vadot tpiu@80190000 { 281*f126890aSEmmanuel Vadot compatible = "arm,coresight-tpiu", "arm,primecell"; 282*f126890aSEmmanuel Vadot reg = <0x80190000 0x1000>; 283*f126890aSEmmanuel Vadot 284*f126890aSEmmanuel Vadot clocks = <&prcmu_clk PRCMU_APETRACECLK>, <&prcmu_clk PRCMU_APEATCLK>; 285*f126890aSEmmanuel Vadot clock-names = "apb_pclk", "atclk"; 286*f126890aSEmmanuel Vadot in-ports { 287*f126890aSEmmanuel Vadot port { 288*f126890aSEmmanuel Vadot tpiu_in_port: endpoint { 289*f126890aSEmmanuel Vadot remote-endpoint = <&replicator_out_port0>; 290*f126890aSEmmanuel Vadot }; 291*f126890aSEmmanuel Vadot }; 292*f126890aSEmmanuel Vadot }; 293*f126890aSEmmanuel Vadot }; 294*f126890aSEmmanuel Vadot 295*f126890aSEmmanuel Vadot etb@801a4000 { 296*f126890aSEmmanuel Vadot compatible = "arm,coresight-etb10", "arm,primecell"; 297*f126890aSEmmanuel Vadot reg = <0x801a4000 0x1000>; 298*f126890aSEmmanuel Vadot 299*f126890aSEmmanuel Vadot clocks = <&prcmu_clk PRCMU_APETRACECLK>, <&prcmu_clk PRCMU_APEATCLK>; 300*f126890aSEmmanuel Vadot clock-names = "apb_pclk", "atclk"; 301*f126890aSEmmanuel Vadot in-ports { 302*f126890aSEmmanuel Vadot port { 303*f126890aSEmmanuel Vadot etb_in_port: endpoint { 304*f126890aSEmmanuel Vadot remote-endpoint = <&replicator_out_port1>; 305*f126890aSEmmanuel Vadot }; 306*f126890aSEmmanuel Vadot }; 307*f126890aSEmmanuel Vadot }; 308*f126890aSEmmanuel Vadot }; 309*f126890aSEmmanuel Vadot 310*f126890aSEmmanuel Vadot intc: interrupt-controller@a0411000 { 311*f126890aSEmmanuel Vadot compatible = "arm,cortex-a9-gic"; 312*f126890aSEmmanuel Vadot #interrupt-cells = <3>; 313*f126890aSEmmanuel Vadot #address-cells = <1>; 314*f126890aSEmmanuel Vadot interrupt-controller; 315*f126890aSEmmanuel Vadot reg = <0xa0411000 0x1000>, 316*f126890aSEmmanuel Vadot <0xa0410100 0x100>; 317*f126890aSEmmanuel Vadot }; 318*f126890aSEmmanuel Vadot 319*f126890aSEmmanuel Vadot scu@a0410000 { 320*f126890aSEmmanuel Vadot compatible = "arm,cortex-a9-scu"; 321*f126890aSEmmanuel Vadot reg = <0xa0410000 0x100>; 322*f126890aSEmmanuel Vadot }; 323*f126890aSEmmanuel Vadot 324*f126890aSEmmanuel Vadot /* 325*f126890aSEmmanuel Vadot * The backup RAM is used for retention during sleep 326*f126890aSEmmanuel Vadot * and various things like spin tables 327*f126890aSEmmanuel Vadot */ 328*f126890aSEmmanuel Vadot backupram@80150000 { 329*f126890aSEmmanuel Vadot compatible = "ste,dbx500-backupram"; 330*f126890aSEmmanuel Vadot reg = <0x80150000 0x2000>; 331*f126890aSEmmanuel Vadot }; 332*f126890aSEmmanuel Vadot 333*f126890aSEmmanuel Vadot L2: cache-controller { 334*f126890aSEmmanuel Vadot compatible = "arm,pl310-cache"; 335*f126890aSEmmanuel Vadot reg = <0xa0412000 0x1000>; 336*f126890aSEmmanuel Vadot interrupts = <GIC_SPI 13 IRQ_TYPE_LEVEL_HIGH>; 337*f126890aSEmmanuel Vadot cache-unified; 338*f126890aSEmmanuel Vadot cache-level = <2>; 339*f126890aSEmmanuel Vadot }; 340*f126890aSEmmanuel Vadot 341*f126890aSEmmanuel Vadot pmu { 342*f126890aSEmmanuel Vadot compatible = "arm,cortex-a9-pmu"; 343*f126890aSEmmanuel Vadot interrupts = <GIC_SPI 7 IRQ_TYPE_LEVEL_HIGH>; 344*f126890aSEmmanuel Vadot }; 345*f126890aSEmmanuel Vadot 346*f126890aSEmmanuel Vadot pm_domains: pm_domains0 { 347*f126890aSEmmanuel Vadot compatible = "stericsson,ux500-pm-domains"; 348*f126890aSEmmanuel Vadot #power-domain-cells = <1>; 349*f126890aSEmmanuel Vadot }; 350*f126890aSEmmanuel Vadot 351*f126890aSEmmanuel Vadot clocks { 352*f126890aSEmmanuel Vadot compatible = "stericsson,u8500-clks"; 353*f126890aSEmmanuel Vadot /* 354*f126890aSEmmanuel Vadot * Registers for the CLKRST block on peripheral 355*f126890aSEmmanuel Vadot * groups 1, 2, 3, 5, 6, 356*f126890aSEmmanuel Vadot */ 357*f126890aSEmmanuel Vadot reg = <0x8012f000 0x1000>, <0x8011f000 0x1000>, 358*f126890aSEmmanuel Vadot <0x8000f000 0x1000>, <0xa03ff000 0x1000>, 359*f126890aSEmmanuel Vadot <0xa03cf000 0x1000>; 360*f126890aSEmmanuel Vadot 361*f126890aSEmmanuel Vadot prcmu_clk: prcmu-clock { 362*f126890aSEmmanuel Vadot #clock-cells = <1>; 363*f126890aSEmmanuel Vadot }; 364*f126890aSEmmanuel Vadot 365*f126890aSEmmanuel Vadot prcc_pclk: prcc-periph-clock { 366*f126890aSEmmanuel Vadot #clock-cells = <2>; 367*f126890aSEmmanuel Vadot }; 368*f126890aSEmmanuel Vadot 369*f126890aSEmmanuel Vadot prcc_kclk: prcc-kernel-clock { 370*f126890aSEmmanuel Vadot #clock-cells = <2>; 371*f126890aSEmmanuel Vadot }; 372*f126890aSEmmanuel Vadot 373*f126890aSEmmanuel Vadot prcc_reset: prcc-reset-controller { 374*f126890aSEmmanuel Vadot #reset-cells = <2>; 375*f126890aSEmmanuel Vadot }; 376*f126890aSEmmanuel Vadot 377*f126890aSEmmanuel Vadot rtc_clk: rtc32k-clock { 378*f126890aSEmmanuel Vadot #clock-cells = <0>; 379*f126890aSEmmanuel Vadot }; 380*f126890aSEmmanuel Vadot 381*f126890aSEmmanuel Vadot smp_twd_clk: smp-twd-clock { 382*f126890aSEmmanuel Vadot #clock-cells = <0>; 383*f126890aSEmmanuel Vadot }; 384*f126890aSEmmanuel Vadot 385*f126890aSEmmanuel Vadot clkout_clk: clkout-clock { 386*f126890aSEmmanuel Vadot /* Cell 1 id, cell 2 source, cell 3 div */ 387*f126890aSEmmanuel Vadot #clock-cells = <3>; 388*f126890aSEmmanuel Vadot }; 389*f126890aSEmmanuel Vadot }; 390*f126890aSEmmanuel Vadot 391*f126890aSEmmanuel Vadot mtu@a03c6000 { 392*f126890aSEmmanuel Vadot /* Nomadik System Timer */ 393*f126890aSEmmanuel Vadot compatible = "st,nomadik-mtu"; 394*f126890aSEmmanuel Vadot reg = <0xa03c6000 0x1000>; 395*f126890aSEmmanuel Vadot interrupts = <GIC_SPI 4 IRQ_TYPE_LEVEL_HIGH>; 396*f126890aSEmmanuel Vadot 397*f126890aSEmmanuel Vadot clocks = <&prcmu_clk PRCMU_TIMCLK>, <&prcc_pclk 6 6>; 398*f126890aSEmmanuel Vadot clock-names = "timclk", "apb_pclk"; 399*f126890aSEmmanuel Vadot }; 400*f126890aSEmmanuel Vadot 401*f126890aSEmmanuel Vadot timer@a0410600 { 402*f126890aSEmmanuel Vadot compatible = "arm,cortex-a9-twd-timer"; 403*f126890aSEmmanuel Vadot reg = <0xa0410600 0x20>; 404*f126890aSEmmanuel Vadot interrupts = <GIC_PPI 13 (GIC_CPU_MASK_RAW(3) | IRQ_TYPE_LEVEL_HIGH)>; 405*f126890aSEmmanuel Vadot 406*f126890aSEmmanuel Vadot clocks = <&smp_twd_clk>; 407*f126890aSEmmanuel Vadot }; 408*f126890aSEmmanuel Vadot 409*f126890aSEmmanuel Vadot watchdog@a0410620 { 410*f126890aSEmmanuel Vadot compatible = "arm,cortex-a9-twd-wdt"; 411*f126890aSEmmanuel Vadot reg = <0xa0410620 0x20>; 412*f126890aSEmmanuel Vadot interrupts = <GIC_PPI 14 (GIC_CPU_MASK_RAW(3) | IRQ_TYPE_LEVEL_HIGH)>; 413*f126890aSEmmanuel Vadot clocks = <&smp_twd_clk>; 414*f126890aSEmmanuel Vadot }; 415*f126890aSEmmanuel Vadot 416*f126890aSEmmanuel Vadot rtc@80154000 { 417*f126890aSEmmanuel Vadot compatible = "arm,pl031", "arm,primecell"; 418*f126890aSEmmanuel Vadot reg = <0x80154000 0x1000>; 419*f126890aSEmmanuel Vadot interrupts = <GIC_SPI 18 IRQ_TYPE_LEVEL_HIGH>; 420*f126890aSEmmanuel Vadot 421*f126890aSEmmanuel Vadot clocks = <&rtc_clk>; 422*f126890aSEmmanuel Vadot clock-names = "apb_pclk"; 423*f126890aSEmmanuel Vadot }; 424*f126890aSEmmanuel Vadot 425*f126890aSEmmanuel Vadot gpio0: gpio@8012e000 { 426*f126890aSEmmanuel Vadot compatible = "stericsson,db8500-gpio", 427*f126890aSEmmanuel Vadot "st,nomadik-gpio"; 428*f126890aSEmmanuel Vadot reg = <0x8012e000 0x80>; 429*f126890aSEmmanuel Vadot interrupts = <GIC_SPI 119 IRQ_TYPE_LEVEL_HIGH>; 430*f126890aSEmmanuel Vadot interrupt-controller; 431*f126890aSEmmanuel Vadot #interrupt-cells = <2>; 432*f126890aSEmmanuel Vadot st,supports-sleepmode; 433*f126890aSEmmanuel Vadot gpio-controller; 434*f126890aSEmmanuel Vadot #gpio-cells = <2>; 435*f126890aSEmmanuel Vadot gpio-bank = <0>; 436*f126890aSEmmanuel Vadot gpio-ranges = <&pinctrl 0 0 32>; 437*f126890aSEmmanuel Vadot clocks = <&prcc_pclk 1 9>; 438*f126890aSEmmanuel Vadot }; 439*f126890aSEmmanuel Vadot 440*f126890aSEmmanuel Vadot gpio1: gpio@8012e080 { 441*f126890aSEmmanuel Vadot compatible = "stericsson,db8500-gpio", 442*f126890aSEmmanuel Vadot "st,nomadik-gpio"; 443*f126890aSEmmanuel Vadot reg = <0x8012e080 0x80>; 444*f126890aSEmmanuel Vadot interrupts = <GIC_SPI 120 IRQ_TYPE_LEVEL_HIGH>; 445*f126890aSEmmanuel Vadot interrupt-controller; 446*f126890aSEmmanuel Vadot #interrupt-cells = <2>; 447*f126890aSEmmanuel Vadot st,supports-sleepmode; 448*f126890aSEmmanuel Vadot gpio-controller; 449*f126890aSEmmanuel Vadot #gpio-cells = <2>; 450*f126890aSEmmanuel Vadot gpio-bank = <1>; 451*f126890aSEmmanuel Vadot gpio-ranges = <&pinctrl 0 32 5>; 452*f126890aSEmmanuel Vadot clocks = <&prcc_pclk 1 9>; 453*f126890aSEmmanuel Vadot }; 454*f126890aSEmmanuel Vadot 455*f126890aSEmmanuel Vadot gpio2: gpio@8000e000 { 456*f126890aSEmmanuel Vadot compatible = "stericsson,db8500-gpio", 457*f126890aSEmmanuel Vadot "st,nomadik-gpio"; 458*f126890aSEmmanuel Vadot reg = <0x8000e000 0x80>; 459*f126890aSEmmanuel Vadot interrupts = <GIC_SPI 121 IRQ_TYPE_LEVEL_HIGH>; 460*f126890aSEmmanuel Vadot interrupt-controller; 461*f126890aSEmmanuel Vadot #interrupt-cells = <2>; 462*f126890aSEmmanuel Vadot st,supports-sleepmode; 463*f126890aSEmmanuel Vadot gpio-controller; 464*f126890aSEmmanuel Vadot #gpio-cells = <2>; 465*f126890aSEmmanuel Vadot gpio-bank = <2>; 466*f126890aSEmmanuel Vadot gpio-ranges = <&pinctrl 0 64 32>; 467*f126890aSEmmanuel Vadot clocks = <&prcc_pclk 3 8>; 468*f126890aSEmmanuel Vadot }; 469*f126890aSEmmanuel Vadot 470*f126890aSEmmanuel Vadot gpio3: gpio@8000e080 { 471*f126890aSEmmanuel Vadot compatible = "stericsson,db8500-gpio", 472*f126890aSEmmanuel Vadot "st,nomadik-gpio"; 473*f126890aSEmmanuel Vadot reg = <0x8000e080 0x80>; 474*f126890aSEmmanuel Vadot interrupts = <GIC_SPI 122 IRQ_TYPE_LEVEL_HIGH>; 475*f126890aSEmmanuel Vadot interrupt-controller; 476*f126890aSEmmanuel Vadot #interrupt-cells = <2>; 477*f126890aSEmmanuel Vadot st,supports-sleepmode; 478*f126890aSEmmanuel Vadot gpio-controller; 479*f126890aSEmmanuel Vadot #gpio-cells = <2>; 480*f126890aSEmmanuel Vadot gpio-bank = <3>; 481*f126890aSEmmanuel Vadot gpio-ranges = <&pinctrl 0 96 2>; 482*f126890aSEmmanuel Vadot clocks = <&prcc_pclk 3 8>; 483*f126890aSEmmanuel Vadot }; 484*f126890aSEmmanuel Vadot 485*f126890aSEmmanuel Vadot gpio4: gpio@8000e100 { 486*f126890aSEmmanuel Vadot compatible = "stericsson,db8500-gpio", 487*f126890aSEmmanuel Vadot "st,nomadik-gpio"; 488*f126890aSEmmanuel Vadot reg = <0x8000e100 0x80>; 489*f126890aSEmmanuel Vadot interrupts = <GIC_SPI 123 IRQ_TYPE_LEVEL_HIGH>; 490*f126890aSEmmanuel Vadot interrupt-controller; 491*f126890aSEmmanuel Vadot #interrupt-cells = <2>; 492*f126890aSEmmanuel Vadot st,supports-sleepmode; 493*f126890aSEmmanuel Vadot gpio-controller; 494*f126890aSEmmanuel Vadot #gpio-cells = <2>; 495*f126890aSEmmanuel Vadot gpio-bank = <4>; 496*f126890aSEmmanuel Vadot gpio-ranges = <&pinctrl 0 128 32>; 497*f126890aSEmmanuel Vadot clocks = <&prcc_pclk 3 8>; 498*f126890aSEmmanuel Vadot }; 499*f126890aSEmmanuel Vadot 500*f126890aSEmmanuel Vadot gpio5: gpio@8000e180 { 501*f126890aSEmmanuel Vadot compatible = "stericsson,db8500-gpio", 502*f126890aSEmmanuel Vadot "st,nomadik-gpio"; 503*f126890aSEmmanuel Vadot reg = <0x8000e180 0x80>; 504*f126890aSEmmanuel Vadot interrupts = <GIC_SPI 124 IRQ_TYPE_LEVEL_HIGH>; 505*f126890aSEmmanuel Vadot interrupt-controller; 506*f126890aSEmmanuel Vadot #interrupt-cells = <2>; 507*f126890aSEmmanuel Vadot st,supports-sleepmode; 508*f126890aSEmmanuel Vadot gpio-controller; 509*f126890aSEmmanuel Vadot #gpio-cells = <2>; 510*f126890aSEmmanuel Vadot gpio-bank = <5>; 511*f126890aSEmmanuel Vadot gpio-ranges = <&pinctrl 0 160 12>; 512*f126890aSEmmanuel Vadot clocks = <&prcc_pclk 3 8>; 513*f126890aSEmmanuel Vadot }; 514*f126890aSEmmanuel Vadot 515*f126890aSEmmanuel Vadot gpio6: gpio@8011e000 { 516*f126890aSEmmanuel Vadot compatible = "stericsson,db8500-gpio", 517*f126890aSEmmanuel Vadot "st,nomadik-gpio"; 518*f126890aSEmmanuel Vadot reg = <0x8011e000 0x80>; 519*f126890aSEmmanuel Vadot interrupts = <GIC_SPI 125 IRQ_TYPE_LEVEL_HIGH>; 520*f126890aSEmmanuel Vadot interrupt-controller; 521*f126890aSEmmanuel Vadot #interrupt-cells = <2>; 522*f126890aSEmmanuel Vadot st,supports-sleepmode; 523*f126890aSEmmanuel Vadot gpio-controller; 524*f126890aSEmmanuel Vadot #gpio-cells = <2>; 525*f126890aSEmmanuel Vadot gpio-bank = <6>; 526*f126890aSEmmanuel Vadot gpio-ranges = <&pinctrl 0 192 32>; 527*f126890aSEmmanuel Vadot clocks = <&prcc_pclk 2 11>; 528*f126890aSEmmanuel Vadot }; 529*f126890aSEmmanuel Vadot 530*f126890aSEmmanuel Vadot gpio7: gpio@8011e080 { 531*f126890aSEmmanuel Vadot compatible = "stericsson,db8500-gpio", 532*f126890aSEmmanuel Vadot "st,nomadik-gpio"; 533*f126890aSEmmanuel Vadot reg = <0x8011e080 0x80>; 534*f126890aSEmmanuel Vadot interrupts = <GIC_SPI 126 IRQ_TYPE_LEVEL_HIGH>; 535*f126890aSEmmanuel Vadot interrupt-controller; 536*f126890aSEmmanuel Vadot #interrupt-cells = <2>; 537*f126890aSEmmanuel Vadot st,supports-sleepmode; 538*f126890aSEmmanuel Vadot gpio-controller; 539*f126890aSEmmanuel Vadot #gpio-cells = <2>; 540*f126890aSEmmanuel Vadot gpio-bank = <7>; 541*f126890aSEmmanuel Vadot gpio-ranges = <&pinctrl 0 224 7>; 542*f126890aSEmmanuel Vadot clocks = <&prcc_pclk 2 11>; 543*f126890aSEmmanuel Vadot }; 544*f126890aSEmmanuel Vadot 545*f126890aSEmmanuel Vadot gpio8: gpio@a03fe000 { 546*f126890aSEmmanuel Vadot compatible = "stericsson,db8500-gpio", 547*f126890aSEmmanuel Vadot "st,nomadik-gpio"; 548*f126890aSEmmanuel Vadot reg = <0xa03fe000 0x80>; 549*f126890aSEmmanuel Vadot interrupts = <GIC_SPI 127 IRQ_TYPE_LEVEL_HIGH>; 550*f126890aSEmmanuel Vadot interrupt-controller; 551*f126890aSEmmanuel Vadot #interrupt-cells = <2>; 552*f126890aSEmmanuel Vadot st,supports-sleepmode; 553*f126890aSEmmanuel Vadot gpio-controller; 554*f126890aSEmmanuel Vadot #gpio-cells = <2>; 555*f126890aSEmmanuel Vadot gpio-bank = <8>; 556*f126890aSEmmanuel Vadot gpio-ranges = <&pinctrl 0 256 12>; 557*f126890aSEmmanuel Vadot clocks = <&prcc_pclk 5 1>; 558*f126890aSEmmanuel Vadot }; 559*f126890aSEmmanuel Vadot 560*f126890aSEmmanuel Vadot pinctrl: pinctrl { 561*f126890aSEmmanuel Vadot compatible = "stericsson,db8500-pinctrl"; 562*f126890aSEmmanuel Vadot nomadik-gpio-chips = <&gpio0>, <&gpio1>, <&gpio2>, <&gpio3>, 563*f126890aSEmmanuel Vadot <&gpio4>, <&gpio5>, <&gpio6>, <&gpio7>, 564*f126890aSEmmanuel Vadot <&gpio8>; 565*f126890aSEmmanuel Vadot prcm = <&prcmu>; 566*f126890aSEmmanuel Vadot }; 567*f126890aSEmmanuel Vadot 568*f126890aSEmmanuel Vadot usb_per5@a03e0000 { 569*f126890aSEmmanuel Vadot compatible = "stericsson,db8500-musb"; 570*f126890aSEmmanuel Vadot reg = <0xa03e0000 0x10000>; 571*f126890aSEmmanuel Vadot interrupts = <GIC_SPI 23 IRQ_TYPE_LEVEL_HIGH>; 572*f126890aSEmmanuel Vadot interrupt-names = "mc"; 573*f126890aSEmmanuel Vadot 574*f126890aSEmmanuel Vadot dr_mode = "otg"; 575*f126890aSEmmanuel Vadot 576*f126890aSEmmanuel Vadot dmas = <&dma 38 0 0x2>, /* Logical - DevToMem */ 577*f126890aSEmmanuel Vadot <&dma 38 0 0x0>, /* Logical - MemToDev */ 578*f126890aSEmmanuel Vadot <&dma 37 0 0x2>, /* Logical - DevToMem */ 579*f126890aSEmmanuel Vadot <&dma 37 0 0x0>, /* Logical - MemToDev */ 580*f126890aSEmmanuel Vadot <&dma 36 0 0x2>, /* Logical - DevToMem */ 581*f126890aSEmmanuel Vadot <&dma 36 0 0x0>, /* Logical - MemToDev */ 582*f126890aSEmmanuel Vadot <&dma 19 0 0x2>, /* Logical - DevToMem */ 583*f126890aSEmmanuel Vadot <&dma 19 0 0x0>, /* Logical - MemToDev */ 584*f126890aSEmmanuel Vadot <&dma 18 0 0x2>, /* Logical - DevToMem */ 585*f126890aSEmmanuel Vadot <&dma 18 0 0x0>, /* Logical - MemToDev */ 586*f126890aSEmmanuel Vadot <&dma 17 0 0x2>, /* Logical - DevToMem */ 587*f126890aSEmmanuel Vadot <&dma 17 0 0x0>, /* Logical - MemToDev */ 588*f126890aSEmmanuel Vadot <&dma 16 0 0x2>, /* Logical - DevToMem */ 589*f126890aSEmmanuel Vadot <&dma 16 0 0x0>, /* Logical - MemToDev */ 590*f126890aSEmmanuel Vadot <&dma 39 0 0x2>, /* Logical - DevToMem */ 591*f126890aSEmmanuel Vadot <&dma 39 0 0x0>; /* Logical - MemToDev */ 592*f126890aSEmmanuel Vadot 593*f126890aSEmmanuel Vadot dma-names = "iep_1_9", "oep_1_9", 594*f126890aSEmmanuel Vadot "iep_2_10", "oep_2_10", 595*f126890aSEmmanuel Vadot "iep_3_11", "oep_3_11", 596*f126890aSEmmanuel Vadot "iep_4_12", "oep_4_12", 597*f126890aSEmmanuel Vadot "iep_5_13", "oep_5_13", 598*f126890aSEmmanuel Vadot "iep_6_14", "oep_6_14", 599*f126890aSEmmanuel Vadot "iep_7_15", "oep_7_15", 600*f126890aSEmmanuel Vadot "iep_8", "oep_8"; 601*f126890aSEmmanuel Vadot 602*f126890aSEmmanuel Vadot clocks = <&prcc_pclk 5 0>; 603*f126890aSEmmanuel Vadot }; 604*f126890aSEmmanuel Vadot 605*f126890aSEmmanuel Vadot dma: dma-controller@801C0000 { 606*f126890aSEmmanuel Vadot compatible = "stericsson,db8500-dma40", "stericsson,dma40"; 607*f126890aSEmmanuel Vadot reg = <0x801C0000 0x1000>; 608*f126890aSEmmanuel Vadot reg-names = "base"; 609*f126890aSEmmanuel Vadot interrupts = <GIC_SPI 25 IRQ_TYPE_LEVEL_HIGH>; 610*f126890aSEmmanuel Vadot sram = <&lcpa>, <&lcla>; 611*f126890aSEmmanuel Vadot 612*f126890aSEmmanuel Vadot #dma-cells = <3>; 613*f126890aSEmmanuel Vadot memcpy-channels = <56 57 58 59 60>; 614*f126890aSEmmanuel Vadot 615*f126890aSEmmanuel Vadot clocks = <&prcmu_clk PRCMU_DMACLK>; 616*f126890aSEmmanuel Vadot }; 617*f126890aSEmmanuel Vadot 618*f126890aSEmmanuel Vadot prcmu: prcmu@80157000 { 619*f126890aSEmmanuel Vadot compatible = "stericsson,db8500-prcmu", "syscon"; 620*f126890aSEmmanuel Vadot reg = <0x80157000 0x2000>, <0x801b0000 0x8000>, <0x801b8000 0x1000>; 621*f126890aSEmmanuel Vadot reg-names = "prcmu", "prcmu-tcpm", "prcmu-tcdm"; 622*f126890aSEmmanuel Vadot interrupts = <GIC_SPI 47 IRQ_TYPE_LEVEL_HIGH>; 623*f126890aSEmmanuel Vadot #address-cells = <1>; 624*f126890aSEmmanuel Vadot #size-cells = <1>; 625*f126890aSEmmanuel Vadot interrupt-controller; 626*f126890aSEmmanuel Vadot #interrupt-cells = <2>; 627*f126890aSEmmanuel Vadot ranges; 628*f126890aSEmmanuel Vadot 629*f126890aSEmmanuel Vadot prcmu-timer-4@80157450 { 630*f126890aSEmmanuel Vadot compatible = "stericsson,db8500-prcmu-timer-4"; 631*f126890aSEmmanuel Vadot reg = <0x80157450 0xC>; 632*f126890aSEmmanuel Vadot }; 633*f126890aSEmmanuel Vadot 634*f126890aSEmmanuel Vadot thermal: thermal@801573c0 { 635*f126890aSEmmanuel Vadot compatible = "stericsson,db8500-thermal"; 636*f126890aSEmmanuel Vadot reg = <0x801573c0 0x40>; 637*f126890aSEmmanuel Vadot interrupt-parent = <&prcmu>; 638*f126890aSEmmanuel Vadot interrupts = <21 IRQ_TYPE_LEVEL_HIGH>, 639*f126890aSEmmanuel Vadot <22 IRQ_TYPE_LEVEL_HIGH>; 640*f126890aSEmmanuel Vadot interrupt-names = "IRQ_HOTMON_LOW", "IRQ_HOTMON_HIGH"; 641*f126890aSEmmanuel Vadot #thermal-sensor-cells = <0>; 642*f126890aSEmmanuel Vadot }; 643*f126890aSEmmanuel Vadot 644*f126890aSEmmanuel Vadot db8500-prcmu-regulators { 645*f126890aSEmmanuel Vadot compatible = "stericsson,db8500-prcmu-regulator"; 646*f126890aSEmmanuel Vadot 647*f126890aSEmmanuel Vadot // DB8500_REGULATOR_VAPE 648*f126890aSEmmanuel Vadot db8500_vape_reg: db8500_vape { 649*f126890aSEmmanuel Vadot regulator-always-on; 650*f126890aSEmmanuel Vadot }; 651*f126890aSEmmanuel Vadot 652*f126890aSEmmanuel Vadot // DB8500_REGULATOR_VARM 653*f126890aSEmmanuel Vadot db8500_varm_reg: db8500_varm { 654*f126890aSEmmanuel Vadot }; 655*f126890aSEmmanuel Vadot 656*f126890aSEmmanuel Vadot // DB8500_REGULATOR_VMODEM 657*f126890aSEmmanuel Vadot db8500_vmodem_reg: db8500_vmodem { 658*f126890aSEmmanuel Vadot }; 659*f126890aSEmmanuel Vadot 660*f126890aSEmmanuel Vadot // DB8500_REGULATOR_VPLL 661*f126890aSEmmanuel Vadot db8500_vpll_reg: db8500_vpll { 662*f126890aSEmmanuel Vadot }; 663*f126890aSEmmanuel Vadot 664*f126890aSEmmanuel Vadot // DB8500_REGULATOR_VSMPS1 665*f126890aSEmmanuel Vadot db8500_vsmps1_reg: db8500_vsmps1 { 666*f126890aSEmmanuel Vadot }; 667*f126890aSEmmanuel Vadot 668*f126890aSEmmanuel Vadot // DB8500_REGULATOR_VSMPS2 669*f126890aSEmmanuel Vadot db8500_vsmps2_reg: db8500_vsmps2 { 670*f126890aSEmmanuel Vadot }; 671*f126890aSEmmanuel Vadot 672*f126890aSEmmanuel Vadot // DB8500_REGULATOR_VSMPS3 673*f126890aSEmmanuel Vadot db8500_vsmps3_reg: db8500_vsmps3 { 674*f126890aSEmmanuel Vadot }; 675*f126890aSEmmanuel Vadot 676*f126890aSEmmanuel Vadot // DB8500_REGULATOR_VRF1 677*f126890aSEmmanuel Vadot db8500_vrf1_reg: db8500_vrf1 { 678*f126890aSEmmanuel Vadot }; 679*f126890aSEmmanuel Vadot 680*f126890aSEmmanuel Vadot // DB8500_REGULATOR_SWITCH_SVAMMDSP 681*f126890aSEmmanuel Vadot db8500_sva_mmdsp_reg: db8500_sva_mmdsp { 682*f126890aSEmmanuel Vadot }; 683*f126890aSEmmanuel Vadot 684*f126890aSEmmanuel Vadot // DB8500_REGULATOR_SWITCH_SVAMMDSPRET 685*f126890aSEmmanuel Vadot db8500_sva_mmdsp_ret_reg: db8500_sva_mmdsp_ret { 686*f126890aSEmmanuel Vadot }; 687*f126890aSEmmanuel Vadot 688*f126890aSEmmanuel Vadot // DB8500_REGULATOR_SWITCH_SVAPIPE 689*f126890aSEmmanuel Vadot db8500_sva_pipe_reg: db8500_sva_pipe { 690*f126890aSEmmanuel Vadot }; 691*f126890aSEmmanuel Vadot 692*f126890aSEmmanuel Vadot // DB8500_REGULATOR_SWITCH_SIAMMDSP 693*f126890aSEmmanuel Vadot db8500_sia_mmdsp_reg: db8500_sia_mmdsp { 694*f126890aSEmmanuel Vadot }; 695*f126890aSEmmanuel Vadot 696*f126890aSEmmanuel Vadot // DB8500_REGULATOR_SWITCH_SIAMMDSPRET 697*f126890aSEmmanuel Vadot db8500_sia_mmdsp_ret_reg: db8500_sia_mmdsp_ret { 698*f126890aSEmmanuel Vadot }; 699*f126890aSEmmanuel Vadot 700*f126890aSEmmanuel Vadot // DB8500_REGULATOR_SWITCH_SIAPIPE 701*f126890aSEmmanuel Vadot db8500_sia_pipe_reg: db8500_sia_pipe { 702*f126890aSEmmanuel Vadot }; 703*f126890aSEmmanuel Vadot 704*f126890aSEmmanuel Vadot // DB8500_REGULATOR_SWITCH_SGA 705*f126890aSEmmanuel Vadot db8500_sga_reg: db8500_sga { 706*f126890aSEmmanuel Vadot vin-supply = <&db8500_vape_reg>; 707*f126890aSEmmanuel Vadot }; 708*f126890aSEmmanuel Vadot 709*f126890aSEmmanuel Vadot // DB8500_REGULATOR_SWITCH_B2R2_MCDE 710*f126890aSEmmanuel Vadot db8500_b2r2_mcde_reg: db8500_b2r2_mcde { 711*f126890aSEmmanuel Vadot vin-supply = <&db8500_vape_reg>; 712*f126890aSEmmanuel Vadot }; 713*f126890aSEmmanuel Vadot 714*f126890aSEmmanuel Vadot // DB8500_REGULATOR_SWITCH_ESRAM12 715*f126890aSEmmanuel Vadot db8500_esram12_reg: db8500_esram12 { 716*f126890aSEmmanuel Vadot }; 717*f126890aSEmmanuel Vadot 718*f126890aSEmmanuel Vadot // DB8500_REGULATOR_SWITCH_ESRAM12RET 719*f126890aSEmmanuel Vadot db8500_esram12_ret_reg: db8500_esram12_ret { 720*f126890aSEmmanuel Vadot }; 721*f126890aSEmmanuel Vadot 722*f126890aSEmmanuel Vadot // DB8500_REGULATOR_SWITCH_ESRAM34 723*f126890aSEmmanuel Vadot db8500_esram34_reg: db8500_esram34 { 724*f126890aSEmmanuel Vadot }; 725*f126890aSEmmanuel Vadot 726*f126890aSEmmanuel Vadot // DB8500_REGULATOR_SWITCH_ESRAM34RET 727*f126890aSEmmanuel Vadot db8500_esram34_ret_reg: db8500_esram34_ret { 728*f126890aSEmmanuel Vadot }; 729*f126890aSEmmanuel Vadot }; 730*f126890aSEmmanuel Vadot }; 731*f126890aSEmmanuel Vadot 732*f126890aSEmmanuel Vadot i2c0: i2c@80004000 { 733*f126890aSEmmanuel Vadot compatible = "stericsson,db8500-i2c", "st,nomadik-i2c", "arm,primecell"; 734*f126890aSEmmanuel Vadot reg = <0x80004000 0x1000>; 735*f126890aSEmmanuel Vadot interrupts = <GIC_SPI 21 IRQ_TYPE_LEVEL_HIGH>; 736*f126890aSEmmanuel Vadot 737*f126890aSEmmanuel Vadot #address-cells = <1>; 738*f126890aSEmmanuel Vadot #size-cells = <0>; 739*f126890aSEmmanuel Vadot 740*f126890aSEmmanuel Vadot clock-frequency = <400000>; 741*f126890aSEmmanuel Vadot clocks = <&prcc_kclk 3 3>, <&prcc_pclk 3 3>; 742*f126890aSEmmanuel Vadot clock-names = "i2cclk", "apb_pclk"; 743*f126890aSEmmanuel Vadot power-domains = <&pm_domains DOMAIN_VAPE>; 744*f126890aSEmmanuel Vadot resets = <&prcc_reset DB8500_PRCC_3 DB8500_PRCC_3_RESET_I2C0>; 745*f126890aSEmmanuel Vadot 746*f126890aSEmmanuel Vadot status = "disabled"; 747*f126890aSEmmanuel Vadot }; 748*f126890aSEmmanuel Vadot 749*f126890aSEmmanuel Vadot i2c1: i2c@80122000 { 750*f126890aSEmmanuel Vadot compatible = "stericsson,db8500-i2c", "st,nomadik-i2c", "arm,primecell"; 751*f126890aSEmmanuel Vadot reg = <0x80122000 0x1000>; 752*f126890aSEmmanuel Vadot interrupts = <GIC_SPI 22 IRQ_TYPE_LEVEL_HIGH>; 753*f126890aSEmmanuel Vadot 754*f126890aSEmmanuel Vadot #address-cells = <1>; 755*f126890aSEmmanuel Vadot #size-cells = <0>; 756*f126890aSEmmanuel Vadot 757*f126890aSEmmanuel Vadot clock-frequency = <400000>; 758*f126890aSEmmanuel Vadot 759*f126890aSEmmanuel Vadot clocks = <&prcc_kclk 1 2>, <&prcc_pclk 1 2>; 760*f126890aSEmmanuel Vadot clock-names = "i2cclk", "apb_pclk"; 761*f126890aSEmmanuel Vadot power-domains = <&pm_domains DOMAIN_VAPE>; 762*f126890aSEmmanuel Vadot resets = <&prcc_reset DB8500_PRCC_1 DB8500_PRCC_1_RESET_I2C1>; 763*f126890aSEmmanuel Vadot 764*f126890aSEmmanuel Vadot status = "disabled"; 765*f126890aSEmmanuel Vadot }; 766*f126890aSEmmanuel Vadot 767*f126890aSEmmanuel Vadot i2c2: i2c@80128000 { 768*f126890aSEmmanuel Vadot compatible = "stericsson,db8500-i2c", "st,nomadik-i2c", "arm,primecell"; 769*f126890aSEmmanuel Vadot reg = <0x80128000 0x1000>; 770*f126890aSEmmanuel Vadot interrupts = <GIC_SPI 55 IRQ_TYPE_LEVEL_HIGH>; 771*f126890aSEmmanuel Vadot 772*f126890aSEmmanuel Vadot #address-cells = <1>; 773*f126890aSEmmanuel Vadot #size-cells = <0>; 774*f126890aSEmmanuel Vadot 775*f126890aSEmmanuel Vadot clock-frequency = <400000>; 776*f126890aSEmmanuel Vadot 777*f126890aSEmmanuel Vadot clocks = <&prcc_kclk 1 6>, <&prcc_pclk 1 6>; 778*f126890aSEmmanuel Vadot clock-names = "i2cclk", "apb_pclk"; 779*f126890aSEmmanuel Vadot power-domains = <&pm_domains DOMAIN_VAPE>; 780*f126890aSEmmanuel Vadot resets = <&prcc_reset DB8500_PRCC_1 DB8500_PRCC_1_RESET_I2C2>; 781*f126890aSEmmanuel Vadot 782*f126890aSEmmanuel Vadot status = "disabled"; 783*f126890aSEmmanuel Vadot }; 784*f126890aSEmmanuel Vadot 785*f126890aSEmmanuel Vadot i2c3: i2c@80110000 { 786*f126890aSEmmanuel Vadot compatible = "stericsson,db8500-i2c", "st,nomadik-i2c", "arm,primecell"; 787*f126890aSEmmanuel Vadot reg = <0x80110000 0x1000>; 788*f126890aSEmmanuel Vadot interrupts = <GIC_SPI 12 IRQ_TYPE_LEVEL_HIGH>; 789*f126890aSEmmanuel Vadot 790*f126890aSEmmanuel Vadot #address-cells = <1>; 791*f126890aSEmmanuel Vadot #size-cells = <0>; 792*f126890aSEmmanuel Vadot 793*f126890aSEmmanuel Vadot clock-frequency = <400000>; 794*f126890aSEmmanuel Vadot 795*f126890aSEmmanuel Vadot clocks = <&prcc_kclk 2 0>, <&prcc_pclk 2 0>; 796*f126890aSEmmanuel Vadot clock-names = "i2cclk", "apb_pclk"; 797*f126890aSEmmanuel Vadot power-domains = <&pm_domains DOMAIN_VAPE>; 798*f126890aSEmmanuel Vadot resets = <&prcc_reset DB8500_PRCC_2 DB8500_PRCC_2_RESET_I2C3>; 799*f126890aSEmmanuel Vadot 800*f126890aSEmmanuel Vadot status = "disabled"; 801*f126890aSEmmanuel Vadot }; 802*f126890aSEmmanuel Vadot 803*f126890aSEmmanuel Vadot i2c4: i2c@8012a000 { 804*f126890aSEmmanuel Vadot compatible = "stericsson,db8500-i2c", "st,nomadik-i2c", "arm,primecell"; 805*f126890aSEmmanuel Vadot reg = <0x8012a000 0x1000>; 806*f126890aSEmmanuel Vadot interrupts = <GIC_SPI 51 IRQ_TYPE_LEVEL_HIGH>; 807*f126890aSEmmanuel Vadot 808*f126890aSEmmanuel Vadot #address-cells = <1>; 809*f126890aSEmmanuel Vadot #size-cells = <0>; 810*f126890aSEmmanuel Vadot 811*f126890aSEmmanuel Vadot clock-frequency = <400000>; 812*f126890aSEmmanuel Vadot 813*f126890aSEmmanuel Vadot clocks = <&prcc_kclk 1 9>, <&prcc_pclk 1 10>; 814*f126890aSEmmanuel Vadot clock-names = "i2cclk", "apb_pclk"; 815*f126890aSEmmanuel Vadot power-domains = <&pm_domains DOMAIN_VAPE>; 816*f126890aSEmmanuel Vadot resets = <&prcc_reset DB8500_PRCC_1 DB8500_PRCC_1_RESET_I2C4>; 817*f126890aSEmmanuel Vadot 818*f126890aSEmmanuel Vadot status = "disabled"; 819*f126890aSEmmanuel Vadot }; 820*f126890aSEmmanuel Vadot 821*f126890aSEmmanuel Vadot ssp0: spi@80002000 { 822*f126890aSEmmanuel Vadot compatible = "arm,pl022", "arm,primecell"; 823*f126890aSEmmanuel Vadot reg = <0x80002000 0x1000>; 824*f126890aSEmmanuel Vadot interrupts = <GIC_SPI 14 IRQ_TYPE_LEVEL_HIGH>; 825*f126890aSEmmanuel Vadot #address-cells = <1>; 826*f126890aSEmmanuel Vadot #size-cells = <0>; 827*f126890aSEmmanuel Vadot clocks = <&prcc_kclk 3 1>, <&prcc_pclk 3 1>; 828*f126890aSEmmanuel Vadot clock-names = "sspclk", "apb_pclk"; 829*f126890aSEmmanuel Vadot dmas = <&dma 8 0 0x2>, /* Logical - DevToMem */ 830*f126890aSEmmanuel Vadot <&dma 8 0 0x0>; /* Logical - MemToDev */ 831*f126890aSEmmanuel Vadot dma-names = "rx", "tx"; 832*f126890aSEmmanuel Vadot power-domains = <&pm_domains DOMAIN_VAPE>; 833*f126890aSEmmanuel Vadot resets = <&prcc_reset DB8500_PRCC_3 DB8500_PRCC_3_RESET_SSP0>; 834*f126890aSEmmanuel Vadot 835*f126890aSEmmanuel Vadot status = "disabled"; 836*f126890aSEmmanuel Vadot }; 837*f126890aSEmmanuel Vadot 838*f126890aSEmmanuel Vadot ssp1: spi@80003000 { 839*f126890aSEmmanuel Vadot compatible = "arm,pl022", "arm,primecell"; 840*f126890aSEmmanuel Vadot reg = <0x80003000 0x1000>; 841*f126890aSEmmanuel Vadot interrupts = <GIC_SPI 52 IRQ_TYPE_LEVEL_HIGH>; 842*f126890aSEmmanuel Vadot #address-cells = <1>; 843*f126890aSEmmanuel Vadot #size-cells = <0>; 844*f126890aSEmmanuel Vadot clocks = <&prcc_kclk 3 2>, <&prcc_pclk 3 2>; 845*f126890aSEmmanuel Vadot clock-names = "sspclk", "apb_pclk"; 846*f126890aSEmmanuel Vadot dmas = <&dma 9 0 0x2>, /* Logical - DevToMem */ 847*f126890aSEmmanuel Vadot <&dma 9 0 0x0>; /* Logical - MemToDev */ 848*f126890aSEmmanuel Vadot dma-names = "rx", "tx"; 849*f126890aSEmmanuel Vadot power-domains = <&pm_domains DOMAIN_VAPE>; 850*f126890aSEmmanuel Vadot resets = <&prcc_reset DB8500_PRCC_3 DB8500_PRCC_3_RESET_SSP1>; 851*f126890aSEmmanuel Vadot 852*f126890aSEmmanuel Vadot status = "disabled"; 853*f126890aSEmmanuel Vadot }; 854*f126890aSEmmanuel Vadot 855*f126890aSEmmanuel Vadot spi0: spi@8011a000 { 856*f126890aSEmmanuel Vadot compatible = "arm,pl022", "arm,primecell"; 857*f126890aSEmmanuel Vadot reg = <0x8011a000 0x1000>; 858*f126890aSEmmanuel Vadot interrupts = <GIC_SPI 8 IRQ_TYPE_LEVEL_HIGH>; 859*f126890aSEmmanuel Vadot #address-cells = <1>; 860*f126890aSEmmanuel Vadot #size-cells = <0>; 861*f126890aSEmmanuel Vadot /* Same clock wired to kernel and pclk */ 862*f126890aSEmmanuel Vadot clocks = <&prcc_pclk 2 8>, <&prcc_pclk 2 8>; 863*f126890aSEmmanuel Vadot clock-names = "sspclk", "apb_pclk"; 864*f126890aSEmmanuel Vadot dmas = <&dma 0 0 0x2>, /* Logical - DevToMem */ 865*f126890aSEmmanuel Vadot <&dma 0 0 0x0>; /* Logical - MemToDev */ 866*f126890aSEmmanuel Vadot dma-names = "rx", "tx"; 867*f126890aSEmmanuel Vadot power-domains = <&pm_domains DOMAIN_VAPE>; 868*f126890aSEmmanuel Vadot 869*f126890aSEmmanuel Vadot status = "disabled"; 870*f126890aSEmmanuel Vadot }; 871*f126890aSEmmanuel Vadot 872*f126890aSEmmanuel Vadot spi1: spi@80112000 { 873*f126890aSEmmanuel Vadot compatible = "arm,pl022", "arm,primecell"; 874*f126890aSEmmanuel Vadot reg = <0x80112000 0x1000>; 875*f126890aSEmmanuel Vadot interrupts = <GIC_SPI 96 IRQ_TYPE_LEVEL_HIGH>; 876*f126890aSEmmanuel Vadot #address-cells = <1>; 877*f126890aSEmmanuel Vadot #size-cells = <0>; 878*f126890aSEmmanuel Vadot /* Same clock wired to kernel and pclk */ 879*f126890aSEmmanuel Vadot clocks = <&prcc_pclk 2 2>, <&prcc_pclk 2 2>; 880*f126890aSEmmanuel Vadot clock-names = "sspclk", "apb_pclk"; 881*f126890aSEmmanuel Vadot dmas = <&dma 35 0 0x2>, /* Logical - DevToMem */ 882*f126890aSEmmanuel Vadot <&dma 35 0 0x0>; /* Logical - MemToDev */ 883*f126890aSEmmanuel Vadot dma-names = "rx", "tx"; 884*f126890aSEmmanuel Vadot power-domains = <&pm_domains DOMAIN_VAPE>; 885*f126890aSEmmanuel Vadot 886*f126890aSEmmanuel Vadot status = "disabled"; 887*f126890aSEmmanuel Vadot }; 888*f126890aSEmmanuel Vadot 889*f126890aSEmmanuel Vadot spi2: spi@80111000 { 890*f126890aSEmmanuel Vadot compatible = "arm,pl022", "arm,primecell"; 891*f126890aSEmmanuel Vadot reg = <0x80111000 0x1000>; 892*f126890aSEmmanuel Vadot interrupts = <GIC_SPI 6 IRQ_TYPE_LEVEL_HIGH>; 893*f126890aSEmmanuel Vadot #address-cells = <1>; 894*f126890aSEmmanuel Vadot #size-cells = <0>; 895*f126890aSEmmanuel Vadot /* Same clock wired to kernel and pclk */ 896*f126890aSEmmanuel Vadot clocks = <&prcc_pclk 2 1>, <&prcc_pclk 2 1>; 897*f126890aSEmmanuel Vadot clock-names = "sspclk", "apb_pclk"; 898*f126890aSEmmanuel Vadot dmas = <&dma 33 0 0x2>, /* Logical - DevToMem */ 899*f126890aSEmmanuel Vadot <&dma 33 0 0x0>; /* Logical - MemToDev */ 900*f126890aSEmmanuel Vadot dma-names = "rx", "tx"; 901*f126890aSEmmanuel Vadot power-domains = <&pm_domains DOMAIN_VAPE>; 902*f126890aSEmmanuel Vadot 903*f126890aSEmmanuel Vadot status = "disabled"; 904*f126890aSEmmanuel Vadot }; 905*f126890aSEmmanuel Vadot 906*f126890aSEmmanuel Vadot spi3: spi@80129000 { 907*f126890aSEmmanuel Vadot compatible = "arm,pl022", "arm,primecell"; 908*f126890aSEmmanuel Vadot reg = <0x80129000 0x1000>; 909*f126890aSEmmanuel Vadot interrupts = <GIC_SPI 49 IRQ_TYPE_LEVEL_HIGH>; 910*f126890aSEmmanuel Vadot #address-cells = <1>; 911*f126890aSEmmanuel Vadot #size-cells = <0>; 912*f126890aSEmmanuel Vadot /* Same clock wired to kernel and pclk */ 913*f126890aSEmmanuel Vadot clocks = <&prcc_pclk 1 7>, <&prcc_pclk 1 7>; 914*f126890aSEmmanuel Vadot clock-names = "sspclk", "apb_pclk"; 915*f126890aSEmmanuel Vadot dmas = <&dma 40 0 0x2>, /* Logical - DevToMem */ 916*f126890aSEmmanuel Vadot <&dma 40 0 0x0>; /* Logical - MemToDev */ 917*f126890aSEmmanuel Vadot dma-names = "rx", "tx"; 918*f126890aSEmmanuel Vadot power-domains = <&pm_domains DOMAIN_VAPE>; 919*f126890aSEmmanuel Vadot resets = <&prcc_reset DB8500_PRCC_1 DB8500_PRCC_1_RESET_SPI3>; 920*f126890aSEmmanuel Vadot 921*f126890aSEmmanuel Vadot status = "disabled"; 922*f126890aSEmmanuel Vadot }; 923*f126890aSEmmanuel Vadot 924*f126890aSEmmanuel Vadot serial0: serial@80120000 { 925*f126890aSEmmanuel Vadot compatible = "arm,pl011", "arm,primecell"; 926*f126890aSEmmanuel Vadot reg = <0x80120000 0x1000>; 927*f126890aSEmmanuel Vadot interrupts = <GIC_SPI 11 IRQ_TYPE_LEVEL_HIGH>; 928*f126890aSEmmanuel Vadot 929*f126890aSEmmanuel Vadot dmas = <&dma 13 0 0x2>, /* Logical - DevToMem */ 930*f126890aSEmmanuel Vadot <&dma 13 0 0x0>; /* Logical - MemToDev */ 931*f126890aSEmmanuel Vadot dma-names = "rx", "tx"; 932*f126890aSEmmanuel Vadot 933*f126890aSEmmanuel Vadot clocks = <&prcc_kclk 1 0>, <&prcc_pclk 1 0>; 934*f126890aSEmmanuel Vadot clock-names = "uart", "apb_pclk"; 935*f126890aSEmmanuel Vadot resets = <&prcc_reset DB8500_PRCC_1 DB8500_PRCC_1_RESET_UART0>; 936*f126890aSEmmanuel Vadot 937*f126890aSEmmanuel Vadot status = "disabled"; 938*f126890aSEmmanuel Vadot }; 939*f126890aSEmmanuel Vadot 940*f126890aSEmmanuel Vadot serial1: serial@80121000 { 941*f126890aSEmmanuel Vadot compatible = "arm,pl011", "arm,primecell"; 942*f126890aSEmmanuel Vadot reg = <0x80121000 0x1000>; 943*f126890aSEmmanuel Vadot interrupts = <GIC_SPI 19 IRQ_TYPE_LEVEL_HIGH>; 944*f126890aSEmmanuel Vadot 945*f126890aSEmmanuel Vadot dmas = <&dma 12 0 0x2>, /* Logical - DevToMem */ 946*f126890aSEmmanuel Vadot <&dma 12 0 0x0>; /* Logical - MemToDev */ 947*f126890aSEmmanuel Vadot dma-names = "rx", "tx"; 948*f126890aSEmmanuel Vadot 949*f126890aSEmmanuel Vadot clocks = <&prcc_kclk 1 1>, <&prcc_pclk 1 1>; 950*f126890aSEmmanuel Vadot clock-names = "uart", "apb_pclk"; 951*f126890aSEmmanuel Vadot resets = <&prcc_reset DB8500_PRCC_1 DB8500_PRCC_1_RESET_UART1>; 952*f126890aSEmmanuel Vadot 953*f126890aSEmmanuel Vadot status = "disabled"; 954*f126890aSEmmanuel Vadot }; 955*f126890aSEmmanuel Vadot 956*f126890aSEmmanuel Vadot serial2: serial@80007000 { 957*f126890aSEmmanuel Vadot compatible = "arm,pl011", "arm,primecell"; 958*f126890aSEmmanuel Vadot reg = <0x80007000 0x1000>; 959*f126890aSEmmanuel Vadot interrupts = <GIC_SPI 26 IRQ_TYPE_LEVEL_HIGH>; 960*f126890aSEmmanuel Vadot 961*f126890aSEmmanuel Vadot dmas = <&dma 11 0 0x2>, /* Logical - DevToMem */ 962*f126890aSEmmanuel Vadot <&dma 11 0 0x0>; /* Logical - MemToDev */ 963*f126890aSEmmanuel Vadot dma-names = "rx", "tx"; 964*f126890aSEmmanuel Vadot 965*f126890aSEmmanuel Vadot clocks = <&prcc_kclk 3 6>, <&prcc_pclk 3 6>; 966*f126890aSEmmanuel Vadot clock-names = "uart", "apb_pclk"; 967*f126890aSEmmanuel Vadot resets = <&prcc_reset DB8500_PRCC_3 DB8500_PRCC_3_RESET_UART2>; 968*f126890aSEmmanuel Vadot 969*f126890aSEmmanuel Vadot status = "disabled"; 970*f126890aSEmmanuel Vadot }; 971*f126890aSEmmanuel Vadot 972*f126890aSEmmanuel Vadot mmc@80126000 { 973*f126890aSEmmanuel Vadot compatible = "arm,pl18x", "arm,primecell"; 974*f126890aSEmmanuel Vadot reg = <0x80126000 0x1000>; 975*f126890aSEmmanuel Vadot interrupts = <GIC_SPI 60 IRQ_TYPE_LEVEL_HIGH>; 976*f126890aSEmmanuel Vadot 977*f126890aSEmmanuel Vadot dmas = <&dma 29 0 0x2>, /* Logical - DevToMem */ 978*f126890aSEmmanuel Vadot <&dma 29 0 0x0>; /* Logical - MemToDev */ 979*f126890aSEmmanuel Vadot dma-names = "rx", "tx"; 980*f126890aSEmmanuel Vadot 981*f126890aSEmmanuel Vadot clocks = <&prcc_kclk 1 5>, <&prcc_pclk 1 5>; 982*f126890aSEmmanuel Vadot clock-names = "sdi", "apb_pclk"; 983*f126890aSEmmanuel Vadot power-domains = <&pm_domains DOMAIN_VAPE>; 984*f126890aSEmmanuel Vadot resets = <&prcc_reset DB8500_PRCC_1 DB8500_PRCC_1_RESET_SDI0>; 985*f126890aSEmmanuel Vadot 986*f126890aSEmmanuel Vadot status = "disabled"; 987*f126890aSEmmanuel Vadot }; 988*f126890aSEmmanuel Vadot 989*f126890aSEmmanuel Vadot mmc@80118000 { 990*f126890aSEmmanuel Vadot compatible = "arm,pl18x", "arm,primecell"; 991*f126890aSEmmanuel Vadot reg = <0x80118000 0x1000>; 992*f126890aSEmmanuel Vadot interrupts = <GIC_SPI 50 IRQ_TYPE_LEVEL_HIGH>; 993*f126890aSEmmanuel Vadot 994*f126890aSEmmanuel Vadot dmas = <&dma 32 0 0x2>, /* Logical - DevToMem */ 995*f126890aSEmmanuel Vadot <&dma 32 0 0x0>; /* Logical - MemToDev */ 996*f126890aSEmmanuel Vadot dma-names = "rx", "tx"; 997*f126890aSEmmanuel Vadot 998*f126890aSEmmanuel Vadot clocks = <&prcc_kclk 2 4>, <&prcc_pclk 2 6>; 999*f126890aSEmmanuel Vadot clock-names = "sdi", "apb_pclk"; 1000*f126890aSEmmanuel Vadot power-domains = <&pm_domains DOMAIN_VAPE>; 1001*f126890aSEmmanuel Vadot resets = <&prcc_reset DB8500_PRCC_2 DB8500_PRCC_2_RESET_SDI1>; 1002*f126890aSEmmanuel Vadot 1003*f126890aSEmmanuel Vadot status = "disabled"; 1004*f126890aSEmmanuel Vadot }; 1005*f126890aSEmmanuel Vadot 1006*f126890aSEmmanuel Vadot mmc@80005000 { 1007*f126890aSEmmanuel Vadot compatible = "arm,pl18x", "arm,primecell"; 1008*f126890aSEmmanuel Vadot reg = <0x80005000 0x1000>; 1009*f126890aSEmmanuel Vadot interrupts = <GIC_SPI 41 IRQ_TYPE_LEVEL_HIGH>; 1010*f126890aSEmmanuel Vadot 1011*f126890aSEmmanuel Vadot dmas = <&dma 28 0 0x2>, /* Logical - DevToMem */ 1012*f126890aSEmmanuel Vadot <&dma 28 0 0x0>; /* Logical - MemToDev */ 1013*f126890aSEmmanuel Vadot dma-names = "rx", "tx"; 1014*f126890aSEmmanuel Vadot 1015*f126890aSEmmanuel Vadot clocks = <&prcc_kclk 3 4>, <&prcc_pclk 3 4>; 1016*f126890aSEmmanuel Vadot clock-names = "sdi", "apb_pclk"; 1017*f126890aSEmmanuel Vadot power-domains = <&pm_domains DOMAIN_VAPE>; 1018*f126890aSEmmanuel Vadot resets = <&prcc_reset DB8500_PRCC_3 DB8500_PRCC_3_RESET_SDI2>; 1019*f126890aSEmmanuel Vadot 1020*f126890aSEmmanuel Vadot status = "disabled"; 1021*f126890aSEmmanuel Vadot }; 1022*f126890aSEmmanuel Vadot 1023*f126890aSEmmanuel Vadot mmc@80119000 { 1024*f126890aSEmmanuel Vadot compatible = "arm,pl18x", "arm,primecell"; 1025*f126890aSEmmanuel Vadot reg = <0x80119000 0x1000>; 1026*f126890aSEmmanuel Vadot interrupts = <GIC_SPI 59 IRQ_TYPE_LEVEL_HIGH>; 1027*f126890aSEmmanuel Vadot 1028*f126890aSEmmanuel Vadot dmas = <&dma 41 0 0x2>, /* Logical - DevToMem */ 1029*f126890aSEmmanuel Vadot <&dma 41 0 0x0>; /* Logical - MemToDev */ 1030*f126890aSEmmanuel Vadot dma-names = "rx", "tx"; 1031*f126890aSEmmanuel Vadot 1032*f126890aSEmmanuel Vadot clocks = <&prcc_kclk 2 5>, <&prcc_pclk 2 7>; 1033*f126890aSEmmanuel Vadot clock-names = "sdi", "apb_pclk"; 1034*f126890aSEmmanuel Vadot power-domains = <&pm_domains DOMAIN_VAPE>; 1035*f126890aSEmmanuel Vadot resets = <&prcc_reset DB8500_PRCC_2 DB8500_PRCC_2_RESET_SDI3>; 1036*f126890aSEmmanuel Vadot 1037*f126890aSEmmanuel Vadot status = "disabled"; 1038*f126890aSEmmanuel Vadot }; 1039*f126890aSEmmanuel Vadot 1040*f126890aSEmmanuel Vadot mmc@80114000 { 1041*f126890aSEmmanuel Vadot compatible = "arm,pl18x", "arm,primecell"; 1042*f126890aSEmmanuel Vadot reg = <0x80114000 0x1000>; 1043*f126890aSEmmanuel Vadot interrupts = <GIC_SPI 99 IRQ_TYPE_LEVEL_HIGH>; 1044*f126890aSEmmanuel Vadot 1045*f126890aSEmmanuel Vadot dmas = <&dma 42 0 0x2>, /* Logical - DevToMem */ 1046*f126890aSEmmanuel Vadot <&dma 42 0 0x0>; /* Logical - MemToDev */ 1047*f126890aSEmmanuel Vadot dma-names = "rx", "tx"; 1048*f126890aSEmmanuel Vadot 1049*f126890aSEmmanuel Vadot clocks = <&prcc_kclk 2 2>, <&prcc_pclk 2 4>; 1050*f126890aSEmmanuel Vadot clock-names = "sdi", "apb_pclk"; 1051*f126890aSEmmanuel Vadot power-domains = <&pm_domains DOMAIN_VAPE>; 1052*f126890aSEmmanuel Vadot resets = <&prcc_reset DB8500_PRCC_2 DB8500_PRCC_2_RESET_SDI4>; 1053*f126890aSEmmanuel Vadot 1054*f126890aSEmmanuel Vadot status = "disabled"; 1055*f126890aSEmmanuel Vadot }; 1056*f126890aSEmmanuel Vadot 1057*f126890aSEmmanuel Vadot mmc@80008000 { 1058*f126890aSEmmanuel Vadot compatible = "arm,pl18x", "arm,primecell"; 1059*f126890aSEmmanuel Vadot reg = <0x80008000 0x1000>; 1060*f126890aSEmmanuel Vadot interrupts = <GIC_SPI 100 IRQ_TYPE_LEVEL_HIGH>; 1061*f126890aSEmmanuel Vadot 1062*f126890aSEmmanuel Vadot dmas = <&dma 43 0 0x2>, /* Logical - DevToMem */ 1063*f126890aSEmmanuel Vadot <&dma 43 0 0x0>; /* Logical - MemToDev */ 1064*f126890aSEmmanuel Vadot dma-names = "rx", "tx"; 1065*f126890aSEmmanuel Vadot 1066*f126890aSEmmanuel Vadot clocks = <&prcc_kclk 3 7>, <&prcc_pclk 3 7>; 1067*f126890aSEmmanuel Vadot clock-names = "sdi", "apb_pclk"; 1068*f126890aSEmmanuel Vadot power-domains = <&pm_domains DOMAIN_VAPE>; 1069*f126890aSEmmanuel Vadot resets = <&prcc_reset DB8500_PRCC_3 DB8500_PRCC_3_RESET_SDI5>; 1070*f126890aSEmmanuel Vadot 1071*f126890aSEmmanuel Vadot status = "disabled"; 1072*f126890aSEmmanuel Vadot }; 1073*f126890aSEmmanuel Vadot 1074*f126890aSEmmanuel Vadot sound { 1075*f126890aSEmmanuel Vadot compatible = "stericsson,snd-soc-mop500"; 1076*f126890aSEmmanuel Vadot stericsson,cpu-dai = <&msp1 &msp3>; 1077*f126890aSEmmanuel Vadot }; 1078*f126890aSEmmanuel Vadot 1079*f126890aSEmmanuel Vadot msp0: msp@80123000 { 1080*f126890aSEmmanuel Vadot compatible = "stericsson,ux500-msp-i2s"; 1081*f126890aSEmmanuel Vadot reg = <0x80123000 0x1000>; 1082*f126890aSEmmanuel Vadot interrupts = <GIC_SPI 31 IRQ_TYPE_LEVEL_HIGH>; 1083*f126890aSEmmanuel Vadot v-ape-supply = <&db8500_vape_reg>; 1084*f126890aSEmmanuel Vadot 1085*f126890aSEmmanuel Vadot dmas = <&dma 31 0 0x12>, /* Logical - DevToMem - HighPrio */ 1086*f126890aSEmmanuel Vadot <&dma 31 0 0x10>; /* Logical - MemToDev - HighPrio */ 1087*f126890aSEmmanuel Vadot dma-names = "rx", "tx"; 1088*f126890aSEmmanuel Vadot 1089*f126890aSEmmanuel Vadot clocks = <&prcc_kclk 1 3>, <&prcc_pclk 1 3>; 1090*f126890aSEmmanuel Vadot clock-names = "msp", "apb_pclk"; 1091*f126890aSEmmanuel Vadot resets = <&prcc_reset DB8500_PRCC_1 DB8500_PRCC_1_RESET_MSP0>; 1092*f126890aSEmmanuel Vadot 1093*f126890aSEmmanuel Vadot status = "disabled"; 1094*f126890aSEmmanuel Vadot }; 1095*f126890aSEmmanuel Vadot 1096*f126890aSEmmanuel Vadot msp1: msp@80124000 { 1097*f126890aSEmmanuel Vadot compatible = "stericsson,ux500-msp-i2s"; 1098*f126890aSEmmanuel Vadot reg = <0x80124000 0x1000>; 1099*f126890aSEmmanuel Vadot interrupts = <GIC_SPI 62 IRQ_TYPE_LEVEL_HIGH>; 1100*f126890aSEmmanuel Vadot v-ape-supply = <&db8500_vape_reg>; 1101*f126890aSEmmanuel Vadot 1102*f126890aSEmmanuel Vadot /* This DMA channel only exist on DB8500 v1 */ 1103*f126890aSEmmanuel Vadot dmas = <&dma 30 0 0x10>; /* Logical - MemToDev - HighPrio */ 1104*f126890aSEmmanuel Vadot dma-names = "tx"; 1105*f126890aSEmmanuel Vadot 1106*f126890aSEmmanuel Vadot clocks = <&prcc_kclk 1 4>, <&prcc_pclk 1 4>; 1107*f126890aSEmmanuel Vadot clock-names = "msp", "apb_pclk"; 1108*f126890aSEmmanuel Vadot resets = <&prcc_reset DB8500_PRCC_1 DB8500_PRCC_1_RESET_MSP1>; 1109*f126890aSEmmanuel Vadot 1110*f126890aSEmmanuel Vadot status = "disabled"; 1111*f126890aSEmmanuel Vadot }; 1112*f126890aSEmmanuel Vadot 1113*f126890aSEmmanuel Vadot // HDMI sound 1114*f126890aSEmmanuel Vadot msp2: msp@80117000 { 1115*f126890aSEmmanuel Vadot compatible = "stericsson,ux500-msp-i2s"; 1116*f126890aSEmmanuel Vadot reg = <0x80117000 0x1000>; 1117*f126890aSEmmanuel Vadot interrupts = <GIC_SPI 98 IRQ_TYPE_LEVEL_HIGH>; 1118*f126890aSEmmanuel Vadot v-ape-supply = <&db8500_vape_reg>; 1119*f126890aSEmmanuel Vadot 1120*f126890aSEmmanuel Vadot dmas = <&dma 14 0 0x12>, /* Logical - DevToMem - HighPrio */ 1121*f126890aSEmmanuel Vadot <&dma 14 1 0x19>; /* Physical Chan 1 - MemToDev 1122*f126890aSEmmanuel Vadot HighPrio - Fixed */ 1123*f126890aSEmmanuel Vadot dma-names = "rx", "tx"; 1124*f126890aSEmmanuel Vadot 1125*f126890aSEmmanuel Vadot clocks = <&prcc_kclk 2 3>, <&prcc_pclk 2 5>; 1126*f126890aSEmmanuel Vadot clock-names = "msp", "apb_pclk"; 1127*f126890aSEmmanuel Vadot resets = <&prcc_reset DB8500_PRCC_2 DB8500_PRCC_2_RESET_MSP2>; 1128*f126890aSEmmanuel Vadot 1129*f126890aSEmmanuel Vadot status = "disabled"; 1130*f126890aSEmmanuel Vadot }; 1131*f126890aSEmmanuel Vadot 1132*f126890aSEmmanuel Vadot msp3: msp@80125000 { 1133*f126890aSEmmanuel Vadot compatible = "stericsson,ux500-msp-i2s"; 1134*f126890aSEmmanuel Vadot reg = <0x80125000 0x1000>; 1135*f126890aSEmmanuel Vadot interrupts = <GIC_SPI 62 IRQ_TYPE_LEVEL_HIGH>; 1136*f126890aSEmmanuel Vadot v-ape-supply = <&db8500_vape_reg>; 1137*f126890aSEmmanuel Vadot 1138*f126890aSEmmanuel Vadot /* This DMA channel only exist on DB8500 v2 */ 1139*f126890aSEmmanuel Vadot dmas = <&dma 30 0 0x12>; /* Logical - DevToMem - HighPrio */ 1140*f126890aSEmmanuel Vadot dma-names = "rx"; 1141*f126890aSEmmanuel Vadot 1142*f126890aSEmmanuel Vadot clocks = <&prcc_kclk 1 10>, <&prcc_pclk 1 11>; 1143*f126890aSEmmanuel Vadot clock-names = "msp", "apb_pclk"; 1144*f126890aSEmmanuel Vadot resets = <&prcc_reset DB8500_PRCC_1 DB8500_PRCC_1_RESET_MSP3>; 1145*f126890aSEmmanuel Vadot 1146*f126890aSEmmanuel Vadot status = "disabled"; 1147*f126890aSEmmanuel Vadot }; 1148*f126890aSEmmanuel Vadot 1149*f126890aSEmmanuel Vadot external-bus@50000000 { 1150*f126890aSEmmanuel Vadot compatible = "simple-bus"; 1151*f126890aSEmmanuel Vadot reg = <0x50000000 0x4000000>; 1152*f126890aSEmmanuel Vadot #address-cells = <1>; 1153*f126890aSEmmanuel Vadot #size-cells = <1>; 1154*f126890aSEmmanuel Vadot ranges = <0 0x50000000 0x4000000>; 1155*f126890aSEmmanuel Vadot status = "disabled"; 1156*f126890aSEmmanuel Vadot }; 1157*f126890aSEmmanuel Vadot 1158*f126890aSEmmanuel Vadot gpu@a0300000 { 1159*f126890aSEmmanuel Vadot /* 1160*f126890aSEmmanuel Vadot * This block is referred to as "Smart Graphics Adapter SGA500" 1161*f126890aSEmmanuel Vadot * in documentation but is in practice a pretty straight-forward 1162*f126890aSEmmanuel Vadot * MALI-400 GPU block. 1163*f126890aSEmmanuel Vadot */ 1164*f126890aSEmmanuel Vadot compatible = "stericsson,db8500-mali", "arm,mali-400"; 1165*f126890aSEmmanuel Vadot reg = <0xa0300000 0x10000>; 1166*f126890aSEmmanuel Vadot interrupts = <GIC_SPI 115 IRQ_TYPE_LEVEL_HIGH>, 1167*f126890aSEmmanuel Vadot <GIC_SPI 114 IRQ_TYPE_LEVEL_HIGH>, 1168*f126890aSEmmanuel Vadot <GIC_SPI 113 IRQ_TYPE_LEVEL_HIGH>, 1169*f126890aSEmmanuel Vadot <GIC_SPI 112 IRQ_TYPE_LEVEL_HIGH>, 1170*f126890aSEmmanuel Vadot <GIC_SPI 116 IRQ_TYPE_LEVEL_HIGH>; 1171*f126890aSEmmanuel Vadot interrupt-names = "gp", 1172*f126890aSEmmanuel Vadot "gpmmu", 1173*f126890aSEmmanuel Vadot "pp0", 1174*f126890aSEmmanuel Vadot "ppmmu0", 1175*f126890aSEmmanuel Vadot "combined"; 1176*f126890aSEmmanuel Vadot clocks = <&prcmu_clk PRCMU_ACLK>, <&prcmu_clk PRCMU_SGACLK>; 1177*f126890aSEmmanuel Vadot clock-names = "bus", "core"; 1178*f126890aSEmmanuel Vadot mali-supply = <&db8500_sga_reg>; 1179*f126890aSEmmanuel Vadot power-domains = <&pm_domains DOMAIN_VAPE>; 1180*f126890aSEmmanuel Vadot }; 1181*f126890aSEmmanuel Vadot 1182*f126890aSEmmanuel Vadot mcde@a0350000 { 1183*f126890aSEmmanuel Vadot compatible = "ste,mcde"; 1184*f126890aSEmmanuel Vadot reg = <0xa0350000 0x1000>; 1185*f126890aSEmmanuel Vadot interrupts = <GIC_SPI 48 IRQ_TYPE_LEVEL_HIGH>; 1186*f126890aSEmmanuel Vadot epod-supply = <&db8500_b2r2_mcde_reg>; 1187*f126890aSEmmanuel Vadot clocks = <&prcmu_clk PRCMU_MCDECLK>, /* Main MCDE clock */ 1188*f126890aSEmmanuel Vadot <&prcmu_clk PRCMU_LCDCLK>, /* LCD clock */ 1189*f126890aSEmmanuel Vadot <&prcmu_clk PRCMU_PLLDSI>; /* HDMI clock */ 1190*f126890aSEmmanuel Vadot clock-names = "mcde", "lcd", "hdmi"; 1191*f126890aSEmmanuel Vadot #address-cells = <1>; 1192*f126890aSEmmanuel Vadot #size-cells = <1>; 1193*f126890aSEmmanuel Vadot ranges; 1194*f126890aSEmmanuel Vadot status = "disabled"; 1195*f126890aSEmmanuel Vadot 1196*f126890aSEmmanuel Vadot dsi0: dsi@a0351000 { 1197*f126890aSEmmanuel Vadot compatible = "ste,mcde-dsi"; 1198*f126890aSEmmanuel Vadot reg = <0xa0351000 0x1000>; 1199*f126890aSEmmanuel Vadot clocks = <&prcmu_clk PRCMU_DSI0CLK>, <&prcmu_clk PRCMU_DSI0ESCCLK>; 1200*f126890aSEmmanuel Vadot clock-names = "hs", "lp"; 1201*f126890aSEmmanuel Vadot #address-cells = <1>; 1202*f126890aSEmmanuel Vadot #size-cells = <0>; 1203*f126890aSEmmanuel Vadot }; 1204*f126890aSEmmanuel Vadot dsi1: dsi@a0352000 { 1205*f126890aSEmmanuel Vadot compatible = "ste,mcde-dsi"; 1206*f126890aSEmmanuel Vadot reg = <0xa0352000 0x1000>; 1207*f126890aSEmmanuel Vadot clocks = <&prcmu_clk PRCMU_DSI1CLK>, <&prcmu_clk PRCMU_DSI1ESCCLK>; 1208*f126890aSEmmanuel Vadot clock-names = "hs", "lp"; 1209*f126890aSEmmanuel Vadot #address-cells = <1>; 1210*f126890aSEmmanuel Vadot #size-cells = <0>; 1211*f126890aSEmmanuel Vadot }; 1212*f126890aSEmmanuel Vadot dsi2: dsi@a0353000 { 1213*f126890aSEmmanuel Vadot compatible = "ste,mcde-dsi"; 1214*f126890aSEmmanuel Vadot reg = <0xa0353000 0x1000>; 1215*f126890aSEmmanuel Vadot /* This DSI port only has the Low Power / Energy Save clock */ 1216*f126890aSEmmanuel Vadot clocks = <&prcmu_clk PRCMU_DSI2ESCCLK>; 1217*f126890aSEmmanuel Vadot clock-names = "lp"; 1218*f126890aSEmmanuel Vadot #address-cells = <1>; 1219*f126890aSEmmanuel Vadot #size-cells = <0>; 1220*f126890aSEmmanuel Vadot }; 1221*f126890aSEmmanuel Vadot }; 1222*f126890aSEmmanuel Vadot 1223*f126890aSEmmanuel Vadot cryp@a03cb000 { 1224*f126890aSEmmanuel Vadot compatible = "stericsson,ux500-cryp"; 1225*f126890aSEmmanuel Vadot reg = <0xa03cb000 0x1000>; 1226*f126890aSEmmanuel Vadot interrupts = <GIC_SPI 15 IRQ_TYPE_LEVEL_HIGH>; 1227*f126890aSEmmanuel Vadot clocks = <&prcc_pclk 6 1>; 1228*f126890aSEmmanuel Vadot power-domains = <&pm_domains DOMAIN_VAPE>; 1229*f126890aSEmmanuel Vadot }; 1230*f126890aSEmmanuel Vadot 1231*f126890aSEmmanuel Vadot hash@a03c2000 { 1232*f126890aSEmmanuel Vadot compatible = "stericsson,ux500-hash"; 1233*f126890aSEmmanuel Vadot reg = <0xa03c2000 0x1000>; 1234*f126890aSEmmanuel Vadot clocks = <&prcc_pclk 6 2>; 1235*f126890aSEmmanuel Vadot power-domains = <&pm_domains DOMAIN_VAPE>; 1236*f126890aSEmmanuel Vadot }; 1237*f126890aSEmmanuel Vadot }; 1238*f126890aSEmmanuel Vadot}; 1239