summary refs log tree commit diff
path: root/sound
diff options
context:
space:
mode:
authorTakashi Iwai <tiwai@suse.de>2007-06-19 12:11:16 +0200
committerJaroslav Kysela <perex@suse.cz>2007-07-20 11:11:29 +0200
commit8c87286fdcb67f796cc9477a9bc1a2f1e173d99f (patch)
tree06c160dbc243c11f6bf387f08a7982a8a06f13f4 /sound
parenta18519e1e4783628182743e6cca5f9dfa6a9e3bd (diff)
downloadlinux-8c87286fdcb67f796cc9477a9bc1a2f1e173d99f.tar.gz
[ALSA] hda-codec - Fix ALC662 auto-configuration code
The auto-configuration code didn't initialize the verbs correctly.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
Diffstat (limited to 'sound')
-rw-r--r--sound/pci/hda/patch_realtek.c8
1 files changed, 3 insertions, 5 deletions
diff --git a/sound/pci/hda/patch_realtek.c b/sound/pci/hda/patch_realtek.c
index d2cadb2038da..9c5c3cfa5ec7 100644
--- a/sound/pci/hda/patch_realtek.c
+++ b/sound/pci/hda/patch_realtek.c
@@ -11169,12 +11169,10 @@ static int alc662_parse_auto_config(struct hda_codec *codec)
 	
 	if (err < 0)
 		return err;
-	else if (err > 0)
-		/* hack - override the init verbs */
-		spec->init_verbs[0] = alc662_auto_init_verbs;
+	spec->init_verbs[spec->num_init_verbs++] = alc662_auto_init_verbs;
 	spec->mixers[spec->num_mixers] = alc662_capture_mixer;
 	spec->num_mixers++;
-	return err;
+	return 1;
 }
 
 /* additional initialization for auto-configuration model */
@@ -11211,7 +11209,7 @@ static int patch_alc662(struct hda_codec *codec)
 		if (err < 0) {
 			alc_free(codec);
 			return err;
-		} else if (err) {
+		} else if (!err) {
 			printk(KERN_INFO
 			       "hda_codec: Cannot set up configuration "
 			       "from BIOS.  Using base mode...\n");