hc
2023-10-25 6c2073b7aa40e29d0eca7d571dd7bc590c7ecaa7
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
Pincontrol driver for MAX77620 Power management IC from Maxim Semiconductor.
 
Device has 8 GPIO pins which can be configured as GPIO as well as the
special IO functions.
 
Please refer file <devicetree/bindings/pinctrl/pinctrl-bindings.txt>
for details of the common pinctrl bindings used by client devices,
including the meaning of the phrase "pin configuration node".
 
Optional Pinmux properties:
--------------------------
Following properties are required if default setting of pins are required
at boot.
- pinctrl-names: A pinctrl state named per <pinctrl-bindings.txt>.
- pinctrl[0...n]: Properties to contain the phandle for pinctrl states per
       <pinctrl-bindings.txt>.
 
The pin configurations are defined as child of the pinctrl states node. Each
sub-node have following properties:
 
Required properties:
------------------
- pins: List of pins. Valid values of pins properties are:
             gpio0, gpio1, gpio2, gpio3, gpio4, gpio5, gpio6, gpio7.
 
Optional properties:
-------------------
Following are optional properties defined as pinmux DT binding document
<pinctrl-bindings.txt>. Absence of properties will leave the configuration
on default.
   function,
   drive-push-pull,
   drive-open-drain,
   bias-pull-up,
   bias-pull-down.
 
Valid values for function properties are:
   gpio, lpm-control-in, fps-out, 32k-out, sd0-dvs-in, sd1-dvs-in,
   reference-out
 
Theres is also customised properties for the GPIO1, GPIO2 and GPIO3. These
customised properties are required to configure FPS configuration parameters
of these GPIOs. Please refer <devicetree/bindings/mfd/max77620.txt> for more
detail of Flexible Power Sequence (FPS).
 
- maxim,active-fps-source:        FPS source for the GPIOs to get
                   enabled/disabled when system is in
                   active state.  Valid values are:
                   - MAX77620_FPS_SRC_0,
                       FPS source is FPS0.
                   - MAX77620_FPS_SRC_1,
                       FPS source is FPS1
                   - MAX77620_FPS_SRC_2 and
                       FPS source is FPS2
                   - MAX77620_FPS_SRC_NONE.
                       GPIO is not controlled
                       by FPS events and it gets
                       enabled/disabled by register
                       access.
                   Absence of this property will leave
                   the FPS configuration register for that
                   GPIO to default configuration.
 
- maxim,active-fps-power-up-slot:    Sequencing event slot number on which
                   the GPIO get enabled when
                   master FPS input event set to HIGH.
                   Valid values are 0 to 7.
                   This is applicable if FPS source is
                   selected as FPS0, FPS1 or FPS2.
 
- maxim,active-fps-power-down-slot:    Sequencing event slot number on which
                   the GPIO get disabled when master
                   FPS input event set to LOW.
                   Valid values are 0 to 7.
                   This is applicable if FPS source is
                   selected as FPS0, FPS1 or FPS2.
 
- maxim,suspend-fps-source:        This is same as property
                   "maxim,active-fps-source" but value
                   get configured when system enters in
                   to suspend state.
 
- maxim,suspend-fps-power-up-slot:    This is same as property
                   "maxim,active-fps-power-up-slot" but
                   this value get configured into FPS
                   configuration register when system
                   enters into suspend.
                   This is applicable if suspend state
                   FPS source is selected as FPS0, FPS1 or
 
- maxim,suspend-fps-power-down-slot:    This is same as property
                   "maxim,active-fps-power-down-slot" but
                   this value get configured into FPS
                   configuration register when system
                   enters into suspend.
                   This is applicable if suspend state
                   FPS source is selected as FPS0, FPS1 or
                   FPS2.
 
Example:
--------
#include <dt-bindings/mfd/max77620.h>
...
max77620@3c {
 
   pinctrl-names = "default";
   pinctrl-0 = <&spmic_default>;
 
   spmic_default: pinmux@0 {
       pin_gpio0 {
           pins = "gpio0";
           function = "gpio";
       };
 
       pin_gpio1 {
           pins = "gpio1";
           function = "fps-out";
           maxim,active-fps-source = <MAX77620_FPS_SRC_0>;
       };
 
       pin_gpio2 {
           pins = "gpio2";
           function = "fps-out";
           maxim,active-fps-source = <MAX77620_FPS_SRC_1>;
       };
   };
};