xref: /linux/Documentation/devicetree/bindings/pinctrl/ti,da850-pupd.yaml (revision cf9610f9116d55c5a66ef9f1faecacabd93a9322)
1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/pinctrl/ti,da850-pupd.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: Texas Instruments DA850/OMAP-L138/AM18x Pin Configuration
8
9maintainers:
10  - Eduard Bostina <egbostina@gmail.com>
11
12description:
13  These SoCs have a separate controller for setting bias (internal pullup/down).
14  Bias can only be selected for groups rather than individual pins.
15  The controller node also acts as a container for pin group configuration nodes.
16  The names of these groups are ignored.
17
18properties:
19  compatible:
20    const: ti,da850-pupd
21
22  reg:
23    maxItems: 1
24
25  pinctrl-0: true
26  pinctrl-names: true
27
28patternProperties:
29  "-groups$":
30    type: object
31    additionalProperties: false
32    patternProperties:
33      "^(disable|pull-(up|down))$":
34        $ref: /schemas/pinctrl/pincfg-node.yaml#
35        properties:
36          groups:
37            $ref: /schemas/types.yaml#/definitions/string-array
38            description: An array of strings containing the name of a pin group.
39            items:
40              pattern: "^cp([0-9]|[1-2][0-9]|3[0-1])$"
41          bias-disable: true
42          bias-pull-up: true
43          bias-pull-down: true
44        additionalProperties: false
45
46required:
47  - compatible
48  - reg
49
50additionalProperties: false
51
52examples:
53  - |
54    pinconf: pin-controller@22c00c {
55        compatible = "ti,da850-pupd";
56        reg = <0x22c00c 0x8>;
57        pinctrl-0 = <&pinconf_bias_groups>;
58        pinctrl-names = "default";
59
60        pinconf_bias_groups: bias-groups {
61            pull-up {
62                groups = "cp30", "cp31";
63                bias-pull-up;
64            };
65            pull-down {
66                groups = "cp29", "cp28";
67                bias-pull-down;
68            };
69            disable {
70                groups = "cp27", "cp26";
71                bias-disable;
72            };
73        };
74    };
75