xref: /openbmc/linux/Documentation/devicetree/bindings/pinctrl/nvidia,tegra194-pinmux.yaml (revision de1835e3b52540d34c926cf25eda4d6e051b01b6)
1*de1835e3SThierry Reding# SPDX-License-Identifier: (GPL-2.0+ OR BSD-2-Clause)
2*de1835e3SThierry Reding%YAML 1.2
3*de1835e3SThierry Reding---
4*de1835e3SThierry Reding$id: http://devicetree.org/schemas/pinctrl/nvidia,tegra194-pinmux.yaml#
5*de1835e3SThierry Reding$schema: http://devicetree.org/meta-schemas/core.yaml#
6*de1835e3SThierry Reding
7*de1835e3SThierry Redingtitle: NVIDIA Tegra194 Pinmux Controller
8*de1835e3SThierry Reding
9*de1835e3SThierry Redingmaintainers:
10*de1835e3SThierry Reding  - Thierry Reding <thierry.reding@gmail.com>
11*de1835e3SThierry Reding  - Jon Hunter <jonathanh@nvidia.com>
12*de1835e3SThierry Reding
13*de1835e3SThierry Redingproperties:
14*de1835e3SThierry Reding  compatible:
15*de1835e3SThierry Reding    const: nvidia,tegra194-pinmux
16*de1835e3SThierry Reding
17*de1835e3SThierry Reding  reg:
18*de1835e3SThierry Reding    items:
19*de1835e3SThierry Reding      - description: APB_MISC_GP_*_PADCTRL registers (pad control)
20*de1835e3SThierry Reding      - description: PINMUX_AUX_* registers (pinmux)
21*de1835e3SThierry Reding
22*de1835e3SThierry RedingpatternProperties:
23*de1835e3SThierry Reding  "^pinmux(-[a-z0-9-_]+)?$":
24*de1835e3SThierry Reding    type: object
25*de1835e3SThierry Reding    properties:
26*de1835e3SThierry Reding      phandle: true
27*de1835e3SThierry Reding
28*de1835e3SThierry Reding    # pin groups
29*de1835e3SThierry Reding    additionalProperties:
30*de1835e3SThierry Reding      $ref: nvidia,tegra-pinmux-common.yaml
31*de1835e3SThierry Reding      additionalProperties: false
32*de1835e3SThierry Reding      properties:
33*de1835e3SThierry Reding        nvidia,pins:
34*de1835e3SThierry Reding          description: An array of strings. Each string contains the name of a
35*de1835e3SThierry Reding            pin or group. Valid values for these names are listed below.
36*de1835e3SThierry Reding
37*de1835e3SThierry Reding            Note that the pex_l5_clkreq_n_pgg0 and pex_l5_rst_n_pgg1 pins are
38*de1835e3SThierry Reding            part of PCIE C5 power partition. Client devices must enable this
39*de1835e3SThierry Reding            partition before accessing the configuration for these pins.
40*de1835e3SThierry Reding          items:
41*de1835e3SThierry Reding            enum: [ pex_l5_clkreq_n_pgg0, pex_l5_rst_n_pgg1,
42*de1835e3SThierry Reding                    # drive groups
43*de1835e3SThierry Reding                    drive_pex_l5_clkreq_n_pgg0, drive_pex_l5_rst_n_pgg1 ]
44*de1835e3SThierry Reding
45*de1835e3SThierry Reding        nvidia,function:
46*de1835e3SThierry Reding          enum: [ pe5 ]
47*de1835e3SThierry Reding
48*de1835e3SThierry Reding        nvidia,pull: true
49*de1835e3SThierry Reding        nvidia,tristate: true
50*de1835e3SThierry Reding        nvidia,schmitt: true
51*de1835e3SThierry Reding        nvidia,enable-input: true
52*de1835e3SThierry Reding        nvidia,open-drain: true
53*de1835e3SThierry Reding        nvidia,lock: true
54*de1835e3SThierry Reding        nvidia,drive-type: true
55*de1835e3SThierry Reding        nvidia,io-hv: true
56*de1835e3SThierry Reding
57*de1835e3SThierry Reding      required:
58*de1835e3SThierry Reding        - nvidia,pins
59*de1835e3SThierry Reding
60*de1835e3SThierry RedingadditionalProperties: false
61*de1835e3SThierry Reding
62*de1835e3SThierry Redingrequired:
63*de1835e3SThierry Reding  - compatible
64*de1835e3SThierry Reding  - reg
65*de1835e3SThierry Reding
66*de1835e3SThierry Redingexamples:
67*de1835e3SThierry Reding  - |
68*de1835e3SThierry Reding    #include <dt-bindings/pinctrl/pinctrl-tegra.h>
69*de1835e3SThierry Reding
70*de1835e3SThierry Reding    pinmux@2430000 {
71*de1835e3SThierry Reding        compatible = "nvidia,tegra194-pinmux";
72*de1835e3SThierry Reding        reg = <0x2430000 0x17000>,
73*de1835e3SThierry Reding              <0xc300000 0x04000>;
74*de1835e3SThierry Reding
75*de1835e3SThierry Reding        pinctrl-names = "pex_rst";
76*de1835e3SThierry Reding        pinctrl-0 = <&pex_rst_c5_out_state>;
77*de1835e3SThierry Reding
78*de1835e3SThierry Reding        pex_rst_c5_out_state: pinmux-pex-rst-c5-out {
79*de1835e3SThierry Reding            pex_rst {
80*de1835e3SThierry Reding                nvidia,pins = "pex_l5_rst_n_pgg1";
81*de1835e3SThierry Reding                nvidia,schmitt = <TEGRA_PIN_DISABLE>;
82*de1835e3SThierry Reding                nvidia,enable-input = <TEGRA_PIN_DISABLE>;
83*de1835e3SThierry Reding                nvidia,io-hv = <TEGRA_PIN_ENABLE>;
84*de1835e3SThierry Reding                nvidia,tristate = <TEGRA_PIN_DISABLE>;
85*de1835e3SThierry Reding                nvidia,pull = <TEGRA_PIN_PULL_NONE>;
86*de1835e3SThierry Reding            };
87*de1835e3SThierry Reding        };
88*de1835e3SThierry Reding    };
89*de1835e3SThierry Reding...
90