X-Git-Url: https://err.no/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=arch%2Farm%2Fmach-pxa%2Fclock.c;h=ca8e205381577ab07f05fec6e573f77554672c3c;hb=d26acd92fa990764b72608a68224f46fac377032;hp=630063ffa6fcec90b5f3fbbb66a2588440ac70be;hpb=2ab61b01110aa04cd853c619a74881e3225a5e24;p=linux-2.6 diff --git a/arch/arm/mach-pxa/clock.c b/arch/arm/mach-pxa/clock.c index 630063ffa6..ca8e205381 100644 --- a/arch/arm/mach-pxa/clock.c +++ b/arch/arm/mach-pxa/clock.c @@ -12,9 +12,9 @@ #include #include -#include -#include -#include +#include +#include +#include #include "devices.h" #include "generic.h" @@ -125,3 +125,28 @@ void clks_register(struct clk *clks, size_t num) list_add(&clks[i].node, &clocks); mutex_unlock(&clocks_mutex); } + +int clk_add_alias(char *alias, struct device *alias_dev, char *id, + struct device *dev) +{ + struct clk *r = clk_lookup(dev, id); + struct clk *new; + + if (!r) + return -ENODEV; + + new = kzalloc(sizeof(struct clk), GFP_KERNEL); + + if (!new) + return -ENOMEM; + + new->name = alias; + new->dev = alias_dev; + new->other = r; + + mutex_lock(&clocks_mutex); + list_add(&new->node, &clocks); + mutex_unlock(&clocks_mutex); + + return 0; +}