|
@@ -17,6 +17,7 @@
|
|
|
#include <linux/io.h>
|
|
|
#include <linux/clk.h>
|
|
|
#include <linux/err.h>
|
|
|
+#include <linux/of.h>
|
|
|
#include <linux/platform_device.h>
|
|
|
#include <linux/sched_clock.h>
|
|
|
|
|
@@ -397,3 +398,17 @@ void __init davinci_timer_init(struct clk *timer_clk)
|
|
|
for (i=0; i< ARRAY_SIZE(timers); i++)
|
|
|
timer32_config(&timers[i]);
|
|
|
}
|
|
|
+
|
|
|
+static int __init of_davinci_timer_init(struct device_node *np)
|
|
|
+{
|
|
|
+ struct clk *clk;
|
|
|
+
|
|
|
+ clk = of_clk_get(np, 0);
|
|
|
+ if (IS_ERR(clk))
|
|
|
+ return PTR_ERR(clk);
|
|
|
+
|
|
|
+ davinci_timer_init(clk);
|
|
|
+
|
|
|
+ return 0;
|
|
|
+}
|
|
|
+TIMER_OF_DECLARE(davinci_timer, "ti,da830-timer", of_davinci_timer_init);
|