summaryrefslogtreecommitdiffstats
path: root/drivers/clk
diff options
context:
space:
mode:
authorAntony Pavlov <antonynpavlov@gmail.com>2016-06-14 01:15:03 +0300
committerSascha Hauer <s.hauer@pengutronix.de>2016-06-14 08:39:55 +0200
commit5253099564fb2250d7aaaf72f53aaeedb7b3b7d8 (patch)
tree310d1355ac8d76d7c7d130905ebd8e1251c7896f /drivers/clk
parent9f4e3730bd7d88e29537d91a7099a252f821f3ee (diff)
downloadbarebox-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.c33
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 */
}