# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause

%YAML 1.2
---
$id: http://devicetree.org/schemas/pinctrl/socionext,uniphier-pinctrl.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: UniPhier SoCs pin controller

maintainers:
  - Masahiro Yamada <yamada.masahiro@socionext.com>

properties:
  compatible:
    enum:
      - socionext,uniphier-ld4-pinctrl
      - socionext,uniphier-pro4-pinctrl
      - socionext,uniphier-sld8-pinctrl
      - socionext,uniphier-pro5-pinctrl
      - socionext,uniphier-pxs2-pinctrl
      - socionext,uniphier-ld6b-pinctrl
      - socionext,uniphier-ld11-pinctrl
      - socionext,uniphier-ld20-pinctrl
      - socionext,uniphier-pxs3-pinctrl
      - socionext,uniphier-nx1-pinctrl

additionalProperties:
  type: object

  allOf:
    - $ref: pincfg-node.yaml#
    - $ref: pinmux-node.yaml#

  properties:
    function: true
    groups: true
    pins: true
    bias-pull-up: true
    bias-pull-down: true
    bias-pull-pin-default: true
    drive-strength: true

  additionalProperties:
    type: object

    allOf:
      - $ref: pincfg-node.yaml#
      - $ref: pinmux-node.yaml#

    properties:
      function: true
      groups: true
      pins: true
      bias-pull-up: true
      bias-pull-down: true
      bias-pull-pin-default: true
      drive-strength: true

    unevaluatedProperties: false

allOf:
  - $ref: pinctrl.yaml#

required:
  - compatible

examples:
  - |
    // The UniPhier pinctrl should be a subnode of a "syscon" compatible node.

    pinctrl {
        compatible = "socionext,uniphier-ld20-pinctrl";

        pinctrl_ether_rgmii: ether-rgmii {
            groups = "ether_rgmii";
            function = "ether_rgmii";

            tx {
                pins = "RGMII_TXCLK", "RGMII_TXD0", "RGMII_TXD1",
                       "RGMII_TXD2", "RGMII_TXD3", "RGMII_TXCTL";
                drive-strength = <9>;
            };
        };
    };
