1724ba675SRob Herring// SPDX-License-Identifier: (GPL-2.0+ OR MIT) 2724ba675SRob Herring/* 3724ba675SRob Herring * Copyright 2022 Broadcom Ltd. 4724ba675SRob Herring */ 5724ba675SRob Herring 6724ba675SRob Herring#include <dt-bindings/interrupt-controller/arm-gic.h> 7724ba675SRob Herring#include <dt-bindings/interrupt-controller/irq.h> 8724ba675SRob Herring 9724ba675SRob Herring/ { 10724ba675SRob Herring compatible = "brcm,bcm47622", "brcm,bcmbca"; 11724ba675SRob Herring #address-cells = <1>; 12724ba675SRob Herring #size-cells = <1>; 13724ba675SRob Herring 14724ba675SRob Herring interrupt-parent = <&gic>; 15724ba675SRob Herring 16724ba675SRob Herring cpus { 17724ba675SRob Herring #address-cells = <1>; 18724ba675SRob Herring #size-cells = <0>; 19724ba675SRob Herring 20724ba675SRob Herring CA7_0: cpu@0 { 21724ba675SRob Herring device_type = "cpu"; 22724ba675SRob Herring compatible = "arm,cortex-a7"; 23724ba675SRob Herring reg = <0x0>; 24724ba675SRob Herring next-level-cache = <&L2_0>; 25724ba675SRob Herring enable-method = "psci"; 26724ba675SRob Herring }; 27724ba675SRob Herring 28724ba675SRob Herring CA7_1: cpu@1 { 29724ba675SRob Herring device_type = "cpu"; 30724ba675SRob Herring compatible = "arm,cortex-a7"; 31724ba675SRob Herring reg = <0x1>; 32724ba675SRob Herring next-level-cache = <&L2_0>; 33724ba675SRob Herring enable-method = "psci"; 34724ba675SRob Herring }; 35724ba675SRob Herring 36724ba675SRob Herring CA7_2: cpu@2 { 37724ba675SRob Herring device_type = "cpu"; 38724ba675SRob Herring compatible = "arm,cortex-a7"; 39724ba675SRob Herring reg = <0x2>; 40724ba675SRob Herring next-level-cache = <&L2_0>; 41724ba675SRob Herring enable-method = "psci"; 42724ba675SRob Herring }; 43724ba675SRob Herring 44724ba675SRob Herring CA7_3: cpu@3 { 45724ba675SRob Herring device_type = "cpu"; 46724ba675SRob Herring compatible = "arm,cortex-a7"; 47724ba675SRob Herring reg = <0x3>; 48724ba675SRob Herring next-level-cache = <&L2_0>; 49724ba675SRob Herring enable-method = "psci"; 50724ba675SRob Herring }; 51724ba675SRob Herring 52724ba675SRob Herring L2_0: l2-cache0 { 53724ba675SRob Herring compatible = "cache"; 54724ba675SRob Herring cache-level = <2>; 55724ba675SRob Herring cache-unified; 56724ba675SRob Herring }; 57724ba675SRob Herring }; 58724ba675SRob Herring 59724ba675SRob Herring timer { 60724ba675SRob Herring compatible = "arm,armv7-timer"; 61724ba675SRob Herring interrupts = <GIC_PPI 13 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>, 62724ba675SRob Herring <GIC_PPI 14 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>, 63724ba675SRob Herring <GIC_PPI 11 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>, 64724ba675SRob Herring <GIC_PPI 10 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>; 65724ba675SRob Herring arm,cpu-registers-not-fw-configured; 66724ba675SRob Herring }; 67724ba675SRob Herring 68724ba675SRob Herring pmu: pmu { 69724ba675SRob Herring compatible = "arm,cortex-a7-pmu"; 70724ba675SRob Herring interrupts = <GIC_SPI 7 IRQ_TYPE_LEVEL_HIGH>, 71724ba675SRob Herring <GIC_SPI 8 IRQ_TYPE_LEVEL_HIGH>, 72724ba675SRob Herring <GIC_SPI 9 IRQ_TYPE_LEVEL_HIGH>, 73724ba675SRob Herring <GIC_SPI 10 IRQ_TYPE_LEVEL_HIGH>; 74724ba675SRob Herring interrupt-affinity = <&CA7_0>, <&CA7_1>, 75724ba675SRob Herring <&CA7_2>, <&CA7_3>; 76724ba675SRob Herring }; 77724ba675SRob Herring 78724ba675SRob Herring clocks: clocks { 79724ba675SRob Herring periph_clk: periph-clk { 80724ba675SRob Herring compatible = "fixed-clock"; 81724ba675SRob Herring #clock-cells = <0>; 82724ba675SRob Herring clock-frequency = <200000000>; 83724ba675SRob Herring }; 84724ba675SRob Herring 85724ba675SRob Herring uart_clk: uart-clk { 86724ba675SRob Herring compatible = "fixed-factor-clock"; 87724ba675SRob Herring #clock-cells = <0>; 88724ba675SRob Herring clocks = <&periph_clk>; 89724ba675SRob Herring clock-div = <4>; 90724ba675SRob Herring clock-mult = <1>; 91724ba675SRob Herring }; 92724ba675SRob Herring 93724ba675SRob Herring hsspi_pll: hsspi-pll { 94724ba675SRob Herring compatible = "fixed-clock"; 95724ba675SRob Herring #clock-cells = <0>; 96724ba675SRob Herring clock-frequency = <200000000>; 97724ba675SRob Herring }; 98724ba675SRob Herring }; 99724ba675SRob Herring 100724ba675SRob Herring psci { 101724ba675SRob Herring compatible = "arm,psci-0.2"; 102724ba675SRob Herring method = "smc"; 103724ba675SRob Herring }; 104724ba675SRob Herring 105724ba675SRob Herring axi@81000000 { 106724ba675SRob Herring compatible = "simple-bus"; 107724ba675SRob Herring #address-cells = <1>; 108724ba675SRob Herring #size-cells = <1>; 109724ba675SRob Herring ranges = <0 0x81000000 0x8000>; 110724ba675SRob Herring 111724ba675SRob Herring gic: interrupt-controller@1000 { 112724ba675SRob Herring compatible = "arm,cortex-a7-gic"; 113724ba675SRob Herring #interrupt-cells = <3>; 114724ba675SRob Herring interrupt-controller; 115724ba675SRob Herring interrupts = <GIC_PPI 9 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_HIGH)>; 116724ba675SRob Herring reg = <0x1000 0x1000>, 117724ba675SRob Herring <0x2000 0x2000>, 118724ba675SRob Herring <0x4000 0x2000>, 119724ba675SRob Herring <0x6000 0x2000>; 120724ba675SRob Herring }; 121724ba675SRob Herring }; 122724ba675SRob Herring 123724ba675SRob Herring bus@ff800000 { 124724ba675SRob Herring compatible = "simple-bus"; 125724ba675SRob Herring #address-cells = <1>; 126724ba675SRob Herring #size-cells = <1>; 127724ba675SRob Herring ranges = <0 0xff800000 0x800000>; 128724ba675SRob Herring 129724ba675SRob Herring hsspi: spi@1000 { 130724ba675SRob Herring #address-cells = <1>; 131724ba675SRob Herring #size-cells = <0>; 132724ba675SRob Herring compatible = "brcm,bcm47622-hsspi", "brcm,bcmbca-hsspi-v1.0"; 133724ba675SRob Herring reg = <0x1000 0x600>; 134724ba675SRob Herring interrupts = <GIC_SPI 36 IRQ_TYPE_LEVEL_HIGH>; 135724ba675SRob Herring clocks = <&hsspi_pll &hsspi_pll>; 136724ba675SRob Herring clock-names = "hsspi", "pll"; 137724ba675SRob Herring num-cs = <8>; 138724ba675SRob Herring status = "disabled"; 139724ba675SRob Herring }; 140724ba675SRob Herring 141*d42d8e82SWilliam Zhang nand_controller: nand-controller@1800 { 142*d42d8e82SWilliam Zhang #address-cells = <1>; 143*d42d8e82SWilliam Zhang #size-cells = <0>; 144*d42d8e82SWilliam Zhang compatible = "brcm,nand-bcm63138", "brcm,brcmnand-v7.1", "brcm,brcmnand"; 145*d42d8e82SWilliam Zhang reg = <0x1800 0x600>, <0x2000 0x10>; 146*d42d8e82SWilliam Zhang reg-names = "nand", "nand-int-base"; 147*d42d8e82SWilliam Zhang status = "disabled"; 148*d42d8e82SWilliam Zhang 149*d42d8e82SWilliam Zhang nandcs: nand@0 { 150*d42d8e82SWilliam Zhang compatible = "brcm,nandcs"; 151*d42d8e82SWilliam Zhang reg = <0>; 152*d42d8e82SWilliam Zhang }; 153*d42d8e82SWilliam Zhang }; 154*d42d8e82SWilliam Zhang 155724ba675SRob Herring uart0: serial@12000 { 156724ba675SRob Herring compatible = "arm,pl011", "arm,primecell"; 157724ba675SRob Herring reg = <0x12000 0x1000>; 158724ba675SRob Herring interrupts = <GIC_SPI 32 IRQ_TYPE_LEVEL_HIGH>; 159724ba675SRob Herring clocks = <&uart_clk>, <&uart_clk>; 160724ba675SRob Herring clock-names = "uartclk", "apb_pclk"; 161724ba675SRob Herring status = "disabled"; 162724ba675SRob Herring }; 163724ba675SRob Herring }; 164724ba675SRob Herring}; 165