[v3,07/17] dt-bindings: pinctrl: mobileye,eyeq5-pinctrl: add bindings
Commit Message
Add dt-schema type bindings for the Mobileye EyeQ5 pin controller.
Signed-off-by: Théo Lebrun <theo.lebrun@bootlin.com>
---
.../bindings/pinctrl/mobileye,eyeq5-pinctrl.yaml | 77 ++++++++++++++++++++++
MAINTAINERS | 1 +
2 files changed, 78 insertions(+)
Comments
On 23/01/2024 19:46, Théo Lebrun wrote:
> Add dt-schema type bindings for the Mobileye EyeQ5 pin controller.
>
> Signed-off-by: Théo Lebrun <theo.lebrun@bootlin.com>
> ---
> .../bindings/pinctrl/mobileye,eyeq5-pinctrl.yaml | 77 ++++++++++++++++++++++
> MAINTAINERS | 1 +
> 2 files changed, 78 insertions(+)
>
> diff --git a/Documentation/devicetree/bindings/pinctrl/mobileye,eyeq5-pinctrl.yaml b/Documentation/devicetree/bindings/pinctrl/mobileye,eyeq5-pinctrl.yaml
> new file mode 100644
> index 000000000000..db62919053b4
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/pinctrl/mobileye,eyeq5-pinctrl.yaml
> @@ -0,0 +1,77 @@
> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/pinctrl/mobileye,eyeq5-pinctrl.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: Mobileye EyeQ5 pin controller
> +
> +description:
> + The EyeQ5 pin controller handles a pin bank. It is custom to this platform,
> + its registers live in a shared region called OLB.
> + There are two pin banks on the platform, each having a specific compatible.
> + Pins and groups are bijective.
I don't see much improvements here.
> +
> +maintainers:
> + - Grégory Clement <gregory.clement@bootlin.com>
> + - Théo Lebrun <theo.lebrun@bootlin.com>
> + - Vladimir Kondratiev <vladimir.kondratiev@mobileye.com>
> +
> +properties:
> + compatible:
> + enum:
> + - mobileye,eyeq5-a-pinctrl
> + - mobileye,eyeq5-b-pinctrl> +
> + "#pinctrl-cells":
> + const: 1
> +
> +required:
> + - compatible
> + - "#pinctrl-cells"
required: block goes after all properties and patternproperties.
> +
> +patternProperties:
> + "-pins?$":
> + type: object
> + description: Pin muxing configuration.
> + $ref: pinmux-node.yaml#
> + additionalProperties: false
> + properties:
> + pins: true
> + function: true
> + bias-disable: true
> + bias-pull-down: true
> + bias-pull-up: true
> + drive-strength: true
> + required:
> + - pins
> + - function
> +
> +allOf:
> + - $ref: pinctrl.yaml#
> + - if:
> + properties:
> + compatible:
> + contains:
> + const: mobileye,eyeq5-a-pinctrl
> + then:
> + patternProperties:
> + "-pins?$":
> + properties:
> + function:
> + enum: [gpio, timer0, timer1, timer2, timer5, uart0, uart1, can0,
> + can1, spi0, spi1, refclk0]
> + - if:
> + properties:
> + compatible:
> + contains:
> + const: mobileye,eyeq5-b-pinctrl
> + then:
> + patternProperties:
> + "-pins?$":
> + properties:
> + function:
> + enum: [gpio, timer3, timer4, timer6, uart2, can2, spi2, spi3,
> + mclk0]
> +
Best regards,
Krzysztof
new file mode 100644
@@ -0,0 +1,77 @@
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/pinctrl/mobileye,eyeq5-pinctrl.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Mobileye EyeQ5 pin controller
+
+description:
+ The EyeQ5 pin controller handles a pin bank. It is custom to this platform,
+ its registers live in a shared region called OLB.
+ There are two pin banks on the platform, each having a specific compatible.
+ Pins and groups are bijective.
+
+maintainers:
+ - Grégory Clement <gregory.clement@bootlin.com>
+ - Théo Lebrun <theo.lebrun@bootlin.com>
+ - Vladimir Kondratiev <vladimir.kondratiev@mobileye.com>
+
+properties:
+ compatible:
+ enum:
+ - mobileye,eyeq5-a-pinctrl
+ - mobileye,eyeq5-b-pinctrl
+
+ "#pinctrl-cells":
+ const: 1
+
+required:
+ - compatible
+ - "#pinctrl-cells"
+
+patternProperties:
+ "-pins?$":
+ type: object
+ description: Pin muxing configuration.
+ $ref: pinmux-node.yaml#
+ additionalProperties: false
+ properties:
+ pins: true
+ function: true
+ bias-disable: true
+ bias-pull-down: true
+ bias-pull-up: true
+ drive-strength: true
+ required:
+ - pins
+ - function
+
+allOf:
+ - $ref: pinctrl.yaml#
+ - if:
+ properties:
+ compatible:
+ contains:
+ const: mobileye,eyeq5-a-pinctrl
+ then:
+ patternProperties:
+ "-pins?$":
+ properties:
+ function:
+ enum: [gpio, timer0, timer1, timer2, timer5, uart0, uart1, can0,
+ can1, spi0, spi1, refclk0]
+ - if:
+ properties:
+ compatible:
+ contains:
+ const: mobileye,eyeq5-b-pinctrl
+ then:
+ patternProperties:
+ "-pins?$":
+ properties:
+ function:
+ enum: [gpio, timer3, timer4, timer6, uart2, can2, spi2, spi3,
+ mclk0]
+
+additionalProperties: false
@@ -14787,6 +14787,7 @@ L: linux-mips@vger.kernel.org
S: Maintained
F: Documentation/devicetree/bindings/clock/mobileye,eyeq5-clk.yaml
F: Documentation/devicetree/bindings/mips/mobileye.yaml
+F: Documentation/devicetree/bindings/pinctrl/mobileye,eyeq5-pinctrl.yaml
F: Documentation/devicetree/bindings/reset/mobileye,eyeq5-reset.yaml
F: Documentation/devicetree/bindings/soc/mobileye/
F: arch/mips/boot/dts/mobileye/