Add YAML bindings ep93xx SoC. Signed-off-by: Nikita Shubin <nikita.shubin@xxxxxxxxxxx> Reviewed-by: Linus Walleij <linus.walleij@xxxxxxxxxx> --- Notes: rfc->v0: - dropped separate bindings description, left only one with all groups, functions and etc... - added Alexander Sverdlin to maintainers - added Linus Reviwed-by tags, through i shoudn't =) too many changes - fixed warning and added seq_file header .../pinctrl/cirrus,ep93xx-pinctrl.yaml | 66 +++++++++++++++++++ 1 file changed, 66 insertions(+) create mode 100644 Documentation/devicetree/bindings/pinctrl/cirrus,ep93xx-pinctrl.yaml diff --git a/Documentation/devicetree/bindings/pinctrl/cirrus,ep93xx-pinctrl.yaml b/Documentation/devicetree/bindings/pinctrl/cirrus,ep93xx-pinctrl.yaml new file mode 100644 index 000000000000..cba4be7c5994 --- /dev/null +++ b/Documentation/devicetree/bindings/pinctrl/cirrus,ep93xx-pinctrl.yaml @@ -0,0 +1,66 @@ +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/pinctrl/cirrus,ep93xx-pinctrl.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Cirrus ep93xx pins mux controller + +maintainers: + - Nikita Shubin <nikita.shubin@xxxxxxxxxxx> + - Alexander Sverdlin <alexander.sverdlin@xxxxxxxxx> + +properties: + compatible: + enum: + - cirrus,ep9301-pinctrl + - cirrus,ep9307-pinctrl + - cirrus,ep9312-pinctrl + regmap: + description: phandle to syscon + +patternProperties: + '^pinctrl-': + type: object + description: pin node + $ref: pinmux-node.yaml# + + properties: + function: + enum: [ spi, ac97, i2s, pwm, keypad, pata, lcd, gpio1, gpio2, gpio3, + gpio4, gpio6, gpio7 ] + groups: + minItems: 1 + maxItems: 2 + items: + enum: [ ssp, ac97, i2s_on_ssp, i2s_on_ac97, pwm1, gpio1agrp, + gpio2agrp, gpio3agrp, gpio4agrp, gpio6agrp, gpio7agrp, + rasteronsdram0grp, rasteronsdram3grp, keypadgrp, idegrp] + + required: + - function + - groups + +required: + - compatible + - regmap + +additionalProperties: false + +examples: + - | + syscon: syscon@80930000 { + compatible = "cirrus,ep9301-syscon", + "syscon", "simple-mfd"; + reg = <0x80930000 0x1000>; + #clock-cells = <1>; + #reset-cells = <1>; + pinctrl: pinctrl { + compatible = "cirrus,ep9312-pinctrl"; + regmap = <&syscon>; + spi_default_pins: pinctrl-spi { + function = "spi"; + groups = "ssp"; + }; + }; + }; -- 2.39.2