dt-bindings: pinctrl: rt3883: add proper function muxing binding
Not every function can be muxed to a group. Add proper binding which documents which function can be muxed to a group or set of groups. Signed-off-by: Arınç ÜNAL <arinc.unal@arinc9.com> Acked-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> Acked-by: Sergio Paracuellos <sergio.paracuellos@gmail.com> Link: https://lore.kernel.org/r/20221231160849.40544-7-arinc.unal@arinc9.com Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
This commit is contained in:
parent
d648fd64e1
commit
844bca6092
|
@ -29,21 +29,213 @@ patternProperties:
|
|||
$ref: pinmux-node.yaml#
|
||||
|
||||
properties:
|
||||
groups:
|
||||
description: The pin group to select.
|
||||
enum: [ge1, ge2, i2c, jtag, lna a, lna g, mdio, pci, spi, uartf,
|
||||
uartlite]
|
||||
|
||||
function:
|
||||
description: The mux function to select.
|
||||
description:
|
||||
A string containing the name of the function to mux to the group.
|
||||
enum: [ge1, ge2, gpio, gpio i2s, gpio uartf, i2c, i2s uartf, jtag,
|
||||
lna a, lna g, mdio, pci-dev, pci-fnc, pci-host1, pci-host2,
|
||||
pcm gpio, pcm i2s, pcm uartf, spi, uartf, uartlite]
|
||||
|
||||
groups:
|
||||
description:
|
||||
An array of strings. Each string contains the name of a group.
|
||||
maxItems: 1
|
||||
|
||||
required:
|
||||
- groups
|
||||
- function
|
||||
|
||||
allOf:
|
||||
- if:
|
||||
properties:
|
||||
function:
|
||||
const: ge1
|
||||
then:
|
||||
properties:
|
||||
groups:
|
||||
enum: [ge1]
|
||||
|
||||
- if:
|
||||
properties:
|
||||
function:
|
||||
const: ge2
|
||||
then:
|
||||
properties:
|
||||
groups:
|
||||
enum: [ge2]
|
||||
|
||||
- if:
|
||||
properties:
|
||||
function:
|
||||
const: gpio
|
||||
then:
|
||||
properties:
|
||||
groups:
|
||||
enum: [ge1, ge2, i2c, jtag, lna a, lna g, mdio, pci, spi,
|
||||
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: lna a
|
||||
then:
|
||||
properties:
|
||||
groups:
|
||||
enum: [lna a]
|
||||
|
||||
- if:
|
||||
properties:
|
||||
function:
|
||||
const: lna g
|
||||
then:
|
||||
properties:
|
||||
groups:
|
||||
enum: [lna g]
|
||||
|
||||
- if:
|
||||
properties:
|
||||
function:
|
||||
const: mdio
|
||||
then:
|
||||
properties:
|
||||
groups:
|
||||
enum: [mdio]
|
||||
|
||||
- if:
|
||||
properties:
|
||||
function:
|
||||
const: pci-dev
|
||||
then:
|
||||
properties:
|
||||
groups:
|
||||
enum: [pci]
|
||||
|
||||
- if:
|
||||
properties:
|
||||
function:
|
||||
const: pci-fnc
|
||||
then:
|
||||
properties:
|
||||
groups:
|
||||
enum: [pci]
|
||||
|
||||
- if:
|
||||
properties:
|
||||
function:
|
||||
const: pci-host1
|
||||
then:
|
||||
properties:
|
||||
groups:
|
||||
enum: [pci]
|
||||
|
||||
- if:
|
||||
properties:
|
||||
function:
|
||||
const: pci-host2
|
||||
then:
|
||||
properties:
|
||||
groups:
|
||||
enum: [pci]
|
||||
|
||||
- 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: spi
|
||||
then:
|
||||
properties:
|
||||
groups:
|
||||
enum: [spi]
|
||||
|
||||
- if:
|
||||
properties:
|
||||
function:
|
||||
const: uartf
|
||||
then:
|
||||
properties:
|
||||
groups:
|
||||
enum: [uartf]
|
||||
|
||||
- if:
|
||||
properties:
|
||||
function:
|
||||
const: uartlite
|
||||
then:
|
||||
properties:
|
||||
groups:
|
||||
enum: [uartlite]
|
||||
|
||||
additionalProperties: false
|
||||
|
||||
additionalProperties: false
|
||||
|
@ -57,7 +249,6 @@ required:
|
|||
additionalProperties: false
|
||||
|
||||
examples:
|
||||
# Pinmux controller node
|
||||
- |
|
||||
pinctrl {
|
||||
compatible = "ralink,rt3883-pinctrl";
|
||||
|
|
Loading…
Reference in New Issue