xref: /freebsd/sys/contrib/device-tree/Bindings/soc/mediatek/devapc.yaml (revision 59c8e88e72633afbc47a4ace0d2170d00d51f7dc)
1# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
2# # Copyright 2020 MediaTek Inc.
3%YAML 1.2
4---
5$id: http://devicetree.org/schemas/soc/mediatek/devapc.yaml#
6$schema: http://devicetree.org/meta-schemas/core.yaml#
7
8title: MediaTek Device Access Permission Control driver
9
10description: |
11  MediaTek bus fabric provides TrustZone security support and data
12  protection to prevent slaves from being accessed by unexpected masters.
13  The security violation is logged and sent to the processor for further
14  analysis and countermeasures.
15
16maintainers:
17  - Neal Liu <neal.liu@mediatek.com>
18
19properties:
20  compatible:
21    enum:
22      - mediatek,mt6779-devapc
23      - mediatek,mt8186-devapc
24
25  reg:
26    description: The base address of devapc register bank
27    maxItems: 1
28
29  interrupts:
30    description: A single interrupt specifier
31    maxItems: 1
32
33  clocks:
34    description: Contains module clock source and clock names
35    maxItems: 1
36
37  clock-names:
38    description: Names of the clocks list in clocks property
39    maxItems: 1
40
41required:
42  - compatible
43  - reg
44  - interrupts
45  - clocks
46  - clock-names
47
48additionalProperties: false
49
50examples:
51  - |
52    #include <dt-bindings/interrupt-controller/arm-gic.h>
53    #include <dt-bindings/clock/mt6779-clk.h>
54
55    devapc: devapc@10207000 {
56      compatible = "mediatek,mt6779-devapc";
57      reg = <0x10207000 0x1000>;
58      interrupts = <GIC_SPI 168 IRQ_TYPE_LEVEL_LOW>;
59      clocks = <&infracfg_ao CLK_INFRA_DEVICE_APC>;
60      clock-names = "devapc-infra-clock";
61    };
62