Hi, this patch is in three parts.
1) The changes to emufx.c make LIN_OUT1 work on the Audigy2. It seems to be the AC97
thing again... in fact there
was even a line in there helpfully commented out ready to be used :)
2) The changes to emu10k1_main.c. This is setting the card to use Analogue out instead
of Digital. This is the
HCFG/A_IOCFG thing on Audigy cards again... I've checked the rest of the emu10k1 code
however, and it is fine.
3) Finally, the changes to emumixer.c cause the code NOT to create an AC97 mixer
device on Audigy2 cards, since
it seems to be kinda worthless and confusing.
--- CUT HERE ---
Index: pci/emu10k1/emu10k1_main.c
===================================================================
RCS file: /cvsroot/alsa/alsa-kernel/pci/emu10k1/emu10k1_main.c,v
retrieving revision 1.23
diff -r1.23 emu10k1_main.c
241c241
<
---
>
243,244c243,249
< unsigned int reg = inl(emu->port + HCFG);
< outl(reg | HCFG_GPOUT0, emu->port + HCFG);
---
> if (!emu->audigy) {
> unsigned int reg = inl(emu->port + HCFG);
> outl(reg | HCFG_GPOUT0, emu->port + HCFG);
> } else {
> unsigned int reg = inl(emu->port + A_IOCFG);
> outl(reg | A_IOCFG_GPOUT0, emu->port + A_IOCFG);
> }
Index: pci/emu10k1/emufx.c
===================================================================
RCS file: /cvsroot/alsa/alsa-kernel/pci/emu10k1/emufx.c,v
retrieving revision 1.30
diff -r1.30 emufx.c
1505,1506c1505,1509
< //A_PUT_STEREO_OUTPUT(A_EXTOUT_AFRONT_L, A_EXTOUT_AFRONT_R, playback +
SND_EMU10K1_PLAYBACK_CHANNELS);
< A_PUT_STEREO_OUTPUT(A_EXTOUT_AC97_L, A_EXTOUT_AC97_R, playback +
SND_EMU10K1_PLAYBACK_CHANNELS);
---
> if (emu->audigy && emu->revision == 4) { /* audigy2 */
> A_PUT_STEREO_OUTPUT(A_EXTOUT_AFRONT_L, A_EXTOUT_AFRONT_R, playback +
> SND_EMU10K1_PLAYBACK_CHANNELS);
> } else {
> A_PUT_STEREO_OUTPUT(A_EXTOUT_AC97_L, A_EXTOUT_AC97_R, playback +
> SND_EMU10K1_PLAYBACK_CHANNELS);
> }
Index: pci/emu10k1/emumixer.c
===================================================================
RCS file: /cvsroot/alsa/alsa-kernel/pci/emu10k1/emumixer.c,v
retrieving revision 1.14
diff -r1.14 emumixer.c
427c427
< if (!emu->APS) {
---
> if ((!emu->APS) && (!(emu->audigy && emu->revision == 4))) {
435c435
< } else {
---
> } else if (emu->APS) {
436a437,438
> } else if (emu->audigy && emu->revision == 4) {
> strcpy(emu->card->mixername, "Audigy 2");
--- CUT HERE ---
--
adq
-------------------------------------------------------
This SF.net email is sponsored by:Crypto Challenge is now open!
Get cracking and register here for some mind boggling fun and
the chance of winning an Apple iPod:
http://ads.sourceforge.net/cgi-bin/redirect.pl?thaw0031en
_______________________________________________
Alsa-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/alsa-devel