All of lore.kernel.org
 help / color / mirror / Atom feed
From: Stephen Boyd <sboyd@codeaurora.org>
To: Tony Lindgren <tony@atomide.com>
Cc: Tero Kristo <t-kristo@ti.com>,
	linux-omap@vger.kernel.org, linux-clk@vger.kernel.org,
	mturquette@baylibre.com, linux-arm-kernel@lists.infradead.org,
	devicetree@vger.kernel.org, Rob Herring <robh+dt@kernel.org>
Subject: Re: [PATCHv4 11/15] clk: ti: clockdomain: add clock provider support to clockdomains
Date: Fri, 28 Oct 2016 16:36:17 -0700	[thread overview]
Message-ID: <20161028233617.GP16026@codeaurora.org> (raw)
In-Reply-To: <20161028125112.xfyrx7l7m64z6cu6@atomide.com>

On 10/28, Tony Lindgren wrote:
> * Tero Kristo <t-kristo@ti.com> [161028 00:43]:
> > On 28/10/16 03:50, Stephen Boyd wrote:
> > > I suppose a PRCM is
> > > like an MFD that has clocks and resets under it? On other
> > > platforms we've combined that all into one node and just had
> > > #clock-cells and #reset-cells in that node. Is there any reason
> > > we can't do that here?
> > 
> > For OMAPs, there are typically multiple instances of the PRCM around; OMAP4
> > for example has:
> > 
> > cm1 @ 0x4a004000 (clocks + clockdomains)
> > cm2 @ 0x4a008000 (clocks + clockdomains)
> > prm @ 0x4a306000 (few clocks + resets + power state handling)
> > scrm @ 0x4a30a000 (few external clocks + plenty of misc stuff)
> > 
> > These instances are also under different power/voltage domains which means
> > their PM behavior is different.
> > 
> > The idea behind having a clockdomain as a provider was mostly to have the
> > topology visible : prcm-instance -> clockdomain -> clocks
> 
> Yeah that's needed to get the interconnect hierarchy right for
> genpd :)
> 
> > ... but basically I think it would be possible to drop the clockdomain
> > representation and just mark the prcm-instance as a clock provider. Tony,
> > any thoughts on that?
> 
> No let's not drop the clockdomains as those will be needed when we
> move things into proper hierarchy within the interconnect instances.
> This will then help with getting things right with genpd.
> 
> In the long run we just want to specify clockdomain and the offset of
> the clock instance within the clockdomain in the dts files.
> 

Sorry, I have very little idea how OMAP hardware works. Do you
mean that you will have different nodes for each clockdomain so
that genpd can map 1:1 to the node in dts? But in hardware
there's a prcm that allows us to control many clock domains
through register read/writes? How is the interconnect involved?

-- 
Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum,
a Linux Foundation Collaborative Project

WARNING: multiple messages have this Message-ID (diff)
From: Stephen Boyd <sboyd-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org>
To: Tony Lindgren <tony-4v6yS6AI5VpBDgjK7y7TUQ@public.gmane.org>
Cc: Tero Kristo <t-kristo-l0cyMroinI0@public.gmane.org>,
	linux-omap-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
	linux-clk-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
	mturquette-rdvid1DuHRBWk0Htik3J/w@public.gmane.org,
	linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org,
	devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
	Rob Herring <robh+dt-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org>
Subject: Re: [PATCHv4 11/15] clk: ti: clockdomain: add clock provider support to clockdomains
Date: Fri, 28 Oct 2016 16:36:17 -0700	[thread overview]
Message-ID: <20161028233617.GP16026@codeaurora.org> (raw)
In-Reply-To: <20161028125112.xfyrx7l7m64z6cu6-4v6yS6AI5VpBDgjK7y7TUQ@public.gmane.org>

On 10/28, Tony Lindgren wrote:
> * Tero Kristo <t-kristo-l0cyMroinI0@public.gmane.org> [161028 00:43]:
> > On 28/10/16 03:50, Stephen Boyd wrote:
> > > I suppose a PRCM is
> > > like an MFD that has clocks and resets under it? On other
> > > platforms we've combined that all into one node and just had
> > > #clock-cells and #reset-cells in that node. Is there any reason
> > > we can't do that here?
> > 
> > For OMAPs, there are typically multiple instances of the PRCM around; OMAP4
> > for example has:
> > 
> > cm1 @ 0x4a004000 (clocks + clockdomains)
> > cm2 @ 0x4a008000 (clocks + clockdomains)
> > prm @ 0x4a306000 (few clocks + resets + power state handling)
> > scrm @ 0x4a30a000 (few external clocks + plenty of misc stuff)
> > 
> > These instances are also under different power/voltage domains which means
> > their PM behavior is different.
> > 
> > The idea behind having a clockdomain as a provider was mostly to have the
> > topology visible : prcm-instance -> clockdomain -> clocks
> 
> Yeah that's needed to get the interconnect hierarchy right for
> genpd :)
> 
> > ... but basically I think it would be possible to drop the clockdomain
> > representation and just mark the prcm-instance as a clock provider. Tony,
> > any thoughts on that?
> 
> No let's not drop the clockdomains as those will be needed when we
> move things into proper hierarchy within the interconnect instances.
> This will then help with getting things right with genpd.
> 
> In the long run we just want to specify clockdomain and the offset of
> the clock instance within the clockdomain in the dts files.
> 

Sorry, I have very little idea how OMAP hardware works. Do you
mean that you will have different nodes for each clockdomain so
that genpd can map 1:1 to the node in dts? But in hardware
there's a prcm that allows us to control many clock domains
through register read/writes? How is the interconnect involved?

-- 
Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum,
a Linux Foundation Collaborative Project
--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

WARNING: multiple messages have this Message-ID (diff)
From: sboyd@codeaurora.org (Stephen Boyd)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCHv4 11/15] clk: ti: clockdomain: add clock provider support to clockdomains
Date: Fri, 28 Oct 2016 16:36:17 -0700	[thread overview]
Message-ID: <20161028233617.GP16026@codeaurora.org> (raw)
In-Reply-To: <20161028125112.xfyrx7l7m64z6cu6@atomide.com>

On 10/28, Tony Lindgren wrote:
> * Tero Kristo <t-kristo@ti.com> [161028 00:43]:
> > On 28/10/16 03:50, Stephen Boyd wrote:
> > > I suppose a PRCM is
> > > like an MFD that has clocks and resets under it? On other
> > > platforms we've combined that all into one node and just had
> > > #clock-cells and #reset-cells in that node. Is there any reason
> > > we can't do that here?
> > 
> > For OMAPs, there are typically multiple instances of the PRCM around; OMAP4
> > for example has:
> > 
> > cm1 @ 0x4a004000 (clocks + clockdomains)
> > cm2 @ 0x4a008000 (clocks + clockdomains)
> > prm @ 0x4a306000 (few clocks + resets + power state handling)
> > scrm @ 0x4a30a000 (few external clocks + plenty of misc stuff)
> > 
> > These instances are also under different power/voltage domains which means
> > their PM behavior is different.
> > 
> > The idea behind having a clockdomain as a provider was mostly to have the
> > topology visible : prcm-instance -> clockdomain -> clocks
> 
> Yeah that's needed to get the interconnect hierarchy right for
> genpd :)
> 
> > ... but basically I think it would be possible to drop the clockdomain
> > representation and just mark the prcm-instance as a clock provider. Tony,
> > any thoughts on that?
> 
> No let's not drop the clockdomains as those will be needed when we
> move things into proper hierarchy within the interconnect instances.
> This will then help with getting things right with genpd.
> 
> In the long run we just want to specify clockdomain and the offset of
> the clock instance within the clockdomain in the dts files.
> 

Sorry, I have very little idea how OMAP hardware works. Do you
mean that you will have different nodes for each clockdomain so
that genpd can map 1:1 to the node in dts? But in hardware
there's a prcm that allows us to control many clock domains
through register read/writes? How is the interconnect involved?

-- 
Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum,
a Linux Foundation Collaborative Project

  reply	other threads:[~2016-10-28 23:36 UTC|newest]

Thread overview: 142+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-10-18 15:45 [PATCHv4 00/15] clk: ti: add support for hwmod clocks Tero Kristo
2016-10-18 15:45 ` Tero Kristo
2016-10-18 15:45 ` Tero Kristo
2016-10-18 15:45 ` [PATCHv4 01/15] clk: ti: remove un-used definitions from public clk_hw_omap struct Tero Kristo
2016-10-18 15:45   ` Tero Kristo
2016-10-18 15:45   ` Tero Kristo
2016-10-18 15:45 ` [PATCHv4 02/15] clk: ti: mux: export mux clock APIs locally Tero Kristo
2016-10-18 15:45   ` Tero Kristo
2016-10-18 15:45   ` Tero Kristo
2016-10-18 15:45 ` [PATCHv4 03/15] dt-bindings: clock: add omap4 hwmod clock IDs Tero Kristo
2016-10-18 15:45   ` Tero Kristo
2016-10-18 15:45   ` Tero Kristo
2016-10-20 12:47   ` Tony Lindgren
2016-10-20 12:47     ` Tony Lindgren
2016-10-20 12:59     ` Tero Kristo
2016-10-20 12:59       ` Tero Kristo
2016-10-20 12:59       ` Tero Kristo
2016-10-20 13:11       ` Tony Lindgren
2016-10-20 13:11         ` Tony Lindgren
2016-10-18 15:45 ` [PATCHv4 04/15] clk: ti: add support for automatic clock alias generation Tero Kristo
2016-10-18 15:45   ` Tero Kristo
2016-10-18 15:45   ` Tero Kristo
2016-10-18 15:45 ` [PATCHv4 05/15] clk: ti: create clock aliases automatically for simple clock types Tero Kristo
2016-10-18 15:45   ` Tero Kristo
2016-10-18 15:45   ` Tero Kristo
2016-10-18 15:45 ` [PATCHv4 06/15] clk: ti: use automatic clock alias generation framework Tero Kristo
2016-10-18 15:45   ` Tero Kristo
2016-10-18 15:45   ` Tero Kristo
2016-10-18 15:46 ` [PATCHv4 07/15] clk: ti: rename ti_clk_register_legacy_clks API Tero Kristo
2016-10-18 15:46   ` Tero Kristo
2016-10-18 15:46   ` Tero Kristo
2016-10-18 15:46 ` [PATCHv4 08/15] clk: ti: add clkdm_lookup to the exported functions Tero Kristo
2016-10-18 15:46   ` Tero Kristo
2016-10-18 15:46   ` Tero Kristo
2016-10-18 15:46 ` [PATCHv4 09/15] clk: ti: move omap2_init_clk_clkdm under TI clock driver Tero Kristo
2016-10-18 15:46   ` Tero Kristo
2016-10-18 15:46   ` Tero Kristo
2016-10-20 12:59   ` Tony Lindgren
2016-10-20 12:59     ` Tony Lindgren
2016-10-18 15:46 ` [PATCHv4 10/15] clk: ti: add support API for fetching memmap index Tero Kristo
2016-10-18 15:46   ` Tero Kristo
2016-10-18 15:46   ` Tero Kristo
2016-10-18 15:46 ` [PATCHv4 11/15] clk: ti: clockdomain: add clock provider support to clockdomains Tero Kristo
2016-10-18 15:46   ` Tero Kristo
2016-10-18 15:46   ` Tero Kristo
2016-10-20 13:06   ` Tony Lindgren
2016-10-20 13:06     ` Tony Lindgren
2016-10-28  0:50   ` Stephen Boyd
2016-10-28  0:50     ` Stephen Boyd
2016-10-28  0:50     ` Stephen Boyd
2016-10-28  7:41     ` Tero Kristo
2016-10-28  7:41       ` Tero Kristo
2016-10-28  7:41       ` Tero Kristo
2016-10-28 12:51       ` Tony Lindgren
2016-10-28 12:51         ` Tony Lindgren
2016-10-28 12:51         ` Tony Lindgren
2016-10-28 23:36         ` Stephen Boyd [this message]
2016-10-28 23:36           ` Stephen Boyd
2016-10-28 23:36           ` Stephen Boyd
2016-10-28 23:54           ` Tony Lindgren
2016-10-28 23:54             ` Tony Lindgren
2016-12-02 22:33             ` Michael Turquette
2016-12-02 22:33               ` Michael Turquette
2016-12-02 22:33               ` Michael Turquette
2016-12-02 23:12               ` Tony Lindgren
2016-12-02 23:12                 ` Tony Lindgren
2016-12-02 23:52                 ` Michael Turquette
2016-12-02 23:52                   ` Michael Turquette
2016-12-02 23:52                   ` Michael Turquette
2016-12-03  0:18                   ` Tony Lindgren
2016-12-03  0:18                     ` Tony Lindgren
2016-12-03  0:18                     ` Tony Lindgren
2016-12-05 10:08                     ` Tero Kristo
2016-12-05 10:08                       ` Tero Kristo
2016-12-05 10:08                       ` Tero Kristo
2016-12-05 15:25                       ` Tony Lindgren
2016-12-05 15:25                         ` Tony Lindgren
2016-12-05 15:25                         ` Tony Lindgren
2016-12-09 20:02                         ` Michael Turquette
2016-12-09 20:02                           ` Michael Turquette
2016-12-09 20:02                           ` Michael Turquette
2016-12-09 20:40                           ` Tony Lindgren
2016-12-09 20:40                             ` Tony Lindgren
2016-12-09 20:40                             ` Tony Lindgren
2016-12-09 21:28                             ` Michael Turquette
2016-12-09 21:28                               ` Michael Turquette
2016-12-09 21:28                               ` Michael Turquette
2016-12-09 21:58                               ` Tony Lindgren
2016-12-09 21:58                                 ` Tony Lindgren
2016-10-18 15:46 ` [PATCHv4 12/15] clk: ti: enforce const types on string arrays Tero Kristo
2016-10-18 15:46   ` Tero Kristo
2016-10-18 15:46   ` Tero Kristo
2016-10-18 15:46 ` [PATCHv4 13/15] clk: ti: add support for omap4 module clocks Tero Kristo
2016-10-18 15:46   ` Tero Kristo
2016-10-18 15:46   ` Tero Kristo
2016-10-18 15:46 ` [PATCHv4 14/15] clk: ti: omap4: add hwmod clock data Tero Kristo
2016-10-18 15:46   ` Tero Kristo
2016-10-18 15:46   ` Tero Kristo
2016-10-18 15:46 ` [PATCHv4 15/15] clk: ti: omap4: cleanup unnecessary clock aliases Tero Kristo
2016-10-18 15:46   ` Tero Kristo
2016-10-18 15:46   ` Tero Kristo
2016-10-28  0:53 ` [PATCHv4 00/15] clk: ti: add support for hwmod clocks Stephen Boyd
2016-10-28  0:53   ` Stephen Boyd
2016-10-28  7:19   ` Tero Kristo
2016-10-28  7:19     ` Tero Kristo
2016-10-28  7:19     ` Tero Kristo
2016-10-28 23:37     ` Stephen Boyd
2016-10-28 23:37       ` Stephen Boyd
2016-12-02  8:15       ` Tero Kristo
2016-12-02  8:15         ` Tero Kristo
2016-12-02  8:15         ` Tero Kristo
2016-12-12 18:25         ` Michael Turquette
2016-12-12 18:25           ` Michael Turquette
2016-12-12 18:25           ` Michael Turquette
2016-12-13  0:49           ` Stephen Boyd
2016-12-13  0:49             ` Stephen Boyd
2016-12-13  1:31             ` Tony Lindgren
2016-12-13  1:31               ` Tony Lindgren
2016-12-13  1:37               ` Tony Lindgren
2016-12-13  1:37                 ` Tony Lindgren
2016-12-13  4:40               ` Michael Turquette
2016-12-13  4:40                 ` Michael Turquette
2016-12-13  4:40                 ` Michael Turquette
2016-12-13  8:31                 ` Tero Kristo
2016-12-13  8:31                   ` Tero Kristo
2016-12-13  8:31                   ` Tero Kristo
2016-12-13 15:37                   ` Tony Lindgren
2016-12-13 15:37                     ` Tony Lindgren
2016-12-13 22:02                     ` Michael Turquette
2016-12-13 22:02                       ` Michael Turquette
2016-12-13 22:02                       ` Michael Turquette
2016-12-14  0:43                       ` Tony Lindgren
2016-12-14  0:43                         ` Tony Lindgren
2016-12-17  1:46                   ` Stephen Boyd
2016-12-17  1:46                     ` Stephen Boyd
2016-12-19  6:22                     ` Tero Kristo
2016-12-19  6:22                       ` Tero Kristo
2016-12-19  6:22                       ` Tero Kristo
2016-12-20 22:56                       ` Stephen Boyd
2016-12-20 22:56                         ` Stephen Boyd
2016-12-20 23:04                         ` Tony Lindgren
2016-12-20 23:04                           ` Tony Lindgren

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=20161028233617.GP16026@codeaurora.org \
    --to=sboyd@codeaurora.org \
    --cc=devicetree@vger.kernel.org \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-clk@vger.kernel.org \
    --cc=linux-omap@vger.kernel.org \
    --cc=mturquette@baylibre.com \
    --cc=robh+dt@kernel.org \
    --cc=t-kristo@ti.com \
    --cc=tony@atomide.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.