aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRichard Purdie <rpurdie@rpsys.net>2007-07-02 05:19:07 -0400
committerRussell King <rmk+kernel@arm.linux.org.uk>2007-07-02 08:39:37 -0400
commit1f750a782c0e9593a8d0981ea972f22334980955 (patch)
treeb6dfb4e201b440b5b1ba551e5b453cf113b1695d
parent756813cac1d0172e1f93d977fe8bd1cd5086be21 (diff)
[ARM] 4458/1: pxa: Fix CKEN usage and hence fix pxa suspend/resume
The PXA CKEN changes broken syspend/resume on the pxa27x. This patch corrects the problem and fixes another couple of bad references. Signed-off-by: Richard Purdie <rpurdie@rpsys.net> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
-rw-r--r--arch/arm/mach-pxa/pxa27x.c4
-rw-r--r--sound/arm/pxa2xx-ac97.c2
-rw-r--r--sound/soc/pxa/pxa2xx-ac97.c2
3 files changed, 4 insertions, 4 deletions
diff --git a/arch/arm/mach-pxa/pxa27x.c b/arch/arm/mach-pxa/pxa27x.c
index c64bab49efc4..1939acc3f9f7 100644
--- a/arch/arm/mach-pxa/pxa27x.c
+++ b/arch/arm/mach-pxa/pxa27x.c
@@ -140,9 +140,9 @@ void pxa_cpu_pm_enter(suspend_state_t state)
140 extern void pxa_cpu_resume(void); 140 extern void pxa_cpu_resume(void);
141 141
142 if (state == PM_SUSPEND_STANDBY) 142 if (state == PM_SUSPEND_STANDBY)
143 CKEN = CKEN_MEMC | CKEN_OSTIMER | CKEN_LCD | CKEN_PWM0; 143 CKEN = (1 << CKEN_MEMC) | (1 << CKEN_OSTIMER) | (1 << CKEN_LCD) | (1 << CKEN_PWM0);
144 else 144 else
145 CKEN = CKEN_MEMC | CKEN_OSTIMER; 145 CKEN = (1 << CKEN_MEMC) | (1 << CKEN_OSTIMER);
146 146
147 /* ensure voltage-change sequencer not initiated, which hangs */ 147 /* ensure voltage-change sequencer not initiated, which hangs */
148 PCFR &= ~PCFR_FVC; 148 PCFR &= ~PCFR_FVC;
diff --git a/sound/arm/pxa2xx-ac97.c b/sound/arm/pxa2xx-ac97.c
index 19c65a8d86a7..7bc2767e1584 100644
--- a/sound/arm/pxa2xx-ac97.c
+++ b/sound/arm/pxa2xx-ac97.c
@@ -361,7 +361,7 @@ static int __devinit pxa2xx_ac97_probe(struct platform_device *dev)
361 err: 361 err:
362 if (card) 362 if (card)
363 snd_card_free(card); 363 snd_card_free(card);
364 if (CKEN & CKEN_AC97) { 364 if (CKEN & (1 << CKEN_AC97)) {
365 GCR |= GCR_ACLINK_OFF; 365 GCR |= GCR_ACLINK_OFF;
366 free_irq(IRQ_AC97, NULL); 366 free_irq(IRQ_AC97, NULL);
367 pxa_set_cken(CKEN_AC97, 0); 367 pxa_set_cken(CKEN_AC97, 0);
diff --git a/sound/soc/pxa/pxa2xx-ac97.c b/sound/soc/pxa/pxa2xx-ac97.c
index b222755763e7..129d851b3151 100644
--- a/sound/soc/pxa/pxa2xx-ac97.c
+++ b/sound/soc/pxa/pxa2xx-ac97.c
@@ -300,7 +300,7 @@ static int pxa2xx_ac97_probe(struct platform_device *pdev)
300 return 0; 300 return 0;
301 301
302 err: 302 err:
303 if (CKEN & CKEN_AC97) { 303 if (CKEN & (1 << CKEN_AC97)) {
304 GCR |= GCR_ACLINK_OFF; 304 GCR |= GCR_ACLINK_OFF;
305 free_irq(IRQ_AC97, NULL); 305 free_irq(IRQ_AC97, NULL);
306 pxa_set_cken(CKEN_AC97, 0); 306 pxa_set_cken(CKEN_AC97, 0);