xref: /freebsd/sys/contrib/device-tree/Bindings/pinctrl/brcm,bcm4908-pinctrl.yaml (revision c9ccf3a32da427475985b85d7df023ccfb138c27)
1*c9ccf3a3SEmmanuel Vadot# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
2*c9ccf3a3SEmmanuel Vadot%YAML 1.2
3*c9ccf3a3SEmmanuel Vadot---
4*c9ccf3a3SEmmanuel Vadot$id: http://devicetree.org/schemas/pinctrl/brcm,bcm4908-pinctrl.yaml#
5*c9ccf3a3SEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml#
6*c9ccf3a3SEmmanuel Vadot
7*c9ccf3a3SEmmanuel Vadottitle: Broadcom BCM4908 pin controller
8*c9ccf3a3SEmmanuel Vadot
9*c9ccf3a3SEmmanuel Vadotmaintainers:
10*c9ccf3a3SEmmanuel Vadot  - Rafał Miłecki <rafal@milecki.pl>
11*c9ccf3a3SEmmanuel Vadot
12*c9ccf3a3SEmmanuel Vadotdescription:
13*c9ccf3a3SEmmanuel Vadot  Binding for pin controller present on BCM4908 family SoCs.
14*c9ccf3a3SEmmanuel Vadot
15*c9ccf3a3SEmmanuel Vadotproperties:
16*c9ccf3a3SEmmanuel Vadot  compatible:
17*c9ccf3a3SEmmanuel Vadot    const: brcm,bcm4908-pinctrl
18*c9ccf3a3SEmmanuel Vadot
19*c9ccf3a3SEmmanuel Vadot  reg:
20*c9ccf3a3SEmmanuel Vadot    maxItems: 1
21*c9ccf3a3SEmmanuel Vadot
22*c9ccf3a3SEmmanuel VadotpatternProperties:
23*c9ccf3a3SEmmanuel Vadot  '-pins$':
24*c9ccf3a3SEmmanuel Vadot    type: object
25*c9ccf3a3SEmmanuel Vadot    $ref: pinmux-node.yaml#
26*c9ccf3a3SEmmanuel Vadot
27*c9ccf3a3SEmmanuel Vadot    properties:
28*c9ccf3a3SEmmanuel Vadot      function:
29*c9ccf3a3SEmmanuel Vadot        enum: [ led_0, led_1, led_2, led_3, led_4, led_5, led_6, led_7, led_8,
30*c9ccf3a3SEmmanuel Vadot                led_9, led_10, led_11, led_12, led_13, led_14, led_15, led_16,
31*c9ccf3a3SEmmanuel Vadot                led_17, led_18, led_19, led_20, led_21, led_22, led_23, led_24,
32*c9ccf3a3SEmmanuel Vadot                led_25, led_26, led_27, led_28, led_29, led_30, led_31,
33*c9ccf3a3SEmmanuel Vadot                hs_uart, i2c, i2s, nand_ctrl, nand_data, emmc_ctrl, usb0_pwr,
34*c9ccf3a3SEmmanuel Vadot                usb1_pwr ]
35*c9ccf3a3SEmmanuel Vadot
36*c9ccf3a3SEmmanuel Vadot      groups:
37*c9ccf3a3SEmmanuel Vadot        minItems: 1
38*c9ccf3a3SEmmanuel Vadot        maxItems: 2
39*c9ccf3a3SEmmanuel Vadot        items:
40*c9ccf3a3SEmmanuel Vadot          enum: [ led_0_grp_a, led_1_grp_a, led_2_grp_a, led_3_grp_a,
41*c9ccf3a3SEmmanuel Vadot                  led_4_grp_a, led_5_grp_a, led_6_grp_a, led_7_grp_a,
42*c9ccf3a3SEmmanuel Vadot                  led_8_grp_a, led_9_grp_a, led_10_grp_a, led_10_grp_b,
43*c9ccf3a3SEmmanuel Vadot                  led_11_grp_a, led_11_grp_b, led_12_grp_a, led_12_grp_b,
44*c9ccf3a3SEmmanuel Vadot                  led_13_grp_a, led_13_grp_b, led_14_grp_a, led_15_grp_a,
45*c9ccf3a3SEmmanuel Vadot                  led_16_grp_a, led_17_grp_a, led_18_grp_a, led_19_grp_a,
46*c9ccf3a3SEmmanuel Vadot                  led_20_grp_a, led_21_grp_a, led_22_grp_a, led_23_grp_a,
47*c9ccf3a3SEmmanuel Vadot                  led_24_grp_a, led_25_grp_a, led_26_grp_a, led_27_grp_a,
48*c9ccf3a3SEmmanuel Vadot                  led_28_grp_a, led_29_grp_a, led_30_grp_a, led_31_grp_a,
49*c9ccf3a3SEmmanuel Vadot                  led_31_grp_b, hs_uart_grp, i2c_grp_a, i2c_grp_b, i2s_grp,
50*c9ccf3a3SEmmanuel Vadot                  nand_ctrl_grp, nand_data_grp, emmc_ctrl_grp, usb0_pwr_grp,
51*c9ccf3a3SEmmanuel Vadot                  usb1_pwr_grp ]
52*c9ccf3a3SEmmanuel Vadot
53*c9ccf3a3SEmmanuel VadotallOf:
54*c9ccf3a3SEmmanuel Vadot  - $ref: pinctrl.yaml#
55*c9ccf3a3SEmmanuel Vadot
56*c9ccf3a3SEmmanuel Vadotrequired:
57*c9ccf3a3SEmmanuel Vadot  - compatible
58*c9ccf3a3SEmmanuel Vadot  - reg
59*c9ccf3a3SEmmanuel Vadot
60*c9ccf3a3SEmmanuel VadotunevaluatedProperties: false
61*c9ccf3a3SEmmanuel Vadot
62*c9ccf3a3SEmmanuel Vadotexamples:
63*c9ccf3a3SEmmanuel Vadot  - |
64*c9ccf3a3SEmmanuel Vadot    pinctrl@ff800560 {
65*c9ccf3a3SEmmanuel Vadot        compatible = "brcm,bcm4908-pinctrl";
66*c9ccf3a3SEmmanuel Vadot        reg = <0xff800560 0x10>;
67*c9ccf3a3SEmmanuel Vadot
68*c9ccf3a3SEmmanuel Vadot        led_0-a-pins {
69*c9ccf3a3SEmmanuel Vadot            function = "led_0";
70*c9ccf3a3SEmmanuel Vadot            groups = "led_0_grp_a";
71*c9ccf3a3SEmmanuel Vadot        };
72*c9ccf3a3SEmmanuel Vadot    };
73