91 lines · yaml
1# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause2%YAML 1.23---4$id: http://devicetree.org/schemas/pinctrl/brcm,ns-pinmux.yaml#5$schema: http://devicetree.org/meta-schemas/core.yaml#6 7title: Broadcom Northstar pins mux controller8 9maintainers:10 - Rafał Miłecki <rafal@milecki.pl>11 12description:13 Some of Northstar SoCs's pins can be used for various purposes thanks to the14 mux controller. This binding allows describing mux controller and listing15 available functions. They can be referenced later by other bindings to let16 system configure controller correctly.17 18 A list of pins varies across chipsets so few bindings are available.19 20properties:21 compatible:22 enum:23 - brcm,bcm4708-pinmux24 - brcm,bcm4709-pinmux25 - brcm,bcm53012-pinmux26 27 reg:28 maxItems: 129 30 reg-names:31 const: cru_gpio_control32 33patternProperties:34 '-pins$':35 type: object36 description: pin node37 $ref: pinmux-node.yaml#38 39 properties:40 function:41 enum: [ spi, i2c, pwm, uart1, mdio, uart2, sdio ]42 groups:43 minItems: 144 maxItems: 445 items:46 enum: [ spi_grp, i2c_grp, pwm0_grp, pwm1_grp, pwm2_grp, pwm3_grp,47 uart1_grp, mdio_grp, uart2_grp, sdio_pwr_grp, sdio_1p8v_grp ]48 49 required:50 - function51 - groups52 53 additionalProperties: false54 55allOf:56 - $ref: pinctrl.yaml#57 - if:58 properties:59 compatible:60 contains:61 const: brcm,bcm4708-pinmux62 then:63 patternProperties:64 '-pins$':65 properties:66 function:67 enum: [ spi, i2c, pwm, uart1 ]68 groups:69 items:70 enum: [ spi_grp, i2c_grp, pwm0_grp, pwm1_grp, pwm2_grp, pwm3_grp,71 uart1_grp ]72 73required:74 - reg75 - reg-names76 77additionalProperties: false78 79examples:80 - |81 pinctrl@1800c1c0 {82 compatible = "brcm,bcm4708-pinmux";83 reg = <0x1800c1c0 0x24>;84 reg-names = "cru_gpio_control";85 86 spi-pins {87 function = "spi";88 groups = "spi_grp";89 };90 };91