[v4,03/11] dt-bindings: pinctrl: sun4i-a10: add Allwinner B288
Commit Message
The B288 driver takes its mux values from the DT, so allwinner,pinmux
becomes an allowed property here, required for this compatible only.
Signed-off-by: Pablo Mazzini <pmazzini@gmail.com>
---
.../pinctrl/allwinner,sun4i-a10-pinctrl.yaml | 22 +++++++++++++++++++
1 file changed, 22 insertions(+)
Comments
On Mon, 12 Oct 2026 11:08:08 +0100, Pablo Mazzini wrote:
> The B288 driver takes its mux values from the DT, so allwinner,pinmux
> becomes an allowed property here, required for this compatible only.
>
> Signed-off-by: Pablo Mazzini <pmazzini@gmail.com>
> ---
> .../pinctrl/allwinner,sun4i-a10-pinctrl.yaml | 22 +++++++++++++++++++
> 1 file changed, 22 insertions(+)
>
Reviewed-by: Rob Herring (Arm) <robh@kernel.org>
@@ -39,6 +39,7 @@ properties:
- allwinner,sun8i-a33-pinctrl
- allwinner,sun8i-a83t-pinctrl
- allwinner,sun8i-a83t-r-pinctrl
+ - allwinner,sun8i-b288-pinctrl
- allwinner,sun8i-h3-pinctrl
- allwinner,sun8i-h3-r-pinctrl
- allwinner,sun8i-r40-pinctrl
@@ -120,6 +121,15 @@ patternProperties:
$ref: /schemas/types.yaml#/definitions/uint32
enum: [10, 20, 30, 40]
+ allwinner,pinmux:
+ $ref: /schemas/types.yaml#/definitions/uint32-array
+ description:
+ Pinmux selector value, for each pin. Only used by SoCs whose
+ driver takes the mux values from the DT instead of an in-driver
+ table. Almost every time this value is the same for all pins, so
+ any array shorter than the number of pins will repeat the last
+ value, to allow just specifying a single cell, for all cells.
+
required:
- pins
- function
@@ -144,6 +154,17 @@ allOf:
# warnings.
- $ref: pinctrl.yaml#
+
+ - if:
+ properties:
+ compatible:
+ const: allwinner,sun8i-b288-pinctrl
+
+ then:
+ patternProperties:
+ "^([rs]-)?(([a-z0-9]{3,}|[a-oq-z0-9][a-z0-9]*?)?-)+?(p[a-ilm][0-9]*?-)??pins?$":
+ required:
+ - allwinner,pinmux
- if:
not:
properties:
@@ -222,6 +243,7 @@ allOf:
enum:
- allwinner,sun6i-a31-pinctrl
- allwinner,sun6i-a31s-pinctrl
+ - allwinner,sun8i-b288-pinctrl
- allwinner,sun50i-h6-pinctrl
then: