1ARM Integrator/AP (Application Platform) and Integrator/CP (Compact Platform) 2----------------------------------------------------------------------------- 3ARM's oldest Linux-supported platform with connectors for different core 4tiles of ARMv4, ARMv5 and ARMv6 type. 5 6Required properties (in root node): 7 compatible = "arm,integrator-ap"; /* Application Platform */ 8 compatible = "arm,integrator-cp"; /* Compact Platform */ 9 10FPGA type interrupt controllers, see the versatile-fpga-irq binding doc. 11 12Required nodes: 13 14- core-module: the root node to the Integrator platforms must have 15 a core-module with regs and the compatible string 16 "arm,core-module-integrator" 17- external-bus-interface: the root node to the Integrator platforms 18 must have an external bus interface with regs and the 19 compatible-string "arm,external-bus-interface" 20 21 Required properties for the core module: 22 - regs: the location and size of the core module registers, one 23 range of 0x200 bytes. 24 25- syscon: the root node of the Integrator platforms must have a 26 system controller node pointing to the control registers, 27 with the compatible string 28 "arm,integrator-ap-syscon" 29 "arm,integrator-cp-syscon" 30 respectively. 31 32 Required properties for the system controller: 33 - regs: the location and size of the system controller registers, 34 one range of 0x100 bytes. 35 36 Required properties for the AP system controller: 37 - interrupts: the AP syscon node must include the logical module 38 interrupts, stated in order of module instance <module 0>, 39 <module 1>, <module 2> ... for the CP system controller this 40 is not required not of any use. 41 42/dts-v1/; 43/include/ "integrator.dtsi" 44 45/ { 46 model = "ARM Integrator/AP"; 47 compatible = "arm,integrator-ap"; 48 49 core-module@10000000 { 50 compatible = "arm,core-module-integrator"; 51 reg = <0x10000000 0x200>; 52 }; 53 54 ebi@12000000 { 55 compatible = "arm,external-bus-interface"; 56 reg = <0x12000000 0x100>; 57 }; 58 59 syscon { 60 compatible = "arm,integrator-ap-syscon"; 61 reg = <0x11000000 0x100>; 62 interrupt-parent = <&pic>; 63 /* These are the logic module IRQs */ 64 interrupts = <9>, <10>, <11>, <12>; 65 }; 66}; 67 68 69ARM Versatile Application and Platform Baseboards 70------------------------------------------------- 71ARM's development hardware platform with connectors for customizable 72core tiles. The hardware configuration of the Versatile boards is 73highly customizable. 74 75Required properties (in root node): 76 compatible = "arm,versatile-ab"; /* Application baseboard */ 77 compatible = "arm,versatile-pb"; /* Platform baseboard */ 78 79Interrupt controllers: 80- VIC required properties: 81 compatible = "arm,versatile-vic"; 82 interrupt-controller; 83 #interrupt-cells = <1>; 84 85- SIC required properties: 86 compatible = "arm,versatile-sic"; 87 interrupt-controller; 88 #interrupt-cells = <1>; 89 90Required nodes: 91 92- core-module: the root node to the Versatile platforms must have 93 a core-module with regs and the compatible strings 94 "arm,core-module-versatile", "syscon" 95 96ARM RealView Boards 97------------------- 98The RealView boards cover tailored evaluation boards that are used to explore 99the ARM11 and Cortex A-8 and Cortex A-9 processors. 100 101Required properties (in root node): 102 /* RealView Emulation Baseboard */ 103 compatible = "arm,realview-eb"; 104 /* RealView Platform Baseboard for ARM1176JZF-S */ 105 compatible = "arm,realview-pb1176"; 106 /* RealView Platform Baseboard for ARM11 MPCore */ 107 compatible = "arm,realview-pb11mp"; 108 /* RealView Platform Baseboard for Cortex A-8 */ 109 compatible = "arm,realview-pba8"; 110 /* RealView Platform Baseboard Explore for Cortex A-9 */ 111 compatible = "arm,realview-pbx"; 112 113Required nodes: 114 115- soc: some node of the RealView platforms must be the SoC 116 node that contain the SoC-specific devices, withe the compatible 117 string set to one of these tuples: 118 "arm,realview-eb-soc", "simple-bus" 119 "arm,realview-pb1176-soc", "simple-bus" 120 "arm,realview-pb11mp-soc", "simple-bus" 121 "arm,realview-pba8-soc", "simple-bus" 122 "arm,realview-pbx-soc", "simple-bus" 123 124- syscon: some subnode of the RealView SoC node must be a 125 system controller node pointing to the control registers, 126 with the compatible string set to one of these tuples: 127 "arm,realview-eb-syscon", "syscon" 128 "arm,realview-pb1176-syscon", "syscon" 129 "arm,realview-pb11mp-syscon", "syscon" 130 "arm,realview-pba8-syscon", "syscon" 131 "arm,realview-pbx-syscon", "syscon" 132 133 Required properties for the system controller: 134 - regs: the location and size of the system controller registers, 135 one range of 0x1000 bytes. 136 137Example: 138 139/dts-v1/; 140#include <dt-bindings/interrupt-controller/irq.h> 141#include "skeleton.dtsi" 142 143/ { 144 model = "ARM RealView PB1176 with device tree"; 145 compatible = "arm,realview-pb1176"; 146 147 soc { 148 #address-cells = <1>; 149 #size-cells = <1>; 150 compatible = "arm,realview-pb1176-soc", "simple-bus"; 151 ranges; 152 153 syscon: syscon@10000000 { 154 compatible = "arm,realview-syscon", "syscon"; 155 reg = <0x10000000 0x1000>; 156 }; 157 158 }; 159}; 160 161ARM Versatile Express Boards 162----------------------------- 163For details on the device tree bindings for ARM Versatile Express boards 164please consult the vexpress.txt file in the same directory as this file. 165 166ARM Juno Boards 167---------------- 168The Juno boards are targeting development for AArch64 systems. The first 169iteration, Juno r0, is a vehicle for evaluating big.LITTLE on AArch64, 170with the second iteration, Juno r1, mainly aimed at development of PCIe 171based systems. Juno r1 also has support for AXI masters placed on the TLX 172connectors to join the coherency domain. 173 174Juno boards are described in a similar way to ARM Versatile Express boards, 175with the motherboard part of the hardware being described in a separate file 176to highlight the fact that is part of the support infrastructure for the SoC. 177Juno device tree bindings also share the Versatile Express bindings as 178described under the RS1 memory mapping. 179 180Required properties (in root node): 181 compatible = "arm,juno"; /* For Juno r0 board */ 182 compatible = "arm,juno-r1"; /* For Juno r1 board */ 183 184Required nodes: 185The description for the board must include: 186 - a "psci" node describing the boot method used for the secondary CPUs. 187 A detailed description of the bindings used for "psci" nodes is present 188 in the psci.txt file. 189 - a "cpus" node describing the available cores and their associated 190 "enable-method"s. For more details see cpus.txt file. 191 192Example: 193 194/dts-v1/; 195/ { 196 model = "ARM Juno development board (r0)"; 197 compatible = "arm,juno", "arm,vexpress"; 198 interrupt-parent = <&gic>; 199 #address-cells = <2>; 200 #size-cells = <2>; 201 202 cpus { 203 #address-cells = <2>; 204 #size-cells = <0>; 205 206 A57_0: cpu@0 { 207 compatible = "arm,cortex-a57","arm,armv8"; 208 reg = <0x0 0x0>; 209 device_type = "cpu"; 210 enable-method = "psci"; 211 }; 212 213 ..... 214 215 A53_0: cpu@100 { 216 compatible = "arm,cortex-a53","arm,armv8"; 217 reg = <0x0 0x100>; 218 device_type = "cpu"; 219 enable-method = "psci"; 220 }; 221 222 ..... 223 }; 224 225}; 226