diff options
author | Arnd Bergmann <arnd@arndb.de> | 2015-10-15 16:41:04 -0400 |
---|---|---|
committer | Arnd Bergmann <arnd@arndb.de> | 2015-10-15 16:41:04 -0400 |
commit | 41e602e8af1300471e79e298a7276226344071db (patch) | |
tree | 79b49827adbd9ab6221444f956538cced52be15b | |
parent | 7a0205bc1895132d6a56fbbadf01885c4a4f0743 (diff) | |
parent | 515f1a2027006839c08c842da919abfcc3c7ae2a (diff) |
Merge tag 'berlin-new-cpuclk-for-4.4-1' of git://git.infradead.org/users/hesselba/linux-berlin into next/drivers
Merge "Marvell Berlin BG2Q CPU clock driver" from Sebastian Hesselbarth:
- add BG2Q CPU clock to clk driver
* tag 'berlin-new-cpuclk-for-4.4-1' of git://git.infradead.org/users/hesselba/linux-berlin:
clk: berlin: add cpuclk
ARM: berlin: dts: add CLKID_CPU for BG2Q
-rw-r--r-- | drivers/clk/berlin/bg2q.c | 14 | ||||
-rw-r--r-- | include/dt-bindings/clock/berlin2q.h | 1 |
2 files changed, 8 insertions, 7 deletions
diff --git a/drivers/clk/berlin/bg2q.c b/drivers/clk/berlin/bg2q.c index 221f40c2b850..72d2f3500db8 100644 --- a/drivers/clk/berlin/bg2q.c +++ b/drivers/clk/berlin/bg2q.c | |||
@@ -45,7 +45,7 @@ | |||
45 | #define REG_SDIO0XIN_CLKCTL 0x0158 | 45 | #define REG_SDIO0XIN_CLKCTL 0x0158 |
46 | #define REG_SDIO1XIN_CLKCTL 0x015c | 46 | #define REG_SDIO1XIN_CLKCTL 0x015c |
47 | 47 | ||
48 | #define MAX_CLKS 27 | 48 | #define MAX_CLKS 28 |
49 | static struct clk *clks[MAX_CLKS]; | 49 | static struct clk *clks[MAX_CLKS]; |
50 | static struct clk_onecell_data clk_data; | 50 | static struct clk_onecell_data clk_data; |
51 | static DEFINE_SPINLOCK(lock); | 51 | static DEFINE_SPINLOCK(lock); |
@@ -356,13 +356,13 @@ static void __init berlin2q_clock_setup(struct device_node *np) | |||
356 | gd->bit_idx, 0, &lock); | 356 | gd->bit_idx, 0, &lock); |
357 | } | 357 | } |
358 | 358 | ||
359 | /* | 359 | /* cpuclk divider is fixed to 1 */ |
360 | * twdclk is derived from cpu/3 | 360 | clks[CLKID_CPU] = |
361 | * TODO: use cpupll until cpuclk is not available | 361 | clk_register_fixed_factor(NULL, "cpu", clk_names[CPUPLL], |
362 | */ | 362 | 0, 1, 1); |
363 | /* twdclk is derived from cpu/3 */ | ||
363 | clks[CLKID_TWD] = | 364 | clks[CLKID_TWD] = |
364 | clk_register_fixed_factor(NULL, "twd", clk_names[CPUPLL], | 365 | clk_register_fixed_factor(NULL, "twd", "cpu", 0, 1, 3); |
365 | 0, 1, 3); | ||
366 | 366 | ||
367 | /* check for errors on leaf clocks */ | 367 | /* check for errors on leaf clocks */ |
368 | for (n = 0; n < MAX_CLKS; n++) { | 368 | for (n = 0; n < MAX_CLKS; n++) { |
diff --git a/include/dt-bindings/clock/berlin2q.h b/include/dt-bindings/clock/berlin2q.h index 287fc3b4afb2..72eaf91c9ca6 100644 --- a/include/dt-bindings/clock/berlin2q.h +++ b/include/dt-bindings/clock/berlin2q.h | |||
@@ -29,3 +29,4 @@ | |||
29 | #define CLKID_SMEMC 24 | 29 | #define CLKID_SMEMC 24 |
30 | #define CLKID_PCIE 25 | 30 | #define CLKID_PCIE 25 |
31 | #define CLKID_TWD 26 | 31 | #define CLKID_TWD 26 |
32 | #define CLKID_CPU 27 | ||