summaryrefslogtreecommitdiff
path: root/arch/arm/common/clkdev.c
diff options
context:
space:
mode:
authorRussell King <rmk+kernel@arm.linux.org.uk>2010-01-12 12:28:00 +0000
committerRussell King <rmk+kernel@arm.linux.org.uk>2010-02-12 17:32:36 +0000
commit0a0300dc8c4b3f3ce5c9ef5a0a4be5442590398f (patch)
treee9a0a9dc5f195447f44a077f76c8d61e2c955d17 /arch/arm/common/clkdev.c
parent92dcffb916d309aa01778bf8963a6932e4014d07 (diff)
downloadlwn-0a0300dc8c4b3f3ce5c9ef5a0a4be5442590398f.tar.gz
lwn-0a0300dc8c4b3f3ce5c9ef5a0a4be5442590398f.zip
ARM: Consolidate clks_register() and similar
Most machine classes want some way to register a block of clk_lookup structures, and most do it by implementing a clks_register() type function which walks an array, or by open-coding a loop. Consolidate all this into clkdev_add_table(). Acked-by: H Hartley Sweeten <hsweeten@visionengravers.com> Reviewed-by: Kevin Hilman <khilman@deeprootsystems.com> Acked-by: Eric Miao <eric.y.miao@gmail.com> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Diffstat (limited to 'arch/arm/common/clkdev.c')
-rw-r--r--arch/arm/common/clkdev.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/arch/arm/common/clkdev.c b/arch/arm/common/clkdev.c
index aae5bc01acc8..446b696196e3 100644
--- a/arch/arm/common/clkdev.c
+++ b/arch/arm/common/clkdev.c
@@ -99,6 +99,16 @@ void clkdev_add(struct clk_lookup *cl)
}
EXPORT_SYMBOL(clkdev_add);
+void __init clkdev_add_table(struct clk_lookup *cl, size_t num)
+{
+ mutex_lock(&clocks_mutex);
+ while (num--) {
+ list_add_tail(&cl->node, &clocks);
+ cl++;
+ }
+ mutex_unlock(&clocks_mutex);
+}
+
#define MAX_DEV_ID 20
#define MAX_CON_ID 16