arm-boards 7.2 KB

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