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>
This commit is contained in:
Sekhar Nori 2009-12-03 15:36:51 +05:30 committed by Kevin Hilman
parent c1978e1dfb
commit f979aa6e17

View file

@ -516,12 +516,15 @@ dump_clock(struct seq_file *s, unsigned nest, struct clk *parent)
static int davinci_ck_show(struct seq_file *m, void *v) static int davinci_ck_show(struct seq_file *m, void *v)
{ {
/* Show clock tree; we know the main oscillator is first. struct clk *clk;
* We trust nonzero usecounts equate to PSC enables...
/*
* Show clock tree; We trust nonzero usecounts equate to PSC enables...
*/ */
mutex_lock(&clocks_mutex); mutex_lock(&clocks_mutex);
if (!list_empty(&clocks)) list_for_each_entry(clk, &clocks, node)
dump_clock(m, 0, list_first_entry(&clocks, struct clk, node)); if (!clk->parent)
dump_clock(m, 0, clk);
mutex_unlock(&clocks_mutex); mutex_unlock(&clocks_mutex);
return 0; return 0;