Lines Matching +full:gpio +full:- +full:reserved +full:- +full:ranges

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,pm7550-gpio
31 - qcom,pm7550ba-gpio
32 - qcom,pm8005-gpio
33 - qcom,pm8018-gpio
34 - qcom,pm8019-gpio
35 - qcom,pm8038-gpio
36 - qcom,pm8058-gpio
37 - qcom,pm8150-gpio
38 - qcom,pm8150b-gpio
39 - qcom,pm8150l-gpio
40 - qcom,pm8226-gpio
41 - qcom,pm8350-gpio
42 - qcom,pm8350b-gpio
43 - qcom,pm8350c-gpio
44 - qcom,pm8450-gpio
45 - qcom,pm8550-gpio
46 - qcom,pm8550b-gpio
47 - qcom,pm8550ve-gpio
48 - qcom,pm8550vs-gpio
49 - qcom,pm8916-gpio
50 - qcom,pm8917-gpio
51 - qcom,pm8921-gpio
52 - qcom,pm8937-gpio
53 - qcom,pm8941-gpio
54 - qcom,pm8950-gpio
55 - qcom,pm8953-gpio
56 - qcom,pm8994-gpio
57 - qcom,pm8998-gpio
58 - qcom,pma8084-gpio
59 - qcom,pmc8180-gpio
60 - qcom,pmc8180c-gpio
61 - qcom,pmc8380-gpio
62 - qcom,pmd8028-gpio
63 - qcom,pmi632-gpio
64 - qcom,pmi8950-gpio
65 - qcom,pmi8994-gpio
66 - qcom,pmi8998-gpio
67 - qcom,pmih0108-gpio
68 - qcom,pmiv0104-gpio
69 - qcom,pmk8350-gpio
70 - qcom,pmk8550-gpio
71 - qcom,pmm8155au-gpio
72 - qcom,pmm8654au-gpio
73 - qcom,pmp8074-gpio
74 - qcom,pmr735a-gpio
75 - qcom,pmr735b-gpio
76 - qcom,pmr735d-gpio
77 - qcom,pms405-gpio
78 - qcom,pmx55-gpio
79 - qcom,pmx65-gpio
80 - qcom,pmx75-gpio
81 - qcom,pmxr2230-gpio
83 - enum:
84 - qcom,spmi-gpio
85 - qcom,ssbi-gpio
90 interrupt-controller: true
92 '#interrupt-cells':
95 gpio-controller: true
97 gpio-ranges:
100 gpio-line-names:
104 gpio-reserved-ranges:
107 # least one usable GPIO between each reserved range.
110 '#gpio-cells':
113 The first cell will be used to define gpio number and the
114 second denotes the flags for this gpio
119 - compatible
120 - reg
121 - gpio-controller
122 - '#gpio-cells'
123 - gpio-ranges
124 - interrupt-controller
127 - if:
132 - qcom,pmi8950-gpio
133 - qcom,pmr735d-gpio
136 gpio-line-names:
139 gpio-reserved-ranges:
142 - if:
147 - qcom,pm8005-gpio
148 - qcom,pm8450-gpio
149 - qcom,pm8916-gpio
150 - qcom,pmd8028-gpio
151 - qcom,pmk8350-gpio
152 - qcom,pmr735a-gpio
153 - qcom,pmr735b-gpio
156 gpio-line-names:
159 gpio-reserved-ranges:
163 - if:
168 - qcom,pm8018-gpio
169 - qcom,pm8019-gpio
170 - qcom,pm8550vs-gpio
171 - qcom,pmk8550-gpio
174 gpio-line-names:
177 gpio-reserved-ranges:
181 - if:
186 - qcom,pm7550ba-gpio
187 - qcom,pm8226-gpio
188 - qcom,pm8350b-gpio
189 - qcom,pm8550ve-gpio
190 - qcom,pm8937-gpio
191 - qcom,pm8950-gpio
192 - qcom,pm8953-gpio
193 - qcom,pmi632-gpio
196 gpio-line-names:
199 gpio-reserved-ranges:
203 - if:
208 - qcom,pm6350-gpio
209 - qcom,pm6450-gpio
210 - qcom,pm8350c-gpio
213 gpio-line-names:
216 gpio-reserved-ranges:
220 - if:
225 - qcom,pm2250-gpio
226 - qcom,pm6150-gpio
227 - qcom,pm7325-gpio
228 - qcom,pm8150-gpio
229 - qcom,pm8350-gpio
230 - qcom,pmc8180-gpio
231 - qcom,pmc8380-gpio
232 - qcom,pmi8994-gpio
233 - qcom,pmiv0104-gpio
234 - qcom,pmm8155au-gpio
237 gpio-line-names:
240 gpio-reserved-ranges:
244 - if:
249 - qcom,pmx55-gpio
252 gpio-line-names:
255 gpio-reserved-ranges:
259 - if:
264 - qcom,pm660l-gpio
265 - qcom,pm6150l-gpio
266 - qcom,pm7250b-gpio
267 - qcom,pm7550-gpio
268 - qcom,pm8038-gpio
269 - qcom,pm8150b-gpio
270 - qcom,pm8150l-gpio
271 - qcom,pm8550-gpio
272 - qcom,pm8550b-gpio
273 - qcom,pmc8180c-gpio
274 - qcom,pmp8074-gpio
275 - qcom,pms405-gpio
276 - qcom,pmxr2230-gpio
279 gpio-line-names:
282 gpio-reserved-ranges:
286 - if:
291 - qcom,pm660-gpio
294 gpio-line-names:
297 gpio-reserved-ranges:
301 - if:
306 - qcom,pmi8998-gpio
309 gpio-line-names:
312 gpio-reserved-ranges:
316 - if:
321 - qcom,pmih0108-gpio
324 gpio-line-names:
327 gpio-reserved-ranges:
331 - if:
336 - qcom,pmx65-gpio
337 - qcom,pmx75-gpio
340 gpio-line-names:
343 gpio-reserved-ranges:
347 - if:
352 - qcom,pm8994-gpio
353 - qcom,pma8084-gpio
356 gpio-line-names:
359 gpio-reserved-ranges:
363 - if:
368 - qcom,pm8998-gpio
371 gpio-line-names:
374 gpio-reserved-ranges:
378 - if:
383 - qcom,pm8941-gpio
386 gpio-line-names:
389 gpio-reserved-ranges:
393 - if:
398 - qcom,pm8917-gpio
401 gpio-line-names:
404 gpio-reserved-ranges:
408 - if:
413 - qcom,pm8058-gpio
414 - qcom,pm8921-gpio
417 gpio-line-names:
420 gpio-reserved-ranges:
425 '-state$':
427 - $ref: "#/$defs/qcom-pmic-gpio-state"
428 - patternProperties:
429 "(pinconf|-pins)$":
430 $ref: "#/$defs/qcom-pmic-gpio-state"
433 "-hog(-[0-9]+)?$":
436 - gpio-hog
439 qcom-pmic-gpio-state:
442 - $ref: pinmux-node.yaml
443 - $ref: pincfg-node.yaml
447 List of gpio pins affected by the properties specified in
449 - gpio1-gpio9 for pm6125
450 - gpio1-gpio10 for pm6150
451 - gpio1-gpio12 for pm6150l
452 - gpio1-gpio9 for pm6350
453 - gpio1-gpio9 for pm6450
454 - gpio1-gpio12 for pm7250b
455 - gpio1-gpio10 for pm7325
456 - gpio1-gpio8 for pm7550ba
457 - gpio1-gpio4 for pm8005
458 - gpio1-gpio6 for pm8018
459 - gpio1-gpio12 for pm8038
460 - gpio1-gpio40 for pm8058
461 - gpio1-gpio10 for pm8150 (holes on gpio2, gpio5,
463 - gpio1-gpio12 for pm8150b (holes on gpio3, gpio4
465 - gpio1-gpio12 for pm8150l (hole on gpio7)
466 - gpio1-gpio4 for pm8916
467 - gpio1-gpio10 for pm8350
468 - gpio1-gpio8 for pm8350b
469 - gpio1-gpio9 for pm8350c
470 - gpio1-gpio4 for pm8450
471 - gpio1-gpio12 for pm8550
472 - gpio1-gpio12 for pm8550b
473 - gpio1-gpio8 for pm8550ve
474 - gpio1-gpio6 for pm8550vs
475 - gpio1-gpio38 for pm8917
476 - gpio1-gpio44 for pm8921
477 - gpio1-gpio8 for pm8937 (hole on gpio3, gpio4 and gpio6)
478 - gpio1-gpio36 for pm8941
479 - gpio1-gpio8 for pm8950 (hole on gpio3)
480 - gpio1-gpio8 for pm8953 (hole on gpio3 and gpio6)
481 - gpio1-gpio22 for pm8994
482 - gpio1-gpio26 for pm8998
483 - gpio1-gpio22 for pma8084
484 - gpio1-gpio4 for pmd8028
485 - gpio1-gpio8 for pmi632
486 - gpio1-gpio2 for pmi8950
487 - gpio1-gpio10 for pmi8994
488 - gpio1-gpio18 for pmih0108
489 - gpio1-gpio4 for pmk8350
490 - gpio1-gpio6 for pmk8550
491 - gpio1-gpio10 for pmm8155au
492 - gpio1-gpio12 for pmm8654au
493 - gpio1-gpio12 for pmp8074 (holes on gpio1 and gpio12)
494 - gpio1-gpio4 for pmr735a
495 - gpio1-gpio4 for pmr735b
496 - gpio1-gpio2 for pmr735d
497 - gpio1-gpio12 for pms405 (holes on gpio1, gpio9
499 - gpio1-gpio11 for pmx55 (holes on gpio3, gpio7, gpio10
501 - gpio1-gpio16 for pmx65
502 - gpio1-gpio16 for pmx75
503 - gpio1-gpio12 for pmxr2230
506 pattern: "^gpio([0-9]+)$"
510 - enum:
511 - normal
512 - paired
513 - func1
514 - func2
515 - dtest1
516 - dtest2
517 - dtest3
518 - dtest4
519 - func3 # supported by LV/MV GPIO subtypes
520 - func4 # supported by LV/MV GPIO subtypes
522 bias-disable: true
523 bias-pull-down: true
524 bias-pull-up: true
526 qcom,pull-up-strength:
531 <dt-bindings/pinctrl/qcom,pmic-gpio.h>
536 bias-high-impedance: true
537 input-enable: true
538 input-disable: true
539 output-high: true
540 output-low: true
541 output-enable: true
542 output-disable: true
543 power-source: true
545 qcom,drive-strength:
550 <dt-bindings/pinctrl/qcom,pmic-gpio.h>
553 drive-push-pull: true
554 drive-open-drain: true
555 drive-open-source: true
557 qcom,analog-pass:
561 analog-pass-through mode.
566 Selects ATEST rail to route to GPIO when it's
567 configured in analog-pass-through mode.
570 qcom,dtest-buffer:
573 Selects DTEST rail to route to GPIO when it's
578 - pins
579 - function
584 - |
585 #include <dt-bindings/gpio/gpio.h>
586 #include <dt-bindings/pinctrl/qcom,pmic-gpio.h>
588 pm8921_gpio: gpio@150 {
589 compatible = "qcom,pm8921-gpio", "qcom,ssbi-gpio";
591 interrupt-controller;
592 #interrupt-cells = <2>;
593 gpio-controller;
594 gpio-ranges = <&pm8921_gpio 0 0 44>;
595 #gpio-cells = <2>;
597 pm8921_gpio_keys: gpio-keys-state {
598 volume-keys-pins {
602 input-enable;
603 bias-pull-up;
604 drive-push-pull;
605 qcom,drive-strength = <PMIC_GPIO_STRENGTH_NO>;
606 power-source = <PM8921_GPIO_S4>;
610 otg-hog {
611 gpio-hog;
613 output-high;
614 line-name = "otg-gpio";