All of lore.kernel.org
 help / color / mirror / Atom feed
From: lee.jones@linaro.org (Lee Jones)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH 2/6] pinctrl: Update clock handling for the pinctrl-nomadik GPIO driver
Date: Thu, 25 Oct 2012 16:51:43 +0100	[thread overview]
Message-ID: <20121025155143.GK4008@gmail.com> (raw)
In-Reply-To: <CACRpkdbNWE6hOdVFPxHv7MVHkZUBW3LC035CxJkZVmr8j05Kqw@mail.gmail.com>

On Thu, 25 Oct 2012, Linus Walleij wrote:

> On Thu, Oct 25, 2012 at 2:41 PM, Linus Walleij <linus.walleij@linaro.org> wrote:
> > On Wed, Oct 24, 2012 at 4:45 PM, Lee Jones <lee.jones@linaro.org> wrote:
> >
> >> The clock framework has changed somewhat and it's now better to
> >> invoke clock_prepare_enable() and clk_disable_unprepare() rather
> >> than the legacy clk_enable() and clk_disable() calls. This patch
> >> converts the Nomadik Pin Control driver to the new framework.
> >>
> >> Signed-off-by: Lee Jones <lee.jones@linaro.org>
> >
> > I was convinced that this is a good change but no regression,
> > so applied to the devel branch for 3.8.
> >
> > I also removed the initial clk_prepare() so the reference count
> > may actually go down to 0 for the GPIO block and the peripheral
> > cluster eventually gets relaxed.
> 
> Famous last words!
> 
> The good news is that this actually works, and the refcount
> *does* go down to zero and gate off entire peripheral
> clusters.
> 
> However that was not good because something vital in
> some peripheral cluster died and killed the system :-D
> 
> Lee, could to to track down the reason and fix it so the patch
> can be applied?
> 
> The only thing you need to do is to remove the superfluous
> clk_prepare() right after the devm_clk_get() that hogs each
> peripheral cluster.
> 
> Probably some driver is needing a clk_get() or a clk_get_sys() is
> needs to be added somewhere to bring up some vital cluster,
> or there may be some out-of-tree driver needed to bring up the
> cluster properly I have no clue... Maybe some cluster just
> cannot be declocked like that.

I leave work in 10 mins and won't be coding again for ~2.5 weeks.
So if this is something you could squeeze in and fix-up, I'd be
very grateful.

Kind regards,
Lee

-- 
Lee Jones
Linaro ST-Ericsson Landing Team Lead
Linaro.org ? Open source software for ARM SoCs
Follow Linaro: Facebook | Twitter | Blog

WARNING: multiple messages have this Message-ID (diff)
From: Lee Jones <lee.jones@linaro.org>
To: Linus Walleij <linus.walleij@linaro.org>
Cc: linux-arm-kernel@lists.infradead.org,
	linux-kernel@vger.kernel.org, arnd@arndb.de,
	linus.walleij@stericsson.com,
	Ulf Hansson <ulf.hansson@linaro.org>
Subject: Re: [PATCH 2/6] pinctrl: Update clock handling for the pinctrl-nomadik GPIO driver
Date: Thu, 25 Oct 2012 16:51:43 +0100	[thread overview]
Message-ID: <20121025155143.GK4008@gmail.com> (raw)
In-Reply-To: <CACRpkdbNWE6hOdVFPxHv7MVHkZUBW3LC035CxJkZVmr8j05Kqw@mail.gmail.com>

On Thu, 25 Oct 2012, Linus Walleij wrote:

> On Thu, Oct 25, 2012 at 2:41 PM, Linus Walleij <linus.walleij@linaro.org> wrote:
> > On Wed, Oct 24, 2012 at 4:45 PM, Lee Jones <lee.jones@linaro.org> wrote:
> >
> >> The clock framework has changed somewhat and it's now better to
> >> invoke clock_prepare_enable() and clk_disable_unprepare() rather
> >> than the legacy clk_enable() and clk_disable() calls. This patch
> >> converts the Nomadik Pin Control driver to the new framework.
> >>
> >> Signed-off-by: Lee Jones <lee.jones@linaro.org>
> >
> > I was convinced that this is a good change but no regression,
> > so applied to the devel branch for 3.8.
> >
> > I also removed the initial clk_prepare() so the reference count
> > may actually go down to 0 for the GPIO block and the peripheral
> > cluster eventually gets relaxed.
> 
> Famous last words!
> 
> The good news is that this actually works, and the refcount
> *does* go down to zero and gate off entire peripheral
> clusters.
> 
> However that was not good because something vital in
> some peripheral cluster died and killed the system :-D
> 
> Lee, could to to track down the reason and fix it so the patch
> can be applied?
> 
> The only thing you need to do is to remove the superfluous
> clk_prepare() right after the devm_clk_get() that hogs each
> peripheral cluster.
> 
> Probably some driver is needing a clk_get() or a clk_get_sys() is
> needs to be added somewhere to bring up some vital cluster,
> or there may be some out-of-tree driver needed to bring up the
> cluster properly I have no clue... Maybe some cluster just
> cannot be declocked like that.

I leave work in 10 mins and won't be coding again for ~2.5 weeks.
So if this is something you could squeeze in and fix-up, I'd be
very grateful.

Kind regards,
Lee

-- 
Lee Jones
Linaro ST-Ericsson Landing Team Lead
Linaro.org │ Open source software for ARM SoCs
Follow Linaro: Facebook | Twitter | Blog

  reply	other threads:[~2012-10-25 15:51 UTC|newest]

Thread overview: 54+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-10-24 14:45 [PATCH 0/6] ux500 fixes bound for the -rcs Lee Jones
2012-10-24 14:45 ` Lee Jones
2012-10-24 14:45 ` [PATCH 1/6] mfd: ab8500-core: Remove unused ab8500-gpio IRQ ranges Lee Jones
2012-10-24 14:45   ` Lee Jones
2012-10-24 17:37   ` Linus Walleij
2012-10-24 17:37     ` Linus Walleij
2012-10-24 14:45 ` [PATCH 2/6] pinctrl: Update clock handling for the pinctrl-nomadik GPIO driver Lee Jones
2012-10-24 14:45   ` Lee Jones
2012-10-24 17:32   ` Linus Walleij
2012-10-24 17:32     ` Linus Walleij
2012-10-25  7:31     ` Lee Jones
2012-10-25  7:31       ` Lee Jones
2012-10-25  7:57       ` Linus Walleij
2012-10-25  7:57         ` Linus Walleij
2012-10-25  8:23         ` Lee Jones
2012-10-25  8:23           ` Lee Jones
2012-10-25  9:29           ` Ulf Hansson
2012-10-25  9:29             ` Ulf Hansson
2012-10-25  9:44             ` Lee Jones
2012-10-25  9:44               ` Lee Jones
2012-10-25 12:33             ` Linus Walleij
2012-10-25 12:33               ` Linus Walleij
2012-10-25 12:07           ` Linus Walleij
2012-10-25 12:07             ` Linus Walleij
2012-10-25 12:41   ` Linus Walleij
2012-10-25 12:41     ` Linus Walleij
2012-10-25 13:07     ` Lee Jones
2012-10-25 13:07       ` Lee Jones
2012-10-25 13:13     ` Linus Walleij
2012-10-25 13:13       ` Linus Walleij
2012-10-25 15:51       ` Lee Jones [this message]
2012-10-25 15:51         ` Lee Jones
2012-10-25 16:03         ` Linus Walleij
2012-10-25 16:03           ` Linus Walleij
2012-11-14 13:18           ` Lee Jones
2012-11-14 13:18             ` Lee Jones
2012-11-14 14:37             ` Linus Walleij
2012-11-14 14:37               ` Linus Walleij
2012-10-24 14:45 ` [PATCH 3/6] ARM: ux500: Fix build error relating to IRQCHIP_SKIP_SET_WAKE Lee Jones
2012-10-24 14:45   ` Lee Jones
2012-10-24 14:45 ` [PATCH 4/6] ARM: ux500: Specify AMBA Primecell IDs for Nomadik I2C in DT Lee Jones
2012-10-24 14:45   ` Lee Jones
2012-10-24 17:47   ` Linus Walleij
2012-10-24 17:47     ` Linus Walleij
2012-10-24 14:45 ` [PATCH 5/6] ARM: ux500: Correct SDI5 address and add some format changes Lee Jones
2012-10-24 14:45   ` Lee Jones
2012-10-24 17:48   ` Linus Walleij
2012-10-24 17:48     ` Linus Walleij
2012-10-24 14:45 ` [PATCH 6/6] ARM: ux500: Convert DT_MACHINE_START to use SMP operations Lee Jones
2012-10-24 14:45   ` Lee Jones
2012-10-24 17:48   ` Linus Walleij
2012-10-24 17:48     ` Linus Walleij
2012-10-24 17:46 ` [PATCH 0/6] ux500 fixes bound for the -rcs Linus Walleij
2012-10-24 17:46   ` Linus Walleij

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=20121025155143.GK4008@gmail.com \
    --to=lee.jones@linaro.org \
    --cc=linux-arm-kernel@lists.infradead.org \
    /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.