From: Tomasz Figa <tomasz.figa@gmail.com>
To: Doug Anderson <dianders@chromium.org>
Cc: Yadwinder Singh Brar <yadi.brar@samsung.com>,
linux-samsung-soc <linux-samsung-soc@vger.kernel.org>,
"linux-arm-kernel@lists.infradead.org"
<linux-arm-kernel@lists.infradead.org>,
Kukjin Kim <kgene.kim@samsung.com>,
Mike Turquette <mturquette@linaro.org>,
Thomas Abraham <thomas.abraham@linaro.org>,
Tomasz Figa <t.figa@samsung.com>,
Vikas Sajjan <vikas.sajjan@linaro.org>,
Patch Tracking <patches@linaro.org>,
Andrew Bresticker <abrestic@chromium.org>
Subject: Re: [PATCH v4 1/6] clk: samsung: Use clk->base instead of directly using clk->con0 for PLL3xxx
Date: Wed, 12 Jun 2013 23:19:42 +0200 [thread overview]
Message-ID: <1501124.EVQA8KO0ic@flatron> (raw)
In-Reply-To: <CAD=FV=VTLkH9oDqr263Kyv=wCEbuQ40VL7mtC73SCMt20NPwgQ@mail.gmail.com>
Hi,
On Wednesday 12 of June 2013 13:33:50 Doug Anderson wrote:
> Yadwinder,
>
> On Mon, Jun 3, 2013 at 8:09 AM, Yadwinder Singh Brar
>
> <yadi.brar@samsung.com> wrote:
> > This patch unifies clk strutures used for PLL35xx & PLL36xx and uses
> > clk->base instead of directly using clk->con0, so that possible
> > common code can be factored out.
> > It also introdues common pll_[readl/writel] macros for the users of
> > common samsung_clk_pll struct.
> >
> > Reviewed-by: Tomasz Figa <t.figa@samsung.com>
> > Reviewed-by: Doug Anderson <dianders@chromium.org>
> > Tested-by: Doug Anderson <dianders@chromium.org>
> > Signed-off-by: Yadwinder Singh Brar <yadi.brar@samsung.com>
> > ---
> >
> > drivers/clk/samsung/clk-exynos4.c | 10 ++++--
> > drivers/clk/samsung/clk-exynos5250.c | 14 ++++----
> > drivers/clk/samsung/clk-pll.c | 54
> > ++++++++++++++++++--------------- drivers/clk/samsung/clk-pll.h
> > | 4 +-
> > 4 files changed, 44 insertions(+), 38 deletions(-)
>
> So. We just found that this type of solution doesn't work on
> exynos5420, since the LOCK and CON registers aren't always 0x100 away
> from each other.
Oops, this is what I've been afraid of, ever since we assumed this first
time in our internal patches.
> Perhaps you can adjust to use a solution like Andrew
> proposed in <https://gerrit.chromium.org/gerrit/#/c/58411/>? That way
> we can avoid some churn of changing this code twice.
>
> The number of parameters to the register PLL function is starting to
> get unwieldy. At some point we'll probably want to pass in a
> structure. I wonder if now would be the time? Certainly it would be
> easier to handle changes to the code without touching all of the
> exynos variants...
Hmm, if done properly, it could simplify PLL registration in SoC clock
initialization code a lot.
I'm not sure if this is really the best solution (feel free to suggest
anything better), but we could put PLLs in an array, like other clocks,
e.g.
... exynos4210_pll_clks[] = {
CLK_PLL45XX(...),
CLK_PLL45XX(...),
CLK_PLL46XX(...),
CLK_PLL46XX(...),
};
and then just call a helper like
samsung_clk_register_pll(exynos4210_pll_clks,
ARRAY_SIZE(exynos4210_pll_clks));
Best regards,
Tomasz
> Thanks!
>
> -Doug
> --
> To unsubscribe from this list: send the line "unsubscribe
> linux-samsung-soc" in the body of a message to
> majordomo@vger.kernel.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html
WARNING: multiple messages have this Message-ID (diff)
From: tomasz.figa@gmail.com (Tomasz Figa)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH v4 1/6] clk: samsung: Use clk->base instead of directly using clk->con0 for PLL3xxx
Date: Wed, 12 Jun 2013 23:19:42 +0200 [thread overview]
Message-ID: <1501124.EVQA8KO0ic@flatron> (raw)
In-Reply-To: <CAD=FV=VTLkH9oDqr263Kyv=wCEbuQ40VL7mtC73SCMt20NPwgQ@mail.gmail.com>
Hi,
On Wednesday 12 of June 2013 13:33:50 Doug Anderson wrote:
> Yadwinder,
>
> On Mon, Jun 3, 2013 at 8:09 AM, Yadwinder Singh Brar
>
> <yadi.brar@samsung.com> wrote:
> > This patch unifies clk strutures used for PLL35xx & PLL36xx and uses
> > clk->base instead of directly using clk->con0, so that possible
> > common code can be factored out.
> > It also introdues common pll_[readl/writel] macros for the users of
> > common samsung_clk_pll struct.
> >
> > Reviewed-by: Tomasz Figa <t.figa@samsung.com>
> > Reviewed-by: Doug Anderson <dianders@chromium.org>
> > Tested-by: Doug Anderson <dianders@chromium.org>
> > Signed-off-by: Yadwinder Singh Brar <yadi.brar@samsung.com>
> > ---
> >
> > drivers/clk/samsung/clk-exynos4.c | 10 ++++--
> > drivers/clk/samsung/clk-exynos5250.c | 14 ++++----
> > drivers/clk/samsung/clk-pll.c | 54
> > ++++++++++++++++++--------------- drivers/clk/samsung/clk-pll.h
> > | 4 +-
> > 4 files changed, 44 insertions(+), 38 deletions(-)
>
> So. We just found that this type of solution doesn't work on
> exynos5420, since the LOCK and CON registers aren't always 0x100 away
> from each other.
Oops, this is what I've been afraid of, ever since we assumed this first
time in our internal patches.
> Perhaps you can adjust to use a solution like Andrew
> proposed in <https://gerrit.chromium.org/gerrit/#/c/58411/>? That way
> we can avoid some churn of changing this code twice.
>
> The number of parameters to the register PLL function is starting to
> get unwieldy. At some point we'll probably want to pass in a
> structure. I wonder if now would be the time? Certainly it would be
> easier to handle changes to the code without touching all of the
> exynos variants...
Hmm, if done properly, it could simplify PLL registration in SoC clock
initialization code a lot.
I'm not sure if this is really the best solution (feel free to suggest
anything better), but we could put PLLs in an array, like other clocks,
e.g.
... exynos4210_pll_clks[] = {
CLK_PLL45XX(...),
CLK_PLL45XX(...),
CLK_PLL46XX(...),
CLK_PLL46XX(...),
};
and then just call a helper like
samsung_clk_register_pll(exynos4210_pll_clks,
ARRAY_SIZE(exynos4210_pll_clks));
Best regards,
Tomasz
> Thanks!
>
> -Doug
> --
> To unsubscribe from this list: send the line "unsubscribe
> linux-samsung-soc" in the body of a message to
> majordomo at vger.kernel.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html
next prev parent reply other threads:[~2013-06-12 21:19 UTC|newest]
Thread overview: 46+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-06-03 15:09 [PATCH v4 0/6] Add generic set_rate clk_ops for PLL35xx and PLL36xx for samsung SoCs Yadwinder Singh Brar
2013-06-03 15:09 ` Yadwinder Singh Brar
2013-06-03 15:09 ` [PATCH v4 1/6] clk: samsung: Use clk->base instead of directly using clk->con0 for PLL3xxx Yadwinder Singh Brar
2013-06-03 15:09 ` Yadwinder Singh Brar
2013-06-12 20:33 ` Doug Anderson
2013-06-12 20:33 ` Doug Anderson
2013-06-12 20:35 ` Doug Anderson
2013-06-12 20:35 ` Doug Anderson
2013-06-12 21:19 ` Tomasz Figa [this message]
2013-06-12 21:19 ` Tomasz Figa
2013-06-12 21:50 ` Doug Anderson
2013-06-12 21:50 ` Doug Anderson
2013-06-12 22:02 ` Andrew Bresticker
2013-06-12 22:02 ` Andrew Bresticker
2013-06-13 7:02 ` Yadwinder Singh Brar
2013-06-13 7:02 ` Yadwinder Singh Brar
2013-06-13 9:30 ` Tomasz Figa
2013-06-13 9:30 ` Tomasz Figa
2013-06-13 18:35 ` Yadwinder Singh Brar
2013-06-13 18:35 ` Yadwinder Singh Brar
2013-06-13 18:43 ` Tomasz Figa
2013-06-13 18:43 ` Tomasz Figa
2013-06-13 19:12 ` Yadwinder Singh Brar
2013-06-13 19:12 ` Yadwinder Singh Brar
2013-06-03 15:09 ` [PATCH v4 2/6] clk: samsung: Add support to register rate_table " Yadwinder Singh Brar
2013-06-03 15:09 ` Yadwinder Singh Brar
2013-06-12 20:43 ` Doug Anderson
2013-06-12 20:43 ` Doug Anderson
2013-06-12 21:25 ` Tomasz Figa
2013-06-12 21:25 ` Tomasz Figa
2013-06-03 15:09 ` [PATCH v4 3/6] clk: samsung: Add set_rate() clk_ops for PLL35xx Yadwinder Singh Brar
2013-06-03 15:09 ` Yadwinder Singh Brar
2013-06-12 21:04 ` Tomasz Figa
2013-06-12 21:04 ` Tomasz Figa
2013-06-03 15:09 ` [PATCH v4 4/6] clk: samsung: Add set_rate() clk_ops for PLL36xx Yadwinder Singh Brar
2013-06-03 15:09 ` Yadwinder Singh Brar
2013-06-12 21:06 ` Tomasz Figa
2013-06-12 21:06 ` Tomasz Figa
2013-06-03 15:09 ` [PATCH v4 5/6] clk: samsung: Reorder MUX registration for mout_vpllsrc Yadwinder Singh Brar
2013-06-03 15:09 ` Yadwinder Singh Brar
2013-06-12 21:06 ` Tomasz Figa
2013-06-12 21:06 ` Tomasz Figa
2013-06-03 15:09 ` [PATCH v4 6/6] clk: samsung: Add EPLL and VPLL freq table for exynos5250 SoC Yadwinder Singh Brar
2013-06-03 15:09 ` Yadwinder Singh Brar
2013-06-12 20:52 ` Doug Anderson
2013-06-12 20:52 ` Doug Anderson
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=1501124.EVQA8KO0ic@flatron \
--to=tomasz.figa@gmail.com \
--cc=abrestic@chromium.org \
--cc=dianders@chromium.org \
--cc=kgene.kim@samsung.com \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-samsung-soc@vger.kernel.org \
--cc=mturquette@linaro.org \
--cc=patches@linaro.org \
--cc=t.figa@samsung.com \
--cc=thomas.abraham@linaro.org \
--cc=vikas.sajjan@linaro.org \
--cc=yadi.brar@samsung.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.