From: heiko@sntech.de (Heiko Stuebner)
To: linux-arm-kernel@lists.infradead.org
Subject: [RESEND PATCH v2 3/5] clk: rockchip: add new pll-type for rk3399 and similar socs
Date: Wed, 09 Mar 2016 02:22:50 +0100 [thread overview]
Message-ID: <3286748.Col0jAfKKX@phil> (raw)
In-Reply-To: <1456827275-8035-4-git-send-email-zhengxing@rock-chips.com>
Am Dienstag, 1. M?rz 2016, 18:14:33 schrieb Xing Zheng:
> The rk3399's pll and clock are similar with rk3036's, it different
> with base on the rk3066(rk3188, rk3288, rk3368 use it), there are
> different adjust foctors and control registers, so these should be
> independent and separate from the series of rk3066s.
>
> Signed-off-by: Xing Zheng <zhengxing@rock-chips.com>
[...]
> +static int rockchip_rk3399_pll_set_params(struct rockchip_clk_pll *pll,
> + const struct rockchip_pll_rate_table *rate)
> +{
> + const struct clk_ops *pll_mux_ops = pll->pll_mux_ops;
> + struct clk_mux *pll_mux = &pll->pll_mux;
> + struct rockchip_pll_rate_table cur;
> + u32 pllcon;
> + int rate_change_remuxed = 0;
> + int cur_parent;
> + int ret;
> +
> + pr_debug("%s: rate settings for %lu fbdiv: %d, postdiv1: %d, refdiv: %d,
> postdiv2: %d, dsmpd: %d, frac: %d\n", + __func__, rate->rate,
> rate->fbdiv, rate->postdiv1, rate->refdiv, + rate->postdiv2,
> rate->dsmpd, rate->frac);
> +
> + rockchip_rk3399_pll_get_params(pll, &cur);
> + cur.rate = 0;
> +
> + cur_parent = pll_mux_ops->get_parent(&pll_mux->hw);
> + if (cur_parent == PLL_MODE_NORM) {
> + pll_mux_ops->set_parent(&pll_mux->hw, PLL_MODE_SLOW);
> + rate_change_remuxed = 1;
> + }
> +
> + /* update pll values */
> + writel_relaxed(HIWORD_UPDATE(rate->fbdiv, RK3399_PLLCON0_FBDIV_MASK,
> + RK3399_PLLCON0_FBDIV_SHIFT),
indentation is strange ... I guess the plan was to move
RK3399_PLLCON0_FBDIV_SHIFT under RK3399_PLLCON0_FBDIV_MASK, currently it's
having tabs + spaces but has no alignment whatsoever
> + pll->reg_base + RK3399_PLLCON(0));
> +
> + writel_relaxed(HIWORD_UPDATE(rate->refdiv, RK3399_PLLCON1_REFDIV_MASK,
> + RK3399_PLLCON1_REFDIV_SHIFT) |
> + HIWORD_UPDATE(rate->postdiv1, RK3399_PLLCON1_POSTDIV1_MASK,
> + RK3399_PLLCON1_POSTDIV1_SHIFT) |
same for postdiv1
> + HIWORD_UPDATE(rate->postdiv2, RK3399_PLLCON1_POSTDIV2_MASK,
> + RK3399_PLLCON1_POSTDIV2_SHIFT),
> + pll->reg_base + RK3399_PLLCON(1));
rest looks nice
Heiko
next prev parent reply other threads:[~2016-03-09 1:22 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-03-01 10:14 [RESEND PATCH v2 0/5] Add more clock compatible features and support the RK3399 clock Xing Zheng
2016-03-01 10:14 ` [RESEND PATCH v2 1/5] clk: rockchip: add more mux parameters for new pll sources Xing Zheng
2016-03-09 1:12 ` Heiko Stuebner
2016-03-01 10:14 ` [RESEND PATCH v2 2/5] clk: rockchip: Add support for multiple clock providers Xing Zheng
2016-03-01 10:14 ` [RESEND PATCH v2 3/5] clk: rockchip: add new pll-type for rk3399 and similar socs Xing Zheng
2016-03-09 1:22 ` Heiko Stuebner [this message]
2016-03-09 2:20 ` Xing Zheng
2016-03-01 10:14 ` [RESEND PATCH v2 4/5] clk: rockchip: add a COMPOSITE_FRACMUX_NOGATE type Xing Zheng
2016-03-01 10:15 ` [RESEND PATCH v2 5/5] clk: rockchip: add clock controller for the RK3399 Xing Zheng
2016-03-08 23:34 ` Doug Anderson
2016-03-09 0:51 ` Jianqun Xu
2016-03-09 1:26 ` Xing Zheng
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=3286748.Col0jAfKKX@phil \
--to=heiko@sntech.de \
--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 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).