diff options
| -rw-r--r-- | arch/x86/kernel/Makefile | 4 | ||||
| -rw-r--r-- | drivers/input/misc/Kconfig | 2 | ||||
| -rw-r--r-- | init/Kconfig | 8 | ||||
| -rw-r--r-- | sound/drivers/Kconfig | 4 | ||||
| -rw-r--r-- | sound/soc/at91/at91-pcm.c | 11 | ||||
| -rw-r--r-- | sound/soc/at91/at91-ssc.c | 2 |
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 | |||
| 83 | obj-$(CONFIG_KVM_CLOCK) += kvmclock.o | 83 | obj-$(CONFIG_KVM_CLOCK) += kvmclock.o |
| 84 | obj-$(CONFIG_PARAVIRT) += paravirt.o paravirt_patch_$(BITS).o | 84 | obj-$(CONFIG_PARAVIRT) += paravirt.o paravirt_patch_$(BITS).o |
| 85 | 85 | ||
| 86 | ifdef CONFIG_INPUT_PCSPKR | 86 | obj-$(CONFIG_PCSPKR_PLATFORM) += pcspeaker.o |
| 87 | obj-y += pcspeaker.o | ||
| 88 | endif | ||
| 89 | 87 | ||
| 90 | obj-$(CONFIG_SCx200) += scx200.o | 88 | obj-$(CONFIG_SCx200) += scx200.o |
| 91 | scx200-y += scx200_32.o | 89 | scx200-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 | ||
| 15 | config INPUT_PCSPKR | 15 | config 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 | ||
| 637 | config 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 | |||
| 637 | config COMPAT_BRK | 645 | config 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 | ||
| 7 | config SND_PCSP | 7 | config 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 | ||
