xref: /linux/Documentation/devicetree/bindings/pinctrl/nvidia,tegra264-pinmux-aon.yaml (revision 53c7db5c1916afcecc8683ae01ff8415c708a883)
1*30a9d516SPrathamesh Shete# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2*30a9d516SPrathamesh Shete%YAML 1.2
3*30a9d516SPrathamesh Shete---
4*30a9d516SPrathamesh Shete$id: http://devicetree.org/schemas/pinctrl/nvidia,tegra264-pinmux-aon.yaml#
5*30a9d516SPrathamesh Shete$schema: http://devicetree.org/meta-schemas/core.yaml#
6*30a9d516SPrathamesh Shete
7*30a9d516SPrathamesh Shetetitle: NVIDIA Tegra264 AON Pinmux Controller
8*30a9d516SPrathamesh Shete
9*30a9d516SPrathamesh Shetemaintainers:
10*30a9d516SPrathamesh Shete  - Thierry Reding <thierry.reding@gmail.com>
11*30a9d516SPrathamesh Shete  - Jon Hunter <jonathanh@nvidia.com>
12*30a9d516SPrathamesh Shete
13*30a9d516SPrathamesh Sheteproperties:
14*30a9d516SPrathamesh Shete  compatible:
15*30a9d516SPrathamesh Shete    const: nvidia,tegra264-pinmux-aon
16*30a9d516SPrathamesh Shete
17*30a9d516SPrathamesh Shete  reg:
18*30a9d516SPrathamesh Shete    maxItems: 1
19*30a9d516SPrathamesh Shete
20*30a9d516SPrathamesh ShetepatternProperties:
21*30a9d516SPrathamesh Shete  "^pinmux(-[a-z0-9-]+)?$":
22*30a9d516SPrathamesh Shete    type: object
23*30a9d516SPrathamesh Shete
24*30a9d516SPrathamesh Shete    # pin groups
25*30a9d516SPrathamesh Shete    additionalProperties:
26*30a9d516SPrathamesh Shete      $ref: nvidia,tegra264-pinmux-common.yaml
27*30a9d516SPrathamesh Shete
28*30a9d516SPrathamesh Shete      properties:
29*30a9d516SPrathamesh Shete        nvidia,pins:
30*30a9d516SPrathamesh Shete          items:
31*30a9d516SPrathamesh Shete            enum: [ soc_gpio00_paa0, vcomp_alert_paa1, ao_retention_n_paa2,
32*30a9d516SPrathamesh Shete                    batt_oc_paa3, bootv_ctl_n_paa4, power_on_paa5,
33*30a9d516SPrathamesh Shete                    hdmi_cec_paa6, soc_gpio07_paa7, soc_gpio08_pbb0,
34*30a9d516SPrathamesh Shete                    soc_gpio09_pbb1, gen2_i2c_scl_pcc0, gen2_i2c_sda_pcc1,
35*30a9d516SPrathamesh Shete                    gen3_i2c_scl_pcc2, gen3_i2c_sda_pcc3, gp_pwm4_pcc4,
36*30a9d516SPrathamesh Shete                    uart0_tx_pcc5, uart0_rx_pcc6, spi2_sck_pcc7,
37*30a9d516SPrathamesh Shete                    spi2_miso_pdd0, spi2_mosi_pdd1, spi2_cs0_n_pdd2,
38*30a9d516SPrathamesh Shete                    soc_gpio21_pdd3, soc_gpio22_pdd4, soc_gpio23_pdd5,
39*30a9d516SPrathamesh Shete                    soc_gpio24_pdd6, soc_gpio25_pdd7, soc_gpio26_pee0,
40*30a9d516SPrathamesh Shete                    soc_gpio27_pee1, soc_gpio28_pee2, soc_gpio29_pee3,
41*30a9d516SPrathamesh Shete                    drive_ao_retention_n_paa2, drive_batt_oc_paa3,
42*30a9d516SPrathamesh Shete                    drive_power_on_paa5, drive_vcomp_alert_paa1,
43*30a9d516SPrathamesh Shete                    drive_bootv_ctl_n_paa4, drive_soc_gpio00_paa0,
44*30a9d516SPrathamesh Shete                    drive_soc_gpio07_paa7, drive_soc_gpio08_pbb0,
45*30a9d516SPrathamesh Shete                    drive_soc_gpio09_pbb1, drive_hdmi_cec_paa6,
46*30a9d516SPrathamesh Shete                    drive_gen2_i2c_scl_pcc0, drive_gen2_i2c_sda_pcc1,
47*30a9d516SPrathamesh Shete                    drive_gen3_i2c_scl_pcc2, drive_gen3_i2c_sda_pcc3,
48*30a9d516SPrathamesh Shete                    drive_gp_pwm4_pcc4, drive_uart0_tx_pcc5,
49*30a9d516SPrathamesh Shete                    drive_uart0_rx_pcc6, drive_spi2_sck_pcc7,
50*30a9d516SPrathamesh Shete                    drive_spi2_miso_pdd0, drive_spi2_mosi_pdd1,
51*30a9d516SPrathamesh Shete                    drive_spi2_cs0_n_pdd2, drive_soc_gpio21_pdd3,
52*30a9d516SPrathamesh Shete                    drive_soc_gpio22_pdd4, drive_soc_gpio23_pdd5,
53*30a9d516SPrathamesh Shete                    drive_soc_gpio24_pdd6, drive_soc_gpio25_pdd7,
54*30a9d516SPrathamesh Shete                    drive_soc_gpio26_pee0, drive_soc_gpio27_pee1,
55*30a9d516SPrathamesh Shete                    drive_soc_gpio28_pee2, drive_soc_gpio29_pee3 ]
56*30a9d516SPrathamesh Shete
57*30a9d516SPrathamesh Sheterequired:
58*30a9d516SPrathamesh Shete  - compatible
59*30a9d516SPrathamesh Shete  - reg
60*30a9d516SPrathamesh Shete
61*30a9d516SPrathamesh SheteadditionalProperties: false
62*30a9d516SPrathamesh Shete
63*30a9d516SPrathamesh Sheteexamples:
64*30a9d516SPrathamesh Shete  - |
65*30a9d516SPrathamesh Shete    #include <dt-bindings/pinctrl/pinctrl-tegra.h>
66*30a9d516SPrathamesh Shete
67*30a9d516SPrathamesh Shete    pinmux@c7a2000 {
68*30a9d516SPrathamesh Shete        compatible = "nvidia,tegra264-pinmux-aon";
69*30a9d516SPrathamesh Shete        reg = <0xc7a2000 0x2000>;
70*30a9d516SPrathamesh Shete
71*30a9d516SPrathamesh Shete        pinctrl-names = "default";
72*30a9d516SPrathamesh Shete        pinctrl-0 = <&state_default>;
73*30a9d516SPrathamesh Shete
74*30a9d516SPrathamesh Shete        state_default: pinmux-default {
75*30a9d516SPrathamesh Shete            uart0 {
76*30a9d516SPrathamesh Shete                nvidia,pins = "uart0_tx_pcc5";
77*30a9d516SPrathamesh Shete                nvidia,function = "uarta_txd";
78*30a9d516SPrathamesh Shete            };
79*30a9d516SPrathamesh Shete        };
80*30a9d516SPrathamesh Shete    };
81