summaryrefslogtreecommitdiff
path: root/Documentation/devicetree/bindings/pinctrl/pinctrl-rk805.txt
blob: 939cb5b6ffeacc195f639ba5204bc98b5dbf1cbb (plain)
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
Pincontrol driver for RK805 Power management IC.

RK805 has 2 pins which can be configured as GPIO output only.

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:
------------------
- #gpio-cells: Should be two. The first cell is the pin number and the
  second is the GPIO flags.

- gpio-controller: Marks the device node as a GPIO controller.

- pins: List of pins. Valid values of pins properties are: gpio0, gpio1.

First 2 properties must be added in the RK805 PMIC node, documented in
Documentation/devicetree/bindings/mfd/rockchip,rk808.yaml

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,
	output-low,
	output-high.

Valid values for function properties are: gpio.

Theres is also not customised properties for any GPIO.

Example:
--------
rk805: rk805@18 {
	compatible = "rockchip,rk805";
	...
	gpio-controller;
	#gpio-cells = <2>;

	pinctrl-names = "default";
	pinctrl-0 = <&pmic_int_l>, <&rk805_default>;

	rk805_default: pinmux {
		gpio01 {
			pins = "gpio0", "gpio1";
			function = "gpio";
			output-high;
		};
	};
};