public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: David Brownell <david-b@pacbell.net>
To: Dmitry <dbaryshkov@gmail.com>
Cc: "Paul Walmsley" <paul@pwsan.com>,
	linux-kernel@vger.kernel.org, akpm@linux-foundation.org,
	"Haavard Skinnemoen" <haavard.skinnemoen@atmel.com>,
	"Russell King" <rmk+lkml@arm.linux.org.uk>,
	"Paul Mundt" <lethal@linux-sh.org>,
	"pHilipp Zabel" <philipp.zabel@gmail.com>,
	"Pavel Machek" <pavel@ucw.cz>,
	tony@atomide.com, hiroshi.DOYU@nokia.com
Subject: Re: [PATCH 0/5] Clocklib: generic clocks framework
Date: Sat, 26 Apr 2008 09:29:44 -0700	[thread overview]
Message-ID: <200804260929.44928.david-b@pacbell.net> (raw)
In-Reply-To: <bc64b4640804260138v29fada38m55f3e4c053aa1a41@mail.gmail.com>

On Saturday 26 April 2008, Dmitry wrote:
> > > Also once we get to multiple chips providers/users, we'll see,
> > > that the clock simply can't have just one record in the clocks tree.
> >
> >  I don't follow.  Why not?  If a clock has multiple records, I'd
> >  expect its refcounts would easily get borked.  I think I don't
> >  like your notion of a "wrapper clock".
> 
> It seems, I failed to describe it correctly.
> Let's suppose this situation:
> We have CLK, that is connected to the pin CK1 of the device dev_A and to the pin
> CK36M of the device dev_B.
> 
> The we'll have these clocks:
> .CLK count=0
> \- CK1 count=0 for dev_A
> \- CK36M count=0 for dev_B

But that's incorrect.  What we have is

  CLK users=0
    aliased as CK1 for dev_A
    aliased as CK36M for dev_b

The difference being that you are showing that CK1 and CK36M have
independent clock gates ... which are not actually present.

The difference between this and the at91_clk_associate() example
is that with clk_associate(), there is only one alias per clock.
There are cases where multiple aliases would be better ... TCB
modules, the "system" clock, and so on.


> When device dev_A enables it's clock,
> we'll have this:
> .CLK count=1
> \- CK1 count=1 for dev_A
> \- CK36M count=0 for dev_B

No, we have

  CLK users=1
    ... same aliases


> After that dev_B enables it's clock:
> .CLK count=2
> \- CK1 count=1 for dev_A
> \- CK36M count=1 for dev_B

Should be

  CLK users=2
    ... same aliases


> So refcounting is correct.

No.  When someone's looking at the clock tree to see what clocks
are active, and thus deduce which silicon is incurring switching
costs, these "wrapper clocks" are not telling the correct story.

- Dave




  reply	other threads:[~2008-04-26 16:29 UTC|newest]

Thread overview: 27+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-04-20  8:29 [PATCH 0/5] Clocklib: generic clocks framework Dmitry Baryshkov
2008-04-20  8:30 ` [PATCH 1/5] Clocklib: add generic framework for managing clocks Dmitry Baryshkov
2008-04-20  8:30 ` [PATCH 2/5] Clocklib: debugfs support Dmitry Baryshkov
2008-04-20  8:31 ` [PATCH 3/5] Clocklib: support sa1100 sub-arch Dmitry Baryshkov
2008-04-20  8:31 ` [PATCH 4/5] Clocklib: support ARM pxa sub-arch Dmitry Baryshkov
2008-04-20  8:31 ` [PATCH 5/5] Clocklib: Use correct clock for IrDA on pxa Dmitry Baryshkov
2008-04-21  7:44 ` [PATCH 0/5] Clocklib: generic clocks framework Paul Walmsley
2008-04-21  8:48   ` Dmitry
2008-04-21  9:15     ` Hiroshi DOYU
2008-04-25  9:36     ` Paul Walmsley
2008-04-25 10:39       ` Pavel Machek
2008-04-25 20:20         ` Russell King
2008-04-25 20:34           ` Dmitry
2008-04-25 20:44             ` Russell King
2008-04-25 20:51           ` Pavel Machek
2008-04-25 21:13             ` Russell King
2008-04-25 21:36               ` Dmitry
2008-04-26  8:47       ` Dmitry
2008-04-26 18:02         ` David Brownell
2008-05-02  5:23         ` Paul Walmsley
2008-05-02  9:40           ` Dmitry
2008-05-05  7:59           ` Pavel Machek
2008-04-25 22:46     ` David Brownell
2008-04-26  8:38       ` Dmitry
2008-04-26 16:29         ` David Brownell [this message]
  -- strict thread matches above, loose matches on Subject: below --
2008-04-20  8:28 Dmitry Baryshkov
2008-04-13 14:41 Dmitry Baryshkov

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=200804260929.44928.david-b@pacbell.net \
    --to=david-b@pacbell.net \
    --cc=akpm@linux-foundation.org \
    --cc=dbaryshkov@gmail.com \
    --cc=haavard.skinnemoen@atmel.com \
    --cc=hiroshi.DOYU@nokia.com \
    --cc=lethal@linux-sh.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=paul@pwsan.com \
    --cc=pavel@ucw.cz \
    --cc=philipp.zabel@gmail.com \
    --cc=rmk+lkml@arm.linux.org.uk \
    --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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox