devicetree.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: "Heiko Stübner" <heiko@sntech.de>
To: Johan Jonker <jbx6244@gmail.com>,
	zhangqing@rock-chips.com, Stephen Boyd <sboyd@kernel.org>
Cc: robh+dt@kernel.org, krzk+dt@kernel.org, mturquette@baylibre.com,
	linux-clk@vger.kernel.org, devicetree@vger.kernel.org,
	linux-arm-kernel@lists.infradead.org,
	linux-rockchip@lists.infradead.org, linux-kernel@vger.kernel.org
Subject: Re: [PATCH v3 1/2] dt-bindings: clock: convert rockchip,rk3188-cru.txt to YAML
Date: Fri, 01 Apr 2022 09:55:55 +0200	[thread overview]
Message-ID: <3107512.vfdyTQepKt@diego> (raw)
In-Reply-To: <20220331225134.7A0A9C340ED@smtp.kernel.org>

Hi Stephen,

Am Freitag, 1. April 2022, 00:51:32 CEST schrieb Stephen Boyd:
> Quoting Johan Jonker (2022-03-29 04:13:22)
> > diff --git a/Documentation/devicetree/bindings/clock/rockchip,rk3188-cru.yaml b/Documentation/devicetree/bindings/clock/rockchip,rk3188-cru.yaml
> > new file mode 100644
> > index 000000000..ddd7e46af
> > --- /dev/null
> > +++ b/Documentation/devicetree/bindings/clock/rockchip,rk3188-cru.yaml
> > @@ -0,0 +1,78 @@
> > +# SPDX-License-Identifier: GPL-2.0
> > +%YAML 1.2
> > +---
> > +$id: http://devicetree.org/schemas/clock/rockchip,rk3188-cru.yaml#
> > +$schema: http://devicetree.org/meta-schemas/core.yaml#
> > +
> > +title: Rockchip RK3188/RK3066 Clock and Reset Unit (CRU)
> > +
> > +maintainers:
> > +  - Elaine Zhang <zhangqing@rock-chips.com>
> > +  - Heiko Stuebner <heiko@sntech.de>
> > +
> > +description: |
> > +  The RK3188/RK3066 clock controller generates and supplies clocks to various
> > +  controllers within the SoC and also implements a reset controller for SoC
> > +  peripherals.
> > +  Each clock is assigned an identifier and client nodes can use this identifier
> > +  to specify the clock which they consume. All available clocks are defined as
> > +  preprocessor macros in the dt-bindings/clock/rk3188-cru.h and
> > +  dt-bindings/clock/rk3066-cru.h headers and can be used in device tree sources.
> > +  Similar macros exist for the reset sources in these files.
> > +  There are several clocks that are generated outside the SoC. It is expected
> > +  that they are defined using standard clock bindings with following
> > +  clock-output-names:
> > +    - "xin24m"    - crystal input                 - required
> > +    - "xin32k"    - RTC clock                     - optional
> > +    - "xin27m"    - 27mhz crystal input on RK3066 - optional
> > +    - "ext_hsadc" - external HSADC clock          - optional
> > +    - "ext_cif0"  - external camera clock         - optional
> > +    - "ext_rmii"  - external RMII clock           - optional
> > +    - "ext_jtag"  - external JTAG clock           - optional
> 
> I'd expect all these clks here to be inputs to this node.

The optional clocks are all part of a circular dependency.

So for example xin32k normally is generated by the pmic and fed
back into the system, so to get xin32k, we need the pmic to probe,
which needs i2c, which in turn already needs the clock controller.

Or optional clocks may not be available at all.

So for the past years we already relied on the clock-system's
self adaptation if a clock becomes available at some point
during later boot and hence do not have those in a clocks-property.

Heiko



  reply	other threads:[~2022-04-01  7:56 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-03-29 11:13 [PATCH v3 1/2] dt-bindings: clock: convert rockchip,rk3188-cru.txt to YAML Johan Jonker
2022-03-29 11:13 ` [PATCH v3 2/2] ARM: dts: rockchip: add clocks property to cru node rk3066a/rk3188 Johan Jonker
2022-03-29 11:43 ` [PATCH v3 1/2] dt-bindings: clock: convert rockchip, rk3188-cru.txt to YAML Krzysztof Kozlowski
2022-03-31 22:51 ` [PATCH v3 1/2] dt-bindings: clock: convert rockchip,rk3188-cru.txt " Stephen Boyd
2022-04-01  7:55   ` Heiko Stübner [this message]
2022-04-01 18:24     ` Stephen Boyd
2022-04-02 11:41     ` Krzysztof Kozlowski
2022-04-02 11:45       ` Johan Jonker
2022-04-02 12:16         ` Krzysztof Kozlowski
2022-04-02 12:20           ` Johan Jonker
2022-04-02 16:01             ` Krzysztof Kozlowski
2022-04-06 16:18               ` Heiko Stuebner
2022-05-17 19:11 ` Heiko Stuebner

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=3107512.vfdyTQepKt@diego \
    --to=heiko@sntech.de \
    --cc=devicetree@vger.kernel.org \
    --cc=jbx6244@gmail.com \
    --cc=krzk+dt@kernel.org \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-clk@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-rockchip@lists.infradead.org \
    --cc=mturquette@baylibre.com \
    --cc=robh+dt@kernel.org \
    --cc=sboyd@kernel.org \
    --cc=zhangqing@rock-chips.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).