[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <5ac7534e-3fc3-4e96-84af-035ea30462ac@linaro.org>
Date: Mon, 26 Feb 2024 09:01:49 +0100
From: Krzysztof Kozlowski <krzysztof.kozlowski@...aro.org>
To: forbidden405@...look.com, Rob Herring <robh+dt@...nel.org>,
Krzysztof Kozlowski <krzysztof.kozlowski+dt@...aro.org>,
Conor Dooley <conor+dt@...nel.org>,
Geert Uytterhoeven <geert+renesas@...der.be>,
Philipp Zabel <p.zabel@...gutronix.de>
Cc: devicetree@...r.kernel.org, linux-kernel@...r.kernel.org
Subject: Re: [PATCH v2 1/2] dt-bindings: simple-pm-bus: Add optional resets
On 23/02/2024 11:10, Yang Xiwen via B4 Relay wrote:
> From: Yang Xiwen <forbidden405@...look.com>
>
> For some on-soc buses, it is also needed to deassert the resets before
> access. Document it in the binding.
>
> Reviewed-by: Geert Uytterhoeven <geert+renesas@...der.be>
> Signed-off-by: Yang Xiwen <forbidden405@...look.com>
> ---
> Documentation/devicetree/bindings/bus/simple-pm-bus.yaml | 7 +++++--
> 1 file changed, 5 insertions(+), 2 deletions(-)
>
> diff --git a/Documentation/devicetree/bindings/bus/simple-pm-bus.yaml b/Documentation/devicetree/bindings/bus/simple-pm-bus.yaml
> index 182134d7a6a3..430638104980 100644
> --- a/Documentation/devicetree/bindings/bus/simple-pm-bus.yaml
> +++ b/Documentation/devicetree/bindings/bus/simple-pm-bus.yaml
> @@ -14,8 +14,9 @@ description: |
> driver, as it's typically initialized by the boot loader.
>
> However, its bus controller is part of a PM domain, or under the control
> - of a functional clock. Hence, the bus controller's PM domain and/or
> - clock must be enabled for child devices connected to the bus (either
> + of a functional clock, and it might have a reset control signal. Hence,
> + the bus controller's PM domain and/or clock must be enabled, reset control
> + signal must be deasserted for child devices connected to the bus (either
> on-SoC or externally) to function.
>
> While "simple-pm-bus" follows the "simple-bus" set of properties, as
> @@ -49,6 +50,8 @@ properties:
> # Required if clocks is absent, optional otherwise
> minItems: 1
>
> + resets: true
If you have to toggle some resets (and often actually in some order),
then it is not a simple-bus anymore.
This looks more and more like a one-binding-to-rule-them-all.
Especially that description clearly states: "does not need real driver"
and "typically initialized by the boot loader", but here I see more and
more of a driver, and more and more of doing things by Linux.
Best regards,
Krzysztof
Powered by blists - more mailing lists