juno-ethosn.dtsi 5.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301
  1. /*
  2. * Copyright (c) 2021-2023, Arm Limited. All rights reserved.
  3. *
  4. * SPDX-License-Identifier: BSD-3-Clause
  5. */
  6. /*
  7. * This device tree is only an example and some properties have been omitted.
  8. *
  9. * Refer to the Arm(R) Ethos(TM)-N driver stack for complete device tree examples.
  10. * https://github.com/ARM-software/ethos-n-driver-stack
  11. */
  12. / {
  13. #address-cells = <2>;
  14. #size-cells = <2>;
  15. smmu_ethosn0: iommu@6f400000 {
  16. compatible = "arm,smmu-v3";
  17. reg = <0 0x6f400000 0 0x80000>;
  18. status = "okay";
  19. /* msi-parent omitted */
  20. #iommu-cells = <0x1>;
  21. };
  22. ethosn0: ethosn@6f300000 {
  23. compatible = "ethosn";
  24. reg = <0 0x6f300000 0 0x00100000>;
  25. status = "okay";
  26. core0 {
  27. compatible = "ethosn-core";
  28. status = "okay";
  29. main_allocator {
  30. compatible = "ethosn-main_allocator";
  31. status = "okay";
  32. firmware {
  33. compatible = "ethosn-memory";
  34. iommus = <&smmu_ethosn0 0>;
  35. };
  36. working_data {
  37. compatible = "ethosn-memory";
  38. iommus = <&smmu_ethosn0 1>;
  39. };
  40. };
  41. };
  42. asset_allocator0 {
  43. compatible = "ethosn-asset_allocator";
  44. status = "okay";
  45. command_stream {
  46. compatible = "ethosn-memory";
  47. iommus = <&smmu_ethosn0 4>;
  48. };
  49. weight_data {
  50. compatible = "ethosn-memory";
  51. iommus = <&smmu_ethosn0 5>;
  52. };
  53. buffer_data {
  54. compatible = "ethosn-memory";
  55. iommus = <&smmu_ethosn0 6>;
  56. };
  57. intermediate_data {
  58. compatible = "ethosn-memory";
  59. iommus = <&smmu_ethosn0 7>;
  60. };
  61. };
  62. asset_allocator1 {
  63. compatible = "ethosn-asset_allocator";
  64. status = "okay";
  65. command_stream {
  66. compatible = "ethosn-memory";
  67. iommus = <&smmu_ethosn0 8>;
  68. };
  69. weight_data {
  70. compatible = "ethosn-memory";
  71. iommus = <&smmu_ethosn0 9>;
  72. };
  73. buffer_data {
  74. compatible = "ethosn-memory";
  75. iommus = <&smmu_ethosn0 10>;
  76. };
  77. intermediate_data {
  78. compatible = "ethosn-memory";
  79. iommus = <&smmu_ethosn0 11>;
  80. };
  81. };
  82. asset_allocator2 {
  83. compatible = "ethosn-asset_allocator";
  84. status = "okay";
  85. command_stream {
  86. compatible = "ethosn-memory";
  87. iommus = <&smmu_ethosn0 12>;
  88. };
  89. weight_data {
  90. compatible = "ethosn-memory";
  91. iommus = <&smmu_ethosn0 13>;
  92. };
  93. buffer_data {
  94. compatible = "ethosn-memory";
  95. iommus = <&smmu_ethosn0 14>;
  96. };
  97. intermediate_data {
  98. compatible = "ethosn-memory";
  99. iommus = <&smmu_ethosn0 15>;
  100. };
  101. };
  102. asset_allocator3 {
  103. compatible = "ethosn-asset_allocator";
  104. status = "okay";
  105. command_stream {
  106. compatible = "ethosn-memory";
  107. iommus = <&smmu_ethosn0 16>;
  108. };
  109. weight_data {
  110. compatible = "ethosn-memory";
  111. iommus = <&smmu_ethosn0 17>;
  112. };
  113. buffer_data {
  114. compatible = "ethosn-memory";
  115. iommus = <&smmu_ethosn0 18>;
  116. };
  117. intermediate_data {
  118. compatible = "ethosn-memory";
  119. iommus = <&smmu_ethosn0 19>;
  120. };
  121. };
  122. asset_allocator4 {
  123. compatible = "ethosn-asset_allocator";
  124. status = "okay";
  125. command_stream {
  126. compatible = "ethosn-memory";
  127. iommus = <&smmu_ethosn0 20>;
  128. };
  129. weight_data {
  130. compatible = "ethosn-memory";
  131. iommus = <&smmu_ethosn0 21>;
  132. };
  133. buffer_data {
  134. compatible = "ethosn-memory";
  135. iommus = <&smmu_ethosn0 22>;
  136. };
  137. intermediate_data {
  138. compatible = "ethosn-memory";
  139. iommus = <&smmu_ethosn0 23>;
  140. };
  141. };
  142. asset_allocator5 {
  143. compatible = "ethosn-asset_allocator";
  144. status = "okay";
  145. command_stream {
  146. compatible = "ethosn-memory";
  147. iommus = <&smmu_ethosn0 24>;
  148. };
  149. weight_data {
  150. compatible = "ethosn-memory";
  151. iommus = <&smmu_ethosn0 25>;
  152. };
  153. buffer_data {
  154. compatible = "ethosn-memory";
  155. iommus = <&smmu_ethosn0 26>;
  156. };
  157. intermediate_data {
  158. compatible = "ethosn-memory";
  159. iommus = <&smmu_ethosn0 27>;
  160. };
  161. };
  162. asset_allocator6 {
  163. compatible = "ethosn-asset_allocator";
  164. status = "okay";
  165. command_stream {
  166. compatible = "ethosn-memory";
  167. iommus = <&smmu_ethosn0 28>;
  168. };
  169. weight_data {
  170. compatible = "ethosn-memory";
  171. iommus = <&smmu_ethosn0 29>;
  172. };
  173. buffer_data {
  174. compatible = "ethosn-memory";
  175. iommus = <&smmu_ethosn0 30>;
  176. };
  177. intermediate_data {
  178. compatible = "ethosn-memory";
  179. iommus = <&smmu_ethosn0 31>;
  180. };
  181. };
  182. asset_allocator7 {
  183. compatible = "ethosn-asset_allocator";
  184. status = "okay";
  185. command_stream {
  186. compatible = "ethosn-memory";
  187. iommus = <&smmu_ethosn0 32>;
  188. };
  189. weight_data {
  190. compatible = "ethosn-memory";
  191. iommus = <&smmu_ethosn0 33>;
  192. };
  193. buffer_data {
  194. compatible = "ethosn-memory";
  195. iommus = <&smmu_ethosn0 34>;
  196. };
  197. intermediate_data {
  198. compatible = "ethosn-memory";
  199. iommus = <&smmu_ethosn0 35>;
  200. };
  201. };
  202. asset_allocator8 {
  203. compatible = "ethosn-asset_allocator";
  204. status = "okay";
  205. command_stream {
  206. compatible = "ethosn-memory";
  207. iommus = <&smmu_ethosn0 36>;
  208. };
  209. weight_data {
  210. compatible = "ethosn-memory";
  211. iommus = <&smmu_ethosn0 37>;
  212. };
  213. buffer_data {
  214. compatible = "ethosn-memory";
  215. iommus = <&smmu_ethosn0 38>;
  216. };
  217. intermediate_data {
  218. compatible = "ethosn-memory";
  219. iommus = <&smmu_ethosn0 39>;
  220. };
  221. };
  222. asset_allocator9 {
  223. compatible = "ethosn-asset_allocator";
  224. status = "okay";
  225. command_stream {
  226. compatible = "ethosn-memory";
  227. iommus = <&smmu_ethosn0 40>;
  228. };
  229. weight_data {
  230. compatible = "ethosn-memory";
  231. iommus = <&smmu_ethosn0 41>;
  232. };
  233. buffer_data {
  234. compatible = "ethosn-memory";
  235. iommus = <&smmu_ethosn0 42>;
  236. };
  237. intermediate_data {
  238. compatible = "ethosn-memory";
  239. iommus = <&smmu_ethosn0 43>;
  240. };
  241. };
  242. };
  243. };