]> git.ipfire.org Git - thirdparty/u-boot.git/blob - Bindings/crypto/fsl,sec-v4.0-mon.yaml
Squashed 'dts/upstream/' content from commit aaba2d45dc2a
[thirdparty/u-boot.git] / Bindings / crypto / fsl,sec-v4.0-mon.yaml
1 # SPDX-License-Identifier: GPL-2.0
2 # Copyright (C) 2008-2011 Freescale Semiconductor Inc.
3 %YAML 1.2
4 ---
5 $id: http://devicetree.org/schemas/crypto/fsl,sec-v4.0-mon.yaml#
6 $schema: http://devicetree.org/meta-schemas/core.yaml#
7
8 title: Freescale Secure Non-Volatile Storage (SNVS)
9
10 maintainers:
11 - '"Horia Geantă" <horia.geanta@nxp.com>'
12 - Pankaj Gupta <pankaj.gupta@nxp.com>
13 - Gaurav Jain <gaurav.jain@nxp.com>
14
15 description:
16 Node defines address range and the associated interrupt for the SNVS function.
17 This function monitors security state information & reports security
18 violations. This also included rtc, system power off and ON/OFF key.
19
20 properties:
21 compatible:
22 oneOf:
23 - items:
24 - const: fsl,sec-v4.0-mon
25 - const: syscon
26 - const: simple-mfd
27 - items:
28 - const: fsl,sec-v5.0-mon
29 - const: fsl,sec-v4.0-mon
30 - items:
31 - enum:
32 - fsl,sec-v5.3-mon
33 - fsl,sec-v5.4-mon
34 - const: fsl,sec-v5.0-mon
35 - const: fsl,sec-v4.0-mon
36
37 reg:
38 maxItems: 1
39
40 interrupts:
41 maxItems: 2
42
43 snvs-rtc-lp:
44 type: object
45 additionalProperties: false
46 description:
47 Secure Non-Volatile Storage (SNVS) Low Power (LP) RTC Node
48
49 properties:
50 compatible:
51 const: fsl,sec-v4.0-mon-rtc-lp
52
53 clocks:
54 maxItems: 1
55
56 clock-names:
57 const: snvs-rtc
58
59 interrupts:
60 # VFxxx has only one. What is the 2nd one?
61 minItems: 1
62 maxItems: 2
63
64 regmap:
65 description: Parent node containing registers
66 $ref: /schemas/types.yaml#/definitions/phandle
67
68 offset:
69 description: LP register offset
70 $ref: /schemas/types.yaml#/definitions/uint32
71 default: 0x34
72
73 required:
74 - compatible
75 - interrupts
76 - regmap
77
78 snvs-powerkey:
79 type: object
80 additionalProperties: false
81 description:
82 The snvs-pwrkey is designed to enable POWER key function which controlled
83 by SNVS ONOFF, the driver can report the status of POWER key and wakeup
84 system if pressed after system suspend.
85
86 properties:
87 compatible:
88 const: fsl,sec-v4.0-pwrkey
89
90 clocks:
91 maxItems: 1
92
93 clock-names:
94 const: snvs-pwrkey
95
96 interrupts:
97 maxItems: 1
98
99 regmap:
100 description: Parent node containing registers
101 $ref: /schemas/types.yaml#/definitions/phandle
102
103 wakeup-source: true
104
105 linux,keycode:
106 $ref: /schemas/types.yaml#/definitions/uint32
107 default: 116
108 deprecated: true
109
110 linux,keycodes:
111 maxItems: 1
112 default: 116
113
114 required:
115 - compatible
116 - interrupts
117 - regmap
118
119 snvs-lpgpr:
120 $ref: /schemas/nvmem/snvs-lpgpr.yaml#
121
122 snvs-poweroff:
123 description:
124 The SNVS could drive signal to PMIC to turn off system power by setting
125 SNVS_LP LPCR register.
126 $ref: /schemas/power/reset/syscon-poweroff.yaml#
127
128 required:
129 - compatible
130 - reg
131
132 additionalProperties: false
133
134 examples:
135 - |
136 #include <dt-bindings/interrupt-controller/arm-gic.h>
137 #include <dt-bindings/clock/imx7d-clock.h>
138
139 sec_mon: sec-mon@314000 {
140 compatible = "fsl,sec-v4.0-mon", "syscon", "simple-mfd";
141 reg = <0x314000 0x1000>;
142
143 snvs-rtc-lp {
144 compatible = "fsl,sec-v4.0-mon-rtc-lp";
145 regmap = <&sec_mon>;
146 offset = <0x34>;
147 clocks = <&clks IMX7D_SNVS_CLK>;
148 clock-names = "snvs-rtc";
149 interrupts = <GIC_SPI 19 IRQ_TYPE_LEVEL_HIGH>,
150 <GIC_SPI 20 IRQ_TYPE_LEVEL_HIGH>;
151 };
152
153 snvs-powerkey {
154 compatible = "fsl,sec-v4.0-pwrkey";
155 regmap = <&sec_mon>;
156 clocks = <&clks IMX7D_SNVS_CLK>;
157 clock-names = "snvs-pwrkey";
158 interrupts = <GIC_SPI 4 IRQ_TYPE_LEVEL_HIGH>;
159 linux,keycode = <116>; /* KEY_POWER */
160 wakeup-source;
161 };
162 };