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,bcm63178", "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 L2_0: l2-cache0 { 45724ba675SRob Herring compatible = "cache"; 46724ba675SRob Herring cache-level = <2>; 47724ba675SRob Herring cache-unified; 48724ba675SRob Herring }; 49724ba675SRob Herring }; 50724ba675SRob Herring 51724ba675SRob Herring timer { 52724ba675SRob Herring compatible = "arm,armv7-timer"; 53724ba675SRob Herring interrupts = <GIC_PPI 13 (GIC_CPU_MASK_SIMPLE(3) | IRQ_TYPE_LEVEL_LOW)>, 54724ba675SRob Herring <GIC_PPI 14 (GIC_CPU_MASK_SIMPLE(3) | IRQ_TYPE_LEVEL_LOW)>, 55724ba675SRob Herring <GIC_PPI 11 (GIC_CPU_MASK_SIMPLE(3) | IRQ_TYPE_LEVEL_LOW)>, 56724ba675SRob Herring <GIC_PPI 10 (GIC_CPU_MASK_SIMPLE(3) | IRQ_TYPE_LEVEL_LOW)>; 57724ba675SRob Herring arm,cpu-registers-not-fw-configured; 58724ba675SRob Herring }; 59724ba675SRob Herring 60724ba675SRob Herring pmu: pmu { 61724ba675SRob Herring compatible = "arm,cortex-a7-pmu"; 62724ba675SRob Herring interrupts = <GIC_SPI 7 IRQ_TYPE_LEVEL_HIGH>, 63724ba675SRob Herring <GIC_SPI 8 IRQ_TYPE_LEVEL_HIGH>, 64724ba675SRob Herring <GIC_SPI 9 IRQ_TYPE_LEVEL_HIGH>; 65724ba675SRob Herring interrupt-affinity = <&CA7_0>, <&CA7_1>, 66724ba675SRob Herring <&CA7_2>; 67724ba675SRob Herring }; 68724ba675SRob Herring 69724ba675SRob Herring clocks: clocks { 70724ba675SRob Herring periph_clk: periph-clk { 71724ba675SRob Herring compatible = "fixed-clock"; 72724ba675SRob Herring #clock-cells = <0>; 73724ba675SRob Herring clock-frequency = <200000000>; 74724ba675SRob Herring }; 75724ba675SRob Herring 76724ba675SRob Herring uart_clk: uart-clk { 77724ba675SRob Herring compatible = "fixed-factor-clock"; 78724ba675SRob Herring #clock-cells = <0>; 79724ba675SRob Herring clocks = <&periph_clk>; 80724ba675SRob Herring clock-div = <4>; 81724ba675SRob Herring clock-mult = <1>; 82724ba675SRob Herring }; 83724ba675SRob Herring 84724ba675SRob Herring hsspi_pll: hsspi-pll { 85724ba675SRob Herring compatible = "fixed-clock"; 86724ba675SRob Herring #clock-cells = <0>; 87724ba675SRob Herring clock-frequency = <200000000>; 88724ba675SRob Herring }; 89724ba675SRob Herring }; 90724ba675SRob Herring 91724ba675SRob Herring psci { 92724ba675SRob Herring compatible = "arm,psci-0.2"; 93724ba675SRob Herring method = "smc"; 94724ba675SRob Herring }; 95724ba675SRob Herring 96724ba675SRob Herring axi@81000000 { 97724ba675SRob Herring compatible = "simple-bus"; 98724ba675SRob Herring #address-cells = <1>; 99724ba675SRob Herring #size-cells = <1>; 100724ba675SRob Herring ranges = <0 0x81000000 0x8000>; 101724ba675SRob Herring 102724ba675SRob Herring gic: interrupt-controller@1000 { 103724ba675SRob Herring compatible = "arm,cortex-a7-gic"; 104724ba675SRob Herring #interrupt-cells = <3>; 105724ba675SRob Herring interrupt-controller; 106724ba675SRob Herring interrupts = <GIC_PPI 9 (GIC_CPU_MASK_SIMPLE(3) | IRQ_TYPE_LEVEL_HIGH)>; 107724ba675SRob Herring reg = <0x1000 0x1000>, 108724ba675SRob Herring <0x2000 0x2000>, 109724ba675SRob Herring <0x4000 0x2000>, 110724ba675SRob Herring <0x6000 0x2000>; 111724ba675SRob Herring }; 112724ba675SRob Herring }; 113724ba675SRob Herring 114724ba675SRob Herring bus@ff800000 { 115724ba675SRob Herring compatible = "simple-bus"; 116724ba675SRob Herring #address-cells = <1>; 117724ba675SRob Herring #size-cells = <1>; 118724ba675SRob Herring ranges = <0 0xff800000 0x800000>; 119724ba675SRob Herring 120724ba675SRob Herring hsspi: spi@1000 { 121724ba675SRob Herring #address-cells = <1>; 122724ba675SRob Herring #size-cells = <0>; 123724ba675SRob Herring compatible = "brcm,bcm63178-hsspi", "brcm,bcmbca-hsspi-v1.0"; 124724ba675SRob Herring reg = <0x1000 0x600>; 125724ba675SRob Herring interrupts = <GIC_SPI 36 IRQ_TYPE_LEVEL_HIGH>; 126724ba675SRob Herring clocks = <&hsspi_pll &hsspi_pll>; 127724ba675SRob Herring clock-names = "hsspi", "pll"; 128724ba675SRob Herring num-cs = <8>; 129724ba675SRob Herring status = "disabled"; 130724ba675SRob Herring }; 131724ba675SRob Herring 132*d42d8e82SWilliam Zhang nand_controller: nand-controller@1800 { 133*d42d8e82SWilliam Zhang #address-cells = <1>; 134*d42d8e82SWilliam Zhang #size-cells = <0>; 135*d42d8e82SWilliam Zhang compatible = "brcm,nand-bcm63138", "brcm,brcmnand-v7.1", "brcm,brcmnand"; 136*d42d8e82SWilliam Zhang reg = <0x1800 0x600>, <0x2000 0x10>; 137*d42d8e82SWilliam Zhang reg-names = "nand", "nand-int-base"; 138*d42d8e82SWilliam Zhang status = "disabled"; 139*d42d8e82SWilliam Zhang 140*d42d8e82SWilliam Zhang nandcs: nand@0 { 141*d42d8e82SWilliam Zhang compatible = "brcm,nandcs"; 142*d42d8e82SWilliam Zhang reg = <0>; 143*d42d8e82SWilliam Zhang }; 144*d42d8e82SWilliam Zhang }; 145*d42d8e82SWilliam Zhang 146724ba675SRob Herring uart0: serial@12000 { 147724ba675SRob Herring compatible = "arm,pl011", "arm,primecell"; 148724ba675SRob Herring reg = <0x12000 0x1000>; 149724ba675SRob Herring interrupts = <GIC_SPI 32 IRQ_TYPE_LEVEL_HIGH>; 150724ba675SRob Herring clocks = <&uart_clk>, <&uart_clk>; 151724ba675SRob Herring clock-names = "uartclk", "apb_pclk"; 152724ba675SRob Herring status = "disabled"; 153724ba675SRob Herring }; 154724ba675SRob Herring }; 155724ba675SRob Herring}; 156