]> git.ipfire.org Git - thirdparty/u-boot.git/blob - Bindings/arm/firmware/linaro,optee-tz.yaml
Squashed 'dts/upstream/' content from commit aaba2d45dc2a
[thirdparty/u-boot.git] / Bindings / arm / firmware / linaro,optee-tz.yaml
1 # SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
2 %YAML 1.2
3 ---
4 $id: http://devicetree.org/schemas/arm/firmware/linaro,optee-tz.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
6
7 title: OP-TEE
8
9 maintainers:
10 - Jens Wiklander <jens.wiklander@linaro.org>
11
12 description: |
13 OP-TEE is a piece of software using hardware features to provide a Trusted
14 Execution Environment. The security can be provided with ARM TrustZone, but
15 also by virtualization or a separate chip.
16
17 We're using "linaro" as the first part of the compatible property for
18 the reference implementation maintained by Linaro.
19
20 properties:
21 $nodename:
22 const: optee
23
24 compatible:
25 const: linaro,optee-tz
26
27 interrupts:
28 maxItems: 1
29 description: |
30 This interrupt which is used to signal an event by the secure world
31 software is expected to be either a per-cpu interrupt or an
32 edge-triggered peripheral interrupt.
33
34 method:
35 enum: [smc, hvc]
36 description: |
37 The method of calling the OP-TEE Trusted OS depending on smc or hvc
38 instruction usage.
39 SMC #0, register assignments
40 or
41 HVC #0, register assignments
42 register assignments are specified in drivers/tee/optee/optee_smc.h
43
44 required:
45 - compatible
46 - method
47
48 additionalProperties: false
49
50 examples:
51 - |
52 #include <dt-bindings/interrupt-controller/arm-gic.h>
53 firmware {
54 optee {
55 compatible = "linaro,optee-tz";
56 method = "smc";
57 interrupts = <GIC_SPI 187 IRQ_TYPE_EDGE_RISING>;
58 };
59 };
60
61 - |
62 firmware {
63 optee {
64 compatible = "linaro,optee-tz";
65 method = "hvc";
66 };
67 };