diff options
author | Jaroslav Kysela <perex@perex.cz> | 2009-11-03 14:29:50 +0100 |
---|---|---|
committer | Takashi Iwai <tiwai@suse.de> | 2009-11-16 11:35:00 +0100 |
commit | 13dab0808bb41b18888e1758a060a685deee1f30 (patch) | |
tree | 3d0828a0c537d9ba9934562631816a4671a3bf56 /sound/pci/hda/hda_beep.h | |
parent | 123c07aeddd71fbb295842a8c19866e780b9a100 (diff) | |
download | op-kernel-dev-13dab0808bb41b18888e1758a060a685deee1f30.zip op-kernel-dev-13dab0808bb41b18888e1758a060a685deee1f30.tar.gz |
ALSA: hda_intel: Digital PC Beep - delay input device unregistration
The massive register/unregister calls for input device layer might be
overkill. Delay unregister call by one HZ as workaround.
Also, as benefit, beep->enabled variable is changed immediately now
(not from workqueue).
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Diffstat (limited to 'sound/pci/hda/hda_beep.h')
-rw-r--r-- | sound/pci/hda/hda_beep.h | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/sound/pci/hda/hda_beep.h b/sound/pci/hda/hda_beep.h index 68465f6..53eba8d 100644 --- a/sound/pci/hda/hda_beep.h +++ b/sound/pci/hda/hda_beep.h @@ -34,7 +34,8 @@ struct hda_beep { unsigned int enabled:1; unsigned int request_enable:1; unsigned int linear_tone:1; /* linear tone for IDT/STAC codec */ - struct work_struct register_work; /* scheduled task for beep event */ + struct work_struct register_work; /* registration work */ + struct delayed_work unregister_work; /* unregistration work */ struct work_struct beep_work; /* scheduled task for beep event */ struct mutex mutex; }; |