| # SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause |
| %YAML 1.2 |
| --- |
| $id: http://devicetree.org/schemas/pinctrl/ralink,rt305x-pinctrl.yaml# |
| $schema: http://devicetree.org/meta-schemas/core.yaml# |
| |
| title: Ralink RT305X Pin Controller |
| |
| maintainers: |
| - Arınç ÜNAL <arinc.unal@arinc9.com> |
| - Sergio Paracuellos <sergio.paracuellos@gmail.com> |
| |
| description: |
| Ralink RT305X pin controller for RT3050, RT3052, RT3350, RT3352 and RT5350 |
| SoCs. |
| The pin controller can only set the muxing of pin groups. Muxing individual |
| pins is not supported. There is no pinconf support. |
| |
| properties: |
| compatible: |
| const: ralink,rt305x-pinctrl |
| |
| patternProperties: |
| '-pins$': |
| type: object |
| patternProperties: |
| '^(.*-)?pinmux$': |
| type: object |
| description: node for pinctrl. |
| $ref: pinmux-node.yaml# |
| |
| properties: |
| function: |
| description: |
| A string containing the name of the function to mux to the group. |
| anyOf: |
| - description: For RT3050, RT3052 and RT3350 SoCs |
| enum: [gpio, gpio i2s, gpio uartf, i2c, i2s uartf, jtag, mdio, |
| pcm gpio, pcm i2s, pcm uartf, rgmii, sdram, spi, uartf, |
| uartlite] |
| |
| - description: For RT3352 SoC |
| enum: [gpio, gpio i2s, gpio uartf, i2c, i2s uartf, jtag, led, |
| lna, mdio, pa, pcm gpio, pcm i2s, pcm uartf, rgmii, spi, |
| spi_cs1, uartf, uartlite, wdg_cs1] |
| |
| - description: For RT5350 SoC |
| enum: [gpio, gpio i2s, gpio uartf, i2c, i2s uartf, jtag, led, |
| pcm gpio, pcm i2s, pcm uartf, spi, spi_cs1, uartf, |
| uartlite, wdg_cs1] |
| |
| groups: |
| description: |
| An array of strings. Each string contains the name of a group. |
| maxItems: 1 |
| |
| required: |
| - groups |
| - function |
| |
| allOf: |
| - if: |
| properties: |
| function: |
| const: gpio |
| then: |
| properties: |
| groups: |
| anyOf: |
| - description: For RT3050, RT3052 and RT3350 SoCs |
| enum: [i2c, jtag, mdio, rgmii, sdram, spi, uartf, |
| uartlite] |
| |
| - description: For RT3352 SoC |
| enum: [i2c, jtag, led, lna, mdio, pa, rgmii, spi, spi_cs1, |
| uartf, uartlite] |
| |
| - description: For RT5350 SoC |
| enum: [i2c, jtag, led, spi, spi_cs1, uartf, uartlite] |
| |
| - if: |
| properties: |
| function: |
| const: gpio i2s |
| then: |
| properties: |
| groups: |
| enum: [uartf] |
| |
| - if: |
| properties: |
| function: |
| const: gpio uartf |
| then: |
| properties: |
| groups: |
| enum: [uartf] |
| |
| - if: |
| properties: |
| function: |
| const: i2c |
| then: |
| properties: |
| groups: |
| enum: [i2c] |
| |
| - if: |
| properties: |
| function: |
| const: i2s uartf |
| then: |
| properties: |
| groups: |
| enum: [uartf] |
| |
| - if: |
| properties: |
| function: |
| const: jtag |
| then: |
| properties: |
| groups: |
| enum: [jtag] |
| |
| - if: |
| properties: |
| function: |
| const: led |
| then: |
| properties: |
| groups: |
| enum: [led] |
| |
| - if: |
| properties: |
| function: |
| const: lna |
| then: |
| properties: |
| groups: |
| enum: [lna] |
| |
| - if: |
| properties: |
| function: |
| const: mdio |
| then: |
| properties: |
| groups: |
| enum: [mdio] |
| |
| - if: |
| properties: |
| function: |
| const: pa |
| then: |
| properties: |
| groups: |
| enum: [pa] |
| |
| - if: |
| properties: |
| function: |
| const: pcm gpio |
| then: |
| properties: |
| groups: |
| enum: [uartf] |
| |
| - if: |
| properties: |
| function: |
| const: pcm i2s |
| then: |
| properties: |
| groups: |
| enum: [uartf] |
| |
| - if: |
| properties: |
| function: |
| const: pcm uartf |
| then: |
| properties: |
| groups: |
| enum: [uartf] |
| |
| - if: |
| properties: |
| function: |
| const: rgmii |
| then: |
| properties: |
| groups: |
| enum: [rgmii] |
| |
| - if: |
| properties: |
| function: |
| const: sdram |
| then: |
| properties: |
| groups: |
| enum: [sdram] |
| |
| - if: |
| properties: |
| function: |
| const: spi |
| then: |
| properties: |
| groups: |
| enum: [spi] |
| |
| - if: |
| properties: |
| function: |
| const: spi_cs1 |
| then: |
| properties: |
| groups: |
| enum: [spi_cs1] |
| |
| - if: |
| properties: |
| function: |
| const: uartf |
| then: |
| properties: |
| groups: |
| enum: [uartf] |
| |
| - if: |
| properties: |
| function: |
| const: uartlite |
| then: |
| properties: |
| groups: |
| enum: [uartlite] |
| |
| - if: |
| properties: |
| function: |
| const: wdg_cs1 |
| then: |
| properties: |
| groups: |
| enum: [spi_cs1] |
| |
| additionalProperties: false |
| |
| additionalProperties: false |
| |
| allOf: |
| - $ref: "pinctrl.yaml#" |
| |
| required: |
| - compatible |
| |
| additionalProperties: false |
| |
| examples: |
| - | |
| pinctrl { |
| compatible = "ralink,rt305x-pinctrl"; |
| |
| i2c_pins: i2c0-pins { |
| pinmux { |
| groups = "i2c"; |
| function = "i2c"; |
| }; |
| }; |
| }; |