diff options
author | Sekhar Nori <nsekhar@ti.com> | 2011-06-14 11:33:20 -0400 |
---|---|---|
committer | Sekhar Nori <nsekhar@ti.com> | 2011-07-06 07:18:45 -0400 |
commit | 56e580d7783ba49a50ccc1b1f3130e5ed2dc52e7 (patch) | |
tree | 89ae7f1de834df5fd7425c40e6a7697d0a696401 /arch/arm/mach-davinci/dm646x.c | |
parent | 0c6fce5eb6a9866674dcf6c26913d0908a119ba3 (diff) |
davinci: dm6467/T EVM: fix setting up of reference clock rate
The DM6467 and DM6467T EVMs use different reference clock
frequencies. This difference is currently supported by having
the SoC code call a public board routine which sets up the reference
clock frequency. This does not scale as more boards are added.
Instead, use the clk_set_rate() API to setup the reference clock
frequency to a different value from the board file.
Suggested-by: Kevin Hilman <khilman@ti.com>
Signed-off-by: Sekhar Nori <nsekhar@ti.com>
Acked-by: Kevin Hilman <khilman@ti.com>
Diffstat (limited to 'arch/arm/mach-davinci/dm646x.c')
-rw-r--r-- | arch/arm/mach-davinci/dm646x.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/arch/arm/mach-davinci/dm646x.c b/arch/arm/mach-davinci/dm646x.c index 1e0f809644b..46739c96cd3 100644 --- a/arch/arm/mach-davinci/dm646x.c +++ b/arch/arm/mach-davinci/dm646x.c | |||
@@ -42,6 +42,7 @@ | |||
42 | /* | 42 | /* |
43 | * Device specific clocks | 43 | * Device specific clocks |
44 | */ | 44 | */ |
45 | #define DM646X_REF_FREQ 27000000 | ||
45 | #define DM646X_AUX_FREQ 24000000 | 46 | #define DM646X_AUX_FREQ 24000000 |
46 | 47 | ||
47 | static struct pll_data pll1_data = { | 48 | static struct pll_data pll1_data = { |
@@ -56,6 +57,8 @@ static struct pll_data pll2_data = { | |||
56 | 57 | ||
57 | static struct clk ref_clk = { | 58 | static struct clk ref_clk = { |
58 | .name = "ref_clk", | 59 | .name = "ref_clk", |
60 | .rate = DM646X_REF_FREQ, | ||
61 | .set_rate = davinci_simple_set_rate, | ||
59 | }; | 62 | }; |
60 | 63 | ||
61 | static struct clk aux_clkin = { | 64 | static struct clk aux_clkin = { |
@@ -901,7 +904,6 @@ int __init dm646x_init_edma(struct edma_rsv_info *rsv) | |||
901 | 904 | ||
902 | void __init dm646x_init(void) | 905 | void __init dm646x_init(void) |
903 | { | 906 | { |
904 | dm646x_board_setup_refclk(&ref_clk); | ||
905 | davinci_common_init(&davinci_soc_info_dm646x); | 907 | davinci_common_init(&davinci_soc_info_dm646x); |
906 | } | 908 | } |
907 | 909 | ||