Lines Matching +full:pin +full:- +full:pud
1 # SPDX-License-Identifier: GPL-2.0-only
3 ---
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
7 title: Samsung S3C/S5P/Exynos SoC pin controller
10 - Krzysztof Kozlowski <krzk@kernel.org>
11 - Sylwester Nawrocki <s.nawrocki@samsung.com>
12 - Tomasz Figa <tomasz.figa@gmail.com>
15 This is a part of device tree bindings for Samsung S3C/S5P/Exynos SoC pin
18 All the pin controller nodes should be represented in the aliases node using
22 - External GPIO interrupts (see interrupts property in pin controller node);
24 - External wake-up interrupts - multiplexed (capable of waking up the system
25 see interrupts property in external wake-up interrupt controller node -
26 samsung,pinctrl-wakeup-interrupt.yaml);
28 - External wake-up interrupts - direct (capable of waking up the system, see
29 interrupts property in every bank of pin controller with external wake-up
30 interrupt controller - samsung,pinctrl-gpio-bank.yaml).
38 - google,gs101-pinctrl
39 - samsung,s3c2412-pinctrl
40 - samsung,s3c2416-pinctrl
41 - samsung,s3c2440-pinctrl
42 - samsung,s3c2450-pinctrl
43 - samsung,s3c64xx-pinctrl
44 - samsung,s5pv210-pinctrl
45 - samsung,exynos3250-pinctrl
46 - samsung,exynos4210-pinctrl
47 - samsung,exynos4x12-pinctrl
48 - samsung,exynos5250-pinctrl
49 - samsung,exynos5260-pinctrl
50 - samsung,exynos5410-pinctrl
51 - samsung,exynos5420-pinctrl
52 - samsung,exynos5433-pinctrl
53 - samsung,exynos7-pinctrl
54 - samsung,exynos7885-pinctrl
55 - samsung,exynos850-pinctrl
56 - samsung,exynosautov9-pinctrl
57 - samsung,exynosautov920-pinctrl
58 - tesla,fsd-pinctrl
65 power-domains:
70 Second base address of the pin controller if the specific registers of
71 the pin controller are separated into the different base address.
72 Only certain banks of certain pin controller might need it.
76 wakeup-interrupt-controller:
77 $ref: samsung,pinctrl-wakeup-interrupt.yaml
80 "^[a-z]+[0-9]*-gpio-bank$":
82 Pin banks of the controller are represented by child nodes of the
84 $ref: samsung,pinctrl-gpio-bank.yaml
86 "^[a-z0-9-]+-pins$":
88 - $ref: samsung,pinctrl-pins-cfg.yaml
90 - samsung,pins
91 - type: object
93 "^[a-z0-9-]+-pins$":
94 $ref: samsung,pinctrl-pins-cfg.yaml
98 "^(initial|sleep)-state$":
103 "^(pin-[a-z0-9-]+|[a-z0-9-]+-pin)$":
104 $ref: samsung,pinctrl-pins-cfg.yaml
108 description: See samsung,pinctrl-pins-cfg.yaml
109 $ref: /schemas/types.yaml#/definitions/string-array
113 - samsung,pins
118 - compatible
119 - reg
122 - $ref: pinctrl.yaml#
123 - if:
127 const: samsung,exynos5433-pinctrl
142 - |
144 compatible = "samsung,s3c64xx-pinctrl";
146 interrupt-parent = <&vic1>;
149 wakeup-interrupt-controller {
150 compatible = "samsung,s3c64xx-wakeup-eint";
151 interrupts-extended = <&vic0 0>,
157 /* Pin bank with external GPIO or muxed external wake-up interrupts */
158 gpa-gpio-bank {
159 gpio-controller;
160 #gpio-cells = <2>;
161 interrupt-controller;
162 #interrupt-cells = <2>;
167 uart0-data-pins {
168 samsung,pins = "gpa-0", "gpa-1";
169 samsung,pin-function = <2>;
170 samsung,pin-pud = <0>;
176 - |
177 #include <dt-bindings/interrupt-controller/arm-gic.h>
180 compatible = "samsung,exynos4210-pinctrl";
184 pinctrl-names = "default";
185 pinctrl-0 = <&sleep0>;
187 /* Pin bank with external GPIO or muxed external wake-up interrupts */
188 gpa0-gpio-bank {
189 gpio-controller;
190 #gpio-cells = <2>;
191 interrupt-controller;
192 #interrupt-cells = <2>;
197 uart0-data-pins {
198 samsung,pins = "gpa0-0", "gpa0-1";
199 samsung,pin-function = <2>;
200 samsung,pin-pud = <0>;
201 samsung,pin-drv = <0>;
206 sleep0: sleep-state {
207 gpa0-0-pin {
208 samsung,pins = "gpa0-0";
209 samsung,pin-con-pdn = <2>;
210 samsung,pin-pud-pdn = <0>;
213 gpa0-1-pin {
214 samsung,pins = "gpa0-1";
215 samsung,pin-con-pdn = <0>;
216 samsung,pin-pud-pdn = <0>;
223 - |
224 #include <dt-bindings/interrupt-controller/arm-gic.h>
227 compatible = "samsung,exynos4210-pinctrl";
231 wakeup-interrupt-controller {
232 compatible = "samsung,exynos4210-wakeup-eint";
233 interrupt-parent = <&gic>;
237 /* Pin bank with external GPIO or muxed external wake-up interrupts */
238 gpj0-gpio-bank {
239 gpio-controller;
240 #gpio-cells = <2>;
241 interrupt-controller;
242 #interrupt-cells = <2>;
245 /* Pin bank without external interrupts */
246 gpy0-gpio-bank {
247 gpio-controller;
248 #gpio-cells = <2>;
251 /* Pin bank with external direct wake-up interrupts */
252 gpx0-gpio-bank {
253 gpio-controller;
254 #gpio-cells = <2>;
256 interrupt-controller;
257 interrupt-parent = <&gic>;
266 #interrupt-cells = <2>;
271 sd0-clk-pins {
272 samsung,pins = "gpk0-0";
273 samsung,pin-function = <2>;
274 samsung,pin-pud = <0>;
275 samsung,pin-drv = <3>;
278 sd4-bus-width8-pins {
279 part-1-pins {
280 samsung,pins = "gpk0-3", "gpk0-4",
281 "gpk0-5", "gpk0-6";
282 samsung,pin-function = <3>;
283 samsung,pin-pud = <3>;
284 samsung,pin-drv = <3>;
287 part-2-pins {
288 samsung,pins = "gpk1-3", "gpk1-4",
289 "gpk1-5", "gpk1-6";
290 samsung,pin-function = <4>;
291 samsung,pin-pud = <3>;
292 samsung,pin-drv = <3>;
298 otg-gp-pins {
299 samsung,pins = "gpx3-3";
300 samsung,pin-function = <1>;
301 samsung,pin-pud = <0>;
302 samsung,pin-drv = <0>;
303 samsung,pin-val = <0>;
307 - |
308 #include <dt-bindings/interrupt-controller/arm-gic.h>
311 compatible = "samsung,exynos5433-pinctrl";
314 pinctrl-names = "default";
315 pinctrl-0 = <&initial_alive>;
317 wakeup-interrupt-controller {
318 compatible = "samsung,exynos5433-wakeup-eint",
319 "samsung,exynos7-wakeup-eint";
323 /* Pin bank with external direct wake-up interrupts */
324 gpa0-gpio-bank {
325 gpio-controller;
326 #gpio-cells = <2>;
328 interrupt-controller;
329 interrupt-parent = <&gic>;
338 #interrupt-cells = <2>;
343 te-irq-pins {
344 samsung,pins = "gpf1-3";
345 samsung,pin-function = <0xf>;
350 initial_alive: initial-state {
351 gpa0-0-pin {
352 samsung,pins = "gpa0-0";
353 samsung,pin-function = <0>;
354 samsung,pin-pud = <1>;
355 samsung,pin-drv = <0>;
362 - |
363 #include <dt-bindings/interrupt-controller/arm-gic.h>
366 compatible = "samsung,exynos5433-pinctrl";
369 power-domains = <&pd_aud>;
371 /* Pin bank with external GPIO or muxed external wake-up interrupts */
372 gpz0-gpio-bank {
373 gpio-controller;
374 #gpio-cells = <2>;
375 interrupt-controller;
376 #interrupt-cells = <2>;
381 i2s0-bus-pins {
382 samsung,pins = "gpz0-0", "gpz0-1", "gpz0-2", "gpz0-3",
383 "gpz0-4", "gpz0-5", "gpz0-6";
384 samsung,pin-function = <2>;
385 samsung,pin-pud = <0>;
386 samsung,pin-drv = <0>;