Messages in this thread Patch in this message | | | Date | Sat, 26 Apr 2008 19:16:58 +0400 | From | Stas Sergeev <> | Subject | [patch] pcspkr: fix dependancies |
| |
Hello.
linux-2.6.25 has the strange dependancies for pc-speaker, which prevents snd-pcsp from working. Namely, the platform device (created in arch/x86/kernel/pcspeaker.c) depends on the platform driver (CONFIG_INPUT_PCSPKR). I wonder if it is a good practice to make the platform device to depend on the driver, I guess it is not.
The attached patch reverses that. It adds the config option for the pcspkr platform device and makes the platform drivers to depend on that. This allows snd-pcsp to work at least in some configurations.
Does that patch look reasonable?
--- fix pcspkr dependancies: make the pcspkr platform drivers to depend on a platform device, and not the other way around.
Signed-off-by: Stas Sergeev <stsp@aknet.ru> CC: Takashi Iwai <tiwai@suse.de> CC: Dmitry Torokhov <dmitry.torokhov@gmail.com> CC: Vojtech Pavlik <vojtech@suse.cz> --- a/init/Kconfig 2008-04-26 13:40:20.000000000 +0400 +++ b/init/Kconfig 2008-04-26 18:20:40.000000000 +0400 @@ -624,6 +624,14 @@ help Enable support for generating core dumps. Disabling saves about 4k. +config PCSPKR_PLATFORM + bool "Enable PC-Speaker support" if EMBEDDED + depends on ALPHA || X86 || MIPS || PPC_PREP || PPC_CHRP || PPC_PSERIES + default y + help + This option allows to disable the internal PC-Speaker + support, saving some memory. + config COMPAT_BRK bool "Disable heap randomization" default y --- a/arch/x86/kernel/Makefile 2008-04-26 13:40:06.000000000 +0400 +++ b/arch/x86/kernel/Makefile 2008-04-26 18:22:49.000000000 +0400 @@ -83,7 +83,7 @@ obj-$(CONFIG_VMI) += vmi_32.o vmiclock_32.o obj-$(CONFIG_PARAVIRT) += paravirt.o paravirt_patch_$(BITS).o -ifdef CONFIG_INPUT_PCSPKR +ifdef CONFIG_PCSPKR_PLATFORM obj-y += pcspeaker.o endif --- a/sound/drivers/Kconfig 2008-04-26 13:40:21.000000000 +0400 +++ b/sound/drivers/Kconfig 2008-04-26 18:24:59.000000000 +0400 @@ -5,8 +5,8 @@ config SND_PCSP - tristate "Internal PC speaker support" - depends on X86_PC && HIGH_RES_TIMERS + tristate "PC-Speaker support" + depends on PCSPKR_PLATFORM && X86_PC && HIGH_RES_TIMERS help If you don't have a sound card in your computer, you can include a driver for the PC speaker which allows it to act like a primitive --- a/drivers/input/misc/Kconfig 2008-04-22 20:50:41.000000000 +0400 +++ b/drivers/input/misc/Kconfig 2008-04-26 18:23:32.000000000 +0400 @@ -14,7 +14,7 @@ config INPUT_PCSPKR tristate "PC Speaker support" - depends on ALPHA || X86 || MIPS || PPC_PREP || PPC_CHRP || PPC_PSERIES + depends on PCSPKR_PLATFORM help Say Y here if you want the standard PC Speaker to be used for bells and whistles. | |