summaryrefslogtreecommitdiffstats
path: root/include/linux/clk
diff options
context:
space:
mode:
authorArnd Bergmann <arnd@arndb.de>2014-04-15 15:20:50 +0200
committerArnd Bergmann <arnd@arndb.de>2015-12-01 21:44:22 +0100
commit990f2f223cb479a15afda9eb8552582aa82e2404 (patch)
tree09e20e274ef06c17c6bd4dfd859bdcdc3d6738cf /include/linux/clk
parent31ade3b83e1821da5fbb2f11b5b3d4ab2ec39db8 (diff)
downloadlinux-990f2f223cb479a15afda9eb8552582aa82e2404.tar.gz
linux-990f2f223cb479a15afda9eb8552582aa82e2404.tar.bz2
linux-990f2f223cb479a15afda9eb8552582aa82e2404.zip
clk: mmp: stop using platform headers
The mmp clock drivers currently hardcode the physical addresses for the clock registers. This is generally a bad idea, and it also gets in the way of multiplatform builds, which make the platform header files inaccessible to device drivers. To work around the header file problem, this patch changes the calling convention so the three mmp clock drivers get initialized with the base addresses as arguments from the platform code. It would still be useful to have a larger rework of the clock drivers, with DT integration to let the clocks actually be probed automatically, and the base addresses passed as DT properties. I am unsure if anyone is still interested in the mmp platform, so it is possible that this won't happen. Signed-off-by: Arnd Bergmann <arnd@arndb.de> Cc: Mike Turquette <mturquette@linaro.org> Cc: Chao Xie <chao.xie@marvell.com> Cc: Eric Miao <eric.y.miao@gmail.com> Cc: Haojian Zhuang <haojian.zhuang@gmail.com>
Diffstat (limited to 'include/linux/clk')
-rw-r--r--include/linux/clk/mmp.h17
1 files changed, 17 insertions, 0 deletions
diff --git a/include/linux/clk/mmp.h b/include/linux/clk/mmp.h
new file mode 100644
index 000000000000..607321fa2c2b
--- /dev/null
+++ b/include/linux/clk/mmp.h
@@ -0,0 +1,17 @@
+#ifndef __CLK_MMP_H
+#define __CLK_MMP_H
+
+#include <linux/types.h>
+
+extern void pxa168_clk_init(phys_addr_t mpmu_phys,
+ phys_addr_t apmu_phys,
+ phys_addr_t apbc_phys);
+extern void pxa910_clk_init(phys_addr_t mpmu_phys,
+ phys_addr_t apmu_phys,
+ phys_addr_t apbc_phys,
+ phys_addr_t apbcp_phys);
+extern void mmp2_clk_init(phys_addr_t mpmu_phys,
+ phys_addr_t apmu_phys,
+ phys_addr_t apbc_phys);
+
+#endif