diff options
author | Antony Pavlov <antonynpavlov@gmail.com> | 2016-06-14 01:15:03 +0300 |
---|---|---|
committer | Sascha Hauer <s.hauer@pengutronix.de> | 2016-06-14 08:39:55 +0200 |
commit | 5253099564fb2250d7aaaf72f53aaeedb7b3b7d8 (patch) | |
tree | 310d1355ac8d76d7c7d130905ebd8e1251c7896f /drivers/clk | |
parent | 9f4e3730bd7d88e29537d91a7099a252f821f3ee (diff) | |
download | barebox-5253099564fb2250d7aaaf72f53aaeedb7b3b7d8.tar.gz barebox-5253099564fb2250d7aaaf72f53aaeedb7b3b7d8.tar.xz |
MIPS: ath79: dts: sync clk stuff with linux v4.7-rc2
Please see these linux kernel ath79 commits:
commit 1e6a3492e7bb12aa8ee26050ff6829c39ebaa152
Author: Antony Pavlov <antonynpavlov@gmail.com>
Date: Thu Mar 17 06:34:17 2016 +0300
MIPS: dts: qca: introduce AR9331 devicetree
commit 5ae5c452e3361612cd8182eb8bdfecf0ebf42288
Author: Antony Pavlov <antonynpavlov@gmail.com>
Date: Thu Mar 17 06:34:18 2016 +0300
MIPS: ath79: update devicetree clock support for AR9331
Signed-off-by: Antony Pavlov <antonynpavlov@gmail.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Diffstat (limited to 'drivers/clk')
-rw-r--r-- | drivers/clk/clk-ar933x.c | 33 |
1 files changed, 6 insertions, 27 deletions
diff --git a/drivers/clk/clk-ar933x.c b/drivers/clk/clk-ar933x.c index ffbd4dfab3..f5cfd39cd8 100644 --- a/drivers/clk/clk-ar933x.c +++ b/drivers/clk/clk-ar933x.c @@ -24,9 +24,9 @@ #include <linux/err.h> #include <mach/ath79.h> -#include <dt-bindings/clock/ar933x-clk.h> +#include <dt-bindings/clock/ath79-clk.h> -static struct clk *clks[AR933X_CLK_END]; +static struct clk *clks[ATH79_CLK_END]; static struct clk_onecell_data clk_data; struct clk_ar933x { @@ -100,39 +100,19 @@ static struct clk *clk_ar933x(const char *name, const char *parent, return &f->clk; } -static void ar933x_ref_clk_init(void __iomem *base) -{ - u32 t; - unsigned long ref_rate; - - t = ath79_reset_rr(AR933X_RESET_REG_BOOTSTRAP); - if (t & AR933X_BOOTSTRAP_REF_CLK_40) - ref_rate = (40 * 1000 * 1000); - else - ref_rate = (25 * 1000 * 1000); - - clks[AR933X_CLK_REF] = clk_fixed("ref", ref_rate); -} - static void ar933x_pll_init(void __iomem *base) { - clks[AR933X_CLK_UART] = clk_fixed_factor("uart", "ref", 1, 1, - CLK_SET_RATE_PARENT); - - clks[AR933X_CLK_CPU] = clk_ar933x("cpu", "ref", base, + clks[ATH79_CLK_CPU] = clk_ar933x("cpu", "ref", base, AR933X_PLL_CLOCK_CTRL_CPU_DIV_SHIFT, AR933X_PLL_CLOCK_CTRL_CPU_DIV_MASK); - clks[AR933X_CLK_DDR] = clk_ar933x("ddr", "ref", base, + clks[ATH79_CLK_DDR] = clk_ar933x("ddr", "ref", base, AR933X_PLL_CLOCK_CTRL_DDR_DIV_SHIFT, AR933X_PLL_CLOCK_CTRL_DDR_DIV_MASK); - clks[AR933X_CLK_AHB] = clk_ar933x("ahb", "ref", base, + clks[ATH79_CLK_AHB] = clk_ar933x("ahb", "ref", base, AR933X_PLL_CLOCK_CTRL_AHB_DIV_SHIFT, AR933X_PLL_CLOCK_CTRL_AHB_DIV_MASK); - - clks[AR933X_CLK_WDT] = clk_fixed_factor("wdt", "ahb", 1, 1, - CLK_SET_RATE_PARENT); } static int ar933x_clk_probe(struct device_d *dev) @@ -145,7 +125,6 @@ static int ar933x_clk_probe(struct device_d *dev) return PTR_ERR(iores); base = IOMEM(iores->start); - ar933x_ref_clk_init(base); ar933x_pll_init(base); clk_data.clks = clks; @@ -158,7 +137,7 @@ static int ar933x_clk_probe(struct device_d *dev) static __maybe_unused struct of_device_id ar933x_clk_dt_ids[] = { { - .compatible = "qca,ar933x-clk", + .compatible = "qca,ar9330-pll", }, { /* sentinel */ } |