Index: src/sys/dev/sound/pcm/ac97.c =================================================================== RCS file: /home/ncvs/src/sys/dev/sound/pcm/ac97.c,v retrieving revision 1.53.2.3 diff -u -r1.53.2.3 ac97.c --- src/sys/dev/sound/pcm/ac97.c 9 Jan 2006 02:06:42 -0000 1.53.2.3 +++ src/sys/dev/sound/pcm/ac97.c 7 Apr 2007 16:17:28 -0000 @@ -148,7 +148,7 @@ { 0x414c4730, 0x0f, 0, "ALC101", 0 }, { 0x414c4710, 0x0f, 0, "ALC200", 0 }, { 0x414c4740, 0x0f, 0, "ALC202", 0 }, - { 0x414c4720, 0x0f, 0, "ALC650", 0 }, + { 0x414c4720, 0x0f, 0, "ALC650", alc650_patch }, { 0x414c4752, 0x0f, 0, "ALC250", 0 }, { 0x414c4760, 0x0f, 0, "ALC655", 0 }, { 0x414c4770, 0x0f, 0, "ALC203", 0 }, Index: src/sys/dev/sound/pcm/ac97_patch.c =================================================================== RCS file: /home/ncvs/src/sys/dev/sound/pcm/ac97_patch.c,v retrieving revision 1.3.2.1 diff -u -r1.3.2.1 ac97_patch.c --- src/sys/dev/sound/pcm/ac97_patch.c 30 Dec 2005 19:55:54 -0000 1.3.2.1 +++ src/sys/dev/sound/pcm/ac97_patch.c 7 Apr 2007 16:17:28 -0000 @@ -46,6 +46,12 @@ ac97_wrcd(codec, 0x76, ac97_rdcd(codec, 0x76) | 0x0420); } +void alc650_patch(struct ac97_info* codec) +{ + ac97_wrcd(codec, 0x64, 0x0808); + ac97_wrcd(codec, 0x66, 0x0808); +} + void cmi9739_patch(struct ac97_info* codec) { /* Index: src/sys/dev/sound/pcm/ac97_patch.h =================================================================== RCS file: /home/ncvs/src/sys/dev/sound/pcm/ac97_patch.h,v retrieving revision 1.3.2.1 diff -u -r1.3.2.1 ac97_patch.h --- src/sys/dev/sound/pcm/ac97_patch.h 30 Dec 2005 19:55:54 -0000 1.3.2.1 +++ src/sys/dev/sound/pcm/ac97_patch.h 7 Apr 2007 16:17:28 -0000 @@ -29,4 +29,5 @@ void ad1886_patch(struct ac97_info*); void ad198x_patch(struct ac97_info*); +void alc650_patch(struct ac97_info*); void cmi9739_patch(struct ac97_info*);