aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2008-05-08 13:58:45 -0400
committerLinus Torvalds <torvalds@linux-foundation.org>2008-05-08 13:58:45 -0400
commitf589274533eb94e0217acc1db6240ce6e621bb56 (patch)
tree884d4fde45bd578a240b4a61fe8de3b6a4c13880
parent625fc3a37511cbecfe1253867fe105c28d6a95f0 (diff)
parente3a2efa67a029453b8098dba179ec2d9d8df612e (diff)
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6
* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6: [ALSA] soc at91 minor bug fixes [ALSA] soc - at91-pcm - Fix line wrapping pcspkr: fix dependancies
-rw-r--r--arch/x86/kernel/Makefile4
-rw-r--r--drivers/input/misc/Kconfig2
-rw-r--r--init/Kconfig8
-rw-r--r--sound/drivers/Kconfig4
-rw-r--r--sound/soc/at91/at91-pcm.c11
-rw-r--r--sound/soc/at91/at91-ssc.c2
6 files changed, 20 insertions, 11 deletions
diff --git a/arch/x86/kernel/Makefile b/arch/x86/kernel/Makefile
index bbdacb398d48..5e618c3b4720 100644
--- a/arch/x86/kernel/Makefile
+++ b/arch/x86/kernel/Makefile
@@ -83,9 +83,7 @@ obj-$(CONFIG_KVM_GUEST) += kvm.o
83obj-$(CONFIG_KVM_CLOCK) += kvmclock.o 83obj-$(CONFIG_KVM_CLOCK) += kvmclock.o
84obj-$(CONFIG_PARAVIRT) += paravirt.o paravirt_patch_$(BITS).o 84obj-$(CONFIG_PARAVIRT) += paravirt.o paravirt_patch_$(BITS).o
85 85
86ifdef CONFIG_INPUT_PCSPKR 86obj-$(CONFIG_PCSPKR_PLATFORM) += pcspeaker.o
87obj-y += pcspeaker.o
88endif
89 87
90obj-$(CONFIG_SCx200) += scx200.o 88obj-$(CONFIG_SCx200) += scx200.o
91scx200-y += scx200_32.o 89scx200-y += scx200_32.o
diff --git a/drivers/input/misc/Kconfig b/drivers/input/misc/Kconfig
index 92b683411d5a..3ad8bd9f7543 100644
--- a/drivers/input/misc/Kconfig
+++ b/drivers/input/misc/Kconfig
@@ -14,7 +14,7 @@ if INPUT_MISC
14 14
15config INPUT_PCSPKR 15config INPUT_PCSPKR
16 tristate "PC Speaker support" 16 tristate "PC Speaker support"
17 depends on ALPHA || X86 || MIPS || PPC_PREP || PPC_CHRP || PPC_PSERIES 17 depends on PCSPKR_PLATFORM
18 depends on SND_PCSP=n 18 depends on SND_PCSP=n
19 help 19 help
20 Say Y here if you want the standard PC Speaker to be used for 20 Say Y here if you want the standard PC Speaker to be used for
diff --git a/init/Kconfig b/init/Kconfig
index 4c33316743f5..3b5adbf228c7 100644
--- a/init/Kconfig
+++ b/init/Kconfig
@@ -634,6 +634,14 @@ config ELF_CORE
634 help 634 help
635 Enable support for generating core dumps. Disabling saves about 4k. 635 Enable support for generating core dumps. Disabling saves about 4k.
636 636
637config PCSPKR_PLATFORM
638 bool "Enable PC-Speaker support" if EMBEDDED
639 depends on ALPHA || X86 || MIPS || PPC_PREP || PPC_CHRP || PPC_PSERIES
640 default y
641 help
642 This option allows to disable the internal PC-Speaker
643 support, saving some memory.
644
637config COMPAT_BRK 645config COMPAT_BRK
638 bool "Disable heap randomization" 646 bool "Disable heap randomization"
639 default y 647 default y
diff --git a/sound/drivers/Kconfig b/sound/drivers/Kconfig
index a78a8d045175..379bcb074463 100644
--- a/sound/drivers/Kconfig
+++ b/sound/drivers/Kconfig
@@ -5,8 +5,8 @@ menu "Generic devices"
5 5
6 6
7config SND_PCSP 7config SND_PCSP
8 tristate "Internal PC speaker support" 8 tristate "PC-Speaker support"
9 depends on X86_PC && HIGH_RES_TIMERS 9 depends on PCSPKR_PLATFORM && X86_PC && HIGH_RES_TIMERS
10 depends on INPUT 10 depends on INPUT
11 depends on SND 11 depends on SND
12 select SND_PCM 12 select SND_PCM
diff --git a/sound/soc/at91/at91-pcm.c b/sound/soc/at91/at91-pcm.c
index 67c88e322fb1..ccac6bd2889c 100644
--- a/sound/soc/at91/at91-pcm.c
+++ b/sound/soc/at91/at91-pcm.c
@@ -103,7 +103,8 @@ static void at91_pcm_dma_irq(u32 ssc_sr,
103 if (prtd->period_ptr >= prtd->dma_buffer_end) { 103 if (prtd->period_ptr >= prtd->dma_buffer_end) {
104 prtd->period_ptr = prtd->dma_buffer; 104 prtd->period_ptr = prtd->dma_buffer;
105 } 105 }
106 at91_ssc_write(params->ssc_base + params->pdc->xnpr, prtd->period_ptr); 106 at91_ssc_write(params->ssc_base + params->pdc->xnpr,
107 prtd->period_ptr);
107 at91_ssc_write(params->ssc_base + params->pdc->xncr, 108 at91_ssc_write(params->ssc_base + params->pdc->xncr,
108 prtd->period_size / params->pdc_xfer_size); 109 prtd->period_size / params->pdc_xfer_size);
109 } 110 }
@@ -191,10 +192,12 @@ static int at91_pcm_trigger(struct snd_pcm_substream *substream,
191 at91_ssc_write(params->ssc_base + AT91_SSC_IER, 192 at91_ssc_write(params->ssc_base + AT91_SSC_IER,
192 params->mask->ssc_endx | params->mask->ssc_endbuf); 193 params->mask->ssc_endx | params->mask->ssc_endbuf);
193 194
194 at91_ssc_write(params->ssc_base + ATMEL_PDC_PTCR, params->mask->pdc_enable); 195 at91_ssc_write(params->ssc_base + ATMEL_PDC_PTCR,
196 params->mask->pdc_enable);
195 197
196 DBG("sr=%lx imr=%lx\n", at91_ssc_read(params->ssc_base + AT91_SSC_SR), 198 DBG("sr=%lx imr=%lx\n",
197 at91_ssc_read(params->ssc_base + AT91_SSC_IER)); 199 at91_ssc_read(params->ssc_base + AT91_SSC_SR),
200 at91_ssc_read(params->ssc_base + AT91_SSC_IMR));
198 break; 201 break;
199 202
200 case SNDRV_PCM_TRIGGER_STOP: 203 case SNDRV_PCM_TRIGGER_STOP:
diff --git a/sound/soc/at91/at91-ssc.c b/sound/soc/at91/at91-ssc.c
index f642d2dd4ec3..bc35d00a38f8 100644
--- a/sound/soc/at91/at91-ssc.c
+++ b/sound/soc/at91/at91-ssc.c
@@ -590,7 +590,7 @@ static int at91_ssc_hw_params(struct snd_pcm_substream *substream,
590 printk(KERN_WARNING "at91-ssc: request_irq failure\n"); 590 printk(KERN_WARNING "at91-ssc: request_irq failure\n");
591 591
592 DBG("Stopping pid %d clock\n", ssc_p->ssc.pid); 592 DBG("Stopping pid %d clock\n", ssc_p->ssc.pid);
593 at91_sys_write(AT91_PMC_PCER, 1<<ssc_p->ssc.pid); 593 at91_sys_write(AT91_PMC_PCDR, 1<<ssc_p->ssc.pid);
594 return ret; 594 return ret;
595 } 595 }
596 596