[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20231108170621.GA2417622-robh@kernel.org>
Date: Wed, 8 Nov 2023 11:06:21 -0600
From: Rob Herring <robh@...nel.org>
To: Jerome Brunet <jbrunet@...libre.com>
Cc: Thierry Reding <thierry.reding@...il.com>,
Neil Armstrong <neil.armstrong@...aro.org>,
Krzysztof Kozlowski <krzysztof.kozlowski+dt@...aro.org>,
Conor Dooley <conor+dt@...nel.org>,
Kevin Hilman <khilman@...libre.com>,
devicetree@...r.kernel.org, linux-kernel@...r.kernel.org,
linux-amlogic@...ts.infradead.org, linux-pwm@...r.kernel.org,
JunYi Zhao <junyi.zhao@...ogic.com>
Subject: Re: [PATCH 2/6] dt-bindings: pwm: amlogic: add new compatible for
meson8 pwm type
On Mon, Nov 06, 2023 at 11:32:49AM +0100, Jerome Brunet wrote:
> Add a new compatible for the pwm found in the meson8 to sm1 Amlogic SoCs.
>
> The previous clock bindings for these SoCs described the driver and not the
> HW itself. The clock provided was used to set the parent of the input clock
> mux among the possible parents hard-coded in the driver.
>
> The new bindings allows to describe the actual clock inputs of the PWM in
> DT, like most bindings do, instead of relying of hard-coded data.
>
> The new bindings make the old one deprecated.
>
> There is enough experience on this HW to know that the PWM is exactly the
> same all the supported SoCs. There is no need for a per-SoC compatible.
>
> Signed-off-by: Jerome Brunet <jbrunet@...libre.com>
> ---
> .../devicetree/bindings/pwm/pwm-amlogic.yaml | 35 +++++++++++++++++--
> 1 file changed, 33 insertions(+), 2 deletions(-)
>
> diff --git a/Documentation/devicetree/bindings/pwm/pwm-amlogic.yaml b/Documentation/devicetree/bindings/pwm/pwm-amlogic.yaml
> index 754b70fc2db0..3aa522c4cae4 100644
> --- a/Documentation/devicetree/bindings/pwm/pwm-amlogic.yaml
> +++ b/Documentation/devicetree/bindings/pwm/pwm-amlogic.yaml
> @@ -22,6 +22,7 @@ properties:
> - amlogic,meson-g12a-ao-pwm-ab
> - amlogic,meson-g12a-ao-pwm-cd
> - amlogic,meson-s4-pwm
> + - amlogic,meson8-pwm-v2
> - items:
> - const: amlogic,meson-gx-pwm
> - const: amlogic,meson-gxbb-pwm
> @@ -37,7 +38,7 @@ properties:
>
> clocks:
> minItems: 1
> - maxItems: 2
> + maxItems: 4
>
> clock-names:
> minItems: 1
> @@ -70,11 +71,14 @@ allOf:
> - amlogic,meson-gx-pwm
> - amlogic,meson-gx-ao-pwm
> then:
> - # Historic bindings tied to the driver implementation
> + # Obsolete historic bindings tied to the driver implementation
> # The clocks provided here are meant to be matched with the input
> # known (hard-coded) in the driver and used to select pwm clock
> # source. Currently, the linux driver ignores this.
> + deprecated: true
> properties:
> + clocks:
> + maxItems: 2
> clock-names:
> oneOf:
> - items:
> @@ -83,6 +87,26 @@ allOf:
> - const: clkin0
> - const: clkin1
>
> + # Newer binding where clock describe the actual clock inputs of the pwm
> + # block. These are necessary but some inputs may be grounded.
> + - if:
> + properties:
> + compatible:
> + contains:
> + enum:
> + - amlogic,meson8b-pwm-v2
> + then:
> + properties:
> + clocks:
> + minItems: 1
> + items:
> + - description: input clock 0 of the pwm block
> + - description: input clock 1 of the pwm block
> + - description: input clock 2 of the pwm block
> + - description: input clock 3 of the pwm block
> + required:
> + - clocks
Again, clock-names?
Powered by blists - more mailing lists