diff options
author | eric miao <eric.miao@marvell.com> | 2007-12-10 04:54:36 -0500 |
---|---|---|
committer | Russell King <rmk+kernel@arm.linux.org.uk> | 2008-01-26 10:07:51 -0500 |
commit | d8e0db1111b51558456466f66c9115d71b68e8b9 (patch) | |
tree | 0e02d2e72bcf1c0b5d9975b7cfdadcc4586339a9 /arch/arm | |
parent | d2b82dded8c45daeaad332459222034a3fabd227 (diff) |
[ARM] pxa: add ssp devices and clk support for pxa25x/pxa27x/pxa3xx
Signed-off-by: eric miao <eric.miao@marvell.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Diffstat (limited to 'arch/arm')
-rw-r--r-- | arch/arm/mach-pxa/pxa25x.c | 10 | ||||
-rw-r--r-- | arch/arm/mach-pxa/pxa27x.c | 10 | ||||
-rw-r--r-- | arch/arm/mach-pxa/pxa3xx.c | 9 |
3 files changed, 24 insertions, 5 deletions
diff --git a/arch/arm/mach-pxa/pxa25x.c b/arch/arm/mach-pxa/pxa25x.c index d9ee0d9b36df..c6ea0ed69270 100644 --- a/arch/arm/mach-pxa/pxa25x.c +++ b/arch/arm/mach-pxa/pxa25x.c | |||
@@ -120,12 +120,15 @@ static struct clk pxa25x_clks[] = { | |||
120 | INIT_CKEN("UDCCLK", USB, 47923000, 5, &pxa_device_udc.dev), | 120 | INIT_CKEN("UDCCLK", USB, 47923000, 5, &pxa_device_udc.dev), |
121 | INIT_CKEN("MMCCLK", MMC, 19169000, 0, &pxa_device_mci.dev), | 121 | INIT_CKEN("MMCCLK", MMC, 19169000, 0, &pxa_device_mci.dev), |
122 | INIT_CKEN("I2CCLK", I2C, 31949000, 0, &pxa_device_i2c.dev), | 122 | INIT_CKEN("I2CCLK", I2C, 31949000, 0, &pxa_device_i2c.dev), |
123 | |||
124 | INIT_CKEN("SSPCLK", SSP, 3686400, 0, &pxa25x_device_ssp.dev), | ||
125 | INIT_CKEN("SSPCLK", NSSP, 3686400, 0, &pxa25x_device_nssp.dev), | ||
126 | INIT_CKEN("SSPCLK", ASSP, 3686400, 0, &pxa25x_device_assp.dev), | ||
127 | |||
123 | /* | 128 | /* |
124 | INIT_CKEN("PWMCLK", PWM0, 3686400, 0, NULL), | 129 | INIT_CKEN("PWMCLK", PWM0, 3686400, 0, NULL), |
125 | INIT_CKEN("PWMCLK", PWM0, 3686400, 0, NULL), | 130 | INIT_CKEN("PWMCLK", PWM0, 3686400, 0, NULL), |
126 | INIT_CKEN("SSPCLK", SSP, 3686400, 0, NULL), | ||
127 | INIT_CKEN("I2SCLK", I2S, 14745600, 0, NULL), | 131 | INIT_CKEN("I2SCLK", I2S, 14745600, 0, NULL), |
128 | INIT_CKEN("NSSPCLK", NSSP, 3686400, 0, NULL), | ||
129 | */ | 132 | */ |
130 | INIT_CKEN("FICPCLK", FICP, 47923000, 0, NULL), | 133 | INIT_CKEN("FICPCLK", FICP, 47923000, 0, NULL), |
131 | }; | 134 | }; |
@@ -293,6 +296,9 @@ static struct platform_device *pxa25x_devices[] __initdata = { | |||
293 | &pxa_device_stuart, | 296 | &pxa_device_stuart, |
294 | &pxa_device_i2s, | 297 | &pxa_device_i2s, |
295 | &pxa_device_rtc, | 298 | &pxa_device_rtc, |
299 | &pxa25x_device_ssp, | ||
300 | &pxa25x_device_nssp, | ||
301 | &pxa25x_device_assp, | ||
296 | }; | 302 | }; |
297 | 303 | ||
298 | static int __init pxa25x_init(void) | 304 | static int __init pxa25x_init(void) |
diff --git a/arch/arm/mach-pxa/pxa27x.c b/arch/arm/mach-pxa/pxa27x.c index e7151dba6682..12dd2b0629bf 100644 --- a/arch/arm/mach-pxa/pxa27x.c +++ b/arch/arm/mach-pxa/pxa27x.c | |||
@@ -150,11 +150,12 @@ static struct clk pxa27x_clks[] = { | |||
150 | INIT_CKEN("I2CCLK", PWRI2C, 13000000, 0, &pxa27x_device_i2c_power.dev), | 150 | INIT_CKEN("I2CCLK", PWRI2C, 13000000, 0, &pxa27x_device_i2c_power.dev), |
151 | INIT_CKEN("KBDCLK", KEYPAD, 32768, 0, NULL), | 151 | INIT_CKEN("KBDCLK", KEYPAD, 32768, 0, NULL), |
152 | 152 | ||
153 | INIT_CKEN("SSPCLK", SSP1, 13000000, 0, &pxa27x_device_ssp1.dev), | ||
154 | INIT_CKEN("SSPCLK", SSP2, 13000000, 0, &pxa27x_device_ssp2.dev), | ||
155 | INIT_CKEN("SSPCLK", SSP3, 13000000, 0, &pxa27x_device_ssp3.dev), | ||
156 | |||
153 | /* | 157 | /* |
154 | INIT_CKEN("PWMCLK", PWM0, 13000000, 0, NULL), | 158 | INIT_CKEN("PWMCLK", PWM0, 13000000, 0, NULL), |
155 | INIT_CKEN("SSPCLK", SSP1, 13000000, 0, NULL), | ||
156 | INIT_CKEN("SSPCLK", SSP2, 13000000, 0, NULL), | ||
157 | INIT_CKEN("SSPCLK", SSP3, 13000000, 0, NULL), | ||
158 | INIT_CKEN("MSLCLK", MSL, 48000000, 0, NULL), | 159 | INIT_CKEN("MSLCLK", MSL, 48000000, 0, NULL), |
159 | INIT_CKEN("USIMCLK", USIM, 48000000, 0, NULL), | 160 | INIT_CKEN("USIMCLK", USIM, 48000000, 0, NULL), |
160 | INIT_CKEN("MSTKCLK", MEMSTK, 19500000, 0, NULL), | 161 | INIT_CKEN("MSTKCLK", MEMSTK, 19500000, 0, NULL), |
@@ -431,6 +432,9 @@ static struct platform_device *devices[] __initdata = { | |||
431 | &pxa_device_i2s, | 432 | &pxa_device_i2s, |
432 | &pxa_device_rtc, | 433 | &pxa_device_rtc, |
433 | &pxa27x_device_i2c_power, | 434 | &pxa27x_device_i2c_power, |
435 | &pxa27x_device_ssp1, | ||
436 | &pxa27x_device_ssp2, | ||
437 | &pxa27x_device_ssp3, | ||
434 | }; | 438 | }; |
435 | 439 | ||
436 | static int __init pxa27x_init(void) | 440 | static int __init pxa27x_init(void) |
diff --git a/arch/arm/mach-pxa/pxa3xx.c b/arch/arm/mach-pxa/pxa3xx.c index 37fbc4face09..c0483c3261d0 100644 --- a/arch/arm/mach-pxa/pxa3xx.c +++ b/arch/arm/mach-pxa/pxa3xx.c | |||
@@ -189,6 +189,11 @@ static struct clk pxa3xx_clks[] = { | |||
189 | 189 | ||
190 | PXA3xx_CKEN("I2CCLK", I2C, 32842000, 0, &pxa_device_i2c.dev), | 190 | PXA3xx_CKEN("I2CCLK", I2C, 32842000, 0, &pxa_device_i2c.dev), |
191 | PXA3xx_CKEN("UDCCLK", UDC, 48000000, 5, &pxa_device_udc.dev), | 191 | PXA3xx_CKEN("UDCCLK", UDC, 48000000, 5, &pxa_device_udc.dev), |
192 | |||
193 | PXA3xx_CKEN("SSPCLK", SSP1, 13000000, 0, &pxa27x_device_ssp1.dev), | ||
194 | PXA3xx_CKEN("SSPCLK", SSP2, 13000000, 0, &pxa27x_device_ssp2.dev), | ||
195 | PXA3xx_CKEN("SSPCLK", SSP3, 13000000, 0, &pxa27x_device_ssp3.dev), | ||
196 | PXA3xx_CKEN("SSPCLK", SSP4, 13000000, 0, &pxa3xx_device_ssp4.dev), | ||
192 | }; | 197 | }; |
193 | 198 | ||
194 | void __init pxa3xx_init_irq(void) | 199 | void __init pxa3xx_init_irq(void) |
@@ -215,6 +220,10 @@ static struct platform_device *devices[] __initdata = { | |||
215 | &pxa_device_stuart, | 220 | &pxa_device_stuart, |
216 | &pxa_device_i2s, | 221 | &pxa_device_i2s, |
217 | &pxa_device_rtc, | 222 | &pxa_device_rtc, |
223 | &pxa27x_device_ssp1, | ||
224 | &pxa27x_device_ssp2, | ||
225 | &pxa27x_device_ssp3, | ||
226 | &pxa3xx_device_ssp4, | ||
218 | }; | 227 | }; |
219 | 228 | ||
220 | static int __init pxa3xx_init(void) | 229 | static int __init pxa3xx_init(void) |