1*f126890aSEmmanuel Vadot/* 2*f126890aSEmmanuel Vadot * Broadcom BCM470X / BCM5301X ARM platform code. 3*f126890aSEmmanuel Vadot * Generic DTS part for all BCM53010, BCM53011, BCM53012, BCM53014, BCM53015, 4*f126890aSEmmanuel Vadot * BCM53016, BCM53017, BCM53018, BCM4707, BCM4708 and BCM4709 SoCs 5*f126890aSEmmanuel Vadot * 6*f126890aSEmmanuel Vadot * Licensed under the GNU/GPL. See COPYING for details. 7*f126890aSEmmanuel Vadot */ 8*f126890aSEmmanuel Vadot 9*f126890aSEmmanuel Vadot#include "bcm-ns.dtsi" 10*f126890aSEmmanuel Vadot 11*f126890aSEmmanuel Vadot/ { 12*f126890aSEmmanuel Vadot mpcore-bus@19000000 { 13*f126890aSEmmanuel Vadot a9pll: arm_clk@0 { 14*f126890aSEmmanuel Vadot #clock-cells = <0>; 15*f126890aSEmmanuel Vadot compatible = "brcm,nsp-armpll"; 16*f126890aSEmmanuel Vadot clocks = <&osc>; 17*f126890aSEmmanuel Vadot reg = <0x00000 0x1000>; 18*f126890aSEmmanuel Vadot }; 19*f126890aSEmmanuel Vadot 20*f126890aSEmmanuel Vadot watchdog@20620 { 21*f126890aSEmmanuel Vadot compatible = "arm,cortex-a9-twd-wdt"; 22*f126890aSEmmanuel Vadot reg = <0x20620 0x20>; 23*f126890aSEmmanuel Vadot interrupts = <GIC_PPI 14 (GIC_CPU_MASK_SIMPLE(2) | 24*f126890aSEmmanuel Vadot IRQ_TYPE_EDGE_RISING)>; 25*f126890aSEmmanuel Vadot clocks = <&periph_clk>; 26*f126890aSEmmanuel Vadot }; 27*f126890aSEmmanuel Vadot }; 28*f126890aSEmmanuel Vadot 29*f126890aSEmmanuel Vadot clocks { 30*f126890aSEmmanuel Vadot #address-cells = <1>; 31*f126890aSEmmanuel Vadot #size-cells = <1>; 32*f126890aSEmmanuel Vadot ranges; 33*f126890aSEmmanuel Vadot 34*f126890aSEmmanuel Vadot osc: oscillator { 35*f126890aSEmmanuel Vadot #clock-cells = <0>; 36*f126890aSEmmanuel Vadot compatible = "fixed-clock"; 37*f126890aSEmmanuel Vadot clock-frequency = <25000000>; 38*f126890aSEmmanuel Vadot }; 39*f126890aSEmmanuel Vadot 40*f126890aSEmmanuel Vadot iprocmed: iprocmed { 41*f126890aSEmmanuel Vadot #clock-cells = <0>; 42*f126890aSEmmanuel Vadot compatible = "fixed-factor-clock"; 43*f126890aSEmmanuel Vadot clocks = <&genpll BCM_NSP_GENPLL_IPROCFAST_CLK>; 44*f126890aSEmmanuel Vadot clock-div = <2>; 45*f126890aSEmmanuel Vadot clock-mult = <1>; 46*f126890aSEmmanuel Vadot }; 47*f126890aSEmmanuel Vadot 48*f126890aSEmmanuel Vadot iprocslow: iprocslow { 49*f126890aSEmmanuel Vadot #clock-cells = <0>; 50*f126890aSEmmanuel Vadot compatible = "fixed-factor-clock"; 51*f126890aSEmmanuel Vadot clocks = <&genpll BCM_NSP_GENPLL_IPROCFAST_CLK>; 52*f126890aSEmmanuel Vadot clock-div = <4>; 53*f126890aSEmmanuel Vadot clock-mult = <1>; 54*f126890aSEmmanuel Vadot }; 55*f126890aSEmmanuel Vadot 56*f126890aSEmmanuel Vadot periph_clk: periph_clk { 57*f126890aSEmmanuel Vadot #clock-cells = <0>; 58*f126890aSEmmanuel Vadot compatible = "fixed-factor-clock"; 59*f126890aSEmmanuel Vadot clocks = <&a9pll>; 60*f126890aSEmmanuel Vadot clock-div = <2>; 61*f126890aSEmmanuel Vadot clock-mult = <1>; 62*f126890aSEmmanuel Vadot }; 63*f126890aSEmmanuel Vadot }; 64*f126890aSEmmanuel Vadot 65*f126890aSEmmanuel Vadot i2c0: i2c@18009000 { 66*f126890aSEmmanuel Vadot compatible = "brcm,iproc-i2c"; 67*f126890aSEmmanuel Vadot reg = <0x18009000 0x50>; 68*f126890aSEmmanuel Vadot interrupts = <GIC_SPI 89 IRQ_TYPE_LEVEL_HIGH>; 69*f126890aSEmmanuel Vadot #address-cells = <1>; 70*f126890aSEmmanuel Vadot #size-cells = <0>; 71*f126890aSEmmanuel Vadot clock-frequency = <100000>; 72*f126890aSEmmanuel Vadot status = "disabled"; 73*f126890aSEmmanuel Vadot }; 74*f126890aSEmmanuel Vadot 75*f126890aSEmmanuel Vadot dmu-bus@1800c000 { 76*f126890aSEmmanuel Vadot cru-bus@100 { 77*f126890aSEmmanuel Vadot lcpll0: clock-controller@100 { 78*f126890aSEmmanuel Vadot #clock-cells = <1>; 79*f126890aSEmmanuel Vadot compatible = "brcm,nsp-lcpll0"; 80*f126890aSEmmanuel Vadot reg = <0x100 0x14>; 81*f126890aSEmmanuel Vadot clocks = <&osc>; 82*f126890aSEmmanuel Vadot clock-output-names = "lcpll0", "pcie_phy", 83*f126890aSEmmanuel Vadot "sdio", "ddr_phy"; 84*f126890aSEmmanuel Vadot }; 85*f126890aSEmmanuel Vadot 86*f126890aSEmmanuel Vadot genpll: clock-controller@140 { 87*f126890aSEmmanuel Vadot #clock-cells = <1>; 88*f126890aSEmmanuel Vadot compatible = "brcm,nsp-genpll"; 89*f126890aSEmmanuel Vadot reg = <0x140 0x24>; 90*f126890aSEmmanuel Vadot clocks = <&osc>; 91*f126890aSEmmanuel Vadot clock-output-names = "genpll", "phy", 92*f126890aSEmmanuel Vadot "ethernetclk", 93*f126890aSEmmanuel Vadot "usbclk", "iprocfast", 94*f126890aSEmmanuel Vadot "sata1", "sata2"; 95*f126890aSEmmanuel Vadot }; 96*f126890aSEmmanuel Vadot }; 97*f126890aSEmmanuel Vadot }; 98*f126890aSEmmanuel Vadot 99*f126890aSEmmanuel Vadot spi@18029200 { 100*f126890aSEmmanuel Vadot compatible = "brcm,spi-nsp-qspi", "brcm,spi-bcm-qspi"; 101*f126890aSEmmanuel Vadot reg = <0x18029200 0x184>, 102*f126890aSEmmanuel Vadot <0x18029000 0x124>, 103*f126890aSEmmanuel Vadot <0x1811b408 0x004>, 104*f126890aSEmmanuel Vadot <0x180293a0 0x01c>; 105*f126890aSEmmanuel Vadot reg-names = "mspi", "bspi", "intr_regs", "intr_status_reg"; 106*f126890aSEmmanuel Vadot interrupts = <GIC_SPI 77 IRQ_TYPE_LEVEL_HIGH>, 107*f126890aSEmmanuel Vadot <GIC_SPI 78 IRQ_TYPE_LEVEL_HIGH>, 108*f126890aSEmmanuel Vadot <GIC_SPI 72 IRQ_TYPE_LEVEL_HIGH>, 109*f126890aSEmmanuel Vadot <GIC_SPI 73 IRQ_TYPE_LEVEL_HIGH>, 110*f126890aSEmmanuel Vadot <GIC_SPI 74 IRQ_TYPE_LEVEL_HIGH>, 111*f126890aSEmmanuel Vadot <GIC_SPI 75 IRQ_TYPE_LEVEL_HIGH>, 112*f126890aSEmmanuel Vadot <GIC_SPI 76 IRQ_TYPE_LEVEL_HIGH>; 113*f126890aSEmmanuel Vadot interrupt-names = "mspi_done", 114*f126890aSEmmanuel Vadot "mspi_halted", 115*f126890aSEmmanuel Vadot "spi_lr_fullness_reached", 116*f126890aSEmmanuel Vadot "spi_lr_session_aborted", 117*f126890aSEmmanuel Vadot "spi_lr_impatient", 118*f126890aSEmmanuel Vadot "spi_lr_session_done", 119*f126890aSEmmanuel Vadot "spi_lr_overread"; 120*f126890aSEmmanuel Vadot clocks = <&iprocmed>; 121*f126890aSEmmanuel Vadot num-cs = <2>; 122*f126890aSEmmanuel Vadot #address-cells = <1>; 123*f126890aSEmmanuel Vadot #size-cells = <0>; 124*f126890aSEmmanuel Vadot 125*f126890aSEmmanuel Vadot spi_nor: flash@0 { 126*f126890aSEmmanuel Vadot compatible = "jedec,spi-nor"; 127*f126890aSEmmanuel Vadot reg = <0>; 128*f126890aSEmmanuel Vadot spi-max-frequency = <20000000>; 129*f126890aSEmmanuel Vadot status = "disabled"; 130*f126890aSEmmanuel Vadot 131*f126890aSEmmanuel Vadot partitions { 132*f126890aSEmmanuel Vadot compatible = "brcm,bcm947xx-cfe-partitions"; 133*f126890aSEmmanuel Vadot }; 134*f126890aSEmmanuel Vadot }; 135*f126890aSEmmanuel Vadot }; 136*f126890aSEmmanuel Vadot}; 137