Documentation / devicetree / bindings / pinctrl / ti,da850-pupd.yaml


Based on kernel version 7.3. Page generated on 2026-10-19 13:17 EDT.

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
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/pinctrl/ti,da850-pupd.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Texas Instruments DA850/OMAP-L138/AM18x Pin Configuration

maintainers:
  - Eduard Bostina <egbostina@gmail.com>

description:
  These SoCs have a separate controller for setting bias (internal pullup/down).
  Bias can only be selected for groups rather than individual pins.
  The controller node also acts as a container for pin group configuration nodes.
  The names of these groups are ignored.

properties:
  compatible:
    const: ti,da850-pupd

  reg:
    maxItems: 1

  pinctrl-0: true
  pinctrl-names: true

patternProperties:
  "-groups$":
    type: object
    additionalProperties: false
    patternProperties:
      "^(disable|pull-(up|down))$":
        $ref: /schemas/pinctrl/pincfg-node.yaml#
        properties:
          groups:
            $ref: /schemas/types.yaml#/definitions/string-array
            description: An array of strings containing the name of a pin group.
            items:
              pattern: "^cp([0-9]|[1-2][0-9]|3[0-1])$"
          bias-disable: true
          bias-pull-up: true
          bias-pull-down: true
        additionalProperties: false

required:
  - compatible
  - reg

additionalProperties: false

examples:
  - |
    pinconf: pin-controller@22c00c {
        compatible = "ti,da850-pupd";
        reg = <0x22c00c 0x8>;
        pinctrl-0 = <&pinconf_bias_groups>;
        pinctrl-names = "default";

        pinconf_bias_groups: bias-groups {
            pull-up {
                groups = "cp30", "cp31";
                bias-pull-up;
            };
            pull-down {
                groups = "cp29", "cp28";
                bias-pull-down;
            };
            disable {
                groups = "cp27", "cp26";
                bias-disable;
            };
        };
    };