diff options
author | Russell King <rmk@dyn-67.arm.linux.org.uk> | 2009-01-23 05:26:46 -0500 |
---|---|---|
committer | Russell King <rmk+kernel@arm.linux.org.uk> | 2009-02-08 12:50:19 -0500 |
commit | b820ce4e6736ddad7ccda528e10aaf37ad3f13f9 (patch) | |
tree | 173ca76cff521df77256564ee3905ccd0928f10f /arch/arm/mach-omap1/clock.c | |
parent | 1b5715ec471d1def9722e22b6cb1d24841b5e290 (diff) |
[ARM] omap: mcbsp: convert to use fck/ick clocks directly
Rather than introducing a special 'mcbsp_clk' with code behind it in
mach-omap*/mcbsp.c to handle the SoC specifics, arrange for the mcbsp
driver to be like any other driver. mcbsp requests its fck and ick
clocks directly, and the SoC specific code deals with selecting the
correct clock.
There is one oddity to deal with - OMAP1 fiddles with the DSP clocks
and DSP reset, so we move this to the two callback functions.
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Diffstat (limited to 'arch/arm/mach-omap1/clock.c')
-rw-r--r-- | arch/arm/mach-omap1/clock.c | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/arch/arm/mach-omap1/clock.c b/arch/arm/mach-omap1/clock.c index 61ace02e7ddc..b62da4c95630 100644 --- a/arch/arm/mach-omap1/clock.c +++ b/arch/arm/mach-omap1/clock.c | |||
@@ -132,6 +132,15 @@ static struct omap_clk omap_clks[] = { | |||
132 | CLK(NULL, "mpu", &virtual_ck_mpu, CK_16XX | CK_1510 | CK_310), | 132 | CLK(NULL, "mpu", &virtual_ck_mpu, CK_16XX | CK_1510 | CK_310), |
133 | CLK("i2c_omap.1", "i2c_fck", &i2c_fck, CK_16XX | CK_1510 | CK_310), | 133 | CLK("i2c_omap.1", "i2c_fck", &i2c_fck, CK_16XX | CK_1510 | CK_310), |
134 | CLK("i2c_omap.1", "i2c_ick", &i2c_ick, CK_16XX), | 134 | CLK("i2c_omap.1", "i2c_ick", &i2c_ick, CK_16XX), |
135 | CLK("omap-mcbsp.1", "ick", &dspper_ck, CK_16XX), | ||
136 | CLK("omap-mcbsp.1", "ick", &dummy_ck, CK_1510 | CK_310), | ||
137 | CLK("omap-mcbsp.2", "ick", &armper_ck.clk, CK_16XX), | ||
138 | CLK("omap-mcbsp.2", "ick", &dummy_ck, CK_1510 | CK_310), | ||
139 | CLK("omap-mcbsp.3", "ick", &dspper_ck, CK_16XX), | ||
140 | CLK("omap-mcbsp.3", "ick", &dummy_ck, CK_1510 | CK_310), | ||
141 | CLK("omap-mcbsp.1", "fck", &dspxor_ck, CK_16XX | CK_1510 | CK_310), | ||
142 | CLK("omap-mcbsp.2", "fck", &armper_ck.clk, CK_16XX | CK_1510 | CK_310), | ||
143 | CLK("omap-mcbsp.3", "fck", &dspxor_ck, CK_16XX | CK_1510 | CK_310), | ||
135 | }; | 144 | }; |
136 | 145 | ||
137 | static int omap1_clk_enable_generic(struct clk * clk); | 146 | static int omap1_clk_enable_generic(struct clk * clk); |