Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

dt-bindings: pinctrl: Convert Marvell Berlin pinctrl to DT schema

Convert the Marvell/Synaptics Berlin pinctrl binding to DT schema
format. The "reg" property was not documented for the newer SoCs.
Otherwise, it's a straight-forward conversion.

Signed-off-by: Rob Herring (Arm) <robh@kernel.org>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>

authored by

Rob Herring (Arm) and committed by
Linus Walleij
d51093cf bfdccbe9

+86 -47
-47
Documentation/devicetree/bindings/pinctrl/berlin,pinctrl.txt
··· 1 - * Pin-controller driver for the Marvell Berlin SoCs 2 - 3 - Pin control registers are part of both chip controller and system 4 - controller register sets. Pin controller nodes should be a sub-node of 5 - either the chip controller or system controller node. The pins 6 - controlled are organized in groups, so no actual pin information is 7 - needed. 8 - 9 - A pin-controller node should contain subnodes representing the pin group 10 - configurations, one per function. Each subnode has the group name and 11 - the muxing function used. 12 - 13 - Be aware the Marvell Berlin datasheets use the keyword 'mode' for what 14 - is called a 'function' in the pin-controller subsystem. 15 - 16 - Required properties: 17 - - compatible: should be one of: 18 - "marvell,berlin2-soc-pinctrl", 19 - "marvell,berlin2-system-pinctrl", 20 - "marvell,berlin2cd-soc-pinctrl", 21 - "marvell,berlin2cd-system-pinctrl", 22 - "marvell,berlin2q-soc-pinctrl", 23 - "marvell,berlin2q-system-pinctrl", 24 - "marvell,berlin4ct-avio-pinctrl", 25 - "marvell,berlin4ct-soc-pinctrl", 26 - "marvell,berlin4ct-system-pinctrl", 27 - "syna,as370-soc-pinctrl" 28 - 29 - Required subnode-properties: 30 - - groups: a list of strings describing the group names. 31 - - function: a string describing the function used to mux the groups. 32 - 33 - Example: 34 - 35 - sys_pinctrl: pin-controller { 36 - compatible = "marvell,berlin2q-system-pinctrl"; 37 - 38 - uart0_pmux: uart0-pmux { 39 - groups = "GSM12"; 40 - function = "uart0"; 41 - }; 42 - }; 43 - 44 - &uart0 { 45 - pinctrl-0 = <&uart0_pmux>; 46 - pinctrl-names = "default"; 47 - };
+86
Documentation/devicetree/bindings/pinctrl/marvell,berlin2-soc-pinctrl.yaml
··· 1 + # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 2 + %YAML 1.2 3 + --- 4 + $id: http://devicetree.org/schemas/pinctrl/marvell,berlin2-soc-pinctrl.yaml# 5 + $schema: http://devicetree.org/meta-schemas/core.yaml# 6 + 7 + title: Marvell Berlin pin-controller driver 8 + 9 + maintainers: 10 + - Antoine Tenart <atenart@kernel.org> 11 + - Jisheng Zhang <jszhang@kernel.org> 12 + 13 + description: > 14 + Pin control registers are part of both chip controller and system controller 15 + register sets. Pin controller nodes should be a sub-node of either the chip 16 + controller or system controller node. The pins controlled are organized in 17 + groups, so no actual pin information is needed. 18 + 19 + A pin-controller node should contain subnodes representing the pin group 20 + configurations, one per function. Each subnode has the group name and the 21 + muxing function used. 22 + 23 + Be aware the Marvell Berlin datasheets use the keyword 'mode' for what is 24 + called a 'function' in the pin-controller subsystem. 25 + 26 + properties: 27 + compatible: 28 + items: 29 + - enum: 30 + - marvell,berlin2-soc-pinctrl 31 + - marvell,berlin2-system-pinctrl 32 + - marvell,berlin2cd-soc-pinctrl 33 + - marvell,berlin2cd-system-pinctrl 34 + - marvell,berlin2q-soc-pinctrl 35 + - marvell,berlin2q-system-pinctrl 36 + - marvell,berlin4ct-avio-pinctrl 37 + - marvell,berlin4ct-soc-pinctrl 38 + - marvell,berlin4ct-system-pinctrl 39 + - syna,as370-soc-pinctrl 40 + 41 + reg: 42 + maxItems: 1 43 + 44 + additionalProperties: 45 + description: Pin group configuration subnodes. 46 + type: object 47 + $ref: /schemas/pinctrl/pinmux-node.yaml# 48 + additionalProperties: false 49 + 50 + properties: 51 + groups: 52 + description: List of pin group names. 53 + $ref: /schemas/types.yaml#/definitions/string-array 54 + 55 + function: 56 + description: Function used to mux the group. 57 + $ref: /schemas/types.yaml#/definitions/string 58 + 59 + required: 60 + - groups 61 + - function 62 + 63 + allOf: 64 + - if: 65 + properties: 66 + compatible: 67 + contains: 68 + enum: 69 + - marvell,berlin4ct-avio-pinctrl 70 + - marvell,berlin4ct-soc-pinctrl 71 + - marvell,berlin4ct-system-pinctrl 72 + - syna,as370-soc-pinctrl 73 + then: 74 + required: 75 + - reg 76 + 77 + examples: 78 + - | 79 + pinctrl { 80 + compatible = "marvell,berlin2q-system-pinctrl"; 81 + 82 + uart0-pmux { 83 + groups = "GSM12"; 84 + function = "uart0"; 85 + }; 86 + };