blob: b425483501886ae92cc03cae6646c7d58eaac90c [file] [log] [blame]
Rahul Tanwar0434cd22019-12-18 14:20:24 +08001# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2%YAML 1.2
3---
Linus Walleij4784adc2020-01-13 22:26:29 +01004$id: http://devicetree.org/schemas/pinctrl/intel,lgm-io.yaml#
Rahul Tanwar0434cd22019-12-18 14:20:24 +08005$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: Intel Lightning Mountain SoC pinmux & GPIO controller binding
8
9maintainers:
10 - Rahul Tanwar <rahul.tanwar@linux.intel.com>
11
12description: |
13 Pinmux & GPIO controller controls pin multiplexing & configuration including
14 GPIO function selection & GPIO attributes configuration.
15
Rahul Tanwar0434cd22019-12-18 14:20:24 +080016properties:
17 compatible:
18 const: intel,lgm-io
19
20 reg:
21 maxItems: 1
22
23# Client device subnode's properties
24patternProperties:
25 '-pins$':
26 type: object
27 description:
28 Pinctrl node's client devices use subnodes for desired pin configuration.
29 Client device subnodes use below standard properties.
Rob Herring3d21a462020-04-15 19:55:49 -050030 $ref: pinmux-node.yaml#
Rahul Tanwar0434cd22019-12-18 14:20:24 +080031
32 properties:
33 function: true
Linus Walleij4784adc2020-01-13 22:26:29 +010034 groups: true
Rahul Tanwar0434cd22019-12-18 14:20:24 +080035 pins: true
36 pinmux: true
37 bias-pull-up: true
38 bias-pull-down: true
39 drive-strength: true
40 slew-rate: true
41 drive-open-drain: true
42 output-enable: true
43
44 required:
45 - function
Linus Walleij4784adc2020-01-13 22:26:29 +010046 - groups
Rahul Tanwar0434cd22019-12-18 14:20:24 +080047
48 additionalProperties: false
49
Rafał Miłeckic09acbc2021-12-02 07:32:16 +010050allOf:
51 - $ref: "pinctrl.yaml#"
52
Rahul Tanwar0434cd22019-12-18 14:20:24 +080053required:
54 - compatible
55 - reg
56
57additionalProperties: false
58
59examples:
60 # Pinmux controller node
61 - |
62 pinctrl: pinctrl@e2880000 {
63 compatible = "intel,lgm-io";
64 reg = <0xe2880000 0x100000>;
65
66 uart0-pins {
67 pins = <64>, /* UART_RX0 */
68 <65>; /* UART_TX0 */
69 function = "CONSOLE_UART0";
70 pinmux = <1>,
71 <1>;
72 groups = "CONSOLE_UART0";
73 };
74 };
75
76...