Lines Matching +full:gpio +full:-

1 # SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
3 ---
4 $id: http://devicetree.org/schemas/pinctrl/qcom,pmic-gpio.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
7 title: Qualcomm PMIC GPIO block
10 - Bjorn Andersson <bjorn.andersson@linaro.org>
13 This binding describes the GPIO block(s) found in the 8xxx series of
19 - enum:
20 - qcom,pm2250-gpio
21 - qcom,pm660-gpio
22 - qcom,pm660l-gpio
23 - qcom,pm6125-gpio
24 - qcom,pm6150-gpio
25 - qcom,pm6150l-gpio
26 - qcom,pm6350-gpio
27 - qcom,pm6450-gpio
28 - qcom,pm7250b-gpio
29 - qcom,pm7325-gpio
30 - qcom,pm7550ba-gpio
31 - qcom,pm8005-gpio
32 - qcom,pm8018-gpio
33 - qcom,pm8019-gpio
34 - qcom,pm8038-gpio
35 - qcom,pm8058-gpio
36 - qcom,pm8150-gpio
37 - qcom,pm8150b-gpio
38 - qcom,pm8150l-gpio
39 - qcom,pm8226-gpio
40 - qcom,pm8350-gpio
41 - qcom,pm8350b-gpio
42 - qcom,pm8350c-gpio
43 - qcom,pm8450-gpio
44 - qcom,pm8550-gpio
45 - qcom,pm8550b-gpio
46 - qcom,pm8550ve-gpio
47 - qcom,pm8550vs-gpio
48 - qcom,pm8916-gpio
49 - qcom,pm8917-gpio
50 - qcom,pm8921-gpio
51 - qcom,pm8941-gpio
52 - qcom,pm8950-gpio
53 - qcom,pm8953-gpio
54 - qcom,pm8994-gpio
55 - qcom,pm8998-gpio
56 - qcom,pma8084-gpio
57 - qcom,pmc8180-gpio
58 - qcom,pmc8180c-gpio
59 - qcom,pmc8380-gpio
60 - qcom,pmd8028-gpio
61 - qcom,pmi632-gpio
62 - qcom,pmi8950-gpio
63 - qcom,pmi8994-gpio
64 - qcom,pmi8998-gpio
65 - qcom,pmih0108-gpio
66 - qcom,pmk8350-gpio
67 - qcom,pmk8550-gpio
68 - qcom,pmm8155au-gpio
69 - qcom,pmm8654au-gpio
70 - qcom,pmp8074-gpio
71 - qcom,pmr735a-gpio
72 - qcom,pmr735b-gpio
73 - qcom,pmr735d-gpio
74 - qcom,pms405-gpio
75 - qcom,pmx55-gpio
76 - qcom,pmx65-gpio
77 - qcom,pmx75-gpio
78 - qcom,pmxr2230-gpio
80 - enum:
81 - qcom,spmi-gpio
82 - qcom,ssbi-gpio
87 interrupt-controller: true
89 '#interrupt-cells':
92 gpio-controller: true
94 gpio-ranges:
97 gpio-line-names:
101 gpio-reserved-ranges:
104 # least one usable GPIO between each reserved range.
107 '#gpio-cells':
110 The first cell will be used to define gpio number and the
111 second denotes the flags for this gpio
116 - compatible
117 - reg
118 - gpio-controller
119 - '#gpio-cells'
120 - gpio-ranges
121 - interrupt-controller
124 - if:
129 - qcom,pmi8950-gpio
130 - qcom,pmr735d-gpio
133 gpio-line-names:
136 gpio-reserved-ranges:
139 - if:
144 - qcom,pm8005-gpio
145 - qcom,pm8450-gpio
146 - qcom,pm8916-gpio
147 - qcom,pmd8028-gpio
148 - qcom,pmk8350-gpio
149 - qcom,pmr735a-gpio
150 - qcom,pmr735b-gpio
153 gpio-line-names:
156 gpio-reserved-ranges:
160 - if:
165 - qcom,pm8018-gpio
166 - qcom,pm8019-gpio
167 - qcom,pm8550vs-gpio
168 - qcom,pmk8550-gpio
171 gpio-line-names:
174 gpio-reserved-ranges:
178 - if:
183 - qcom,pm7550ba-gpio
184 - qcom,pm8226-gpio
185 - qcom,pm8350b-gpio
186 - qcom,pm8550ve-gpio
187 - qcom,pm8950-gpio
188 - qcom,pm8953-gpio
189 - qcom,pmi632-gpio
192 gpio-line-names:
195 gpio-reserved-ranges:
199 - if:
204 - qcom,pm6350-gpio
205 - qcom,pm6450-gpio
206 - qcom,pm8350c-gpio
209 gpio-line-names:
212 gpio-reserved-ranges:
216 - if:
221 - qcom,pm2250-gpio
222 - qcom,pm6150-gpio
223 - qcom,pm7325-gpio
224 - qcom,pm8150-gpio
225 - qcom,pm8350-gpio
226 - qcom,pmc8180-gpio
227 - qcom,pmc8380-gpio
228 - qcom,pmi8994-gpio
229 - qcom,pmm8155au-gpio
232 gpio-line-names:
235 gpio-reserved-ranges:
239 - if:
244 - qcom,pmx55-gpio
247 gpio-line-names:
250 gpio-reserved-ranges:
254 - if:
259 - qcom,pm660l-gpio
260 - qcom,pm6150l-gpio
261 - qcom,pm7250b-gpio
262 - qcom,pm8038-gpio
263 - qcom,pm8150b-gpio
264 - qcom,pm8150l-gpio
265 - qcom,pm8550-gpio
266 - qcom,pm8550b-gpio
267 - qcom,pmc8180c-gpio
268 - qcom,pmp8074-gpio
269 - qcom,pms405-gpio
270 - qcom,pmxr2230-gpio
273 gpio-line-names:
276 gpio-reserved-ranges:
280 - if:
285 - qcom,pm660-gpio
288 gpio-line-names:
291 gpio-reserved-ranges:
295 - if:
300 - qcom,pmi8998-gpio
303 gpio-line-names:
306 gpio-reserved-ranges:
310 - if:
315 - qcom,pmih0108-gpio
318 gpio-line-names:
321 gpio-reserved-ranges:
325 - if:
330 - qcom,pmx65-gpio
331 - qcom,pmx75-gpio
334 gpio-line-names:
337 gpio-reserved-ranges:
341 - if:
346 - qcom,pm8994-gpio
347 - qcom,pma8084-gpio
350 gpio-line-names:
353 gpio-reserved-ranges:
357 - if:
362 - qcom,pm8998-gpio
365 gpio-line-names:
368 gpio-reserved-ranges:
372 - if:
377 - qcom,pm8941-gpio
380 gpio-line-names:
383 gpio-reserved-ranges:
387 - if:
392 - qcom,pm8917-gpio
395 gpio-line-names:
398 gpio-reserved-ranges:
402 - if:
407 - qcom,pm8058-gpio
408 - qcom,pm8921-gpio
411 gpio-line-names:
414 gpio-reserved-ranges:
419 '-state$':
421 - $ref: "#/$defs/qcom-pmic-gpio-state"
422 - patternProperties:
423 "(pinconf|-pins)$":
424 $ref: "#/$defs/qcom-pmic-gpio-state"
427 "-hog(-[0-9]+)?$":
430 - gpio-hog
433 qcom-pmic-gpio-state:
436 - $ref: pinmux-node.yaml
437 - $ref: pincfg-node.yaml
441 List of gpio pins affected by the properties specified in
443 - gpio1-gpio9 for pm6125
444 - gpio1-gpio10 for pm6150
445 - gpio1-gpio12 for pm6150l
446 - gpio1-gpio9 for pm6350
447 - gpio1-gpio9 for pm6450
448 - gpio1-gpio12 for pm7250b
449 - gpio1-gpio10 for pm7325
450 - gpio1-gpio8 for pm7550ba
451 - gpio1-gpio4 for pm8005
452 - gpio1-gpio6 for pm8018
453 - gpio1-gpio12 for pm8038
454 - gpio1-gpio40 for pm8058
455 - gpio1-gpio10 for pm8150 (holes on gpio2, gpio5,
457 - gpio1-gpio12 for pm8150b (holes on gpio3, gpio4
459 - gpio1-gpio12 for pm8150l (hole on gpio7)
460 - gpio1-gpio4 for pm8916
461 - gpio1-gpio10 for pm8350
462 - gpio1-gpio8 for pm8350b
463 - gpio1-gpio9 for pm8350c
464 - gpio1-gpio4 for pm8450
465 - gpio1-gpio12 for pm8550
466 - gpio1-gpio12 for pm8550b
467 - gpio1-gpio8 for pm8550ve
468 - gpio1-gpio6 for pm8550vs
469 - gpio1-gpio38 for pm8917
470 - gpio1-gpio44 for pm8921
471 - gpio1-gpio36 for pm8941
472 - gpio1-gpio8 for pm8950 (hole on gpio3)
473 - gpio1-gpio8 for pm8953 (hole on gpio3 and gpio6)
474 - gpio1-gpio22 for pm8994
475 - gpio1-gpio26 for pm8998
476 - gpio1-gpio22 for pma8084
477 - gpio1-gpio4 for pmd8028
478 - gpio1-gpio8 for pmi632
479 - gpio1-gpio2 for pmi8950
480 - gpio1-gpio10 for pmi8994
481 - gpio1-gpio18 for pmih0108
482 - gpio1-gpio4 for pmk8350
483 - gpio1-gpio6 for pmk8550
484 - gpio1-gpio10 for pmm8155au
485 - gpio1-gpio12 for pmm8654au
486 - gpio1-gpio12 for pmp8074 (holes on gpio1 and gpio12)
487 - gpio1-gpio4 for pmr735a
488 - gpio1-gpio4 for pmr735b
489 - gpio1-gpio2 for pmr735d
490 - gpio1-gpio12 for pms405 (holes on gpio1, gpio9
492 - gpio1-gpio11 for pmx55 (holes on gpio3, gpio7, gpio10
494 - gpio1-gpio16 for pmx65
495 - gpio1-gpio16 for pmx75
496 - gpio1-gpio12 for pmxr2230
499 pattern: "^gpio([0-9]+)$"
503 - enum:
504 - normal
505 - paired
506 - func1
507 - func2
508 - dtest1
509 - dtest2
510 - dtest3
511 - dtest4
512 - func3 # supported by LV/MV GPIO subtypes
513 - func4 # supported by LV/MV GPIO subtypes
515 bias-disable: true
516 bias-pull-down: true
517 bias-pull-up: true
519 qcom,pull-up-strength:
524 <dt-bindings/pinctrl/qcom,pmic-gpio.h>
529 bias-high-impedance: true
530 input-enable: true
531 input-disable: true
532 output-high: true
533 output-low: true
534 output-enable: true
535 output-disable: true
536 power-source: true
538 qcom,drive-strength:
543 <dt-bindings/pinctrl/qcom,pmic-gpio.h>
546 drive-push-pull: true
547 drive-open-drain: true
548 drive-open-source: true
550 qcom,analog-pass:
554 analog-pass-through mode.
559 Selects ATEST rail to route to GPIO when it's
560 configured in analog-pass-through mode.
563 qcom,dtest-buffer:
566 Selects DTEST rail to route to GPIO when it's
571 - pins
572 - function
577 - |
578 #include <dt-bindings/gpio/gpio.h>
579 #include <dt-bindings/pinctrl/qcom,pmic-gpio.h>
581 pm8921_gpio: gpio@150 {
582 compatible = "qcom,pm8921-gpio", "qcom,ssbi-gpio";
584 interrupt-controller;
585 #interrupt-cells = <2>;
586 gpio-controller;
587 gpio-ranges = <&pm8921_gpio 0 0 44>;
588 #gpio-cells = <2>;
590 pm8921_gpio_keys: gpio-keys-state {
591 volume-keys-pins {
595 input-enable;
596 bias-pull-up;
597 drive-push-pull;
598 qcom,drive-strength = <PMIC_GPIO_STRENGTH_NO>;
599 power-source = <PM8921_GPIO_S4>;
603 otg-hog {
604 gpio-hog;
606 output-high;
607 line-name = "otg-gpio";