1724ba675SRob Herring// SPDX-License-Identifier: GPL-2.0-only 2724ba675SRob Herring// Copyright (C) 2012-2013 Broadcom Corporation 3724ba675SRob Herring 4724ba675SRob Herring#include <dt-bindings/clock/bcm281xx.h> 5724ba675SRob Herring#include <dt-bindings/interrupt-controller/arm-gic.h> 6724ba675SRob Herring#include <dt-bindings/interrupt-controller/irq.h> 7724ba675SRob Herring 8724ba675SRob Herring/ { 9724ba675SRob Herring #address-cells = <1>; 10724ba675SRob Herring #size-cells = <1>; 11724ba675SRob Herring model = "BCM11351 SoC"; 12724ba675SRob Herring compatible = "brcm,bcm11351"; 13724ba675SRob Herring interrupt-parent = <&gic>; 14724ba675SRob Herring 15724ba675SRob Herring chosen { 16724ba675SRob Herring bootargs = "console=ttyS0,115200n8"; 17724ba675SRob Herring }; 18724ba675SRob Herring 19724ba675SRob Herring cpus { 20724ba675SRob Herring #address-cells = <1>; 21724ba675SRob Herring #size-cells = <0>; 22724ba675SRob Herring 23724ba675SRob Herring cpu0: cpu@0 { 24724ba675SRob Herring device_type = "cpu"; 25724ba675SRob Herring compatible = "arm,cortex-a9"; 26724ba675SRob Herring reg = <0>; 27724ba675SRob Herring }; 28724ba675SRob Herring 29724ba675SRob Herring cpu1: cpu@1 { 30724ba675SRob Herring device_type = "cpu"; 31724ba675SRob Herring compatible = "arm,cortex-a9"; 32724ba675SRob Herring enable-method = "brcm,bcm11351-cpu-method"; 33724ba675SRob Herring secondary-boot-reg = <0x3500417c>; 34724ba675SRob Herring reg = <1>; 35724ba675SRob Herring }; 36724ba675SRob Herring }; 37724ba675SRob Herring 38724ba675SRob Herring gic: interrupt-controller@3ff00100 { 39724ba675SRob Herring compatible = "arm,cortex-a9-gic"; 40724ba675SRob Herring #interrupt-cells = <3>; 41724ba675SRob Herring #address-cells = <0>; 42724ba675SRob Herring interrupt-controller; 43724ba675SRob Herring reg = <0x3ff01000 0x1000>, 44724ba675SRob Herring <0x3ff00100 0x100>; 45724ba675SRob Herring }; 46724ba675SRob Herring 47724ba675SRob Herring smc@3404c000 { 48724ba675SRob Herring compatible = "brcm,bcm11351-smc", "brcm,kona-smc"; 49724ba675SRob Herring reg = <0x3404c000 0x400>; /* 1 KiB in SRAM */ 50724ba675SRob Herring }; 51724ba675SRob Herring 52724ba675SRob Herring uartb: serial@3e000000 { 53724ba675SRob Herring compatible = "brcm,bcm11351-dw-apb-uart", "snps,dw-apb-uart"; 54724ba675SRob Herring reg = <0x3e000000 0x1000>; 55724ba675SRob Herring clocks = <&slave_ccu BCM281XX_SLAVE_CCU_UARTB>; 56724ba675SRob Herring interrupts = <GIC_SPI 67 IRQ_TYPE_LEVEL_HIGH>; 57724ba675SRob Herring reg-shift = <2>; 58724ba675SRob Herring reg-io-width = <4>; 59724ba675SRob Herring status = "disabled"; 60724ba675SRob Herring }; 61724ba675SRob Herring 62724ba675SRob Herring uartb2: serial@3e001000 { 63724ba675SRob Herring compatible = "brcm,bcm11351-dw-apb-uart", "snps,dw-apb-uart"; 64724ba675SRob Herring reg = <0x3e001000 0x1000>; 65724ba675SRob Herring clocks = <&slave_ccu BCM281XX_SLAVE_CCU_UARTB2>; 66724ba675SRob Herring interrupts = <GIC_SPI 66 IRQ_TYPE_LEVEL_HIGH>; 67724ba675SRob Herring reg-shift = <2>; 68724ba675SRob Herring reg-io-width = <4>; 69724ba675SRob Herring status = "disabled"; 70724ba675SRob Herring }; 71724ba675SRob Herring 72724ba675SRob Herring uartb3: serial@3e002000 { 73724ba675SRob Herring compatible = "brcm,bcm11351-dw-apb-uart", "snps,dw-apb-uart"; 74724ba675SRob Herring reg = <0x3e002000 0x1000>; 75724ba675SRob Herring clocks = <&slave_ccu BCM281XX_SLAVE_CCU_UARTB3>; 76724ba675SRob Herring interrupts = <GIC_SPI 65 IRQ_TYPE_LEVEL_HIGH>; 77724ba675SRob Herring reg-shift = <2>; 78724ba675SRob Herring reg-io-width = <4>; 79724ba675SRob Herring status = "disabled"; 80724ba675SRob Herring }; 81724ba675SRob Herring 82724ba675SRob Herring uartb4: serial@3e003000 { 83724ba675SRob Herring compatible = "brcm,bcm11351-dw-apb-uart", "snps,dw-apb-uart"; 84724ba675SRob Herring reg = <0x3e003000 0x1000>; 85724ba675SRob Herring clocks = <&slave_ccu BCM281XX_SLAVE_CCU_UARTB4>; 86724ba675SRob Herring interrupts = <GIC_SPI 64 IRQ_TYPE_LEVEL_HIGH>; 87724ba675SRob Herring reg-shift = <2>; 88724ba675SRob Herring reg-io-width = <4>; 89724ba675SRob Herring status = "disabled"; 90724ba675SRob Herring }; 91724ba675SRob Herring 92724ba675SRob Herring L2: l2-cache@3ff20000 { 93724ba675SRob Herring compatible = "brcm,bcm11351-a2-pl310-cache"; 94724ba675SRob Herring reg = <0x3ff20000 0x1000>; 95724ba675SRob Herring cache-unified; 96724ba675SRob Herring cache-level = <2>; 97724ba675SRob Herring }; 98724ba675SRob Herring 99724ba675SRob Herring watchdog@35002f40 { 100724ba675SRob Herring compatible = "brcm,bcm11351-wdt", "brcm,kona-wdt"; 101724ba675SRob Herring reg = <0x35002f40 0x6c>; 102724ba675SRob Herring }; 103724ba675SRob Herring 104724ba675SRob Herring timer@35006000 { 105724ba675SRob Herring compatible = "brcm,kona-timer"; 106724ba675SRob Herring reg = <0x35006000 0x1000>; 107724ba675SRob Herring interrupts = <GIC_SPI 7 IRQ_TYPE_LEVEL_HIGH>; 108724ba675SRob Herring clocks = <&aon_ccu BCM281XX_AON_CCU_HUB_TIMER>; 109724ba675SRob Herring }; 110724ba675SRob Herring 111724ba675SRob Herring gpio: gpio@35003000 { 112724ba675SRob Herring compatible = "brcm,bcm11351-gpio", "brcm,kona-gpio"; 113724ba675SRob Herring reg = <0x35003000 0x800>; 114*753a1baaSKrzysztof Kozlowski interrupts = <GIC_SPI 106 IRQ_TYPE_LEVEL_HIGH>, 115*753a1baaSKrzysztof Kozlowski <GIC_SPI 115 IRQ_TYPE_LEVEL_HIGH>, 116*753a1baaSKrzysztof Kozlowski <GIC_SPI 114 IRQ_TYPE_LEVEL_HIGH>, 117*753a1baaSKrzysztof Kozlowski <GIC_SPI 113 IRQ_TYPE_LEVEL_HIGH>, 118*753a1baaSKrzysztof Kozlowski <GIC_SPI 112 IRQ_TYPE_LEVEL_HIGH>, 119*753a1baaSKrzysztof Kozlowski <GIC_SPI 111 IRQ_TYPE_LEVEL_HIGH>; 120724ba675SRob Herring #gpio-cells = <2>; 121724ba675SRob Herring #interrupt-cells = <2>; 122724ba675SRob Herring gpio-controller; 123724ba675SRob Herring interrupt-controller; 124724ba675SRob Herring }; 125724ba675SRob Herring 126724ba675SRob Herring sdio1: mmc@3f180000 { 127724ba675SRob Herring compatible = "brcm,kona-sdhci"; 128724ba675SRob Herring reg = <0x3f180000 0x10000>; 129724ba675SRob Herring interrupts = <GIC_SPI 77 IRQ_TYPE_LEVEL_HIGH>; 130724ba675SRob Herring clocks = <&master_ccu BCM281XX_MASTER_CCU_SDIO1>; 131724ba675SRob Herring status = "disabled"; 132724ba675SRob Herring }; 133724ba675SRob Herring 134724ba675SRob Herring sdio2: mmc@3f190000 { 135724ba675SRob Herring compatible = "brcm,kona-sdhci"; 136724ba675SRob Herring reg = <0x3f190000 0x10000>; 137724ba675SRob Herring interrupts = <GIC_SPI 76 IRQ_TYPE_LEVEL_HIGH>; 138724ba675SRob Herring clocks = <&master_ccu BCM281XX_MASTER_CCU_SDIO2>; 139724ba675SRob Herring status = "disabled"; 140724ba675SRob Herring }; 141724ba675SRob Herring 142724ba675SRob Herring sdio3: mmc@3f1a0000 { 143724ba675SRob Herring compatible = "brcm,kona-sdhci"; 144724ba675SRob Herring reg = <0x3f1a0000 0x10000>; 145724ba675SRob Herring interrupts = <GIC_SPI 74 IRQ_TYPE_LEVEL_HIGH>; 146724ba675SRob Herring clocks = <&master_ccu BCM281XX_MASTER_CCU_SDIO3>; 147724ba675SRob Herring status = "disabled"; 148724ba675SRob Herring }; 149724ba675SRob Herring 150724ba675SRob Herring sdio4: mmc@3f1b0000 { 151724ba675SRob Herring compatible = "brcm,kona-sdhci"; 152724ba675SRob Herring reg = <0x3f1b0000 0x10000>; 153724ba675SRob Herring interrupts = <GIC_SPI 73 IRQ_TYPE_LEVEL_HIGH>; 154724ba675SRob Herring clocks = <&master_ccu BCM281XX_MASTER_CCU_SDIO4>; 155724ba675SRob Herring status = "disabled"; 156724ba675SRob Herring }; 157724ba675SRob Herring 158724ba675SRob Herring pinctrl@35004800 { 159724ba675SRob Herring compatible = "brcm,bcm11351-pinctrl"; 160724ba675SRob Herring reg = <0x35004800 0x430>; 161724ba675SRob Herring }; 162724ba675SRob Herring 163724ba675SRob Herring bsc1: i2c@3e016000 { 164724ba675SRob Herring compatible = "brcm,bcm11351-i2c", "brcm,kona-i2c"; 165724ba675SRob Herring reg = <0x3e016000 0x80>; 166724ba675SRob Herring interrupts = <GIC_SPI 103 IRQ_TYPE_LEVEL_HIGH>; 167724ba675SRob Herring #address-cells = <1>; 168724ba675SRob Herring #size-cells = <0>; 169724ba675SRob Herring clocks = <&slave_ccu BCM281XX_SLAVE_CCU_BSC1>; 170724ba675SRob Herring status = "disabled"; 171724ba675SRob Herring }; 172724ba675SRob Herring 173724ba675SRob Herring bsc2: i2c@3e017000 { 174724ba675SRob Herring compatible = "brcm,bcm11351-i2c", "brcm,kona-i2c"; 175724ba675SRob Herring reg = <0x3e017000 0x80>; 176724ba675SRob Herring interrupts = <GIC_SPI 102 IRQ_TYPE_LEVEL_HIGH>; 177724ba675SRob Herring #address-cells = <1>; 178724ba675SRob Herring #size-cells = <0>; 179724ba675SRob Herring clocks = <&slave_ccu BCM281XX_SLAVE_CCU_BSC2>; 180724ba675SRob Herring status = "disabled"; 181724ba675SRob Herring }; 182724ba675SRob Herring 183724ba675SRob Herring bsc3: i2c@3e018000 { 184724ba675SRob Herring compatible = "brcm,bcm11351-i2c", "brcm,kona-i2c"; 185724ba675SRob Herring reg = <0x3e018000 0x80>; 186724ba675SRob Herring interrupts = <GIC_SPI 169 IRQ_TYPE_LEVEL_HIGH>; 187724ba675SRob Herring #address-cells = <1>; 188724ba675SRob Herring #size-cells = <0>; 189724ba675SRob Herring clocks = <&slave_ccu BCM281XX_SLAVE_CCU_BSC3>; 190724ba675SRob Herring status = "disabled"; 191724ba675SRob Herring }; 192724ba675SRob Herring 193724ba675SRob Herring pmu_bsc: i2c@3500d000 { 194724ba675SRob Herring compatible = "brcm,bcm11351-i2c", "brcm,kona-i2c"; 195724ba675SRob Herring reg = <0x3500d000 0x80>; 196724ba675SRob Herring interrupts = <GIC_SPI 14 IRQ_TYPE_LEVEL_HIGH>; 197724ba675SRob Herring #address-cells = <1>; 198724ba675SRob Herring #size-cells = <0>; 199724ba675SRob Herring clocks = <&aon_ccu BCM281XX_AON_CCU_PMU_BSC>; 200724ba675SRob Herring status = "disabled"; 201724ba675SRob Herring }; 202724ba675SRob Herring 203724ba675SRob Herring pwm: pwm@3e01a000 { 204724ba675SRob Herring compatible = "brcm,bcm11351-pwm", "brcm,kona-pwm"; 205724ba675SRob Herring reg = <0x3e01a000 0xcc>; 206724ba675SRob Herring clocks = <&slave_ccu BCM281XX_SLAVE_CCU_PWM>; 207724ba675SRob Herring #pwm-cells = <3>; 208724ba675SRob Herring status = "disabled"; 209724ba675SRob Herring }; 210724ba675SRob Herring 211724ba675SRob Herring clocks { 212724ba675SRob Herring #address-cells = <1>; 213724ba675SRob Herring #size-cells = <1>; 214724ba675SRob Herring ranges; 215724ba675SRob Herring 216724ba675SRob Herring root_ccu: root_ccu@35001000 { 217724ba675SRob Herring compatible = "brcm,bcm11351-root-ccu"; 218724ba675SRob Herring reg = <0x35001000 0x0f00>; 219724ba675SRob Herring #clock-cells = <1>; 220724ba675SRob Herring clock-output-names = "frac_1m"; 221724ba675SRob Herring }; 222724ba675SRob Herring 223724ba675SRob Herring hub_ccu: hub_ccu@34000000 { 224724ba675SRob Herring compatible = "brcm,bcm11351-hub-ccu"; 225724ba675SRob Herring reg = <0x34000000 0x0f00>; 226724ba675SRob Herring #clock-cells = <1>; 227724ba675SRob Herring clock-output-names = "tmon_1m"; 228724ba675SRob Herring }; 229724ba675SRob Herring 230724ba675SRob Herring aon_ccu: aon_ccu@35002000 { 231724ba675SRob Herring compatible = "brcm,bcm11351-aon-ccu"; 232724ba675SRob Herring reg = <0x35002000 0x0f00>; 233724ba675SRob Herring #clock-cells = <1>; 234724ba675SRob Herring clock-output-names = "hub_timer", 235724ba675SRob Herring "pmu_bsc", 236724ba675SRob Herring "pmu_bsc_var"; 237724ba675SRob Herring }; 238724ba675SRob Herring 239724ba675SRob Herring master_ccu: master_ccu@3f001000 { 240724ba675SRob Herring compatible = "brcm,bcm11351-master-ccu"; 241724ba675SRob Herring reg = <0x3f001000 0x0f00>; 242724ba675SRob Herring #clock-cells = <1>; 243724ba675SRob Herring clock-output-names = "sdio1", 244724ba675SRob Herring "sdio2", 245724ba675SRob Herring "sdio3", 246724ba675SRob Herring "sdio4", 247724ba675SRob Herring "usb_ic", 248724ba675SRob Herring "hsic2_48m", 249724ba675SRob Herring "hsic2_12m"; 250724ba675SRob Herring }; 251724ba675SRob Herring 252724ba675SRob Herring slave_ccu: slave_ccu@3e011000 { 253724ba675SRob Herring compatible = "brcm,bcm11351-slave-ccu"; 254724ba675SRob Herring reg = <0x3e011000 0x0f00>; 255724ba675SRob Herring #clock-cells = <1>; 256724ba675SRob Herring clock-output-names = "uartb", 257724ba675SRob Herring "uartb2", 258724ba675SRob Herring "uartb3", 259724ba675SRob Herring "uartb4", 260724ba675SRob Herring "ssp0", 261724ba675SRob Herring "ssp2", 262724ba675SRob Herring "bsc1", 263724ba675SRob Herring "bsc2", 264724ba675SRob Herring "bsc3", 265724ba675SRob Herring "pwm"; 266724ba675SRob Herring }; 267724ba675SRob Herring 268724ba675SRob Herring ref_1m_clk: ref_1m { 269724ba675SRob Herring #clock-cells = <0>; 270724ba675SRob Herring compatible = "fixed-clock"; 271724ba675SRob Herring clock-frequency = <1000000>; 272724ba675SRob Herring }; 273724ba675SRob Herring 274724ba675SRob Herring ref_32k_clk: ref_32k { 275724ba675SRob Herring #clock-cells = <0>; 276724ba675SRob Herring compatible = "fixed-clock"; 277724ba675SRob Herring clock-frequency = <32768>; 278724ba675SRob Herring }; 279724ba675SRob Herring 280724ba675SRob Herring bbl_32k_clk: bbl_32k { 281724ba675SRob Herring #clock-cells = <0>; 282724ba675SRob Herring compatible = "fixed-clock"; 283724ba675SRob Herring clock-frequency = <32768>; 284724ba675SRob Herring }; 285724ba675SRob Herring 286724ba675SRob Herring ref_13m_clk: ref_13m { 287724ba675SRob Herring #clock-cells = <0>; 288724ba675SRob Herring compatible = "fixed-clock"; 289724ba675SRob Herring clock-frequency = <13000000>; 290724ba675SRob Herring }; 291724ba675SRob Herring 292724ba675SRob Herring var_13m_clk: var_13m { 293724ba675SRob Herring #clock-cells = <0>; 294724ba675SRob Herring compatible = "fixed-clock"; 295724ba675SRob Herring clock-frequency = <13000000>; 296724ba675SRob Herring }; 297724ba675SRob Herring 298724ba675SRob Herring dft_19_5m_clk: dft_19_5m { 299724ba675SRob Herring #clock-cells = <0>; 300724ba675SRob Herring compatible = "fixed-clock"; 301724ba675SRob Herring clock-frequency = <19500000>; 302724ba675SRob Herring }; 303724ba675SRob Herring 304724ba675SRob Herring ref_crystal_clk: ref_crystal { 305724ba675SRob Herring #clock-cells = <0>; 306724ba675SRob Herring compatible = "fixed-clock"; 307724ba675SRob Herring clock-frequency = <26000000>; 308724ba675SRob Herring }; 309724ba675SRob Herring 310724ba675SRob Herring ref_cx40_clk: ref_cx40 { 311724ba675SRob Herring #clock-cells = <0>; 312724ba675SRob Herring compatible = "fixed-clock"; 313724ba675SRob Herring clock-frequency = <40000000>; 314724ba675SRob Herring }; 315724ba675SRob Herring 316724ba675SRob Herring ref_52m_clk: ref_52m { 317724ba675SRob Herring #clock-cells = <0>; 318724ba675SRob Herring compatible = "fixed-clock"; 319724ba675SRob Herring clock-frequency = <52000000>; 320724ba675SRob Herring }; 321724ba675SRob Herring 322724ba675SRob Herring var_52m_clk: var_52m { 323724ba675SRob Herring #clock-cells = <0>; 324724ba675SRob Herring compatible = "fixed-clock"; 325724ba675SRob Herring clock-frequency = <52000000>; 326724ba675SRob Herring }; 327724ba675SRob Herring 328724ba675SRob Herring usb_otg_ahb_clk: usb_otg_ahb { 329724ba675SRob Herring compatible = "fixed-clock"; 330724ba675SRob Herring clock-frequency = <52000000>; 331724ba675SRob Herring #clock-cells = <0>; 332724ba675SRob Herring }; 333724ba675SRob Herring 334724ba675SRob Herring ref_96m_clk: ref_96m { 335724ba675SRob Herring #clock-cells = <0>; 336724ba675SRob Herring compatible = "fixed-clock"; 337724ba675SRob Herring clock-frequency = <96000000>; 338724ba675SRob Herring }; 339724ba675SRob Herring 340724ba675SRob Herring var_96m_clk: var_96m { 341724ba675SRob Herring #clock-cells = <0>; 342724ba675SRob Herring compatible = "fixed-clock"; 343724ba675SRob Herring clock-frequency = <96000000>; 344724ba675SRob Herring }; 345724ba675SRob Herring 346724ba675SRob Herring ref_104m_clk: ref_104m { 347724ba675SRob Herring #clock-cells = <0>; 348724ba675SRob Herring compatible = "fixed-clock"; 349724ba675SRob Herring clock-frequency = <104000000>; 350724ba675SRob Herring }; 351724ba675SRob Herring 352724ba675SRob Herring var_104m_clk: var_104m { 353724ba675SRob Herring #clock-cells = <0>; 354724ba675SRob Herring compatible = "fixed-clock"; 355724ba675SRob Herring clock-frequency = <104000000>; 356724ba675SRob Herring }; 357724ba675SRob Herring 358724ba675SRob Herring ref_156m_clk: ref_156m { 359724ba675SRob Herring #clock-cells = <0>; 360724ba675SRob Herring compatible = "fixed-clock"; 361724ba675SRob Herring clock-frequency = <156000000>; 362724ba675SRob Herring }; 363724ba675SRob Herring 364724ba675SRob Herring var_156m_clk: var_156m { 365724ba675SRob Herring #clock-cells = <0>; 366724ba675SRob Herring compatible = "fixed-clock"; 367724ba675SRob Herring clock-frequency = <156000000>; 368724ba675SRob Herring }; 369724ba675SRob Herring 370724ba675SRob Herring ref_208m_clk: ref_208m { 371724ba675SRob Herring #clock-cells = <0>; 372724ba675SRob Herring compatible = "fixed-clock"; 373724ba675SRob Herring clock-frequency = <208000000>; 374724ba675SRob Herring }; 375724ba675SRob Herring 376724ba675SRob Herring var_208m_clk: var_208m { 377724ba675SRob Herring #clock-cells = <0>; 378724ba675SRob Herring compatible = "fixed-clock"; 379724ba675SRob Herring clock-frequency = <208000000>; 380724ba675SRob Herring }; 381724ba675SRob Herring 382724ba675SRob Herring ref_312m_clk: ref_312m { 383724ba675SRob Herring #clock-cells = <0>; 384724ba675SRob Herring compatible = "fixed-clock"; 385724ba675SRob Herring clock-frequency = <312000000>; 386724ba675SRob Herring }; 387724ba675SRob Herring 388724ba675SRob Herring var_312m_clk: var_312m { 389724ba675SRob Herring #clock-cells = <0>; 390724ba675SRob Herring compatible = "fixed-clock"; 391724ba675SRob Herring clock-frequency = <312000000>; 392724ba675SRob Herring }; 393724ba675SRob Herring }; 394724ba675SRob Herring 395724ba675SRob Herring usbotg: usb@3f120000 { 396724ba675SRob Herring compatible = "snps,dwc2"; 397724ba675SRob Herring reg = <0x3f120000 0x10000>; 398724ba675SRob Herring interrupts = <GIC_SPI 47 IRQ_TYPE_LEVEL_HIGH>; 399724ba675SRob Herring clocks = <&usb_otg_ahb_clk>; 400724ba675SRob Herring clock-names = "otg"; 401724ba675SRob Herring phys = <&usbphy>; 402724ba675SRob Herring phy-names = "usb2-phy"; 403724ba675SRob Herring status = "disabled"; 404724ba675SRob Herring }; 405724ba675SRob Herring 406724ba675SRob Herring usbphy: usb-phy@3f130000 { 407724ba675SRob Herring compatible = "brcm,kona-usb2-phy"; 408724ba675SRob Herring reg = <0x3f130000 0x28>; 409724ba675SRob Herring #phy-cells = <0>; 410724ba675SRob Herring status = "disabled"; 411724ba675SRob Herring }; 412724ba675SRob Herring}; 413