aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-pxa/pxa25x.c
diff options
context:
space:
mode:
Diffstat (limited to 'arch/arm/mach-pxa/pxa25x.c')
-rw-r--r--arch/arm/mach-pxa/pxa25x.c22
1 files changed, 12 insertions, 10 deletions
diff --git a/arch/arm/mach-pxa/pxa25x.c b/arch/arm/mach-pxa/pxa25x.c
index 006a6e09589..ddd05bf78e0 100644
--- a/arch/arm/mach-pxa/pxa25x.c
+++ b/arch/arm/mach-pxa/pxa25x.c
@@ -123,12 +123,15 @@ static struct clk pxa25x_clks[] = {
123 INIT_CKEN("UDCCLK", USB, 47923000, 5, &pxa_device_udc.dev), 123 INIT_CKEN("UDCCLK", USB, 47923000, 5, &pxa_device_udc.dev),
124 INIT_CKEN("MMCCLK", MMC, 19169000, 0, &pxa_device_mci.dev), 124 INIT_CKEN("MMCCLK", MMC, 19169000, 0, &pxa_device_mci.dev),
125 INIT_CKEN("I2CCLK", I2C, 31949000, 0, &pxa_device_i2c.dev), 125 INIT_CKEN("I2CCLK", I2C, 31949000, 0, &pxa_device_i2c.dev),
126
127 INIT_CKEN("SSPCLK", SSP, 3686400, 0, &pxa25x_device_ssp.dev),
128 INIT_CKEN("SSPCLK", NSSP, 3686400, 0, &pxa25x_device_nssp.dev),
129 INIT_CKEN("SSPCLK", ASSP, 3686400, 0, &pxa25x_device_assp.dev),
130
126 /* 131 /*
127 INIT_CKEN("PWMCLK", PWM0, 3686400, 0, NULL), 132 INIT_CKEN("PWMCLK", PWM0, 3686400, 0, NULL),
128 INIT_CKEN("PWMCLK", PWM0, 3686400, 0, NULL), 133 INIT_CKEN("PWMCLK", PWM0, 3686400, 0, NULL),
129 INIT_CKEN("SSPCLK", SSP, 3686400, 0, NULL),
130 INIT_CKEN("I2SCLK", I2S, 14745600, 0, NULL), 134 INIT_CKEN("I2SCLK", I2S, 14745600, 0, NULL),
131 INIT_CKEN("NSSPCLK", NSSP, 3686400, 0, NULL),
132 */ 135 */
133 INIT_CKEN("FICPCLK", FICP, 47923000, 0, NULL), 136 INIT_CKEN("FICPCLK", FICP, 47923000, 0, NULL),
134}; 137};
@@ -216,8 +219,6 @@ static void pxa25x_cpu_pm_restore(unsigned long *sleep_save)
216 219
217static void pxa25x_cpu_pm_enter(suspend_state_t state) 220static void pxa25x_cpu_pm_enter(suspend_state_t state)
218{ 221{
219 CKEN = 0;
220
221 switch (state) { 222 switch (state) {
222 case PM_SUSPEND_MEM: 223 case PM_SUSPEND_MEM:
223 /* set resume return address */ 224 /* set resume return address */
@@ -239,6 +240,8 @@ static void __init pxa25x_init_pm(void)
239{ 240{
240 pxa_cpu_pm_fns = &pxa25x_cpu_pm_fns; 241 pxa_cpu_pm_fns = &pxa25x_cpu_pm_fns;
241} 242}
243#else
244static inline void pxa25x_init_pm(void) {}
242#endif 245#endif
243 246
244/* PXA25x: supports wakeup from GPIO0..GPIO15 and RTC alarm 247/* PXA25x: supports wakeup from GPIO0..GPIO15 and RTC alarm
@@ -290,16 +293,15 @@ void __init pxa25x_init_irq(void)
290} 293}
291 294
292static struct platform_device *pxa25x_devices[] __initdata = { 295static struct platform_device *pxa25x_devices[] __initdata = {
293 &pxa_device_mci,
294 &pxa_device_udc, 296 &pxa_device_udc,
295 &pxa_device_fb,
296 &pxa_device_ffuart, 297 &pxa_device_ffuart,
297 &pxa_device_btuart, 298 &pxa_device_btuart,
298 &pxa_device_stuart, 299 &pxa_device_stuart,
299 &pxa_device_i2c,
300 &pxa_device_i2s, 300 &pxa_device_i2s,
301 &pxa_device_ficp,
302 &pxa_device_rtc, 301 &pxa_device_rtc,
302 &pxa25x_device_ssp,
303 &pxa25x_device_nssp,
304 &pxa25x_device_assp,
303}; 305};
304 306
305static int __init pxa25x_init(void) 307static int __init pxa25x_init(void)
@@ -315,9 +317,9 @@ static int __init pxa25x_init(void)
315 317
316 if ((ret = pxa_init_dma(16))) 318 if ((ret = pxa_init_dma(16)))
317 return ret; 319 return ret;
318#ifdef CONFIG_PM 320
319 pxa25x_init_pm(); 321 pxa25x_init_pm();
320#endif 322
321 ret = platform_add_devices(pxa25x_devices, 323 ret = platform_add_devices(pxa25x_devices,
322 ARRAY_SIZE(pxa25x_devices)); 324 ARRAY_SIZE(pxa25x_devices));
323 } 325 }