diff options
author | Takashi Iwai <tiwai@suse.de> | 2009-05-19 12:50:04 +0200 |
---|---|---|
committer | Takashi Iwai <tiwai@suse.de> | 2009-05-19 12:54:55 +0200 |
commit | fa7979663190240b838ab8c8bad7f59e618bf77c (patch) | |
tree | e008dbd603562a54300ed8d189bd9bb59b5aa697 /sound/pci/hda/patch_sigmatel.c | |
parent | 4abc1cc2f9fe4b6bb3acc1d78e2c15af47b8133d (diff) |
ALSA: hda - Fix digital beep tone calculation
The digital beep tone is calculated in two different ways depending
on the codec chip. The standard one is using a divider, and another
one is a linear tone for IDT/STAC codecs. Currently, only the
latter type is used for all codecs, which resulted in a wrong tone
pitch.
This patch adds the calculation of the standard HD-audio type.
Also clean-up the fields in hda_beep struct.
Reference: bko#13162
http://bugzilla.kernel.org/show_bug.cgi?id=13162
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Diffstat (limited to 'sound/pci/hda/patch_sigmatel.c')
-rw-r--r-- | sound/pci/hda/patch_sigmatel.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/sound/pci/hda/patch_sigmatel.c b/sound/pci/hda/patch_sigmatel.c index 02950980778e..17310814f121 100644 --- a/sound/pci/hda/patch_sigmatel.c +++ b/sound/pci/hda/patch_sigmatel.c @@ -3737,6 +3737,8 @@ static int stac92xx_parse_auto_config(struct hda_codec *codec, hda_nid_t dig_out err = snd_hda_attach_beep_device(codec, nid); if (err < 0) return err; + /* IDT/STAC codecs have linear beep tone parameter */ + codec->beep->linear_tone = 1; /* if no beep switch is available, make its own one */ caps = query_amp_caps(codec, nid, HDA_OUTPUT); if (codec->beep && |