diff options
author | netchild <netchild@FreeBSD.org> | 2005-10-02 15:50:22 +0000 |
---|---|---|
committer | netchild <netchild@FreeBSD.org> | 2005-10-02 15:50:22 +0000 |
commit | 092a218b9fa0014f2a7fd32a34abc845a2fcc8a2 (patch) | |
tree | 92a403b03ede6a0ed5d78514bd9711e05b557640 /sys | |
parent | 64189db8f9fb40fc5f37654b4e5b4e770cb74562 (diff) | |
download | FreeBSD-src-092a218b9fa0014f2a7fd32a34abc845a2fcc8a2.zip FreeBSD-src-092a218b9fa0014f2a7fd32a34abc845a2fcc8a2.tar.gz |
The cmi9739_patch function which is referenced by ac97.c (rev. 1.56) now...
Submitted by: Ariff Abdullah <skywizard@MyBSD.org.my>
Pointy hat to: netchild (for not committing it with rev. 1.56 of ac97.c)
Diffstat (limited to 'sys')
-rw-r--r-- | sys/dev/sound/pcm/ac97_patch.c | 10 | ||||
-rw-r--r-- | sys/dev/sound/pcm/ac97_patch.h | 1 |
2 files changed, 11 insertions, 0 deletions
diff --git a/sys/dev/sound/pcm/ac97_patch.c b/sys/dev/sound/pcm/ac97_patch.c index 05c73d7..33bd480 100644 --- a/sys/dev/sound/pcm/ac97_patch.c +++ b/sys/dev/sound/pcm/ac97_patch.c @@ -46,3 +46,13 @@ void ad198x_patch(struct ac97_info* codec) ac97_wrcd(codec, 0x76, ac97_rdcd(codec, 0x76) | 0x0420); } +void cmi9739_patch(struct ac97_info* codec) +{ + /* + * Few laptops (notably ASUS W1000N) need extra register + * initialization to power up the internal speakers. + */ + ac97_wrcd(codec, AC97_REG_POWER, 0x000f); + ac97_wrcd(codec, AC97_MIXEXT_CLFE, 0x0000); + ac97_wrcd(codec, 0x64, 0x7110); +} diff --git a/sys/dev/sound/pcm/ac97_patch.h b/sys/dev/sound/pcm/ac97_patch.h index d0184c4..2c93f9d 100644 --- a/sys/dev/sound/pcm/ac97_patch.h +++ b/sys/dev/sound/pcm/ac97_patch.h @@ -29,3 +29,4 @@ typedef void (*ac97_patch)(struct ac97_info*); void ad1886_patch(struct ac97_info*); void ad198x_patch(struct ac97_info*); +void cmi9739_patch(struct ac97_info*); |