At Tue, 27 Sep 2005 11:08:17 -0400,
Mathieu Chouquet-Stringer wrote:
>
> [email protected] (Lee Revell) writes:
> > These changes were required to support the increasingly wide variety of
> > emu10k1 based hardware.
> >
> > Anyway it should not matter - newer versions of alsactl will still be
> > able to restore the mixer settings.
>
> Well it looks like I've lost my analog output in 2.6.14-rc2 (headphones on
> the LiveDrive work fine though).
>
> My card is now reported as a SBLive! Platinum 5.1 [SB0060] and i've been
> loading the modules with the following:
> extin=0x3fc3 extout=0x1fc3 enable_ir=1
>
> It's been working fine until the latest git updates. I'll try
> again tonight if I get the time.
The patch below should fix the problem. Give it a try.
Takashi
--- linux/include/sound/emu10k1.h 7 Sep 2005 12:56:34 -0000 1.68
+++ linux/include/sound/emu10k1.h 29 Sep 2005 15:50:51 -0000
@@ -1059,7 +1059,7 @@
unsigned char spk71; /* Has 7.1 speakers */
unsigned char sblive51; /* SBLive! 5.1 - extout 0x11 -> center, 0x12 -> lfe */
unsigned char spdif_bug; /* Has Spdif phasing bug */
- unsigned char ac97_chip; /* Has an AC97 chip */
+ unsigned char ac97_chip; /* Has an AC97 chip: 1 = mandatory, 2 = optional */
unsigned char ecard; /* APS EEPROM */
const char *driver;
const char *name;
--- linux/sound/pci/emu10k1/emu10k1_main.c 10 Sep 2005 14:34:45 -0000 1.65
+++ linux/sound/pci/emu10k1/emu10k1_main.c 29 Sep 2005 15:50:51 -0000
@@ -756,9 +756,12 @@
.sblive51 = 1} ,
/* Tested by alsa bugtrack user "hus" bug #1297 12th Aug 2005 */
{.vendor = 0x1102, .device = 0x0002, .subsystem = 0x80611102,
- .driver = "EMU10K1", .name = "SBLive! Platinum 5.1 [SB0060]",
+ .driver = "EMU10K1", .name = "SBLive 5.1 [SB0060]",
.id = "Live",
.emu10k1_chip = 1,
+ .ac97_chip = 2, /* ac97 is optional; both SBLive 5.1 and platinum
+ * share the same IDs!
+ */
.sblive51 = 1} ,
{.vendor = 0x1102, .device = 0x0002, .subsystem = 0x80511102,
.driver = "EMU10K1", .name = "SBLive! Value [CT4850]",
--- linux/sound/pci/emu10k1/emumixer.c 3 Aug 2005 12:54:39 -0000 1.37
+++ linux/sound/pci/emu10k1/emumixer.c 29 Sep 2005 15:50:51 -0000
@@ -802,8 +802,13 @@
.read = snd_emu10k1_ac97_read,
};
- if ((err = snd_ac97_bus(emu->card, 0, &ops, NULL, &pbus)) < 0)
- return err;
+ if ((err = snd_ac97_bus(emu->card, 0, &ops, NULL, &pbus)) < 0) {
+ if (emu->card_capabilities->ac97_chip == 1)
+ return err;
+ snd_printd(KERN_INFO "emu10k1: AC97 is optional on this board\n");
+ snd_printd(KERN_INFO" Proceeding without ac97 mixers...\n");
+ goto no_ac97; /* FIXME: get rid of ugly gotos.. */
+ }
pbus->no_vra = 1; /* we don't need VRA */
memset(&ac97, 0, sizeof(ac97));
@@ -836,6 +841,7 @@
for (; *c; c++)
remove_ctl(card, *c);
} else {
+ no_ac97:
if (emu->card_capabilities->ecard)
strcpy(emu->card->mixername, "EMU APS");
else if (emu->audigy)
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
[Index of Archives]
[Kernel Newbies]
[Netfilter]
[Bugtraq]
[Photo]
[Gimp]
[Yosemite News]
[MIPS Linux]
[ARM Linux]
[Linux Security]
[Linux RAID]
[Video 4 Linux]
[Linux for the blind]
|
|