aboutsummaryrefslogtreecommitdiffstats
path: root/sound/arm/pxa2xx-ac97.c
diff options
context:
space:
mode:
authorEric Miao <eric.y.miao@gmail.com>2007-04-04 23:07:20 -0400
committerRussell King <rmk+kernel@arm.linux.org.uk>2007-04-21 18:14:01 -0400
commit7053acbd78336abf5d4bc3d8a875a03624cfb83f (patch)
tree76dff22217a91d40c1d44292c0454d31cad55f15 /sound/arm/pxa2xx-ac97.c
parenta79220b7633b3926a9bd3527bdac3f04dbe6845c (diff)
[ARM] 4304/1: removes the unnecessary bit number from CKENnn_XXXX
This patch removes the unnecessary bit number from CKENnn_XXXX definitions for PXA, so that CKEN0_PWM0 --> CKEN_PWM0 CKEN1_PWM1 --> CKEN_PWM1 ... CKEN24_CAMERA --> CKEN_CAMERA The reasons for the change of these defitions are: 1. they do not scale - they are currently valid for pxa2xx, but definitely not valid for pxa3xx, e.g., pxa3xx has bit 3 for camera instead of bit 24 2. they are unnecessary - the peripheral name within the definition has already announced its usage, we don't need those bit numbers to know which peripheral we are going to enable/disable clock for 3. they are inconvenient - think about this: a driver programmer for pxa has to remember which bit in the CKEN register to turn on/off Another change in the patch is to make the definitions equal to its clock bit index, so that #define CKEN_CAMERA (24) instead of #define CKEN_CAMERA (1 << 24) this change, however, will add a run-time bit shift operation in pxa_set_cken(), but the benefit of this change is that it scales when bit index exceeds 32, e.g., pxa3xx has two registers CKENA and CKENB, totally 64 bit for this, suppose CAMERA clock enabling bit is CKENB:10, one can simply define CKEN_CAMERA to be (32 + 10) and so that pxa_set_cken() need minimum change to adapt to that. Signed-off-by: eric miao <eric.y.miao@gmail.com> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Diffstat (limited to 'sound/arm/pxa2xx-ac97.c')
-rw-r--r--sound/arm/pxa2xx-ac97.c12
1 files changed, 6 insertions, 6 deletions
diff --git a/sound/arm/pxa2xx-ac97.c b/sound/arm/pxa2xx-ac97.c
index 28db4be7a16f..19c65a8d86a7 100644
--- a/sound/arm/pxa2xx-ac97.c
+++ b/sound/arm/pxa2xx-ac97.c
@@ -260,7 +260,7 @@ static int pxa2xx_ac97_do_suspend(struct snd_card *card, pm_message_t state)
260 if (platform_ops && platform_ops->suspend) 260 if (platform_ops && platform_ops->suspend)
261 platform_ops->suspend(platform_ops->priv); 261 platform_ops->suspend(platform_ops->priv);
262 GCR |= GCR_ACLINK_OFF; 262 GCR |= GCR_ACLINK_OFF;
263 pxa_set_cken(CKEN2_AC97, 0); 263 pxa_set_cken(CKEN_AC97, 0);
264 264
265 return 0; 265 return 0;
266} 266}
@@ -269,7 +269,7 @@ static int pxa2xx_ac97_do_resume(struct snd_card *card)
269{ 269{
270 pxa2xx_audio_ops_t *platform_ops = card->dev->platform_data; 270 pxa2xx_audio_ops_t *platform_ops = card->dev->platform_data;
271 271
272 pxa_set_cken(CKEN2_AC97, 1); 272 pxa_set_cken(CKEN_AC97, 1);
273 if (platform_ops && platform_ops->resume) 273 if (platform_ops && platform_ops->resume)
274 platform_ops->resume(platform_ops->priv); 274 platform_ops->resume(platform_ops->priv);
275 snd_ac97_resume(pxa2xx_ac97_ac97); 275 snd_ac97_resume(pxa2xx_ac97_ac97);
@@ -337,7 +337,7 @@ static int __devinit pxa2xx_ac97_probe(struct platform_device *dev)
337 /* Use GPIO 113 as AC97 Reset on Bulverde */ 337 /* Use GPIO 113 as AC97 Reset on Bulverde */
338 pxa_gpio_mode(113 | GPIO_ALT_FN_2_OUT); 338 pxa_gpio_mode(113 | GPIO_ALT_FN_2_OUT);
339#endif 339#endif
340 pxa_set_cken(CKEN2_AC97, 1); 340 pxa_set_cken(CKEN_AC97, 1);
341 341
342 ret = snd_ac97_bus(card, 0, &pxa2xx_ac97_ops, NULL, &ac97_bus); 342 ret = snd_ac97_bus(card, 0, &pxa2xx_ac97_ops, NULL, &ac97_bus);
343 if (ret) 343 if (ret)
@@ -361,10 +361,10 @@ 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 & CKEN2_AC97) { 364 if (CKEN & 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(CKEN2_AC97, 0); 367 pxa_set_cken(CKEN_AC97, 0);
368 } 368 }
369 return ret; 369 return ret;
370} 370}
@@ -378,7 +378,7 @@ static int __devexit pxa2xx_ac97_remove(struct platform_device *dev)
378 platform_set_drvdata(dev, NULL); 378 platform_set_drvdata(dev, NULL);
379 GCR |= GCR_ACLINK_OFF; 379 GCR |= GCR_ACLINK_OFF;
380 free_irq(IRQ_AC97, NULL); 380 free_irq(IRQ_AC97, NULL);
381 pxa_set_cken(CKEN2_AC97, 0); 381 pxa_set_cken(CKEN_AC97, 0);
382 } 382 }
383 383
384 return 0; 384 return 0;