13 |
|
|
14 |
int __devinit snd_vortex_mixer(vortex_t *vortex) { |
int __devinit snd_vortex_mixer(vortex_t *vortex) { |
15 |
ac97_t ac97; |
ac97_t ac97; |
16 |
|
int result; |
17 |
memset(&ac97, 0, sizeof(ac97)); |
memset(&ac97, 0, sizeof(ac97)); |
18 |
// Intialize AC97 codec stuff. |
// Intialize AC97 codec stuff. |
19 |
ac97.write = vortex_codec_write; |
ac97.write = vortex_codec_write; |
20 |
ac97.read = vortex_codec_read; |
ac97.read = vortex_codec_read; |
21 |
ac97.private_data = vortex; |
ac97.private_data = vortex; |
22 |
|
|
23 |
return snd_ac97_mixer(vortex->card, &ac97, &vortex->codec); |
result = snd_ac97_mixer(vortex->card, &ac97, &vortex->codec); |
24 |
|
if (vortex->codec) { |
25 |
|
/* Disable -6dB input and output attenuation. */ |
26 |
|
vortex_codec_write(vortex->codec, 0x6c, 0x0); |
27 |
|
/* Enable external amplifier. This is for STAC9708/11 codecs. |
28 |
|
STAC9701/03 dont need this*/ |
29 |
|
vortex_codec_write(vortex->codec, 0x26, 0x8000); |
30 |
|
} |
31 |
|
return result; |
32 |
} |
} |