Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
torvalds
GitHub Repository: torvalds/linux
Path: blob/master/Documentation/devicetree/bindings/gpio/gpio-ep9301.yaml
26308 views
1
# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
2
%YAML 1.2
3
---
4
$id: http://devicetree.org/schemas/gpio/gpio-ep9301.yaml#
5
$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7
title: EP93xx GPIO controller
8
9
maintainers:
10
- Linus Walleij <linus.walleij@linaro.org>
11
- Bartosz Golaszewski <brgl@bgdev.pl>
12
- Nikita Shubin <nikita.shubin@maquefel.me>
13
14
properties:
15
compatible:
16
oneOf:
17
- const: cirrus,ep9301-gpio
18
- items:
19
- enum:
20
- cirrus,ep9302-gpio
21
- cirrus,ep9307-gpio
22
- cirrus,ep9312-gpio
23
- cirrus,ep9315-gpio
24
- const: cirrus,ep9301-gpio
25
26
reg:
27
minItems: 2
28
items:
29
- description: data register
30
- description: direction register
31
- description: interrupt registers base
32
33
reg-names:
34
minItems: 2
35
items:
36
- const: data
37
- const: dir
38
- const: intr
39
40
gpio-controller: true
41
42
gpio-ranges: true
43
44
"#gpio-cells":
45
const: 2
46
47
interrupt-controller: true
48
49
"#interrupt-cells":
50
const: 2
51
52
interrupts:
53
oneOf:
54
- maxItems: 1
55
- description: port F has dedicated irq line for each gpio line
56
maxItems: 8
57
58
required:
59
- compatible
60
- reg
61
- gpio-controller
62
- "#gpio-cells"
63
64
additionalProperties: false
65
66
examples:
67
- |
68
gpio@80840000 {
69
compatible = "cirrus,ep9301-gpio";
70
reg = <0x80840000 0x04>,
71
<0x80840010 0x04>,
72
<0x80840090 0x1c>;
73
reg-names = "data", "dir", "intr";
74
gpio-controller;
75
#gpio-cells = <2>;
76
interrupt-controller;
77
#interrupt-cells = <2>;
78
interrupt-parent = <&vic1>;
79
interrupts = <27>;
80
};
81
82
gpio@80840004 {
83
compatible = "cirrus,ep9301-gpio";
84
reg = <0x80840004 0x04>,
85
<0x80840014 0x04>,
86
<0x808400ac 0x1c>;
87
reg-names = "data", "dir", "intr";
88
gpio-controller;
89
#gpio-cells = <2>;
90
interrupt-controller;
91
#interrupt-cells = <2>;
92
interrupt-parent = <&vic1>;
93
interrupts = <27>;
94
};
95
96
gpio@80840008 {
97
compatible = "cirrus,ep9301-gpio";
98
reg = <0x80840008 0x04>,
99
<0x80840018 0x04>;
100
reg-names = "data", "dir";
101
gpio-controller;
102
#gpio-cells = <2>;
103
};
104
105
gpio@8084000c {
106
compatible = "cirrus,ep9301-gpio";
107
reg = <0x8084000c 0x04>,
108
<0x8084001c 0x04>;
109
reg-names = "data", "dir";
110
gpio-controller;
111
#gpio-cells = <2>;
112
};
113
114
gpio@80840020 {
115
compatible = "cirrus,ep9301-gpio";
116
reg = <0x80840020 0x04>,
117
<0x80840024 0x04>;
118
reg-names = "data", "dir";
119
gpio-controller;
120
#gpio-cells = <2>;
121
};
122
123
gpio@80840030 {
124
compatible = "cirrus,ep9301-gpio";
125
reg = <0x80840030 0x04>,
126
<0x80840034 0x04>,
127
<0x8084004c 0x1c>;
128
reg-names = "data", "dir", "intr";
129
gpio-controller;
130
#gpio-cells = <2>;
131
interrupt-controller;
132
#interrupt-cells = <2>;
133
interrupts-extended = <&vic0 19>, <&vic0 20>,
134
<&vic0 21>, <&vic0 22>,
135
<&vic1 15>, <&vic1 16>,
136
<&vic1 17>, <&vic1 18>;
137
};
138
139
gpio@80840038 {
140
compatible = "cirrus,ep9301-gpio";
141
reg = <0x80840038 0x04>,
142
<0x8084003c 0x04>;
143
reg-names = "data", "dir";
144
gpio-controller;
145
#gpio-cells = <2>;
146
};
147
148
gpio@80840040 {
149
compatible = "cirrus,ep9301-gpio";
150
reg = <0x80840040 0x04>,
151
<0x80840044 0x04>;
152
reg-names = "data", "dir";
153
gpio-controller;
154
#gpio-cells = <2>;
155
};
156
157
...
158
159