162306a36Sopenharmony_ci# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
262306a36Sopenharmony_ci%YAML 1.2
362306a36Sopenharmony_ci---
462306a36Sopenharmony_ci$id: http://devicetree.org/schemas/pinctrl/brcm,bcm4908-pinctrl.yaml#
562306a36Sopenharmony_ci$schema: http://devicetree.org/meta-schemas/core.yaml#
662306a36Sopenharmony_ci
762306a36Sopenharmony_cititle: Broadcom BCM4908 pin controller
862306a36Sopenharmony_ci
962306a36Sopenharmony_cimaintainers:
1062306a36Sopenharmony_ci  - Rafał Miłecki <rafal@milecki.pl>
1162306a36Sopenharmony_ci
1262306a36Sopenharmony_cidescription:
1362306a36Sopenharmony_ci  Binding for pin controller present on BCM4908 family SoCs.
1462306a36Sopenharmony_ci
1562306a36Sopenharmony_ciproperties:
1662306a36Sopenharmony_ci  compatible:
1762306a36Sopenharmony_ci    const: brcm,bcm4908-pinctrl
1862306a36Sopenharmony_ci
1962306a36Sopenharmony_ci  reg:
2062306a36Sopenharmony_ci    maxItems: 1
2162306a36Sopenharmony_ci
2262306a36Sopenharmony_cipatternProperties:
2362306a36Sopenharmony_ci  '-pins$':
2462306a36Sopenharmony_ci    type: object
2562306a36Sopenharmony_ci    $ref: pinmux-node.yaml#
2662306a36Sopenharmony_ci    additionalProperties: false
2762306a36Sopenharmony_ci
2862306a36Sopenharmony_ci    properties:
2962306a36Sopenharmony_ci      function:
3062306a36Sopenharmony_ci        enum: [ led_0, led_1, led_2, led_3, led_4, led_5, led_6, led_7, led_8,
3162306a36Sopenharmony_ci                led_9, led_10, led_11, led_12, led_13, led_14, led_15, led_16,
3262306a36Sopenharmony_ci                led_17, led_18, led_19, led_20, led_21, led_22, led_23, led_24,
3362306a36Sopenharmony_ci                led_25, led_26, led_27, led_28, led_29, led_30, led_31,
3462306a36Sopenharmony_ci                hs_uart, i2c, i2s, nand_ctrl, nand_data, emmc_ctrl, usb0_pwr,
3562306a36Sopenharmony_ci                usb1_pwr ]
3662306a36Sopenharmony_ci
3762306a36Sopenharmony_ci      groups:
3862306a36Sopenharmony_ci        minItems: 1
3962306a36Sopenharmony_ci        maxItems: 2
4062306a36Sopenharmony_ci        items:
4162306a36Sopenharmony_ci          enum: [ led_0_grp_a, led_1_grp_a, led_2_grp_a, led_3_grp_a,
4262306a36Sopenharmony_ci                  led_4_grp_a, led_5_grp_a, led_6_grp_a, led_7_grp_a,
4362306a36Sopenharmony_ci                  led_8_grp_a, led_9_grp_a, led_10_grp_a, led_10_grp_b,
4462306a36Sopenharmony_ci                  led_11_grp_a, led_11_grp_b, led_12_grp_a, led_12_grp_b,
4562306a36Sopenharmony_ci                  led_13_grp_a, led_13_grp_b, led_14_grp_a, led_15_grp_a,
4662306a36Sopenharmony_ci                  led_16_grp_a, led_17_grp_a, led_18_grp_a, led_19_grp_a,
4762306a36Sopenharmony_ci                  led_20_grp_a, led_21_grp_a, led_22_grp_a, led_23_grp_a,
4862306a36Sopenharmony_ci                  led_24_grp_a, led_25_grp_a, led_26_grp_a, led_27_grp_a,
4962306a36Sopenharmony_ci                  led_28_grp_a, led_29_grp_a, led_30_grp_a, led_31_grp_a,
5062306a36Sopenharmony_ci                  led_31_grp_b, hs_uart_grp, i2c_grp_a, i2c_grp_b, i2s_grp,
5162306a36Sopenharmony_ci                  nand_ctrl_grp, nand_data_grp, emmc_ctrl_grp, usb0_pwr_grp,
5262306a36Sopenharmony_ci                  usb1_pwr_grp ]
5362306a36Sopenharmony_ci
5462306a36Sopenharmony_ciallOf:
5562306a36Sopenharmony_ci  - $ref: pinctrl.yaml#
5662306a36Sopenharmony_ci
5762306a36Sopenharmony_cirequired:
5862306a36Sopenharmony_ci  - compatible
5962306a36Sopenharmony_ci  - reg
6062306a36Sopenharmony_ci
6162306a36Sopenharmony_ciunevaluatedProperties: false
6262306a36Sopenharmony_ci
6362306a36Sopenharmony_ciexamples:
6462306a36Sopenharmony_ci  - |
6562306a36Sopenharmony_ci    pinctrl@ff800560 {
6662306a36Sopenharmony_ci        compatible = "brcm,bcm4908-pinctrl";
6762306a36Sopenharmony_ci        reg = <0xff800560 0x10>;
6862306a36Sopenharmony_ci
6962306a36Sopenharmony_ci        led_0-a-pins {
7062306a36Sopenharmony_ci            function = "led_0";
7162306a36Sopenharmony_ci            groups = "led_0_grp_a";
7262306a36Sopenharmony_ci        };
7362306a36Sopenharmony_ci    };
74