diff options
author | Joanna Farley <joanna.farley@arm.com> | 2022-10-20 11:04:48 +0200 |
---|---|---|
committer | TrustedFirmware Code Review <review@review.trustedfirmware.org> | 2022-10-20 11:04:48 +0200 |
commit | 4e7983b71dde61ca47899d6fc0e3a34eea8fd302 (patch) | |
tree | c9acf69382187b2419a672cc9c72a4007d9cb79d /fdts | |
parent | 61fe7826d8ae41c906b2189136a1ae482f91f84a (diff) | |
parent | b139f1cf975f9968eb8bd1182a173b976ecf06f9 (diff) | |
download | arm-trusted-firmware-4e7983b71dde61ca47899d6fc0e3a34eea8fd302.tar.gz |
Merge "feat(ethos-n)!: add support for SMMU streams" into integration
Diffstat (limited to 'fdts')
-rw-r--r-- | fdts/juno-ethosn.dtsi | 71 |
1 files changed, 60 insertions, 11 deletions
diff --git a/fdts/juno-ethosn.dtsi b/fdts/juno-ethosn.dtsi index e2f33550e..460952482 100644 --- a/fdts/juno-ethosn.dtsi +++ b/fdts/juno-ethosn.dtsi @@ -1,12 +1,13 @@ /* - * Copyright (c) 2021, Arm Limited. All rights reserved. + * Copyright (c) 2021-2022, Arm Limited. All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause */ /* - * For examples of multi-core and multi-device NPU, refer to the examples given in the - * Arm Ethos-N NPU driver stack. + * This device tree is only an example and some properties have been omitted. + * + * Refer to the Arm(R) Ethos(TM)-N driver stack for complete device tree examples. * https://github.com/ARM-software/ethos-n-driver-stack */ @@ -14,14 +15,62 @@ #address-cells = <2>; #size-cells = <2>; - ethosn0: ethosn@6f300000 { - compatible = "ethosn"; - reg = <0 0x6f300000 0 0x00100000>; + smmu_ethosn0: iommu@6f400000 { + compatible = "arm,smmu-v3"; + reg = <0 0x6f400000 0 0x80000>; status = "okay"; - - core0 { - compatible = "ethosn-core"; - status = "okay"; - }; + /* msi-parent omitted */ + #iommu-cells = <0x1>; }; + + ethosn0: ethosn@6f300000 { + compatible = "ethosn"; + reg = <0 0x6f300000 0 0x00100000>; + status = "okay"; + + core0 { + compatible = "ethosn-core"; + status = "okay"; + + main_allocator { + compatible = "ethosn-main_allocator"; + status = "okay"; + + firmware { + compatible = "ethosn-memory"; + iommus = <&smmu_ethosn0 0>; + }; + + working_data { + compatible = "ethosn-memory"; + iommus = <&smmu_ethosn0 1>; + }; + }; + }; + + asset_allocator { + compatible = "ethosn-asset_allocator"; + status = "okay"; + + command_stream { + compatible = "ethosn-memory"; + iommus = <&smmu_ethosn0 2>; + }; + + weight_data { + compatible = "ethosn-memory"; + iommus = <&smmu_ethosn0 3>; + }; + + buffer_data { + compatible = "ethosn-memory"; + iommus = <&smmu_ethosn0 4>; + }; + + intermediate_data { + compatible = "ethosn-memory"; + iommus = <&smmu_ethosn0 5>; + }; + }; + }; }; |