aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-davinci/clock.c
diff options
context:
space:
mode:
authorSekhar Nori <nsekhar@ti.com>2009-12-03 05:06:51 -0500
committerKevin Hilman <khilman@deeprootsystems.com>2010-02-04 16:29:45 -0500
commitf979aa6e17fe11fb7b603992c742898175327499 (patch)
tree306559cb153eb744cc4493cf3565716a3abaf26e /arch/arm/mach-davinci/clock.c
parentc1978e1dfb3d171010f6a22eb0a9eed89a245666 (diff)
davinci: make /proc/davinci_clocks display multi-rooted clock tree
This patch modifies clock dump to take care of clock tress rooted at multiple oscillators. Current code assumes the entire tree is rooted on a single oscillator. When using off-chip clock synthesizers, some of the clocks can be obtained from a different on-board oscillator. Signed-off-by: Sekhar Nori <nsekhar@ti.com> Signed-off-by: Kevin Hilman <khilman@deeprootsystems.com>
Diffstat (limited to 'arch/arm/mach-davinci/clock.c')
-rw-r--r--arch/arm/mach-davinci/clock.c11
1 files changed, 7 insertions, 4 deletions
diff --git a/arch/arm/mach-davinci/clock.c b/arch/arm/mach-davinci/clock.c
index 0fa68c558320..2c27caefa62e 100644
--- a/arch/arm/mach-davinci/clock.c
+++ b/arch/arm/mach-davinci/clock.c
@@ -516,12 +516,15 @@ dump_clock(struct seq_file *s, unsigned nest, struct clk *parent)
516 516
517static int davinci_ck_show(struct seq_file *m, void *v) 517static int davinci_ck_show(struct seq_file *m, void *v)
518{ 518{
519 /* Show clock tree; we know the main oscillator is first. 519 struct clk *clk;
520 * We trust nonzero usecounts equate to PSC enables... 520
521 /*
522 * Show clock tree; We trust nonzero usecounts equate to PSC enables...
521 */ 523 */
522 mutex_lock(&clocks_mutex); 524 mutex_lock(&clocks_mutex);
523 if (!list_empty(&clocks)) 525 list_for_each_entry(clk, &clocks, node)
524 dump_clock(m, 0, list_first_entry(&clocks, struct clk, node)); 526 if (!clk->parent)
527 dump_clock(m, 0, clk);
525 mutex_unlock(&clocks_mutex); 528 mutex_unlock(&clocks_mutex);
526 529
527 return 0; 530 return 0;