123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237 |
- ARM Integrator/AP (Application Platform) and Integrator/CP (Compact Platform)
- -----------------------------------------------------------------------------
- ARM's oldest Linux-supported platform with connectors for different core
- tiles of ARMv4, ARMv5 and ARMv6 type.
- Required properties (in root node):
- compatible = "arm,integrator-ap"; /* Application Platform */
- compatible = "arm,integrator-cp"; /* Compact Platform */
- FPGA type interrupt controllers, see the versatile-fpga-irq binding doc.
- Required nodes:
- - core-module: the root node to the Integrator platforms must have
- a core-module with regs and the compatible string
- "arm,core-module-integrator"
- - external-bus-interface: the root node to the Integrator platforms
- must have an external bus interface with regs and the
- compatible-string "arm,external-bus-interface"
- Required properties for the core module:
- - regs: the location and size of the core module registers, one
- range of 0x200 bytes.
- - syscon: the root node of the Integrator platforms must have a
- system controller node pointing to the control registers,
- with the compatible string
- "arm,integrator-ap-syscon"
- "arm,integrator-cp-syscon"
- respectively.
- Required properties for the system controller:
- - regs: the location and size of the system controller registers,
- one range of 0x100 bytes.
- Required properties for the AP system controller:
- - interrupts: the AP syscon node must include the logical module
- interrupts, stated in order of module instance <module 0>,
- <module 1>, <module 2> ... for the CP system controller this
- is not required not of any use.
- /dts-v1/;
- /include/ "integrator.dtsi"
- / {
- model = "ARM Integrator/AP";
- compatible = "arm,integrator-ap";
- core-module@10000000 {
- compatible = "arm,core-module-integrator";
- reg = <0x10000000 0x200>;
- };
- ebi@12000000 {
- compatible = "arm,external-bus-interface";
- reg = <0x12000000 0x100>;
- };
- syscon {
- compatible = "arm,integrator-ap-syscon";
- reg = <0x11000000 0x100>;
- interrupt-parent = <&pic>;
- /* These are the logic module IRQs */
- interrupts = <9>, <10>, <11>, <12>;
- };
- };
- ARM Versatile Application and Platform Baseboards
- -------------------------------------------------
- ARM's development hardware platform with connectors for customizable
- core tiles. The hardware configuration of the Versatile boards is
- highly customizable.
- Required properties (in root node):
- compatible = "arm,versatile-ab"; /* Application baseboard */
- compatible = "arm,versatile-pb"; /* Platform baseboard */
- Interrupt controllers:
- - VIC required properties:
- compatible = "arm,versatile-vic";
- interrupt-controller;
- #interrupt-cells = <1>;
- - SIC required properties:
- compatible = "arm,versatile-sic";
- interrupt-controller;
- #interrupt-cells = <1>;
- Required nodes:
- - core-module: the root node to the Versatile platforms must have
- a core-module with regs and the compatible strings
- "arm,core-module-versatile", "syscon"
- Optional nodes:
- - arm,versatile-ib2-syscon : if the Versatile has an IB2 interface
- board mounted, this has a separate system controller that is
- defined in this node.
- Required properties:
- compatible = "arm,versatile-ib2-syscon", "syscon"
- ARM RealView Boards
- -------------------
- The RealView boards cover tailored evaluation boards that are used to explore
- the ARM11 and Cortex A-8 and Cortex A-9 processors.
- Required properties (in root node):
- /* RealView Emulation Baseboard */
- compatible = "arm,realview-eb";
- /* RealView Platform Baseboard for ARM1176JZF-S */
- compatible = "arm,realview-pb1176";
- /* RealView Platform Baseboard for ARM11 MPCore */
- compatible = "arm,realview-pb11mp";
- /* RealView Platform Baseboard for Cortex A-8 */
- compatible = "arm,realview-pba8";
- /* RealView Platform Baseboard Explore for Cortex A-9 */
- compatible = "arm,realview-pbx";
- Required nodes:
- - soc: some node of the RealView platforms must be the SoC
- node that contain the SoC-specific devices, withe the compatible
- string set to one of these tuples:
- "arm,realview-eb-soc", "simple-bus"
- "arm,realview-pb1176-soc", "simple-bus"
- "arm,realview-pb11mp-soc", "simple-bus"
- "arm,realview-pba8-soc", "simple-bus"
- "arm,realview-pbx-soc", "simple-bus"
- - syscon: some subnode of the RealView SoC node must be a
- system controller node pointing to the control registers,
- with the compatible string set to one of these:
- "arm,realview-eb11mp-revb-syscon", "arm,realview-eb-syscon", "syscon"
- "arm,realview-eb11mp-revc-syscon", "arm,realview-eb-syscon", "syscon"
- "arm,realview-eb-syscon", "syscon"
- "arm,realview-pb1176-syscon", "syscon"
- "arm,realview-pb11mp-syscon", "syscon"
- "arm,realview-pba8-syscon", "syscon"
- "arm,realview-pbx-syscon", "syscon"
- Required properties for the system controller:
- - regs: the location and size of the system controller registers,
- one range of 0x1000 bytes.
- Example:
- /dts-v1/;
- #include <dt-bindings/interrupt-controller/irq.h>
- #include "skeleton.dtsi"
- / {
- model = "ARM RealView PB1176 with device tree";
- compatible = "arm,realview-pb1176";
- soc {
- #address-cells = <1>;
- #size-cells = <1>;
- compatible = "arm,realview-pb1176-soc", "simple-bus";
- ranges;
- syscon: syscon@10000000 {
- compatible = "arm,realview-syscon", "syscon";
- reg = <0x10000000 0x1000>;
- };
- };
- };
- ARM Versatile Express Boards
- -----------------------------
- For details on the device tree bindings for ARM Versatile Express boards
- please consult the vexpress.txt file in the same directory as this file.
- ARM Juno Boards
- ----------------
- The Juno boards are targeting development for AArch64 systems. The first
- iteration, Juno r0, is a vehicle for evaluating big.LITTLE on AArch64,
- with the second iteration, Juno r1, mainly aimed at development of PCIe
- based systems. Juno r1 also has support for AXI masters placed on the TLX
- connectors to join the coherency domain.
- Juno boards are described in a similar way to ARM Versatile Express boards,
- with the motherboard part of the hardware being described in a separate file
- to highlight the fact that is part of the support infrastructure for the SoC.
- Juno device tree bindings also share the Versatile Express bindings as
- described under the RS1 memory mapping.
- Required properties (in root node):
- compatible = "arm,juno"; /* For Juno r0 board */
- compatible = "arm,juno-r1"; /* For Juno r1 board */
- compatible = "arm,juno-r2"; /* For Juno r2 board */
- Required nodes:
- The description for the board must include:
- - a "psci" node describing the boot method used for the secondary CPUs.
- A detailed description of the bindings used for "psci" nodes is present
- in the psci.txt file.
- - a "cpus" node describing the available cores and their associated
- "enable-method"s. For more details see cpus.txt file.
- Example:
- /dts-v1/;
- / {
- model = "ARM Juno development board (r0)";
- compatible = "arm,juno", "arm,vexpress";
- interrupt-parent = <&gic>;
- #address-cells = <2>;
- #size-cells = <2>;
- cpus {
- #address-cells = <2>;
- #size-cells = <0>;
- A57_0: cpu@0 {
- compatible = "arm,cortex-a57","arm,armv8";
- reg = <0x0 0x0>;
- device_type = "cpu";
- enable-method = "psci";
- };
- .....
- A53_0: cpu@100 {
- compatible = "arm,cortex-a53","arm,armv8";
- reg = <0x0 0x100>;
- device_type = "cpu";
- enable-method = "psci";
- };
- .....
- };
- };
|