Lines Matching +full:qcom +full:- +full:pmic +full:- +full:gpio +full:- +full:state
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
14 PMIC's from Qualcomm.
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,pm8937-gpio
52 - qcom,pm8941-gpio
53 - qcom,pm8950-gpio
54 - qcom,pm8953-gpio
55 - qcom,pm8994-gpio
56 - qcom,pm8998-gpio
57 - qcom,pma8084-gpio
58 - qcom,pmc8180-gpio
59 - qcom,pmc8180c-gpio
60 - qcom,pmc8380-gpio
61 - qcom,pmd8028-gpio
62 - qcom,pmi632-gpio
63 - qcom,pmi8950-gpio
64 - qcom,pmi8994-gpio
65 - qcom,pmi8998-gpio
66 - qcom,pmih0108-gpio
67 - qcom,pmk8350-gpio
68 - qcom,pmk8550-gpio
69 - qcom,pmm8155au-gpio
70 - qcom,pmm8654au-gpio
71 - qcom,pmp8074-gpio
72 - qcom,pmr735a-gpio
73 - qcom,pmr735b-gpio
74 - qcom,pmr735d-gpio
75 - qcom,pms405-gpio
76 - qcom,pmx55-gpio
77 - qcom,pmx65-gpio
78 - qcom,pmx75-gpio
79 - qcom,pmxr2230-gpio
81 - enum:
82 - qcom,spmi-gpio
83 - qcom,ssbi-gpio
88 interrupt-controller: true
90 '#interrupt-cells':
93 gpio-controller: true
95 gpio-ranges:
98 gpio-line-names:
102 gpio-reserved-ranges:
105 # least one usable GPIO between each reserved range.
108 '#gpio-cells':
111 The first cell will be used to define gpio number and the
112 second denotes the flags for this gpio
117 - compatible
118 - reg
119 - gpio-controller
120 - '#gpio-cells'
121 - gpio-ranges
122 - interrupt-controller
125 - if:
130 - qcom,pmi8950-gpio
131 - qcom,pmr735d-gpio
134 gpio-line-names:
137 gpio-reserved-ranges:
140 - if:
145 - qcom,pm8005-gpio
146 - qcom,pm8450-gpio
147 - qcom,pm8916-gpio
148 - qcom,pmd8028-gpio
149 - qcom,pmk8350-gpio
150 - qcom,pmr735a-gpio
151 - qcom,pmr735b-gpio
154 gpio-line-names:
157 gpio-reserved-ranges:
161 - if:
166 - qcom,pm8018-gpio
167 - qcom,pm8019-gpio
168 - qcom,pm8550vs-gpio
169 - qcom,pmk8550-gpio
172 gpio-line-names:
175 gpio-reserved-ranges:
179 - if:
184 - qcom,pm7550ba-gpio
185 - qcom,pm8226-gpio
186 - qcom,pm8350b-gpio
187 - qcom,pm8550ve-gpio
188 - qcom,pm8937-gpio
189 - qcom,pm8950-gpio
190 - qcom,pm8953-gpio
191 - qcom,pmi632-gpio
194 gpio-line-names:
197 gpio-reserved-ranges:
201 - if:
206 - qcom,pm6350-gpio
207 - qcom,pm6450-gpio
208 - qcom,pm8350c-gpio
211 gpio-line-names:
214 gpio-reserved-ranges:
218 - if:
223 - qcom,pm2250-gpio
224 - qcom,pm6150-gpio
225 - qcom,pm7325-gpio
226 - qcom,pm8150-gpio
227 - qcom,pm8350-gpio
228 - qcom,pmc8180-gpio
229 - qcom,pmc8380-gpio
230 - qcom,pmi8994-gpio
231 - qcom,pmm8155au-gpio
234 gpio-line-names:
237 gpio-reserved-ranges:
241 - if:
246 - qcom,pmx55-gpio
249 gpio-line-names:
252 gpio-reserved-ranges:
256 - if:
261 - qcom,pm660l-gpio
262 - qcom,pm6150l-gpio
263 - qcom,pm7250b-gpio
264 - qcom,pm8038-gpio
265 - qcom,pm8150b-gpio
266 - qcom,pm8150l-gpio
267 - qcom,pm8550-gpio
268 - qcom,pm8550b-gpio
269 - qcom,pmc8180c-gpio
270 - qcom,pmp8074-gpio
271 - qcom,pms405-gpio
272 - qcom,pmxr2230-gpio
275 gpio-line-names:
278 gpio-reserved-ranges:
282 - if:
287 - qcom,pm660-gpio
290 gpio-line-names:
293 gpio-reserved-ranges:
297 - if:
302 - qcom,pmi8998-gpio
305 gpio-line-names:
308 gpio-reserved-ranges:
312 - if:
317 - qcom,pmih0108-gpio
320 gpio-line-names:
323 gpio-reserved-ranges:
327 - if:
332 - qcom,pmx65-gpio
333 - qcom,pmx75-gpio
336 gpio-line-names:
339 gpio-reserved-ranges:
343 - if:
348 - qcom,pm8994-gpio
349 - qcom,pma8084-gpio
352 gpio-line-names:
355 gpio-reserved-ranges:
359 - if:
364 - qcom,pm8998-gpio
367 gpio-line-names:
370 gpio-reserved-ranges:
374 - if:
379 - qcom,pm8941-gpio
382 gpio-line-names:
385 gpio-reserved-ranges:
389 - if:
394 - qcom,pm8917-gpio
397 gpio-line-names:
400 gpio-reserved-ranges:
404 - if:
409 - qcom,pm8058-gpio
410 - qcom,pm8921-gpio
413 gpio-line-names:
416 gpio-reserved-ranges:
421 '-state$':
423 - $ref: "#/$defs/qcom-pmic-gpio-state"
424 - patternProperties:
425 "(pinconf|-pins)$":
426 $ref: "#/$defs/qcom-pmic-gpio-state"
429 "-hog(-[0-9]+)?$":
432 - gpio-hog
435 qcom-pmic-gpio-state:
438 - $ref: pinmux-node.yaml
439 - $ref: pincfg-node.yaml
443 List of gpio pins affected by the properties specified in
445 - gpio1-gpio9 for pm6125
446 - gpio1-gpio10 for pm6150
447 - gpio1-gpio12 for pm6150l
448 - gpio1-gpio9 for pm6350
449 - gpio1-gpio9 for pm6450
450 - gpio1-gpio12 for pm7250b
451 - gpio1-gpio10 for pm7325
452 - gpio1-gpio8 for pm7550ba
453 - gpio1-gpio4 for pm8005
454 - gpio1-gpio6 for pm8018
455 - gpio1-gpio12 for pm8038
456 - gpio1-gpio40 for pm8058
457 - gpio1-gpio10 for pm8150 (holes on gpio2, gpio5,
459 - gpio1-gpio12 for pm8150b (holes on gpio3, gpio4
461 - gpio1-gpio12 for pm8150l (hole on gpio7)
462 - gpio1-gpio4 for pm8916
463 - gpio1-gpio10 for pm8350
464 - gpio1-gpio8 for pm8350b
465 - gpio1-gpio9 for pm8350c
466 - gpio1-gpio4 for pm8450
467 - gpio1-gpio12 for pm8550
468 - gpio1-gpio12 for pm8550b
469 - gpio1-gpio8 for pm8550ve
470 - gpio1-gpio6 for pm8550vs
471 - gpio1-gpio38 for pm8917
472 - gpio1-gpio44 for pm8921
473 - gpio1-gpio8 for pm8937 (hole on gpio3, gpio4 and gpio6)
474 - gpio1-gpio36 for pm8941
475 - gpio1-gpio8 for pm8950 (hole on gpio3)
476 - gpio1-gpio8 for pm8953 (hole on gpio3 and gpio6)
477 - gpio1-gpio22 for pm8994
478 - gpio1-gpio26 for pm8998
479 - gpio1-gpio22 for pma8084
480 - gpio1-gpio4 for pmd8028
481 - gpio1-gpio8 for pmi632
482 - gpio1-gpio2 for pmi8950
483 - gpio1-gpio10 for pmi8994
484 - gpio1-gpio18 for pmih0108
485 - gpio1-gpio4 for pmk8350
486 - gpio1-gpio6 for pmk8550
487 - gpio1-gpio10 for pmm8155au
488 - gpio1-gpio12 for pmm8654au
489 - gpio1-gpio12 for pmp8074 (holes on gpio1 and gpio12)
490 - gpio1-gpio4 for pmr735a
491 - gpio1-gpio4 for pmr735b
492 - gpio1-gpio2 for pmr735d
493 - gpio1-gpio12 for pms405 (holes on gpio1, gpio9
495 - gpio1-gpio11 for pmx55 (holes on gpio3, gpio7, gpio10
497 - gpio1-gpio16 for pmx65
498 - gpio1-gpio16 for pmx75
499 - gpio1-gpio12 for pmxr2230
502 pattern: "^gpio([0-9]+)$"
506 - enum:
507 - normal
508 - paired
509 - func1
510 - func2
511 - dtest1
512 - dtest2
513 - dtest3
514 - dtest4
515 - func3 # supported by LV/MV GPIO subtypes
516 - func4 # supported by LV/MV GPIO subtypes
518 bias-disable: true
519 bias-pull-down: true
520 bias-pull-up: true
522 qcom,pull-up-strength:
527 <dt-bindings/pinctrl/qcom,pmic-gpio.h>
532 bias-high-impedance: true
533 input-enable: true
534 input-disable: true
535 output-high: true
536 output-low: true
537 output-enable: true
538 output-disable: true
539 power-source: true
541 qcom,drive-strength:
546 <dt-bindings/pinctrl/qcom,pmic-gpio.h>
549 drive-push-pull: true
550 drive-open-drain: true
551 drive-open-source: true
553 qcom,analog-pass:
557 analog-pass-through mode.
559 qcom,atest:
562 Selects ATEST rail to route to GPIO when it's
563 configured in analog-pass-through mode.
566 qcom,dtest-buffer:
569 Selects DTEST rail to route to GPIO when it's
574 - pins
575 - function
580 - |
581 #include <dt-bindings/gpio/gpio.h>
582 #include <dt-bindings/pinctrl/qcom,pmic-gpio.h>
584 pm8921_gpio: gpio@150 {
585 compatible = "qcom,pm8921-gpio", "qcom,ssbi-gpio";
587 interrupt-controller;
588 #interrupt-cells = <2>;
589 gpio-controller;
590 gpio-ranges = <&pm8921_gpio 0 0 44>;
591 #gpio-cells = <2>;
593 pm8921_gpio_keys: gpio-keys-state {
594 volume-keys-pins {
598 input-enable;
599 bias-pull-up;
600 drive-push-pull;
601 qcom,drive-strength = <PMIC_GPIO_STRENGTH_NO>;
602 power-source = <PM8921_GPIO_S4>;
606 otg-hog {
607 gpio-hog;
609 output-high;
610 line-name = "otg-gpio";