[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAGb2v64x_QE8w_4h10waG33xNpkd9QLt_B=xSPMMe0M=6bqsJw@mail.gmail.com>
Date: Wed, 13 Nov 2024 16:50:19 +0800
From: Chen-Yu Tsai <wens@...e.org>
To: Andre Przywara <andre.przywara@....com>
Cc: Linus Walleij <linus.walleij@...aro.org>, Rob Herring <robh@...nel.org>,
Krzysztof Kozlowski <krzk+dt@...nel.org>, Conor Dooley <conor+dt@...nel.org>,
Jernej Skrabec <jernej.skrabec@...il.com>, Samuel Holland <samuel@...lland.org>,
linux-gpio@...r.kernel.org, devicetree@...r.kernel.org,
linux-arm-kernel@...ts.infradead.org, linux-sunxi@...ts.linux.dev,
linux-kernel@...r.kernel.org
Subject: Re: [PATCH 5/7] dt-bindings: pinctrl: add compatible for Allwinner A523/T527
On Mon, Nov 11, 2024 at 8:58 AM Andre Przywara <andre.przywara@....com> wrote:
>
> The A523 contains a pin controller similar to previous SoCs, although
> using 10 GPIO banks (PortB-PortK), all of them being IRQ capable.
> This introduces a new style of binding, where the pinmux values for each
> pin group is stored in the new "allwinner,pinmux" property in the DT
> node, instead of requiring every driver to store a mapping between the
> function names and the required pinmux.
>
> Add the new name to the list of compatible strings, and required it to
> have 10 interrupts described. Also add the new pinmux property.
>
> Signed-off-by: Andre Przywara <andre.przywara@....com>
> ---
> .../pinctrl/allwinner,sun4i-a10-pinctrl.yaml | 23 +++++++++++++++++--
> 1 file changed, 21 insertions(+), 2 deletions(-)
>
> diff --git a/Documentation/devicetree/bindings/pinctrl/allwinner,sun4i-a10-pinctrl.yaml b/Documentation/devicetree/bindings/pinctrl/allwinner,sun4i-a10-pinctrl.yaml
> index 4502405703145..6fc18e92e1e94 100644
> --- a/Documentation/devicetree/bindings/pinctrl/allwinner,sun4i-a10-pinctrl.yaml
> +++ b/Documentation/devicetree/bindings/pinctrl/allwinner,sun4i-a10-pinctrl.yaml
> @@ -56,6 +56,8 @@ properties:
> - allwinner,sun50i-h6-r-pinctrl
> - allwinner,sun50i-h616-pinctrl
> - allwinner,sun50i-h616-r-pinctrl
> + - allwinner,sun55i-a523-pinctrl
> + - allwinner,sun55i-a523-r-pinctrl
> - allwinner,suniv-f1c100s-pinctrl
> - nextthing,gr8-pinctrl
>
> @@ -64,7 +66,7 @@ properties:
>
> interrupts:
> minItems: 1
> - maxItems: 8
> + maxItems: 10
> description:
> One interrupt per external interrupt bank supported on the
> controller, sorted by bank number ascending order.
> @@ -119,13 +121,17 @@ patternProperties:
> $ref: /schemas/types.yaml#/definitions/uint32
> enum: [10, 20, 30, 40]
>
> + allwinner,pinmux:
> + $ref: /schemas/types.yaml#/definitions/uint32-array
> + description: pinmux selector for each pin
> +
Why not just the standard "pinmux" property, as given in
Documentation/devicetree/bindings/pinctrl/pinmux-node.yaml
> required:
> - pins
> - function
This section should be made to apply only to the existing
compatibles? Maybe we could just split the files and have
a clean slate for sun55i?
ChenYu
> additionalProperties: false
>
> - "^vcc-p[a-ilm]-supply$":
> + "^vcc-p[a-klm]-supply$":
> description:
> Power supplies for pin banks.
>
> @@ -156,6 +162,17 @@ allOf:
> - interrupts
> - interrupt-controller
>
> + - if:
> + properties:
> + compatible:
> + enum:
> + - allwinner,sun55i-a523-pinctrl
> +
> + then:
> + properties:
> + interrupts:
> + minItems: 10
> +
> - if:
> properties:
> compatible:
> @@ -166,6 +183,7 @@ allOf:
> properties:
> interrupts:
> minItems: 8
> + maxItems: 8
>
> - if:
> properties:
> @@ -244,6 +262,7 @@ allOf:
> - allwinner,sun8i-v3s-pinctrl
> - allwinner,sun9i-a80-r-pinctrl
> - allwinner,sun50i-h6-r-pinctrl
> + - allwinner,sun55i-a523-r-pinctrl
>
> then:
> properties:
> --
> 2.46.2
>
Powered by blists - more mailing lists