15956d97fSEmmanuel Vadot# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause 25956d97fSEmmanuel Vadot%YAML 1.2 35956d97fSEmmanuel Vadot--- 45956d97fSEmmanuel Vadot$id: http://devicetree.org/schemas/pinctrl/brcm,ns-pinmux.yaml# 55956d97fSEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml# 65956d97fSEmmanuel Vadot 75956d97fSEmmanuel Vadottitle: Broadcom Northstar pins mux controller 85956d97fSEmmanuel Vadot 95956d97fSEmmanuel Vadotmaintainers: 105956d97fSEmmanuel Vadot - Rafał Miłecki <rafal@milecki.pl> 115956d97fSEmmanuel Vadot 125956d97fSEmmanuel Vadotdescription: 135956d97fSEmmanuel Vadot Some of Northstar SoCs's pins can be used for various purposes thanks to the 145956d97fSEmmanuel Vadot mux controller. This binding allows describing mux controller and listing 155956d97fSEmmanuel Vadot available functions. They can be referenced later by other bindings to let 165956d97fSEmmanuel Vadot system configure controller correctly. 175956d97fSEmmanuel Vadot 185956d97fSEmmanuel Vadot A list of pins varies across chipsets so few bindings are available. 195956d97fSEmmanuel Vadot 205956d97fSEmmanuel Vadotproperties: 215956d97fSEmmanuel Vadot compatible: 225956d97fSEmmanuel Vadot enum: 235956d97fSEmmanuel Vadot - brcm,bcm4708-pinmux 245956d97fSEmmanuel Vadot - brcm,bcm4709-pinmux 255956d97fSEmmanuel Vadot - brcm,bcm53012-pinmux 265956d97fSEmmanuel Vadot 27*354d7675SEmmanuel Vadot reg: 285956d97fSEmmanuel Vadot maxItems: 1 29*354d7675SEmmanuel Vadot 30*354d7675SEmmanuel Vadot reg-names: 31*354d7675SEmmanuel Vadot const: cru_gpio_control 325956d97fSEmmanuel Vadot 335956d97fSEmmanuel VadotpatternProperties: 345956d97fSEmmanuel Vadot '-pins$': 355956d97fSEmmanuel Vadot type: object 365956d97fSEmmanuel Vadot description: pin node 375956d97fSEmmanuel Vadot $ref: pinmux-node.yaml# 385956d97fSEmmanuel Vadot 395956d97fSEmmanuel Vadot properties: 405956d97fSEmmanuel Vadot function: 415956d97fSEmmanuel Vadot enum: [ spi, i2c, pwm, uart1, mdio, uart2, sdio ] 425956d97fSEmmanuel Vadot groups: 435956d97fSEmmanuel Vadot minItems: 1 445956d97fSEmmanuel Vadot maxItems: 4 455956d97fSEmmanuel Vadot items: 465956d97fSEmmanuel Vadot enum: [ spi_grp, i2c_grp, pwm0_grp, pwm1_grp, pwm2_grp, pwm3_grp, 475956d97fSEmmanuel Vadot uart1_grp, mdio_grp, uart2_grp, sdio_pwr_grp, sdio_1p8v_grp ] 485956d97fSEmmanuel Vadot 495956d97fSEmmanuel Vadot required: 505956d97fSEmmanuel Vadot - function 515956d97fSEmmanuel Vadot - groups 525956d97fSEmmanuel Vadot 535956d97fSEmmanuel Vadot additionalProperties: false 545956d97fSEmmanuel Vadot 555956d97fSEmmanuel VadotallOf: 565956d97fSEmmanuel Vadot - if: 575956d97fSEmmanuel Vadot properties: 585956d97fSEmmanuel Vadot compatible: 595956d97fSEmmanuel Vadot contains: 605956d97fSEmmanuel Vadot const: brcm,bcm4708-pinmux 615956d97fSEmmanuel Vadot then: 625956d97fSEmmanuel Vadot patternProperties: 635956d97fSEmmanuel Vadot '-pins$': 645956d97fSEmmanuel Vadot properties: 655956d97fSEmmanuel Vadot function: 665956d97fSEmmanuel Vadot enum: [ spi, i2c, pwm, uart1 ] 675956d97fSEmmanuel Vadot groups: 685956d97fSEmmanuel Vadot items: 695956d97fSEmmanuel Vadot enum: [ spi_grp, i2c_grp, pwm0_grp, pwm1_grp, pwm2_grp, pwm3_grp, 705956d97fSEmmanuel Vadot uart1_grp ] 715956d97fSEmmanuel Vadot 725956d97fSEmmanuel Vadotrequired: 73*354d7675SEmmanuel Vadot - reg 74*354d7675SEmmanuel Vadot - reg-names 755956d97fSEmmanuel Vadot 765956d97fSEmmanuel VadotadditionalProperties: false 775956d97fSEmmanuel Vadot 785956d97fSEmmanuel Vadotexamples: 795956d97fSEmmanuel Vadot - | 80*354d7675SEmmanuel Vadot pin-controller@1800c1c0 { 815956d97fSEmmanuel Vadot compatible = "brcm,bcm4708-pinmux"; 82*354d7675SEmmanuel Vadot reg = <0x1800c1c0 0x24>; 83*354d7675SEmmanuel Vadot reg-names = "cru_gpio_control"; 845956d97fSEmmanuel Vadot 855956d97fSEmmanuel Vadot spi-pins { 865956d97fSEmmanuel Vadot function = "spi"; 875956d97fSEmmanuel Vadot groups = "spi_grp"; 885956d97fSEmmanuel Vadot }; 895956d97fSEmmanuel Vadot }; 90