ALSA: hda_intel: Digital PC Beep - change behaviour for input layer
authorJaroslav Kysela <perex@perex.cz>
Wed, 21 Oct 2009 12:48:23 +0000 (14:48 +0200)
committerTakashi Iwai <tiwai@suse.de>
Mon, 16 Nov 2009 10:34:41 +0000 (11:34 +0100)
commit123c07aeddd71fbb295842a8c19866e780b9a100
tree8b97495608cad55f9169a826fe4637f9ac2d21c3
parentfe705ab1526bc2c8b7756f3a855f040ab2060af2
ALSA: hda_intel: Digital PC Beep - change behaviour for input layer

Original implementation was keeping registered input device for SND_BEEP
and SND_TONE events all time. This patch changes this behaviour:
If digital PC Beep is turned off using universal control switch,
the input device is unregistered.

Explanation: The kd_mksound() send SND_BEEP and SND_TONE only to last
registered device acceping those events. It means that the HDA Intel
audio driver blocks also the internal PC Speaker device (pcspkr.c
driver) even if the HDA Beep is muted. The user can easy disable
all beeps using 'setterm -blength 0' or 'xset b off' command.

Signed-off-by: Jaroslav Kysela <perex@perex.cz>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
sound/pci/hda/hda_beep.c
sound/pci/hda/hda_beep.h
sound/pci/hda/hda_codec.c
sound/pci/hda/hda_local.h
sound/pci/hda/patch_analog.c
sound/pci/hda/patch_realtek.c
sound/pci/hda/patch_sigmatel.c